Bestiary Logo

Image Home

Image BEAM family tree

Image Sitter

Image Squirmer

Image Slider

Image Crawler

Image Jumper

Image Roller

* Walker

*Image 1 motor

** 2 motors

*** Design

*** Control

*** Gallery

*Image 3 motors

*Image 4 motors

*Image 5 motors

*Image 6 motors

*Image 8 motors

*Image 12 motors

*Image Muscle wire

Image Swimmer

Image Flier

Image Climber

 

The BEAM Bestiary is a BEAM Reference Library site.

Control of 2 motor walkers
How to make your 2 motors move



Motor timing (i.e., when each motor drives, for how long, in what direction, and phasing between motors) is largely a function of the electronics driving the motors. I'm aware of three main ways to drive 2 motors in a walker -- two Nv-net-based methods (quadcore & master / slave bicore pair), and one non-Nv-net method (the "not-so-dummy" walker). What follows is my attempt to put these three approaches in context (and a big tip of the hat to Bruce Robinson for much of this explanation!).

Quadcore
A quadcore (with only one process circulating) will only be operating one motor at a time. Note that the rear motor "leads" (in terms of the pattern's phasing), and the front motor "follows."

Rear motor
CW
 
CCW
 
CW
 
Front motor
 
CW
 
CCW
 
CW

This allows for a sort of "cautious" stepping gate, but also means that there's quite a potential for leg-dragging, unless you get the balance just right. For a fairly complex two motor walker that is intended to carefully explore its environment, the quadcore is a good choice. You can make it turn and back up, and you can change the timing of either motor without directly affecting the other motor. This gives you a little more flexibility for responding to multiple sensors, 'though it also makes for a more complex robot.

Here's an animation showing a quadcore at work driving a 2 motors -- the active neuron has its inverter highlighted (here, quadcore initialization circuitry is implied but not shown):

animated quadcore 2-motor drive

If you want to go deeper with this, I have a number of quadcore walker circuits described on and linked to from my 2-motor / 4-leg walker circuits page.

Master / slave bicore pair
With a bicore connected to a single motor, the motor is always running - forward and back. So with a master / slave bicore pair, with a motor connected to each bicore (as is usually done), both motors will be running continuously -- forward and back. What gives you a walking gait is the lag between the master and slave; for part of each cycle the motors are turning the same direction, but for the other part they are turning in opposite directions. Note that again the rear motor "leads," front motor "follows."

Rear motor
CW
CW
CCW
CCW
CW
CW
Front motor
 
CW
 CW
CCW
CCW
CW

For a simple, well designed 2 motors that is intended to charge ahead over all obstacles, a bicore pair is probably the best choice. You can make them turn, you can make them back up, but whatever you do to modify their timing sequence will affect both motors.

The "Not-So-Dummy" walker
The "Not-So-Dummy" walker is an interesting design by Ben Hitchcock. Here, servos must be used for the walker's motors, since the servos' built-in potentiometers are an integral part of the circuit. This means, of course, that the servos must be only "partially hacked" (the internal circuit boards are removed, and new wiring installed to bring both motor and both potentiometer contacts out of the servo.


Sitemap  *  Search  *  Submit  *  Legalities  * 

Page author: Eric Seale
This page was last updated on

Creative Commons License
This work is licensed under a
Creative Commons License.