larm1

 

arm207a.jpg (3687 bytes)

Completed  arm subassembly. Note the belt drive and reduction gearing.

arm08a.jpg (9128 bytes)

A front  angle view of the completed robotic arm. The IR sensor is at the lower front facing the loading platform.

arm09a.jpg (9850 bytes)

A black  Lego block is placed on the platform and the arm begins to cycle.

arm11a.jpg (11040 bytes)

The arm  lifts the block from the loading platform and then places it aside.

This model was our first attempt at copying an industrial robotic arm using the Lego Mindstorms invention set. The claw portion of the arm can open and close and the arm rotates above a fixed base in one axis.

The first milestone in this project was the creation of the actual arm. We decided on using a reduction gearing system along with total belt drive so the power of the claw could be increased without stripping gears should the arm overextend. The motor is located to act as a counterweight for the rest of the assembly. The mount from the base to the arm is located about 1 inch up the arm from the arm motor.

The next step was to create a base and loading platform for the arm. We made the RCX unit integral to the support base to lower the center of gravity, providing additional stability to the model. We also increased base support by placing the loading platform at the front, and two supporting legs in the rear. This provides a very stable platform for the arm model to operate on.

The motor for swiveling the arm on the base is also reduction geared and belt driven. Belt drive was selected instead of gearing so as to allow slippage and the ability to grasp a wider range of sizes without worrying about stripped gearing. The two sections are coupled together by the drive axle from the base -- the motor for the arm grip is set back from the axle to provide a counterweight for the entire arm assembly.

The grasping portion of the arm uses a small connecting piece to limit the range it can open. Even with this limiter the arm can grasp objects up to five inch diameter. One of the axles of the base unit drive has an axle extension mounted to it above the top of the base to limit (from this view) clockwise rotation. In an extreme case, it would also stop excessive counter-clockwise rotation of the arm during the place aside part of the cycle. We used this method to simplify the method that the robot uses to determine the home position for the start of a cycle. Again, we could do this because of the slippage of the belt drive system.

There are two input sensors for the robot. One contact sensor is used to signal that an object is loaded on the loading platform and that the program can begin one cycle. An IR sensor is mounted on the platform to measure the color of the object.

The robot will measure the color of any loaded object. We setup the programming so that any black object would be gripped and then placed aside. When a light colored object is placed on the platform, the robot senses that it is not black and makes a rude noise to suggest that a black object should replace the white one.

In the pictures you can see a complete cycle. In the third picture a black block is loaded and the cycle has started. In the fourth picture the claw has closed, the object has been placed aside, and the arm begins to return to start a new cycle.

We learned something about this type of model and associated construction problems. The grasping mechanism on this model is not perfect and will at times still drop an object once grasped. This design required a lot of pieces for support because of it's high center of gravity.

For a future project, we may keep the basic arm design the same but change the base design to have the arm rotate in the same plane as it's claw. We think this will create a much simpler model with a lower center of gravity and improved grasping ability.