Modbus TCP-Kommunikationszeichen-LED-Anzeigelösungen
Das MODBUS-Protokoll ermöglicht die einfache Kommunikation innerhalb verschiedenster Netzwerkarchitekturen. Jedes Gerät (SPS, HMI, Bedienfeld, Treiber, Bewegungssteuerung, Ein-/Ausgabegerät) kann das MODBUS-Protokoll zur Fernsteuerung nutzen.
Modbus verfügt über die folgenden drei Kommunikationsmodi:
Ethernet: Der entsprechende Kommunikationsmodus ist Modbus TCP/IP.
Asynchrone serielle Übertragung (verschiedene Medien wie kabelgebundene RS-232-/422-/485-Schnittstellen, Glasfaser, drahtlos usw.): Der entsprechende Kommunikationsmodus ist Modbus RTU oder Modbus ASCII.
Hochgeschwindigkeits-Token-Passing-Netzwerk: Der entsprechende Kommunikationsmodus ist Modbus PLUS.

Modbus RTU-Datenrahmenstruktur
Die Anweisungen im RTU-Protokoll bestehen aus fünf Teilen: Funktionscode (ein Byte), Startadresse (zwei Bytes), Adresscode (ein Byte), Daten (N Bytes), Prüfcode (zwei Bytes), wobei die Daten aus der Datenlänge (zwei Bytes, die die Anzahl der Register angeben, vorausgesetzt, der Inhalt ist M) und dem Datenkörper (M multipliziert mit zwei Bytes) bestehen.
Nehmen wir zum Beispiel 01 06 00 00 00 1F C8 02.
01 Adresse 01
06 Schreibregister
00 00 Register 0 entspricht Variable 0
00 1F Es wird der Wert 31 angezeigt.
C8 02 Modbus CRC-Prüfcode
Modbus TCP-Datenrahmenstruktur
Modbus TCP fügt Modbus RTU den MBAP-Paketheader hinzu. Da TCP ein Dienst ist, der auf einer zuverlässigen Verbindung basiert, findet in Modbus TCP keine CRC-Prüfung statt. Alle Modbus TCPADU-Pakete senden und empfangen TCP-Übertragungssteuerungsprotokolle. Der Modbus TCP/IP-Server verwendet üblicherweise Port 502 zum Empfangen von Paketen.
Nehmen wir zum Beispiel 00 01 00 00 00 06 01 06 00 00 00 00 00 1F.
01 Adresse 01
06 Schreibregister
00 00 Register 0 entspricht Variable 0
00 1F Es wird der Wert 31 angezeigt.
Modbus TCP: Das Netzwerkprotokoll wurde nicht verifiziert.
Die Datei modbus.ini unterstützt auch die Textanzeige durch Änderung der Parameterkonfiguration. Im Folgenden werden die Parameter für die Textanzeigekonfiguration beschrieben.
|
Parametername |
Typ |
Standard |
beschreiben |
|
MaxVarNo |
int |
1 |
Der Wertbereich liegt zwischen 1 und 100. |
|
Einheitentyp |
int |
1 |
Einheitentyp: 0: Einheiten werden nicht angezeigt. 1: Zeigt die Originaleinheit an. 2: Zeigt Ersatzeinheiten an; derzeit können nur µg/m³ ersetzt werden; die Schriftartdatei „symbol.lmf“ wird benötigt. |
|
Time-out |
int |
200 |
Das Timeout für das Lesen des Modbus-Protokolls wird in Millisekunden angegeben. Für einen stabilen Ablauf des aktuellen Tests muss das Timeout mindestens 200 ms betragen. |
|
Intervall |
int |
5000 |
Gesamtzyklusintervall in Millisekunden |
|
DispTypeNum |
int |
1 |
Es können maximal 16 Typen angezeigt werden. |
|
Bereichsnummer |
int |
4 |
Der Wert darf maximal 32 betragen. |
|
1 |
Zeichenkette |
0,1, Freizeit,0,255,0 |
Durch Kommas getrennt, sind die ersten beiden Werte Bereichswerte (nahe am Intervall, Dezimalzahlen möglich), der dritte Wert ist der anzuzeigende Text (maximal 32 Bytes), bei @@ wird der Originalwert angezeigt, die folgenden drei Werte sind RGB-Farbwerte, die gesamte Zeile darf 128 Bytes nicht überschreiten. |
|
[1] |
int |
Variable Zahl |
|
|
Geräteadresse |
int |
1 |
Modbus-Geräteadresse |
|
Datenadresse |
int |
0 |
Datenregisteradresse |
|
Datenlänge |
int |
2 |
Der Wert kann 1 oder 2 sein. 2 bedeutet, dass zwei Werte und vier Bytes gleichzeitig gelesen werden. |
|
Unterzeichnet |
int |
0 |
Vorzeichenlos, 0. Vorzeichenlose Zahl, 1. Vorzeichenbehaftete Zahl, 2. Die höchste Ziffer ist das Vorzeichen 1 minus 0 plus. |
|
Offset |
int |
0 |
Erfassen Sie die Abweichung zwischen den an der Adresse gespeicherten Daten und dem tatsächlichen Wert. Der Standardwert ist 0 und hat Vorrang vor der Berechnung des Bedieners. |
|
Sobel |
int |
1 |
Operator: Multiplizieren Sie die gelesenen Daten mit diesem Operator, um die anzuzeigenden Daten zu erhalten. Der Standardwert ist 1. |
|
Einheit |
Zeichenkette |
µg/m³ |
Die anzuzeigende Einheit ist gültig, wenn UnitType=1/2. Die maximale Länge beträgt 10. |
|
Format |
Zeichenkette |
%D |
Standardformatzeichenkette in der Programmiersprache C. Der Standardwert ist %d, die maximale Länge beträgt 10. |
|
Füllfeldnummer |
int |
0 |
Die Anzahl der Leerzeichen, die zwischen Daten und Einheiten eingefügt werden müssen. Der Standardwert ist 0. |
|
ExistDecimal |
int |
1 |
Wenn eine Dezimalzahl vorhanden ist, existiert 1, 0 existiert nicht. Der Standardwert ist 0. |
|
DispTypeNo |
int |
1 |
Der aktuelle Wert zeigt die Anzeigetypnummer an, die „DispTypeNum“ entspricht. Der Wert reicht von „1“ bis „DISPtypenum“. |
|
Funktion |
int |
1 |
Variable Funktion, 0. Anzeigevariable, 1. Sendeprogramm auswählen, 2. Helligkeit einstellen (Standardwert: 0) |
Protokoll herunterladen
| C-Power-Asynchronregler | Download-Protokoll |


