O mundo da automação – O protocolo Modbus

Estamos começando uma nova coluna com informações que são importantes para este atual mundo da automação, que já está “casado” com a rede de dados já há algum tempo, em especial, o protocolo IP.

Muito se houve falar na indústria 4.0, que a automação vai dominar o mundo, gerando desemprego e, sim, é bem verdade que isto deverá ocorrer num breve futuro.

Mas para que você tenha um lugar cativo neste atual mundo da automação, é importante começar a entender como a automação está acontecendo, tecnologias, protocolos, etc, que estaremos abordando de agora em diante nesta coluna. Entre outras tecnologias e protocolos, vamos abordar além do Modbus, o protocolos BACNET, CAN, LON, KNX, protocolos sem fio, protocolos para IoT… Vamos abordar sobre o LORA, SIGFOX, NBIoT, entre diversos outros, além do que está acontecendo no mundo na área de automação e cidades inteligentes e como a Internet liga tudo ao redor.

Penso que o ponto de partida para começarmos falar de automação, começa pelo entendimento do protocolo Modbus, que embora tenha sido criado na década de 70 (1979),  se mantem atual em função da sua simplicidade e robustez. Além do Modbus RTU, já existe o Modbus encapsulado no protocolo IP.

Vamos tentar tratar destes assuntos, da forma mais didática possível e, deixaremos sempre um link (www.mobus.org) para que se possa aprofundar em cada uma das tecnológicas que serão abordadas aqui. Mas, vamos ao que interessa e começarmos a falar de automação do inicio, ou seja, o protocolo Modbus. Para cada protocolo ou tecnologia, desenvolveremos de 2 a 3 artigos e assim por diante, para ficar uma leitura simples, didática e não muito grande.

O Modbus se situa na camada 7 da arquitetura OSI, de 7 camadas (aplicação). Passou a ser um padrão de fato, no ano de 1979 e, até hoje, a maioria dos equipamentos do mundo predial e fabril (geradores, controladores de motores, medidores de energia, etc) utilizam o protocolo Modbus, sendo que hoje temos milhões de dispositivos enviando e recendo informações por meio deste protocolo.

O Modbus pode ser encapsulado no protocolo TCP (da pilha TCP/IP) na porta 502. MODBUS é um protocolo de solicitação / resposta tipo Mestre e escravo, que oferece serviços especificados por códigos de função. Os códigos de função MODBUS são elementos das PDUs ( do protocolo) que enviam  solicitação / resposta MODBUS. A figura 1 apresenta a pilha de protocolo MOBUS que atualmente é implementado usando:

  • TCP / IP sobre Ethernet.
  • Transmissão serial assíncrona em uma variedade de mídias (fio: EIA / TIA -232-E, EIA-422,EIA / TIA-485-A; fibra, rádio, etc.)
  • MODBUS PLUS

 

Figura 1 – A pilha de protocolo Modbus

 

A figura 2 apresenta a versatilidade da transferência de informações Modbus sobre diversas tecnologias que dá a ideia da versatilidade do protocolo, ou seja, dentro do mundo IP, serial RS 232 e 485.

Todos os tipos de dispositivos (PLC, IHM, Painel de Controle, Driver, Controle de Movimento, Dispositivo de I / O) podem usar Protocolo MODBUS para iniciar uma operação remota. A mesma comunicação pode ser feita também na linha serial como em redes Ethernet TCP / IP. Os gateways permitem uma comunicação entre vários tipos de barramentos ou redes usando o protocolo MODBUS.

Figura 2 – Exemplo de uma arquitetura de rede Modbus

O PROTOCOLO

O protocolo MODBUS, conforme figura 3, define uma unidade de dados de protocolo simples (PDU) independente das camadas de comunicação subjacentes. O mapeamento do protocolo MODBUS em barramentos específicos ou rede pode introduzir alguns campos adicionais na unidade de dados da aplicação (ADU).

Figura 3 – Formato do quadro Modbus

A unidade de dados da aplicação MODBUS é construída pelo cliente que inicia uma transação MODBUS. A função indica ao servidor que tipo de ação deve ser executado e o aplicativo MODBUS protocol estabelece o formato de um pedido iniciado por um cliente.

O campo de código de função de uma unidade de dados MODBUS é codificado em um byte. Códigos válidos estão no intervalo de 1 … 255 decimal (o intervalo 128 – 255 é reservado e usado para respostas). Quando uma mensagem é enviada de um Cliente para um dispositivo Servidor, o campo do código de função informa ao servidor que tipo de ação deve ser executada. O código de função “0” não é válido.

