A Can Gripper for SR04
by
David P. Anderson
This is the can gripper I built for the SR04 robot to compete in the DPRG Can-Can contest, in which the
robot must correctly locate and collect six empty soda cans. Originally I was going to push the cans
with the robot back to the target, and the two crossed feelers (bend sensors) on the front bumper were
used for that purpose. However, I found that sometimes the cans would get away from the robot and fall over,
and the robot had a hard time seeing them up close with its sonar.
This gripper was designed not
to lift the cans but simply to hold them from falling over while scooting across the floor. It turned
out that I could in fact locate cans that had fallen over, and grip them in a variety of ways; vertically,
end-to-end, side-to-side, and so forth. The gripper is triggered by the bend sensors, much like the grasping
reflex of a baby, and it is up to the robot's sonar and IR detectors to steer the gripper toward the
correct objects to grip. When the gripper is enabled I can even roll cans (or tennis balls, it works
equally well for either) across the floor and it will grab them when they touch the bend sensors.
The gripper is built from two miniature R/C servos mounted on the back of the front bumper. By mounting
them on the bumper, they "inherit" the bumper behaviors if they happen to run into anything while extended.
When they are retracted, they retract fully behind the bottom edge of the bumper where they (hopefully)
can't get caught on anything. In the retracted position, the micro-switches that signal when the gripper
has closed on an object are used in parallel with the bumper switches for collision detections, just in
case.
The gripper arms are mounted on microswitches that are themselves mounted on the servo output wheels. When the grippers are fully closed the curved ends of the arms just touch. In this position, the microswitches are not
closed, and the robot can therefore tell that the gripper is grabbing air, and retract the grippers. When the
bend sensors signal a detection, the processor closes the gripper by updating its position 50 times per second, and checking each time to see if the microswitches are closed. If they are it stops closing the gripper and
holds the object. In this way, objects of different sizes can be grabbed.
The grippers serve double duty as mounts for SR04's line following sensors, a pair of "white" LEDS and
CdS cells. These can be seen in the above images as the small circuit board attached with a cable tie
about 2/3rds of the way up the arms, with the wires free-flying back toward the bumpers. Not particularly
elegant, but it works. Rev2 will have the wires running inside of hollow tube arms, if I ever get around
to building Rev2.
Here is an
mpeg video(714K) of the SR04 can gripper. Stereo sonar are used to steer the robot toward the
can until it touches the pair of bend-sensor feelers on the front bumper. The feelers trigger the gripping
response. Once the gripper has closed on an object, the robot re-orients itself towards its goal
and attempts to return the can to the point of origin. The white flash of light beneath
the gripper arms just as it grabs the can is accompanied by an electronic beep (not
heard on this silent mpeg) that is part of the technique by which the robot counts
the cans it has collected.
Below is the layout and assembly procedure for one half of the gripper. The arms themselves are made from
1/16th inch steel pushrods which you can purchase from hobby shops pre-threaded with the 256 thread. These
are screwed into a threaded aluminum standoff which is attached to the micro switch with glue and a piece of
heat-shrink tubing. The microswitch is attached to the servo output wheel with a couple of machine screws.
The arm is covered with rubber surgical tubing to increase friction for grabbing. It also has a slight
bend to accomodate the soda cans and tennis
balls (not shown, I didn't know how to make the wire bend with Illustrator). The arm is held in alignment
with a nylon lockwasher. A brass shield protects the micro switches and also limits their travel to keep
the arms from flopping around.
Assembly sequence for 1/2 of the gripper.
Views of the gripper and crossed bend sensors used to trigger the grabbing reflex (left) and
bottom view of the gripper open and closed grabbing an empty soda can. The curvature and
height from the floor of the gripper fingers turns out to be just right for grabbing tennis
balls. In both cases the sonar can still see over the top of the can or ball for navigating,
and the forward-looking IR sensors are temporarily disabled when the gripper has something in
its grasp. It has also been able to push around juice glasses and light-weight coffee cups.
Happy roboting,
David P. Anderson
December 2002.
My robots homepage