Escolar Documentos
Profissional Documentos
Cultura Documentos
Bom, apresento neste momento um pequeno Tutorial para efetuar a comunicação ModBus, no Supervisório Scada
com a plataforma de estudo Arduino.
Neste artigo não é uma explicação do Software Elipse Scada, e sim uma uma breve ajuda para que possamos efetuar a
configuração do drive de comunicação ModBus RTU com o Elipse Sacada.
Os Testes foram feito na plataforma Arduino Duemilanove 328 e do Software Elipse Scada Elipse Demo
v2.29 build 126.
1º Passo Será uma pequena explicação do protocolo ModBus RTU. Somente sendo abordado os holding register.
2ºPasso Será uma pequena explicação da modificação que eu efetuei no programa ModBus Slave.
3ºPasso Será uma pequena explicação do painel Principal do Software Scada Elipse.
4ºPasso configuração do drive Modbus.
5ºPasso inserindo objetos e tags.
Protocolo Modbus
História
Criado em 1979, para comunicação entre controladores da Modicon (Schneider).Especificação aberta desde
o inicio,fácil operação e manutenção.
Padrão “de fato” ao ser adotado por vários fornecedores. adotado em vários níveis de aplicações, inclusive
sistemas de supervisão.
Na cama física os sistemas ModBus em linha seriais podem usar diferentes interfaces físicas
(RS485,RS232 e etc). A interface RS485 de 2 fios(Half Duplex) é a mais comum.
No entanto, a interface RS485 de 4 fios(Full Duplex) também pode ser implementada. A interface serial
RS232 só pode ser utilizada quando uma comunicação ponto a ponto de curta distância.
Função ModBus
Como a modificação da biblioteca ModBus Slave foi efetuada somente nos holding register então só abordarei este
registrador neste tutorial.
A Função 3 (Read Holdig Register) Efetua a leitura dos valores dos registradores de memória do endereço (40XXX ).
dentro da biblioteca do ModBus, Slave pode ser criado um valor considerado de registradores para serem atrelados a
pinos do Arduino ou incorporados a variáveis para que o mestre possa ler seus valores, e assim podendo ser
visualizado em um Display, Ou compartilhado para outros componentes da rede como: outra plataforma Arduino,
CLP, IHM , Etc...
MESTRE
Na figura acima é mostrado como foi criados registradores, como está sendo utilizado os holding register foi
endereçado com é especificado na norma ModBus.
A figura acima será utilizado como uma tabela para endereçar quando estiver configurando os tag no Elipse.
Os controladores universais industriais trabalham nesta mesma ordem cada registrador é atrelado há uma função.
Configuração serial
const unsigned char SLAVE = 10; este parâmetro configura o endereço do escravo.
const long BAUD = 115200; este parâmetro configura a velocidade de comunicação da porta serial.
const char PARITY = 'n'; este parâmetro configura a pariedade da comunicação da porta serial.
const char TXENPIN = 2; este parâmetro configura o pino que habilita e desabilita o CI MAX 485 quando
está sendo usado o conversor 485/TTL.
Na figura acima mostra como que foi atrelado os pinos do Arduino com os registradores
regs[MB_40000] = analogRead(A0); neste registrador ele assume qualquer valor analógico que seja submetido ao pino
A0.
analogWrite(3,regs[MB_40006]); neste registrador ele enviará um valor para o PWM do pino 3 ou pode ler o valor
do PWM quando for inserido anteriormente.
OBS: a função analogwrite(). Assume valores de 0 á 255, então não será possível enviar valores maiores que 256.
DigitalWrite(2, regs[MB_40012]); neste registrador ele enviará um valor digital para o pino 2 ou recebera´um valor inserido
no pino 2.
Agora grave o programa Elipse_Modbus em eu Aduino para podermos configurar o Software Elipse Scada.
Muito importante!!!!!!!!
Os valores que são enviados para os registradores especialmente as entradas analógicas não foram acrecida de
nenhuma função matemática para correção então será necessariíssimo inseri-las para calibração.
Resumindo os valores são puramente o que será injetado na entada do respectivo pinos.
Apos o procedimento, vai aparecer esta mensagem e clik e sim. para rodar o demo do software.
Então aparecerá a janela do software,observe que praticamente todos os componentes da paleta estão apagados isso
ocorre pois não existe nenhuma aplicação então deveremos criar uma nova aplicação,que veremos nos quadros abaixo.
Então Clik em arquivo menu,nova aplicação como mostra a figura abaixo.
Vai aparecer uma caixa de dialogo para salvar o nome e a localização do aquivo, como mostra na figura abaixo.
Agora o ambiente de desenvolvimento está pronto para começamos efetuar as configurações. observe que após a
criação da aplicação todos os componentes da paleta estão acesos.
Configuração do Drive
OBS:A (COM) que será utilizada é mesma que está sendo usada pela a IDE do Arduino. Os dados da comunicação
Serial do programa ModBus Slave está sendo explicada na Pag. 3.
Após a configuração feche os Dialogos, Menos o do organize, pois no próximo passo será criado o tag pra poder testar a
comunicação.
1ºpasso: Click em tag.
2ºpasso: Click em Novo tag
3ºpasso: Click em Tag Plc____.É utilizado para trocar informações com os equipamentos de aquisição de dados (escrita
e leitura).
4ºpasso: de um nome para o tag e a quantidade de tag que você deseja em seu projeto. E pressione a tecla Enter.
1ºpasso: podemos ver o tag que foi criado. A ideia de criar o nome do tag é esma de criar uma variavel.a escolha do
nome é desejavel que seja sujestivo como estamos associando aos registradores do Arduino então não vou criar um
tag( cachorro quente).então criei o tag REG_40000. Pois vai ser o registador que eu vou acessar no Arduino.
2ºpasso: Neta janela podemos observar o nome do drive que estamos usando neste exemplo.
3ºpasso: nesta janela podemos observar os 5 campos para configuração: N1,N2,N3 e Scan
N1=Endereço do escravo no nosso caso é 10.
N2= Função do drive que é função Holding Register 3
N3=Não usado.
N4= Endereço do registrador no nosso casso é o 40000 que está atrelado a entrada analógica do Arduino A0.
Scan = . É o tempo que o drive leva para atualizar os seu dados esta setado para 1segundo.
4º passo: E´onde poderemos testar a comunicação do Arduino com o Software Elipse Scada.
Caso você tenha seguido todos os passos descritos acima, Nesta janela aparesentara o valor que poderá ser visualizado
na figura abaixo após pressionar o botão ler .
Se ocorrer a resposta leitura OK. Significa que você segui os passos anteriores muito bem.
Agora vamos adicionar um objeto na nossa aplicação. E adicionar um tag. Feche o dialogo Organize e vá na paleta de
componentes e dê um o Click no componente Display e o arraste para o meio da tela como mostra a figura abaixo.
Dê um duplo Click no objeto Display. abrirá um dialogo chamado Propriedade do Display.
Agora feche o dialogo do Display e pressiona a tecal F10 do seu teclado para rodar a aplicação como pode ser vista na
figura abaixo.
Referencias;
Manual do driver Modicon Modbus
Tutorial Elipse Scada.
Rede Modbus Eng. Marcelo Saraiva Coelho.
Biblioteca Modbus Slave: André Sarmento Barbosa
4ºsdshbnbn
HTHRTHHRT
RTRTRTHRTHRTT
WEFGRRRDSVSDFVIÇIOÇIOÇPLUIUUIIU
TJ65