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)
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.

VAR_INPUT
)Nom | Type de données | Valeur initiale | Description |
---|---|---|---|
|
|
| Entrée pour contrôler les données d'entrée
|
|
|
| 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. |
|
|
| 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. |
|
|
| 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. |
VAR_OUTPUT
)Nom | Type de données | Valeur initiale | Description |
---|---|---|---|
|
|
| Sortie indiquant si des données d'entrée valides existent ou non.
|
|
|
| Affichage d'erreur |
|
|
| Voir Code de diagnostic |
|
|
| 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. |
|
|
| Temps de réponse réel de la liste des variables du réseau de sécurité (expéditeur) |
|
|
| Temps de réponse minimum de la liste des variables du réseau de sécurité (expéditeur) |
|
|
| 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 transmission16#CXXX
états d'erreur
États de 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 | Description |
---|---|---|
|
| La connexion est réinitialisée (les données d'entrée sont dans un état sûr). |
|
| L'ID de session est transmis (les données d'entrée sont dans un état sécurisé). |
|
| L'ID de connexion est transmis (les données d'entrée sont dans un état sécurisé). |
|
| Les paramètres sont transmis (les données d'entrée sont dans un état sûr). |
|
| 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'initialisation2è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 |
---|---|
| Erreurs internes |
| La longueur des données sécurisées n'est pas prise en charge (32 octets de données max. sont pris en charge) |
| Heure de surveillance non valide ; valeur |
Détection d'erreur du NetVarReceiver
wDiagCode
= 16#C1xx
, xx
contient un code d'erreur supplémentaire spécifique à l'erreur
Valeurs pour | Description |
---|---|
| Réinitialisation locale ou acquittement d'une commande de réinitialisation |
| Commande inattendue dans le télégramme reçu |
| Commande inconnue dans le télégramme reçu |
| ID de connexion non valide dans le télégramme reçu |
| Erreur CRC pour le télégramme reçu |
| Erreur de surveillance ; aucun télégramme valide n'a été reçu dans le délai de surveillance |
| Données de sécurité non valides dans le télégramme reçu |
| Erreur |
| 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 | Description |
---|---|
| Réinitialisation locale ou acquittement d'une commande de réinitialisation |
| Commande inattendue dans le télégramme reçu |
| Commande inconnue dans le télégramme reçu |
| ID de connexion non valide dans le télégramme reçu |
| Erreur CRC pour le télégramme reçu |
| Erreur de surveillance ; aucun télégramme valide n'a été reçu dans le délai de surveillance |
| Adresse esclave FSoE non valide |
| Longueur du paramètre de communication non valide |
| Données de paramètres de communication non valides |
| Longueur de paramètre d'application non valide |
| Données de paramètres d'application non valides |
| 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).