Semi-automatic feeding device for wheelchair users (George Mason University)
George Mason University
Though a seemingly simple task, many people face tremendous difficulty feeding themselves independently. In this project, we have focused on designing a portable semi-automatic feeder for a wheel chair user at George Mason University. The goal of this device is to cut down on the time it takes him to normally consume a meal using a spoon. Because our user has limited functionality of his hands, large, easily accessible buttons are used as the method of input. The robotic arm is clamped to the wheel chair using a custom clamp designed using Solidworks Software. An atmega168 microcontroller manages system operation (packaged inside a small panel at the user’s finger tips), and an IR distance sensor is used to detect the presence/absence of food. Using the feeder, we were able to successfully reduce the time it takes our user to consume a meal by 22.2%. Because of the flexibility of our chosen implementation, this system has potential to be expanded for the use of additional utensils, and the ability to adapt additional methods of input.
Think of the last meal you enjoyed. You are sitting at the table, before a steaming bowl of mashed potatoes smothered in gravy, for example. You thoughtlessly reach over to pick up a spoon before ravenously digging in. Now consider how many functions actually went into this seemingly simple task. First, you reached for the spoon. You then grasped it, and guided it to that bowl of creamy potatoes. Next, you angled your wrist to scoop up a spoonful of food, and extended your arm to your mouth, where the spoon hovered momentarily while it deposited the food. You, like most people, probably repeated this cycle effortlessly and without thought.
Now, imagine you are not ‘most’ people, and that you do not have complete functionality of your hands/arms. You might be a member of the over 50,000 people in the US alone have arm(s), hand(s), or finger(s) amputated each year. You could be one of 1.9 million people in the US who live with spinal cord injuries that render them paraplegic or quadriplegic. Or someone with Parkinson’s disease whose symptoms make it difficult to use a spoon without spilling its contents. Or someone who can’t use their arm temporarily, due to a sports related injury, for example. You might be a resident at a nursing home who needs the assistance of a caretaker at each meal. Regardless of the reason, you cannot independently get that spoonful of mashed potatoes to your mouth. Try tying your hands behind your back to momentarily get a feel for difficulties involved in the process of independent self-feeding. It becomes apparent that the need for a device to allow many people to independently consume their everyday meals is a considerable one.
Despite the fact that millions of people live without the functionality of their hands/arms today, few are aware of the existence of automatic feeders on the market. This is in large part due to the fact that current technological solutions for independent self-feeding are wrought with problems, portability being a key issue—particularly for wheel chair users. Thus, our group has focused on generating new, innovative solutions to help promote self-feeding. Though the project has a host of lofty potential applications (fork, knife, etc.), our focus was on designing a feeder that facilitates the transfer of food using a spoon for a GMU student—who currently utilizes a C500 Permobil wheel chair. Though the user does have some functionality of his arms and hands, he moves very slowly, so that it takes him a long time to consume meals. For example, it takes between 20-30 minutes for him to complete a cereal bar. When it comes to using a spoon, the user spends the majority of time per spoonful initially gathering food on the spoon, because of the limited range of motion his arms have. So, our goal was to design a portable feeder that he could independently operate, in order to reduce consumption time of meals eaten with a spoon.
Design and Development
Before delving into the details of our design, we begin with a general overview. Our system consists of two items that will be appended to the user’s wheel chair: 1) a robotic arm, and 2) an inputs/output panel controlling system operation, as shown in the figure above.
Before deciding on a basic robotic arm for our feeder, interviews were conducted with our user to determine the types of foods he most routinely consumes with a spoon (rice, yogurt, apple sauce, soup, etc.). Next, measurements were made of the weights of all of these foods, as well as the weights of a range of spoons, both plastic and metal. Combining the largest weights for measured foods and spoons, we determined that an arm that could support a minimum of 58 grams was necessary. In addition to being able to support this load, user feedback dictated that the arm should optimally weigh no more than 4-6 pounds—a reasonable amount of weight his wheel chair could support without taxing its power supply. Figure 1 shows our final robotic arm of choice after assembly: the M100RAK from robotshop.com. This arm can support up to 500 grams of weight, and clocks in at 1.2 kg. Stretching up to 2 feet in height, the M100RAK has 4 degrees of freedom, using servo motors that operate at 5 V and rotate up to 252 degrees.
Clamp to Wheelchair
After selecting the appropriate arm, our next step was to determine how to attach it to the user’s wheelchair. For this, Solidworks software was used to design a clamp in 3D that could be printed using a 3D printer, and then mounted where the user would have easy access to the buttons on the input panel. Designing the clamp using Solidworks allows for flexibility in our design. Minimal adjustments to the original version of the clamp have allowed us to successfully test and use the feeder on a second different wheel chair model. Figure 2 shows snapshots of the clamp both in Solidworks and after it was printed. Figure 3 shows the arm attached to the user’s wheelchair using the clamp. In this image, the clamp has been painted black to help make the entire feeder more discreet, as per the user’s request.
Inputs and Outputs
The first step the user must take to begin operating the feeder is to turn on the power switch. This causes our 2000 mAh Lithium battery to supply 3.7 V of power (that is then stepped up to 5 V) to all system components. Because our system draws up to 120 mA of current, the use of this battery allows for approximately 10 hours of operation. When the battery is drained, it may easily be recharged using a common microusb cables. This allows for system portability—as many existing feeders on the market require AC power.
Once the power is switched on, the atmega168 microcontroller directs the arm to await user input. As shown in Figure 3, within the users reach are 3 buttons and 2 LEDs:
- A “Food” input button, which, intuitively, sends the spoon to the plate to scoop food.
- A “Mouth” input button, which transfers the spoonful of food to the user’s mouth.
- A “Rest” input button, which effectively acts as a ‘kill switch.’ If this button is pressed at any point during operation, the arm will return to its resting position, where it will await further command until power is switched off.
- A green LED output, which 1. If flashing, indicates to the user that the system may not currently accept inputs, as one or more of the motors are in motion 2. If solid, indicates that the system has completed its task and awaiting further instruction
- A red LED output, which indicates to the user that the sensor is currently gathering data. This output is useful because during all other tasks the system performs, visual feedback is available (the user can actually see the arm moving). However, while the sensor is sampling, it might appear to the user that the system has suddenly frozen. Having this LED turn on when the sensor begins working indicates to the user what is actually happening, providing further insight into the systems operation.
Once the system has received user input, it may direct any/all of the 4 servo motors on the M100RAK to their appropriate positions by generating pulse width modulated waves, programmed into the microcontroller with AVR Studio 5.1. The results can be seen in the video above.
Once the system is positioned above the plate, it must be able to detect whether or not food is present. To avoid this problem, many designs choose to focus on feeding from a bowl. However, because this limitation detracts from the feeder’s usefulness, we have integrated an IR distance sensor into our system, positioned at a fixed location above the spoon in order to detect food. The sensor’s beam is aimed directly in front of the spoon. Logically, if there is no food in front of the spoon, the distance determined by the sensor will be greater than if food is present.
After much experimentation, we were able to determine that an ADC equivalent to 23 cm was where our cutoff should be. We could therefore tell the microcontroller: if the object you detect is at a distance greater than 23 cm, you are probably just seeing the plate—keep scanning. This causes the arm to move in a horizontal line across the plate, until food is detected. If no food is found on that ‘line,’ the arm moves in a vertical ‘step’ downward, before beginning to scan horizontally once more.
If, on the other hand, the distance sensor registers that an object is at a distance less than 23 cm, the microcontroller directs the arm to scoop up a spoonful of food. Once that spoonful is consumed, the arm returns to its original position, where it double checks that the spoonful is indeed gone. (If the food has not been removed, it will see it again and re-scoop it). If the spoonful has been consumed, the arm will resume scanning from where it had left off.
During the testing and experimentation phase of our project, all circuitry was set up on a breadboard. However, once the programming was complete and our arm performed as desired, it was necessary to reduce the size of the controlling circuit, in order to be within our original weight requirements. To do this, we proceeded to design, print, and populate a PCB using PCB123 software. This brought down our circuit to an acceptable 1”x2” board that could easily be packaged and mounted into the panel shown at the base of the arm in Figure 3. In Figure 6, the process going from a printed PCB, to a populated one, and finally to a packaged one is shown.
- Sensor to face: The same sensor that is used to detect food is used as a safety measure. When the ‘mouth’ button is pressed, the arm proceeds to transfer food to the user’s mouth. The moment the motors lock in to the positions they are directed, the distance sensor is turned on. It then detects whether or not the users face is too close to the arm. If the user is too close to the feeder, the arm immediately bounces back to the plate, preventing the user from accidental injury. Otherwise, the arm behaves normally.
- Springs: A spring is used to connect the elbow of the arm to the shoulder (base). This is done to prevent the arm from collapsing if power is accidentally cut off (or the battery dies, for example). Instead of falling and expanding its full 2 feet of length, this spring forces the forearm into a position similar to when it is reach for food, with the arm pointing directly towards at the ground.
|Food Not Found||15%||95%|
Before testing the arm with our user, sensor accuracy was established. Table A shows that the arm was able to identify the presence of food 85% of the time food was present, and to detect its absence 95% of time there was no food.
Next, the amount of time it took the user to consume a spoonful was found experimentally to be 22.1 seconds. This time is defined as the time it took him to transfer the spoon from the plate to his mouth, and then return the spoon to the plate (excluding chewing time). Using our feeder, this time was reduced to 17.2 seconds, a 22.2 % decrease.
Discussion and Conclusions
At the conclusion of our project, we have met all of our initial requirements. Specifically, our goal was to design a device that was
- Weigh 4-6 pounds
- Use a rechargeable 5 V Lithium battery
- Clamp onto the wheel chair
- Save time required to consume meals: Though the amount of time the user saves by using our device per cycle does not initially appear significant, our device resulted in an unanticipated benefit: using our feeder allowed the user to save energy and reduce fatigue, so that he could spend more time performing other tasks.
- Be independently operable by wheel chair user: Because our user has limited functionality of his hands, we chose to use large buttons as the main input methods for this system. The location of the on/off rocker switch was chosen so that the machine could not accidentally be turned on or off. However, should the user have less functionality of his/her arms, other input methods may easily be integrated into our system. These include voice control, head switches, switches controlled by the foot, etc—the choice from which would be customizable based on the user. This would be the third element in our system that could be customized. The first is the clamp design attaching the arm to the wheel chair. The second is the users height. Currently, this information is hard coded into the microcontroller, and determined after testing. However, this will most likely change in the next arm we build, once an LCD display is integrated into the system. Using the display, the goal will be to set up user height during first use interactively.
- Cost less than $2000: Right now, the most expensive item bought is the robotic arm, for $600. Next was the price of manufacturing the PCB ($388). However, as the cost of each PCB is reduced when more are printed, this price can be expected to go down. The total cost of our project was approximately $1300. However, when the next arm is manufactured, this price can be reduced to $950, even if we upgrade to metal gears on our robot (for $168—necessary to improve durability). Thus, for our project, we have stayed well within the amount the user is willing to pay, with production cost being less than half of the targeted goal.
- Transfer a minimum of 58 grams of food
- Not be limited to the use of single spoon model or type. Because the M100RAK supports loads of up to 500 grams, weight limitations do not prevent the use of heavier metal spoons. Additionally, the clamp we are using allows the user to attach any spoon design required. Here, it is interesting to note that the clamp may also support other utensils, like a fork, knife, etc. Because of the flexibility of our design, the only thing necessary to facilitate the use of these other utensils at this point is programming—all the mechanics/hardware are already in place. The presence of that LCD display mentioned earlier would then allow the user to select the utensil of choice.
In conclusion, we have succeeded in designing a portable semi-automatic feeder that meets all of our user’s requirements, and may be customizable for use on most wheel chair models. Building on the existing framework, the design may additionally be expanded to accommodate the use of alternative input methods and utensils.
Special thanks to Dr. Nathalia Peixoto, our advisor, Dr. Vasiliki Ikonomidou, for all of her feedback, Mr. Korey Singleton, the manager of George Mason University’s Assistive Technology Department, and of course, our user, whose feedback without which we could not have done this project. We would also like to the National Science Foundation (NSF), for funding our design project.