Inicio Blog CODESYS · Safety
CODESYS Safety · SIL2

Funciones de seguridad en CODESYS Safety: PLCopen y certificación SIL2

Septiembre 2024 8 min lectura Hexadecimal SL
CODESYS Safety SIL2 seguridad funcional maquinaria industrial

La seguridad funcional en maquinaria industrial no es opcional: la Directiva de Maquinaria europea (2006/42/CE, en revisión hacia 2023/1230/UE) exige que los sistemas de mando de seguridad cumplan con estándares como IEC 62061 o EN ISO 13849-1. Para los fabricantes de maquinaria que programan en CODESYS, CODESYS Safety es el entorno de desarrollo certificado que permite implementar funciones de seguridad hasta SIL 3 (IEC 62061) y PL e (EN ISO 13849-1). En este artículo explicamos los conceptos clave y cómo estructurar un proyecto Safety correctamente.

Seguridad funcional: conceptos básicos

La seguridad funcional es la parte de la seguridad total de un sistema que depende del correcto funcionamiento de los sistemas de control. Los niveles de integridad de seguridad:

NivelNorma IEC 62061Norma ISO 13849-1Probabilidad de fallo / hora
BajoSIL 1PL c10⁻⁶ a 10⁻⁵
MedioSIL 2PL d10⁻⁷ a 10⁻⁶
AltoSIL 3PL e10⁻⁸ a 10⁻⁷

La inmensa mayoría de las máquinas industriales requieren SIL 2 / PL d para funciones como la parada de emergencia, el enclavamiento de resguardos o el control de velocidad segura. SIL 3 se reserva para aplicaciones con riesgo de muerte masivo (prensas de gran tonelaje, maquinaria de elevación de personas, etc.).

CODESYS Safety vs. CODESYS estándar

CODESYS Safety es un entorno de desarrollo separado pero integrado en CODESYS IDE. Las diferencias clave:

Importante: CODESYS Safety requiere un target hardware certificado por un organismo notificado (TÜV, Bureau Veritas, etc.) para SIL 2/3. No cualquier PLC con CODESYS puede ejecutar código Safety. Verifica que el target que vayas a usar tiene el certificado Safety correspondiente.

Bloques funcionales PLCopen Safety

PLCopen ha definido una librería estándar de bloques funcionales de seguridad que CODESYS Safety incluye. Los más utilizados en maquinaria:

Estructura de un programa Safety en CODESYS

La estructura recomendada para un programa Safety siguiendo la filosofía PLCopen:

SafetyApplication
├── SafetyTask (1 ms, prioridad máxima, watchdog 2 ms)
│   └── SafetyPRG (programa principal Safety)
│       ├── Instancias de SF_EmergencyStop, SF_GuardMonitoring...
│       ├── Lógica de condiciones de habilitación
│       └── Gestión de salidas Safety (relés de seguridad)
├── SafetyGVL_Inputs    ← Entradas Safety mapeadas desde I/O físicas
├── SafetyGVL_Outputs   ← Salidas Safety hacia actuadores
└── SafetyGVL_Interface ← Variables compartidas con código estándar (solo lectura)

Ejemplo: SF_EmergencyStop básico

VAR
    fbEmStop    : SF_EmergencyStop;
    xChannel1   : BOOL;   (* Canal A del seta de emergencia *)
    xChannel2   : BOOL;   (* Canal B del seta de emergencia *)
    xReset      : BOOL;   (* Pulsador de reset *)
    xSafetyOK   : BOOL;   (* Salida: sistema en estado seguro *)
END_VAR

fbEmStop(
    S_EStopIn1     := xChannel1,
    S_EStopIn2     := xChannel2,
    S_AutoReset    := FALSE,
    S_StartReset   := xReset,
    S_EStopOut     => xSafetyOK,
    Error          => xFaultEmStop,
    DiagCode       => diagEmStop
);

Documentación para certificación SIL 2

El organismo certificador (TÜV, DEKRA, etc.) exigirá la siguiente documentación técnica:

  1. Especificación de requisitos de seguridad (SRS): lista de todas las funciones de seguridad, su nivel SIL/PL requerido y las condiciones de activación y respuesta.
  2. Análisis de riesgos: conforme a ISO 12100, identificando peligros, estimando el riesgo y determinando el nivel de reducción necesario.
  3. Arquitectura del sistema Safety: diagrama de bloques mostrando canales redundantes, diagnósticos y rutas de fallo.
  4. Cálculo de PFH (Probability of Failure per Hour): datos de MTTF, DC y CCF de los componentes del circuito Safety. Herramientas como SISTEMA (IFA) automatizan este cálculo.
  5. Plan de validación y pruebas: procedimientos de test funcional de cada función Safety. Debe incluir prueba de inyección de fallos (ej.: simular fallo de canal).
  6. Manual de operación y mantenimiento Safety: instrucciones para pruebas periódicas (Proof Test Interval), típicamente anuales.

Tip: CODESYS Safety genera automáticamente el Safety Application Hash — un código único que identifica exactamente la versión del código Safety descargada en el PLC. Este hash debe registrarse en la documentación de certificación y verificarse en cada cambio de software.

Conclusión

Implementar seguridad funcional con CODESYS Safety es perfectamente alcanzable para equipos con formación adecuada. Las claves son: usar siempre bloques PLCopen certificados en lugar de lógica de seguridad propia, mantener la estricta separación entre código Safety y estándar, y gestionar la documentación de certificación desde el inicio del proyecto, no al final.

En Hexadecimal tenemos experiencia en proyectos CODESYS Safety certificados SIL 2 para fabricantes de maquinaria en España y UK. Si tu proyecto requiere seguridad funcional, consúltanos en las fases tempranas de diseño para asegurar que la arquitectura es certificable desde el principio.

CODESYS System Partner · Safety · SIL 2

¿Necesitas implementar seguridad funcional en tu maquinaria?

Diseñamos e implementamos sistemas CODESYS Safety certificados SIL 2 para fabricantes de maquinaria. Desde el análisis de riesgos hasta la validación con el organismo notificado.

Hablar con un experto en Safety
Ver todos los artículos