Zum Hauptinhalt springen
ElekRechnerElekRechner
ElekRechnerElekRechner

Professionelle Elektrotechnik-Rechner nach VDE-Standards. Kostenlos für Elektriker, Ingenieure und Auszubildende.

Rechner

  • Grundlagen
  • Leitungsberechnung
  • Lastberechnung
  • Kurzschlussstrom
  • Motorberechnung
  • Schutzberechnung
  • Prüfung & Messung
  • Erneuerbare Energien
  • Transformatoren
  • Gebäudeautomation
  • Beleuchtung
  • Netzqualität

Ressourcen

  • Ratgeber
  • Tabellen
  • Spezialthemen
  • Aktuelles

Rechtliches

  • Impressum
  • Datenschutz

© 2026 ElekRechner.com – Alle Rechte vorbehalten

ImpressumDatenschutz
Startseite/Ratgeber/Praxis-Leitfäden/Modbus RTU/TCP – Protokoll & Kommunikation
Praxis-LeitfädenFortgeschritten

Modbus RTU/TCP – Protokoll & Kommunikation

Praxisleitfaden für Modbus RTU (seriell) und Modbus TCP (Ethernet): Registeradressierung, Funktionscodes und Fehlerbehebung.

18 Min. LesezeitAktualisiert: 06.02.2026

Formelübersicht

CRC-16 ModbusPolynom: x¹⁶ + x¹⁵ + x² + 1

Prüfsumme für Modbus RTU

Einführung

Modbus ist eines der ältesten und meistverbreiteten industriellen Kommunikationsprotokolle. Entwickelt 1979 von Modicon, ist es heute ein offener Standard. Modbus wird für die Kommunikation zwischen SPS, Sensoren, Frequenzumrichtern und HMI-Systemen verwendet.

Die drei Hauptvarianten sind:

  • Modbus RTU: Seriell (RS-232, RS-485), kompakt und schnell
  • Modbus ASCII: Seriell, lesbar aber langsamer
  • Modbus TCP: Ethernet-basiert, TCP/IP Port 502

Modbus Varianten

VarianteMediumGeschwindigkeitAnwendung
RTURS-4859600-115200 BaudFeldebene
ASCIIRS-232/4859600-19200 BaudWartung
TCPEthernet10/100 Mbit/sIT-Integration

Adressstruktur

RegistertypModbus-AdresseZugriffsartTypische Anwendung
Coils0xxxx (1-9999)Read/WriteDigitale Ausgänge
Discrete Inputs1xxxx (10001-19999)Read OnlyDigitale Eingänge
Input Registers3xxxx (30001-39999)Read OnlyAnaloge Eingänge
Holding Registers4xxxx (40001-49999)Read/WriteParameter, Sollwerte

Wichtige Funktionscodes

CodeHexFunktionBeschreibung
010x01Read CoilsDigitale Ausgänge lesen
020x02Read Discrete InputsDigitale Eingänge lesen
030x03Read Holding RegistersHalteregister lesen
040x04Read Input RegistersEingangsregister lesen
050x05Write Single CoilEinzelnen Ausgang schreiben
060x06Write Single RegisterEinzelnes Register schreiben
150x0FWrite Multiple CoilsMehrere Ausgänge schreiben
160x10Write Multiple RegistersMehrere Register schreiben

RTU Frame-Aufbau

FeldBytesInhalt
Slave-Adresse11-247
Funktionscode101-16
DatennRegisteradressen, Werte
CRC-162Prüfsumme Low/High

TCP Frame-Aufbau

FeldBytesInhalt
Transaction ID2Sequenznummer
Protocol ID20x0000 (Modbus)
Length2Byte-Anzahl folgend
Unit ID1Slave-Adresse
Function Code1Wie RTU
DatanWie RTU

Fehlercodes (Exceptions)

CodeBedeutung
01Illegal Function (Funktionscode nicht unterstützt)
02Illegal Data Address (Registeradresse ungültig)
03Illegal Data Value (Wert außerhalb Bereich)
04Slave Device Failure (interner Gerätefehler)
06Slave Device Busy (Gerät beschäftigt)

Schritt-für-Schritt

  1. 1Modbus-Variante wählen (RTU für Feld, TCP für IT)
  2. 2Physische Verbindung herstellen (RS-485 / Ethernet)
  3. 3Kommunikationsparameter festlegen (Baudrate, Parität)
  4. 4Slave-Adressen zuweisen (1-247)
  5. 5Registerliste vom Gerätehersteller beschaffen
  6. 6Master-Software konfigurieren (SPS, SCADA)
  7. 7Erste Leseanfrage testen (z.B. FC 03)
  8. 8Schreibzugriffe konfigurieren
  9. 9Timeout und Retry-Strategie definieren
  10. 10Diagnose und Monitoring einrichten

Praktische Beispiele

1

Temperatur vom Sensor lesen

Aufgabe

Modbus RTU Sensor, Adresse 1, Temperatur in Register 40001

Lösung

  1. 1Frame aufbauen: 01 03 00 00 00 01 XX XX
  2. 2Slave = 01, FC = 03 (Read Holding)
  3. 3Start-Adresse = 0x0000 (Register 40001)
  4. 4Anzahl = 0x0001 (1 Register)
  5. 5CRC-16 berechnen und anhängen
  6. 6Antwort: 01 03 02 01 F4 XX XX → 0x01F4 = 500 = 50.0°C

Temperatur 50.0°C (Faktor 10)

Häufige Fehler vermeiden

  • ✗Falsche Baudrate oder Parität
  • ✗Registeradresse um 1 versetzt (0-basiert vs. 1-basiert)
  • ✗RS-485 Bus nicht terminiert
  • ✗Byte-Reihenfolge (Big/Little Endian) falsch
  • ✗Timeout zu kurz für langsame Slaves
  • ✗Modbus TCP Port 502 nicht freigegeben

Zusammenfassung

Modbus Kurzübersicht:

AspektRTUTCP
MediumRS-485Ethernet
PrüfsummeCRC-16TCP/IP
Max. Slaves247Netzwerk
Port-502

Typische Anwendung:

  • RTU: Feldgeräte, Sensoren
  • TCP: SCADA, HMI, Gateway

Häufig gestellte Fragen

Modbus verwendet intern 0-basierte Adressen. Register 40001 hat intern Adresse 0. Manche Tools zeigen 1-basierte Adressen. Prüfen Sie die Dokumentation Ihres Geräts.

Standard RS-485 unterstützt 32 Unit Loads. Mit Low-Power-Transceivern (1/8 UL) bis 256 Geräte. Modbus-Adressen: 1-247.

Coils sind 1-Bit-Werte (digital), Holding Registers sind 16-Bit-Werte (analog). Beide sind les- und schreibbar.

ModbusRTUTCPRS-485Industrial Communication

Diesen Inhalt teilen

Verwandte Artikel

Kabelquerschnitt richtig wählenSpannungsfall berechnenMotoranschluss ausführenFI-Schutzschalter auswählen
Alle Praxis-Leitfäden →
Inhalt