Contents

Introduction
The Mechanics
The Computer
The Software
Results
Future
History
References
Acknowledgements
Introduction: Why a Biped?


In theory a humanoid robot could go everywhere people go and do everything people do. I claim that to thrive in a human environment a robot should have approximately human form. The majority of present robots are non-mobile industrial robots and manipulators. Mobile robots in service are limited to tracks and wheels. Although fine for flat floors they fail in rougher terrain, like a flight of stairs. These robots are also incapable of using the wide variety of existing human tools because most human tools are used by the hands. There are plenty of people currently researching intelligent manipulators, so I choose to do the other part. I want to make a robot with the same articulation of a human leg and I want it to walk like a human.

The Mechanics

The requirements for the mechanical robot were that it be strong enough and light enough to be fast enough and agile enough to walk. I used Mathematica to calculate and graph various possible combinations of leg length, mass, and acceleration. I had a preconceived guess for what size to make the robot of a little under half a meter total height. I used the graph at left to get an idea of what reasonable combinations existed for the size of the robot. If the legs were too long it couldn't be built light enough and if the legs were too small it would be awkward to build. I settled on the 20 cm leg length and corresponding 1 kg mass target. 1 kg actually gives a margin for inefficiencies like friction. I then used a drawing program to arrange the parts and lay out full size plans.
One predetermined variable was the motors. I chose standard model aircraft servos because they are relatively cheap ($11 each), easy to interface, and reliable. The key number involved in these was the torque. That directly determined the size range of robot I would build.
The skeleton of the robot is aluminum with steel joints and a plastic torso. The feet are scraps of old sandals to provide traction and some shock absorption. I'm not sure but the sandal material may have to be removed later when sensors are added.
I tried to fasten things together with nuts and bolts as much as possible. In previous years my robot had problems relying heavily on Duct Tape and glue. I tried to stay away from those as much as possible but there were a few places that could only be epoxied. While building this robot I discovered a new fastener which I am so far quite fond of, cable ties. They are easy, quick and intuitive. I have not yet had any catastrophic failures to tarnish their image.
The servo linkages were made with a combination of soldering and gluing. I began by following the directions and soldering the brass parts to a rod. In the ankle there was a very short link to be made so I glued the rod directly into the plastic parts. Gluing was much easier and if it holds up through demonstration and testing I may finish the robot with all glued links.
The overall structure planned for and built is this: the ankles pitch and roll, the knees bend, the hips pitch, roll and twist. The ankles are just two pivots. Due to the linkages a pure roll is made by moving the roll servo but a pure pitch needs both ankle servos to move. It's knee, like ours, is only supposed to move in one direction. The hip is a universal joint put into a bearing in the pelvic box. I have left the hip twist axis fixed until basic walking is reliable and turning is a logical progression.

The Computer

The computer is based on a MC68HC11A1FN (HC11) Motorola Microcontroller. The HC11 runs at 2 Megahertz and has a grand total of 33,024 bytes of RAM, 256 on the HC11 and 32K external. The HC11's built-in asynchronous serial is running at 9600 baud and is connected to 26LM31 and 26LM32 line level converters for connection to a Macintosh serial port. The asynchronous serial also communicates to the ñMini SSCî PIC based Serial Servo Controllers. The HC11's synchronous serial can be connected to 74HC64 parallel to serial shift registers to collect pushbutton switch data. The 8 Analog to Digital Converter (ADC) lines will be connected to pressure sensors on the feet.
The computer is on a board 2.75 by 3.75 inches. All the parts and wiring make for a thickness of about half an inch. The Mini SSC's are about 1.5 inches square. All of these are mounted internally on the back plate of the pelvis box.

The Software

The software is based on a terminal debugger by Fred Martin. I have customized it by writing additional code to support the unique features of my robot. The original has routines built in to handle things common to all HC11 computers such as peek, poke and communication to a terminal on a host machine. I added routines to control the Mini SSC's and to display values of sensor input. All the programming is in 6811 assembly, this makes for a small efficient program of less than 1k.
My strategy for controlling the robot is based on Brooks' Subsumption Architecture as a framework. The architecture is that in a set of behaviors more advanced behaviors can override or subsume the more basic behaviors. The basic behaviors provide quick reflexes in a pinch. When processing time allows the advanced behaviors provide smarter options. It is a good plan to develop with because a foundation of initial work is built on and never lost as newer more advanced behaviors are added to the old.

Results

The robot is mechanically complete. Presently the robot can move any of it's servos under command from a host computer. The foot sensors need to be attached and software needs to be written to utilize them for walking. Everything has been internalized except for two power tethers and a serial line which will be detached later. It can't walk but it can go through the motions. It should be only a mmater of time until it works.


Future

After the shortcomings mentioned in the conclusions are addressed, it should be walking in roughly a straight line. I would proceed to improve it's accuracy, efficiency and speed. Turning would be the next step.
At this point it would be fully operational. I would have to decide if I wanted to add more to it or build a new robot with some added functionality designed in. It might turn out that the present robot could not carry any extra weight (sensors, for example).

History


This is the third legged robot that I have built. Each robot has been a large step over the previous. The construction materials have gone from plywood with glue to aluminum with screws. The actuators have gone from homemade lead-screws to commercial model aircraft servos. The computer controller has gone from an old Commodore 64 programmed in BASIC to my third custom built MC68HC11A1-based onboard computer programmed in assembly.

References



1.
Freedman, David H. Invasion of The Insect Robots, Discover, Mar. 1991, pp. 42-50
2.
HC11: M68HC11 Reference Manual, 1991, Rev 3
3.
Brooks, Rodney A. and Lynn Andrea Stein, Building Brains For Bodies, Aug, 1993
4.
Yeaple, Judith Anne. Robot Insects, Popular Science, Mar. 1991, pp. 52-55, p 86
5.
Brooks, Rodney A. Intelligence Without Reason, April 1991
6.
Flynn, Anita and Joseph Jones. Mobile Robots: Inspiration to Implementation, A K Peters, Wellesley Mass. 1993
7.
Dilworth, Peter. Walker Robot, The Robotics Practitioner, Vol 1, #1, Winter 1995, pp.15-22
8.
Brooks, Rodney A. A Robust Layered Control System For A Mobile Robot, MIT AI Memo 864, Sept. 1985
9.
Brooks, Rodney A. Achieving Artificial Intelligence Through Building Robots, MIT AI Memo 899, May 1986
10.
Brooks, Rodney A. A Robot That Walks; Emergent Behaviors from a Carefully Evolved Network, MIT AI Memo 1091, February 1989
11.
that SCi Amer article, Dec. 1991, cover story

Acknowledgements



Thanks to my parents for checking the report and making sure it made sense. Also thanks for my allowance which is the major source of funds for this project.