Control of 2-motor Walkers

From BEAM Robotics Wiki

Jump to: navigation, search

We apologize for the need to display ads on this wiki. But somehow we must pay for hosting.

Contents

[edit] Introduction

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!).

[edit] 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):

Quadcore motor-drive animation

[edit] 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 motor walker 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.

[edit] 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.


This wiki is sponsored and hosted by Interactive Matter
Personal tools
Ads to finance this wiki