Blog

O que precisa de saber sobre o Protocolo de Comunicação Modbus

 

Um protocolo fundamental no campo da automação industrial que continua a ser relevante em várias indústrias.

O Modbus é frequentemenente utilizado em sistemas de automação industrial. Desenvolvido no final dos anos 1970, tornou-se um standard amplamente adotado para conectar dispositivos eletrónicos em várias aplicações industriais.

Neste artigo da Tekon, terá o que é preciso para entender como este protocolo de comunicação funciona.

O Modbus é um protocolo de comunicação serial que utiliza uma arquitetura master-slave, isto é, um dispositivo (master) inicia e controla a comunicação, enquanto um ou mais dispositivos (slaves) respondem aos pedidos do master. Assim, o Modbus utiliza uma forma simples e eficiente de representar dados, incluindo muitas vezes a leitura ou escrita de valores em registos de retenção ou entradas/saídas discretas.

Este protocolo é amplamente utilizado em automação industrial, controlo de processos e sistemas de monitorização. É utilizado, por exemplo, para a comunicação entre PLCs, HMIs (Human-Machine Interfaces) e sensores.

Modbus é um protocolo standard aberto, o que contribui para a sua adoção generalizada no setor de automação industrial, permitindo a sua implementação em diferentes dispositivos de vários fabricantes.

 

Diferenças e arquiteturas de rede

Existem diferentes tipos de protocolos Modbus. Os mais utilizados são o RTU (Remote Terminal Unit) e o TCP/IP (Transmission Control Protocol/Internet Protocol):

  • Modbus RTU: esta é a especificação original do Modbus que utiliza codificação binária para comunicação sobre linhas serial, como RS-232 ou RS-485. O RS-232 conta com uma configuração ponto a ponto, permitindo apenas um master e um slave uma distância de 50 metros. O RS-485 suporta uma configuração multidrop, com um máximo de 64 dispositivos a uma distância de 1 km.
  • Modbus TCP/IP: é uma extensão do Modbus que utiliza o protocolo TCP/IP para comunicação em redes Ethernet. Este protocolo permite ter múltiplos clients (equivalentes a masters) e múltiplos servers (equivalente a slaves).

 

Arquitetura de Rede RTU

 

 

Estruturas Modbus

A estrutura para o Modbus RTU é um pacote binário que contém as seguintes informações:

  • Campo de Endereço (1 byte): especifica o endereço do slave ao qual a mensagem se destina. O valor do endereço pode variar de 1 a 247, e o 0 é reservado para mensagens de difusão.
  • Código de Função (1 byte): indica o tipo de ação que o slave destinatário deve executar. Os códigos de função definem várias operações, como ler e escrever registos de retenção, ler entradas discretas, escrever single coils, etc.
  • Campo de Dados (Comprimento variável, até 252 bytes): contém os dados reais transmitidos. O comprimento deste campo depende do código de função específico e do tipo de pedido ou resposta.
  • Campo de Verificação de Erro (2 bytes): permite deteção de erro para a estrutura. O método mais usado é o Cyclic Redundancy Check (CRC), que é calculado com base nos conteúdos do endereço, código de função e campos de dados.
  • Timeout Inter-Character (Variável): especifica o intervalo de tempo entre caracteres. Indica o fim de um caractere e o início do próximo. Tipicamente, é maior que 3,5 bytes.

 

 

A estrutura para o Modbus TCP/IP é encapsulada dentro de pacotes TCP/IP padrão, uma vez que é projetada para ser usada em redes Ethernet. A estrutura Modbus TCP/IP contém as seguintes informações:

  • Identificador de Transação (2 bytes): identificador único atribuído a cada transação, permitindo que o servidor associe a resposta ao pedido correspondente.
  • Identificador de Protocolo (2 bytes): identifica o protocolo Modbus, e para TCP/IP este campo é normalmente definido como 0x0000.
  • Campo de Comprimento (2 bytes): indica o número de bytes restantes após o campo de comprimento. Inclui o identificador de unidade, código de função e de dados.
  • Identificador de Unidade (1 byte): especifica o endereço do dispositivo numa rede Modbus TCP/IP. Ao contrário do Modbus RTU, onde o endereço faz parte da estrutura, o Modbus TCP/IP utiliza o identificador de unidade para distinguir entre dispositivos.
  • Código de Função (1 byte): como no Modbus RTU, indica o tipo de ação que o dispositivo destinatário deve executar.
  • Campo de Dados (Comprimento variável): contém os dados reais transmitidos. O comprimento deste campo depende do código de função específico e do tipo de pedido ou resposta.

 

 

Relevância enquanto protocolo de comunicação

Estas estruturas representam uma visão geral, e seu conteúdo real pode variar com base na operação específica do Modbus a realizar e nos dados transmitidos.

No geral, o Modbus tem sido um protocolo fundamental no campo da automação industrial e continua a ser relevante em várias indústrias. Também foi adaptado para atender às necessidades em evolução dos sistemas de comunicação industrial modernos.

Este ano, a Tekon Electronics lançou um Gateway IoT Universal disruptivo com múltiplas opções de conectividade, onde o Modbus RTU e TCP/IP estão disponíveis nos modos Master/Slave e Client/Server, respetivamente, fazendo deste Gateway uma solução avançada para comunicar e partilhar dados de forma transparente.

Descubra o novo Gateway IoT Universal AQUI

 

A Tekon Electronics contribui para a inovação, ao desenvolver soluções distintas de IoT. Junte-se a nós nesta jornada em direção a um futuro mais inteligente e conectado!

 

Modbus Organization. Modbus Technical Resources. https://modbus.org/tech.php

Tem alguma questão?

Nós podemos ajudar.