User Tools

Site Tools


modbus:modbus-de
no way to compare when less than two revisions

Differences

This shows you the differences between two versions of the page.


modbus:modbus-de [2022/09/01 00:11] (current) – created - external edit 127.0.0.1
Line 1: Line 1:
 +====== Modbus TCP/IP ======
 +[[:german#zentralen|{{  :interface.png}}]][[:german|{{  :rocrail-logo-35.png}}]]
 +[[:german|Inhalt]] -> [[:german#zentralen|Zentralen]] ->   **[[:german#protokolle|Protokolle]]**
 +  * **[[:modbus:modbus-de|Modbus TCP/IP]]** 
 +
 +{{http://www.modbus.org/images/logo_new.jpg}}\\
 + \\
 +=====Einführung=====
 +Die Siemens-LOGO!-Geräte unterstützen Modbus über TCP/IP. Diese Geräte sind hilfreich, wenn 230VAC im Rahmen der Modelleisenbahn geschaltet werden müssen.\\
 +{{:modbus:modbus-tcpip-struct.png?0x120}}{{:modbus:logo-example.png?0x120}}{{:modbus:logo-siemens.png}}{{:modbus:modbus-logo-addressing.png?0x160}}\\
 +Das Modbus-Protokoll ist sehr einfach und daher einfach zu implementieren.\\
 +Serielle Modbus-Geräte können über ein Gateway verbunden werden.\\
 +
 +//[[https://en.wikipedia.org/wiki/Modbus|Modbus hat sich zu einem Standard-Kommunikationsprotokoll entwickelt und ist heute ein allgemein verfügbares Mittel zum Verbinden von industriellen elektronischen Geräten. (en-Wikipedia)]]//
 +\\
 +//Im [[https://de.wikipedia.org/wiki/Modbus|de-Wikipedia]] ist Modbus nur sehr rudimentär beschrieben.//
 + \\
 +
 +=====Einstellung 'Allgemein'=====
 +{{:modbus:modbus-gen-de.png?360}}\\
 + \\
 +====Schnittstellenkennung====
 +Eindeutige Kennung der Zentrale.
 +====IP====
 +Das IP-Präfix. Wenn nicht gesetzt, wird die IP des Rocrail-Servers verwendet.\\
 +====Port====
 +Die registrierte Standard-Modbus-[[http://www.iana.org/assignments/port-numbers|Port-Nummer 502]] wird verwendet, falls Null eingestellt ist.\\
 +====Abfrage-Optionen====
 +===Eingänge===
 +Einzelne Eingänge.\\
 +===Register===
 +Analoge Register.\\
 +===Halte-Register===
 +Halte-Register.\\
 +===Ausgänge===
 +Coil-Ausgänge.\\
 +===Pause===
 +Pause in ms zwischen den Abfragen.\\
 + \\
 +=====Einstellung 'Geräte'=====
 +{{:modbus:modbus-dev-de.png?360}}\\
 +Ein Gerät muss hinzugefügt werden, wenn Abfragen das Spezifizieren von Typ und Bereich erfordern.\\
 +====Sub-IP====
 +Der letzte Teil der IP-Adresse des Gerätes.\\
 +====Geräte-ID====
 +Geräte-ID, verbunden mit dem Slave.\\
 +Bereich in Rocrail ist 0...15.\\
 +====Eingangs-/Ausgangs-Bereich====
 +Beide Bereiche sind automatisch auf Vielfache von 8 eingestellt.\\
 +====Bereiche====
 +Wenn ein Bereich von Null bis Null eingestellt ist, ist die Abfrage für diesen Typ deaktiviert.\\
 + \\
 +=====Adressierung=====
 +Die Adressierung basiert auf der IP-Adresse des Rocrail-Servers.\\
 +Wenn der Server die IP-Adresse **192.168.0.120** hat, ist das Basis-IP-Präfix **192.168.0**. \\
 +Das Rocrail-Objekt Bus/Node-ID wird als IP-Suffix (Sub-IP) verwendet. Wenn zum Beispiel ein Ausgangsbus **44** ist, lautet die IP-Adresse **192.168.0.44**.\\
 +Slaves werden durch Objekt-Port-Nummer adressiert.
 + \\
 +====Rückmelder====
 +|< >|
 +^ Modbus ^ Rocrail ^
 +| SubIP | NodeID |
 +| Module | High part of address |
 +| Address | Low part of address |
 +
 +Rocrail-Rückmelder-Adresse = Modul * 256 + Adresse\\
 +
 +====Block-Schnittstelle====
 +Der Gleistreiber ist wie folgt adressiert:
 +|< >|
 +^ Modbus ^ Rocrail ^
 +| SubIP | NodeID |
 +| Modul | Port |
 +| Register-Adresse | Adresse |
 +Der 16bit-Register-Werte-Bewreich ist 0...1000.\\
 +Die Richtung wird durch Bit 15 definiert.\\
 +
 +
 + \\
 +
 +=====Ausgänge=====
 +Ein Ausgang ist eine Lese- / Schreibausgabe - im Modbus-Kontext "Coil" (Spule) - und wird einem Rocrail-Ausgangs-/Weichen-Objekt zugeordnet. \\
 +Der Ausgangsbus ist die Sub-IP und die Adresse ist die Ausgangs-/Coil-Adresse. \\
 + \\
 +
 +===== Abfragen =====
 +Modbus-Eingänge müssen wegen der Master / Slave-Architektur abgefragt werden. (Ursprünglich RS485. Auch neue Projekte basieren auf RS485 wie BiDiB, wo der GBMBoost-Master die Abfrage durchführt.)
 +Wenn ein Rocrail-Rückmelder für diese Schnittstellen-Kennung definiert ist, wird der Bereich der Acht-Bit-Module, 8, für diesen IP-Suffix in einem festen Intervall angefordert. \\
 +Um das Polling zu aktivieren, muss das digint-Attribut 'fbpoll' auf 'true' gesetzt sein. Das psleep-Attribut wird für das Abfrageintervall in ms verwendet. \\
 +
 +===Diskrete Eingänge===
 +Eingangs-Register werden als **[[:sensor-int-de#typ|Standard-Typ 'Sensor']]** gemeldet.
 + \\
 +===Ausgänge===
 +Ausgänge/Coils werden als Ausgangs-Feld-Ereignisse gemeldet.
 + \\
 +===Register-Eingänge===
 +Eingangs-Register werden als **[[:sensor-int-de#typ|Rückmelde-Typ 'Register']]** gemeldet.
 + \\
 +===Halte-Register===
 +Halte-Register werden als **[[:sensor-int-de#typ|Rückmelde-Typ 'Register']]** gemeldet.
 + \\
 +=====Dienst=====
 +Wenn der Port > 1024 gesetzt ist, wird ein Modbus-Dienst gestartet; Rocrail akzeptiert Modbus-Anfragen auf diesem Port.\\
 +Unterstützte Anfragen:
 +  - **Write Single Coil** (Schreibe Einzel-Ausgang), dies wird als ein Ausgangs-Feldereignis ausgewertet.
 +Für alle anderen Anfragen wird ein 'exception response' (Ausnahme-Antwort) zurückgesendet.\\
 +
 + \\
 +=====PLC-Adress-Typen=====
 +^ Mnemonic ^ Typ ^ Größe ^ Modbus ^ Rocrail ^
 +|  I  | Digital Input | Bit | Einzel-Eingang | Rückmelder |
 +|  Q  | Digital Output | bit | Coil | Ausgang/Weiche |
 +|  M  | Memory | Bit | Coil | Rückmelder lesen, Ausgang schreiben |
 +|  AI  | Analog Input | Wort | Register | Rückmelder Register-Typ |
 +|  AQ  | Analog Output | Wort | Register | Ausgang Analog-Port-Typ |
 +|  AM  | Memory | Wort | Halte-Register | Rückmelder Register-Typ |
 +
 +
 + \\
 +
 +=====Öffentliche Funktionen=====
 +{{:modbus:modbus-functions-en.png}}\\
 + \\
 +=====Links=====
 +{{ :modbus:modbus-sim.png?0x200}}
 +  * http://www.modbus.org/ (en)
 +  * http://www.modbus.org/docs/Modbus_Application_Protocol_V1_1b3.pdf (en)
 +  * http://www.modbus.org/docs/Modbus_Messaging_Implementation_Guide_V1_0b.pdf (en)
 +  * http://www.plcsimulator.org/ (en)
  
modbus/modbus-de.txt · Last modified: 2022/09/01 00:11 by 127.0.0.1