Wednesday, December 1, 2010

Reflection: Robotics Activity and University Studies Goals


In the University Studies Program, Freshman Inquiry introduces students to goals that the program strives to achieve throughout our "journey" at PSU.

University Studies Goals: (Taken directly from http://www.pdx.edu/unst/university-studies-goals)

Inquiry and Critical Thinking

Students will learn various modes of inquiry through interdisciplinary curricula—problem-posing, investigating, conceptualizing—in order to become active, self-motivated, and empowered learners.

Communication

Students will enhance their capacity to communicate in various ways—writing, graphics, numeracy, and other visual and oral means—to collaborate effectively with others in group work, and to be competent in appropriate communication technologies.

The Diversity of Human Experience

Students will enhance their appreciation for and understanding of the rich complexity of the human experience through the study of differences in ethnic and cultural perspectives, class, race, gender, sexual orientation, and ability.

Ethics and Social Responsibility

Students will expand their understanding of the impact and value of individuals and their choices on society, both intellectually and socially, through group projects and collaboration in learning communities.

THE FINAL PROJECT: Robots in Assistive Technology...

Our objective: We want to construct a robot that can help a person reach for things they are unable to do on their own because of being injured, disabled, or motor problems.

Our materials: Lego Mindstorms NXT 2.0

Our plan: The robot's task is to grab an object and give it to the user. Our plan is to build the "robot arm" from the instructional examples in the online resource provided on Black Board. The robot has to be able to find it's way to get to an object and bring it back to the user. To queue the arm to come out and reach for things, we decided that we'll use the control buttons to operate the robot. It's highly important for our group to  build a movable grab-able claw or robotic hand. These parts are not included with our set, so we improvised and alternatively built one from the parts we did have. This thought process demonstrates the Critical Thinking  used in our project and satisfies goal #1.

The Process: When our group started planning for our Assistive Technology project, we were suggested that the extension of our previous robot, the rattle-snake, could be useful in creating an assistive-arm-reaching robot. After observing the robot requirements and criteria in addition to our own goals for the project, we realized that the robot we built by modifying the rattle-snake was not going to work. The movement of the rattle snake we used only moved out in one-way and in one direction, this meant that it was unable to grab anything. Some of us thought it would work and we had some different ideas that didn't agree. Our team had a rough start because the robot we initially started with was not going to satisfy our criteria. 

                   Criteria
  1. Simple to operate for a disabled person.
  2. Be able to reach high and/or far to grab things.
  3. Have a high success rate of grabbing and holding an object.
  4. Ability to navigate a tabletop or surface to the object and back to the person.
  5. Have the robot say something or play a sound that works well with the use of the robot. (Just for fun, we want the robot to make a sound for a purpose in the task.)
  6. Is it safe for a person to use?
  7. Is it helpful in terms of assisting someone who has difficulty reaching?
  8. Program execution success.

Note: The highlighted parts are the areas that our first robot was lacking.

*Our goal is to get the hand of the arm to open, close and/or be able to grab to hold something.

This portion of our process relates to Communicationgoal #2, since we had to discuss and problem-solve as a team. We were frustrated with having to re-build our robot and alter our plans. Some of us weren't on the same page at first and this also made it difficult. This was a set-back. Reflecting on what we had so far and our time frame, we quickly realized that we all want to do well on our final project, so we all contributed to focusing on re-working, testing, and programming. We got busy really quick and built the "robot arm", our successful assistive robot. This robot met our criteria and the robot requirements. We were able to finish before presentation day because we were able to effectively collaborate and work through our set-backs to reach our goals for the project. This part of the project leads us into Diversitygoal #3. As a group, the four of us are all very different from each other and for us to work as a team to create a successful robot satisfies this goal in University Studies. We are racially different, one Caucasian, an Asian American, an International student, etc. There was also an age gap with an older student. There was also a difference in experience level and skill sets that each student possessed and some were not use to. And we all gained experience in working on collaborative projects through our Lego Robotics project with Design & Society. This last portion of our learning experience elaborated on goal #4Ethics and Social ResponsibilityOverall, the relationship between Lego Robotics and the University Studies Goals align and they work well together. This project succeeded in incorporating all four goals under the University Studies Program. 

Tuesday, November 30, 2010

Robot Arm [Final Project]

Problem & Solution
Our goal is to design a robot that will help people who are injured or with disability reach for things easily. It also has to be easy to operate. We looked through the NXT robot ideas and decided to build the robot arm. The robot is the right solution to our problem with its abilities 
to rotate, shift up and down, and it has a claw that grab things. It's easy to operate with a few steps by using NXT buttons and a touch sensor. The function of  NXT buttons are clearly marked by on the display.



The Design
The robot has three function: rotate, shift, and grab. The NXT buttons are use to operate rotation and shifting function. The touch sensor is use to operate the claw. When the program starts, it will first navigate to the rotation function. The user can choose to rotate almost 360° left or right by holding the button down until he finds the right angle. The square is use to switch between rotation function and shifting function. The shifting function also uses the same operating principle. Once the touch sensor is pushed the claw will close and the user can push the touch sensor again to release the claw.


 ::..::..::..::..::...:.:..:.Exploring Robochuu::..::..::..::..::...:.:..:.


Pictures of our creation


We just finished building our Robochuu. In this picture, Robochuu looks like it's consuming the guy in the back. haha.

Zakk being hugged by Robochuu.

View of Robochuu from above.

When testing, our group discussed that it was a little loose at the base, so Athena added some extra pieces to the sides of the base motor to make it more stable when the motors moved.

The original instruction had claw pieces that weren't included in our set. We created our own version of the claw out of the angeled pieces provided. The bottom claws are movable by the motor and the top claws don't move. We added pieces to make the top claws more stable so that it clamps.


This is our Robochuu holding a tire.

This is a display of side to side (left to right) movement. The left arrow moves left and the right arrow moves right.

This is a display of the up and down movement. The left arrow moves up and the right arrow moves down. Press the orange square button to switch from up/down or side/side movements.


The claw is holding a tire. We press the sensor button to grab and release the object.

The claw releases the tire and it drops. (It rolled and fell on the floor.)

Videos of our Robochuu in action


Robochuu Arm: Demo attempt 1 
Our group's first attempt. Fail. It was funny though.

Robochuu Arm: Demo attempt 2
Our second attempt. Success. Athena couldn't help but laugh... and it looks like the claw is on her mouth. Zakk does sound effects toward the end. We did it!

Robochuu Arm: Demo attempt 3
Just for fun, testing out the controls.


 The Program Overview


The program is designed to accommodate the ‘Robot Arm’ design. The program includes rotation function, shifting function (up and down), and claw grabbing function. It has been modified from the original program included in the building instruction. The motors power has been restricted, the text on the display has been changed, and the sound effects were added.

Rotation Function


Starting at the beginning, three screen display blocks (“Rotation”, “⇐”, and “⇒”) represent what text or symbol will be shown on the NXT display. According to the switch block, when the left arrow button is pushed and hold the motor that connected to port A will turn left and sound effect will turn on. The same goes for the right arrow button, when it is pushed and hold the motor that connected to port A will turn right and sound effect will turn on. The rotation and the sound will stop when the button is released. The function of left and right arrow buttons are loop together so that the user can easily adjust the right angle without having to restart the program. When the square button is pushed the option will change from the rotation function to the shifting function and vice versa.

Shifting Function

After the squared button is pushed, the program goes into the shifting function. It has the same basic layout as the rotation function. The three of display blocks say “crane”, “⇑”, and “⇓”. The switch block lets the user choose between left and right arrow buttons. The left arrow button is for shifting the crane up. The right button is use for shifting the crane down. To work the crane, the buttons need to be push and hold and the motor that connected to port B will move accordingly. While the crane is being shift the sound effect will play. The functions of left and right arrow buttons are loop together for easy height adjustment. When the user is satisfied with the height, the square button can be push to return to the rotation function because both function looped together.

Claw Grabbing

 The claw has its own separate part of the program out of the big loop. It can be operates by pushing the touch sensor which is connected to port 1. Once the touch sensor is pushed the motor that connected to port C will turn upward which makes the claw grabs. When the touch   sensor is pushed for the second time the motor will turn downward and opens up the claw. The sound effect is also insert for entertaining purpose .The blocks are looped together so that the user can repeat the step as much as he likes.

Rattle-Snake [First Project]

Our goal for the first project was to simply create a robot that would do something using the Lego Mindstorms NXT 2.0. We had a broad range to explore. We chose to build the rattle-snake. The difficulty level of this robot was 4, advanced. The program skill level was level 2. On this project, we spent most of our time building and not much on the program because it wasn't too complicated.

The rattle on the tail rattles repeatedly in a 12 sec. duration.

This is our robot rattle-snake. We modified the fangs because those parts were not in the set. We also modified some other parts. The program worked smoothly!

The rattle snake senses anything that moves in front of it. The eyes are the sensors. When the sensors are triggered it launches out and bites! 

It also senses how far the movement is so that it only goes out that far.