Skip to main content

Récepteur NetVar

Bibliothèque: SafetyNetVar

Astuce

La version du bloc fonctionnel telle que décrite ici correspond à la dernière version du bloc fonctionnel dans Liste des versions des blocs fonctionnels.

Utilisation de l'instance FB (instance du pilote)

. Le NetVarReceiver Le bloc fonctionnel est utilisé dans l'application pour...
  • Modifier les valeurs par défaut

  • Reconnaître les erreurs manuellement

  • Diagnostiquer la connexion à un bloc de fonction NetVarSender

Pour ce faire, l'instance correspondante du bloc de fonction NetVarReceiver doit être rendue visible dans un programme dans la partie déclaration au moyen de VAR_EXTERNAL <name of the safety network variable list (receiver)> : NetVarReceiver.

Taux d'erreur résiduel

La spécification exige que les erreurs de communication signalées par l'instance du pilote ne se produisent pas plus d'une fois toutes les cinq heures. De cette manière, le taux d'erreur résiduel par heure pour les signaux axés sur la sécurité reste inférieur à la valeur limite SIL3 de 10-9.

sil3_img_lib_NetVarReceiver.png
Tableau 123. Entrées (VAR_INPUT)

Nom

Type de données

Valeur initiale

Description

S_ActivateIn

SAFEBOOL

TRUE

Entrée pour contrôler les données d'entrée

TRUE:Les valeurs valides et actuelles des variables réseau de l'objet liste de variables réseau de sécurité (expéditeur) sont transmises à l'application et copiées dans l'image de l'application.

FALSE:Pour ce cycle, des valeurs de substitution aux données d'entrée sont transmises à l'application.

StartReset

BOOL

TRUE

Saisir <erreur de démarrage automatique> pour la reconnaissance automatique des erreurs au démarrage.

Pour une description de l'entrée <erreur de démarrage automatique> et les consignes de sécurité que vous devez respecter sans réserve, consultez le Bus de terrain – Partie générale chapitre.

AutoReset

BOOL

FALSE

Saisir <interruption d'accusé de réception automatique> pour l'accusé de réception automatique après interruptions.

Pour une description de l'entrée <interruption d'accusé de réception automatique> et les consignes de sécurité que vous devez respecter sans réserve, consultez le Bus de terrain – Partie générale chapitre.

Reset

BOOL

FALSE

Saisir <ack-edge> pour l'accusé de réception manuel.

Pour une description de l'entrée <-ack-edge> et les consignes de sécurité que vous devez respecter sans réserve, consultez le Bus de terrain – Partie générale chapitre.



Tableau 124. Sorties (VAR_OUTPUT)

Nom

Type de données

Valeur initiale

Description

S_InReady

SAFEBOOL

FALSE

Sortie indiquant si des données d'entrée valides existent ou non.

TRUE:Les valeurs de variables réseau valides ont été reçues par la liste de variables réseau de sécurité (expéditeur) et copiées dans l'image de l'application.

FALSE:Les données d'entrée de l'application ont été définies sur les valeurs de substitution.

Error

BOOL

FALSE

Affichage d'erreur

DiagCode

WORD

0

Voir Code de diagnostic

OpAckReq

BOOL

FALSE

Sortir <requête d'accusé de réception> pour demander un accusé de réception manuel.

Pour une description de l'entrée <interruption d'accusé de réception automatique> et les consignes de sécurité que vous devez respecter sans réserve, consultez le Bus de terrain – Partie générale chapitre.

tRespTimeMS

TIME

TIME#0ms

Temps de réponse réel de la liste des variables du réseau de sécurité (expéditeur)

tMinRespTimeMS

TIME

TIME#0ms

Temps de réponse minimum de la liste des variables du réseau de sécurité (expéditeur)

tMaxRespTimeMS

TIME

TIME#0ms

Temps de réponse maximal de la liste des variables du réseau de sécurité (expéditeur)



Code de diagnostic

Le code de diagnostic est divisé en deux catégories :

  • 16#8XXX états de communication avec transmission

  • 16#CXXX états d'erreur

États de communication avec transmission

Figure 126. États et transitions de la communication avec transmission
États et transitions de la communication avec transmission


Le code de diagnostic peut avoir les valeurs suivantes dans les états de communication avec transmission :

