Description de la fonction

Le bloc fonction S_EQUIVALENT permet de convertir deux entrées BOOL équivalentes (toutes deux normalement fermées NC ou normalement ouvertes NO) en une sortie BOOL avec surveillance de la durée d'écart.

NOTE : Le bloc fonction S_EQUIVALENT ne comprend pas d'interverrouillage de redémarrage. Par conséquent, vous devez l'utiliser avec d'autres fonctions de sécurité, et non comme bloc de sécurité autonome.

EN et ENO peuvent être configurés comme paramètres supplémentaires.

Représentation en FBD

Représentation

Description des paramètres

Paramètres d'entrée :

  • Activate

  • S_ChannelA

  • S_ChannelB

  • DiscrepancyTime

Paramètres de sortie :

  • Ready

  • S_EquivalentOut

  • Error

  • DiagCode

Paramètres d'entrée

Paramètre

Type de données

Valeur d'initialisation

Signification

Activate

BOOL

FALSE

Valeur variable ou constante indiquant l'état d'activation du bloc fonction. Ce paramètre peut être relié à la variable qui représente l'état (actif ou inactif) de l'équipement de sécurité adéquat. Aucune information de diagnostic non pertinente n'est générée lorsqu'un équipement est désactivé :

  • Si la valeur est FALSE, toutes les variables de sortie sont définies sur leur valeur initiale.

  • En l'absence d'équipement connecté, attribuez un signal TRUE statique.

S_ChannelA

BOOL

FALSE

Valeur variable provenant de l'entrée A :

  • FALSE : contact A ouvert.

  • TRUE : contact A fermé.

S_ChannelB

BOOL

FALSE

Valeur variable provenant de l'entrée B :

  • FALSE : contact B ouvert.

  • TRUE : contact B fermé.

DiscrepancyTime

TIME

T#0ms

Temps de surveillance maximal configurable de type constante pour la comparaison des valeurs S_ChannelA et S_ChannelB.

Paramètres de sortie

Paramètre

Type de données

Valeur d'initialisation

Signification

Ready

BOOL

FALSE

  • TRUE : le bloc fonction est actif et les résultats en sortie sont valides (fonction identique au voyant d'alimentation d'un relais de sécurité).

  • FALSE : le bloc fonction est inactif et le programme n'est pas exécuté.

NOTE : Ce paramètre est utile en mode débogage ou pour activer/désactiver d'autres blocs fonction, ainsi que pour opérer des traitements supplémentaires dans le programme fonctionnel.

S_EquivalentOut

BOOL

FALSE

Valeur de sortie basée sur la comparaison des valeurs des deux voies d'entrée :

  • FALSE : une des conditions suivantes se vérifie :

    • Un signal d'entrée au moins est sur FALSE.

    • L'état a changé, puis est resté tel quel pendant une durée supérieure au paramètre DiscrepancyTime.

  • TRUE : les deux signaux d'entrée sont actifs et le changement d'état respecte le paramètre DiscrepancyTime.

Error

BOOL

FALSE

Message d'erreur détectée du bloc fonction.

DiagCode

WORD

16#0000

Message de diagnostic du bloc fonction.

Chronogrammes typiques

Diagramme des états

Le diagramme suivant décrit les transitions entre les différents états du bloc fonction S_EQUIVALENT :

Source : PLCopen - Technical Committee 5, Safety Software, Technical Specification, Part 1: Concepts and Function Blocks, Version 1.0.

NOTE : Le passage d'un état quelconque à l'état Idle, car Activate = FALSE, n'est pas illustré. Cette transition a la priorité la plus élevée (0).

Fonction de détection d'erreur

Le bloc fonction S_EQUIVALENT surveille la durée d'écart entre les entrées S_ChannelA et S_ChannelB, lorsqu'elles deviennent TRUE et aussi lorsqu'elles deviennent FALSE.

Gestion des erreurs détectées

En cas de détection d'une erreur, S_EquivalentOut est défini sur FALSE et Error sur TRUE. Le paramètre DiagCode peut présenter l'une des valeurs d'erreur détectée suivantes :

DiagCode

Nom de l'état

Description de l'état et paramètres de sortie

C001

Erreur 1

Durée DiscrepancyTime écoulée à l'état 8004 :

  • S_EquivalentOut = FALSE

  • Error = TRUE

C002

Erreur 2

Durée DiscrepancyTime écoulée à l'état 8014 :

  • S_EquivalentOut = FALSE

  • Error = TRUE

C003

Erreur 3

Durée DiscrepancyTime écoulée à l'état 8005 :

  • S_EquivalentOut = FALSE

  • Error = TRUE

Gestion des codes de diagnostic

Lorsqu'un message d'état est renvoyé, le paramètre Error est défini sur FALSE, et le paramètre DiagCode affiche l'une des valeurs hexadécimales suivantes :

DiagCode

Nom de l'état

Description de l'état et paramètres de sortie

0

IDLE

Le bloc fonction est inactif (état initial) :

  • S_EquivalentOut = FALSE

  • Error = FALSE

8001

INIT

Le bloc détecte une activation et est désormais activé :

  • S_EquivalentOut = FALSE

  • Error = FALSE

8000

Sortie de sécurité activée

Les entrées sont devenues TRUE en mode équivalent :

  • S_EquivalentOut = TRUE

  • Error = FALSE

8004

En attente de la voie B

S_ChannelA est devenu TRUE. Le bloc fonction attend désormais S_ChannelB. Le temporisateur d'écart a démarré :

  • S_EquivalentOut = FALSE

  • Error = FALSE

8014

En attente de la voie A

S_ChannelB est devenu TRUE. Le bloc fonction attend désormais S_ChannelA. Le temporisateur d'écart a démarré :

  • S_EquivalentOut = FALSE

  • Error = FALSE

8005

En attente d'un changement d'état actif

Une voie d'entrée est devenue FALSE. Le bloc fonction attend désormais que l'autre voie d'entrée devienne aussi FALSE : Le temporisateur d'écart a démarré :

  • S_EquivalentOut = FALSE

  • Error = FALSE