Instructions

Table Of Contents
Kommunikationsprozessor und Modbus-TCP
13.5 Modbus-Kommunikation
S7-1200 Automatisierungssystem
Systemhandbuch, V4.2.3, 08/2018, A5E02486681-AL
1271
Für die Festlegung der Datenbereiche gelten folgende Regeln:
Sie können bis zu acht Datenbereiche in verschiedenen DBs festlegen, wobei jeder DB
nur einen Datenbereich enthalten darf. Eine einzelne MODBUS-Anforderung kann nur
aus genau einem Datenbereich lesen oder in genau einen Datenbereich schreiben. Jeder
Datenbereich entspricht einem MODBUS-Adressbereich. Die Datenbereiche legen Sie in
der statischen Variablen "Data_Area_Array" des Instanz-DB fest.
Sollen weniger als acht Datenbereiche verwendet werden, müssen die benötigten
Datenbereiche lückenlos nacheinander angeordnet werden. Beim ersten leeren Eintrag in
den Datenbereichen wird die Datenbereichssuche bei der Verarbeitung abgebrochen.
Werden zum Beispiel die Feldelemente 1, 2, 4 und 5 als Datenbereiche festgelegt,
erkennt "Data_Area_Array" nur die Feldelemente 1 und 2, da Feldelement 3 leer ist.
Feld Data_Area_Array besteht aus acht Elementen: Data_Area_Array[1] bis
Data_Area_Array[8]
Jedes Feldelement Data_Area_Array[x], 1 <= x <= 8 ist ein UDT des Typs MB_DataArea
und wie folgt strukturiert:
Parameter
Datentyp
Bedeutung
data_ type UInt Kennung für den MODBUS-Datentyp, der auf diesen Datenbereich
abgebildet ist:
0: Kennung für ein leeres Feldelement oder einen unbenutzten
Datenbereich. Die Werte für db, start und length sind dann ohne
Bedeutung.
1: Prozessabbildausgang (in Verbindung mit Funktionscodes 1, 5
und 15)
2: Prozessabbildeingang (in Verbindung mit Funktionscode 2)
3: Halteregister (in Verbindung mit Funktionscodes 3, 6 und 16)
4: Eingangsregister (in Verbindung mit Funktionscode 4)
Hinweis: Wenn Sie einen Datenbereich für einen MODBUS Datentyp
festgelegt haben, kann die Anweisung Modbus-Slave nicht mehr di-
rekt auf diesen MODBUS Datentyp zugreifen. Wenn die Adresse einer
MODBUS-Anforderung für einen solchen Datentyp nicht einem festge-
legten Datenbereich entspricht, wird ein Wert W#16#8383 in STATUS
zurückgegeben.
db UInt Nummer des Datenbausteins, auf dem das MODBUS-Register oder
die anschließend festgelegten Bits abgebildet sind
Die DB-Nummer muss in den Datenbereichen einmalig vorhanden
sein. Die DB-Nummer darf nicht in mehreren Datenbereichen vorhan-
den sein.
Auf der Eigenschaftenseite "Attribute" der globalen DB müssen die
Kontrollkästchen "Nur in Ladespeicher ablegen" und "Optimierter
Bausteinzugriff" abgewählt werden.
Die Datenbereiche beginnen auch mit der Byte-Adresse 0 des DB.
Zulässige Werte: 1 bis 60999