FAVORITAR
FecharPlease login

Python FreeOPCUA Server e Client

O OPC UA (Open Platform Communications Unified Architecture) é um protocolo para comunicação industrial, padronizado na IEC 62541. Pablo Melo escreveu o artigo Introdução ao OPC UA, que é uma ótima introdução. Minha intenção não é ser repetitivo, então, recomendo primeiramente ler o artigo citado.

Nesse artigo quero focar no FreeOPCUA que é um projeto para implementar um Stack (pilha) OPC UA de código aberto (open source) e ferramentas associadas. Atualmente, FreeOpcUa é composto por uma biblioteca de Client e Server Python OPC-UA, escrita inteiramente em Python, que está disponível no Github.

Segue os principais links para familiarização:

O que temos que instalar e como, em ambas as máquinas (Desktop e Raspberry):

  1. Python3
  2. pip install freeopcua
  3. pip install cryptography

Para exemplificar o uso do OPC UA Server e Client, utilizarei a configuração ilustrada na figura 1.

No dia 25 de Junho de 2024, ocorrerá o “Seminário de Sistemas Embarcados e IoT 2024“, no Holiday Inn Anhembi — Parque Anhembi, São Paulo–SP.

Garanta seu ingresso

FreeOPCUA
Figura 1 – Raspberry Server e PC Client

Segue o programa em Python escrito para o OPC UA Server, que rodará no Raspberry PI 3, com o sistema operacional Raspbian. O arquivo foi nomeado como Server.py, conforme mostrado a seguir:

Segue o programa em Python escrito para o OPC UA Client, que rodará no Desktop, com o sistema operacional Windows 10. O arquivo foi nomeado como Client.py, conforme mostrado a seguir:

Nesta simples aplicação duas variáveis serão disponibilizadas pelo Server, que são “myData1” e “myDataDatetime”. A variável “myData1” é inicializada com zero, e incrementada em 0.1 a cada dois segundos. A variável “myDataDatetime” é a data e hora de cada incremento. Primeiramente rode o Server, conforme ilustrado na figura 2, e depois rode o Client, figura 3.

FreeOPCUA
Figura 2 – Server rodando no Raspberry PI 3

FreeOPCUA
Figura 3 – Client rodando no Desktop Windows 10

Observe que é simples estabelecer uma conexão entre o Server e o Client. Com esses recursos podemos criar as mais variadas aplicações de forma simples e segura. O limite será sua criatividade.

Uma outra opção para validar o Server é baixar o software UAExpert Client, configurar e estabelecer uma conexão com o Server. Não vou detalhar os passos para configurar o UAExpert Client, porque não é escopo desse artigo, mas, tem alguns tutoriais disponíveis na internet, ver ilustração na figura 4.

Figura 4 – UAExpert servidor configurado

O que podemos ver na figura 5, é a conexão estabelecida, entre o Client e Server, e as duas variáveis sendo consumidas pelo UAExpert Client. Acredito que temos o suficiente para dar uma boa noção de uma aplicação OPC UA Server e Client.

Figura 5 – Dados sendo lidos no Client (UAExpert)

Licença Creative Commons Esta obra está licenciada com uma Licença Creative Commons Atribuição-CompartilhaIgual 4.0 Internacional.
Comentários:
Notificações
Notificar
4 Comentários
recentes
antigos mais votados
Inline Feedbacks
View all comments
Kelvin Andrade
Kelvin Andrade
21/01/2022 09:26

Primeiramente, parabéns ao autor pelo artigo muito bem esclarecido. Apenas uma observação de que essa biblioteca está depreciada e atualmente, o autor da biblioteca, recomenda a utilização desta: https://github.com/FreeOpcUa/opcua-asyncio

Abraço.

vagner mocelin
vagner mocelin
Reply to  Ismael Lopes da Silva
23/06/2021 22:01

Boa noite amigo, seu exemplo me ajudou muito, mas preciso usar o cliente para atualizar valor das variáveis no servidor, poderia me ajudar?

Tiago de oliveira silva
Tiago de oliveira silva
06/05/2021 16:45

Excelente aplicação vc chegou a conectar o raspberry em rede com algum plc

Home » Comunicação » Python FreeOPCUA Server e Client

EM DESTAQUE

WEBINARS

LEIA TAMBÉM

JUNTE-SE HOJE À COMUNIDADE EMBARCADOS

Talvez você goste:
Nenhum resultado encontrado.


Seminário de
Sistemas Embarcados e IoT 2024
 
Data: 25/06 | Local: Hotel Holiday Inn Anhembi, São Paulo-SP
 
GARANTA SEU INGRESSO

 
close-link