TCP Client-Redundanz
Um die Verfügbarbarkeit des Systems zu erhöhen, können Sie in Kombination mit CODESYS Redundancy eine zweite Steuerung mit einem redundanten Modbus TCP Client einsetzen. CODESYS Redundancy übernimmt als "Backend" die Synchronisierung der Applikation auf den beiden Steuerungen. Die native Modbus-Systemredundanz (SR) sorgt für stossfreien Datenaustausch mit den Feldgeräten.
Die Nutzung des Modbus TCP Clients mit CODESYS Redundancy erfolgt über den Funktionsbaustein RedundancyManager aus der Bibliothek IoDrvModbusTCP
.
Verwendung
Für jeden verwendeten TCP-Client müssen Sie jeweils eine Instanz des Funktionsbausteins RedundancyManager
in einem nicht synchronisierten Datenbereich, wie beispielsweise einer globalen Variablenliste, anlegen. Zusätzlich müssen Sie in der Konfigurationsdatei des Laufzeitsystems (*.cfg
) den Eintrag DataSyncAlways
hinzufügen, um die Daten zu Beginn jedes Zyklus zu synchronisieren.
[CmpRedundancy] DataSyncAlways=1
Verhalten
Auch bei Verwendung des Funktionsbausteins RedundancyManager
werden von CODESYS Modbus keine Switch-over oder Synchronsations-Aktionen durchgeführt. Die Modbus-Kommunikation reagiert lediglich auf den Redundanzzustand der jeweiligen Steuerung.
Bei Betrieb mit bestehendem Redundanz-Link der beiden Steuerungen läuft die Modbus-Kommunikation nur über die aktive Steuerung. Bei einem Wechsel (Switch-over) der aktiven Steuerung wird die Modbus-Kommunikation der nun passiven Steuerung beendet und auf der nun aktiven Steuerung aufgebaut.
Beim initialen Hochfahren des Systems ohne Redundanz-Link wird die Modbus-Kommunikation nur über die Steuerung mit ID 1 aufgebaut.
Wenn der Redundanz-Link im laufenden Betrieb verloren geht, wird die Modbus-Kommunikation auf beiden Steuerungen aktiv. Mögliche dadurch entstehende Probleme, wie doppelte Kommunikation, werden von diesem Funktionsbaustein nicht behandelt.