Page 1 sur 1

[S7-1500] Problème connexion client OPC UA

Posté : 21 févr. 2023, 15:57
par Vicnnet
Bonjour à tous,

Je viens de débuter un nouveau projet qui intègre une communication OPC UA.
  • Le server OPC UA est un automate Siemens S7-1211
  • Le client OPC UA est un automate Siemens S7-1212SP

Côté server, pas de problème, tout fonctionne
Image

Au niveau de la configuration du client, pas de problème non plus.
Image

En revanche, quand j'essaie de récupérer les datas dans l'automate à partir du bloc fonction "OpcUaClient" (Récupéré dans un projet exemple Siemens), ça se complique.
Lorsque j'appelle ce bloc, la sortie "status" alterne entre 16#7001 (Job is running) et 16#8617 (Error in the status list after read of namespace indexes.) et la sortie "error" s'active.
Image
Image

Quelqu'un a déjà été confronté à un problème similaire ?

Merci d'avance.

Re: [S7-1500] Problème connexion client OPC UA

Posté : 22 févr. 2023, 07:11
par dehell
Bonjour,
Si j'ai bien compris, tu souhaites faire communiquer entre eux 2 automates Siemens?
Si oui, tu n'es pas obligé d'utiliser le protocole OPC UA, pour moi OPC UA est plus destistiné au système de la couche supérieure (Supervision,...)
Pour faire communiquer ces 2 automates il faut utiliser GET/PUT.
https://support.industry.siemens.com/cs ... 0&lc=fr-FR

Re: [S7-1500] Problème connexion client OPC UA

Posté : 22 févr. 2023, 08:39
par sinced
dehell a écrit : 22 févr. 2023, 07:11 Bonjour,
Si j'ai bien compris, tu souhaites faire communiquer entre eux 2 automates Siemens?
Si oui, tu n'es pas obligé d'utiliser le protocole OPC UA, pour moi OPC UA est plus destistiné au système de la couche supérieure (Supervision,...)
Pour faire communiquer ces 2 automates il faut utiliser GET/PUT.
https://support.industry.siemens.com/cs ... 0&lc=fr-FR
PUT/GET ou encore plus simplement du profinet IO.
Par contre pour ton problème, que se passe t il quand tu lances une lecture / écriture ?

Re: [S7-1500] Problème connexion client OPC UA

Posté : 28 févr. 2023, 10:27
par Vicnnet
Merci pour vos réponses.

Effectivement, l'utilisation des fonctions PUT/GET aurait été plus simple, mais le constructeur de la machine avec lequel je dois dialoguer m'impose l'OPC-UA.
J'ai finalement abandonné l'utilisation du bloc complet "OpcUaClient" fourni dans le projet exemple de Siemens.

Je l'ai remplacé par les blocs fonctions ci-dessous :
1. OPC_UA_Connect
2. OPC_UA_NamespaceGetIndexList
3. OPC_UA_NodeGetHandleList
4. OPC_UA_MethodGetHandleList
5. OPC_UA_ReadList_C
6. OPC_UA_WriteList_C

Et là, miracle, plus de problème de communication :D