Nikolaus Heusler Archiv

Erschienen in 64'er Magazin, Ausgabe 12/1993 · Originaldatei: FISCHERT.TXT

Hinweis: Dies ist das an die Redaktion eingereichte Manuskript, nicht der gedruckte Endtext. Layout, Bildunterschriften, Korrekturen und Kürzungen der Redaktion können in der veröffentlichten Fassung abweichen.

Objekt64'er Magazin
Ausgabe12/93 ?
RubrikHardware/Test
RedakteurHans-Jürgen jh
AutorNicki Heusler XXX/XXXXXX
Datum09.10.1993
InhaltTestbericht Fischertechnik Interface

Das Tor zur Außenwelt

Will man mit einem Computer Zusatzgeräte fernsteuern, kommt man um einen Adapter nicht herum. Wir haben das Computing-Interface von Fischertechnik für den C 64 getestet.

von Nikolaus Heusler

Haben Sie schon einmal versucht, Ihre Waschmaschine vom C 64 steuern zu lassen? Möchten Sie die Verantwortung über die Disco-Musikanlage Ihrem Computer übertragen? Soll er die Teperatur im Aquarium überwachen? All das kann ein C 64 ohne weiteres. Das Problem dabei ist nur, daß Sie weder das Aquarium, noch die Lichtanlage und schon gar nicht die Waschmaschine direkt an den Computer anschließen können. Es muß ein Zusatzgerät her, welches die schwachen Signale des Rechners so verstärkt, daß man damit zum Beispiel einen Motor betreiben kann. Außerdem müssen die Werte, die der Sensor im Aquarium liefert, in ein für den C 64 brauchbares Format aufbereitet werden. Diese Aufgaben erledigt ein Interface. Das Interface 30562 aus der »Computing«-Serie von Fischertechnik, ursprünglich konzipiert zur Ansteuerung eines Fischertechnik-Roboters, kann mit wenigen Grundkenntnissen auch universeller eingesetzt werden. Unser Testbericht durchleuchtet Aufbau, Features und Einsatzmöglichkeiten.
Das Interface ist ein Kästchen, etwa doppelt so groß wie eine Zigarettenschachtel. Wie bei Fischertechnik üblich wurde die Elektronik in ein (teures) durchsichtiges Plexiglas-Gehäuse verpackt. Über ein langes Flachbandkabel wird das Interface an den Userport des C 64/C 128 angeschlossen.

Das kann das Interface

Das Prinzipschaltbild (Bild) vermittelt bereits ungefähr, welche Fähigkeiten dieses Interface hat. Es können bis zu vier Elektromotoren bidirektional angesteuert werden (die vier Ausgangspaare können auf Befehl in ihrer Polarität vertauscht werden, der Gleichstrommotor läuft dann in die andere Richtung). Weiter sind zwei Analogeingänge vorhanden, der Anwender kann programmgesteuert den Widerstand (Bereich etwa 0 bis 5 kΩ) an diesen Leitungen abfragen. Spannungsmessungen sind nicht unmittelbar vorgesehen. Intern sind beide Analogeingänge mit je einem A/D-Wandler ausgestattet, der nach dem »Dual-Slope-Prinzip« arbeitet. Ein billiges, ausreichend genaues Verfahren, das auch in den Wandlern des Soundchip SID im C 64 Anwendung findet. Doch zurück zum Interface. Acht digitale Eingangsleitungen lassen sich beispielsweise mit Schaltern oder Tastern beschalten, über etwas Zusatzhardware können hier auch Sensoren angeschlossen werden, die dann eine Ja/Nein-Enscheidung herbeiführen (Temperatur, Helligkeit, Feuchtigkeit). Dazu müssen Sie mit einem Schwellwertschalter das analoge Signal, das der Sensor liefert, in ein digitales Signalumwandeln. Ein solcher Umsetzer wird »Schmitt-Trigger« genannt.
Ein Nachteil: Das Interface benötigt eine externe Spannungsversorgung von unstabilisierten 5 Volt Gleichspannung. Kostenpunkt hierfür: etwa zehn Mark, falls man nicht auf das erheblich teurere vom Hersteller vorgeschlagene Fischertechnik-Netzteil ausweicht. Dafür wird jedoch auch das Netzteil des C 64 nicht belastet. Je nach Leisung des externen Netzgerätes lassen sich möglicherweise nicht vier Motoren gleichzeitig betreiben, in diesem Fall können auch zwei externe Netzgeräte parallel geschaltet werden. Das Interface bietet dafür zwei getrennte Eingangspaare.

Befehle zur Steuerung

Mit dem Interface wird eine 5 1/4 Zoll-Diskette geliefert, auf der sich unter anderem für den C 64, C 128 und VC 20 Steuerungs-Software in Form einer Pseudo-Befehlserweiterung in Maschinensprache befindet. Der Hersteller weist ausdrücklich darauf hin, daß keine Zusammenarbeit mit dem C 16/116 möglich ist. Reine Basic-Kenntnisse genügen, um dem Interface Befehle zu geben oder Eingänge abzufragen. Um den dritten Motor links drehend einzuschalten und dann so lange laufen zu lassen, bis der siebte Taster betätigt wurde, kommt folgendes Programm zum Einsatz:

500 SYS M3,EIN
510 SYS M3,LINKS
520 A=USR(E7)
530 IF A=0 THEN 510
540 SYS M3,AUS
550 END

Die Variablen M3, EIN und so weiter werden zusammen mit dem eigentlichen Maschinenprogramm von einem Basic-Lader initialisiert. In Zeile 530 wird in der Schleife nicht nach 520, sondern nach 510 gesprungen. Der Motor wird damit scheinbar überflüssigerweise jedes Mal neu gestartet. Das ist notwendig, da das Interface aus Sicherheitsgründen alle Motoren abschaltet, falls es länger als eine halbe Sekunde keine Befehle vom Computer erhält. Das ist praktisch, falls das selbstgeschriebene Programm mit einer Fehlermeldung aussteigt. So kann es nicht vorkommen, daß ein noch laufender Motor das Modell demoliert. Und wenn es dann beispielsweise mit CONT im Programm weitergeht, so wird mit dem ersten Befehl das Interface wieder »aufgeweckt« und hat keinen Motor vergessen. Diese Schutzabschaltung hat natürlich den kleinen Nachteil, daß man in Programmen, die länger als 0,5 Sekunden nicht auf das Interface zugreifen (Beispiel Dateizugriff oder Tastatureingabe), die Motoren ständig »auffrischen« muß. Überhaupt wurde großer Wert auf Sicherheit gelegt: Die Stromversorgung ist gegen Verpolung und Überspannung geschützt, das Plexiglas-Gehäuse sehr stabil, die Platine macht einen professionellen, sauberen und stabilen Eindruck. Beim Anschlußkabel für den C 64 wurde auch eine primitive Zugentlastung nicht vergessen, der Userportstecker ist mechanisch gegen Verpolung geschützt. Im Interface verrichten als aktive Bauelemente nur CMOS ICs der 40xx Reihe ihren Dienst, die bekanntlich sehr empfindlich gegen statische Aufladung beispielsweise beim Berühren von Anschlußkontakten sind. Eigentlich schade für ein Interface. Allerdings weist die Anleitung ausdrücklich auf diese Gefahr hin. Außerdem sind CMOS-ICs sparsam in der Stromaufnahme. Interessanterweise ist im Interface nur ein IC gesockelt: Das, welches direkt mit der Außenwelt in Verbindung steht. Man hat wohl schon bei der Entwicklung fest mit gelegentlichen Ausfällen gerechnet.
Was beim praktischen Einsatz für Fischertechnik-fremde Projekte wirklich stört, ist die eigenartige Anschlußleiste für die steuernden und gesteuerten Geräte (Bild). Von Fischertechnik ist zwar ein Adapterkabel erhältlich, wesentlich preiswerter ist jedoch ein Selbstbau. Dazu wird eine passende 20 polige Buchse benötigt. Unser Vorschlag: Conrad Elektronik, Hirschau, Best. Nr. 742309-66 (DIN 41651), DM 1,65. Die Anschlußbelegung dieser Steckverbindung sucht man im Handbuch vergeblich:

Pin 1 - Digitaleingang 1
Pin 2 - Digitaleingang 2
Pin 3 - Analogeingang 1
Pin 4 - Analogeingang 2
Pin 5 - plus 5 Volt
Pin 6 - Digitaleingang 3
Pin 7 - Digitaleingang 4
Pin 8 - Digitaleingang 5
Pin 9 - Digitaleingang 6
Pin 10 - Digitaleingang 7
Pin 11 - Digitaleingang 8
Pin 12 - plus 5 Volt
Pin 13 - Motor 1 plus
Pin 14 - Motor 1 minus
Pin 15 - Motor 2 plus
Pin 16 - Motor 2 minus
Pin 17 - Motor 3 plus
Pin 18 - Motor 3 minus
Pin 19 - Motor 4 plus
Pin 20 - Motor 4 minus

Die Digtaleinänge sollen über einen Schaltkontakt mit plus 5 Volt verbunden werden, zwischen den Analogeingängen und plus 5 Volt wird der Widerstand in dem Bereich wie oben angegeben gemessen. Zur Abfrage im Programm dient die USR-Funktion. Leider ist sich die Anleitung selbst nicht so ganz sicher, ob das Analogsignal nun in 256 oder in 65536 Stufen aufgeteilt wird. Bis zu vier Motoren oder andere Verbraucher werden direkt an die Ausgänge angeschlossen.
Dem Gerät liegt ein 12 seitiges Heftchen bei, das in teilweise etwas holprigem Deutsch nicht so sehr die interne Funktionsweise des Interfaces, sondern vielmehr die Anwendungsmöglichkeiten und die Bedienung erklärt. Mit Hilfe eines ebenfalls mitgelieferten Basic-Diagnoseprogramms wird bei Fehlern die Hardware getestet.

