Return to Main Page
Twitch - 3-servo hexapod walker
(June 2012 - )

Twitch10_t.jpg Twitch14_t.jpg

Twitch is a 3 servo 'hexapod' inspired by a similar robot made by Amino-san from Japan, seen on YouTube.

The idea behind this bot is that it's very mobile (on flat surfaces) for a walking robot with only 3 servos. The simplicity, walking ability, and use of a four-bar linkage were what made this a must-build when I saw Amino-san's version on YouTube. This also makes for a much cheaper robot than, say, my 18 servo Numa.

The process of building/developing Twitch is described in my project thread on the Trossen Robotics Forums. Various details and observations can be found there. Video can be found on my YouTube channel.

The particular challenges in this project were: (1) Figuring out how the bot works via a low quality youtube video; (2) Interfacing the Wixel MCU to the AX-12 servos; (3) Interfacing the Arbotix Commander with the Wixels' wireless communication; (4) Porting others' libraries (WebbotLib) to a different processor/C compiler.



TwitchNumaCompare_tt.jpg
Comparison: Twitch, Numa

Hardware specs of Twitch:

Construction:
Except for using a drill press for 8mm holes, everything was cut/constructed with a Dremel, Cupcake CNC (3D printer), and various hand tools. I used Solidworks for all part design except the legs. Legs were prototyped with cardboard, traced with splines in Inkscape, and then cut from paper templates on Delrin. Delrin is ideal, since any melting when cutting with a Dremel is negligible (unlike a lot of other plastics).

I cite 10 hours as the time required to build Twitch... I could build a second one in that span, including the electronics. Development time took a few months – some CAD and prototyping, some electronics, but mostly software fiddling.

Movement:
Twitch currently moves at a speed of 180 mm/s (0.6 ft/s), can walk forwards, backwards, in an arc, and turn... Overall *very* mobile for a 3-servo bot. Currently, traction is best on carpeted surfaces, and I've yet to experiment with adding traction for smooth floors. An added benefit of this bot's movement mechanics is that walking and turning both share a starting 'pose,' so transitioning between walking and turning is always smooth. The range of motion needed from the servos is very small, so movement is in fact very twitchy.

The gaits (sequences of servo positions that result in walking, turning, etc.) were created initially with WebbotLib's Gait Designer. Correspondingly, the 'GaitPlayer' code from WebbotLib was ported with modifications to work with the Wixel board.

Pics (click for full size):
Numa12_t.jpg Numa13_t.jpg
Numa15_t.jpg Twitch06_t.jpg

Electronics/Software:
The Wixel MCU was chosen for its compact size – Axon/ArbotiX/Arduino are all much larger boards – and $20 for a pair, (when on sale) is nigh-unbeatable. The bot is coded in C, using the SDCC compiler. My code is based off Pololu's provided code for the Wixel, and can be found on GitHub. It's worth noting that the Wixel has a very limited amount of RAM: 256 bytes. I'm using 254 bytes, currently – there's little room for fancier math or added functions, though plenty of extra space is available for more hard-coded gaits.

I control Twitch with a modified ArbotiX Commander, which interfaces with a second Wixel by sharing the UART that the XBee is connected to. These modifications are described in a forum thread. No software changes were required to the ArbotiX, and the Wixel uses the Pololu-provided Wireless Serial App.

WixelBoard01_t.jpg WixelBoard04_t.jpg

Modified Arbotix Commander:
WixelCommander02_t.jpg WixelCommander03_t.jpg

Stand made from CD spindle with 3D printed parts and a cork trivet:
TwitchStand01_t.jpg TwitchStand02_t.jpg


-5-11-2013