Redundantes Steuerungssystem
Sie können die Zuverlässigkeit Ihres Steuerungssystems erhöhen, indem Sie Ihre aktive Steuerung (SPS) durch eine Redundanz-SPS absichern.
Die redundante SPS kann zur Laufzeit jederzeit die Applikationsausführung übernehmen. Die Rollen der aktiven und der Standby-SPS können dynamisch zwischen beiden Steuerungen wechseln. Dadurch lassen sich Systemausfälle vermeiden oder deren Auswirkungen deutlich reduzieren. Redundante Steuerungssysteme erhöhen die Ausfallsicherheit, Verfügbarkeit und Betriebskontinuität kritischer Industrieanlagen oder auch kleineren Maschinen.

Die Abbildung zeigt ein Automatisierungsszenario bestehend aus der Entwicklungsumgebung, dem redundanten Steuerungssystem aus zwei SPSen sowie einer über Feldbusse angebundenen Maschinenumgebung. Die Applikation läuft darin parallel auf zwei SPSen: Eine SPS arbeitet aktiv (1), während die zweite im Standby-Betrieb bereitsteht (2). Die SPS im Standby-Betrieb liest die Eingänge des verbundenen Feldbussystems (im Beispiel EtherCAT) mit aus und synchronisiert sich über die Redundanzverbindung (3) kontinuierlich mit der aktiven SPS. Das ermöglicht, dass die Standby-SPS bei einem Störereignis sofort aktiv werden und die Ansteuerung der Feldbusse (4) unterbrechungsfrei übernehmen kann.
Die Redundanzverbindung (3) nutzt standardmäßig TCP oder UDP. Auf Wunsch kann die Kommunikation jedoch auch über eine herstellerspezifische Kommunikationskomponente bereitgestellt werden.
Zusätzlich können Visualisierungen, wenn sie als CODESYS WebVisu in einem Browser ausgeführt werden, mit einem redundanten Steuerungssystem verbunden sein. Die Visualisierungsclients werden im Fall einer Umschaltung nahezu unterbrechungsfrei weiterlaufen.
Hinweis
Das Video soll Ihnen einen generellen Überblick zu diesem Feature bieten. Der darin zu sehende Funktionsumfang des CODESYS Redundancy Configuration weicht möglicherweise vom aktuellen Funktionsumfang ab.
Grundlegendes zur Funktionsweise
Der Applikationsentwickler lädt die Applikation zunächst auf die erste SPS und erzeugt dort die Bootapplikation. Beim Start synchronisiert sich die zweite SPS mit dieser Steuerung und übernimmt auch die Bootapplikation.
Nach dem Laden und Initialisieren der Bootapplikation ist die SPS bereit, den ersten Taskzyklus auszuführen. Anschließend werden alle registrierten Speicherbereiche (alle IEC‑Daten) auf die zweite SPS übertragen. Ab diesem Zeitpunkt ist die Redundanz aktiv und beide SPSen führen die Applikationstask synchron aus. Die Synchronisierung der Taskausführung erfolgt über Meldungen, die vor und nach jedem IEC‑Task über die Redundanzverbindung ausgetauscht werden.
Es gibt keine fest definierte oder bevorzugte aktive SPS. Die Betriebsart ergibt sich aus der Reihenfolge des Hochfahrens: Die zuerst gestartete SPS sendet eine Meldung an die andere SPS über die Redundanzverbindung. Bleibt die Antwort aus, lädt die gestartete SPS trotzdem die Bootapplikation und arbeitet im Standalone‑Betrieb.
Erhält die Standby‑SPS innerhalb der konfigurierten Zeit keine Meldung der aktiven SPS, geht sie davon aus, dass die aktive SPS ausgefallen ist und wechselt in den Standalone‑Betrieb. Sie übernimmt die Kontrolle über die Feldbus‑E/As. Umgekehrt schaltet auch die aktive SPS in den Standalone‑Betrieb, wenn Meldungen der Standby‑SPS ausbleiben.
Wenn die erste SPS ersetzt und erneut gestartet wird, synchronisiert sie sich wie oben beschrieben mit der aktuell im Standalone-Betrieb befindlichen anderen SPS und geht damit in den Standby-Betrieb.
Eine Standby-SPS kann in den Simulationsbetrieb versetzt werden. Währenddessen ist die Redundanzfunktionalität deaktiviert. Auch die Anbindung an den Feldbus bleibt (so wie im Standby‑Betrieb) deaktiviert. Die aktive SPS wechselt währenddessen in den Standalone-Betrieb. Der Simulationsbetrieb kann durch erneute Synchronisierung oder durch erneutes Starten beendet werden. Dann kehrt die in Simulation betriebene Steuerung in den Standby-Betrieb zurück, sofern keine Fehler während der Synchronisierung oder des Neustarts auftreten.
Treten während der Aktualisierung der Bootapplikation, beim Übertragen der registrierten Speicherbereiche oder im Redundanzzyklus Fehler auf, schaltet die SPS in den Fehlerbetrieb. Danach ist eine erneute Synchronisierung oder ein Neustart erforderlich.
Benutzeroberfläche
Das Add-on CODESYS Redundancy Configuration

