Guia de comunicação Modbus RTU


Neste artigo, vamos explicar todos os aspectos relacionados à comunicação Modbus RTU. Qual é a diferença entre Modbus RTU vs ASCII e Modbus RTU vs TCP/IP? Como testar o protocolo Modbus RTU com o software de monitoramento Modbus RTU.

Conteúdo

  1. O que é o protocolo Modbus RTU?
  2. Como testar o Modbus RTU com o Monitor de porta serial
  3. Como funciona o Modbus RTU?
  4. Modbus RTU vs TCP
  5. Modbus RTU vs ASCII

O que é o protocolo Modbus RTU?


O protocolo Modbus RTU é um meio de comunicação que permite a troca de dados entre controladores lógicos programáveis (PLCs) e computadores. Dispositivos eletrônicos podem trocar informações através de linhas seriais usando o protocolo Modbus.

Tornou-se amplamente aceito e é usado extensivamente na construção de Sistemas de Gerenciamento de Edifícios (BMS) e sistemas de automação industrial (IAS). Sua adoção foi impulsionada pela facilidade de uso, confiabilidade e pelo fato de ser de código aberto e poder ser usada com isenção de royalties em qualquer dispositivo ou aplicativo.

O protocolo foi desenvolvido e publicado pela Modicon® em 1979 para uso com seus controladores lógicos programáveis. Ele é construído usando uma arquitetura mestre/escravo e suporta dispositivos seriais que usam os protocolos RS232/RS485/RS422. O Modbus é frequentemente usado em cenários onde vários dispositivos de instrumentação e controle transmitem sinais a um controlador ou sistema central para coletar e analisar dados. Automação industrial e controle de supervisão e aquisição de dados (SCADA) os sistemas geralmente empregam o protocolo Modbus.

O que significa o Modbus RTU?


O Modbus RTU (Remote Terminal Unit) é um dos dois modos de transmissão definidos na especificação original do Modbus. Os dois modos são Modbus RTU e ASCII e são projetados para serem usados com dispositivos seriais que suportam os protocolos RS232, RS485 e RS422. Uma característica distintiva do Modbus RTU é o uso de codificação binária e verificação de erros de CRC. O Modbus RTU é a implementação do protocolo Modbus mais utilizado em aplicações industriais e instalações de produção automatizadas.

Como testar o Modbus RTU com o SPM


Existem algumas situações em que o uso de um testador Modbus RTU pode ser muito útil. Se você está desenvolvendo ou depuração de dispositivos ou aplicativos seriais, Você gostaria de poder monitorar e analisar a transmissão de dados entre dispositivos e aplicativos. Outro exemplo em que um utilitário de monitoramento Modbus RTU se mostrará indispensável é se você for encarregado de manter a rede e os dispositivos associados em uma instalação de produção industrial automatizada.

Serial Port Monitor é um software eficiente para testar e depurar o protocolo Modbus RTU.
Serial Port Monitor logo

Serial Port Monitor

Registrar e analisar a actividade da porta serial
4.8 Classificação baseado em 41+ usuários, Сomentários(75)
Baixar 14 dias do ensaio totalmente funcional
Serial Port Monitor

Serial Port Monitor por Eltima é um software Modbus RTU. É um aplicativo abrangente e completo que permite o monitoramento e análise de todas as atividades da interface Modbus RTU em seu sistema. Quaisquer dispositivos que suportem os protocolos RS232, RS485 e RS422 podem ter suas transmissões monitoradas e analisadas para auxiliar nas tarefas de depuração ou desenvolvimento.

Esta ferramenta de software foi projetada com uma interface flexível e fácil de usar, terminal integrado e recursos de exportação de dados. É um recurso valioso para diagnosticar problemas de comunicação Modbus RTU no ambiente Windows. Aqui estão alguns destaques da lista de recursos que fazem parte do Serial Port Monitor.

  • Análise da atividade do Modbus RTU. Esse sniffer de porta serial pode abrir qualquer porta serial, mesmo aquelas já abertas por outro aplicativo, e imediatamente começar a monitorar toda a atividade que passa por essa interface. A coleta de dados em tempo real permite rastrear rapidamente problemas e problemas. Os dados monitorados podem ser redirecionados para arquivos ou copiados para a área de transferência para serem usados para análise posterior.
  • Monitore várias portas seriais simultaneamente. O uso desse recurso permite que você observe seus aplicativos interagindo com várias portas ou dispositivos na mesma sessão de monitoramento. Os dados capturados são apresentados em uma base first-in-first-out em um arquivo de log central para simplificar sua análise.
  • Escolha entre várias visualizações de dados. Existem quatro visualizações que podem ser usadas separadamente ou vistas todas ao mesmo tempo. Eles são os modos de tabela, linha, despejo e terminal, e cada um deles oferece uma visão diferente dos dados. A exibição de despejo permite investigar configurações de porta e você pode empregar filtros de monitoramento para reduzir a desordem na tela e se concentrar nos eventos que são importantes.
  • Emulação de transmissão de dados. Você pode enviar dados a dispositivos seriais em vários formatos, como string, binário, decimal e hex para monitorar a reação do dispositivo serial a comandos ou cadeias de dados específicos.
  • Opção de reprodução de sessão. Você pode repetir uma transmissão para uma porta serial para obter informações de monitoramento mais precisas. As sessões podem ser comparadas entre si e as diferenças destacadas automaticamente para facilitar a análise.
  • Exportar dados monitorados em vários formatos. Você pode exportar seus dados para um arquivo em HTML, texto ASCII, texto UNICODE ou formato EXCEL CSV e pode ter dados atualmente monitorados anexados a um arquivo salvo anteriormente.
  • Interface amigável. Monitor de porta serial é projetado para permitir o acesso a portas seriais e interfaces sem a necessidade de qualquer habilidade de programação. Os filtros para controlar os dados exibidos são facilmente personalizados na barra de ferramentas do aplicativo.
  • Controlar códigos de controle de entrada/saída. Você pode obter os detalhes completos e os parâmetros de todos os códigos de controle de entrada/saída serial (IOCTLs) usando o Serial Port Monitor

Este analisador de protocolo Modbus RTU deve estar na caixa de ferramentas de qualquer pessoa que trabalhe extensivamente com dispositivos seriais e com o protocolo Modbus. Você pode usá-lo no modo RTU ou ASCII, tornando-o um utilitário de software versátil. É uma solução eficiente que permite monitorar todas as interfaces seriais em seu sistema sem requisitos adicionais de hardware. O Monitor de porta serial do Eltima é executado no sistema operacional Windows 10, bem como no Windows Server 2012 e 2016.

Como funciona o Modbus RTU?


O protocolo Modbus é basicamente um sistema que processa solicitações e respostas de dispositivos eletrônicos. A arquitetura mestre / escravo é usada com o mestre fazendo solicitações que são respondidas pelos dispositivos escravos.

O que é um mestre Modbus RTU?

Um mestre Modbus RTU é o dispositivo central que faz solicitações de informações dos dispositivos escravos conectados. Um controlador central em um sistema de produção automatizado pode desempenhar o papel de um mestre Modbus RTU. Uma implementação do Modbus tem um mestre. Os dispositivos mestres obtêm informações dos escravos e também podem gravar nos registros dos dispositivos escravos.

O que é um escravo Modbus RTU?

O escravo Modbus RTU é o dispositivo que responde ao pedido feito pelo dispositivo mestre. Ele não pode iniciar transferências de informações e está em um padrão de espera até responder a uma solicitação feita pelo mestre.

Como afirmado, existe um dispositivo mestre em uma implementação Modbus RTU e pode haver até 247 dispositivos escravos. Cada dispositivo escravo é identificado por um endereço escravo de 1 a 247.

No coração do protocolo Modbus está o componente conhecido como Unidade de Dados do Protocolo (PDU). A PDU consiste em um código de função e dados e é construída de forma consistente, independentemente do modo de transmissão Modbus usado. O código de função especifica quais dados estão sendo solicitados pelo mestre.

