Skip to main content

SF_Antivavalente

Normas de seguridad aplicables

SF_Antivalent es un bloque de funciones PLCopen certificado. Para obtener información detallada sobre los estándares aplicados, consulte: "PLCopen – Comité Técnico 5 – Software de seguridad"

Importante

El usuario debe cumplir los requisitos enumerados en las normas.

Descripción de la interfaz

Este bloque de funciones convierte dos antivalentes SAFEBOOL entradas (NO/NC par) a uno SAFEBOOL salida con control de tiempo de discrepancia. Este FB no debe utilizarse de forma independiente, ya que no tiene interbloqueo de reinicio. Es necesario conectar la salida a otras funcionalidades relacionadas con la seguridad.

tabla 13. VAR_INPUT

Nombre

Tipo de datos

Valor inicial

Descripción, valores de parámetros

Activate

BOOL

FALSE

Ver Parámetros de entrada generales

S_ChannelNC

SAFEBOOL

FALSE

Variable

NC representa Normally Closed.

Entrada para conexión NC

FALSE: contacto NC abierto

TRUE: contacto NC cerrado

S_ChannelNO

SAFEBOOL

TRUE

Variable

NO significa normalmente abierto

Entrada para conexión NA

FALSE: contacto NA abierto

TRUE: contacto NA cerrado

DiscrepancyTime

TIME

T#0ms

Constante

Tiempo máximo de monitorización del estado de discrepancia de ambas entradas

Debe tenerse en cuenta la nota de precaución "DiscrepancyTime".



DiscrepancyTime

Aplica para desarrolladores en Nivel Extendido: El DiscrepancyTime La entrada debe activarse con un valor constante. Como resultado, el valor no debe cambiarse para las llamadas.

tabla 14. VAR_OUTPUT

Nombre

Tipo de datos

Valor inicial

Descripción, valores de parámetros

Ready

BOOL

FALSE

Ver Parámetros generales de salida

S_AntivalentOut

SAFEBOOL

FALSE

Salida relacionada con la seguridad

FALSE: Mínimo de una señal de entrada "no activa" o cambio de estado fuera del tiempo de supervisión

TRUE: Ambas entradas señalan "activas" y el estado cambia dentro del tiempo de vigilancia.

SafetyDemand

BOOL

FALSE

Ver Parámetros generales de salida

Error

BOOL

FALSE

Ver Parámetros generales de salida

DiagCode

WORD

16#0000

Ver Códigos de diagnóstico



Sugerencia

"Antivavalente" significa que durante el funcionamiento normal, las dos entradas están en estados opuestos al mismo tiempo. Esto a veces se denomina "complementario" o "no equivalente".

Para ciertos niveles (más bajos) de requisitos de seguridad, se puede permitir el uso de BOOL como entradas y SAFEBOOL como salida. Sin embargo, esto debe evaluarse a través del FMEA de la aplicación. En la biblioteca, se debe hacer una distinción entre el SAFEBOOL y BOOL versión.

figura 14. Bloque de funciones: SF_Antivalent
Bloque de funciones: SF_Antivalent


Descripcion funcional

Este bloque de funciones convierte dos antivalentes SAFEBOOL entradas a uno SAFEBOOL salida con control de tiempo de discrepancia. Ambas entradas son interdependientes. La salida del bloque de funciones muestra el resultado de la evaluación de ambos canales.

Si S_AntivalentOut = TRUE y una de las entradas relacionadas con la seguridad cambia, la salida cambia inmediatamente a FALSE.

Supervisión del tiempo de discrepancia: El tiempo de discrepancia es el período máximo durante el cual ambas entradas pueden tener los mismos estados sin que el bloque de función detecte un error. La supervisión del tiempo de discrepancia comienza cuando cambia el estado de una entrada. El bloque de funciones detecta un error cuando ambas entradas tienen los mismos valores una vez transcurrido el tiempo de discrepancia.

Ambas entradas deben conmutarse simétricamente. Esto significa que la supervisión se realiza para ambas entradas para cambiar de TRUE para FALSE así como para cambiar de FALSE para TRUE.

tabla 15. Tabla lógica de entradas y salidas

Entradas

Salidas

Activate

S_ChannelNC

S_ChannelNO

DiscrepancyTime

Ready

S_AntivalentOut

SafetyDemand

Error

DiagCode

FALSE

FALSE

TRUE

No empezado

FALSE

FALSE

FALSE

FALSE

16#0000

TRUE

FALSE

TRUE

No empezado

TRUE

FALSE

TRUE

FALSE

16#8801

TRUE

FALSE -> TRUE

TRUE

Comenzó

TRUE

FALSE

TRUE

