NEUE LINEMETRICS WEBSEITE ONLINE! www.linemetrics.com

Bereich LineMetrics Box

Übersicht > LineMetrics Box > Schnittstellen > Modbus > Aufbau und Funktion von Modbusgeräten

Aufbau und Funktion von Modbusgeräten

Letzte Änderung am 07.02.2017

Das elektrische Interface des Modbus RS485 ist 2-drahtig und hat ein 2 Schrauben-Terminal. Die Verbindung sollte unter Verwendung eines gepaart-gedrehten Kabel mit 22 Gauge (Beldon 8761 oder gleichwertigem) hergestellt werden (Gauge = Maßeinheit für Drahtkanüle). Das verwendete Kabel soll dabei mit einer metallischen Folie abgeschirmt sein. Diese Art der Vernetzung benötigt möglicherweise einen Abschlusswiderstand. Dies ist abhängig vom Typ und der Länge der Kabel, die verwendet werden. Eine Schleifenarchitektur benötigt jedoch keinen Abschlusswiderstand. Der Scheinwiderstand des Abschlusswiderstandes muss mit dem Scheinwiderstand des Kabels übereinstimmen und sollte an beiden Enden eingesetzt werden. Das Kabel sollte an beiden Enden mit 120 Ohm geschalten sein. Für das RS485 Netzwerk ist nur eine maximale Kabellänge von 1200 Metern erlaubt. Es können höchstens 32 Knotenpunkte erstellt werden, inklusive des Kontrollers.

Das Format für jedes Byte im RTU-Mode ist:

Code-System 8-Bit per Byte
Datenformat 4 Bytes (2 Register) pro Parameter
  Floating Point Format IEEE 754
  Der bedeutendste Wert findet sich im Register an der ersten Stelle und ist voreingestellt. Die Voreinstellung kann geändert werden; wie diese Umstellung funktioniert, findet man im Holding Register unter der Option „Register Order“
Prüffeld 2 Byte Cyclical Redundancy Check (CRC)
Aufbau 1 Start Bit
  8 Datenbits, unbedeutendstes Bit wird zuerst gesendet
  1 Bit für Parität (gleich, ungleich oder keine)
  1 Stop Bit wenn die Parität genutzt wird; 1 oder 2 Bits wenn keine Parität genutzt wird

Eingaberegister

Die Eingaberegister werden verwendet um die Menge der gegenwärtigen kalkulierten und gemessenen elektrischen Werte zu erkennen. Jeder Wert ist in zwei aufeinanderfolgenden 16 Bit Register verzeichnet.

Modbus Protokoll Holding Register und digitaler Multimeter

Die Holding-Register dienen dazu die Einstellungen des Gerätes zu speichern und anzuzeigen. Die Parameter in den Holding-Registern werden während der Nutzung des Modbus- Protokolls gelesen oder verändert. Jeder Parameter ist in zwei aufeinander folgenden 4X Registern verzeichnet. Ein 4X Register enthält 16 Bit von nummerierten (binär oder dezimal) Daten. Der Modbus Protokoll Function Code 03 wird verwendet um Parameter lesen zu können, während der Function Code 16 genutzt wird um zu schreiben. Es sollte aber nur ein Parameter pro Nachricht verwendet werden.

RS485 General Information

RS485 oder EIA (Electronic Industries Association) basiert auf einer ausbalancierten Wechselübertragung, dies ermöglicht eine Übertragungsdistanz von bis zu 1,2 km. Die folgende Tabelle fasst den RS485 Standard zusammen:

Parameter  
Operationsmodus Differential
Anzahl der Sender und Empfänger 32 Drivers, 32 Receivers
maximale Kabellänge 1200m
maximale Datenrate 10 M Baud
Signalspannung 12 bis 7 Volt
Minimum Spannungslevel (geladen) +/- 1.5 V
Minimum Spannungslevel (nicht geladen) +/- 6 V
Spannungsladung Minimum 60 Ohms
Spannungsausgang kurzer Stromkreis, momentanes Limit

150 mA bis Ground

250 mA bis 12 V

250 mA bis 7 V

Minimum Widerstand 12 Ohms
Widerstands-Sensibilität +/-200 mV

Weitere Informationen zum Modbus RS485 wird vom EIA oder anderen RS485-Geräte-Herstellern bereitgestellt, zum Beispiel von Texas Instruments oder Maxim Semiconductors.

Verbinden der Instrumente

Für die physische Verbindung sollte ein zweifach-verdrahtetes metallisch abgeschirmtes Kabel verwendet werden. Für lange Kabelstrecken oder lauten Umgebungen muss möglicherweise ein speziell-angefertigtes Kabel verwendet werden. Damit ist gesichert, dass die maximale Leistung erreicht werden kann. Alle „A“ Terminals sollten mit einem Leiter verbunden sein. Alle „B“ Terminals sollten mit dem anderen Leiter verbunden sein. Die Kabelblende sollte mit dem „Ground“ Terminal verbunden sein. Grundsätzlich wird ein Belden 9841 (eindrahtig) oder 9842 (zweidrahtig) oder ein Kabel mit einem ähnlichen charakteristischen Scheinwiderstand von 120 Ohm empfohlen. Optimal wäre, wenn das Kabel an beiden Enden einen Scheinwiderstand von 120 Ohm besitzt.

 

 

einfache Modbus Anleitung Übersicht

NETZ1

Serienschaltung

NETZ2

Sternenschaltung (nicht verwenden)