Códigos de subfunção são adicionados a alguns códigos de função para definir várias ações. O campo de dados de mensagens enviadas de um cliente para dispositivos do servidor contém informações adicionais que o servidor usa para executar a ação definida pelo código de função. Isso pode incluir itens como endereços discretos e de registro, a quantidade de itens a serem manipulados e a contagem de bytes de dados reais no campo.

O campo de dados pode ser inexistente (de comprimento zero) em certos tipos de pedidos, neste caso o servidor não requer nenhuma informação adicional. O código de função sozinho especifica a ação que deve ser feita.

O tamanho da PDU MODBUS é limitado pela restrição de tamanho herdada da primeira implementação MODBUS na rede Serial Line (máx. RS485 – ADU = 256 bytes).

Assim sendo:

PDU MODBUS para comunicação em linha serial = 256 – Endereço do servidor (1 byte) – CRC (2bytes) = 253 bytes.

Consequentemente:

ADU RS232 / RS485 = 253 bytes + Endereço do servidor (1 byte) + CRC (2 bytes) = 256 bytes.

TCP MODBUS ADU = 253 bytes + MBAP (7 bytes) = 260 bytes.

O protocolo MODBUS define três PDUs. São eles:

  • PDU de solicitação MODBUS, mb_req_pdu
  • PDU de resposta MODBUS, mb_rsp_pdu
  • PDU de Resposta de Exceção MODBUS, mb_excep_rsp_pdu

O MODBUS baseia seu modelo de dados em uma série de tabelas que possuem características diferenciadas.

O Modbus manipula 4 tipos de banco de dados que são:

Tabela 1 – Tabela primária

Todos os dados manipulados via MODBUS (bits, registradores) devem estar localizados no dispositivo, ou seja, na memória da aplicação. Mas endereço físico na memória não deve ser confundido com dados de referência.

Vamos encerrar esta primeira parte explicando melhor esta tabela primária:

Exemplo 1: Dispositivo com 4 blocos separados ( 4 bancos de dados)

O exemplo da figura 4 mostra a organização dos dados em um dispositivo exemplo com entradas e saídas digitais e analógicas.

Cada bloco é separado porque os de blocos diferentes não tem correlação, ou seja, as entradas e saídas analógicas e digitais são independentes. Desta forma, o bloco é assim acessível com diferentes funções MODBUS.

Figura 4 – Modelo de dados separado por blocos

Exemplo 2: Dispositivo com apenas 1 bloco

No exemplo da figura 5, o dispositivo tem apenas 1 bloco de dados. Os mesmos dados podem ser alcançados através de várias funções MODBUS, seja através de um acesso de 16 bits ou através de um bit de acesso.

Estes blocos são totalmente conceituais. Eles podem existir como endereços de memória distintos em um dado sistema, mas também podem se sobrepor entre si. Por exemplo, o coil 1 pode existir na mesma posição de memória que o primeiro bit da palavra representada pelo registrador de retenção 1. O esquema de endereçamento é totalmente definido pelo dispositivo escravo, e a interpretação de cada bloco de memória é uma parte importante do modelo de dados do dispositivo.

 

Figura 5 – Modelo de dados com 1 bloco

Explicando melhor estes registradores

Os dados que podem ser acessados pelo Modbus são armazenados, de forma geral, em um dos quatro bancos de dados, ou faixas de endereço: coils, entradas discretas, registradores holding (que estamos chamando de retenção) e registradores de entrada. Esses nomes de registradores podem variar, dependendo do fabricante. Por exempo, o que estamos chamando de registradores holding (retenção) podem ser denominados de uma melhor forma, como registradores de saída, e os coils, para facilitar o entendimento, podem ser referidos como saídas digitais (1 bit). Os dispositivos escravos armazenam localmente estes dados nos dispositivos e podem ser acessados pelo protocolo de forma geral por meio de um subconjunto da memória principal do dispositivo. Por outro lado, os mestres Modbus precisam solicitar acesso a esses dados, utilizando diversos códigos de função.

Nesse esquema de endereçamento, cada tipo de dados recebe um prefixo, como mostrado na tabela 2.

 

Bloco de dados Prefixo
Coil 0
Entrada discreta 1
Registrador de entrada 3
Registrador Holding (retenção) 4

Tabela 2 –  Esquema do prefixo de endereçamento

Coils utilizam o prefixo 0. Isso significa que a referência 4001 pode se referir ao registrador holding 1 ou ao coil 4001. Por esse motivo, é recomendado que todas as implementações novas utilizem o endereçamento de 6 dígitos com zeros na frente. Essa informação deverá ser anotada na documentação. Dessa forma, o registrador holding 1 é referenciado como 400.001 e o coil 4001 é referenciado como 004.001.

