Redundancia del controlador
Para aumentar la disponibilidad del sistema, puede utilizar un segundo controlador con redundancia PROFINET controlador combinado con CODESYS Redundancy. CODESYS Redundancy actúa como un "backend" para sincronizar la aplicación en los dos controladores. El nativo PROFINET la redundancia del sistema (SR) garantiza un intercambio de datos fluido con los dispositivos de campo.
Con el PROFINET redundancia del sistema, ambos controladores mantienen una conexión (AR = relación de aplicación) entre sí PROFINET dispositivo de campo compatible con la redundancia del sistema S2. Una de las conexiones tiene la PRIMARY
rol, y la otra conexión tiene el BACKUP
role. Aquí, sólo la conexión con el PRIMARY
El rol transmite datos válidos. Si la conexión con el PRIMARY
rol falla, entonces es posible cambiar sin problemas a la conexión con el BACKUP
papel, que ahora se convierte en el nuevo PRIMARY
conexión, en el menor tiempo posible. Operación mixta con PROFINET Es posible utilizar dispositivos de campo que no admitan la redundancia del sistema S2. Sin embargo, en este caso la transmisión de datos se interrumpe brevemente cuando falla la conexión porque se establece una nueva conexión completa. PROFINET la redundancia del sistema se puede ampliar con otros mecanismos de redundancia, como MRP ("redundancia de línea").
Configuración del tiempo de ejecución de CODESYS
[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 DataSyncAlways=1 PlcIdent=1 ;// Redundant Controller = 2 !!! SyncWaitTime=100;
Configuración en el proyecto
En el proyecto, la configuración como la dirección IP y el nombre de la estación del controlador para el PROFINET El controlador también debe configurarse en el segundo controlador (PLC 2).
Cuando el Configuración de redundancia se inserta un objeto en el proyecto, hay configuraciones adicionales para el EtherNet Adapter en el PLC 2 en el EtherNet Adapter dispositivo.
En la configuración del controlador, un adicional Redundancia del sistema Se muestra la pestaña para la configuración que debe usarse en el PLC 2. Los dispositivos de campo que admiten la redundancia del sistema S2 se configuran automáticamente en este modo.
Importante
Él CODESYS Redundancy permite únicamente la sincronización de una única tarea. En esta tarea, todos PROFINET Se deben utilizar datos de E/S, por lo que la asignación de E/S se debe realizar solo con las variables existentes. porque solo el PROFINET controlador con el PRIMARY
la conexión recibe datos de E/S válidos, no PROFINET Los datos de E/S deben procesarse en un controlador de RESPALDO. PROFINET bloques de funciones para servicios acíclicos (por ejemplo, RDREC
, WRREC
) o procesamiento de alarmas (por ejemplo, RALARM
) no debe usarse dentro de la tarea sincronizada o las áreas de datos sincronizados.
La prioridad de la tarea redundante debe ser significativamente menor que la de la PROFINET Tarea de E/S.
El comportamiento estándar del PROFINET controlador durante el funcionamiento:
Cuando el rol del controlador es "Activo", el PROFINET controlador (y todas las conexiones) son
PRIMARY
.Cuando la función del controlador es "Standby", el PROFINET controlador (y todas las conexiones) son
BACKUP
.Cuando la función del controlador es "Independiente" en el momento del inicio, solo el PROFINET controlador en el PLC 1 es el
PRIMARY
controlador.Cuando el rol del controlador cambia a "Independiente" (conexión de redundancia interrumpida o falla del otro PLC), el PROFINET controlador conserva su función actual.
Él RedundancyManager El bloque de funciones amplía el comportamiento estándar con un útil manejo de errores:
Cuando las conexiones de un
PRIMARY
finalizan el controlador (apagado completo de todas las conexiones o finalización de una sola conexión), el controlador de reserva cambia a "Activo" y su PROFINET el controlador se convierte en el nuevoPRIMARY
controlador.Cuando el PROFINET controlador en uno de los dos controladores tiene una falla (por ejemplo, no hay red), este controlador se cambia a "Simulación".
Atención: el RedundancyManager no debe definirse en un área sincronizada, sino, por ejemplo, en una lista de variables globales.