Back in January, I wanted to kick off a new robotics project, and began looking at multipedal robot kits. I’ve found walking robots fascinating for a while now, and have been closely following the work of companies like Boston Dynamics in their search to mimic natural movement through machines.
Their accomplishments have been astonishing, and I wanted to see what was possible when you don’t have a huge military budget to play with. I’m also interested in the algorithms required to produce the movement, and tracking the positioning of such a machine in an environment. The problem with off the shelf kits is that, when it comes to budget constraints, there isn’t much to choose from. As they are mostly made from servos, the more joints and legs you have, the more the kit is going to cost. One kit that caught my eye, however, was the ’12-servo Hexapod Robot Chassis’ kit by Dagu. This seemed like a very reasonably priced kit to get started with and the demo video looked quite impressive. At just shy of £100, I didn’t expect the best quality servos or chassis for the price, but as I was after a learning platform to get to grips with the fundamentals of legged robot movement it seemed worth a punt. It’ll be a far cry from what BD are capable of, but you have to start somewhere, right?
Since this is a chassis-only kit, you are expected to supply your own controller and power supply. Dagu recommend the Arduino-based ‘Spider’ controller from Sparkfun. This is essentially an Arduino Mega with a high-current voltage regulator and outputs designed for easy servo connections and there is freely available example code to run on it.
However, because I’m interested in developing my own software, (and I’m sceptical about the timing behaviour of the the Arduino servo library), I decided to go for a modular design, using a separate servo control board. This will offload the processing required to update the servo pulses away from the main business controller, allowing it to do other processing, such as reading sensors. I will be using an Arduino Uno to get started, but I don’t want to tie myself down to using this forever, as I may want to move to a more sophisticated processor at some point. I’ll get to that later.
After a bit of shopping around, I chose to use the ‘Mini Maestro’ 12-servo controller from Pololu. This interfaces with a master controller using a UART connection, which means virtually any processor will be able to talk to it. It has the added benefit of shipping with a nice piece of software called ‘Maestro Control Centre’ that allows the servos to be controlled with on-screen sliders in real-time, and for simple scripts to be written and run on the board. This will come in handy for working out the leg movements, before I even touch the master controller code.
The chassis kit
Looking at the pictures online really doesn’t give this kit justice when it comes to quality. I must admit, I expected the leg sections to be made from the same laser-cut acrylic as the main body, and was worried that they could be a little fragile. To my pleasant surprise, though, they were made out of injection-moulded acrylic, and seem very robust. The servos supplied are cheap 9 g items, but this shouldn’t be a problem for the time being. Being a standard micro servo size, I can always upgrade at a later date if needs be. All in all, first impressions were very good, considering the price paid for the kit.
Putting the kit together was really very simple.
Servos form the ‘hip’ and ‘knee’ joints, and the leg sections are cleverly designed to form both the upper leg (‘thigh’) and lower leg (‘calf’), depending on which way round you put the servo.
Everything is held together using self-tapping screws. My only gripe here is that the screws weren’t the best quality, and the heads were easily rounded when tightening, but there were plenty of spares supplied so this wasn’t a great loss.
After less than an hour, I had assembled the chassis with all 6 legs, which was ready to accept the controller.
In the next part, I will talk about the electronics in more detail, and how the ‘Maestro Control Centre’ application will help with software prototyping…