Ban2 knowledge

OPC UA français

Nous avons conçu une formation 100% en ligne dans laquelle,vous trouverez les aspects pratiques concernant l'OPC Classic et l'OPC UA,vous pouvez vous inscrire à cette formation via le formulaire situé tout en bas de la page.

L'OPC UA ou Open Platform Communication Unified Architecture,est la nouvelle génération de technologie OPC,le nouveau standard de communication industrielle dédié à l'internet industriel des objets et à l'usine du futur.C'est en quelque sorte le successeur de l'OPC Classic.L'OPC UA est le standard de communication de prédilection pour l'industrie 4.0.

Standard opc ua

La Fondation OPC a annoncé sa vision  envers l'OPC en 2003 et a formé le groupe de travail OPC UA en janvier 2004. Les premières parties de la spécification ont été publiées en juin 2006.

La spécification OPC UA ​​actuelle se compose de 14 parties.En Mai 2015, il a été rendu public,ainsi,aujourd’hui tout le monde peut télécharger les spécifications de l'OPC UA sur le site de la fondation OPC.

 

Bien que développé par la même organisation (OPC Foundation),l'OPC UA diffère considérablement de son prédécesseur :

 

Une de ses particularités est qu'il est  indépendant de la plate-forme utilisée et intègre toutes les fonctionnalités de l'OPC Classic ,offrant ainsi un chemin de migration vers une solution plus sécurisée et évolutive.Contrairement à l'OPC Classic qui est basé sur les composants DCOM de Windows,il est tout à fait possible d'utiliser l'OPC UA sur les systèmes d'exploitation Linux ou Mac.

Avec l'OPC UA,le serveur peut être directement intégré dans le hardware,ainsi,on pourra installer un serveur OPC UA sur des mini-PC embarqués comme le Raspberry PI ou le Beagle Bone ou encore sur un automate ou un capteur.C'est le cas par exemple des automates Siemens S7-1500 qui intègrent un serveur OPC UA.Concernant les fournisseurs de solutions OPC UA,les plus connus sont : Matrikon,Kepware,Sofnet,Unified Automation ou encore Prosys.

L'OPC UA : Comment ça marche ?

L'OPC UA utilise un composant serveur pour fournir l'accès aux données machine,les applications clientes sont utilisées pour accéder ou modifier des données sur le serveur.Les serveurs peuvent également être des clients en même temps et, par exemple, fournir des données agrégées d'autres serveurs à leurs clients.

Contrairement à l'OPC Classic,l'OPC UA utilise un modèle d’information orienté objet, qui prend en charge les structures, les machines d’état et qui est indépendant du système d’exploitation.De plus, voici quelques avantages supplémentaires de l'OPC UA par rapport à l'OPC Classic :

- Prend en charge l'architecture orientée service (SOA) qui permet une personnalisation aisée pour différents types de périphériques et d'applications

- Il permet l'échange de données brutes et d'informations pré-traitées entre des systèmes intégrés dans des capteurs et des appareils de terrain et des systèmes ERP, MES et de visualisation de processus (IHM)

- Sécurité des données plus robuste

Pour échanger des données,le standard OPC UA peut utiliser un protocole binaire optimisé basé sur le protocole TCP, ouvrant simplement un seul port dans le pare-feu.L'OPC UA  utilise une architecture robuste, avec des mécanismes de communication fiables, une surveillance du temps configurable et une détection automatique des pannes.Les mécanismes de correction des erreurs permettent de rétablir automatiquement la liaison de communication entre le client OPC UA et le serveur OPC UA sans perte de données.Des fonctionnalités supplémentaires telles que: la redondance de connexion, la surveillance de la connexion (interruptions), la mise en mémoire tampon des données et accusés de réception sont disponibles pendant les échanges.


La différence la plus importante entre l'OPC Classic et l'OPC UA se trouve au niveau de la modélisation des données.Le concept de base de l'OPC UA est un espace d'adresse spécifique au serveur qui est composé de nœuds avec des attributs reliés par des références.En utilisant des nœuds et des références, il est possible de développer un modèle abstrait qui représente des objets du monde réel comme un processus ou une machine.Les objets peuvent être hérités et étendus comme dans les langages de programmation orientés objet. L'OPC UA fournit un certain nombre de mécanismes pour l'échange de données :


- Accès synchrone ou asynchrone en lecture / écriture aux attributs de nœud

- Un mécanisme d'abonnement permettant de déceler les changements au niveau du serveur ce qui évite de faire du polling (modèle pub/sub)

- Le serveur envoie une notification chaque fois que la valeur sur le serveur change ou qu'un événement se produit (modèle pub/sub)


- Accès aux données d'historiques (qui peuvent être conservées dans une base de données connectée au serveur ou à la mémoire)


- Appels de méthodes qui peuvent être utilisés pour déclencher des actions dans des périphériques connectées au serveur OPC UA.Ces méthodes côté serveur peuvent être appelées avec des paramètres et des valeurs de retour transmises au client.


