The BEAM Circuits Collection is a
BEAM
Reference Library
site.
|
|
The "Happy Birthday Singer" solar
engine
A little bit of BEAM
history
The original Type 2 Solar Engine was based around the "Happy
Birthday Singer" (HBS) chip that was pulled from the
original Hallmark singing greeting cards. While it's no
longer available, this is interesting for educational as
well as historical reasons. Here are the particulars as
described by Mark Tilden:
"The happy-birthday singer is a two bit wide by
n words deep programable sequencer with 4 commands: reset
to start vector (00), decrease frequency (01),increase
frequency (10), and pause (11). The device starts out
with a 2 word vector jump at the start of memory which
locates 16 positions in it's memory. This jump vector is
readdressed whenever a (11) command is found in the
execution table. "Happy Birthday" is the first in this
chain and is at default (00-00). There are at least 6
songs already in the device which can be found by
reprogramming the jump vectors. The vector locations seem
to be at either 256 or 512 bit increments in a 4k or 8k
memory map. These songs include "you light up my life",
and xmas carols. Reprogramming the singers is not simple
in either process or technology, and truth to tell I
never completed my studies of the devices as it's a
bugger working with an already burned-in prom. The only
details solaroller builders need know are:
--------------------------------
| Vcc | switch |
| | |
|--------- |
| | gnd |
| *** __________ |
clock|--**uP*-| |
whisker| ***** |
| *** |
| / \ Battery Holder|
| | | (Usually cut |
| [ ] [ ] off) |
--------------------------------
Quad outputs
- Soldering a cap between the thin clock whisker and
Vcc
gives an approximate ratio of 1 second period = 0.1
uF.
- Device operates from 0.98 V to 5 V with a significant
current drain happening around 3.1 V (approx 3 mA
nominal). Device works optimally from 1.2 V to 2.3 V. A
short of the power pins will reset the device but the
device has a power down mode between 0.3 and 0.98 V where
it will keep it's internal count position without
resetting. The input impedance of the clock whisker is
very high, and is obviously a direct link to the internal
resistor-cap junction of the internal oscillator. This
pin has the classic cap charge-discharge curve when
probed. Resistors to this pin will also work, but at a
significant current increase for low power
applications.
- Operating current of the device at 1.5 V is in the
microamps with the piezo removed.
- The outputs are rail to rail drivers at about 2-3 mA
per transition. The outputs are quadrature encoded, so
they are always opposite polarity to each other. They can
be direct shorted for long periods without affecting the
device and handle positive and negative current spikes
well.
- The only way of destroying them under nominal
conditions is to power them up backwards. They die very
quietly and then the only way to test is by reattaching
the piezo crystal to hear if the oscillator has stopped.
Another fault is when the cap soldered to the whisker is
not superglued down after being attached. There is no
cure for this as the whisker is usually lifted right from
the pcb. Replace the device with another one."
Dave Hrynkiw of
Solarbotics
fame then adds this:
To turn the HBS into a controller for a
dual-solarengined photovore, use the following technique:
Tie each separate solarengine trigger switch to each
of the HBS outputs, you can get alternating motions
going. Mark Tilden uses this technique in his BEAMants,
which are layed out with two motor output shafts as
"legs", and a third "dead leg" to maintain balance. As
the motors trigger, the effect is that the BEAMant
"walks" left-right-left-right on the motor shafts. By
adding a pair of hair-trigger switches to the front of
the beast, you can inhibit the trigger signal reaching
the other-side motor. So if it bumps into a wall on it's
right side, the sensor inhibits any further "triggers" to
the left side motor, so it then pivots about it and walks
away from the obstacle. Just shorting the trigger lead to
positive will keep that circuit from triggering.
|