Hello!
Ok I haven't update this site for while. Just thought I should add the correct link to my new hexapod project site since the old link was dead. (16 july 2004)

Try my new site, MHEX II - the new project

Please by all means continue to email me with questions and comments. I recently solved the problem with my isp for those of you have had emails bounce back or no reply too (SORRY!).

Introduction

Hello!
My name's Mikael and this page is about my hexapod robot project 'MHEX' (an abbreviation of Mikaels HEXapod). I started work on this project at the dawn of 2001 with a fairly low knowledge of mechanics and microcontrollers. I've worked on and off the project for about a year now and have been making many alterations since I began. I entered 'MHEX' in to a high tech competition while it's controller was still only at prototype stage and won first place in original circuit design and drove to Wellington to do a demonstration at the high tech industry awards expo, there I got interviewed by TV1 and TV3 news and met heaps of industry people. After all the fame and excitement I continued work on MHEX to this day and have since drawn up a final emperical design in Solidworks for possible commercial release as a basic development kit. I am now currently designing a new semi-automatic, piloted control system for MHEX which will be able to recieve/send commands via wireless serial data link and have all computing done onboard with a range of built in walking gait algorithms and sensor management so piloting control can range from universal to advanced. Anyway, I hope you find what your looking for on this site, if you would like to contact me, please do so here, I look forward to hearing from you. Enjoy.

 

General Information

Facts and features:

  • Max leg lift approx. 3cm fully rotateable or 5-6cm not fully rotateable.
  • Each leg can carry 2.2 kg of weight according to the law of moments at 4.5V.
  • Robot has about 8 cm ground clearance.
  • Leg actuators (servo motors) are powered by a 7.2 v/1500 mAH battery pack.
  • I was 15 when I started work on MHEX.
  • It took approximately 8 months on and off to complete MHEX (at least a week full time).
  • Robot is made from aluminum offcuts from scrap metal dealer.
  • The total aluminum cost was under $5.
  • The value of the chassis would be around $300.
  • Robot was designed and built by me.
  • Robot weights just over 2kg
  • Robot can carry a payload of over 3kg (approx. weight of standard brick) with all electronics onboard.

Any specific questions you need answered just contact me.

 

Mechanics

'The Leg'

The design of the leg was perhaps the most challenging of all design work because my sources and costs were very limited, litterally down to $10 and the local scrap metal dealer but I managed to get away with an unexpectedly well suited design. The main requirements were that legs would be fully and independently modulated for attachment to a large variety and style of chasis. The major obstacle was that all parts had to be made out of standardised aluminium channeling, framing and sheet metal. With these factors I came up with this design:

Front Close-up Back/Angle Front/Angle Side
Closeup of ballrace Bottom view Solidworks Screenshot 1 Solidworks Screenshot 2 Virtual vs Real

Summing up the main facts:

  • Legs are versatile, fully independent modules.
  • Legs have a ballrace joint at the bottom for less frictional x axis movement.
  • Law of moments: Each leg can carry a maximum of 2.2 kg at 4.5v to y axis actuator.
  • Leg modules weigh just under 250 g each (optimised design weighs less).
  • More general facts available here.

Chasis

The base chasis I am using for MHEX at the moment is actually very primative and un-proffesional, it's a 350mm scrap of aluminium box section used for running electrical wires through and it's only feature is a slidable top with holes at the side for running wireing through to leg actuators and sensors.

 

Electronics

Sensors

Feet:

Probably the most important feature of any walking robot is the sense of touch or pressure on foot surfaces. Here is a simple diagram of the sub-mirco switch feedback system I am currently using with MHEX:

If your interested in using this technique with the same or similar mechanics I suggest using thin rubber tape and some thick copper wire to hold the sub-micro's in place.

The next step in leg feedback involves modifying a servo and getting analog position feedback to the mcu.

Tiltometer:

MHEX has a 4 point tilt sensor or 'tiltometer' which is used when climbing objects. The 4 mercury tilt sensors are each aligned at a suitable angle in a square pattern at the center of MHEX and can be adjusted to set a threshold for each.

Ultrasonic distance Sensor:

At the moment this system isn't functional because I haven't had time to implement anything but there will be more to come of this.

 

Leg actuator interface

Well the big question is how to control leg actuation of an entire hexapod. This is not a simple question and depends on many factors. In a nutshell however, assuming you have thought about this, lets just say that having 2 degrees of freedom per leg is necessary and hobby servo motors are also a requirement. A lot of people will then say this is an easy task, then again, some may say the complete opposite. Well in fact I have mixed feelings about these 'hobby' servo motors. Ultimately these things are cheap for what they do even though they usually come with a $50+ price tag. I was lucky enough to strike a good deal on a taiwanese brand of servo (GWS, model SO3 TXF) but before I go into more detail, here are a few pro's and con's about hobby servo motors:

Pro's Con's
  • Straight forward PWM control.
  • Servos are a full package including drive electronics, fixed gearing and DC electric motor.
  • Very high torque vs size.
  • Need a constant signal to remain powered (involving a lot more background work).
  • Typically No form of position feedback.

My servo interface uses a Motorola 68HC11F1 microcontroller running in expanded mode with only 3 extra logic IC's (2 buffers and a demultiplexer) for complete control over 12 servos. The software uses the real time interrupt feature of the mcu executing every 16.384 mS to keep the servos powered. This routine sends out individual pulses of position data to each servo in banks of 4. This routine allows all 12 servos to be pulsed well within their power down time limit and only takes a maximum of 4 mS to complete and is fully independent of other code, kind-of multitasking you might say.

The following is a structure of the RTI routine that positions the servos

NOTE: The OCx Control registers (timers) are initialized on startup to go low at successful compare and timer interrupts are disabled. Also extra processing is done while waiting for timer flags to be set, i.e. loading of registers for next servo bank.

How is this regular 16.384ms interrupt signal generated? The MCU crystal is 8MHz and has a prescale factor of 4 producing a bus clock frequency of 2MHz, period 0.0000005s (500ns). The onchip timer is set up to clock every 2^13 e-clocks (8192 e-clocks) and we are branching the RTI system off this with a further prescale factor of 4. This forms the equation: 0.0000005 * 8192 * 4 = 0.016384s = 16.384ms hence giving us our interupt is period.

 

Microcontroller rundown

I'm using a Motorola 68HC11F1 based module from PMB Electronics in Wellington. It's called the CPU_1A1. The module includes an additional 32k SRAM & 128k flash for when run in expanded mode and also includes correct reset & oscillator circuitry to get the microcontroller running hassle free.

If you wish to know more about the controller itself then take a visit to www.pmb.co.nz

 

Media Gallery

Pictures

Front Isometric (almost) Corner shot Another Corner shot
Side shot from the High Tech Industry Awards MHEX posing a "climb" motion at the expo Front shot from TV news Shot of electronics
Leg close-up Turning Gait Walking Forward Early Prototype Stage (not functional)
More Pictures Here    
Leg raising 195mm      

Videos

Title Description File Size File
First Steps MHEX's first steps using pic prototype controller.

744 kb

Walk.mpg
Stress test Small stability vs strength test involving a 1.6kg toy radio. 1.77 mb Load.mpg
Fast walk mode Optimised tripod gait, still at prototype stage, no sensors. 738 kb fastwalk.mpg
360 turn MHEX does a 360 degree on-on-the spot turn using a tripod gait. 807 kb fastturn.mpg
1 leg Gait A gait developed to keep MHEX advancing forward at a constant velocity. 1.24 Mb leg_gait.mpg
1 leg Gait 2 Same gait as above but a speed increase of about 33%. Please note that legs were not properly aligned at the time this clip was taken. 1.03 Mb leg_gait2.mpg
Camera View balancing a small camera on top of MHEX while in motion 886 kb camera.mpg
Climbing MHEX climbs a step without the aid of touch sensors. 761 kb Step.mpg
Guts Closup of leg motion replaying a forward advancing tripod gait. 1.6 Mb Show.mpg

All videos require the cinepak codec (supplied with windows by default i think).

 

News & Awards

I recently won an award through ETITO's Bright Sparks competition entering as a senior in original circuit design. I got a mayoral invitation to go to the High Tech Industry Awards 2001 expo in Wellington in early November and I received a prize on the nighte. I got interviewed by TV3 news which showed just an hour later that same night and talked to heaps of important industry people from around New Zealand. Here's some photos from the awards and various other media:

High Res High Res High Res High Res High Res

Here's TV3 news interviewing me and MHEX

A group photo with Ross Peterson, Bright Sparks Coordinator.

Side shot of MHEX

MHEX posing a "climb" motion at the expo Me being interviewed + Surroundings
Low res        
       
Photo from the Auckland Harbor News        

To see the rest of the bright sparks projects, click here. Thats all from me right now..

 

Contact

ICQ: 34818797
Msn: mikael_stewart at h*tmail dot com
Email: mhex at paradise dot net dot nz (done to stop spam)
Mobile: +64 21 1887798 (New Zealand)

Cheers,
Mikael

1 1