CAN-Kommunikation

Den Befehlssatz finden Sie unter Befehlssatz.

Adressen

Die Basisadresse ist werksseitig auf 0x100 gesetzt, sofern keine kundenspezifische Konfiguration vorliegt.

Die vom IOBoard benutzten Adressen werden von der Basisadresse berechnet, indem jeweils die folgenden Offsets addiert werden.

Offset zur Basisadresse Nachricht
+0 Empfangen von Befehlen
+1 Antwort auf CMD_IOBOARD_CONNECT
+2 Antwort auf CMD_IOBOARD_GETDIGIN
+3 Antwort auf CMD_IOBOARD_GETANALOGIN

Befehle

Im Folgenden werden die CAN IDs als Offset zur Basisadresse angegeben, d.h. +3 bedeutet Basisadresse plus 3.

CMD_IOBOARD_CONNECT

Mit diesem Kommando kann die Kommunikationsverbindung zum Board getestet werden.

Kommando

ID: +0

CMD_CONNECT 0 0 0 0 0 0 0
Antwort

ID: +1

CMD_CONNECT 1 2 3 4 5 6 7

CMD_IOBOARD_GETDIGIN

Mit diesem Kommando werden die Daten der 16 Digitaleingänge ausgelesen.

Kommando

ID: +0

CMD_IOBOARD_GETDIGIN 0 0 0 0 0 0 0
Antwort

ID: +2

CMD_IOBOARD_GETDIGIN Bits 8-15 Bits 0-7 0 0 0 0 0

Bachten Sie, dass die Werte der digitalen Eingänge aus elektrischen Gründen invertiert sind: Der Wert 1 zeigt an, dass an dem Eingang keine Spannung anliegt, der Wert 0 zeigt an, dass Spannung anliegt.

CMD_IOBOARD_SETDIGOUT

Mit diesem Kommando können die digitalen Ausgänge gesetzt werden:

Port D 8 x Optokoppler-Ausgang
Port G 4 x Optokoppler-Ausgang
Port B 4 x Relaisausgang
Kommando

ID: +0

CMD_IOBOARD_SETDIGOUT 0 Port D Port G (Bits 4-7), Port B (Bits 0-3) 0 0 0 0
Antwort
Keine Antwort.

CMD_IOBOARD_GETANALOGIN

Mit diesem Kommando werden die Daten der 4 Analogeingänge ausgelesen.

Kommando

ID: +0

CMD_IOBOARD_GETANALOGIN 0 0 0 0 0 0 0
Antwort

ID: +3

CMD_IOBOARD_GETANALOGIN low bits 1 low bits 2 low bits 3 low bits 4 high bits 0 0

Das high bits Byte enthält die zwei hochwertigen Bits für jeden Kanal, in aufsteigender Reihenfolge (Bits 0-1 für Kanal 1 und so weiter).

CMD_IOBOARD_GETALLDATA

Mit diesem Befehl werden sowohl die Digital- als auch die Analogeingänge ausgelesen. Er hat den gleichen Effekt, wie die Digital- und die Analogeingänge separat abzufragen.

Kommando

ID: +0

CMD_IOBOARD_GETALLDATA 0 0 0 0 0 0 0
Antwort
Die Antwort besteht aus zwei CAN-Nachrichten, die identisch sind zu den Antworten auf die Befehle CMD_IOBOARD_GETDIGIN und CMD_IOBOARD_GETANALOGIN.