Este artigo fornece um tutorial abrangente sobre a comunicação RS485 e sua relação com o protocolo Modbus. Ele explica as principais diferenças entre RS485 e RS232, explora o sistema half-duplex utilizado em redes RS485 e detalha o protocolo Modbus, amplamente implementado em dispositivos RS485. Aprenda sobre os formatos de mensagens Modbus, modos de transmissão serial e como navegar eficazmente pelos sistemas de comunicação industriais baseados em RS485. Este guia é essencial para técnicos que trabalham com os protocolos RS485 e Modbus.
RS485 é um padrão de transmissão de dados serial amplamente utilizado em implementações industriais. O protocolo Modbus é comumente usado ao implementar a comunicação RS485. Isso diferencia o RS485 do protocolo RS232, que se comunica transmitindo caracteres ASCII. É importante entender o Modbus se você trabalha com dispositivos que usam o protocolo RS485.
Se você é um técnico responsável pelo suporte a dispositivos RS485, existem algumas técnicas que podem facilitar seu trabalho. Apresentamos este breve tutorial que monstra as diferenças nos protocolos Modbus e RS485.
RS485 é um protocolo semelhante ao RS232 usado para implementar a comunicação de dados serial. Os dois protocolos usam sinais elétricos diferentes para permitir a transmissão de dados.
Uma das razões pelas quais a interface RS485 é empregada em ambientes industriais é sua capacidade de servir a vários dispositivos conectados ao mesmo barramento. Isso elimina a necessidade de ter várias interfaces disponíveis ao consultar vários dispositivos. Você pode fazer isso usando um terminador bus, movendo uma chave ou com um pequeno resistor aparafusado em um terminal.
Deve-se tomar cuidado para garantir que a interface correta esteja sendo usada, os protocolos RS485 e RS32 não são totalmente compatíveis. Você pode construir um gateway entre as interfaces RS232 e RS485, mas normalmente verá o protocolo RS485 conectando-se diretamente às portas USB, GSM ou Ethernet. Esta abordagem menos cara elimina a necessidade de qualquer componente adicional.
Dispositivos que usam portas RS485 geralmente empregam o protocolo Modbus. Ao deixar de trabalhar com os protocolos ASCII de dispositivos RS232, é aconselhável aprender as diferenças do protocolo Modbus. Esse é o objetivo deste breve tutorial Modbus.
Abaixo está uma tabela que resume as características do protocolo RS485. RS485 fornece transmissão half-duplex em uma linha equilibrada cobrindo distâncias de até 1,2 km.
Parâmetro | |
odo de Operação | Diferencial |
Número de Drivers e Receptores | 32 Drivers 32 Receptores |
Comprimento máximo do cabo (metros) | 1200 |
Taxa máxima de dados (baud) | 10 M |
Tensão máxima de modo comum (Volts) | 12 to -7 |
Níveis Mínimos de Saída do Driver (Carregado) | +/- 1.5 |
Níveis Mínimos de Saída do Driver (Sem carga) | +/- 6 |
Carga do Drive (Ohms) | 60 (min) |
Limite de corrente de curto-circuito de Saída do Driver (mA) | 150 to Gnd, 250 to -7 or 12 V |
Resistência mínima de entrada do Receptor (kohms) | 12 |
Sensibilidade do receptor | +/- 200mv |
Se desejar mais informações sobre o RS485, você pode consultar a EIA (Associação das Indústrias Eletrônicas) ou empresas como Texas Instruments ou Maxim Semiconductors que fabricam dispositivos compatíveis com o protocolo.
O sistema half-duplex é composto por um ou mais transmissores e receptores onde apenas um transmissor pode estar ativo por vez. A comunicação é iniciada por um transmissor que faz uma solicitação direcionada a um receptor específico. O transmissor, então, espera um tempo pré-determinado por uma resposta ou decide que nenhuma resposta será dada pelo receptor.
Uma rede RS485 é construída com base em uma estrutura mestre/escravo. O mestre desempenha a função de transmissor, fazendo solicitações a um escravo designado que atua como receptor. O mestre escuta a resposta e, se não for obtida em um prazo apropriado, encerra a comunicação.
O princípio das mensagens Modbus. Em uma Rede Modbus RS485, a comunicação começa quando o dispositivo mestre envia uma consulta a um escravo conectado. O dispositivo escravo sempre esta monitorando a rede em busca de consultas dirigidas especificamente a ele. Quando uma consulta é recebida, ele executa uma ação ou responde com uma resposta ao mestre. As consultas são iniciadas apenas pelo dispositivo mestre.
O protocolo Modbus permite ao mestre escolher endereçar mensagens a dispositivos escravos específicos ou comunicar-se com todos os escravos simultaneamente. Isso é feito usando um endereço especial de “Transmissão”. Alguns produtos, como os da Integra e SPR, não suportam o uso deste endereço de transmissão.
As operações de leitura e gravação são enviadas por meio de mensagens Modbus usando bobinas. Uma bobina consiste em palavras de 16 bits e registros binários. Um escravo só pode responder a uma mensagem recebida e nunca inicia a comunicação com o mestre.
Cada dispositivo escravo conectado ao bus RS485 em paralelo recebe um ID de escravo Modbus exclusivo. Toda a comunicação Modbus começa enviando o ID do escravo, seja para alertar o dispositivo escravo para aceitar uma consulta ou informar ao mestre qual dispositivo forneceu a resposta.
Da mesma forma que a conectividade RS232 funciona, os dispositivos mestre e escravo precisam ser configurados corretamente. Parâmetros como velocidade e paridade precisam ser sincronizados em toda a rede.
O formato de mensagem usado na comunicação Modbus entre mestre e escravo é definido no protocolo.
Uma consulta Modbus é composta do endereço do dispositivo (ou transmissão), um código de função que define a ação solicitada, os dados retornados com a solicitação e um campo de verificação de erro.
Uma resposta Modbusé composta de campos que verificam se a ação solicitada foi executada, os dados enviados com a resposta e um campo de verificação de erro. O dispositivo escravo irá criar uma mensagem de erro como resposta se não for capaz de cumprir a solicitação ou se os erros afetaram o recebimento da mensagem.
A comunicação Modbus emprega dois modos de transmissão serial distintos: ASCII e RTU.
O modo Modbus ASCII (Código Padrão Americano para Intercâmbio de Informações) envia cada mensagem de 8 bits como dois caracteres ASCII. As vantagens do modo ASCII incluem a capacidade de monitorar facilmente as mensagens em um console de texto. Este modo também permite que um intervalo de um segundo seja aceitável sem iniciar o tempo limite.
O modo Modbus RTU (Unidade Terminal Remota) transmite mensagens em um formato diferente. Aqui, uma mensagem de 8 bits contém dois caracteres hexadecimais de 4 bits. Os dados que usam este modo de transmissão devem ser enviados em um fluxo contínuo e permite um melhor rendimento do que o modo ASCII para uma taxa de transmissão comparável.