Modélisation de l'information
N'importe qui sait exposer des tags. C'est la modélisation qui rend un serveur compréhensible pour un client qui ne l'a jamais vu. Ce cours couvre les règles de modélisation, les interfaces, les structures personnalisées, la rédaction de XML NodeSet2, sa compilation et sa publication.
| Leçons | 12 |
|---|---|
| Time | environ 96 minutes |
| Prérequis | A3 |
| Coût | Gratuit: leçons écrites ouvertes, vidéo et labs sur compte gratuit |
Ce que vous saurez faire
- Vous savez concevoir une hiérarchie de types plutôt qu'un dossier de tags.
- Vous savez rédiger et compiler votre propre fichier NodeSet2.
- Vous savez exposer une structure personnalisée qu'un client générique sait décoder.
- Vous savez exporter l'espace d'adressage d'un serveur en fonctionnement et travailler dessus hors ligne.
Programme
-
1
Modéliser des types, pas des instances8 min
Pourquoi un ObjectType avec trois instances vaut mieux que trois dossiers de tags, et ce qu'un client peut faire du type qu'il ne peut pas faire du dossier.
Ressource Les trois mêmes pompes modélisées des deux façons, parcourues côte à côte
-
2
Appliquer les règles de modélisation8 min
Mandatory, Optional et les règles de placeholder. Ce qu'un client peut supposer, et la panne qui survient lorsqu'il suppose qu'un nœud optionnel existe.
Ressource Un type avec des membres obligatoires et optionnels, et deux instances qui diffèrent
-
3
Utiliser les interfaces8 min
L'héritage multiple pour les capacités. Comment les blocs Machinery utilisent les interfaces, et pourquoi c'est ce qui les rend composables.
Ressource Un nœud implémentant deux interfaces, avec les deux ensembles de membres parcourus
-
4
Définir une structure personnalisée9 min
DataTypeDefinition, l'ordre des champs, et l'encodage dont un client a besoin pour le décoder.
Ressource Une structure personnalisée exposée par un serveur et décodée par un client générique, avec l'ExtensionObject brut
-
5
Survivre à l'ancien type dictionary8 min
Des serveurs qui n'offrent qu'un dictionnaire de types binaire, des clients qui ne prennent en charge que DataTypeDefinition, et l'ExtensionObject non décodé qui en résulte.
Livrable La même structure lue par deux clients, dont l'un échoue à la décoder
-
6
Gérer les unions et les champs optionnels7 min
Là où le décodage des structures personnalisées casse réellement, et comment modéliser pour l'éviter.
Livrable Une union et une structure à champ optionnel avec l'encodage sur le fil de chacune écrit en clair
-
7
Rédiger un fichier NodeSet210 min
Le XML sous lequel chaque spécification companion est livrée. Structure, espaces de noms, alias et références.
Livrable Un fichier NodeSet2 complet et valide pour un petit type de machine, écrit de zéro
-
8
Compiler un modèle8 min
UA-ModelCompiler comme outil global dotnet, ses entrées et ses sorties, et les erreurs qu'il vous renvoie.
Ressource Un modèle compilé avec UA-ModelCompiler, incluant une erreur délibérée et son message
-
9
Charger un modèle à l'exécution8 min
Importer un nodeset dans un serveur en fonctionnement, et ce qui arrive alors aux index de namespace.
Ressource Un nodeset importé à l'exécution, avec le NamespaceArray avant et après
-
10
Exporter un espace d'adressage actif7 min
Export de nodeset depuis un serveur en fonctionnement, pour travailler hors ligne et comparer entre versions de firmware.
Ressource Deux exports de la même machine après un changement de firmware, avec le diff
-
11
Publier sur l'UA Cloud Library7 min
À quoi sert la bibliothèque, sa surface REST et Swagger, et quand publier plutôt que garder en local.
Ressource Un modèle téléversé et récupéré via l'API de l'UA Cloud Library
-
12
Modéliser pour le consommateur, pas pour l'automate8 min
Les habitudes qui rendent un modèle utile en aval : des identifiants stables, de vraies unités, des plages honnêtes, et des états sous forme de machines à états plutôt que d'entiers.
Ressource Une check-list de revue appliquée à un vrai modèle fournisseur, avec les huit problèmes qu'elle détecte
Lab
Compte gratuit requis
Rédigez un fichier NodeSet2 pour une machine à deux postes avec identification, machine à états et compteur, compilez-le, chargez-le dans un serveur local, et parcourez-le avec UaExpert.
Débloquer le lab →Dernière vérification le 7 septembre 2026 par rapport à OPC UA 1.05.07. OPC UA Connect est une ressource pédagogique et n'est pas affiliée à l'OPC Foundation.