Boa noite pessoal, gostaria de ver se poderiam ajudar com ideias para que eu possa melhorar minha aplicação. Tenho 4 arduinos comunicando via modbus serial, Rs485 e utilizo o ScadaBR para aquisição dos dados. Tenho tido problemas frequentes com quedas da rede e escravos que somem da rede. Acredito que seja problemas de mau contato, ruídos ou sei lá. Agora mesmo, dois deles saíram da rede e mesmo revisando as conexões, não retornam. Gostaria de substituir esta comunicação serial por TCP IP, mas não sei se é possível fazer esta comunicação destes arduinos com o ScadaBR e fazer a aquisição dos dados. Gostaria da ajuda da galera pra saber se é possível ou tem alguma outra forma de fazer. Desde já agradeço. 

Exibições: 463

Responder esta

Respostas a este tópico

Oi Juliano, é bom saber que vc esta no ritmo com SCadaBR, eu espero começar um momento a desenvolver na parde de software o scadabr, que atualmente tem o modelo SCADALTS, mas o caminho ainda é longo ja que to no B-A-BA da desenvolvimento. No geral o que eu vejo, que vai ajudar trocar para TCP/IP, mas vc vai ter que adaptar seus arduinos para coneXao ethernet via cabo par-traçado, adaptar as regras de distancia no maximo 100 metros longe da fonte, mas acho que seria uma boa sim, pois evitaria o problema da serial que é muito dependente do clock do seu PC, uma outra opçao seria vc ter um CLP que faria a comunicaçao seriaL com sues arduinos e uma comunicaçao ethernet com o SCADABR, pois desse jeito evitaria o trabalho de ter que refatorar todo o codigo dos seus arduinos. Bem o que te falo é apenas a opiniao de um curioso, ainda nao profissional,. mas se isso poder lhe ajudar com algumas ideias fica a dica.

opa, blz Adriano, obrigado pelo retorno. Estou vendo as possibilidades. Estou dando uma olhada nessa placa ESP32. Quem sabe, trocar todos arduinos por ela. Vou dar uma lida melhor sobre esta placa, mas não vi como colocar todas comunicando ao mesmo tempo com o Scada. Não conheço nenhum outro servidor ou supervisório open source para aquisição de dados. 

Ainda acho que o melhor seria colocar um clp entre seus escravos e o scadabr e do clp para o scadabr usar comunicacao ethernet. Assim tudo ficaria transparente para seus arduinos, to quase certo que o problema esta na geraçao do sincronismo do PC para os arduinos, um clp resolveria isso muito bem, vc so teria que reconfigurar seu datasources.

Olá Juliano,

Sim, é possível usar TCP/IP com ScadaBR tanto nos escravos, quanto no servidor (Master).

Para isso terá que criar um Sketch Arduino que se comunique usando um módulo Ethernet, por exemplo, usando as APIs da camada TCP/IP.

Também é possível usar ao invés de Ethernet, o WiFi, por exemplo, já que em ambas camadas de Enlace, podemos trafegar TCP/IP. Para WiFi use um módulo ESP-01 ou ESP8266, por exemplo.


Ou seja, poderia ter uma rede Wireless, Ethernet ou ambos misturados, em uma rede local ou mesmo passando por Enlaces fim-a-fim (tuneis IP) de longa distância em redes públicas de Telecomunicações.

Exemplo do Sketch e configuração:  https://portal.vidadesilicio.com.br/scadabr-modbus-tcp-ip/

Opa blz Rodrigo, estou dando uma lida sobre a placa esp32. Talvez trocar meus arduinos por esta placa. Vi que tem 38 pinos. Somente para um não irei conseguir substituir pois uso um mega, devido a quantidade de pontos. Estive olhando a questão do modbus ip no scadabr, mas consigo colocar somente um ip na configuração do data source. Isto é um problema. Não conheço outro sistema open source para aquisição de dados ou supervisório. Vou pesquisar mais sobre esta placa e talvez ja pegar uma para testes.

Existe um mundo de soluções alternativas baseadas em MQTT. Teria que pesquisar.

Exemplo: https://www.embarcados.com.br/mqtt-dash/

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço