Points clés
- Client OPC UA gratuit : UaExpert, Prosys, Softing et alternatives open source comparés, avec la résolution des erreurs de certificat au premier raccordement.
- Protocole principal : OPC UA GRATUIT — consulter les articles associés sur la page thématique.
- Temps de lecture : 11 min read · 2 060 mots · publié .
Vous avez un serveur OPC UA sur un automate, et vous voulez vérifier qu'il expose bien ce qu'on vous a promis. Il vous faut un client.
Les bons clients OPC UA sont gratuits. Ce n'est pas le problème. Le problème, c'est que la première connexion échoue presque toujours — et pas pour une raison qui apparaît dans les comparatifs d'outils.
Cette page couvre les six clients qui valent l'installation, et surtout ce qui bloque au moment de se connecter.
Sommaire
- Ce qui bloque vraiment : le certificat
- Tableau comparatif
- Les clients graphiques
- Pour les développeurs : les SDK gratuits
- Tester sans matériel
- Ce qu'il faut vérifier avant de choisir
- Ce que les clients gratuits ne font pas
- Questions fréquentes
Ce qui bloque vraiment : le certificat
Avant les outils, la cause d'échec numéro un.
OPC UA n'est pas Modbus. Il ne suffit pas d'entrer une adresse IP et un port. Le protocole impose une authentification mutuelle par certificat X.509 dès que vous sortez du mode sans sécurité.
Concrètement, à la première tentative :
- Le client demande la liste des endpoints au serveur
- Le client reçoit le certificat du serveur et refuse de lui faire confiance
- Vous acceptez le certificat côté client
- Le client envoie le sien — et le serveur le rejette
- Le certificat du client atterrit dans un dossier
rejectedsur le serveur - Vous devez le déplacer manuellement vers le dossier
trusted
C'est cette étape 6 que personne ne documente. Tant qu'elle n'est pas faite, vous tournez en boucle.
Les erreurs que vous verrez
| Code | Cause réelle | Correction |
|---|---|---|
BadCertificateUntrusted | Le certificat n'est pas dans le magasin de confiance | Déplacer de rejected vers trusted, des deux côtés |
BadCertificateHostNameInvalid | Vous vous connectez par IP, le certificat contient un nom d'hôte | Utiliser le nom d'hôte exact, ou régénérer le certificat |
BadSecurityChecksFailed | Politique de sécurité non supportée par l'un des deux | Vérifier la liste des endpoints avant de choisir |
BadIdentityTokenRejected | Mauvais identifiant utilisateur, ou anonyme refusé | Vérifier le mode d'authentification accepté |
BadTcpEndpointUrlInvalid | URL mal formée | Format opc.tcp://hote:4840 |
BadTimeout | Port filtré, ou serveur injoignable | Vérifier le pare-feu sur 4840 |
La méthode qui marche
Commencez toujours en SecurityPolicy: None, MessageSecurityMode: None. Si ça passe, la couche réseau et le serveur fonctionnent. Vous éliminez d'un coup le pare-feu, l'adresse et le port.
Ensuite seulement, remontez vers Basic256Sha256 ou Aes256_Sha256_RsaPss et traitez les certificats. Beaucoup de serveurs désactivent le mode sans sécurité en production — mais en mise en service, il est presque toujours disponible, et c'est votre meilleur outil de diagnostic.
Un piège fréquent : Basic128Rsa15 et Basic256 sont dépréciées par la spécification. Certains serveurs anciens ne proposent que celles-là, et certains clients récents refusent de s'y connecter. Si vous ne voyez aucun endpoint compatible, c'est souvent ça.
Tableau comparatif
| Client | Type | Plateforme | Licence | Points forts |
|---|---|---|---|---|
| UaExpert | Graphique | Windows, Linux | Freeware, inscription | La référence du secteur, extensible par plugins |
| Prosys OPC UA Client | Graphique | Windows, Linux, macOS | Freeware | Diagnostic et journaux détaillés |
| Softing OPC UA Demo Client | Graphique | Windows | Freeware | Léger, bon pour un test rapide |
| opcua-client-gui (FreeOpcUa) | Graphique | Multiplateforme | GPL-3.0 | Open source, scriptable en Python |
| opcua-commander | Terminal | Multiplateforme | MIT | Fonctionne en SSH, sans interface graphique |
| Matrikon OPC UA Explorer | Graphique | Windows | Freeware | Utile si vous avez aussi de l'OPC Classic |
Les clients graphiques
UaExpert
UaExpert, d'Unified Automation, est l'outil de référence. Si vous n'en installez qu'un, c'est celui-là.
Il parcourt l'espace d'adressage, lit et écrit les nœuds, appelle les méthodes, gère les souscriptions, et couvre les jeux de services Data Access, Alarms & Conditions et Historical Access. Des plugins ajoutent l'export XML NodeSet, les tests de performance et l'enregistrement de données.
L'interface est découpée en panneaux : projet, espace d'adressage, attributs, références, et une zone centrale pour les vues spécialisées.
Deux points pratiques. L'inscription est obligatoire pour télécharger, mais gratuite. Et le magasin de certificats se trouve dans le dossier de configuration de l'application — c'est là qu'il faut aller chercher le certificat client à faire accepter par le serveur.
C'est l'outil que la plupart des constructeurs citent dans leur documentation pour valider un serveur OPC UA. Vous le retrouverez dans les manuels Siemens et ABB.
Prosys OPC UA Client
Prosys OPC UA Client découvre les serveurs, liste les endpoints, laisse choisir la politique et le mode de sécurité, puis parcourt l'espace d'adressage.
Ce qui le distingue : ses journaux et vues de diagnostic. Quand une connexion échoue, il vous dit pourquoi de façon exploitable, là où d'autres clients affichent un code d'erreur brut. Pour du dépannage entre un équipement OT et un SCADA, c'est ce qui fait gagner le plus de temps.
Prosys fournit aussi un Simulation Server gratuit, dont je reparle plus bas. Les deux ensemble forment un banc de test complet sans aucun matériel.
Softing OPC UA Demo Client
Softing OPC UA Demo Client est un client de démonstration gratuit destiné à valider une connexion et à parcourir un espace d'adressage.
Plus léger qu'UaExpert, moins complet. À garder pour un test rapide, ou comme deuxième avis quand un client refuse une connexion que l'autre accepte — les implémentations ne réagissent pas toujours pareil face à un serveur mal configuré.
opcua-client-gui
opcua-client-gui, du projet FreeOpcUa, est un client graphique en PyQt bâti sur la bibliothèque Python. Parcours, souscriptions, écriture de variables.
Son intérêt n'est pas l'interface, qui est plus rustique que celle d'UaExpert. C'est que vous êtes déjà dans l'écosystème Python : quand le test manuel ne suffit plus, vous passez à un script avec la même bibliothèque, sans rien réapprendre.
Licence GPL-3.0 pour les outils graphiques, LGPL-3.0 pour les bibliothèques. La distinction compte si vous intégrez du code dans un produit livré à un client.
opcua-commander
opcua-commander est un client en mode terminal, bâti sur node-opcua. Licence MIT.
Cas d'usage précis et sous-estimé : vous êtes connecté en SSH à une passerelle Linux dans une armoire, sans interface graphique, et vous voulez vérifier qu'un serveur OPC UA répond. Aucun client graphique ne vous servira. Celui-là fonctionne dans un terminal.
Sur un site distant, ça évite un déplacement.
Matrikon OPC UA Explorer
Matrikon OPC UA Explorer, de Honeywell, est un client de test gratuit pour serveurs OPC UA.
Attention à ne pas le confondre avec Matrikon OPC Explorer, qui est un outil OPC Classic — DA, HDA et A&E — et ne parle pas OPC UA du tout. Les deux produits portent des noms presque identiques et sont distribués par le même éditeur. C'est une confusion très répandue.
Si votre installation mélange de l'OPC Classic et de l'OPC UA, disposer des deux outils du même éditeur simplifie les choses.
Pour les développeurs : les SDK gratuits
Quand le test manuel ne suffit plus, vous écrivez du code. Quatre piles gratuites et sérieuses :
| SDK | Langage | Licence | Remarque |
|---|---|---|---|
| open62541 | C | MPL 2.0 | Très léger, cible embarqué |
| Eclipse Milo | Java | EPL | Client et serveur, écosystème Eclipse |
| opcua-asyncio | Python | LGPL | Successeur de python-opcua, asynchrone |
| node-opcua | JavaScript | MIT | Base d'opcua-commander |
Un point d'attention : python-opcua est déprécié. Beaucoup de tutoriels en ligne le citent encore. Utilisez opcua-asyncio pour tout nouveau projet.
La licence MPL 2.0 d'open62541 et la MIT de node-opcua sont les plus souples pour un produit commercial. Les licences LGPL et EPL demandent plus d'attention.
Tester sans matériel
Vous n'avez pas toujours un automate sous la main. Trois serveurs OPC UA gratuits pour travailler à vide :
Prosys OPC UA Simulation Server — gratuit, simule un espace d'adressage complet avec des valeurs qui évoluent. Le plus simple à mettre en route.
Serveur de démonstration open62541 — inclus dans les exemples du projet. Idéal pour tester une pile embarquée.
opcua-asyncio — quelques lignes de Python suffisent à exposer un serveur avec vos propres nœuds. Pratique quand vous voulez reproduire exactement la structure d'un équipement réel.
C'est aussi la bonne façon de s'entraîner sur les certificats : vous cassez et réparez la configuration de sécurité autant de fois que nécessaire, sans toucher à une installation en exploitation.
Ce qu'il faut vérifier avant de choisir
| Fonction | Pourquoi ça compte |
|---|---|
| Découverte des endpoints | Voir ce que le serveur propose réellement avant de tenter une connexion |
| Gestion du magasin de certificats | Sans accès aux dossiers trusted et rejected, vous êtes bloqué |
| Souscriptions | Voir les changements de valeur, pas seulement lire à la demande |
| Appel de méthodes | Nécessaire pour tester un modèle d'information complet |
| Accès historique | Si le serveur expose un historien |
| Export NodeSet XML | Pour documenter ou reproduire un espace d'adressage |
| Mode d'authentification | Anonyme, identifiant/mot de passe, ou certificat utilisateur |
Les trois premières lignes sont indispensables. Le reste dépend de votre besoin.
Ce que les clients gratuits ne font pas
Pas de collecte industrielle. Un client de test n'est pas un serveur de données. Pour alimenter un historien ou un SCADA en continu, il faut une passerelle ou une plateforme.
Pas de scriptage avancé dans les clients graphiques. Pour rejouer une séquence de tests, vous passerez par un SDK.
Pas de support. Aucun numéro à appeler quand une connexion refuse de s'établir la veille d'une mise en service.
Pas de gestion de parc de certificats. Sur une installation avec vingt serveurs OPC UA, la gestion manuelle des magasins de confiance devient ingérable. C'est ce que résolvent les infrastructures de gestion de certificats commerciales — et c'est un vrai sujet, pas un argument commercial.
Pour tester, dépanner, apprendre et développer, le gratuit suffit. Les ingénieurs qui travaillent quotidiennement en OPC UA ont généralement UaExpert et un SDK, et rien d'autre.
Et pour superviser, pas seulement tester ?
Ces clients servent à vérifier et à dépanner. Dès qu'il faut des synoptiques, des alarmes et un historique, il vous faut une plateforme — plusieurs sont gratuites et gèrent OPC UA nativement.
Questions fréquentes
Quel est le meilleur client OPC UA gratuit ?
UaExpert, sans hésiter, pour un usage général. Prosys OPC UA Client si votre priorité est le diagnostic de connexion. opcua-commander si vous travaillez en SSH sans interface graphique.
Pourquoi ma connexion OPC UA échoue-t-elle au premier essai ?
Presque toujours le certificat. Le serveur rejette celui du client et le place dans un dossier rejected. Il faut le déplacer manuellement vers trusted côté serveur. Testez d'abord en mode de sécurité None pour isoler le problème.
Quel port utilise OPC UA ?
4840 par défaut, en TCP, avec des URL de la forme opc.tcp://hote:4840. Beaucoup d'équipements utilisent un autre port — vérifiez la documentation constructeur.
UaExpert est-il vraiment gratuit ?
Oui. L'inscription sur le site d'Unified Automation est obligatoire pour télécharger, mais il n'y a ni licence à acheter ni limitation fonctionnelle.
Peut-on tester OPC UA sans automate ?
Oui. Prosys OPC UA Simulation Server, le serveur de démonstration d'open62541 ou quelques lignes avec opcua-asyncio suffisent à créer un serveur de test.
Quelle différence entre un client OPC UA et un client OPC Classic ?
OPC Classic — DA, HDA, A&E — repose sur COM/DCOM et ne fonctionne qu'entre machines Windows. OPC UA est indépendant de la plateforme, chiffré, et utilise TCP. Les outils ne sont pas interchangeables, malgré des noms de produits parfois très proches.
Quelle politique de sécurité choisir ?
Basic256Sha256 au minimum, Aes256_Sha256_RsaPss si le serveur la propose. Basic128Rsa15 et Basic256 sont dépréciées et ne devraient plus être utilisées en production.