O projeto tem como objetivo documentar os testes de comunicação realizado entre um servidor OPC e o Node-Red.
O primeiro passo para iniciar os testes foi definir qual OPC utilizar. Após análise chegamos em dois servidor:
- KEPServer
- Utilizado a versão Enterprise V5
- Prosys OPC UA Simulation Server
- Utilizado a versão 3.1.6-192
O nosso Node-red está na versão 0.19.5.
O node OPC que utilizamos foi node-red-contrib-iiot-opcua.
Após configurado os servidores OPCs e instalado o node OPC, vamos às configurações:
-
Configuração
-
Foi configurado um canal e um dispositivo de teste(modo simulador) no Kepserver conforme imagens:
-
Abrindo o modo Client do Kepserver temos as informações e estrutura que utilizaremos no Node-Red:
- Kepware.KEPServerEnterprise.V5: este é o nome que deverá ser configurado no node do Node-Red.
- Mostra o nome do canal com o dispositivo.
- Identifica o caminho completo da tag OPC que será linkado no Node-Red para leitura ou escrita.
-
As configurações de comunicação e acesso a sistemas externos são configurados conforme imagem abaixo:
Com essas configurações de acesso que podem ser local ou remoto, conforme mostrado acima, temos condições de configurar o Node-Red. No meu caso irei usar as configurações
opc.tcp://192.168.50.130:49370
-
-
Uso
- Com o node OPC devidamente instalado prosseguiremos com as configurações do Node-Red.
- Leitura:
- Para fazer a leitura de um valor vamos usar a seguinte estrutura:
- (1) determina a frequência de leitura da tag OPC. Além disso, na outra aba temos o caminho completo da tag.
- (2.1) este node é o que faz a leitura OPC. Em connector temos que configurar o servidor OPC:
- (2.2) configuração do servidor OPC. Onde é definido o Endpoint, que no nosso caso é
opc.tcp://192.168.50.130:49370/Kepware.KEPServerEnterprise.V5
. Estas configurações estão conforme mostrado anteriormente. O campo Name é bom preencher com o nome da fonte de dados para ficar mais facil identificar caso tenha mais de um conexão OPC.
- (3) resposta da comunicação.
- (4) retorna o valor recebido no console do Node-Red(debug).
- (5) como vimos no item 1, podemos listar quais tag iremos ler. Estes valores retorna um array de x posições. Então para usá-lo temos que 'pegar' o índice do array que necessitamos.
A estrutura de retorno que vai, por exemplo, pro debug é a seguinte
msg.payload[0].value
. Está desta forma porque selecionamos somente um item para leitura. O componente trend do dashboard não tem como personalizar a mensagem que é recebida, então ele recebe os dados somente no msg.payload. Este node convertemsg.payload[0].value
paramsg.payload
. - (6) trend para dashboard.
- (1) determina a frequência de leitura da tag OPC. Além disso, na outra aba temos o caminho completo da tag.
- Para fazer a leitura de um valor vamos usar a seguinte estrutura:
- Escrita
- Para fazer a escrita de um valor vamos usar a seguinte estrutura:
- (1) determina a frequência de leitura da tag OPC. Além disso, na outra aba temos o caminho completo da tag. A terceira opção logo após o caminho completo da tag é o tipo de dados
da tag que deve ser preenchido, quando é uma escrita de dados. No meu caso deixei como
double
. - (2) é o node de escrita OPC.
- (1) determina a frequência de leitura da tag OPC. Além disso, na outra aba temos o caminho completo da tag. A terceira opção logo após o caminho completo da tag é o tipo de dados
da tag que deve ser preenchido, quando é uma escrita de dados. No meu caso deixei como
- Para fazer a escrita de um valor vamos usar a seguinte estrutura:
-
Configuração
-
Uso
Com este testes de uso do node OPC chegamos a conclusão que o Node-Red atende super bem a demandas e configurações que envolvem automação industrial. Com isto se torna um aliado nas demandas da indútria 4.0 e conceito de iiot. Em ambientes de automação existem vários protocolos de ocmunicação e entre ele o que mais estã difundido nos ambientes industriais são basicamenteo o Modbus, seja TCP ou Serial, e o OPC. O Node-Red tendo interface com estes protocolos abre um mundo de possibilidades de conectividade com várias aplicações.
Caso precisem te ajuda ou tenham alguma sugestão, deixe seu comentário Aqui.