Tony Duell wrote:
About 20 years ago, there was a Fischertechnik
robotics kit. This
contains the usual blocks, gears, etc, 2 small motors, 3 lamps, an
electromagnet, 8 switches and 2 pots. And no other electonic parts.
There were various interfaces sold for this, at the time they were
very expensive and not suitable for the machines I had. So I did
the obvious thing and boilt my own...
I know we have a similar unit for the Commodore C64. My father bought
You don;'t happen to have the software disk for that in a readable
condition, do you? As I mentioned, I didn't get any magnetic media with
my Acorn interface, and it appears that the demonstration programs for
the Acorn one were translated from a Commodore version, I would guess
C64. Since the listing of the low-level driver is in the manual i have, I
think I could repeat the translation if I had listings of the C64 programs...
Of course quite how I read a C64 disk (or how you get the files to me) is
another matter...
it since he had both Fischertechnik stuff and a C64,
but I don't
think we ever had the robotics kit you mention. Using the interface
just to switch two or three motors on and off doesn't seem that
interesting, so perhaps he also thought of it more like a general
purpose interface.
The interface was designed for the robotics kit, but it can be used with
other stuff.
It has the following facilities :
2 Resistive-input ADCs. These were designed to link to 5k variable
resistors that are in the robotics kit, and AFAIK in no other kits.
8 contact-closure intputs. These are actually inputs to 5V CMOS chips,
pulled down by a resistor). There's a 5V power line on the model
connector. The robotics kit contains 8 of the mini-switches, but the
manual says (obviously) you can use any other switch, a relay contact, or
the output of one of the later FT modules that's TTL compatible.
4 Motor outputs. These are actually driven by TLE4201 chips. Each can
drive a motor (full size or minimotor), electromagnetc, etc _and_ a lamp.
The Robotics kit contains 2 minimotors + gearboxes, an electromagnet and
3 lamps. Normally, you connected a lamp in parallel with any motor or
electromagnet that was being used so you could tell it was energised.
I suspect, without trying it, you could link a load between each of the 8
motor output wires and the ground rail (-ve side of the external PSU). It
appears each of the outputs can be independantly swtiched betweenground
and the power rail (thus giving the ability to make a motor turn in
either direction if connected between 2 output wires. This is what the
manual tells you to do.
I've been looking at the circuitry in the interface. It links to the BBC
Micro User port, which is port B of a 6522 VIA, and uses the 8 data lines,
but neither of the handshake lines.
The ADCs are a bit of a kludge. They're built from 3 555 timers (well, 1.5
556s, which is the same thing). 2 sections are wired as monotstables with
the variable resistors in the model as the timing resistors. Each of
thsoe monostables is triggered by a seperate output line (bits 4 and 5)
or the user port. The outputs are ORed together, and fed to the reset (==
enable) pin of the last timer, wired as an astable. Thuse, when you
tigger one of the monostables, you get a pulse train at the output of the
astable, the number of pulses in the pulse train depends on the setting
of the variable resistor. This pulse train is fed back to pin 6 of the
user port, which can be used as the input of one of the counters in the
6522. Needless to say this counter is used to count the pulses, and thus
to indicate the setting of the variable resistor.
The switch inputs go to a 4014 shift register. 3 lines on the user port
provide the load, clock, and data signals for this circuit. The motors,
similarly use a 4094 shift register, with the last 2 bits of the user
port providing the data and latch signals for this chip (the clock is
common to the input and output ciecuits). The outputs of the 4094 go to
the TLE4201 motor drivers.
There is 20 pin header hidden inside the interface. Most of the pins are
not used, the ones that are are connected to the shift register clock,
input SR load, output SR latch, the serial input to the input SR and the
serial output of the motor SR. Thus it's possible to hang more shift
registers off here for more switches or motors. You'd have to re-write
the drivere to shift more bits in/out of the SRs before giving the latch
signal, etc.
-tony