Modbus-RTU - Kommunikationsprotokoll

kostenlosKostenloses technisches Material

Dieser Inhalt ist direkt lesbar und eignet sich für das Grundlagenlernen und die Suche.

Modbus-RTU - Kommunikationsprotokoll

Modbus-RTUFunktionscode

Testwerkzeug: Xinjiang T-com Serial Port Debugging Tool statt Touchscreen;

Testgerät: Xinjiang PLC;

Die interne Software-Komponentennummer und die Modbus-RTU - Adressnummer der SPS finden Sie im Abschnitt Modbus-Kommunikationsfunktionen der SPS.

Modbus Funktionscode:

Funktionscode (16Dezimal)Funktion
01Lesen Sie mehrere
03mehrere Register lesen
05ein einzelnes Bit schreiben
06ein einzelnes Register schreiben
0Fmehrere Bits schreiben
10mehrere Register schreiben

Kommunikationsformat: 19200, Par Check (EVEN), 8 - Bit-Daten - Bit, 1 - Bit-Stop - Bit.

Hinweis: Die folgenden Testadressen sind Hexadezimal-Adressen, die tatsächliche Operation muss die Hexadezimal-Adressen in die Dezimal-Adressen in den Touchscreen eingegeben konvertieren.

1.    01 Funktionscode:Lesen mehrerer Spule-Bits

Beispiel: Lesen Sie den Bitzustand der Spule0X4800 ~ 0X4815 Standort des Zustandes.

0X4800 ~ 0X4807: PLC Y0 ~ Y7 0X4808 ~ 0X4815: PLC Y10 ~ Y17

Senden Sie Befehl: 01 01 48 00 00 10 2A66

AktionGerätennummer (1 Byte)Funktionscode (1 Byte)Startadresse hohe (1 Byte)Startadresse niedrig (1 Byte)Gesamtzahl hohe (1 Byte)Gesamtzahl niedrig (1 Byte)CRC (1 Byte)(1 Byte)
Senden0101480000102A66

Rückgabe Befehl: 01 01 02 00 00 B9 FC

AktionGerätennummer (1 Byte)Funktionscode (1 Byte)Anzahl der Bytes (2 Byte)Bitstatus (On / Off)Bitstatus (On / Off)CRC (1 Byte)(1 Byte)
gibt ON010102FF03B80D zurück.
Zurück Off0101020000B9FC

2.    03 Funktionscode:Mehrfachlesen(Datenanzeige)

Beispiel:Lesen4x00 bis 4x02 Die Daten.

4X000 ~ 4X003: PLC D0 ~ D2

4x00 = 4, 4x01 = 5, 4x001 = 1, 4x02 = 2

Senden Sie Befehl: 01 03 00 00 00 04 44 09

AktionGerätennummer (1 Byte)Funktionscode (1 Byte)Startadresse hohe (1 Byte)Startadresse niedrig (1 Byte)Gesamtbits hohe (1 Byte)Gesamtbits niedrig (1 Byte)CRC (1 Byte)(1 Byte)
Senden0103000000044409

Senden Befehl: 0

BewegungGerätennummer (1 Byte)Funktionscode (1 Byte)Anzahl der Bytes (1 Byte)Registerwert Hoch 4X00Registerwert Niedrig 4X00Registerwert Hoch 4X01Registerwert Low 4x01Registerwert Hoch 4X02Registerwert Niedrig 4X02
Rückgabe010308000400050001
      Registerwert Hoch 4X023Registerwert niedrig 4X023CRC 
      0002CC16

3.    05 Funktionscode:Schreiben einer einzelnen Operation(Taste)

z. B.: Setzen ON 0X4800

0X4800: PLC Y0

Senden Befehl: 01 05 48 00 FF00 9B9A

AktionGerätennummer (1 Byte)Funktionscode (1 Byte)Startadresse hohe Position (1 Byte)Start-Adresse niedrig (1 Byte)Gesamtzahl der Bits Hoch (1 Byte)Gesamtzahl der Bits niedrig (1 Byte)CRC (1Byte)(1Byte)
Senden01054800FF009B9A

Gibt Befehl zurück: 01 05 48 00 FF00 9B 9A

AktionGerätennummer (1 Byte)Funktionscode (1 Byte)Startadresse Höhere Position (1 Byte)Startadresse niedrig (1 Byte)Gesamtzahl Höhere Position (1 Byte)Gesamtzahl niedrig (1 Byte)CRC (1 Byte)(1 Byte)
Gibt01054800FF009B9A

Beispiel: SetzenOFF    0X4800

0X4800: PLC Y0

Senden Sie Befehl: 01 05 48 00 00 DA6A

AktionGerätennummer (1 Byte)Funktionscode (1 Byte)Startadresse Hohe (1 Byte)Startadresse Niedrig (1 Byte)Gesamtbitt oben (1 Byte)Gesamtbitt niedrig (1 Byte)CRC (1 Byte)(1 Byte)
Senden010548000000DA6A