Embora a especificação defina que diferentes tipos de dados devem existir em blocos diferentes e atribua uma faixa de endereços local para cada tipo, isso não implica que haverá necessariamente um esquema de endereçamento intuitivo ou facilmente compreensível para a documentação da memória que pode ser acessada pelo Modbus para um determinado dispositivo. Para simplificar a discussão sobre as posições dos blocos de memória, foi introduzido um esquema de numeração que inclui prefixos ao endereço dos dados em questão.

Por exemplo, em vez de se referir a um item como registrador holding (retenção) 14 no endereço 13, o manual do dispositivo pode se referir a um item de dados no endereço 4.014, 40.014 ou 400.014. Em todos esses casos, o primeiro número especificado é 4, que representa os registradores holding; os demais números especificam um endereço. A diferença entre 4XXX, 4XXXX e 4XXXXX depende do espaço de endereços utilizado pelo dispositivo. Se todos os 65.536 registradores estiverem em uso, utilizaremos a notação 4XXXXX, pois ela permite o uso da faixa de 400.001 a 465.536. Se apenas alguns registradores forem usados, uma prática comum é usar a faixa de 4.001 a 4.999.

 

Na próxima edição, vamos avançar mais no protocolo Modbus com exemplos de rede e sistemas de automação.

Bibliografia

www.modbus.org

https://www.ni.com/pt-br/innovations

 

   

Este site usa cookies

Usamos cookies para personalizar conteúdo e anúncios, fornecer recursos de mídia social e analisar nosso tráfego. Também compartilhamos informações sobre o uso de nosso site com nossos parceiros de mídia social, publicidade e análise, que podem combiná-las com outras informações que você forneceu a eles ou que eles coletaram do uso de seus serviços.
View more
Cookies settings
Aceitar
Política de Privacidade e Cookies
Privacy & Cookies policy
Cookie name Active

Política Privacidade

A sua privacidade é importante para nós. É política do Wire Engenharia respeitar a sua privacidade em relação a qualquer informação sua que possamos coletar no site Wire Engenharia, e outros sites que possuímos e operamos. Solicitamos informações pessoais apenas quando realmente precisamos delas para lhe fornecer um serviço. Fazemo-lo por meios justos e legais, com o seu conhecimento e consentimento. Também informamos por que estamos coletando e como será usado. Apenas retemos as informações coletadas pelo tempo necessário para fornecer o serviço solicitado. Quando armazenamos dados, protegemos dentro de meios comercialmente aceitáveis ​​para evitar perdas e roubos, bem como acesso, divulgação, cópia, uso ou modificação não autorizados. Não compartilhamos informações de identificação pessoal publicamente ou com terceiros, exceto quando exigido por lei. O nosso site pode ter links para sites externos que não são operados por nós. Esteja ciente de que não temos controle sobre o conteúdo e práticas desses sites e não podemos aceitar responsabilidade por suas respectivas políticas de privacidade. Você é livre para recusar a nossa solicitação de informações pessoais, entendendo que talvez não possamos fornecer alguns dos serviços desejados. O uso continuado de nosso site será considerado como aceitação de nossas práticas em torno de privacidade e informações pessoais. Se você tiver alguma dúvida sobre como lidamos com dados do usuário e informações pessoais, entre em contato conosco.

Política de Cookies Wire Engenharia

O que são cookies?

Como é prática comum em quase todos os sites profissionais, este site usa cookies, que são pequenos arquivos baixados no seu computador, para melhorar sua experiência. Esta página descreve quais informações eles coletam, como as usamos e por que às vezes precisamos armazenar esses cookies. Também compartilharemos como você pode impedir que esses cookies sejam armazenados, no entanto, isso pode fazer o downgrade ou 'quebrar' certos elementos da funcionalidade do site.

Como usamos os cookies?

Utilizamos cookies por vários motivos, detalhados abaixo. Infelizmente, na maioria dos casos, não existem opções padrão do setor para desativar os cookies sem desativar completamente a funcionalidade e os recursos que eles adicionam a este site. É recomendável que você deixe todos os cookies se não tiver certeza se precisa ou não deles, caso sejam usados ​​para fornecer um serviço que você usa.

Desativar cookies

Você pode impedir a configuração de cookies ajustando as configurações do seu navegador (consulte a Ajuda do navegador para saber como fazer isso). Esteja ciente de que a desativação de cookies afetará a funcionalidade deste e de muitos outros sites que você visita. A desativação de cookies geralmente resultará na desativação de determinadas funcionalidades e recursos deste site. Portanto, é recomendável que você não desative os cookies.

