Home Solutions Links About


whobot

WHObot is a WareHouse Order processing robot. It grew out of a desire to make a robot that simulated a useful real life situation. It is not a pretty robot to look at but it is lots of fun (and dare I say very impressive) to watch as it operates.

The robot starts in a "home" position. When the programs on the two RCX's are started it waits for an order. Pressing the button on the rear right hand side signals the robot that you are ready to place an order. There are six pickup points. WHObot prompts for each pickup point by playing a number of beeps that equal the pickup point number. After each beep sequence, the order for that item is entered by pressing the button the required number of times. If no order is entered the next item is prompted after a delay of 3 seconds. At the end of the order entry WHObot waits again. Pressing the button once more sends it on its way.

WHObot drives around the track using a fairly straightforward line following algorithm. When the bar code reader light sensor detects a black bar, the main drive motors are slowed and the number of narrow bars are counted. The last bar in each group is wide. This tells WHObot to stop counting and the end of that bar marks the point at which the robot stops. If an order has been placed for that pickup point, the arm activates and picks up the required number of items. When this has been done or if there are no items to be picked up the robot moves onto the next pickup point. After the last pickup point WHObot makes its way back to the "home" position. Once there it waits to repeat the process.

The RCX units share the processing load and act more in a peer-to-peer relationship rather than a master-slave relationship. Control moves back and forth depending on what function is being carried out at the time. Control flags and data are passed back and forth using the Infrared message link. The front RCX is the navigation unit and controls the driving, steering and pickup point detection. The back RCX controls order entry and the arm to pick the order at each pickup point.

WHObot was built in spare time over a period of about a year. It was finished in 2006.

WHObot's right side. For normal operation a plastic cup sits above the steering wheel to receive the picked items. The button at the bottom left corner of the picture is the one used to place the order.
WHObot's left side. The light sensors in the lower left of the photo are attached to the steering wheel and are used to follow the dark line. The sensor in the lower middle is the bar code reader. The sensor in the upper right detects the position of the turntable. This non-contact method of determining the arm rotation end points was a lot easier to build than using touch sensors.
The underside. Nothing very exciting as far as the main drive train is concerned. The odd placement of the drive motor happened because there was no room within the main chassis. The wheel axles each passed through four technic beams to distribute the load. I also lubricated them with graphite powder. You can also see the symmetric arrangement (across the black line) of the phototransistors in the tracking light sensors.
This is the hypothetical warehouse with WHObot in the "home" position. The six towers are the picking points and contains bricks or other small parts to be picked. In this photo the receiving cup is on the robot.
Detail of the arm lift drive. A simple worm drive does the job combined with some cams on the driven shaft (see photo below).
The left side shows more clearly how the arm was lifted using cams. Cams were also used in conjunction with the touch sensor in this photo to act as limit switches. The white tile beneath the touch sensor is one of the two reflectors used by the light sensor that controlled the limits of the turntable rotation.
This photo shows the arm in the elevated position. The second pair of lifting cams are now visible on the far side of the model.
WHObot picks a small wheel from a picking point. For more detail on how the arm works, see my Gripfast entry in the Solutions page of this site.
The steering drive train. Two belts (the second one is hidden by the white and black plates) were necessary to minimise slippage.
One of my goals was to construct a pair of light sensors so that the photo transistors would be symmetical across the black line. This proved quite a challenge and involved a number of now obsolete pieces from my Technic sets.
This photo shows the turntable in the "normal" position, ie, not picking an item. As is my custom I used a symmetric drive, the details of which may be found here. The white tile in front of the light sensor is the second one that is used as a limit "switch" for the turntable rotation.
These four picking point towers dispense 2x2 bricks of a particular colour. Also visible are some of the bar codes. These bar codes do not have to be in their numeric order as WHObot reads the code to determine the picking point.
This is a closeup of the dispenser part of the tower. When a brick is removed from the front of the dispenser, the rest fall down the vertical shute by gravity. The required 90 degree rotation of the bricks is carried out using a "J" liftarm, of which only two holes are visible.
A different style of tower was required for wheels and cylindrical bricks.