BEAMant - Description of circuit
operation
Wilf Rigter 05/06/99 BEAMant (c) M.Tilden
Overview of circuit operation and probable
behaviours
The core of the BEAMant consists of 2
coupled master Bicore
oscillators. The photo Bicore
will oscillate over a wide range of frequency
and duty cycle and the motor Bicore
has a relatively fixed frequency with a duty
cycle influenced to a lesser or greater extent
by the state of the photo Bicore.
Under some conditions the photo Bicore
will have NO influence on the motor Bicore,
which is the reason for describing the BEAMant
core as coupled master Bicores
rather then master slave Bicores
(I am not sure if the term "embedded Bicores"
applies here).
The output of the photo Bicore
is acting on the bias points of the motor
Bicore
and changes the duty cycle of the motor
Bicore
oscillator but not it's frequency. This coupled
Bicore
circuit (Unicore?) overcomes a serious
limitation of the conventional photo Bicore
in which both duty cycle and frequency are
affected by light. There are three categories of
circuit behaviour which depend on the light
level, and component selection.
1. In the dark the photo Bicore
oscillates many times slower than the motor
Bicore.
2. In medium light the two Bicores
oscillate with a small ratio between the two
frequencies (ie 2:1 to 1:2)
3. In bright light the photo Bicore
frequency is much higher than the motor
Bicore
frequency.
In the dark, with the photo Bicore
at the lowest frequency, the ant will turn in
clockwise and counter clockwise circles as the
motor duty cycle is alternately changes. then as
the light brightens it will alternately steer
left and right.
As the light increases to medium some complex
and even chaotic behaviour can occur as the
coupled oscillators do a little dance at low
harmonic ratios. This includes jittery phase
locking behaviour with a chaotic quality . So in
the medium light the ant may behave in complex,
strange and unpredictable ways.
In brighter light the photo Bicore
frequency rises and with higher frequency
ratios, we see the ant moving in a straight line
with moderate photo tropic behaviour. The high
frequency photo Bicore
output will be integrated (smoothed) by the
motor Bicore
inputs and the duty cycle information of photo
Bicore
will be extracted in the form of differential dc
voltages which influence the bias points of the
motor Bicore.
This in turn changes the duty cycle but not the
frequency of the motor Bicore.
In order to add a threshold to the point
where the BEAMant changes from travelling in a
straight line to turning behaviour, one shots or
monostables were added to the motor Bicore
outputs. This is sometimes called a "dead band"
in which motor Bicore
duty cycles close to 50% (ie 45%-55%) are
ignored. The oneshots are really Nv
stages with an "ON" time which is shorter than
the shortest motor Bicore
on time which you want to ignore. In that case
the motor will rotate at equal speed if the
motor Bicore
duty cycle is near 50% This occurs because the
motor bicore outputs duration's will be slightly
longer than the Nv
outputs and small difference will not affect the
motor duty cycle. When the motor Bicore
duty cycle is changed to the point where one
motor Bicore
output has a shorter duration than the Nv
TC then this shorter pulse will be transmitted
unaltered to the output of the corresponding
Nv
while the Bicore
output with the longer duration continues to be
limited by the Nv
time constant. The result is that the on time of
one motor output is shorter and the BEAMant will
turn into that direction.
This turning is caused by several sources
including low light "searching" where the slow
cycle of the photocore is directly expressed as
alternating left/right turns and at very low
light clockwise and counter clockwise turning.
At Medium light levels the turning is more photo
tropic but may exhibit unusual waggles and
detours ( phase slipping oscillators), In bright
light the behaviour should be quite predictably
photo tropic. The speed of the BEAMant should be
constant except during turns. The so-called XOR
Nu
circuits will change this behaviour to turning
or reversing or photo phobic in case of a side
or head on collision and depending on the duty
cycle of the photo Bicore.
Bicore
details of operation
The photo Bicore
(Pcore) is a dual photo to pulse width generator
and the motor Bicore
(Mcore) is a differential voltage controlled
duty cycle generator. More precisely the Pcore
outputs are complementary signals whose
frequency depends on R/C and the sum of the
photo currents AND whose duty cycle depends on
the difference in photo current. The
complementary Pcore outputs are connected to the
Mcore with two equal resistors resulting in
coupling currents which are dependent on the
voltage difference of Pcore outputs and the
Mcore bias point inputs. The Mcore outputs are
complementary signals whose frequency depends on
R/C and on the sum of the Pcore coupling current
AND whose duty cycle depends on the difference
of Pcore coupling currents.
The resulting influence of the Pcore on the
Mcore output duty cycle is delightfully complex
depending on the frequency ratio of the two
coupled oscillators and the duty cycle of the
Pcore.
For the purpose of the BEAMant, frequency
ratios are dependent on light conditions as
follows:
- In low light, the Pcore frequency is much
lower than the Mcore and the ratio is
high.
- In medium light, the frequencies are
similar and the frequency ratio is low.
- In bright light, the Pcore frequency is
much higher than the Mcore and the ratio is
high.
The range of Mcore duty cycle depends on the
ratio of the Pcore coupling resistors and the
Mcore timing resistor.
This gives rise to 3 distinctively different
modes of operation:
- In low light the Mcore duty cycle depends
on the DC state of the Pcore outputs. ie once
every few seconds the Pcore changes state and
the duty cycle of the Mcore changes state
correspondingly e.g. 25% to 75%.to 25% to 75%
etc.
- In medium light the Mcore duty cycle
strongly depends on the phase difference of
the Pcore and Mcore signals. At very low
frequency ratios, the Mcore duty cycle will
be modulated by the difference frequency
gradually shifting between 25% and 75 % and
back to 25% etc. If the 2 frequencies are
nearly equal the Mcore may phase lock to the
Pcore with the Mcore duty cycle dependent on
the leading or lagging phase difference.
- In bright light, when the Pcore frequency
is high, the Mcore duty cycle will depend
only on the Pcore duty cycle ie the
difference in photo currents.
Oneshot Nv
Stage/PWM motor drivers - detail of
operation
The Nv
motor driver output stages are "oneshots" which
is what Tilden calls them on his neural network
drawing. These are not conventional oneshots
however since their time constant is not
independent of the input signal. For the purpose
of this discussion I will call these "resettable
oneshots" simply Nv.
For a given rising edge on the input, the
Nv
output goes low for a period determined by RC
but this period is shortened if a falling edge
occurs on the input before the Nv
times out and the output is reset on that
falling edge.
More than one behaviour is possible depending
on various ratios of time constants. The most
obvious function of the Nv
is as a duty cycle threshold detector providing
a "dead band" between driving in a straight line
and turning. Since the direction of a 2 motor
platform is sensitive to the motor bicore
(Mcore) duty cycle, tuning would be required to
make it go in a straight direction under
"neutral" conditions.
In practice, bicores are asymmetrical and
coupled oscillators are not particularly stable.
Therefore uncontrolled parameters (i.e.,
threshold, temperature, frequency) can shift
duty cycle which would detune a "straight
direction" adjustment. This can be corrected by
adding a duty cycle dead band between the mcore
and the motor large enough to ignore small duty
cycle variations.
This is done with a "resettable oneshot"
Nv
on the motor Bicore
outputs with Nv
R/C time constant (TC (Nv))
adjusted for a "full pulse width" which is
shorter than minimum Mcore output pulse width
that you want to ignore. Now any pulses from the
Mcore that are greater than the TC (Nv)
will always be limited to the full pulse width
of the Nv
but pulses that are shorter than TC (Nv)
will reset the output of the Nv
on the falling edge and are therefore equal to
the Mcore pulse width.
Other ratios between the time constants of
the motor bicore and the Nv
oneshot exist which give rise to a different
function but I believe that this description was
the reason for including a Nv
in the motor Bicore
outputs.
XOR Nu
sensor/direction motor drivers - details of
operation
The term XOR, as it is applied here, was
derived from the boolean eXcluxive OR logic. In
this case,it means a motor will turn only if one
terminal is high and the other low. One side of
each motor is driven by the one shot Nv
motor drivers and the other side of each motor
is connected to the output a Nu
motor driver.
Together each Nv
and Nu
driver form a bridge with the Nv
side providing fixed frequency / PWM pulses and
the Nu
side providing a negative or positive supply
reference for motor reversing. When the motor
reference supply is high it causes the motors to
rotate in the forward direction and when
Nu
output is low, it causes the motor to rotate in
the reverse direction.
Each Nu
stage input is connected to a tactile sensor
which detects collisions on opposite side of the
motor to which it is connected as well as full
frontal collisions. The function of the
Nu
stages is to stretch a tactile input (determined
by TC (Nu))
and reverse the motor supply reference voltage
for the duration of the Nu
pulse width
When a collision occurs on one side the
Nu,
the supply reference for the motor on the other
side is reversed and for the duration of the TC
(Nu)
that motor will now rotate in the reverse
direction with each active Nv
PWM pulse width determined by the normally
inactive "off time" for that motor.
Assuming high light conditions, the BEAMant
behaviour is reasonably predictable, and side
collisions cause the BEAMant to pivot or spiral
on it's axis. Unless the second tactile sensor
is activated it will continue to spiral until
the Nu
times out. The photo effect for the time that
the motor is reversed becomes photo phobic for
the reversing motor and photo tropic for the
forward motor.
If both tactile sensors are activated the
BEAMant will exhibit it's normal waggling
behaviour in reverse at a faster than normal
speed and the overall photo effect will be photo
phobic. Under medium and low light conditions
behaviour is more complex and (for me) difficult
to describe in detail (you'll just have to build
a BEAMant and tell me).
Well this is my best understanding of the
BEAMant circuit operation and predicted BEAMant
behaviour. Has anyone seen these critters in
action? I look forward to hear examples of the
real BEAMant behaviour both Mark Tildens's and
of course your own experiments with this
design.
I think there will be immediate applications
for the coupled master Bicore
(Unicore?) for walkers and heads.
Since the frequency of the motor bicore is
more or less fixed, it solves several design
obstacles related to the conventional walker and
head photo Bicores
including the zero power problem for a Bicore
Head.
enjoy
Wilf Rigter
|