FALSE

16#8802

TRUE

TRUE

TRUE -> FALSE

Comenzó

TRUE

TRUE

FALSE

FALSE

16#8000

TRUE

TRUE

FALSE

No empezado

TRUE

TRUE

FALSE

FALSE

16#8000

TRUE

TRUE

FALSE -> TRUE

Comenzó

TRUE

FALSE

TRUE

FALSE

16#8806

TRUE

TRUE -> FALSE

TRUE

Comenzó

TRUE

FALSE

TRUE

FALSE

16#8801

TRUE

FALSE

TRUE

No empezado

TRUE

FALSE

TRUE

FALSE

16#8801

TRUE

FALSE

TRUE -> FALSE

Comenzó

TRUE

FALSE

TRUE

FALSE

16#8804

TRUE

FALSE -> TRUE

FALSE

Comenzó

TRUE

TRUE

FALSE

FALSE

16#8000

TRUE

TRUE -> FALSE

FALSE

Comenzó

TRUE

FALSE

TRUE

FALSE

16#8806

TRUE

FALSE

FALSE -> TRUE

Comenzó

TRUE

FALSE

TRUE

FALSE

16#8801



Sugerencia

En la tabla lógica, una flecha -> representa una transición. TRUE -> FALSE significa que el valor de la variable jas cambió de TRUE para FALSE.

Diagrama de estado

figura 15. Diagrama de estado: SF_Antivalent
Diagrama de estado: SF_Antivalent


Sugerencia

La transición de cualquier estado al Idle estado debido a Activate = FALSE no se muestra Sin embargo, estas transiciones tienen la máxima prioridad.

Diagramas de tiempo típicos

figura 16. Diagrama de tiempo 1: SF_Antivalent
Diagrama de tiempo 1: SF_Antivalent


figura 17. Diagrama de tiempo 2: SF_Antivalent
Diagrama de tiempo 2: SF_Antivalent


Detección de errores

El bloque de funciones monitorea el tiempo de discrepancia entre Channel NO y canal NC.

Comportamiento de error

La salida S_AntivalentOut se establece en FALSE. Error se establece en TRUE. DiagCode indica los estados de error. No hay reinicio definido como una entrada junto con el reinicio de un error. Tan pronto como un conjunto de valores de entrada con la correcta S_AntivalentOut está presente, Error es FALSE otra vez.

Códigos de estado y error específicos del bloque de funciones

tabla 16. Códigos de error específicos de FB

DiagCode

Nombre del Estado

Estado Descripción y configuración de salida

16#C010

Error 1

Tiempo de discrepancia transcurrido en el estado 16#8802

Ready = TRUE

S_AntivalentOut = FALSE

SafetyDemand = FALSE

Error = TRUE

16#C020

Error 2

Tiempo de discrepancia transcurrido en el estado 16#8804

Ready = TRUE

S_AntivalentOut = FALSE

SafetyDemand = FALSE

Error = TRUE

16#C030

Error 3

Tiempo de discrepancia transcurrido en el estado 16#8806

Ready = TRUE

S_AntivalentOut = FALSE

SafetyDemand = FALSE

Error = TRUE



tabla 17. Códigos de estado específicos de FB

DiagCode

Nombre del Estado

Estado Descripción y configuración de salida

16#0000

Idle

El bloque de funciones no está activo (estado inicial).

Ready = FALSE

S_AntivalentOut = FALSE

SafetyDemand = FALSE

Error = FALSE

16#8801

Init

El FB ha detectado una activación y ahora el FB está activado.

Ready = TRUE

S_AntivalentOut = FALSE

SafetyDemand = TRUE

Error = FALSE

16#8000

Safety Output Enabled

Las entradas se cambian a TRUE en modo antivalente.

Ready = TRUE

S_AntivalentOut = TRUE

SafetyDemand = FALSE

Error = FALSE

16#8802

Wait for NO

ChannelNC ha sido cambiado a TRUE - esperando ChannelNO ser cambiado a FALSE; se inició el temporizador de discrepancia.

Ready = TRUE

S_AntivalentOut = FALSE

SafetyDemand = TRUE

Error = FALSE

16#8804

Wait for NC

ChannelNO ha sido cambiado a FALSE - esperando ChannelNC ser cambiado a TRUE; se inició el temporizador de discrepancia.

Ready = TRUE

S_AntivalentOut = FALSE

SafetyDemand = TRUE

Error = FALSE

16#8006

From Active Wait

Un canal se ha cambiado a inactivo; esperando que el segundo canal también se cambie a inactivo.

Ready = TRUE

S_AntivalentOut = FALSE

SafetyDemand = TRUE

Error = FALSE