Modbus: como funciona o protocolo, exemplos, fundamentos e mais
As redes industriais necessitam de organização e qualidade na troca de informações e esse é o papel a ser cumprido pelos protocolos de comunicação, como o Modbus.
Com código aberto, ou seja, uso livre, este protocolo é uma das soluções mais utilizadas.
Bastante acessível, esse método de transmissão de informações se tornou padrão para a interligação de vários dispositivos industriais, conseguindo realizar a comunicação entre equipamentos de fabricantes distintos.
Neste artigo, te convidamos a conhecer o funcionamento do protocolo, seus modos de transmissão e suas principais aplicações. Confira!
O que é Modbus?
Modbus é um protocolo de comunicação de dados aberto usado em sistemas de automação industrial. Realiza a comunicação entre dispositivos no formato mestre-escravo ou cliente-servidor, interligando hardwares e softwares.
Essa estrutura de mensagem foi desenvolvida pela Modicon, em 1979, tendo seu uso disponibilizado ao público pela Modbus Organization.
O módulo se adapta facilmente a uma grande variedade de equipamentos, sendo considerado uma das soluções mais abrangentes e econômicas da automação industrial.
Principais características do Modbus
- É baseado no modelo de comunicação mestre-escravo;
- Se destaca pela simplicidade e facilidade de implementação;
- Pode trabalhar com os modos de transmissão: RTU, ASCII ou TCP/IP;
- Seus meios físicos podem ser: o RS-232, RS-485 ou Ethernet;
- Aceita a comunicação com até 247 dispositivos escravos;
- Possui comandos para envio de dados discretos ou numéricos;
- É um protocolo de alta universalidade;
- Suas informações são transmitidas entre equipamentos conectados em redes seriais através de dados em série de uns e zeros (bits).
Para que serve o Modbus?
O Modbus serve para comunicar um dispositivo mestre com outros dispositivos escravos, não importando o tipo de rede utilizado. Integra a camada de aplicação do modelo OSI e usa como meios físicos os padrões RS-232, RS-485 ou Ethernet TCP/IP (Modbus TCP).
Cada padrão possui características específicas, como a velocidade de comunicação, a quantidade máxima de dispositivos conectados e o comprimento da rede.
O Modbus envia dados numéricos ou discretos, como Bits de entradas e saídas digitais ou analógicas.
Trata-se de um tradicional e popular protocolo em rede de CLPs (Controlador Lógico Programável) para comunicação com dispositivos e periféricos externos via rede.
Funcionamento do TCP/IP
1. Camadas do Modelo TCP/IP:
- Camada de Aplicação: Onde os dados são gerados e as aplicações interagem com a rede (HTTP, FTP, SMTP, etc.).
- Camada de Transporte: Responsável pela entrega confiável dos dados (TCP) ou pela entrega rápida, mas não garantida (UDP).
- Camada de Internet: Gerencia o endereçamento e roteamento dos pacotes (IP).
- Camada de Acesso à Rede: Cuida da transmissão física dos dados através da rede (Ethernet, Wi-Fi, etc.).
2. Processo de Comunicação:
- Segmentação e Encapsulamento: Os dados são segmentados em pacotes na camada de transporte (TCP) e encapsulados com cabeçalhos apropriados em cada camada.
- Roteamento: Na camada de Internet, os pacotes são roteados através de diferentes redes até o destino.
- Entrega e Reassemblagem: No destino, os pacotes são reassemblados e entregues à aplicação correta.
Como o Modbus é utilizado na indústria?
O protocolo opera junto a computadores, módulos, sistemas supervisórios, CLPs e IHMs (Interface Homem Máquina), permitindo a comunicação e o gerenciamento de vários dispositivos industriais de campo.
É fundamental para os projetos de automação, desde os mais simples aos complexos, controlando processos e equipamentos do ciclo produtivo.
Com o uso do Modbus, é possível, por exemplo, receber sinais de máquinas e periféricos e enviá-los ao CLP. Também dá para receber os comandos do controlador e transmitir a dispositivos externos.
Como funciona o protocolo de comunicação Modbus?
As informações do protocolo são encapsuladas em formato binário em frames TCP para uso do meio físico Ethernet (IEEE 802.3).
Seu método de controle de acesso é o CSMA-CD (Carrier Sense Multiple Access/Collision Detection – sistema que evita a colisão na emissão de pacotes de dados), com estações do tipo cliente-servidor ou mestre-escravo.
O mestre envia requisições de dados de leitura ou de escrita para o escravo e recebe as respostas seguindo os critérios abaixo:
- Conexão: Estabelece uma conexão confiável entre dois dispositivos usando um processo de handshake de três vias.
- Controle de Fluxo: Garante que o remetente não sobrecarregue o receptor com muitos dados de uma vez.
- Controle de Congestionamento: Ajusta a taxa de envio de dados para evitar congestionamento na rede.
- Correção de Erros: Utiliza números de sequência e confirmações (ACKs) para garantir que os dados sejam entregues corretamente.
Dessa forma, para exemplificar, podemos ter um supervisório como o SCADA enviando uma requisição de leitura para obter algum dado ou estado, de um sensor ou variável, e também de escrita, emitindo algum comando.
Ou seja, é o mestre quem orientará os pedidos de informação. Já o escravo (um CLP ou um arduino, por exemplo) fica aguardando os comandos para enviar respostas.
Entre as funções básicas de um Modbus estão os comandos de alteração de valores em um registro de um dispositivo; controle ou leitura de portas I/O (Input/Output) e a solicitação de envio de valores.
Confira neste vídeo como adicionar um inversor de frequência na rede Modbus:
Modbus vs Profibus: entenda a diferença
O protocolo de comunicação Modbus é famoso pela sua simplicidade, pela adaptabilidade à Ethernet e pela boa operação em conexões ponto-a-ponto, sendo indicado para aplicações onde um único controlador conversa com um dispositivo.
Por outro lado, o Profibus se dá melhor em ambientes multiponto e com condições extremas, oferecendo maior velocidade, flexibilidade e escalabilidade do que o Modbus, porém, exigindo uma configuração mais detalhada, além de mais hardware e software.
Quais são as vantagens do protocolo Modbus?
- Sua implementação é muito fácil, devido à compatibilidade com equipamentos de diferentes fabricantes – o que é especialmente útil na automação industrial;
- O protocolo tem código aberto, ou seja, seu uso é livre;
- Todos os dispositivos compatíveis com o Modbus podem se comunicar entre si;
- A comunicação e o gerenciamento de vários dispositivos de chão de fábrica é possível, independentemente da complexidade da aplicação;
- Funciona bem em conexões ponto-a-ponto;
- É adaptável à Ethernet;
- Pode ser implementado em várias opções de fiação elétrica, como RS-485, RS-232 ou TCP;
- Possibilita que indústrias de qualquer porte automatizem setores ou até o sistema produtivo inteiro, usando apenas um protocolo; etc.
Quais os tipos de Modbus?
Vamos conhecer agora os principais modos de transmissão da rede Modbus, que definem como os dados serão empacotados.
ASCII
No modo de transmissão American Standard Code for Information Interchange (ASCII), cada byte das mensagens é transmitido como dois caracteres legíveis pelo código de sinais ASCII.
Tem como ponto positivo os intervalos de tempo de aproximadamente 1 segundo entre cada caractere, sem causar falhas. Nesta modalidade, a rede é monitorada para cada nova mensagem.
Assim, quando o mestre inicia uma mensagem, os dispositivos conectados à rede decodificam o campo de endereço para definir qual escravo irá receber a mensagem. O caractere dois pontos (:) define o início das mensagens.
RTU
No modo de transmissão Remote Terminal Unit (RTU) ou Unidade Terminal Remota, cada envio de 8 bits possui dois caracteres hexadecimais de 4 bits.
Comparado ao modo ASCII, esse tipo tem um melhor processamento de dados, com densidade maior de caracteres.
A indicação do início ou término de uma mensagem é dada pela falta de transmissão de dados na rede. Já a verificação de falhas das mensagens é orientada pelo método Cyclical Redundancy Checking (CRC).
TCP/IP
Esse modo de transmissão é baseado no modelo de comunicação TCP/IP (Protocolo de Controle de Transmissão/Protocolo de Internet) – principal conjunto de protocolos de envio e recebimento de dados em redes como a internet.
A comunicação é realizada com a pilha TCP/IP junto ao cabeçalho MBAP (Modbus Application Protocol), sendo acrescentado ao quadro Modbus.
O Modbus TCP usa como campo de checagem de erros o próprio frame da Ethernet (CRC-32). A porta padrão deste modo de transmissão é a TCP 502, que faz a conexão com servidores.
Qual a diferença entre Modbus RTU e TCP?
Modbus RTU é um protocolo de comunicação serial de uso popular em sistemas SCADA e em CLPs, enquanto o Modbus TCP é uma evolução do padrão, muito aplicada em redes baseadas em Ethernet.
Embora ambos sejam baseados no protocolo Modbus, eles diferem significativamente em termos de implementação e aplicação. Vamos explorar essas diferenças em detalhes.
Modbus RTU
- Definição:
- Modbus RTU (Remote Terminal Unit) é um protocolo de comunicação serial utilizado em redes RS-232, RS-485 ou RS-422.
- Camada Física:
- Utiliza comunicação serial, o que significa que os dados são transmitidos bit a bit em uma linha de comunicação.
- Formato de Mensagem:
- As mensagens são compactadas em um formato binário, o que torna a comunicação eficiente em termos de largura de banda.
- Estrutura típica de uma mensagem Modbus RTU:
- Endereço do Dispositivo: 1 byte
- Código de Função: 1 byte
- Dados: Variável (até 252 bytes)
- CRC (Cyclic Redundancy Check): 2 bytes
- Velocidade:
- A velocidade de comunicação é limitada pela taxa de baud (ex.: 9600, 19200, 38400 bps).
Modbus TCP
1. Definição:
- Modbus TCP (Transmission Control Protocol) é uma versão do protocolo Modbus que utiliza a rede Ethernet para comunicação.
2. Camada Física:
- Utiliza a infraestrutura de rede Ethernet, permitindo comunicação em redes locais (LAN) e até mesmo através da internet.
3. Formato de Mensagem:
- As mensagens são encapsuladas em pacotes TCP/IP, o que permite a comunicação através de redes Ethernet.
- Estrutura típica de uma mensagem Modbus TCP:
- Cabeçalho MBAP (Modbus Application Protocol): 7 bytes
- ID de Transação: 2 bytes
- ID de Protocolo: 2 bytes
- Comprimento: 2 bytes
- Unidade de Identificação: 1 byte
- Código de Função: 1 byte
- Dados: Variável
4. Velocidade:
- A velocidade de comunicação é determinada pela largura de banda da rede Ethernet (ex.: 100 Mbps, 1 Gbps).
Aplicações do protocolo de comunicação Modbus
- Na interligação de computadores a RTUs e sistemas supervisórios;
- Em instrumentos e equipamentos laboratoriais;
- Na automação residencial e predial;
- Na automação de navios;
- Em sistemas operacionais, softwares, dispositivos e microcontroladores;
- Com arduino no barramento RS-485;
- Com o sistema Android;
- Com o supervisório Elipse E3;
- Com a linguagem de programação C-Sharp;
- Na configuração de drivers; entre outros usos.
Exemplos de uso do Modbus
O padrão é capaz de monitorar e programar dispositivos, estabelecendo o diálogo entre equipamentos inteligentes, sensores e instrumentos.
Segundo a Modbus Organization, além da indústria de manufatura, o protocolo também beneficia setores como os de “construção, infraestrutura, transporte e energia”.
Acompanhe, neste vídeo, a engenheira Letícia Passos, do suporte técnico da Kalatec Automação, mostrando como configurar a comunicação Modbus com servomotores:
Conclusão
Concluímos que este módulo de comunicação com entradas e saídas otimiza inúmeros projetos de automação e a escolha entre Modbus RTU e Modbus TCP depende das necessidades específicas da aplicação.
Modbus RTU é mais adequado para ambientes onde a comunicação serial é predominante e a simplicidade é essencial.
Por outro lado, Modbus TCP oferece maior velocidade e flexibilidade, sendo ideal para redes industriais modernas que utilizam Ethernet. Compreender essas diferenças é crucial para técnicos e engenheiros que buscam otimizar a comunicação em seus sistemas de automação industrial.
Aproveite também as vantagens do Modbus para aprimorar a comunicação do seu empreendimento! Contate a Kalatec para conhecer as opções disponíveis.
Até o próximo post!