- Un service de navigation qui permet au client d'explorer la structure de l'espace d'adressage sans connaissance préalable du modèle de données

- L'OPC UA possède également un concept de sécurité intégré basé sur des algorithmes et des certificats cryptographiques établis.Les données peuvent être signées, cryptées ou les deux en même temps, en fonction des exigences de sécurité.Les clients peuvent vérifier le certificat du serveur et utiliser leurs certificats clients pour s'authentifier sur le serveur.

Les avantages de l'OPC UA

En ce qui concerne les principaux avantages de l’utilisation de l’OPC UA, nous avons:

 
    - Implémentation multi-plateforme, y compris les implémentations portables ANSI C, Java et .NET


    - Opération multithread (tâches multiples) ou monothread possible


    - Sécurité basée sur de nouvelles normes


    - Limites de temps configurables pour chaque service


    - Architecture orientée services (SOA)

Mode d'encodage

La communication via OPC UA prend en charge plusieurs modes d'encodage de données.L'expéditeur code les données dans le format approprié et le destinataire doit être capable de décoder le contenu (avec toutes les hypothèses d'intégrité et de sécurité) afin de reconstruire les données d'origine.Il faut cependant noter que le mode d'encodage binaire est le plus répandu.

  - Le mode d'encodage binaire

Le mode d'encodage binaire présente les données en série au format tableau (ensemble ou structure de données) d'octets.Il s’agit d’une méthode       simple et peu coûteuse, généralement appliquée au niveau de l’appareil,dont la puissance d’exécution est limitée,mais dont la priorité est élevée, elle ne doit être interprétée que par les clients compatibles OPC UA.

  - Le mode d'encodage XML

Le XML est un langage de balisage.Il facilite l'interprétation des données par plusieurs périphériques indépendamment  de la plate-forme utilisée.L'encodage XML est généralement appliqué au plus haut niveau de communication de l'installation et prend en charge les clients XML génériques (par exemple, les imprimantes). Comparé au mode d'encodage binaire,le mode d'encodage XML est plus coûteux à mettre en œuvre.L'encodage XML est  généralement utilisé avec les infrastructures IT.

  - Le mode d'encodage JSON

Ce mode d'encodage est basé est basé sur le format JSON

  - Le mode d'encodage UADP

C'est un mode d'encodage binaire utilisé dans le modèle OPC UA Pub/Sub.

Stack opc ua

Mode de transport

Pour le transport des données,l'OPC UA peut utiliser les protocoles suivants :

  - Le protocole UA-TCP

Ce protocole est basé sur TCP pour le transport des données,permettant une communication en full duplex entre le serveur et le client.Combiné au mode d'encodage binaire,il fait partie des modes de transport les plus utilisés.

  - Le protocole HTTPS (protocole de transfert hypertexte sécurisé)

Le HTTPS est la version sécurisée de HTTP. Cela signifie que toutes les communications sont sécurisées.

  - Le protocole Websocket WSS (WebSocket Secure)

 

  - Le protocole UDP

Utilisé dans le modèle OPC UA Pub/Sub le protocole UDP ou User Datagram Protocol, abrégé en UDP, est un protocole permettant l’envoi sans connexion de datagrammes dans des réseaux basés sur le protocole IP.

  - Le protocole MQTT

Utilisé dans le modèle OPC UA Pub/Sub,le protocole MQTT est un protocole de transport avec broker.

 

Mode de sécurité

L'OPC UA utilise les technologies SSL (Secure Sockets Layer), TLS (Transport Layer Security) et AES (Advanced Encryption Standard) pour la sécurisation des données.Grâce à ces différentes technologies l'OPC UA assure :

    - La protection contre les accès non autorisés,les modifications des valeurs de processus, le sabotage et les défaillances causées par une utilisation négligée
    - Les fonctionnalités de sécurité font partie intégrante de la norme et incluent l'authentification des utilisateurs et des applications, les signatures de messages numériques et le cryptage des données transmises.
    - L'échange de données entre les périphériques via OPC UA est sécurisée, avec contrôle de la confidentialité, de l'intégrité des données et de l'authentification des échanges

La nouvelle technologie Publisher/Subscriber

Etant donné que le standard OPC/UA de base est basé sur le modèle client/serveur,il n'est pas idéal pour les applications IoT faisant intervenir des milliers d'équipements industriels car le modèle client/serveur utilise la méthode de "polling" qui nécessite une forte bande passante.Pour pallier à ce problème,le modèle pub/sub basé sur des protocoles de transport comme l'AMQP,MQTT ou l'UDP est utilisé avec l'OPC UA.Le modèle OPC UA Publisher/Suscriber est plus adapté aux applications IoT car moins gourmand en bande passante.Il faut aussi souligner que l'on distingue le modèle pub/sub UDP  et le modèle pub/sub MQTT avec broker.L'utilisation d'un broker permet de rendre possible la communication avec des réseaux distants (exemple Cloud).

Dans le modèle OPC UA Pub/Sub via MQTT,chaque message est publié dans une rubrique ou "topic", qui est techniquement une file d'attente de messages.Un client peut être un "publisher" (éditeur) ou un abonné (subscriber) publiant un message sur un "topic" ou s'abonnant à un "topic" spécifique.

Opc ua pub sub

Le modèle Pub/Sub diffère du modèle client-serveur traditionnel dans le sens où il n'y a pas de lien direct entre les équipements clients,mais un intermédiaire (aussi appelé broker ou serveur) connu de l'éditeur et de l'abonné gère les abonnements aux "topics" et transmet les messages à ceux qui y sont abonnés.

A chaque fois qu'il y' a un changement sur un topic en particulier,tous les abonnés sont notifiés et les données sont ainsi acheminées vers les abonnés par l'intermédiaire du broker.Cela permet d'avoir des réseaux numériques de haute densité,très performants et très légers.

Le modèle d'information OPC UA

Dans le standard OPC UA,le serveur expose ses différentes informations aux clients via un espace d'adressage.L'espace d'adressage est contituée de plusieurs objets.Les objets sont symbolisés  par des noeuds interconnectés entre eux via des références.Chaque noeud est caractérisé par des attributs spécifiques qui permettent de décrire le noeud (exemple : NodeID,NodeClass,BrowseName etc..)

L'espace d'adresse peut aussi être répartie en plusieurs vues (views) qui sont des collections de noeuds,ainsi le serveur pourra choisir les noeuds qui pourront être visibles aux clients en restreignant l'accès à une vue donnée de l'espace d'adressage.

Mis à part les views,il existe 7 classes de noeuds (NodeClass) parmi lesquelles on peut citer :

- Object

- Variable

- ReferenceType

- Method

- ObjectType

- VariableType

- DataType

 

En savoir plus sur les serveurs OPC - Notre formation en ligne

Pour en savoir plus sur l'OPC Classic et l'OPC UA de manière générale,vous pouvez vous inscrire à notre formation  en ligne intitulée : "L'OPC Classic et l'OPC UA pour les nuls".Dans cette formation,nous verrons plus en détails le standard OPC Classic et l'OPC UA.

Programme de la formation

- C'est quoi un serveur OPC ?

- C'est quoi un client OPC ?

- Comment utiliser un client OPC avec un automate (cas de l'automate Siemens)

- Les avantages du standard OPC

- La différence entre OPC UA et OPC Classic

- Comment créer un client OPC DA en VB et C#

- Comment créer un client OPC UA avec le stack Node-OPCUA

Objectifs de la formation

A la fin de la formation vous serez en mesure de :

- Comprendre le fonctionnement global du standard OPC

- De faire la différence entre OPC Classic et OPC UA

- De connaitre les briques technologiques utilisées pour développer des clients OPC UA

- De développer votre premier client OPC UA communiquant avec un automate Siemens

Durée de la formation : 15 heures vidéos

Fiches PDF et code sources fournies (en libre téléchargement)

Tarif de la formation : 197 euros (accès à tous les supports de cours,logiciels et codes sources)

 

NB : Vous avez un projet (IIOT ou industrie 4.0),nous vous accompagnons et vous conseillons sur le choix des différentes technologies, briques logicielles et solutions commerciales à utiliser.

Achetez la formation en ligne

 

Vous inscrire à nos formations

8 votes. Moyenne 4.38 sur 5.

Commentaires (5)

automationsense
  • 1. automationsense (site web) | 21/05/2020
Bonjour Flavio,pour s'inscrire à notre formation sur les serveurs OPC,cliquez sur le lien suivant https://www.automation-sense.com/blog/nos-formations/initiation-aux-serveurs-opc.html et cliquez sur le bouton "Achetez immédiatement" dans la section inscription.
Flavio
  • 2. Flavio | 20/05/2020
Bonjour je voudrais m'inscrire à votre formation sur l'OPC UA, comment faire?
Patrick
  • 3. Patrick | 15/05/2020
Bonjour,je suis informaticien industriel dans une usine agroalimentaire,nous souhaitons faire la remontée de nos données de production situées dans des automates S7-1500 via OPC UA.Nous aimerions ainsi bénéficier de vos formations sur les serveurs OPC.Quelles sont les démarches à suivre.Cordialement
automationsense
  • 4. automationsense (site web) | 16/12/2019
Bonjour Pascal,je ne connais pas malheureusement le serveur ALPHA COM XE1.S'il fonctionne sur un OS dérivé de Linux il y'a grandement de chance que cela puisse fonctionner avec.Cordialement,
Pascal PEREIRA-SILVA
  • 5. Pascal PEREIRA-SILVA | 16/12/2019
Je voudrais savoir si il est est possible de monter un serveur OPC UA accessible sur un serveur ALPHACOM XE1 ZENITEL pour développer un plugin.

Merci.

Ajouter un commentaire

7 choses à savoir si Tu débutes en automatisme...

7 choses que tu dois savoir si tu debutes en automatismeCliquez ici pour télécharger le guide PDF

Superv 3