No modo de transmissão Modbus RTU, informações adicionais são agrupadas ao redor da PDU para criar a unidade de dados de aplicativos (ADU) completa. No fluxo de sinal e antes do código de função, no modo Modbus RTU, um ID de escravo de 1 byte é enviado para identificar o dispositivo escravo que deve satisfazer a solicitação. Anexado ao PDU é um CRC de 2 bytes que garante que a quantidade correta de bytes foram enviados e recebidos.

Os dispositivos Modbus suportam quatro tabelas de dados que são usadas para facilitar a comunicação entre dispositivos. São Entradas Discretas, Saídas Distintas (Coils), Registradores de Entrada e Registradores de Retenção. Os registradores executam funções diferentes e não estão todos incluídos em todos os dispositivos. Em alguns casos, somente os registros de retenção são usados para a funcionalidade de E/S.

Campo Acesso Tamanho Descrição
Entradas discretas
somente leitura
1 bit
usado como entradas
Saídas de bobinas
lendo escrevendo
1 bit
usado para controlar
Registros de entrada
somente leitura
16 bits
usado para entrada
Segurando registros
lendo escrevendo
16 bits
usado para uma variedade de coisas, incluindo entradas, saídas, dados de configuração, etc.

Os códigos de função indicam como o mestre interage com o dispositivo escravo especificado no ID do escravo. Com base no código de função enviado, o dispositivo mestre pode ler um dos registros do escravo ou escrever para ele.

Os escravos retornam códigos de erro quando recebem um pacote que contém um erro na solicitação. Códigos de erro são retornados para problemas como a solicitação de uma função ilegal, endereços de registros ilegais que não podem ser alcançados pelo escravo especificado e mensagens indicando que o dispositivo escravo está ocupado ou teve uma falha.

O Modbus RTU requer que você saiba ou defina parâmetros como taxa de transmissão, formato de caractere (8 bits sem paridade, etc) e ID do escravo ao iniciar a comunicação. Uma incompatibilidade em qualquer um desses parâmetros resultará na falha de sua tentativa de comunicação.

Modbus RTU vs TCP


O Modbus RTU é um dos modos de transmissão originais que foram definidos no protocolo Modbus. O Modbus TCP é uma extensão recentemente desenvolvida para o protocolo que permite que os protocolos Modbus sejam transportados por redes TCP/IP. A latência inerente e outros aspectos da comunicação em uma rede exigem algumas modificações sobre como manter as solicitações e as respostas em sincronia umas com as outras e garantir que os dados errados não sejam recebidos de um dispositivo escravo.

O Modbus TCP exibe uma diferença na forma como o PDU é empacotado quando comparado ao Modbus RTU. O quadro TCP que contém o PDU começa com um identificador de transação MBAP (Protocolo de Aplicativo MODBUS) de 2 bytes em vez do ID do escravo. Também não há necessidade de o CRC executar a verificação de erros, pois a camada TCP manipula essa função.

Modbus RTU vs ASCII


Já que ambas eram partes da especificação original do protocolo Modbus, você pode estar se perguntando qual é a diferença entre Modbus ASCII e Modbus RTU. O Modbus RTU emprega codificação binária e verificação de erros de CRC. Essas escolhas foram feitas por uma questão de eficiência e são a principal razão pela qual o modo RTU é o mais comumente usado em ambientes industriais. Como você deve ter adivinhado, o Modbus ASCII usa caracteres ASCII ao enviar mensagens.

O uso de caracteres ASCII torna as mensagens mais legíveis, mas são meios menos eficientes de transmissão. Outra grande diferença está no nível de verificação de erros que é executado. O Modbus ASCII usa o método LRC menos eficaz de verificação de erros do que o CRC mais forte do modo RTU.

Embora o Modbus RTU e o Modbus ASCII sejam projetados para serem usados com dispositivos e protocolos seriais, eles são incompatíveis entre si devido às diferenças descritas acima. Se você trabalha com dispositivos seriais, você deve estar preparado para fazer uso do protocolo Modbus.

Serial Port Monitor

Requisitos: Windows (32-bit e 64-bit): XP/2003/2008/Vista/7/8/10, Windows Server 2012, Windows Server 2016 , 9.16MB tamanho
Versão 7.0.342 (13th , 2018) Notas de versão
Categoria: Communication Application