Intro to Project B.E.T.H.

About five years ago I decided I wanted to build a hexapod robot. I’m really interested in legged robots because it makes you to break down and analyze what real life animals do. What is my brain doing as I walk? Why do centipedes have a ripple gait? How the heck does a mountain goat not fall off the side of the cliff?

I started by looking at Matt Denton’s hexes over at www.hexapodrobot.com. He has some great code that looks very natural. I couldn’t afford the whole hardware kit at the time, but i bought the p.Brain processor and three leg servos. With these parts and some paint stirrers i made a single leg. I got a robotics textbook (Remind me to update the title here) which explained how to use rotation matrices to calculate IK. I got through the math using Matlab and eventually was able to point my foot in 3D space! After that I did some basic trajectory planning so that i was able to make the leg step. It was very satisfying to see a leg move smoothly and naturally.  Well, by leg I mean a wooden paint stirrer.

Wooden Leg

I then got preoccupied with other things and the leg sat in a box for 5 years. A few months ago the itch returned. I went back to the old hexapodrobot.com forums and found they had dwindled down a bit. The p.Brain hardware didn’t have a huge community behind it which i knew i would need so i began researching a new platform. I wanted a platform with hardware I wouldn’t outgrow and a large community for the support I’d surely need along the way.

This led me to B.E.T.H.. B.E.T.H. (Battle Enhanced all-Terrain Hexapod, I’ll explain later) is a MarkII PhantomX Hexapod. This thing is every bit as awesome as it looks. Here’s why:

MkII PhantomX Hexapod

1. Arbotix Robocontroller – This is a great controller meant for use with the Dynamixel servos with enough speed and memory to get the job done. Arduino compatible means that its easy to code in the Arduino IDE and has a ton of community programming support.

  • Arduino compatible
  • 16MHz AVR microcontroller (ATMEGA644p).
  • 2 serial ports, 1 dedicated to driving the servo bus (with Dynamixel connectors), the other to the XBEE radio
  • 32 I/O, 8 of which can function as analog inputs
  • Hobby servo style 3-pin headers (gnd, vcc, signal) on all 8 analog inputs, and 8 of the digital IO
  • Dual 1A motor drivers, with combined motor/encoder header.

2. Dynamixel AX-12A Servos. These are “entry level” Dynamixels, but still pretty advanced robotics servos and far superior to hobby/RC servos. They communicate daisy chained along a serial bus so they’re easy to connect and command. They support commanding position, speed, torque on/off, etc and can feedback position, load, temp, voltage, and other things. Really cool!

3. Kit support. Trossen did a great job designing this hex and kit. The body looks great, allows for a ton of articulation and is physically very stout. If you buy the full kit, it includes an Arbotix Commander controller, lipo battery, charger, radios, etc, etc, etc. The Trossen online forum is also quite active and has lots of smart folks eager to help with robotics algorithms, design, etc.

So with the decision made, the trigger was pulled, and a few days later it showed up at the door.

Up next: Building B.E.T.H.

1 thought on “Intro to Project B.E.T.H.

Leave a Reply

Your email address will not be published. Required fields are marked *