In the same way that it is more tiring to do lunges than it is to simply walk, robots with bumpy gaits require more power than robots with smooth gaits. This may not be a problem at small scales, but as a robot’s weight increases, smoother gaits are required.
This post describes how we improved our original TrotBot walking machine by borrowing some ideas from a galloping horse. TrotBot Version 1 has a somewhat bumpy gait, but as you can see in my video below, TrotBot’s weight at LEGO-scale is low enough that it walks well.
When I added the relatively heavy LEGO EV3 brick to TrotBot, however, it didn’t perform so well. To reduce its power requirements, I needed to smooth TrotBot’s gait, which I did by adding active feet that mimic the leg action of a galloping horse.
Background on TrotBot and its feet
Our goal for TrotBot was to create a walking mechanism capable of walking on rough terrain and areas generally inaccessible to wheeled vehicles, so we designed its linkage to step high.
We initially prototyped TrotBot in LEGO with eight legs. It walked well enough that we somewhat naively thought we could scale it up to mini-van size with only eight legs. A team of us spent most of that summer’s boiling hot weekends building our large TrotBot in my garage, only to find during our first walking test that too much torque was required to drive the robot up from the gait’s low point. As we discovered, large walkers should always have at least one foot in contact with the ground at each corner, like how a car’s four wheels are always in contact with the ground.
Below, I simulated one corner of a twelve leg version of TrotBot, and as you can see we should have scaled up TrotBot with twelve legs, like Theo Jansen’s famous Strandbeest.
It would have required too many new parts to switch to a twelve leg version of TrotBot, and we didn’t want to start over from scratch, so instead we explored ideas for active feet that could smooth TrotBot’s eight legged gait.
Using a galloping horse’s gait for inspiration we sought to add some sort of second foot to each leg that would mimic how a horse’s rear, then front, legs land in pairs. This resulted in the additional linkage, that we call TrotBot’s “heel”, which increased TrotBot’s foot-contact with the ground by about 10%, reduced how much the feet skidded, and increased the step-height of TrotBot’s rear legs. Shown below is a video comparing TrotBot with these “heels” to a galloping horse.
Next, we explored adding some sort of toe that would push down on the ground as the foot begins to lift, just like how humans use their toes to walk. We installed one of these toe ideas on our large TrotBot but they didn’t smooth the gait enough, and since they were attached to the legs at a fixed angle they tended to catch on obstacles. Catching on obstacles occasionally caused the linkage to lock and gears to grind. In other words, this toe compromised our main goal of creating a mechanism that could walk on rough terrain! Here’s a photo of that toe.
Looking again to a galloping horse for inspiration we started to experiment with linkages that mimicked how horses paw their hooves backward and then keep them folded back as they lift their legs to strike the ground again. We discovered a few options that mimicked this action, and they smoothed the gait by increasing TrotBot’s foot-contact by another 10% while maintaining its high foot-path. I added one of these toe options to TrotBot Version 2, and although I couldn’t make a toe with accurate dimensions using LEGO’s integer-based beams, it still smooths TrotBot’s gait significantly.
I have posted instructions for building TrotBot Version 2 here.
- DIY Walkers: Strider
- EV3 TrotBot Version 2: Inspired by a Galloping Horse
- Hexapod TrotBot: A classroom-friendly DIY walker
Latest posts by Ben Vagle (see all)
- DIY Walkers: Klann’s Mechanical Spider - 26 March 2018
- Hexapod TrotBot: A classroom-friendly DIY walker - 19 October 2017
- EV3 TrotBot Version 2: Inspired by a Galloping Horse - 4 May 2017
- DIY Walkers: Strider - 29 January 2017
- DIY Walkers: TrotBot using EV3 - 28 December 2016