Modbus TCP — Telegrammgenerator und Parser

TCP-Telegramme erstellen und analysieren. MBAP-Header, Funktionscodes und Registerdaten prüfen.

Modbus-TCP-Anfrage erstellen

Modbus TCP Antwort-Nachrichtengenerator

Datentyp
Byte-Reihenfolge
Wert(Dezimalwert)

Modbus-TCP-Telegramm analysieren

Parsing-Regeln konfigurieren

Index
Byte-Offset
Datentyp
Rohdaten
Byte-Reihenfolge
Sortierte Daten
Parser-Ergebnis
Aktionen
Eine Regel hinzufügen, um Werte aus den Nutzdaten zu dekodieren.

Benutzerhandbuch

Telegramme erstellen und untersuchen

TCP-Anfragen und Beispielantworten erstellen, MBAP-Felder prüfen und Registerdaten dekodieren. Für den Datenaustausch mit Geräten einen separaten TCP-Client verwenden.

Hauptfunktionen:

  • Anfragen für acht gängige Lese- und Schreibfunktionen erstellen.
  • Beispielantworten für Tests und Vergleiche erstellen.
  • Nutzdaten anhand von Byte-Offsets, Datentypen und Byte-Reihenfolge dekodieren.

Anleitung zum Befehlsgenerator

  • Unit-ID: den vom TCP-Gerät oder Gateway geforderten Wert verwenden.
  • Transaktions-ID: 0–65535; der Server übernimmt sie in die Antwort.
  • Funktionscodes: 01/02/03/04/05/06/15/16 dezimal; 15 und 16 entsprechen 0x0F und 0x10.
  • Startadresse: nullbasierter Protokolloffset, keine Referenznummer wie 40001.
  • Anzahl: die zu lesenden oder zu schreibenden Bits beziehungsweise 16-Bit-Register.
  • Beispiele für TCP-Befehle:
  • TCP-Lesebefehl: 00 01 00 00 00 06 01 03 00 00 00 02 (MBAP-Header + PDU)
  • TCP-Schreibbefehl: 00 01 00 00 00 06 01 06 00 00 00 01 (MBAP-Header + PDU)
  • Erläuterung des MBAP-Headers: Transaktions-ID (00 01) + Protokoll-ID (00 00) + Länge (00 06) + Unit-ID (01)

Beispielantwort erstellen

  • Denselben Funktionscode wie in der Anfrage wählen.
  • Registerwerte als Ganzzahlen mit oder ohne Vorzeichen oder als IEEE-754-Werte hinzufügen.
  • ABCD, DCBA, BADC oder CDAB passend zum Gerät wählen.
  • TCP-Transaktions-ID: Muss mit der Transaktions-ID im Anfragebefehl übereinstimmen
  • TCP-Unit-ID: Entspricht der Unit-ID im Anfragebefehl
  • Beispiele für TCP-Antworten:
  • TCP-Leseantwort: 00 01 00 00 00 07 01 03 04 00 01 00 02 (MBAP-Header + Antwort-PDU)
  • TCP-Schreibantwort: 00 01 00 00 00 06 01 06 00 00 00 01 (MBAP-Header + Bestätigungs-PDU)
  • Hinweis: Die Transaktions-ID in der TCP-Antwort muss mit der Anfrage übereinstimmen; das Längenfeld wird automatisch berechnet

Aufgezeichnetes Telegramm dekodieren

  • Ein vollständiges Telegramm des ausgewählten Formats einfügen.
  • Für jeden benötigten Wert eine Regel mit passendem Byte-Offset anlegen.
  • Ganzzahl- oder IEEE-754-Typ aus der Registertabelle wählen. Hex-Konverter
  • Die Byte-Reihenfolge des Geräts einstellen.
  • Felder eines TCP-Telegramms:
  • Transaktions-ID, Protokoll-ID, Länge und Unit-ID im MBAP-Header prüfen.
  • Modbus TCP hängt keine CRC oder LRC an das Anwendungstelegramm an.
  • TCP-Rahmenformat: MBAP-Header (7 Bytes) + Funktionscode (1 Byte) + Daten (n Bytes)
  • Protokoll-ID 0x0000 prüfen; die Länge muss Unit-ID und PDU-Bytes umfassen.
  • Beispiel für TCP-Parsing:
  • Eingabe: 00 01 00 00 00 07 01 03 04 00 01 00 02
  • Geparst: Transaktions-ID=1, Protokoll-ID=0, Länge=7, Unit-ID=1, Funktionscode=03, Daten=00 01 00 02
  • Gespeicherte RTU-Leseantworten in der seriellen Diagnose mit Datenquelle Datei analysieren.

Modbus TCP verstehen

Unterstützte Datentypen

    Typen der Byte-Reihenfolge

      Erläuterung der Funktionscodes

        TCP-Debugging-Tipps

          Anwendungsfälle