Tutorial avançado
em Modbus ASCII


Conteúdo

  1. Qual é o protocolo Modbus ASCII?
  2. Como testar a comunicação Modbus ASCII?
  3. Qual é a diferença entre Modbus ASCII e RTU?
  4. Modbus ASCII vs TCP
  5. Como você converte o Modbus ASCII no protocolo Modbus RTU?

Qual é o protocolo Modbus ASCII?


Modbus é um protocolo de comunicação serial desenvolvido pela empresa Modicon em 1979. Ele foi originalmente projetado para ser usado com os controladores lógicos programáveis (PLCs) da empresa. O Modbus é um protocolo aberto que suporta dispositivos seriais que usam os protocolos RS232/RS485/RS422. A sua simplicidade e o facto de os fabricantes poderem incorporá-lo nos seus produtos sem qualquer custo, ajudou-o a tornar-se no método mais popular de ligação de dispositivos electrónicos industriais.

Existem dois estilos principais de transmissão que são usados ao empregar o protocolo Modbus. Eles são Modbus RTU e Modbus ASCII. Este artigo pretende ser um tutorial avançado do Modbus ASCII. Começaremos com uma visão geral do Modbus que é pertinente às implementações ASCII e RTU do protocolo.

O Modbus aborda a questão do envio de informações entre dispositivos eletrônicos através de linhas seriais. O protocolo é implementado em uma arquitetura que segue o modelo mestre/escravo. O mestre Modbus é responsável por solicitar informações dos outros dispositivos. Existe um mestre Modbus em uma rede Modbus padrão.

Modelo mestre/escravo Modbus

O mestre solicita informações dos dispositivos escravos, que podem numerar até 247. Cada dispositivo escravo é identificado por um endereço escravo entre 1 e 247. O processo pelo qual o mestre consulta o escravo e recebe a informação retornada do escravo é o que significa Comunicação Modbus. Além de solicitar informações do escravo, o dispositivo mestre também pode gravar nos registros internos do dispositivo escravo./p>

Dados seriais são trocados entre dispositivos em fluxos de bits, onde cada bit é uma voltagem. Dados binários são trocados com um sendo denotado por uma tensão negativa e um zero é representado por uma tensão positiva.

O protocolo Modbus define os códigos de função e o esquema de codificação para a transferência de dados como pontos únicos (1 bit, bobinas) ou como registradores de dados de 16 bits. Os pacotes de dados são encapsulados de acordo com o método de transmissão em uso. O protocolo Modbus usa quatro tabelas distintas para armazenar dados nos dispositivos escravos. Existem duas bobinas que armazenam valores discretos ligados e desligados e dois registradores que armazenam valores numéricos. No caso do Modbus ASCII, as mensagens são passadas usando o conjunto de caracteres ASCII, tornando-as mais facilmente legíveis por olhos humanos.

Como testar comunicação Modbus ASCII com Analisador protocolo Modbus?


Se você estiver trabalhando com dispositivos seriais e com o protocolo Modbus, há uma boa chance de que, em algum momento, você precise realizar alguma depuração ou monitoramento de sua transmissão de dados serial. Modbus Analyzer (Serial Port Monitor) é um aplicativo de software dedicado desenvolvido pela Eltima Software que pode ser usado para analisar e diagnosticar a transmissão de dados viajando pelas interfaces seriais do seu sistema.

Modbus Protocol Analyzer

O Modbus Analyzer é um utilitário de sistema profissional e poderoso para exibir, registrar e analisar a comunicação Modbus.
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

Para apreciar melhor como uma ferramenta de teste Modbus ASCII, como o protocolo Modbus Analyzer, pode ajudá-lo, vamos dar uma olhada no formato de dados e mensagens Modbus ASCII.

Formato de dados Modbus ASCII


O Modbus ASCII usa o conjunto de caracteres ASCII para representar caracteres hexadecimais, cada um contendo 4 bits de dados. Existem 10 bits em cada byte no modo Modbus ASCII. Eles consistem em:

  • 1 bit de início
  • 7 bits de dados com o bit menos significativo enviado primeiro
  • 1 bit para conclusão de paridade
  • 1 bit de parada

