26
Diane | dezembro de 2009 Protocolo MODBUS André Tomaz de Carvalho André Tomaz de Carvalho DLE - Cepel DLE - Cepel

Diane | dezembro de 2009 Protocolo MODBUS André Tomaz de Carvalho DLE - Cepel

Embed Size (px)

Citation preview

Page 1: Diane | dezembro de 2009 Protocolo MODBUS André Tomaz de Carvalho DLE - Cepel

Diane | dezembro de 2009

Protocolo MODBUS

André Tomaz de CarvalhoAndré Tomaz de CarvalhoDLE - CepelDLE - Cepel

Page 2: Diane | dezembro de 2009 Protocolo MODBUS André Tomaz de Carvalho DLE - Cepel

Diane | dezembro de 2009

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.

Page 3: Diane | dezembro de 2009 Protocolo MODBUS André Tomaz de Carvalho DLE - Cepel

Diane | dezembro de 2009

Conseqüências

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.

Page 4: Diane | dezembro de 2009 Protocolo MODBUS André Tomaz de Carvalho DLE - Cepel

Diane | dezembro de 2009

Tipos de Protocolos MODBUS

Modbus TCP/IP Modbus Plus Modbus

Page 5: Diane | dezembro de 2009 Protocolo MODBUS André Tomaz de Carvalho DLE - Cepel

Diane | dezembro de 2009

Modbus TCP/IP

O MODBUS TCP/IP é usado para comunicação entre sistemas de supervisão e controladores lógicos programáveis.

O protocolo Modbus é encapsulado no protocolo TCP/IP.

Page 6: Diane | dezembro de 2009 Protocolo MODBUS André Tomaz de Carvalho DLE - Cepel

Diane | dezembro de 2009

Modbus PLUS

O MODBUS PLUS é usado para comunicação entre si de controladores lógicos programáveis, módulos de E/S, chaves de partida eletrônica de motores, interfaces homem máquina etc.

O meio físico é o RS-485 com taxas de transmissão de até 1 Mbps.

É uma extensão do Modbus Padrão.

Page 7: Diane | dezembro de 2009 Protocolo MODBUS André Tomaz de Carvalho DLE - Cepel

Diane | dezembro de 2009

Modbus Padrão

O MODBUS PADRÃO é usado para comunicação dos CLPs com os dispositivos de entrada e saída de dados, instrumentos eletrônicos inteligentes (IEDs) como relés de proteção, controladores de processo, atuadores de válvulas, transdutores de energia e etc.

O meio físico é o RS-232 ou RS-485 em conjunto com o protocolo mestre-escravo.

Page 8: Diane | dezembro de 2009 Protocolo MODBUS André Tomaz de Carvalho DLE - Cepel

Diane | dezembro de 2009

RS-485

Page 9: Diane | dezembro de 2009 Protocolo MODBUS André Tomaz de Carvalho DLE - Cepel

Diane | dezembro de 2009

Comparação com o Modelo OSI

Page 10: Diane | dezembro de 2009 Protocolo MODBUS André Tomaz de Carvalho DLE - Cepel

Diane | dezembro de 2009

Comparação com o Modelo OSI

O protocolo MODBUS PADRÃO pode ser enquadrado na camada de aplicação do modelo OSI.

Os protocolos MODBUS são usados associados com outros protocolos da camada de enlace e camada física (RS-232, RS-485 e Ethernet).

Ele define uma estrutura de mensagens de comunicação usadas para transferir dados discretos e analógicos entre dispositivos microprocessados com detecção e informação de erros de transmissão.

Page 11: Diane | dezembro de 2009 Protocolo MODBUS André Tomaz de Carvalho DLE - Cepel

Diane | dezembro de 2009

Protocolo Modbus Padrão

Escopo do Protocolo Como o CLP solicita o acesso a outro dispositivo Como este responderá Como os erros serão detectados e informados.

Topologia Física Ponto a Ponto com RS-232. Barramento Mutiponto com RS-485.

Controle de Acesso ao Meio Protocolo Mestre-escravo.

Page 12: Diane | dezembro de 2009 Protocolo MODBUS André Tomaz de Carvalho DLE - Cepel

Diane | dezembro de 2009

Transação Típica

Na mensagem de consulta, o código de função informa ao dispositivo escravo com o respectivo endereço, qual a ação a ser executada. Os bytes de dados contêm informações para o escravo, por exemplo, qual o registrador inicial e a quantidade de registros a serem lidos. O campo de verificação de erro permite ao escravo validar os dados recebidos.

Page 13: Diane | dezembro de 2009 Protocolo MODBUS André Tomaz de Carvalho DLE - Cepel

Diane | dezembro de 2009

Transação Típica

Na mensagem de resposta, o código de função é repetido de volta para o mestre. Os bytes de dados contêm os dados coletados pelo escravo ou o seu estado. Se um erro ocorre, o código de função é modificado para indicar que a resposta é uma resposta de erro e os byte de dados contém um código que descreverá o erro. A verificação de erro permite o mestre validar os dados recebidos.

Page 14: Diane | dezembro de 2009 Protocolo MODBUS André Tomaz de Carvalho DLE - Cepel

Diane | dezembro de 2009

Conteúdo da Transação

Endereçamento (1 byte) 0 : Usado para “broadcast”. 1 a 247 : Usados pelos escravos.

