OPC UA
Exposez les simulations Miravo via un serveur OPC UA navigable avec des ObjectTypes typés, des unités d'ingénierie, des plages EU et des méthodes exécutables.
L’adaptateur OPC UA de Miravo projette le graphe d’actifs dans un espace d’adresses OPC UA typé. OPC UA est optionnel — activez-le avec --opcua.
Démarrage
Section intitulée « Démarrage »miravo start --template smart-factory --opcuaConnectez n’importe quel client OPC UA (UaExpert, Prosys, Kepware) à :
opc.tcp://localhost:4840/miravoStructure de l’espace d’adresses
Section intitulée « Structure de l’espace d’adresses »La hiérarchie de chemin de navigation se mappe directement aux nœuds OPC UA :
Root/Objects/ MiravoWorks (FolderType) smart-factory (FolderType) production (FolderType) line-1 (FolderType) centrifugal-pump-001 (Object, typeDefinition: centrifugal-pump) rpm (Variable, Double, AccessLevel: CurrentRead) speed_command (Variable, Double, AccessLevel: CurrentRead|CurrentWrite) serial_number (Property, String, AccessLevel: CurrentRead) Start (Method) Stop (Method)Types de nœuds
Section intitulée « Types de nœuds »| Concept modèle | Mapping OPC UA |
|---|---|
| Segments de chemin | Nœuds FolderType |
| Instance d’actif | Object avec HasTypeDefinition |
| Membre variable | Variable (componentOf instance) |
| Membre property | Property (propertyOf instance, lecture seule) |
| Méthode | Nœud Method avec arguments typés |
Mapping des types
Section intitulée « Mapping des types »| Type de données Miravo | DataType OPC UA |
|---|---|
Double | DataType.Double |
Float | DataType.Float |
Int32 | DataType.Int32 |
UInt16 | DataType.UInt16 |
UInt32 | DataType.UInt32 |
Boolean | DataType.Boolean |
String | DataType.String |
Niveaux d’accès
Section intitulée « Niveaux d’accès »| Accès modèle | AccessLevel OPC UA |
|---|---|
read | CurrentRead |
readwrite | CurrentRead + CurrentWrite |
write | CurrentWrite |
Les propriétés sont toujours en lecture seule quel que soit l’accès déclaré.
Unités d’ingénierie
Section intitulée « Unités d’ingénierie »Les membres avec métadonnées unit reçoivent des nœuds EUInformation OPC UA. Les membres avec eu_range reçoivent des nœuds EURange. Cela permet aux clients OPC UA d’afficher les unités et la mise à l’échelle correctes.
Méthodes
Section intitulée « Méthodes »Les méthodes de modèle avec métadonnées runtime sont exécutables depuis les clients OPC UA. Les arguments d’entrée et de sortie sont typés et suivent l’ordre de déclaration dans le modèle.
Utilisez n’importe quel client OPC UA (UaExpert, Prosys, ou opcua-commander) pour appeler une méthode :
- Naviguez jusqu’au nœud de l’instance (ex.
centrifugal-pump-001) - Sélectionnez la méthode (ex.
SetSpeed) - Fournissez les arguments d’entrée dans l’ordre de déclaration (ex.
speed_rpm: 900) - Exécutez — le moteur applique la méthode et retourne les arguments de sortie
Les méthodes sans bloc runtime apparaissent dans l’espace d’adresses pour la navigation mais retournent une erreur si appelées.
Configuration
Section intitulée « Configuration »| Option | Variable d’env | Défaut | Description |
|---|---|---|---|
--opcua | — | Désactivé | Activer le serveur OPC UA |
--opcua-port | MIRAVO_OPCUA_PORT | 4840 | Port du serveur |
--opcua-host | MIRAVO_OPCUA_HOST | 0.0.0.0 | Hôte d’écoute du serveur |
Réglage avancé :
| Variable d’env | Défaut | Description |
|---|---|---|
MIRAVO_OPCUA_WRITE_BUDGET | 8192 | Écritures max dans l’espace d’adresses par cycle de drain (512-65536) |
Exécuter plusieurs protocoles
Section intitulée « Exécuter plusieurs protocoles »MQTT et OPC UA peuvent s’exécuter simultanément depuis la même simulation, et des protocoles supplémentaires (Modbus TCP, Sparkplug B) sont sur la feuille de route :
miravo start --template smart-factory --opcuaCela démarre MQTT sur le port 1883 et OPC UA sur le port 4840. Tous les adaptateurs lisent depuis le même graphe d’actifs à chaque tick. Les données sont cohérentes entre les protocoles.
Gestion à l’exécution
Section intitulée « Gestion à l’exécution »Activez ou désactivez OPC UA pendant que la simulation est en cours :
Activer OPC UA :
miravo adapter enable opcua --port 4840Désactiver OPC UA :
miravo adapter disable opcua