DiagCode = 0x80xx, contient l'état du NetVarReceiver

État

Valeurs pour XX

Description

Reset

0x64

La connexion est réinitialisée (les données d'entrée sont dans un état sûr).

Session

0x65

L'ID de session est transmis (les données d'entrée sont dans un état sécurisé).

Connection

0x66

L'ID de connexion est transmis (les données d'entrée sont dans un état sécurisé).

Parameters

0x67

Les paramètres sont transmis (les données d'entrée sont dans un état sûr).

Data

0x68

Des données ou des valeurs de substitution sont transmises.

États d'erreur

Si deux erreurs se produisent simultanément dans le NetVarReceiver, seule l'erreur ayant la priorité la plus élevée est affichée. Les priorités des erreurs sont attribuées en fonction de la catégorie d'erreur :

  • 1ère catégorie d'erreur : DiagCode = 16#C0xx, erreur d'initialisation

  • 2ème catégorie d'erreur : DiagCode = 16#C1xx, liste des variables du réseau de sécurité des erreurs du récepteur (récepteur)

  • 3ème catégorie d'erreur : DiagCode = 16#C2xx, erreurs signalées à partir de la liste des variables du réseau de sécurité (expéditeur)

Diagcode = 16#C0xx, xx contient un code d'erreur supplémentaire spécifique à l'erreur

Valeurs pour XX

Description

16#01-16#04, 16#06-16#0A, 16#0C, 16#0D

Erreurs internes

16#05

La longueur des données sécurisées n'est pas prise en charge

(32 octets de données max. sont pris en charge)

16#0B

Heure de surveillance non valide ; valeur 0 n'est pas autorisé

Détection d'erreur du NetVarReceiver

wDiagCode = 16#C1xx, xx contient un code d'erreur supplémentaire spécifique à l'erreur

Valeurs pour XX

Description

16#00

Réinitialisation locale ou acquittement d'une commande de réinitialisation

16#01

Commande inattendue dans le télégramme reçu

16#02

Commande inconnue dans le télégramme reçu

16#03

ID de connexion non valide dans le télégramme reçu

16#04

Erreur CRC pour le télégramme reçu

16#05

Erreur de surveillance ; aucun télégramme valide n'a été reçu dans le délai de surveillance

16#07

Données de sécurité non valides dans le télégramme reçu

16#FE

Erreur Reset signal

16#FF

Demande de confirmation du redémarrage

Erreur – Réponse de la liste des variables du réseau de sécurité (expéditeur)

wDiagCode = 16#C2XX, XX contient un code d'erreur supplémentaire spécifique à l'erreur

Valeurs pour XX

Description

16#00

Réinitialisation locale ou acquittement d'une commande de réinitialisation

16#01

Commande inattendue dans le télégramme reçu

16#02

Commande inconnue dans le télégramme reçu

16#03

ID de connexion non valide dans le télégramme reçu

16#04

Erreur CRC pour le télégramme reçu

16#05

Erreur de surveillance ; aucun télégramme valide n'a été reçu dans le délai de surveillance

16#06

Adresse esclave FSoE non valide

16#08

Longueur du paramètre de communication non valide

16#09

Données de paramètres de communication non valides

16#10

Longueur de paramètre d'application non valide

16#11

Données de paramètres d'application non valides

16#80

La définition de la liste des variables réseau du côté du NVL de sécurité (récepteur) est différenciée de celles du côté du NVL de sécurité (émetteur)

Mesure du temps

Le bloc fonctionnel NetVarReceiver fournit trois sorties pour la surveillance du temps de traitement des télégrammes. Les sorties servent à diagnostiquer la connexion de communication émetteur-récepteur.

Le temps écoulé du temporisateur IEC est utilisé comme temps de cycle mesuré d'un télégramme. Afin de ne pas fausser les mesures, seules les réponses valides sont prises en compte. Le temps est mesuré entre deux télégrammes reçus par le NVL de sécurité (expéditeur). Cela signifie qu'au moins un bit dans le télégramme complet indique un changement.

Le bloc fonctionnel fournit le temps de réponse réel (tRespTimeMS), le temps de réponse minimum (tMinRespTimeMS), et le temps de réponse maximal (tMaxRespTimeMS) de la sécurité NVL(expéditeur).