OPC UA

Omeid EHSAN                                                                                   Rayan BENMAMMAR

vous présentent

IUTGEII

 

 

 

 

LA COMMUNICATION OPC-UA

opcua

 

1

 

 

 

 

Sommaire :

 

– Introduction

 

1 – Présentation et Cahier des Charges

 

2 – Déroulement du projet / Mise en œuvre

 

3 – Difficultés rencontrées

 

– Conclusion

 

 

2 4

 

 

Introduction

 

OPC Unified Architecture (OPC UA) est un protocole de communication indépendant des fabricants pour les applications d’automatisation industrielle, tel qu’Automation Studio qui est le logiciel que nous utiliserons dans ce projet.
Il est basé sur le principe client-serveur, donc nous aurons un CPU Client et un CPU Serveur. Le protocole flexible, fiable, sécurisé et complètement indépendant. OPC_UA utilise le réseau Ethernet pour la connexion entre les CPU et pour les échanges de données.
Il a été récemment intégrer à Power Link.

 

1 – Cahier des Charges

 

Pour ce projet, mis à part OPC_UA, nous avons utilisé comme matériels 2 CPU X20-3586 utilisées pour le client et le serveur. La CPU 200.200.200.174 est pris comme Serveur et la CPU 200.200.200.184 comme Client.

Les programmations des programmes clients et serveur ont été créés grâce au logiciel Automation Studio version 4.25, car ce n’est qu’à partir de la version 4.2 qu’OPC_UA est utilisable sur ce logiciel. C’est avec cet environnement de développement logiciel qu’est Automation Studio que nous avons pu aussi faire la visualisation de nos programmes.

Le but principal de notre projet était de s’approprier la fonctionnalité de la « Communication OPC-UA » entre différentes CPUs. Ainsi nous avons pu appliquer les différentes fonctions réalisables grâce à l’OPC-UA et les expliquer dans un tutoriel pour que d’autres étudiants puissent également les réaliser. Pour cela, nous avons utilisé la rubrique « Aide » du logiciel Automation Studio pour comprendre les différentes fonctions réalisées par cette communication OPC-UA à l’aide de diagrammes et explications données en anglais.

Voici par exemple le diagramme expliquant la fonction « Lecture » :

5

Le CPU Client va lire le contenu de la variable présente dans le CPU du Serveur grâce à la communication OPC-UA entre les 2 CPU

 

Une fois ce diagramme compris, nous devions passer à la pratique et réaliser cette fonction en configurant les programmes, les CPUs ainsi que les visualisations afin de modéliser concrètement la communication OPC-UA pour un meilleur rendu esthétique.

 

2 – Déroulement du projet

 

Tous les sous projets se sont déroulés dans le même ordre :
1- Configuration des CPUs
2- Création du projet Serveur
3- Création du projet Client
 

Les programmes et la configuration étant déjà faites, nous avons pu tester la communication en simulation sur le PC. Nous avons dû développer les Visu des clients et Serveur pour pouvoir visualiser les fonctions mises en place. Puis après la simulation sur pc, nous sommes passés sur la communication entre 2 CPUs. Le programme Client était connecté a à la CPU 200.200.200.184 et le serveur à la CPU 200.200.200.174.

Pour cela il y avait quelques changements à opérer dans les programmes, spécialement dans le client, où il fallait spécifier l’adresse IP et le port TCP du serveur. Après avoir finis les visualisations des différentes fonctions, nous avions à faire le tutoriel expliquant comment importer les programmes constructeurs, comment faire d’une CPU un serveur et l’autre un client, quels changements étaient nécessaire à la communication entre les CPU et enfin comment faire les Visu.

 

 

Après avoir finis ce premier tutoriel, il nous a fallu recréer les programmes, mais cette fois ci entièrement. Nous avons dû trouver toutes les bonnes configurations à faire, ce qui n’a pas vraiment été chose simple, mais nous avons finalement réussis. Nous avons mis beaucoup de temps pour trouver toutes les petites subtilités qui permettait à la communication de fonctionner, mais l’aide dans Automation Studio nous a bien aidés.

Comme précédemment, nous avons terminé par un tutoriel expliquant toutes les configurations nécessaires au développement des programmes utilisant une communication OPC_UA. Ces tutoriels seront utilisés par les étudiants pour de futurs projets ou TP Réseaux.

 

Voici le rendu final de la fonction « Lecture » de la communication OPC-UA.
Cette visualisation modélise la communication réalisée en temps réel :

6

Les 5 premiers boutons à droite permettent d’établir la connexion entre les CPUs et de réaliser la communication avec l’échange de données d’une CPU à l’autre.
La valeur du compteur du serveur (à gauche) s’affiche dans la Visu du Client (à droite) à l’instant t. Ainsi toutes les demi-secondes (période configurable) la valeur de « VarA » va changer et prendre celle de « cpt » sur Serveur.

 

3 – Difficultés rencontrées

 

Tout au long de ce projet, nous avons rencontrés toutes sortes de difficultés. Mais le plus important, c’est de savoir garder patience pour les surmonter.

L’un des points négatifs du logiciel Automation Studio est qu’il n’indique que peu souvent les erreurs. Une petite erreur dans la configuration des variables et vous pouvez en avoir pour des heures jusqu’à à la découverte du problème. Il faut chercher le plus souvent soi-même les erreurs qui font que la visualisation ne fonctionne pas par exemple.

Il faut donc faire attention au choix des types des variables, de bien configurer les ports des CPUs, d’activer les variables selon le besoin ou encore de choisir les bons boutons pour la visualisation finale !

 

Conclusion

 

En somme, ce projet fut très intéressant car il s’agissait d’une nouvelle fonctionnalité que nous devions nous approprier afin de l’expliquer sous une forme didactique.

Nous avons donc joué à la fois les rôles de professeur, de programmeurs et d’étudiants de GEII. Malgré les heures de frustration lorsque nous avions des erreurs et que nous devions chercher une petite erreur, nous avons pris du plaisir à travailler sur ce projet.

La communication OPC-UA est une communication fiable, sécurisé et rapide. De ce fait, nous comprenons l’intérêt des grandes entreprises à l’acquérir car elle peut être extrêmement utile en plus d’être avantageuse.
Il s’agit d’une fonctionnalité encore assez récente, nous ne doutons pas que des améliorations futures rendront le travail des techniciens et ingénieurs travaillant dessus plus facile.