Formato de mensagem Modbus ASCII


O formato das mensagens Modbus ASCII consiste em um caractere inicial que é um cólon “:” e o final da mensagem é definido por um retorno de carro e uma alimentação de linha. Isso permite que o espaço entre as mensagens seja variável e torne o Modbus ASCII adequado para transmissão através de certos modems.

O software Modbus Sniffer pode ser extremamente útil na depuração, monitoramento e diagnóstico de problemas em uma rede Modbus. Ele pode ser usado tanto para implementações Modbus RTU quanto ASCII.

Usando esta ferramenta permite que você:

  • Analisar a atividade da porta serial - Você pode abrir qualquer porta serial em seu sistema, mesmo se já estiver em uso por outro aplicativo. Use a coleta de dados em tempo real para diagnosticar rapidamente os problemas de toda a atividade da porta serial.
  • Monitore várias portas seriais ao mesmo tempo - Um arquivo de log central armazenará todos os dados monitorados de uma forma inédita para facilitar a análise.
  • Visualize seus dados em quatro formatos diferentes: use essas várias exibições individualmente ou em combinações para obter mais informações sobre seus dados. A tabela, a linha, o dump e o modo terminal permitem que você visualize seus dados da maneira mais adequada às suas necessidades.
  • Emulação de transmissão de dados - Você pode emular a transmissão de dados para dispositivos seriais em vários formatos, como string, binário, decimal e hexadecimal.
  • Exportar seus dados monitorados - Você pode exportar seus dados para arquivos em HTML, texto ASCII, texto UNICODE ou formato CSV Ex. Novos dados podem ser anexados aos arquivos salvos anteriormente.

Tudo dito, o Modbus Protocol Analyzer é uma ferramenta essencial para quem trabalha com dispositivos seriais e com o protocolo Modbus.

Qual é a diferença entre Modbus
ASCII e RTU?


Tanto o Modbus ASCII quanto o RTU foram introduzidos como parte da especificação original do protocolo Modbus. As duas variações usam a mesma arquitetura mestre/escravo e são muito semelhantes. Ambos são projetados para funcionar com dispositivos seriais, mas não são compatíveis entre si devido a diferenças que discutiremos a seguir.

O principal fator diferenciador é aquele Modbus RTU emprega codificação binária, onde o Modbus ASCII apropriadamente chamado usa o conjunto de caracteres ASCII. O Modbus RTU executa a verificação de erros usando o método de CRC rigoroso, enquanto o Modbus ASCII usa o método de verificação de erros LRC menos eficaz. O formato de dados também é um pouco diferente, pois a variação da RTU usa um bit de início, 8 bits de dados e um bit de parada, em oposição ao formato de dados ASCII que analisamos anteriormente.

A combinação de codificação binária e verificação de erros de CRC torna o Modbus RTU adequado para aplicações industriais, pois permite uma transmissão mais eficiente do que a alternativa de caracteres ASCII. Ao escolher entre o Modbus RTU e o ASCII, a RTU é a primeira escolha se o desempenho for considerado.

Modbus ASCII vs TCP


Há mais um sabor do Modbus a considerar e é o Modbus TCP. Isso é simplesmente uma implementação do Modbus que é executado em uma rede TCP/IP. A principal diferença entre o Modbus ASCII e o Modbus TCP é que a verificação de erros do LRC exigida pelo Modbus ASCII é executada
pela camada IP.

Como você converte o Modbus ASCII no protocolo Modbus RTU?


Como mencionamos anteriormente, os protocolos Modbus ASCII e Modbus RTU não são compatíveis entre si. Dispositivos que empregam os dois protocolos não podem se comunicar diretamente entre si. Mas existem maneiras de fazer com que os dispositivos conversem entre si.

Protocolo Modbus RTU

Para fazer isso, você precisará usar uma solução de hardware chamada conversor Modbus ASCII para RTU. Esse tipo de dispositivo é basicamente um tradutor que lê dados de um dispositivo e o armazena internamente em outro protocolo para uso pelo segundo dispositivo. Dessa forma, os dispositivos que usam qualquer variação do Modbus podem se comunicar uns com os outros.

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