Forum: Mikrocontroller und Digitale Elektronik Adressen in Modbus RTU


von Owen S. (senmeis)


Lesenswert?

Servus,

verwenden alle Modbus-Funktionen einen einzigen linearen Adressraum (0x0 
– 0xFFFF) oder verfügen diese jeweils über einen eigenen Adressraum (0x0 
– 0xFFFF)?

Ich stelle diese Frage wegen dieser Tabelle aus der Anleitung von Modbus 
Poll.

Device address  MODBUS address  Description  Function  R/W
1...10000*  address - 1  Coils (outputs)  0  Read/Write
10001...20000*  address - 10001  Discrete Inputs  01  Read
40001...50000*  address - 40001  Holding Registers  03  Read/Write
30001...40000*  address - 30001  Input Registers  04  Read

In Modbus Poll stehen zwei Adressen zur Verfügung: PLC Address und 
Protocol Address.

PLC Addresses command (Display menu):

Use this command to display addresses starting from 40001 if e.g. 
holding registers are displayed.
Base 1 is used for the address.

Protocol Addresses command (Display menu):

Use this command to display addresses as in the protocol request and 
response.
Base 0 is used for the address.
This is convenient when testing the protocol of a slave device as 
protocol addresses always starts from zero.

Kann mir jemand den Unterschied aufklären?

MfG
Senmeis

von Ulrich (Gast)


Lesenswert?

Hallo Owen,

der Unterschied zwischen "PLC-" und "Protocol-" Adresse liegt in der 
Struktur der Modicon Steuerungen begründet.
Will man zum Beispiel auf das erste Holding Register in einer Steuerung 
zugreifen wird im SPS Programm das Register mit 40001 eingegeben.
Im Modbus Protokoll Frame wird daraus ein:
 ... 03 (Read Holding Register) 00 (Start Adresse) xx (Anzahl der 
Register) ...

Normalerweise hat jeder Datentyp seinen eigenen Adressraum. Das ist 
jedoch keine Festlegung der Modbus Spezifikation.
Ein Geräte könnte durchaus den gleichen physikalischen Speicherbereich 
für 3000x Register (Read only) und 4000x Register (Read+Write) 
verwenden.
Ob das Sinn macht ist ein anderes Thema.

Gruß
Ulrich

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.