Herunterladen Inhalt Inhalt Diese Seite drucken

Funktionskodes; Ieee Gleitkommaformat - Crompton Instruments Integra 1630 Handbuch

Multifunktionsmessgerät
Inhaltsverzeichnis

Werbung

mit einem vorgegebenen festen XOR Wert beaufschlagt. Falls LSB den Wert „0" aufweist, wird keine XOR
Beaufschlagung vorgenommen.
Dieser Vorgang wird solange wiederholt, bis 8 Verschiebungen durchgeführt wurden. Nach der letzten
Verschiebung wird das nächste 8 Bit Nachrichtenbyte mit XOR in der unteren Hälfte des 16 Bit Registers
beaufschlagt und der Vorgang wiederholt sich. Der endgültige Wert des Registers, nachdem alle Byte der
Nachricht beaufschlagt wurden, ergibt die Fehlerprüfsumme. Im folgenden Pseudo-Kode stellt „ErrorWord
(Fehlerwort)" einen 16 Bit Fehlerprüfwert dar.
BEGIN
ErrorWord = Hex (FFFF)
FOR Each byte in message
NEXT Byte in message
END
3.6

Funktionskodes

Der Teil des Funktionskodes einer Modbus Nachricht definiert die auszuführende Aktion des „Slave". Integra –
Messinstrumente unterstützen die folgenden Funktionskodes.
Code / Kode
MODBUS Name
03
Read Holding Registers /
Lesen der Halteregister
04
Read Input Registers / Lese
Eingaberegister
08
Diagnostics / Diagnose
16
Pre-set Multiple Registers /
Voreinstellung mehrerer
Register
3.7

IEEE Gleitkommaformat

Das Modbus Protokoll definiert 16 Bit „Register für die Datenvariablen. Allerdings würde sich ein 16 Bit
Ausdruck als zu eingeschränkt z.B. für Energieparameter erweisen, da der maximale Wert eines 16 Bit
Ausdrucks 65535 beträgt. Es wurden daher verschiedene Zugriffe realisiert um die Einschränkung zu
umgehen. Integra Geräte nutzen 2 aufeinander folgende Register um einen Gleitkommaausdruck wieder zu
geben; dies erweitert den Bereich faktisch auf +/- 1x10
Die vom Integra erzeugten Werte müssen nicht skaliert und können direkt genutzt werden. Die Einheit für die
Spannungsparameter (Volts) ist Volt, die Einheit für die Wirkleistungsparameter ist Watt, etc.
Was ist ein Gleitkommawert?
Ein Gleitkommawert besteht aus 2 Teilen, einer Mantiße und einem Exponenten, der als 1.234x10
wird. Bei der Mantisse (hier 1.234) muss der Dezimalpunkt nach rechts verschoben werden, wobei die Anzahl
der Stellen durch den Exponenten wiedergegeben wird (hier 5 Stellen) 1.234x 10
Exponent negativ ist, wird der Dezimalpunkt nach links verschoben.
Was ist ein IEEE 754 Gleitkommawert?
Ein IEEE 754 Gleitkommawert ist das binäre Eqivalent des oben gezeigten dezimalen Gleitkommawertes. Der
maßgeblichste Unterschied ergibt sich dadurch, dass das signifikanteste Bit der Mantisse immer den Wert 1
annimmt, und daher im Wert nicht wiedergegeben werden muss. Der Prozess, mit dem das signifikanteste Bit
der Mantisse auf 1 gesetzt wird, wird mit Normalisierung bezeichnet. Die Mantisse wird daher als „normale
Mantisse" angegeben. Während der Normalisierung der Bit in der Mantisse werden diese nach links
verschoben, während der Exponent solange reduziert wird, bis das signifikanteste Bit der Mantisse „1"
ErrorWord = ErrorWord XOR byte in message
FOR Each bit in byte
LSB = ErrorWord AND Hex (0001)
IF LSB = 1 THEN ErrorWord = ErrorWord – 1
ErrorWord = ErrorWord / 2
IF LSB = 1 THEN ErrorWord = ErrorWord XOR Hex (A001)
NEXT bit in byte
Description / Beschreibung
Read the contents of read/write location
(4X references) / Liest den Inhalt von Lese/Schreib Punkten (4X
Referenzen)
Read the contents of read only location
(3X references) / Liest den Inhalt der nur Lesen Punkte
Only sub-function zero is supported. This returns the data
element of the query unchanged / nur die Unterfunktion „null" wird
unterstützt. Das Datenformat der Anfrage wird unverändert
zurückgemeldet
Set the contents of read/write location
(4X references) / Stellt den Inhalt von Schreib / Lese Punkten ein
(4X Referenzen)
37
.
18
5
dargestellt
5
= 123400. Falls der

Werbung

Inhaltsverzeichnis
loading

Inhaltsverzeichnis