Anhang, Anhang a. modbus-angaben, A.1 modbus-spezifikationen und meldungsformate – Banner EZ-ARRAY USB Serial Adapter Benutzerhandbuch

Seite 41

Advertising
background image

Ident-Nr. 140060 Rev. A

39

Banner Engineering Corp.

Minneapolis, U.S.A.

www.bannerengineering.com • Tel: 763.544.3164

Handbuch für A-GAGE EZ-ARRAY

Anhang

A.1 Modbus-Spezifikationen und Meldungsformate

Die neuesten Angaben zu Modbus-Protokoll und Spezifikationen
finden Sie unter

http://www.modbus.org

EZ-ARRAY ist mit Modbus v1.1a konform. EZ-ARRAY verwendet
den RTU-Übertragungsmodus. Der RTU-Meldungsrahmen wird
unten dargestellt.

Tabelle A–1. RTU-Meldungsrahmen

Slave-

Adresse

Funkti-

onscode

Daten

Zyklische

Blockprüfung

(CRC)

1 Byte

1 Byte

0 bis 252
Bytes(s) (oberes
Byte, unteres
Byte)

2 Bytes (CRC tief,
CRC hoch)

Der Slave-Adresse kann ein Wert im Bereich von 1-247 zuge-
wiesen werden. Es werden drei Funktionscodes unterstützt:
(0x03) Lesen von Halteregistern
(0x04) Lesen von Eingangsregistern
(0x10) Schreiben mehrerer Halteregister

Die Daten in den Registern werden in Big-Endian-Reihenfolge
übertragen (OBERES Byte, UNTERES Byte).

A.1.1 Lesen von Halteregistern (0x03)

Dieser Funktionscode wird verwendet, um den Inhalt eines
zusammenhängenden Blocks von EZ-ARRAY-Halteregistern
zu lesen. Der Befehl gibt die Startadresse und die Anzahl der
Register an. EZ-ARRAY setzt ein Direktadressierungsschema
ein. Zum Beispiel wird auf das Halteregister bei Adresse 40001
zugegriffen, indem Adresse 40001 (0x9C41) direkt gelesen wird
(d. h. die Startadresse ist kein Versatz). Die Registerdaten in der
Antwortmeldung werden als zwei Bytes pro Register verpackt.
Für jedes Register werden die Daten in Big-Endian-Reihenfolge
zurückgesendet (OBERES Byte, UNTERES Byte).

Anforderung

Funktionscode

1 Byte

0x03

Startadresse

2 Bytes

0x0000 to 0xFFFF

Anzahl Haltere-
gister

2 Bytes

0x0001 to 0x007D

Antwort

Funktionscode

1 Byte

0x03

Bytezahl

1 Byte

2 X N*

Halteregister

N X 2 Bytes

* “N” ist die Anzahl der Halteregister

Fehler

Fehlercode

1 Byte

0x83

Ausnahmecode

1 Byte

1 bis 4

Beispiel A–1. Lesen von Halteregistern

Anforderung

Antwort

Feldbezeichnung

(Hex) Feldbezeichnung (Hex)

Slave-Adresse

41

Slave-Adresse

41

Funktion

03

Funktion

03

Startadresse (OBERES
Byte)

9C

Bytezahl

06

Startadresse (UNTERES
Byte)

41

Register 40001
(OBERES Byte)

02

Anzahl Register (OBE-
RES Byte)

00

Register 40001
(UNTERES Byte)

2B

Anzahl Register (UNTE-
RES Byte)

03

Register 40002
(OBERES Byte)

00

CRC (UNTERES Byte)

75

Register 40002
(UNTERES Byte)

00

CRC (OBERES Byte)

4F

Register 40003
(OBERES Byte)

00

Register 40003
(UNTERES Byte)

64

CRC (UNTERES
Byte)

34

CRC (OBERES
Byte)

B9

Die Inhalte der Adressen 40001, 40002 und 40003 sind die
Zweibyte-Werte 0x022B (dezimal 555), 0x0000 (dezimal 0) und
0x0064 (dezimal 100).

A.1.2 Lesen von Eingangsregistern (0x04)

Dieser Funktionscode wird verwendet, um 1 bis 125 zusammen-
hängende EZ-ARRAY-Eingangsregister zu lesen. Der Befehl gibt
die Startadresse und die Anzahl der Register an. EZ-ARRAY
setzt ein Direktadressierungsschema ein. Zum Beispiel wird
auf das Eingangsregister bei Adresse 30001 zugegriffen, indem
Adresse 30001 (0x7531) direkt gelesen wird (d. h. die Startad-
resse ist kein Versatz). Die Registerdaten in der Antwortmeldung
werden als zwei Bytes pro Register verpackt. Für jedes Register
werden die Daten in Big-Endian-Reihenfolge zurückgesendet
(OBERES Byte, UNTERES Byte).

Anhang A. Modbus-Angaben

Advertising
Dieses Handbuch ist für die folgenden Produkte bezogen werden: