Utilisation des éléments de données OPC UA #TSEventItemsReady
et #TSEventSynchro
Vous pouvez utiliser les éléments de données OPC UA #TSEventItemsReady
et #TSEventSynchro
pour
parcourir et définir respectivement l'état des variables
horodatées à la source.
Le module BMENUA0100 traite l'élément #TSEventSynchro
comme un noeud OPC UA booléen.
L'activation
de #TSEventSynchro
envoie une commande de synchronisation
à tous les équipements horodatés à la source de
l'ePAC M580. Les valeurs renvoyées par les équipements au client
OPC UA initialisent les variables horodatées à la source
avec leurs valeurs actuelles.
Le BMENUA0100 répond au client qui définit l'élément #TSEventSynchro
avec l'un des messages suivants :
UA_EGOOD
: La requête de synchronisation a été correctement envoyée à tous les équipements d'horodatage.UA_EBAD
: La requête de synchronisation a échoué car l'horodatage est désactivé dans le projet Control Expert.UA_EBADINVALIDSTATE
: La requête de synchronisation a échoué car l'horodatage a été désactivé pour le module BMENUA0100 par la fonction %MW400.UA_EBADINUSE
: La requête de synchronisation a échoué car le module BMENUA0100 n'a pas pu réserver de mémoire tampon d'horodatage.UA_EBADDISCONNECT
: La requête de synchronisation n'a pas réussi à écrire les valeurs dans la période spécifiée et a été désactivée.
Pour effectuer cette initialisation, utilisez un client OPC UA (par exemple UaExpert) pour effectuer la séquence de tâches suivante :
Surveillez l'élément
#TSEventItemsReady
indiquant que le module BMENUA0100 est prêt à gérer les variables horodatées des tampons ePAC (y compris les modules M580 CPU, BMECRA, BMEERT), puis attendez que sa valeur passe à 1 (vrai).Ajoutez des éléments de données surveillés configurés comme variables horodatées à la source à ZZun ou plusieurs abonnements.
Définissez la commande d'écriture
#TSEventSynchro
pour mettre à jour la valeur et l'horodatage à la source de chaque élément.
Le BMENUA0100 lit toutes les variables horodatées configurées dans l'ePAC. Si un événement (changement d'état d'un élément) se produit sur un élément surveillé horodaté, cet élément est mis à jour. Si un élément n'est pas surveillé, il est ignoré.
Il est recommandé de régler le filtre des modifications de données sur Etat/Valeur/Horodatage. Sinon, il pourrait arriver que différents clients OPC UA (par exemple des clients qui mettent à jour les valeurs uniquement en cas de changement d'état/de valeur) affichent un état et une valeur différents pour la même variable.
Comme le module BMENUA0100 met à jour les valeurs périodiquement, il est possible que plusieurs événements se produisent entre deux mises à jour. Dans ce cas, le BMENUA0100 affiche uniquement la valeur la plus récente.
#TSEventSynchro
étant envoyé à plusieurs équipements d'horodatage, si un de ces équipements ne répond pas dans le délai imparti,#TSEventSynchro
renvoie la réponseUA_EBADDISCONNECT
indiquant que la commande a dépassé le délai sans aboutir, et cela même si plusieurs équipements répondent correctement.Si l'abonnement est modifié pour ne contenir (par exemple) qu'une seule variable pour un seul équipement, l'exécution de
#TSEventSynchro
entraîne la perte des valeurs renvoyées précédemment pour les équipements et variables faisant l'objet de l'abonnement précédent.
Détermination des voies d'UC M580 dédiées à l'horodatage
Pour la communication entre le BMENUA0100 et une CPU M580 où l'horodatage est activé dans Control Expert, 25 % des voies de la CPU sont dédiées à la prise en charge de la fonction d'horodatage. 75 % des voies de la CPU au maximum restent disponibles pour les autres requêtes de communication.
Par exemple, pour la CPU BMEP584040 :
Nombre maximum de voies : 13
Voies utilisées pour l'horodatage : 3
Voies utilisées à d'autres fins : 10
Détermination de la capacité du BMENUA0100 à lire les variables horodatées
Le nombre de variables horodatées que le module BMENUA0100 peut lire par cycle dépend des éléments suivants :
Réglage du paramètre Interrogation de la mémoire tampon dans l'onglet Configuration IP du module
- Capacité de l'équipement à la source, notamment :
Nombre maximum de connexions TCP,
Nombre maximum de variables horodatées à la source prises en charge.
La formule permettant de déterminer le nombre maximum de variables horodatées à la source pour un équipement donné est la suivante :
(Nbre max. de connexions TCP) / (Nbre de voies)) x (Nbre max. de variables horodatées par cycle)
Exemple :
BMEP586040 : 16 connexions maximum, 4 voies, 82 variables maximum :
(16 / 4) x 82 = 328 variables au total
Si Interrogation de la mémoire tampon est réglé sur 500 ms : 656 variables par seconde.
BMECRA : 1 connexion, 1 voie, 82 variables maximum :
1 x 82 = 82 variables au total
Si Interrogation de la mémoire tampon est réglé sur 500 ms : 164 variables par seconde.
BMEERT : 1 connexion, 1 voie, 20 variables maximum :
1 x 20 = 20 variables au total
Si Interrogation de la mémoire tampon est réglé sur 500 ms : 40 variables par seconde.
Spécification du BMENUA0100 chargé de gérer les variables horodatées
Un rack M580 principal peut contenir deux modules BMENUA0100. Cependant, les variables horodatées des CPU M580 et des modules BMECRA et BMEERT ne peuvent être lues et gérées que par un seul module BMENUA0100 à la fois. Au démarrage, chaque BMENUA0100 tente par défaut de réserver et de verrouiller l'accès aux variables horodatées.
Dans un rack comprenant deux modules BMENUA0100, vous devez spécifier celui qui va lire et gérer les variables horodatées. Pour spécifier le BMENUA0100 qui va lire et gérer les variables, procédez comme suit :
Dans l'onglet Configuration IP des deux modules BMENUA0100 que vous souhaitez charger de l'horodatage, sélectionnez Activé.
Pour le module BMENUA0100 auquel vous souhaitez réserver le tampon d'horodatage, utilisez le bloc
WRITE_VAR
pour définir le mot %MW400 sur 2 et activer ainsi la lecture et la gestion des variables horodatées pour ce module.NOTE : Le réglage %MW400 = 2 identifie le module BMENUA0100 qui va lire et gérer les variables lorsque l'option Activé est sélectionnée pour deux modules BMENUA0100.Pour l'autre module BMENUA0100 auquel vous ne souhaitez pas réserver de tampon d'horodatage, utilisez le bloc
WRITE_VAR
pour définir le mot %MW400 sur 1 et désactiver ainsi la lecture et la gestion des variables horodatées pour ce module.
Le BMENUA0100 que vous désignez conserve le contrôle de la lecture et de la gestion des variables horodatées tant que les deux conditions suivantes sont remplies :
Au moins une variable horodatée est surveillée.
Le mode de surveillance du BMENUA0100 est réglé sur Signalant ou sur Echantillonnage.
Lorsque le réglage Activé est désélectionné, les valeurs des variables lues par le BMENUA0100 sont celles stockées dans la mémoire ePAC.
Lorsque Activé est sélectionné et que %MW400 est réglé sur 1, les variables lues par le BMENUA0100 conservent la dernière valeur lue lorsque la mémoire tampon d'horodatage était réservée.
Surveillance des variables alias horodatées
Le BME NUA 0100 reconnaît les variables alias BOOL ou EBOOL horodatées qui sont créées dans Control Expert, mais il ne reconnaît pas de manière identique les variables "Alias de" correspondantes. Voici un exemple de variables Alias et "Alias de" :

Pour être reconnues par BME NUA 0100, les variables Alias doivent être intégrées dans le dictionnaire de données.
Les variables Alias BOOL ou EBOOL et leurs variables "Alias de" correspondantes partagent la même adresse logique dans la mémoire M580 et le même ID d'événement dans le tampon d'horodatage M580. L'horodatage à la source est géré uniquement sur la variable Alias, pas sur la variable "Alias de". En d'autres termes, vous devez inscrire la variable Alias (noeud OPC UA) dans le client OPC UA pour pouvoir recevoir l'horodatage à la source depuis l'équipement au lieu du BME NUA 0100.
Comme aucune variable "Alias de" BOOL ou EBOOL n'est perçue comme étant horodatée à la source par le micrologiciel BME NUA 0100, l'alias doit être intégré dans le dictionnaire de données. Dans ce cas, vous devez ajouter la variable Alias en tant qu'élément surveillé dans un abonnement OPC UA pour réaliser l'horodatage à la source défini par l'équipement.