Well here it is the CheckerBot RCX. I have been working on this on and off for about 6 months maybe little more. This is the second robot that I have build by my own design. After building the eight legged walker (aka Ernie) I wanted to do something that was challenging and would take a bit of work. Personally I think its pretty amazing what you can do with the RCX. The LEGO Mindstorms developers and the LEJOS developers need a big pat on the back.
Only moves forward no kings (for now)
Double and Triple jumps
Randomly pick from multiple moves
Picks safe moves over unsafe moves
Two RCXs are used in this robot they operate in a master slave configuration. The master is a rides in cab above the gripper arm and the light sensor arm. The slave sits on the end of the boom and handles all navigation tasks. I used the lejos replacement firmware for this project and I found that it works very well.
The Master rides on the cab in a basket facing the slave robot. I came up with the idea of building baskets for the RCX to lay in about a year ago. This eliminates the need to snap the brick in to place. In side the belly of the cab are two motors and two rotation sensors . Each pair of these operates as a servo motor and is used to raise and lower the gripper and the light sensor. On the back of the cab sits a air compressor for opening and closing the gripper. I went though several designs for both the compressor and the gripper. The current compressor uses a Lego hand pump and the motor is on a 25:1 ratio. Depending on the direction that the motor is running an air valve changes directions. I use a clutch on the valve gears to prevent the motor from stalling. the gripper is loosely based on the gripper on the 8436 truck. Both arms on the cab are lifted by the two motors and monitored by the rotation sensors. When the program first starts they are both lifted and when they are moving anymore for more than a half second then the motors turn off.
The Slave RCX sits on the end of the frame and is responsible for all navigation functions. Its directly in line with the master RCX to keep communications good. On the frame there are three motors, three rotation sensors and six touch sensors. I am using a passive mux from mindsensors.com and and active muc from them also. the touch sensors are used to synchronize the rotation sensors. Each truck on the frame has a rotation sensor on the side and a touch sensor on each end. The two touch sensors are connected together and are then connected to one of the ports on the passive mux. Under the RCX is the motor and the other rotation sensor for the boom. I’m using Lego link chain to move the cab with the third motor. If you ever get a chance get some of the chain its really handy. The rotation sensors on the right truck and the boom are attached to the active mux. The active mux is quite handy it allows you to attach up to three active sensors to it. I wrote a class for the mux in java ill be posting it on the site shortly. The only problem I have with this setup is that the trucks tend to drift some even with the motors set to off. This is not really a problem except the right side rotation sensor will not register this if the active mux is switched to the port for the rotation sensor for the boom.