Modbus Write
Dieser Funktionsblock sendet Werte an einen Modbus-Server über einen bereitgestellten Modbus-Client. Verwenden Sie ihn, um Coils oder Holding Registers aus Ihrem Szenariographen zu schreiben.
📥 Eingänge
Enable Dieser boolesche Eingang steuert, ob Schreibvorgänge ausgeführt werden. Wenn er nicht bereitgestellt oder auf False gesetzt ist, versucht der Block nicht zu schreiben.
Modbus Client Dieser Eingang erwartet ein Client-Objekt, das vom Block Modbus Connect erzeugt wurde. Stellen Sie einen gültigen Client bereit, um die Kommunikation zu ermöglichen.
Data Generische Daten zum Schreiben. Akzeptiert einen Einzelwert oder eine Liste (zum Schreiben mehrerer Coils/Register).
📤 Ausgänge
Dieser Funktionsblock erzeugt keine Ausgänge.
🕹️ Steuerungen
Address Geben Sie die Modbus-Register-/Coil-Adresse ein, in die geschrieben werden soll. Verwenden Sie ganzzahlige Werte, die mit Ihrer Geräteadresse übereinstimmen.
Data Type Wählen Sie zwischen Coil und Holding Register, um den zu beschreibenden Modbus-Ressourcentyp festzulegen.
🎯 Funktionen
Unterstützt das Schreiben einzelner Werte oder Listen an mehrere Adressen, wenn das Gerät dies erlaubt.
Ermöglicht die Auswahl des Zielressourcentyps über ein Dropdown:
CoiloderHolding Register.Respektiert den Eingang
Enable, sodass Schreiben aus Logik oder Benutzereingaben gesteuert werden kann.Meldet Fehler im Log, falls das Schreiben fehlschlägt, damit Sie Verbindungs- oder Konfigurationsprobleme diagnostizieren können.
⚙️ Ablauf
Wenn der Block ausgeführt wird:
Wenn der Eingang
EnableFalse oder nicht vorhanden ist, wird kein Schreibvorgang versucht.Wenn kein Client am Eingang
Modbus Clientbereitgestellt ist, wird kein Schreiben durchgeführt.Wenn aktiviert und ein gültiger Client vorhanden ist, sendet der Block die bereitgestellten
Dataan die inAddresseingetragene Adresse unter Verwendung des gewähltenData Type.Fehler (Verbindungsprobleme, ungültige Adresse, nicht unterstützte Daten) werden im Log gemeldet, damit Sie entsprechend handeln können.
📝 Nutzungshinweise
Fügen Sie einen Block
Modbus Connecthinzu und verbinden Sie dessen AusgabeModbus Clientmit dem Eingang dieses BlocksModbus Client.Setzen Sie
Addressauf die Register- oder Coil-Adresse, in die Sie schreiben möchten.Wählen Sie als
Data TypeCoilfür boolean/Coils oderHolding Registerfür numerische Register.Speisen Sie Ihre Werte in den Eingang
Dataein (Einzelwert oder Liste).Verwenden Sie einen
Logic Inputoder eine andere Steuerung, umEnablezu toggeln, wenn der Schreibvorgang stattfinden soll.
💡 Tipps und Tricks
Verwenden Sie
Modbus Connect, um einen zuverlässigen Client zu erzeugen, und prüfen Sie die Verbindung mitModbus Read, bevor Sie schreiben.Steuern Sie den Eingang
Enableüber einenLogic Inputoder eine bedingte Logik (z. B.Equals/Greater), damit Schreibvorgänge nur unter gewünschten Bedingungen erfolgen.Bereiten Sie Schreibwerte mit
Number Inputvor oder stellen Sie Daten mit Blöcken wieString MergeoderData Write Global/Data Write Localzusammen, wenn Sie Werte zwischenspeichern müssen.Wenn Sie geschriebene Werte speichern oder exportieren möchten, kombinieren Sie diesen Block mit
CSV ExportoderREST API - Post, um externe Logs zu führen oder Benachrichtigungen zu senden.
🛠️ Fehlersuche
Kein Schreibvorgang: Prüfen Sie, ob der Eingang
EnableTrue ist und ein gültigerModbus Clientverbunden ist.Fehler wegen ungültiger Adresse: Stellen Sie sicher, dass
Addresseine Ganzzahl innerhalb der Geräteadresskarte ist und zum gewähltenData Typepasst.Unerwartetes Datenformat: Für
Coilverwenden Sie boolean oder eine Liste von booleans; fürHolding RegisterZahlen oder eine Liste von Zahlen.Schreibfehler: Überprüfen Sie die Verbindung mit
Modbus Readund bestätigen Sie, dass der Server Schreibzugriffe auf die Zieladresse akzeptiert. Prüfen Sie die Logmeldungen für Details.
Zuletzt aktualisiert