Benutzer-Werkzeuge

Webseiten-Werkzeuge


hardware:hecos-can

HECoS//CAN


HECoS//CAN sind verschiedene Komponenten (Aktoren, Sensoren, Controller), die über einen CAN-Bus verbunden sind. Das HECoS//CAN Gateway koppelt diesen CAN-Bus dann über das lokale Ethernet-Netzwerk an HECoS//Engine.

Hardware


Die HECoS//CAN-Komponenten sind mit einem STM32F103xG ARM Controller ausgestattet. Die Firmware der HECoS//CAN-Komponenten kann über das HECoS//CAN Gateway aktualisiert werden ( STM32 In-Application Programming IAP). Jede HECoS//CAN-Komponente verfügt über eine Echtzeituhr und kann so autak zeitgesteuert Funktionen ausführen. Optional kann ein LCD-Display mit Touchscreen verbaut werden. Als Gehäuse kommt ein Unterputz-Gehäuse 213x117mm² bzw. Unterputz-Gehäuse 117x117mm² mit einer schwarzen, matten Plexiglas®-Frontblende zum Einsatz. Eine RGB-LED dient als Zustandsanzeige.

Der CAN-Bus ist auf jedem Teilnehmer mit PESD2CAN oder NUP2105L geschützt.

Common Mode Choke 51µH CC2824E513R-10

SMP100LC-25

Bottom-Board
Top-Board
Top-Board mit Display

Steckerbelegung


Pin Belegung Farbe TIA586B Farbe KNX-Leitung
1 CANH or/ws gelb
2 CANL or weiß
3 GND(CAN) gn/ws
4 bl
5 bl/ws
6 gn
7 GND bn/ws schwarz
8 +24 V bn rot

CAN-Protokoll


Für die Datenübertragung wird das Standard-CAN-Protokoll 2.0B (Extended Frame, 29-bit Objekt-Identifier) verwendet.

Object-Identifier

29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
MT DT ID DO CRC

MessageType (MT)

0x00 HECOS_CAN_MT_EMERGENCY Emergency
0x01 HECOS_CAN_MT_SYSTEM System Data
0x02 HECOS_CAN_MT_PROCESS Process Data
0x03* HECOS_CAN_MT_SYSTEM_REQUEST* Request System Data*
0x04* HECOS_CAN_MT_PROCESS_REQUEST* Request Process Data*
0x05 - -
0x06 - -
0x07 - -

* Falls es tatsächlich Probleme mit Remote Frames gibt.

DeviceType (DT)

0x00 HECOS_CAN_DT_ALL -
0x01 HECOS_CAN_DT_GATEWAY HECoS//CAN Gateway
0x02 HECOS_CAN_DT_8_LED_CONTROL HECoS//CAN 8-Port LED Control
0x03 HECOS_CAN_DT_8_POWER_SWITCH HECoS//CAN 8-Port Power Switch
0x04 HECOS_CAN_DT_DISTANCE_CONTROL HECoS//CAN Distance Control
0x05 HECOS_CAN_DT_8_DIGITAL_IO HECoS//CAN 8-Port Digital I/O
0x06 HECOS_CAN_DT_AMBIENT_SENSOR HECoS//CAN Ambient Sensor
0x07 HECOS_CAN_DT_GARAGE_DOOR_CONTROL HECoS//CAN Garage Door Control
0x08 HECOS_CAN_DT_WINDOW_CONTROL HECoS//CAN Window Control
0x09 HECOS_CAN_DT_2_LED_PROXIMITY HECoS//CAN LED/Proximity

DeviceID (ID)

Die DeviceID identifiert ein Device in Verbindung mit dem DeviceType eindeutig. Innerhalb einer CAN-Linie darf die Kombination aus DeviceType und DeviceID nur einmal vorkommen. Die DeviceID wird per Kodierschalter ERD116RMZ eingestellt.

DataObject (DO)

Das DatenObjekt definert, wie die Daten-Bytes zu interpretieren sind. Es ist bei dem jeweiligen DeviceType beschrieben.

Datensicherung (CRC)

Über die unverschlüsselten Daten wird ein CRC-8 gebildet und im CRC-Feld abgelegt. Damit ist der Empfänger nach der Entschlüsselung in der Lage zu überprüfen, ob das Passwort korrekt ist.

Sobald eine Nachricht mit einem falschen CRC empfangen wird, wird dies als Einbruchsversuch gewertet und entsprechend reagiert.

Datenübertragung


Immer wenn sich der Zustand einer HECoS//CAN-Komponente ändert, wird der neue Zustand gesendet. Zusätzlich besteht die Möglichkeit, daß Komponenten ihren Zustand zyklisch senden.

Zustand von HECoS//CAN-Komponenten abfragen

Um aktuelle System- oder Prozess-Daten einer HECoS//CAN-Komponente abzufragen wird ein entsprechender Remote-Frame gesendet.

Verschlüsselung

Der Datenanteil der CAN-Frames wird mittels XTEA verschlüsselt. Weil die Blockgröße des Ciphers XTEA 8 bytes groß ist, werden immer 8 Datenbytes übertragen. Nicht verwendetet Datenbytes werden mit Pseudo-Zufallszahlen aufgefüllt.

Das Passwort kann bei einer HECoS//CAN-Komponente mit Display interaktiv eingestellt werden. Bei einer HECoS//CAN-Komponente ohne Display wird das Passwort mit einer System-Nachricht (HECOS_CAN_DO_PW_SET) gesetzt. Diese System-Nachricht wird nur während der Inbetriebnahme akzeptiert und unverschlüsselt übertragen. Um zu überprüfen, ob das eingestellte Passwort das richtige ist, wird ein HECOS_CAN_DO_IDENT per Broadcast angefordert. Alle HECoS//CAN-Komponenten, die ein Passwort eingestellt haben, antworten daraufhin. Der Datenanteil wird nun entschlüsselt und überprüft ob das Wort 'HECOS' zu finden ist.

hardware/hecos-can.txt · Zuletzt geändert: 2017/05/28 18:39 von Frank Werner