Introduction

Le serveur OPC UA intégré au module BMENUA0100 utilise des requêtes du dictionnaire de données UMAS (Unified Messaging Application Services) pour chercher et détecter des variables d'application des PAC M580. Vous devez activer le dictionnaire de données dans les paramètres du projet dans Control Expert.

NOTE :

Toutes les variables collectées sont converties du modèle de logique de données Control Expert en modèle de logique de données OPC UA en utilisant les services de la pile OPC UA appropriés. Un client OPC UA connecté au module BMENUA0100 (sur son port de contrôle, ou sur son port d'embase via la CPU ou un module de communication BMENOC0301/11) peut récupérer cet ensemble de données en utilisant les services de la facette de serveur d'accès aux données prise en charge par le profil de serveur UA 2017 intégré .

Préchargement du dictionnaire de données pour éviter l'interruption des communications

Une modification d'application en ligne effectuée avec Control Expert cause des interruptions temporaires de la communication serveur/client OPC UA lorsque le serveur récupère le dictionnaire de données mis à jour. Cette interruption est causée par un mappage incohérent des données UC lors de la mise à jour du dictionnaire de données. Durant la période de perte de communication, l'état des nœuds surveillés devient BAD. Pour éviter cette interruption des opérations, un mécanisme de synchronisation peut être défini entre le module BMENUA0100 et le logiciel de configuration Control Expert, pour effectuer un préchargement du dictionnaire de données mis à jour.

Cette fonction est activée dans Control Expert, fenêtre outils > Options du projet... , zone Général > Données intégrées de l'automate , paramètres Préchargement après la génération et Délai de génération effectif. Reportez-vous à ces rubriques dans l’aide en ligne de Control Expert pour plus d’informations sur la manière de configurer cette fonction.

Activation du dictionnaire de données

Pour activer le dictionnaire de données dans Control Expert :

Étape

Action

1

Dans Control Expert, le projet ouvert, sélectionnez Outils > Paramètres du projet.

2

Dans la fenêtre Paramètres du projet, accédez à Général > Données intégrées de l'automate , puis sélectionnez Dictionnaire de données.

NOTE : Si le projet EcoStruxure™ Control Expert inclut un module BMENUA0100 et que cette option n'est pas sélectionnée, une erreur détectée est générée lors de la compilation de l'application.

Conversion des types de données de variables

Le module BMENUA0100 peut détecter et convertir en type de données OPC UA les types de variable élémentaires suivants pris en charge par le modèle de logique de données Control Expert :

Type de données élémentaire Control Expert

Type de données OPC UA

BOOL

Boolean

EBOOL

Boolean

INT

Int16

DINT

Int32

UINT

UInt16

UDINT

UInt32

REAL

Float

BYTE

Byte

WORD

UInt16

DWORD

UInt32

DATE*

UInt32

TIME*

UInt32

TOD*

UInt32

DT*

Double

STRING

Tableau d'octets

* Consultez le tableau suivant qui décrit la conversion de types de données relatifs à la date.

Pour les données Control Expert de types DATE, TIME, TOD, DT, les types de données OPC UA correspondants sont les suivants :

Type de données élémentaire Control Expert

Exemple de valeur affichée dans Control Expert

Type de données OPC UA

Valeur correspondante dans le type OPC UA

DATE

D#2017-05-17

UInt32

0x20170517

TIME

T#07h44m01s100ms

UInt32

27841100

TOD

TOD#07:44:01

UInt32

0x07440100

DT1

DT#2017-05-17-07:44:01

Double

4.29E-154

1. Les données renvoyées pour les valeurs de date et d'heure sont UATypeUInt64, qui est le codage interne du type IEC 1131 DT dans Control Expert - codage BCD (décimal codé binaire).

Variables détectables

Pour toutes les variables, le client OPC UA n'accède pas directement à la variable de logique de données de PAC détectée. Le client accède à la variable de PAC détectée via une variable de logique de données OPC UA, qui est située dans le module BMENUA0100 et mappée à la variable de PAC sous-jacente. En raison de la nature transférable de l'accès aux variables de données, le processus de demande d'acquisition n'est pas optimisé, et les performances d'acquisition du dictionnaire de données ne sont pas représentatives des performances du PAC.

NOTE : Les références de type REF_TO aux variables d'application sur le serveur OPC UA ne sont pas accessibles par le client OPC UA.

Voici des exemples de variables de PAC Control Expert détectables par le serveur OPC UA sur le module BMENUA0100 :

  • Variables structurées avec sous-champs : Variables de type DDT et tableau.

  • Les variables d'unité de programme sont détectables comme suit :

    • Les variables d'entrée/sortie sont accessibles par le client OPC UA uniquement pour le type BOOL.

    • Les variables d'entrée et les variables de sortie sont accessibles par le client OPC UA, sauf les types REF_TO, ARRAY, String et Structure.

De plus, les variables suivantes sont détectables par me serveur OPC UA par mappage aux variables d'application, puis détection des variables d'application mappées :

  • Variables d'E/S topologiques :

    • Entrées : %I, %IW, %ID, %IF.

    • Sorties : %Q, %QW, %QD, %QF.

  • Variables localisées : %M, %MW, %MD, %MF.

  • Variables système : %S, %SW, %SD.

NOTE : La détection des variables inclut une variable (ou un symbole) pour un bit extrait (par exemple, MyBoolVar situé dans %MW100.1).

Présentation des variables détectées sur le client OPC UA

Le serveur OPC UA du module BMENUA0100 peut organiser et afficher sous forme graphique les variables de PAC détectées. Un outil client OPC UA peut se connecter au module BMENUA0100 et afficher une arborescence des variables du serveur OPC UA.

Dans l'exemple suivant, un client OPC UA (ici l'outil client Unified Automation UaExpert) connecté au module BMENUA0100 peut afficher les variables du PAC dans la fenêtre Espace d'adresse. L'adresse IP du PAC M580 est représentée par le noeud ePAC:192.168.10.1. Ses noeuds enfants représentent des variables d'application Control Expert :

Dans l'exemple ci-dessus, le premier sous-noeud, BMEP58_ECPU_EXT, représente le DDT d'équipement pour l'UC M580, qui a été automatiquement instancié lors de l'ajout de l'UC à l'application Control Expert. Les noeuds suivants représentent d'autres objets ajoutés à l'application.

En utilisant l'outil client OPC UA, le noeud TEST_S6 a été déplacé et déposé dans la vue Accès aux données de l'outil, où les informations de la variable s'affichent :

Dans ce cas, le type de données OPC UA des variables est Boolean (ce qui indique que le type de données PAC sous-jacent est BOOL) et la valeur est false.

NOTE : L'attribut Horodatage serveur des noeuds OPC UA est reçu du serveur OPC UA du module BMENUA0100 au format UTC (Universal Time Coordinated). Il s'affiche pour l'utilisateur en temps réel. Les données ne sont pas horodatées sur leur source respective mais par le serveur OPC UA. Pour éviter les conflits de compatibilité avec certains clients OPC UA, l'horodatage à la source et l'horodatage du serveur sont configurés avec la même valeur d'horodatage serveur.

Lecture et écriture des variables détectées sur le client OPC UA

Une balise OPC UA sur un client OPC UA (par exemple SCADA) qui référence une variable de tableau permet au client de lire ou écrire tous les éléments du tableau. Par exemple la balise ‘MyArray’ déclarée comme ARRAY[0...31] OF INT.

Cependant, pour que le client puisse lire ou écrire un élément d'un tableau, il est nécessaire de déclarer une balise spécifique qui référence l'élément de tableau ciblé. Par exemple ‘MyInt’ déclarée comme INT référençant MyArray[2].