Entenda o que é Modbus, diferenças entre RTU e TCP, coils, registers, function codes, endereçamento, gateways, polling, integração com SCADA e segurança.
Confira!
Modbus é um protocolo de comunicação industrial criado para permitir a troca de dados entre controladores, instrumentos, medidores, inversores, relés, gateways, sistemas supervisórios e outros dispositivos. Sua simplicidade contribuiu para uma ampla adoção em automação predial, industrial, elétrica e de utilidades.
O protocolo pode operar em redes seriais, principalmente como Modbus RTU, ou sobre Ethernet e TCP/IP, como Modbus TCP. Embora compartilhem o mesmo modelo básico de dados e funções, as duas variantes possuem diferenças de enquadramento, endereçamento, topologia, diagnóstico e desempenho.
Modbus foi desenvolvido em uma época na qual redes industriais eram isoladas e a cibersegurança não era um requisito central. Por isso, autenticação, criptografia e autorização não fazem parte do protocolo clássico. A proteção depende da arquitetura de rede, dos gateways, dos ativos, das regras de acesso e do monitoramento.
O que é Modbus
Modbus é um protocolo de aplicação utilizado para ler e escrever dados em dispositivos industriais. A comunicação se baseia em solicitações e respostas.
Um cliente solicita uma operação, como leitura de registradores, e o servidor responde com os valores ou com um código de exceção.
Em terminologia histórica, também são utilizados os termos mestre e escravo. Documentações mais recentes preferem cliente e servidor.
Onde o Modbus é utilizado
Aplicações comuns incluem:
- medidores de energia;
- CLPs e controladores;
- inversores de frequência;
- relés e dispositivos de proteção;
- sensores e transmissores;
- sistemas HVAC;
- geradores e UPS;
- sistemas de utilidades;
- gateways de protocolo;
- SCADA e sistemas supervisórios;
- monitoramento de painéis e equipamentos.
O protocolo transporta dados. A semântica de cada registrador depende do mapa fornecido pelo fabricante.
Modelo de dados do Modbus
O modelo clássico divide os dados em quatro áreas.
| Área | Tipo | Acesso típico |
| Coils | bits | leitura e escrita |
| Discrete Inputs | bits | somente leitura |
| Input Registers | palavras de 16 bits | somente leitura |
| Holding Registers | palavras de 16 bits | leitura e escrita |
Essa organização é lógica. O equipamento pode mapear internamente os dados de maneira diferente.
Coils e entradas discretas
Coils representam valores binários que podem ser lidos ou comandados, como ligar, desligar ou habilitar uma função.
Discrete Inputs representam estados binários de leitura, como contato aberto, fechado, alarme ativo ou condição de falha.
A nomenclatura não significa que todos os bits estão conectados diretamente a uma saída ou entrada física. O fabricante pode utilizar esses espaços para variáveis internas.
Input Registers e Holding Registers
Input Registers normalmente contêm medições e valores de leitura. Holding Registers podem armazenar ajustes, comandos e parâmetros.
Cada registrador possui 16 bits. Valores maiores podem ocupar dois ou mais registradores.
Podem ser representados:
- inteiros com ou sem sinal;
- valores de 32 ou 64 bits;
- ponto flutuante;
- strings;
- flags;
- timestamps;
- valores escalonados.
A interpretação depende do mapa de registradores.
O problema do endereçamento
Documentações podem apresentar endereços como 40001, 30001 ou simplesmente offset zero. Essa diferença gera erros frequentes.
O projeto deve distinguir:
- número de referência mostrado no manual;
- offset enviado na mensagem;
- área de dados;
- função utilizada;
- base zero ou base um adotada pelo software.
Um registrador descrito como 40001 pode corresponder ao offset 0 dos Holding Registers. O comportamento precisa ser confirmado no manual do fabricante e em teste.
Principais function codes
Function codes indicam a operação solicitada.
| Código | Operação comum |
| 01 | ler coils |
| 02 | ler discrete inputs |
| 03 | ler holding registers |
| 04 | ler input registers |
| 05 | escrever uma coil |
| 06 | escrever um holding register |
| 15 | escrever múltiplas coils |
| 16 | escrever múltiplos registers |
Outras funções existem, mas o suporte varia entre dispositivos.
Respostas de exceção
Quando o servidor não consegue executar a solicitação, pode responder com código de exceção.
Exemplos:
- função não suportada;
- endereço inválido;
- valor inválido;
- falha no dispositivo;
- dispositivo ocupado;
- gateway sem resposta do equipamento remoto.
Essas respostas devem ser registradas e tratadas pelo sistema supervisório.
Modbus RTU
Modbus RTU é utilizado principalmente em comunicação serial, frequentemente sobre RS-485.
Características:
- comunicação binária compacta;
- identificação de dispositivo por endereço;
- detecção de erro por CRC;
- topologia de barramento;
- necessidade de parâmetros seriais iguais;
- temporização importante para delimitar quadros.
Os parâmetros incluem baud rate, bits de dados, paridade e bits de parada.
Topologia RS-485
Uma rede RS-485 deve ser projetada como barramento, com derivações curtas e terminação adequada nas extremidades.
Aspectos importantes:
- polaridade dos pares;
- continuidade da blindagem conforme projeto;
- aterramento e equipotencialização;
- resistores de terminação;
- resistores de polarização quando necessários;
- comprimento e velocidade;
- quantidade de dispositivos;
- isolamento galvânico;
- proteção contra surtos;
- interferência eletromagnética.
Topologias em estrela sem repetidores apropriados podem causar reflexões e comunicação intermitente.
Modbus ASCII
Modbus ASCII utiliza caracteres ASCII e verificação LRC. Possui menor eficiência que RTU e é menos comum em projetos novos.
Pode existir em equipamentos legados. O levantamento deve confirmar a variante, porque Modbus ASCII e RTU não são intercambiáveis sem conversão.
Modbus TCP
Modbus TCP transporta mensagens Modbus sobre TCP/IP. Utiliza normalmente a porta TCP 502.
A mensagem inclui um cabeçalho MBAP, que contém identificador de transação, protocolo, comprimento e Unit Identifier.
Vantagens:
- integração com Ethernet;
- comunicação simultânea com vários dispositivos;
- roteamento conforme arquitetura;
- diagnóstico por ferramentas IP;
- maior flexibilidade de topologia.
O uso de TCP/IP não adiciona autenticação ou criptografia ao protocolo clássico.
Modbus exige projeto do meio físico, do mapa de dados e da segurança.
Endereçamento, polling, gateways, funções de escrita, segmentação e integração com o SCADA precisam ser documentados e testados.
Unit Identifier em Modbus TCP
Em comunicação direta com um servidor Modbus TCP, o Unit Identifier pode ter uso limitado. Em gateways Modbus TCP para serial, ele pode identificar o dispositivo da rede RTU atrás do gateway.
A configuração deve ser documentada para evitar colisões e leituras do equipamento errado.
Modbus RTU versus Modbus TCP
| Aspecto | Modbus RTU | Modbus TCP |
| Meio comum | serial RS-485 | Ethernet e IP |
| Identificação | endereço do dispositivo | endereço IP e Unit Identifier |
| Verificação | CRC | mecanismos de Ethernet/TCP, sem CRC Modbus clássico |
| Concorrência | normalmente um mestre por barramento | vários clientes conforme capacidade do servidor |
| Velocidade | limitada pela serial | maior capacidade de rede |
| Topologia | barramento | estrela, anel ou outra topologia Ethernet |
| Segurança nativa | não | não no Modbus TCP clássico |
| Diagnóstico | parâmetros físicos e seriais | rede, TCP, aplicação e servidor |
A escolha depende do equipamento, distância, ambiente, legado e requisitos de integração.
Gateways Modbus
Gateways conectam redes ou protocolos diferentes. Um gateway pode converter Modbus TCP para Modbus RTU, concentrar vários dispositivos ou publicar dados em MQTT e OPC UA.
O projeto precisa definir:
- mapeamento de endereços;
- Unit Identifier;
- tempo de polling;
- timeout;
- tentativas;
- comportamento de exceção;
- quantidade de clientes;
- cache;
- atualização dos dados;
- diagnóstico;
- segurança.
O gateway pode se tornar ponto único de falha e gargalo.
Polling e desempenho
Sistemas supervisórios consultam dispositivos em ciclos. O tempo total depende de:
- quantidade de dispositivos;
- quantidade de registradores;
- baud rate;
- latência;
- timeout;
- tentativas;
- tempo de processamento;
- qualidade do enlace;
- quantidade de clientes.
Ler registradores contíguos em blocos pode ser mais eficiente que realizar muitas solicitações individuais. Entretanto, o limite de cada dispositivo e a organização do mapa precisam ser respeitados.
Banda morta e atualização
Modbus normalmente responde quando consultado. A banda morta e a taxa de atualização são implementadas no SCADA, gateway ou aplicação.
O projeto deve definir:
- frequência de polling;
- prioridade de pontos;
- timeout;
- qualidade do dado;
- idade máxima;
- comportamento quando o dispositivo não responde;
- retenção do último valor;
- indicação de dado inválido.
Integração com SCADA
A integração exige mais que cadastrar endereços.
Cada ponto deve possuir:
- nome padronizado;
- equipamento de origem;
- endereço;
- função;
- tipo de dado;
- ordem de bytes e palavras;
- escala;
- unidade;
- limites;
- qualidade;
- intervalo de atualização;
- permissão de escrita;
- descrição operacional.
Uma lista de pontos incompleta gera valores invertidos, escalas erradas e comandos indevidos.
Endianness e ordem de palavras
O protocolo define registradores de 16 bits, mas valores de 32 ou 64 bits podem ser organizados de diferentes formas.
Um fabricante pode utilizar:
- high word first;
- low word first;
- bytes em ordem diferente;
- formatos proprietários.
A ordem deve ser confirmada por documentação e teste com valores conhecidos.
Escrita e comandos
Funções de escrita podem alterar parâmetros ou comandar equipamentos. A aplicação precisa limitar quem pode utilizá-las.
Controles recomendados:
- separar pontos de leitura e escrita;
- utilizar perfis de acesso;
- registrar operador e comando;
- validar faixa de valores;
- exigir confirmação em comandos críticos;
- aplicar intertravamentos locais;
- bloquear escrita quando não necessária;
- testar comportamento de repetição;
- documentar resposta e confirmação.
A segurança operacional não pode depender apenas do SCADA.
Segurança do Modbus
Modbus RTU e Modbus TCP clássicos não possuem autenticação, confidencialidade ou integridade criptográfica. Qualquer dispositivo com acesso ao caminho pode tentar ler ou escrever funções permitidas.
A proteção deve ser arquitetural:
- segmentação de rede;
- restrição por origem e destino;
- firewall industrial;
- bloqueio de função de escrita quando possível;
- acesso remoto por jump server;
- hardening de gateways;
- monitoramento passivo;
- inventário;
- controle físico;
- logs de comandos;
- atualização dos ativos.
Modbus Security
Existe uma especificação de Modbus Security que adiciona TLS e certificados ao transporte. O suporte depende dos dispositivos e aplicações.
Não se deve presumir que um equipamento identificado como Modbus TCP suporta Modbus Security. A interoperabilidade precisa ser verificada.
Em redes legadas, controles compensatórios continuam essenciais.
Segmentação e firewall
A porta TCP 502 não deve ser liberada entre redes inteiras sem necessidade. Regras devem limitar:
- cliente autorizado;
- servidor específico;
- direção;
- zona;
- janela de manutenção;
- funções quando a tecnologia permitir inspeção.
Dispositivos de campo não devem ser acessíveis diretamente pela internet ou pela rede corporativa.
Monitoramento
Indicadores importantes:
- dispositivos sem resposta;
- aumento de timeout;
- códigos de exceção;
- novos clientes;
- solicitações de escrita;
- varredura de endereços;
- volume anormal;
- conexão na porta 502 fora do padrão;
- alterações de configuração;
- reinicialização de gateways.
O monitoramento passivo reduz risco de interferência em dispositivos sensíveis.
Projeto e documentação
Um projeto Modbus pode produzir:
- arquitetura da rede;
- diagrama serial e Ethernet;
- lista de dispositivos;
- parâmetros de comunicação;
- mapa de endereços;
- lista de pontos;
- matriz de leitura e escrita;
- definição de polling;
- configuração de gateways;
- regras de firewall;
- plano de endereçamento IP;
- critérios de qualidade do dado;
- roteiro de testes;
- documentação as-built.
Testes e comissionamento
Os testes devem verificar:
- parâmetros seriais;
- endereço de cada dispositivo;
- terminação e polaridade;
- leitura de cada área;
- escala e unidade;
- ordem de bytes e palavras;
- códigos de exceção;
- timeout e perda de comunicação;
- recuperação;
- gateway;
- clientes simultâneos;
- comandos autorizados;
- bloqueio de escrita indevida;
- regras de firewall;
- integração com SCADA.
A integração Modbus precisa ser validada até o ponto apresentado ao operador.
Escala, unidade, endianness, qualidade, escrita, exceções, timeout e segurança devem ser testados entre dispositivo, gateway e SCADA.
Diagnóstico de falhas
Sem resposta
Verificar alimentação, meio físico, endereço, baud rate, paridade, porta TCP, rota, firewall e timeout.
Resposta com valores incorretos
Verificar área, offset, base zero ou um, tipo de dado, escala e endianness.
Comunicação intermitente em RS-485
Verificar terminação, topologia, blindagem, aterramento, derivações, interferência e colisões.
Gateway responde, mas dispositivo não
Verificar Unit Identifier, parâmetros seriais, fila, timeout e endereço do equipamento remoto.
Leitura funciona e escrita falha
Verificar função suportada, permissões, faixa de valor, modo local/remoto e intertravamentos.
Erros comuns
Confundir 40001 com offset 40001
A referência do manual pode não ser o valor enviado na mensagem.
Não documentar endianness
Valores de 32 bits podem aparecer invertidos ou incoerentes.
Colocar RS-485 em estrela
A topologia inadequada pode gerar reflexões e falhas intermitentes.
Liberar TCP 502 para toda a rede
A ausência de autenticação nativa amplia o risco de leitura e escrita indevidas.
Polling excessivo
Consultas muito frequentes podem sobrecarregar dispositivos e gateways.
Não testar comandos
Escrita precisa ser validada com segurança e evidência.
Conclusão
Modbus permanece relevante por sua simplicidade e ampla disponibilidade em equipamentos industriais. Essa mesma simplicidade exige disciplina de engenharia para endereçamento, mapa de dados, polling, integração e segurança.
Projetos confiáveis documentam cada ponto, limitam funções de escrita, segmentam a rede, monitoram anomalias e testam a comunicação ponta a ponta. Assim, Modbus RTU e TCP podem ser integrados ao SCADA sem transformar o protocolo legado em um caminho não controlado para o processo.
Referências técnicas
[1] MODBUS ORGANIZATION. Modbus Application Protocol Specification V1.1b3.
[2] MODBUS ORGANIZATION. Modbus over Serial Line Specification and Implementation Guide V1.02.
[3] MODBUS ORGANIZATION. Modbus Messaging on TCP/IP Implementation Guide.
[4] NATIONAL INSTITUTE OF STANDARDS AND TECHNOLOGY. NIST SP 800-82 Rev. 3 — Guide to Operational Technology Security.
[5] ASSOCIAÇÃO BRASILEIRA DE NORMAS TÉCNICAS. ABNT IEC/TS 62443-1-1:2023 — Segurança para sistemas de automação e controle industriais.
Perguntas frequentes
É um protocolo industrial de solicitação e resposta utilizado para ler e escrever dados em controladores, medidores, relés, inversores, gateways e outros dispositivos.
Modbus RTU opera principalmente em comunicação serial, como RS-485. Modbus TCP transporta as mensagens sobre Ethernet e TCP/IP.
São registradores de 16 bits normalmente utilizados para valores que podem ser lidos e escritos, como parâmetros e comandos.
Porque o manual pode usar um número de referência, enquanto a mensagem utiliza um offset iniciado em zero. A conversão depende do software e do fabricante.
O Modbus clássico não possui autenticação ou criptografia. A proteção depende de segmentação, firewall, controle de acesso, hardening e monitoramento.
Normalmente TCP 502. A porta deve ser liberada somente entre clientes e servidores autorizados.
É um campo do Modbus TCP que pode ser utilizado por gateways para identificar dispositivos Modbus RTU atrás deles.
É necessário considerar quantidade de dispositivos, registradores, velocidade, timeout, tentativas e tempo de processamento. O valor deve ser validado em teste.
É preciso conhecer o tipo de dado e a ordem de bytes e palavras adotada pelo fabricante.
Devem ser verificados meio físico, parâmetros, endereços, funções, escala, endianness, timeout, exceções, escrita, gateways, firewall e integração com SCADA.
Materiais técnicos complementares
Soluções
- Redes Industriais
- Sistemas SCADA
- Sistemas Digitais de Supervisão e Controle
- Zabbix — Monitoramento de Infraestrutura
Serviços de engenharia
Materiais técnicos complementares