Certamente o ESP32 foi uma das melhores coisas que surgiu depois do Arduino, para os que trabalham com automação e há necessidade criar produtos e modelos de negócios sem o uso das tecnologias industriais existentes no mercado.
Sentindo esta busca dos profissionais, a CRESCER criou a CPB32 e desde então vem pesquisando e publicando alguns simulados de aplicações para inspirar e até ser aplicado diretamente para quem se interessar. Além de estar aplicando em seus clientes e comercializando a CPB32 para quem já programa no ESP32.
Neste tutorial, vamos trabalhar com as novas bibliotecas Modbus do Arduino e partir de uma feita para o ESP8266 que roda no ESP32. Vamos também comparar a performance do WIFI e da serial da CPB32 junto com o Scadabr e o Elipse E3.
O ScadaBR é uma ferramenta sensacional para aplicações de supervisório e totalmente Free.
Já o Elipse E3 é uma ferramenta comercial, mas a versão demo é muito boa para estudos de caso e fundamentar o investimento ou não, pois possibilita 20 tags durante 2 horas, podendo abrir novamente quando passar às 2 horas.
A biblioteca abaixo, traz exemplos de Modbus IP e RTU que serão a base de todo este artigo:
Tudo o que estamos mostrando com a CPB32, aplica-se ao ESP32 também.
No vídeo abaixo, mostra-se o funcionamento de um projeto, como verifica-se a performance da rede Wi-Fi entre ScadaBR e CPB32, mostrando-se bem satisfatória para boa parte dos projetos.
No link abaixo se encontra o código exemplo que foi utilizado no vídeo:
No Scadabr, na aba DataSource, deve-se usar o driver mostrado na figura abaixo:
Quando se estuda mais sobre o Modbus, sabe-se que ele trabalha com 4 tipos de registradores, e os supervisórios trazem esta lógica, e nesta biblioteca do Arduino, também vem com estes mesmos 4 tipos.
Um ponto muito importante é o TIMEOUT e o número de tentativas neste MODBUS IP Wi-Fi, efetivamente a conexão pode levar 1 segundo para ocorrer, então é importante encontrar um bom termo para este parâmetro. Quando estávamos com 500 ms que é o default, estávamos até condenando os demais registradores, pensando haver algum problema na library, mas passando para 1000 ms as coisas estabilizaram.
Neste ensaio com o WiFi, sentimos a necessidade de avaliar a performance do Modbus via porta serial, para verificar mais velocidade na resposta.
DICA: Nosso sistema de desenvolvimento no Arduino tem o primeiro passo de encontrar uma Biblioteca ou projeto semelhante, caso este primeiro não atenda o que se propõe, vamos atrás de outra Library até ter certeza de que não existe uma que funcione, após esta pesquisa, vamos à biblioteca mais aderente, buscamos os porquês e consertamos se possível. 70% das vezes dá certo na primeira biblioteca, 29% encontramos alguma biblioteca que atende perfeitamente e 1% das vezes temos que criar algo. Como exemplo de 1% podemos citar o motor de passo, que não encontramos uma library para retirar o máximo de velocidade possível e criamos uma com as interrupções de timer.
No link a seguir, encontramos a biblioteca com performance de troca de dados melhor que a recomendada pelo site Arduino.
No link acima se encontra também uma library pra projetos com Ethernet e Serial,
E Wi-Fi na CPB32 recomendamos a library deste blog.
Aproveitamos este cominho de projeto, no vídeo abaixo se compara qual a melhor performece entre o SCADABR e o Elipse E3.
O que achou deste material? Conte nos mais nos comentários, fique a vontade para dar o seu feedback, compartilhar e nos chamar.
Avalie-nos no google para que possamos alcançar e auxiliar cada vez mais pessoas a fazerem seus projetos e produtos! Contamos com você!