Cookies que definimos

  • Cookies relacionados à contaSe você criar uma conta connosco, usaremos cookies para o gerenciamento do processo de inscrição e administração geral. Esses cookies geralmente serão excluídos quando você sair do sistema, porém, em alguns casos, eles poderão permanecer posteriormente para lembrar as preferências do seu site ao sair.
  • Cookies relacionados ao loginUtilizamos cookies quando você está logado, para que possamos lembrar dessa ação. Isso evita que você precise fazer login sempre que visitar uma nova página. Esses cookies são normalmente removidos ou limpos quando você efetua logout para garantir que você possa acessar apenas a recursos e áreas restritas ao efetuar login.
  • Cookies relacionados a boletins por e-mailEste site oferece serviços de assinatura de boletim informativo ou e-mail e os cookies podem ser usados ​​para lembrar se você já está registrado e se deve mostrar determinadas notificações válidas apenas para usuários inscritos / não inscritos.
  • Pedidos processando cookies relacionadosEste site oferece facilidades de comércio eletrônico ou pagamento e alguns cookies são essenciais para garantir que seu pedido seja lembrado entre as páginas, para que possamos processá-lo adequadamente.
  • Cookies relacionados a pesquisasPeriodicamente, oferecemos pesquisas e questionários para fornecer informações interessantes, ferramentas úteis ou para entender nossa base de usuários com mais precisão. Essas pesquisas podem usar cookies para lembrar quem já participou numa pesquisa ou para fornecer resultados precisos após a alteração das páginas.
  • Cookies relacionados a formuláriosQuando você envia dados por meio de um formulário como os encontrados nas páginas de contacto ou nos formulários de comentários, os cookies podem ser configurados para lembrar os detalhes do usuário para correspondência futura.
  • Cookies de preferências do sitePara proporcionar uma ótima experiência neste site, fornecemos a funcionalidade para definir suas preferências de como esse site é executado quando você o usa. Para lembrar suas preferências, precisamos definir cookies para que essas informações possam ser chamadas sempre que você interagir com uma página for afetada por suas preferências.

Cookies de Terceiros

Em alguns casos especiais, também usamos cookies fornecidos por terceiros confiáveis. A seção a seguir detalha quais cookies de terceiros você pode encontrar através deste site.
  • Este site usa o Google Analytics, que é uma das soluções de análise mais difundidas e confiáveis ​​da Web, para nos ajudar a entender como você usa o site e como podemos melhorar sua experiência. Esses cookies podem rastrear itens como quanto tempo você gasta no site e as páginas visitadas, para que possamos continuar produzindo conteúdo atraente.
Para mais informações sobre cookies do Google Analytics, consulte a página oficial do Google Analytics.
  • As análises de terceiros são usadas para rastrear e medir o uso deste site, para que possamos continuar produzindo conteúdo atrativo. Esses cookies podem rastrear itens como o tempo que você passa no site ou as páginas visitadas, o que nos ajuda a entender como podemos melhorar o site para você.
  • Periodicamente, testamos novos recursos e fazemos alterações subtis na maneira como o site se apresenta. Quando ainda estamos testando novos recursos, esses cookies podem ser usados ​​para garantir que você receba uma experiência consistente enquanto estiver no site, enquanto entendemos quais otimizações os nossos usuários mais apreciam.
  • À medida que vendemos produtos, é importante entendermos as estatísticas sobre quantos visitantes de nosso site realmente compram e, portanto, esse é o tipo de dados que esses cookies rastrearão. Isso é importante para você, pois significa que podemos fazer previsões de negócios com precisão que nos permitem analizar nossos custos de publicidade e produtos para garantir o melhor preço possível.

Compromisso do Usuário

O usuário se compromete a fazer uso adequado dos conteúdos e da informação que o Wire Engenharia oferece no site e com caráter enunciativo, mas não limitativo:
  • A) Não se envolver em atividades que sejam ilegais ou contrárias à boa fé a à ordem pública;
  • B) Não difundir propaganda ou conteúdo de natureza racista, xenofóbica, jogos de hoje ou azar, qualquer tipo de pornografia ilegal, de apologia ao terrorismo ou contra os direitos humanos;
  • C) Não causar danos aos sistemas físicos (hardwares) e lógicos (softwares) do Wire Engenharia, de seus fornecedores ou terceiros, para introduzir ou disseminar vírus informáticos ou quaisquer outros sistemas de hardware ou software que sejam capazes de causar danos anteriormente mencionados.

Mais informações

Esperemos que esteja esclarecido e, como mencionado anteriormente, se houver algo que você não tem certeza se precisa ou não, geralmente é mais seguro deixar os cookies ativados, caso interaja com um dos recursos que você usa em nosso site. Esta política é efetiva a partir de Outubro/2021.
Save settings
Cookies settings