Ansteuerung des Fischertechnikinterfaces
I. Einstellung des Interfaces
Baudrate |
9600 |
Bit |
8 |
Parity |
no |
Stopbits |
1 |
II. Kommunikation
Zur Ansteuerung des Interfaces sind grundsätzlich zwei Bytes an das serielle Interface zu schicken. Das erste Byte ist der Interfacebefehl (s.u.) und das zweite Byte enthält den Motorzustand. Der Motorzustand beschreibt, welche Motoren in welcher Richtung gestartet werden sollen. Je nach Interfacebefehl antwortet das Interface mit einem oder drei Bytes.
1. Byte Interfacebefehl
Binär |
hex |
dezimal |
Beschreibung |
11000001 |
C1 |
193 |
nur E/A-Zustand |
11000101 |
C5 |
197 |
E/A-Zustand und Analogwert EX |
11001001 |
C9 |
201 |
E/A-Zustand und Analogwert EY |
2. Byte: Motorzustand
Bit |
Beschreibung |
1 |
Motor 1 links |
2 |
Motor 1 rechts |
3 |
Motor 2 links |
4 |
Motor 2 rechts |
5 |
Motor 3 links |
6 |
Motor 3 rechts |
7 |
Motor 4 links |
8 |
Motor 4 rechts |
Es ist dabei möglich alle 4 Motoren gleichzeitig zu starten. Wird jedoch das linke und rechte Bit eines Motors gleichzeitig gesetzt, so läuft der Motor nicht an, bzw. die Lampe leuchtet nicht.
III. Antworten des Interfaces:
Befehl |
Antwortbytes |
Beschreibung |
193 |
ein Byte |
jedes Bit entspricht dem Wert des Eingangs |
197 |
drei Bytes |
1. Byte s.o. 2. und 3. Byte Analoginput EX |
201 |
drei Bytes |
1. Byte s.o. 2. und 3. Byte Analoginput EY |
Generell sollte die Programmierung in Schleifen erfolgen. Wenn das Interface nicht ca. alle 300 ms einen Steuerbefehl erhält, so schalten die Motoren sich selbständig aus.
Zu den folgenden Programmiersprachen können Sie sich Beispielprogramme herunterladen: