Skip to main content

Utilizzo di un sistema di controllo ridondante

Per ulteriori informazioni, vedere: Comportamento del sistema di ridondanza durante la chiamata dei comandi

Caricamento e avvio di un'applicazione tramite una modifica online

Requisito: i PLC configurati come PLC 1 e PLC 2 sono in esecuzione e un'applicazione aggiornata è pronta per il download.

  1. Seleziona la tua applicazione nell'albero dei dispositivi.

  2. Clic In linea → Accedi.

    Si apre una finestra di dialogo che chiede come effettuare il login.

  3. Selezionare Accedi con Modifica Online.

    L'applicazione è aggiornata su PLC 1.

    PLC 2 passa alla modalità di simulazione e si sincronizza dopo circa 10 secondi. Dopodiché, entrambi i PLC sono nuovamente in modalità attiva/standby

Suggerimento

Il Attivare, Cambia, Sincronizzare, e Simulazione i comandi sono abilitati sul Stato di ridondanza scheda.

Avvio solo quando il PLC 1 è in esecuzione

Requisiti: PLC 1 è in esecuzione. È aperto un progetto standard CODESYS Development System. I parametri di comunicazione sono impostati per PLC 1.

  1. Nell'editor del dispositivo, apri il file Impostazioni di comunicazione scheda e cerca nella rete.

    I dispositivi pronti sono elencati nella Seleziona dispositivo dialogo.

  2. Seleziona il dispositivo per PLC 1 e fare clic ok per confermare la selezione.

    Le impostazioni di connessione del dispositivo sono configurate.

  3. Clic In linea → Accedi.

    L'applicazione viene scaricata in PLC 1.

  4. Debug → Avvia

    PLC 1 è in esecuzione in modalità autonoma.

  5. Avviare il sistema runtime su PLC 2.

    Inizia la fase di sincronizzazione: vengono applicati l'applicazione e i dati di ridondanza. Dopodiché, PLC 1 passa a attivo e PLC 2 passa alla modalità standby.

Caricamento di un'applicazione in modalità attiva/standby

Procedura. Scarica nel PLC attivo

Requisito: entrambi i PLC sono in esecuzione. È aperto un progetto di ridondanza CODESYS.

  1. Nell'editor del dispositivo, apri il file Impostazioni di comunicazione scheda e cerca nella rete.

    I dispositivi pronti sono elencati nella Seleziona dispositivo dialogo.

  2. Seleziona il dispositivo per PLC 1 e fare clic ok per confermare la selezione.

    Le impostazioni di connessione del dispositivo sono configurate.

  3. Clic in lineaLogin.

  4. Nella finestra di dialogo che si apre, selezionare il Accedi con download opzione.

    L'applicazione si arresta PLC 1 come di consueto anche quando si carica su un unico sistema. L'applicazione viene rimossa e viene avviata l'operazione di caricamento di una nuova applicazione. Durante questo periodo, PLC 2 passa alla modalità di simulazione della ridondanza. Dopo qualche tempo, PLC 2 tenta nuovamente la sincronizzazione. Il tentativo viene ripetuto ogni 10 secondi. Se nel tempo sono trascorsi più di 10 secondi PLC 1 inizia, PLC 2 passa alla modalità di errore, ma tenta comunque di eseguire la sincronizzazione.

  5. Cominciare PLC 1.

    La sincronizzazione si avvia e l'applicazione ei dati di ridondanza vengono trasmessi PLC 2.

Suggerimento

Download su un PLC in esecuzione in modalità standby non è supportato. Un messaggio di errore indica che è necessario accedere al PLC attivo

Implementazione di una query programmatica dello stato di ridondanza

  1. Nella POU PLC_PRG, implementa una query per lo stato di ridondanza.

    PROGRAM PRG_PLC
    VAR
     sReduState: RedundancyState;
     bResult: BOOL;
    END_VAR
    
    bResult := RDCY.GetRedundancyState(ADR(sReduState));
  2. Accedere PLC 1 e confermare una modifica online.

    PLC 1 e PLC 2 avviarsi in successione e passare alla modalità attiva/standby. Ora il state.eRedundancyState la variabile ottiene lo stato corrente in modo da poterlo monitorare.

    Nota

    Suggerimento: lo stato attuale viene visualizzato anche sul Stato di ridondanza scheda.

Testare un'applicazione per l'uguaglianza

Verificare se la stessa applicazione viene eseguita o meno su entrambi i PLC.

Requisito: il sistema di ridondanza è in modalità attiva/standby e un'applicazione è in esecuzione.

  1. Connetti a PLC 2.

    A tale scopo, imposta la connessione con il gateway del dispositivo. Oppure, più comodamente, usa Scambia i percorsi del PLC pulsante nel Configurazione della ridondanza.

  2. In linea → Accedi

    Se non viene visualizzato alcun messaggio di download, entrambe le applicazioni sono uguali.

Simulazione di un errore del controller

  1. Fermare PLC 1 durante il runtime.

    Il grafico di sistema indica il Sconosciuto stato (rdncy_icon_state_unknown.png) per PLC 1. PLC 2 passa subito al Indipendente, autonomo stato (rdncy_icon_state_standalone.png).

  2. Riavvia il PLC 1 dispositivo.

    PLC 1 passa a Standby (rdncy_icon_state_passive.png). PLC 2 passa a Attivo (rdncy_icon_state_active.png).

Riconnessione di un controller

Non automatico Riconnetti (disconnessione e riconnessione del collegamento) è inclusa nell'ambito funzionale dei componenti di ridondanza. Questo perché le condizioni specifiche sono rilevanti a seconda dell'applicazione e del dispositivo. Tuttavia, è possibile programmare l'attivazione di una riconnessione con la seguente implementazione

Esempio 2. Esempio
PROGRAM PLC_PRG
VAR
        sReduState: RedundancyState;
        sSyncInfo: SYNC_INFO;
        sPlcIdent: PLC_IDENT;
        xConnectionState: BOOL;
        xResult: BOOL;
END_VAR

(* Collect information *)
GetRedundancyState(ADR(sReduState));
xConnectionState := GetConnectionState();
sPlcIdent := GetPlcIdent();

(* If in standalone mode, and connection is possible, re-synchronize from PLC2 *)
IF sReduState.eRedundancyState = RDCY.STATE.RS_CYCLE_STANDALONE AND xConnectionState AND xResult = FALSE AND sPlcIdent = RDCY.PLC_IDENT.PLC_ID_2 THEN
        xResult := RDCY.Synchronize();
END_IF


Configurazione delle impostazioni del firewall

Sia TCP che UDP vengono utilizzati per la sincronizzazione della ridondanza. Una porta IP è impostata per il collegamento di ridondanza. Questo è usato per UDP. La porta+1 è usata per TCP.

Esempio 3. Esempio

La porta 1205 è impostata come predefinita.

Porte da sbloccare

UDP: Port 1205
TCP: Port 1206