Die Programmierung eines Modbus-Masters in einer SPS (Siemens TIA, Wago Codesys, Schneider Unity Pro) erfolgt über standardisierte Funktionsbausteine (z. B. MB_CLIENT, MODBUS_CLIENT), die Anfragen (Read Holding, Write Single Register usw.) inklusive automatischer Retry- und Timeout-Behandlung kapseln.
Richtig
Praktisch alle gängigen Engineering-Umgebungen liefern fertige Funktionsbausteine: Siemens TIA Portal bietet MB_CLIENT (Modbus TCP), Wago Codesys die MODBUS_CLIENT-Library, Schneider Unity Pro die READ_VAR/WRITE_VAR-Bausteine, ABB CoDeSys den MB_RTU_CLIENT. Typische Parameter sind Connect_ID, IP, Port, Slave_ID, Function, Start_Address, Length und Data_Buffer. Verbindungsaufbau, Timeout (typisch 1-5 s) und Retries werden vom Baustein verwaltet, was die Programmierung gegenüber einer manuellen Implementierung deutlich vereinfacht und Fehlerquellen reduziert.
Praxistipp: Häufiger Fehler: das Done-/Busy-Bit nicht als Triggerbedingung für die nächste Anfrage zu verknüpfen — das sättigt den Baustein und führt zu Kaskaden-Timeouts.
Modbus-Bank in Vorbereitung
Die vollständige Modbus-Bank ist noch nicht verfügbar. Hinterlassen Sie Ihre E-Mail, um beim Start benachrichtigt zu werden und einen Early-Bird-Rabatt zu erhalten.
Der Warteliste beitreten →Die 9 weiteren Modbus-Übungsfragen ansehen
Verwandte Fragen
- Ein Modbus-RTU-Bus auf RS-485 unterstützt bis zu 32 Knoten pro Segment (mit Repeatern erweiterbar), benötigt Abschlusswiderstände (typischerweise 120 Ohm) an beiden Busenden sowie Polarisationswiderstände, um den Ruhepegel zu definieren.3. Modbus RTU · RS-485 Multi-Drop
- Welcher Modbus-Funktionscode wird zum LESEN der Holding Registers (16-Bit-Register, Lese-/Schreibzugriff) eines Slaves verwendet?4. Function codes · Lesen Coils/Register
- Die Funktion 0x06 'Write Single Register' schreibt ein einzelnes 16-Bit-Holding-Register in einem Modbus-Slave; Adresse und Wert sind in der Anfrage jeweils 16 Bit lang.4. Function codes · Write Single Register (0x06)
- Um einen 32-Bit-Gleitkommawert nach IEEE 754 über Modbus (16-Bit-Register) zu übertragen, werden typischerweise zwei aufeinanderfolgende Register verwendet, wobei die Bytereihenfolge in der Slave-Dokumentation festgelegt ist.5. Data encoding · 32-Bit-Float
- Modpoll (focus-sw.com) und mbpoll (Linux/macOS) sind kostenfreie Kommandozeilenwerkzeuge, um einen Modbus-Slave vom PC aus abzufragen, und sind für Diagnose und Inbetriebnahme einer Modbus-Integration unverzichtbar.6. Practical · Modpoll / mbpoll