stub-connection

Stubschaltung (nicht verwenden)

Es sollten nicht mehr als zwei Kabel mit einem Terminal verbunden sein. Dies versichert, dass eine Serienschaltung oder eine „lineare Schaltung“ verwendet wird. Die Verwendung eines Sternen- oder Stubnetzwerk wird nicht empfohlen, da die Reflexionen im Kabel zu Verfälschungen der Daten führen können.

Modbus Protocol General Information

Der Kommunikationsstart bei einem Modbus-Protokoll-Netzwerk erfolgt durch einen „Master“. Der Master schickt den „Slaves“ Abfragen um Datenwerte zu erhalten. Der „Slave“ überwacht ständig das Netzwerk nach Abfragen, die an ihm gerichtet sind. Wird der „Slave“ angesprochen, reagiert er auf die Abfrage und schickt den Wert an den „Master“ zurück. Nur der „Master“ hat die Möglichkeit Abfragen an die "Slaves" zu verschicken.

Das Modbus Protokoll erlaubt es den „Master“ jeden „Slave“ individuell oder allen „Slaves“ eine Anfrage zu senden.

 

 

NETZ3

Serienübertragungsmodus

Es gibt zwei verschiedene Modbus Protokoll serien Übertragungsmodi, ASCII und RTU. Im RTU (Remote Terminal Unit) Modi wird jedes 8-Bit Byte in vollem binären Bereich verwendet und ist nicht beschränkt auf die ASCII Zeichen, wie es im ASCII Modus der Fall ist. Die höhere Datendichte ermöglicht einen höheren Datendurchfluss bei gleicher Baud-Rate, allerdings muss jede Nachricht in einem kontinuierlichen Fluss übertragen werden. Es ist höchst unwahrscheinlich, dass dies ein Problem für die modernen Kommunikationsgeräte darstellt.

Das Coding System ist ein Voll 8-Bit binär per Byte Dokument. In diesem Dokument wird der Wert jedes Bytes als zwei hexadezimal Zeichen angezeigt, jeweils im Bereich 0-9 oder A-F. Das Linienprotokoll besteht aus einem Start-Bit, gefolgt von 8 Data Bits. Die 8 Data Bits werden zuerst mit dem am wenigsten bedeutendsten Bit gesendet.

Einstellungsoptionen für Parität und Stopbit:

  • Keine Parität und 1 Stop Bit
  • Gleiche Parität und 1 Stop Bit
  • Ungleiche Parität und 1 Stop Bit

Einstellungsoptionen für Baud-Rate:

  • 1200
  • 2400
  • 4800
  • 9600

Die Baud-Rate, die Parität und die Stop Bits müssen so gewählt werden, dass sie den Master Einstellungen entsprechen.

Modbus Protokoll Nachrichten (RTU Modus)

Eine MODBUS-Protokoll-Nachricht besitzt definierte Anfangs- und Endpunkte. Das empfangende Gerät erkennt den Anfang der Nachricht und liest die „Slave“-Adresse aus. Damit weiß der „Slave“ ob er vom Master angesprochen wurde und ob die Nachricht vollständig gesendet wurde. Ist sie vollständig angekommen, verwenden die "Slaves" Error-Check-Bytes und Paritäts-Bits um die Vollständigkeit der Nachricht zu bestätigen. Wenn der Error Check oder die Parität fehlschlägt, wird die Nachricht vollständig verworfen.

Im RTU Modus beginnt die Nachricht mit einem Ruheintervall von mindestens 3.5 Zeichen. Das erste Byte enthält die Geräteadresse. Master und Slave-Geräte überwachen kontinuierlich das Netzwerk, sogar während der Ruheintervalle. Wenn das erste Byte (die Geräteadresse) empfangen wurde, wird dieses Byte von jeden „Slave“ überprüft. Jeder „Slave“ weiß dadurch, ob er angesprochen wurde. Wenn das Gerät erkennt, dass es adressiert wurde, erfasst es die vollständige Nachricht und handelt dementsprechend. Falls es nicht adressiert wurde, fährt es mit der Überwachung des Netzwerkes fort und kontrolliert die nächste Nachricht.

Nach dem letzten übertragenen Byte zeigt ein Ruheintervall von mindestens 3.5 Zeichen das Ende der Nachricht an. Nach diesem Ruheintervall kann eine neue Nachricht beginnen.

Die gesamte Nachricht muss in einem durchgehenden Fluss übertragen werden. Sollte ein Ruheintervall von mehr als 1.5 Zeichen vor dem Abschluss der Nachricht auftreten, verwirft das empfangende Gerät die unvollständige Nachricht. In weiterer Folge nimmt das Gerät an, dass das nächste Byte die Geräteadresse einer neuen Nachricht enthält.

Ähnlich verläuft es, wenn eine neue Nachricht früher als 3.5 Zeichen nach der vorgegangenen Nachricht beginnt. In diesem Fall betrachtet das empfangende Gerät die Nachricht als Fortsetzung der vorangegangenen Nachricht. Folglich entsteht ein Fehler, da der Wert der kombinierten Nachricht im finalen CRC Feld (Prüffeld) ungültig ist.

Funktionscodes

Der Funktionscodes in einer MODBUS Protokoll Nachricht definiert die Handlung, die vom Slave ausgeführt wird.

Hat Ihnen dieser Artikel geholfen?

Gar nicht
Zu wenig
Etwas
Zufriedenstellend
Sehr