Datasheet

PM 1000310 000 00 Geräte-Handbuch SIRAX BT5300 30/31
11. Schnittstellendefi nition Modbus RTU
SIRAX BT5300 unterstützt das Modbus RTU Protokoll (RS485).
Der erlaubte Adressenbereich liegt zwischen 1 und 247, die Adresse 0 ist nicht erlaubt.
Die maximale Latenzzeit, d.h. die Zeitspanne die vergeht bis der Slave antwortet, beträgt 200 ms. Wenn der Slave nicht innerhalb von 200 ms
antwortet, kann der Master die vorausgegangene Anfrage ignorieren und eine neue Anfrage an den Slave richten.
11.1 Modbus Funktionen
Folgende Funktionscodes werden unterstützt:
Funktionscode Funktion Adresse
03 Lesen der Halteregister 40001 bis 40040
04 Lesen der Eingangsregister 30071 bis 30072
16 Schreiben von Halteregistern 40001 bis 40040
Beispiel Messwertauslesung
Anfrage:
Geräteadresse Funktionscode Startadresse Anzahl Register CRC
0x01 0x04 0x0046 0x0002 0x901E
Antwort:
Geräteadresse Funktionscode Anzahl Datenbytes Datenbytes 0 … 3 CRC
0x01 0x04 0x04 0x42480148 0x6E4C
Beispiel Slave Adresse setzen
Anfrage:
Geräteadresse Funktionscode Startadresse Anzahl Register Anzahl Bytes Datenbytes 0...3 CRC
0x01 0x10 0x000E 0x0002 0x04 0x40000000 0x67E3
Antwort:
Geräteadresse Funktionscode Startadresse Anzahl Register CRC
0x01 0x10 0x000E 0x0002 0x200B
Der Slave beantwortet nur Modbus-Anfragen mit einer gültigen Parität und korrekter Checksumme. Auf Anfragen mit nicht unterstützten Funktionen,
nicht implementierten Datenadressen oder unzulässigen Datenwerten antwortet der Slave mit folgenden Ausnahmecodes (0x80 + Funktionscode):
01 Unzulässige Funktion Die Funktion wird vom Zähler nicht unterstützt.
02 Unzulässige Datenadresse Versuch auf eine ungültige Adresse zuzugreifen oder Versuch einen Teil
eines Gleitkommawertes zu lesen oder zu schreiben.
03 Unzulässiger Datenwert Versuch eine Gleitkommagröße auf einen ungültigen Wert einzustellen.
11.2 Datentypen
Alle Informationen werden als 32-Bit Float abgebildet. Modbus kennt keinen Datentypen zur Darstellung von Gleitpunktzahlen. Prinzipiell lassen
sich deshalb beliebige Datenstrukturen auf die 16 Bit-Register abbilden („casten“). IEEE 754 bietet sich als meist benutzter Standard zur Darstel-
lung von Gleitkommazahlen an.
Das erste Register beinhaltet die Bits 16 – 31
Das zweite Register beinhaltet die Bits 0 – 15
32-Bit Float (Real32)
31 30 23 22 0
Exponent Mantisse
Vorzeichen
0x4248 0x0148
01000010010010000000000101001000
+ Exponent: 132-127=5 Mantisse=1.01000010010010000000000101001000=1.56253910064697274718920
Messwert f = 1.56253910064697274718920 * 2
5
= 50.00125 Hz