Rückgabe Befehl: 01 05 48 00 00 DA6A

AktionGerätennummer (1 Byte)Funktionscode (1 Byte)Startadresse hohe (1 Byte)Startadresse niedrig (1 Byte)Gesamtbits hohe (1 Byte)Gesamtbits niedrig (1 Byte)CRC (1 Byte)(1 Byte)
Rückkehr010548000000DA6A

4.    06 Funktionscode:Schreiben eines einzelnen Wortes

z. B.:Adresse4X00Schreiben von Daten8

4X00: PLC D0

Senden Sie den Befehl:

AktionGerätennummer (1 Byte)Funktionscode (1 Byte)Startadresse hohe (1 Byte)Startadresse niedrig (1 Byte)Registerwert Höchstwert (1 byte)Niedriges Registerwert (1 Byte)CRC (1 Byte)(1 Byte)
Senden010600000008880C

Zurückgabe Befehl: 01 06 00 00 00 08 88 0C

AktionGerätennummer (1 Byte)Funktionscode (1 Byte)Startadresse hohe (1 Byte)Startadresse niedrig (1 Byte)Registerwert hohe (1 Byte)Registerwert niedrig (1 Byte)CRC (1 Byte)(1 Byte)
Rückkehr010600000008880C

5.    10 Funktionscode:Schreiben von mehreren Wörtern(Dateneingabe Schreiben von DoppelwörternDword)

z. B.:Adresse4X00 Schreiben von Daten 10, 4X01Schreiben von Daten11, 4X02Schreiben von Daten12

4X00 ~ 4X02: PLC D0 ~ D2

Senden Sie Befehl: 01 10 00 00 00 03 06 00 0A 00 0B 00 0C 0F46

BewegungVorbereitung (1)Funktionscode (1Startadresse hohe (1 Byte)Startadresse niedrig (1 Byte)Register-Gesamtzahl hohe (1 Byte)Register-Gesamtzahl niedrig (1 Byte)Gesamtzahl der Bytes (1 Byte)Registerwert HoheRegisterwert Niedrig (1 Byte)
 Byte)Byte)     (1 Byte) 
Senden01100000000306000A
    Registerwert Hohe (1 Byte)Registerwert Niedrig (1 Byte)Registerwert Hohe (1 Byte)Registerwert Niedrig (1 Byte)CRC 
    000B000C0F46

Rückgabe Befehl: 01 10 00 00 03 80 08

AktionGerätennummer (1 Byte)Funktionscode (1 Byte)Startadresse hohe (1 Byte)Startadresse niedrig (1 Byte)Gesamtzahl der Register hoch (1 Byte)Gesamtzahl der Register niedrig (1 Byte)CRC (1 Byte)(1 Byte)
Senden0110000000038008

6.    0f Funktionscode: Schreiben Sie mehrere Operationen

z. B.: Setzen ON 0X4800 ~ 0X4803

0X4800 ~ 0X4807: PLC Y0 ~ Y7 0X4810: PLC Y10

Senden Sie Befehl: 01 0F48 00 00 09 02 FF01AD48

AktionGerätennummer (1 Byte)Funktionscode (1 Byte)Startadresse Hohe (1 Byte)Startadresse Niedrig (1 Byte)239] Bits Gesamtzahl niedrig (1 Byte)Gesamtzahl von Bits niedrig (1 Byte)Gesamtzahl der Bytes (1 Byte)Niedriger Wert (1 Byte)Höherer Wert (1 Byte)
Senden von Daten010F4800000902FF01
        CRC 
        AD48

Zurückgabe Befehl: 01 0F 48 00 00 09 82 6D

AktionGerätennummer (1 Byte)Funktionscode (1 Byte)Startadresse hohe (1 Byte)Startadresse niedrig (1 Byte)Bits Gesamtzahl hohe (1 Byte)Bits Gesamtzahl niedrig (1 Byte)CRC 
Rückgabe010F48000009826D
Relevante Etiketten
Sollte man diese Informationen für ein echtes Projekt verwenden?

Gehen Sie zum Tool Center, um Nachrichten zu analysieren, CRC-Prüfungen und Geräte-Debugging zu erledigen, oder senden Sie Anforderungen für Auswahl - und Zugangsvorschläge.

Ingenieur Mitglied

Verwandeln Sie diesen Artikel in ein umsetzbares Debuggermaterial

Erweiterte Nachrichtenanalyse, Paket-Downloads, Codebeispiele, Engineering-Szenarien und Priority-Technischer Support sind für die Real-Projekt - Bereitstellung möglich.

Unbegrenzte Werkzeuge
Datenpaket und Codepaket
Vollständige Engineering Case-Basis
Vorrangiger Zugang zum technischen Support

Antwort veröffentlichen

Ihre E-Mail - Adresse wird nicht öffentlich gemacht. Erforderliche Elemente wurden verwendet * markiert.