Mike Smyth's MiniMechadon Page
MiniMechadon was designed/constructed from Nov '02 to Dec '03. Currently, the mechanics and electrical hardware are complete. I have written some test code to exercise the servos and demonstrate the flexibility of the robot and for basic walking.
The main goal of the project is to experiment with learning algorithms that will allow the robot to learn how to walk, rather than programming it to do so. The physical design is intended to be a simpler version of my Mechadon robot (12 DOF). While simpler than Mechadon, I feel there is still enough complexity to make the problem interesting while not being overly elaborate. My hope is that the techniques developed with MiniMechadon can be extended to more complex robots such as Mechadon.
There are 4 DOF, each powered by a high speed nano servo (Tower Hobbies TS-5). These servos are rated at 20.8 oz-in of torque at 6.0V and only weigh 0.34oz. The final weight of the robot is about 12oz. The sensor array consists of 4 touch sensors on the bottom of each foot, Left and right IR obstacle detection, and 4 CdS photo detectors located on all four sides of the robot. The heart of the control system is a Microchip PIC16F819 micro-controller and a separate 8 channel A-D converter. I originally designed the control system using a PIC16F84, but I later switched to the PIC16F819 so I could use the Microchip ICD2 in-circuit debugger/programmer. The PIC16F819 is pin compatible with the PIC16F84, but has more peripheral options like a built-in 10-bit 5-channel A-D converter. The ICD2 has worked great (unlike the original ICD) and I would definitely recommend it.
Most of the construction of the robot is brass tubing soldered together with a small pencil torch. The wiring on the legs was run through the tubing so it is not visible. The brass tubing is also used for the bearings in the leg joints. The white plastic pieces were machined from UHMW (a plastic similar to nylon). To be different, I made the circuit board for the control system into a 3-D shape out of 9 separate panels to give the robot a unique look (intended to be a streamlined version of the AT-ST walkers from the Star Wars movies). This was also my first attempt at a homemade surface mount double-sided PCB. The IC's are SOIC packages and the resistors and capacitors are 1206 size packages. It was really no harder to make than a through-hole PCB. I used a product called "Press-n-Peel Blue" to make the boards and I tin plated them with "Tinnit" so they don't corrode. It was interesting to do a PCB layout for a 3-D shape. It gives flexibility that you don't have with a typical flat PCB. I'm currently designing another robot and plan to try some smaller IC packages and to use 0805 resistors and capacitors. Stay tuned for the results.
Here are some construction details of MiniMechadon:
The first step in the construction was the chassis design. I designed the entire robot in AutoCad.
Here is the completed chassis. At this point it still had the basic square prototype feet.
It was difficult to get the proper dimensions in AutoCad for all the pieces of the circuit board due to the 3-dimensional shape. To make sure it would all fit together, I made a cardboard prototype (cereal box) to verify the dimensions. After making a couple tweaks I had the final PCB dimensions and I started placing electrical components and routing the traces.
Once the entire circuit was routed, I made a 2:1 prototype (twice actual size) to check all the routing, make sure connectors and mounting points were correct and that the traces on all the parts lined up correctly. It was made by printing the CAD drawings on normal printer paper and then gluing the sheets to a piece of cardboard (cereal box again). The various panels were then taped together.
Here are the real PCB panels after etching and before they were tin plated. A product called Tinnit was used to do the plating. It comes as a powder which you mix with water and heat to ~160deg on the stove. After soaking in the solution for 10-15 minutes, the boards had a nice tin plate.
Part way through the assembly of the circuit board. All the boards are held together with copper wire and then soldered to form a rigid 3-dimensional circuit board.
Bottom side of the mostly complete circuit board showing the batteries and the wiring under the shell. The battery pack is five 600mAh Ni-Cad cells. The run time of the robot is in excess of 30 minutes on a single charge.
Here are various views of the completed mechanics and circuit board. So far I have software complete to support all of the basic functions (A-D conversion on all 8 channels, servo drivers (with position and velocity control), IR sensors, foot contact sensor readings (4 per foot)). The videos below demonstrate the basic capability of the robot at this point. In the first video, the robot leans over and picks up a foot. This motion is controlled by the foot sensors (rather than a completely pre-programmed motion). Once the foot is in the air it moves the leg forward and backward and turns the foot to demonstrate the flexibility of the robot. The second video shows the first try at walking. I have some adjustments to make, but the robot is fairly stable. The next additions will be IR obstacle detection, and then learning.
Exercise - Video of MiniMechadon "exercising" on my workbench.
First Walking Code - Video of the first walking code.
I will continue to update this page as I make progress.
Send Me E-Mail
Home Mechadon Hexapod MiniMechadon LEGO Bots Classic Cars Air Engines