Cursos / Automação Industrial / Redes Industriais / Aula

arrow_back Aula 04 - Protocolo Modbus e Padrão OPC

Protocolo Modbus e o modelo OSI

No modelo OSI, o protocolo Modbus é inserido na camada de aplicação, mas em sua implementação é necessário o uso de outros protocolos presentes em outras camadas do modelo OSI. Dependendo do tipo de Modbus utilizado, as camadas de enlace e física fazem uso de outros protocolos, como o Ethernet, RS-232, RS-485, RS-422. Neles é definida a estrutura para comunicação de dados entre os dispositivos microprocessados, bem como seu processo de detecção de erros e instruções para falhas de comunicação.

Protocolo Modbus Padrão

O protocolo Modbus Padrão acessa o meio lógico por meio do protocolo mestre-escravo. Durante a comunicação em uma rede Modbus, o protocolo determina como o dispositivo conhecerá seu endereço, como reconhecerá uma mensagem endereçada para ele, definindo o tipo de ação a ser tomada e como extrair o dado ou outra informação qualquer contida na mensagem. Se uma resposta é necessária, o protocolo indicará como o dispositivo construirá uma mensagem e a enviará. O mestre pode endereçar mensagens para um escravo individual ou enviar mensagens para todos (broadcast). Os escravos retornam uma mensagem somente para as consultas endereçadas especificamente para ele, pois as mensagens broadcast não geram respostas.

Em sua topologia física, o protocolo Modbus Padrão utiliza o RS-232, para comunicação ponto a ponto e o RS-485 para comunicações multiponto ou do tipo barramento.

Comunicação entre dispositivos usando o protocolo Modbus.

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. 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 bytes de dados contêm um código que descreverá o erro. A verificação de erro permite ao mestre validar os dados recebidos.

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 início e fim de mensagem. O CRC descarta os bits de início, 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 ocorrer 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.

Versão 5.3 - Todos os Direitos reservados