Zum Inhalt

Funktionsbaustein: Modbus Output

Der Modbus Output ist ein Funktionsbaustein zur Abfrage von Prozesswerten aus einem externen Modbus-Gerät
über Modbus RTU oder Modbus TCP. Der Baustein liest die aktuellen Werte aus dem Modbus-Slave und stellt sie als Ausgang zur Verfügung.


Funktionsweise

Beim Aufruf von update() fragt der Baustein den aktuellen Registerwert vom externen Gerät ab und stellt diesen Wert am Ausgang zur Verfügung.
Es handelt sich also um eine lesende Verbindung zu einem Modbus-Slave, z. B. einem digitalen oder analogen Sensor.

Unterstützte Registertypen

Register Beschreibung
DO Discrete Outputs (Coils) → bool
AO Analog Outputs (Holding Registers) → int

Die Werte werden aus dem lokalen Modbus-Stack (RTU oder TCP) gelesen.


Parameter

Parameter Beschreibung
register Registertyp: DO (digital output) oder AO (analog output)
addr Startadresse des Registers (1–9999)
len Anzahl der Register (DO: max. 2000, AO: max. 125)

⚠️ Die Adresse wird intern 0-basiert gespeichert (Adresse − 1).
⚠️ Registeradressen dürfen nicht doppelt verwendet werden.


Ein- / Ausgang

  • Eingang:
    Wird nicht verwendet. Der Baustein ist rein lesend.

  • Ausgang:
    Gibt den zuletzt über update() gelesenen Wert zurück.
    Typ: bool für DO / int für AO
    Bei mehreren Registern: Liste


Interner Callback-Mechanismus

Der Baustein registriert sich im lokalen Modbus-Stack mit einem Callback, um bei Bedarf aktualisiert zu werden.
Die internen Methoden set_coil() und set_hreg() übernehmen die Kommunikation mit der Modbus-Infrastruktur.


Anwendungsbeispiele

  • Einlesen von Schalterzuständen, Sensoren oder Analogeingängen eines Modbus-Geräts
  • Verwendung in Verbindung mit Prüf-, Statistik- oder Logikbausteinen
  • Automatisiertes Reagieren auf externe Modbus-Signale

Der Modbus Output ist der ideale Baustein zur Einbindung externer Modbus-Slaves
und zur Verwendung von Modbus-Daten in der Programmierlogik des Wetterrelais.