Escolar Documentos
Profissional Documentos
Cultura Documentos
industrial. Criado na década de 1970 pela Modicon. É um dos mais antigos protocolos
utilizados em redes de Controladores lógicos programáveis (PLC) para aquisição de
sinais de instrumentos e comandar actuadores. A Modicon (atualmente parte do grupo
Schneider Electric) colocou as especificações e normas que definem o Modbus em
domínio público. Por esta razão é utilizado em milhares de equipamentos existentes e é
uma das soluções de rede mais baratas a serem utilizadas em automação industrial.
Índice
[esconder]
• 1 Características técnicas
• 2 Comandos do MODBUS
• 3 Variações
o 3.1 Modbus RTU
o 3.2 Modbus ASCII
• 4 Ligações externas
A imagem acima mostra um exemplo de rede Modbus com um mestre (PLC) e três
escravos (módulos de entradas e saídas, ou simplesmente E/S). Em cada ciclo de
comunicação, o PLC lê e escreve valores em cada um dos escravos. Como o sistema de
controle de acesso é do tipo mestre-escravo, nenhum dos módulos escravos inicia
comunicação a não ser para responder às solicitações do mestre.
Basicamente, uma comunicação em Modbus obedece a um frame que contém o
endereço do escravo, o comando a ser executado, uma quantidade variável de dados
complementares e uma verificação de consistência de dados (CRC).
Exemplo-1: Se o PLC precisa ler as 10 primeiras entradas analógicas (do endereço 0000
ao 0009) no módulo 2. Para isso é preciso utilizar o comando de leitura de múltiplos
registros analógicos (comando 3). O frame de comunicação utilizado é mostrado abaixo
(os endereços são mostrados em sistema hexadecimal):
Para se enterder este frame de resposta, antes precisamos saber corretamente o que é um
byte.
Agora que ja sabemos o que é byte podemos então decifrar o frame da rede modbus.
RX 02 03 14 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 (xx xx CRC)
código do
descrição
comando
01 Lê um número variável1 de saídas digitais (bobinas)
02 Lê um número variável1 de entradas digitais
Lê um número variável1 de registros retentivos (saídas analógicas ou
03
memórias)
04 Lê um número variável1 de registros de entrada (entradas analógicas)
05 Força uma única bobina (altera o estado de uma saída digital)
06 Preset de um único registro (altera o estado de uma saída analógica)
07 Lê exceções2 (registros de erro)
08 Várias funções de diagnóstico
15 Força uma quantidade variável1 de bobinas (saídas digitais)
16 Preset de uma quantidade variável1 de registros (saídas analógicas)
1
A quantidade de variáveis a ler é definida no frame de solicitação
2
Oito bits previamente configurados. Não é necessário fornecer parâmetros de
endereçamento com este comando pois o escravo vai enviar sempre os oito bits pré
configurados.
[editar] Variações
Em redes seriais baseadas em RS-485 ou RS-232 o Modbus pode ter duas variações:
RTU e ASCII.
Neste modo os dados são transmitidos em formato binário de oito bits, permitindo a
compactação dos dados em pequenos pacotes. RTU é a sigla inglesa para Remote
Terminal Unit. No modo RTU, os endereços e valores podem ser representados em
formato binário. Números inteiros variando entre -32768 e 32767 podem ser
representados por 2 bytes. O mesmo número precisaria de quatro caracteres ASCII para
ser representado (em hexadecimal).