Código da Função (1 byte) Estabelece a ação a ser efetuada. 0 a 127 : Funções 128 a 255 : Informe de erro na transmissão.

Bytes de Dados Informação adicionais necessárias. Endereços de memória Quantidade de itens transmitidos Quantidade de bytes do campo

Verificação de Erros (2 bytes) LRC ou CRC

Page 15: Diane | dezembro de 2009 Protocolo MODBUS André Tomaz de Carvalho DLE - Cepel

Diane | dezembro de 2009

Alguns detalhes

A verificação de erro é efetuada opcionalmente pela paridade de cada byte transmitido e obrigatoriamente pelo método LRC ou CRC sobre toda a mensagem. O LRC descarta os caracteres de inicio e fim de mensagem. O CRC descarta os bits de inicio, paridade e parada de cada

byte. O dispositivo mestre espera uma resposta por um

determinado tempo antes de abortar uma transação (timeout). O tempo deve ser longo o suficiente para permitir a resposta

de qualquer escravo. Se ocorre um erro de transmissão, o escravo não construirá a

resposta para o mestre. Será detectado um “timeout” e o mestre tomará as providências programadas.

Page 16: Diane | dezembro de 2009 Protocolo MODBUS André Tomaz de Carvalho DLE - Cepel

Diane | dezembro de 2009

Modos de Transmissão

Algumas características do protocolo Modbus são fixas, como o formato da mensagem, funções disponíveis e tratamento de erros de comunicação.

Outras características são selecionáveis como o meio de transmissão, velocidade, timeout, bits de parada e paridade e o modo de transmissão (RTU os ASCII).

A seleção do modo de transmissão define como os dados serão codificados. RTU = BINÁRIO ASCII = TEXTO

Page 17: Diane | dezembro de 2009 Protocolo MODBUS André Tomaz de Carvalho DLE - Cepel

Diane | dezembro de 2009

Modos de Transmissão

O modo ASCII permite intervalos de tempo de até um segundo entre os caracteres sem provocar erros, mas sua mensagem típica tem um tamanho duas vezes maior que a mensagem equivalente usando o modo RTU.

O modo RTU transmite a informação com um menor número de bits, mas a mensagem deve ter todos os seus caracteres enviados em uma seqüência contínua.

O modo RTU também é chamado de ModBus-B ou Modbus Binario e é o modo preferencial.

Page 18: Diane | dezembro de 2009 Protocolo MODBUS André Tomaz de Carvalho DLE - Cepel

Diane | dezembro de 2009

Modelagem de Dados

Page 19: Diane | dezembro de 2009 Protocolo MODBUS André Tomaz de Carvalho DLE - Cepel

Diane | dezembro de 2009

Modelagem de Dados

Todo dispositivo em uma rede Modbus deve ter a sua memória dividida em registradores de 16 bits numerados conforme o modelo apresentado.

A divisão é baseada na estrutura de memória de um CLP: Saídas discretas para os atuadores ON-OFF utilizam um bit. Cada

registrador comporta 16 saídas. Entradas discretas para os sensores ON-OFF utilizam um bit. Cada

registrador comporta 16 entradas. Entradas analógicas utilizam registradores de 16 bits para os

valores obtidos por conversores A/D a partir dos sinais dos sensores analógicos.

Registradores de Memória com 16 bits para os valores utilizados internamente no CLP.

Page 20: Diane | dezembro de 2009 Protocolo MODBUS André Tomaz de Carvalho DLE - Cepel

Diane | dezembro de 2009

Exemplo de Transação

Page 21: Diane | dezembro de 2009 Protocolo MODBUS André Tomaz de Carvalho DLE - Cepel

Diane | dezembro de 2009

Exemplo de Transação

O escravo repete o código da função indicando uma resposta normal.

A quantidade de bytes especifica quantos itens estão sendo retornados.

Page 22: Diane | dezembro de 2009 Protocolo MODBUS André Tomaz de Carvalho DLE - Cepel

Diane | dezembro de 2009

Algumas Funções Elementares

A identificação dos comandos (funções) de leitura e escrita são diferentes de acordo com o tipo de dado a ser lido ou escrito. A função 1 efetua a leitura do estado das saídas discretas. A função 5 efetua a escrita de uma única saída discreta. A função 15 efetua a escrita de múltiplas saídas discretas. A função 2 efetua a leitura do estado das entradas discretas. A função 4 efetua a leitura dos valores das entradas

analógicas. A função 3 efetua a leitura dos valores dos registradores de

memória. A função 6 efetua a escrita de um valor em um registrador de

memória. A função 16 efetua a escrita de múltiplos valores em

registradores de memória.

Page 23: Diane | dezembro de 2009 Protocolo MODBUS André Tomaz de Carvalho DLE - Cepel

Diane | dezembro de 2009

Referências

Page 24: Diane | dezembro de 2009 Protocolo MODBUS André Tomaz de Carvalho DLE - Cepel

Diane | dezembro de 2009

Dica

Isso se aprende na prática!!!Botando pra funcionar!!!

Page 25: Diane | dezembro de 2009 Protocolo MODBUS André Tomaz de Carvalho DLE - Cepel

Diane | dezembro de 2009

MODSIM

Page 26: Diane | dezembro de 2009 Protocolo MODBUS André Tomaz de Carvalho DLE - Cepel

Diane | dezembro de 2009

Contato:Contato:[email protected]@cepel.br