Registerkarte Redundanzstatus
Zur Laufzeit überwacht CODESYS das Redundanzsystem und stellt die aktuellen Zustände dort dar. Dort können Sie auch auf die wichtigsten Redundanzbefehle zugreifen und beispielsweise ein Umschalten (Switchover) zwischen den Zuständen befehlen.
Registerkarte Redundanzeinstellungen
Hier können Sie die Kommunikationseinstellungen der Redundanzverbindung konfigurieren und die maßgebliche Task und eine Zeitüberwachung festlegen.
Registerkarte Allgemein
Registerkarte Visualisierung
Hier können Sie eine Redundanzverbindung zwischen den Webservern konfigurieren, die jeweils auf einer SPS laufen. Damit können Sie Visualisierungen, die als CODESYS WebVisu in einem Browser ausgeführt werden, mit dem redundanten Steuerungssystem verbinden.
Registerkarte Registrierte Bereiche
Hier können Sie die Daten und Bereiche, die zur Laufzeit synchronisiert werden sollen, verwalten.
Registerkarte Log
Listet die historischen Redundanzereignisse aus dem Logger der SPS auf
EtherCAT (CODESYS GmbH Stack)
Profinet
CANopen
Sie konfigurieren Ihren Feldbus im Objekt Redundanzkonfiguration in der Registerkarte Redundanzeinstellung in Registerkarte Feldbus-Einstellungen.
Für weitere Informationen siehe: Registerkarte Feldbus-Einstellungen
Bibliothek: Redundancy
Die Bibliothek Redundancy Implementation, die von der Bibliothek Redundancy angezogen wird, liefert Bausteine wie SwitchToActive oder SwitchToStandby, so dass Sie programmatisch auf die Redundanzkomponente zugreifen können. Beispielsweise können Sie das Umschalten der Steuerungen in den aktiven Betrieb mit SwitchToActive programmieren.
Bibliothek: VisuRedundancy
Die Bibliothek VisuRedundancy implementiert die Redundanzverbindung für die Visualisierung und stellt Funktionsbausteine zur Verfügung, um beispielsweise Aktivitäten zu überwachen.
Laufzeitsystem
Redundanzkomponenten im Laufzeitsystem
Für den redundanten Betrieb eines Steuerungssystems stellt das Laufzeitsystem zwei zentrale Komponenten bereit:
CmpRedundancyDiese Komponente übernimmt alle Funktionen zur Verwaltung des Redundanzbetriebs, einschließlich Rollenverteilung (Active/Standby), Datensynchronisation und Überwachung der Kommunikationszustände.
Komponente für die Redundanzverbindung
Diese Komponente ist gerätespezifisch und stellt die physikalische und logische Verbindung zwischen den beiden Steuerungen her. In den meisten Geräten kommt eine IP‑basierte Verbindung zum Einsatz, die über die Komponente
CmpRedundancyConnectionIPbereitgestellt wird.
Funktionalität
Verbindet zwei SPSen zu einem redundanten System
Synchronisiert die Redundanzdaten
Schaltet die Betriebszustände der SPSen um (Switchover)
Zeichnet die Redundanzereignisse im Logger auf
Anmerkung
Zur Laufzeit auftretende Ereignisse werden auf beiden Geräten von den Loggern der Laufzeitsysteme aufgezeichnet.
Die Konfigurationsdatei *.cfg für das LZS einer CODESYS Control Win ist unter ProgramData abgelegt.
[CmpRedundancyConnectionIP] Link1.IpAddressLocal=192.168.56.1 ; IP address of redundancy link of local PLC Link1.IpAddressPeer=192.168.56.101 ; IP address of redundancy link of peer PLC Link1.Port=1205 [CmpRedundancy] BootupWaitTime=5000 TcpWaitTime=2000 StandbyWaitTime=50 ; This timeout depends on the quality of real time task and communication system LockTimeout=20 ; Maximum time of timer lock Bootproject=Application ; Name of your CODESYS application RedundancyTaskName=MainTask ; Task name in your CODESYS application PlcIdent=1 ; PlcIdent=2 on other PLC
Bootapplikation
Die Bootapplikation wird auf beiden Steuerungen identisch abgelegt.
Um eine Aktualisierung vorzunehmen, genügt es, die neue Bootapplikation auf die aktive Steuerung zu laden. Die Standby‑Steuerung erhält die aktualisierte Version automatisch während der Synchronisation.