Darf's ein bißchen mehr sein?

Und was kann man alles daran anschließen? Verständlicherweise beschränken sich die Hinweise in der Bedienungsanleitung auf die Produkte von Fischertechnik, insbesondere Taster, Glühlampen, Potentiometer (regelbare Widerstände) und Mini-Motoren. Dazu ein praktisches Beispiel: Sie könnten an einen der vier Leistungs-Ausgänge direkt einen Fischertechnik-Motor anschließen, der einen Roboterarm bewegt. Wenn Sie den Arm mechanisch fest mit einem Potentiometer koppeln, und dieses wiederum an einen Analogeingang anschließen, können Sie noch während der Motor in Bewegung ist ständig die aktuelle Position des Roboterarms testen. Diese professionelle Methode wird »Servo« genannt. Wer ganz sicher gehen will, versieht den Arm noch mit zwei Tastern, die jeweils am Ende des Bewegungsbereiches (Vollausschlag) einen Impuls auslösen und somit per Programm den Motor abschalten. Der auf dem Gebiet der Hardware zumindest einigermaßen versierte Anwender hat aber noch bedeutend weitergehende Möglichkeiten, was die Anwendung betrifft. Schließt man beispielsweise statt eines Potentiometers einen Heißleiter (NTC) an einen Analogeingang an, und taucht den Sensor dann in das Aquarium, kann damit die Wassertemperatur gemessen werden. An die Ausgänge lassen sich ja nicht nur Motoren anschließen, sondern auch beispielsweise ein Relais, das eine Steckdose steuert. Wird damit dann die Frischwasser-Pumpe oder eine Umrühr-Einrichtung geschaltet, verfügen Sie über ein vollautomatisches Aquarien-Steuersystem. (Bedauerlicherweise verfügt der Verfasser dieses Artikels nur über mangelhafte Kenntnisse in der Fisch-Haltung). Zwei Analogeingänge sind vorhanden, mithin lassen sich auch zwei Aquarien gleichzeitig steuern. Über die beiden übrigen Ausgänge könnte man die Aquarien Uhrzeit-gesteuert beleuchten oder mit speziellen Infrarot-Lampen ein Terrarium beheizen. Was noch fehlt, ist ein passendes Programm, das Sie für Ihren Computer selbst schreiben können. Angst vor Hoch- bzw. Netzspannung sollten Sie allerdings nicht haben.
Über ein Relais kann nicht nur eine Pumpe gesteurt werden, es lassen sich auch alle anderen Stromverbraucher schalten: Lampen, Gebläse, Lüfter, die Heizung, Haushaltsgeräte oder die oben schon erwähnten Anwendungen Disco-Lichtanlage oder Waschmaschine. Mit Hilfe der Software-Uhr im C 64 könnte zu einem bestimmten Zeitpunkt ein Radio eingeschaltet werden: Der C 64 als Wecker! Als Ausgangstreiber im Interface sind zwar selbst keine Relais enthalten, aber Leistungstransistoren vom Typ BD 135/136, die durchaus starke Ströme treiben können.
Mit vier Ausgängen kann auch der Modellbahn-Fan schon einiges anfangen. Über einen Kanal steuern Sie zum Beispiel den Fahrstrom, die drei verbleibenden Kanäle könnten auf Signale oder Weichen aufgeteilt werden. Eingänge zur Abfrage von Schienenkontakten (Reed-Kontakte oder Lichtschranken) sind ja genügend vorhanden.
Ein Projekt, das freilich schon etwas tiefergehende Hardware-Kenntnisse erfordert, wäre, an die Ausgänge die Mechanik eines Cassetten- oder gar Videorekorders anzuschließen. Vom der selbstgebauten Datasette bis zum Anrufbeantworter »Marke Eigenbau« ist alles denkbar.
Was die mitgelieferte Software betrifft, lassen sich hier und da vielleicht noch Mängel finden. Man kann aber sehr gut damit arbeiten. Wer Kenntnisse in Maschinensprache hat, wird sich auch nicht schwertun, das Programm zu analysieren und zu verbessern, oder sich vollkommen neue Routinen zu schreiben.
Bei dem Interface handelt es sich insgesamt also durchaus um ein für den Hardware-Amateur empfehlenswertes Produkt, das bis auf einige kleinere Schwächen im Detail ausgereift ist. Eigenen Projekten steht jetzt nichts mehr im Wege - Ihrer Kreativität sind keine Grenzen gesetzt. Wenn Ihnen originelle Anwendungsmöglichkeiten für das Fischertechnik-Interface eingefallen sind, schreiben Sie uns doch!
(jh)

Bild 1. Prinzipschaltbild des Interfaces
Bild 2. Das Fischertechnik-Interface ist in ein stabiles Plexiglas-Gehäuse eingebaut