Rodrigo Augusto Lippi
DLG Automação LTDA
rodrigoalippi@dlg.com.br
Carlos Augusto Ribeiro
DLG Automação LTDA
carlos@dlg.com.br
Abstract
Data Acquisition System Using a Master ModBus/RTU
Proposed a data acquisition system applied to industrial networks where the Protocol is ModBUs/RTU and the physical medium serial 485. The aquisitor has the characteristic ModBus/RTU master on ModBus network. The data to be stored are available in values of the slave registries ModBus in ModBus network. Any instrument be it an indicator, a controller, a sensor, and others, can be considered a slave on the network since it has available a ModBus/RTU communication port.
Resumo
Proposto um sistema de aquisição de dados aplicado a redes industriais onde o protocolo seja o ModBUs/RTU e o meio físico serial 485. O aquisitor tem a característica de mestre ModBus/RTU na rede ModBus/RTU. Os dados a serem armazenados são valores de registros ModBus disponíveis nos escravos da rede. Qualquer instrumento seja ele um indicador, um controlador, um sensor ou outros, podem ser considerados escravos na rede desde que tenha disponível uma porta de comunicação ModBus/RTU.
Palavras chaves: Aquisição de dados, mestre Modbus/RTU, redes industriais.
1- INTRODUÇÃO
Em ambientes industriais, sempre há a necessidade de analisar o comportamento de um processo através de suas variáveis e um sistema de aquisição de dados pode ser uma solução. Também, em ambientes industriais, é muito comum os instrumentos distribuídos pela planta da indústria, que são responsáveis em atuar, medir e controlar, estarem interconectados por uma rede de comunicação (Modbus, Profibus, FieldBus, etc...).
Aquisição de dados é o processo de medir um fenômeno elétrico ou físico como tensão, corrente, temperatura, frequência etc. Todo sistema de aquisição de dado compartilha um objetivo em comum, adquirir, analisar, e apresentar a informação. Sistemas de aquisição de dados incorporam sinais, sensores, atuadores, condicionamento de sinais, dispositivos de aquisição de dados e softwares de aplicação.
Dentro da automação industrial, define-se como rede industrial os protocolos de comunicação utilizados para supervisionar e controlar um determinado processo, com uma troca rápida e precisa de informações entre sensores, atuadores, computadores, controladores lógicos programáveis (CLP), entre outros.
Visualizando esta necessidade do mercado, foi proposto um sistema de aquisição de dados aplicado a redes industriais onde o protocolo seja o ModBUs/RTU e o meio físico serial 485. O aquisitor tem a característica de mestre ModBus/RTU na rede ModBus/RTU. Os dados a serem armazenados são valores de registros ModBus disponíveis nos escravos da rede. Qualquer instrumento seja ele um indicador, um controlador, um sensor ou outros, podem ser considerados escravos na rede desde que tenha disponível uma porta de comunicação ModBus/RTU.
O sistema de aquisição de dados proposto pode ser dividido em três blocos funcionais. O primeiro seria um bloco TCP/IP, responsável pela configuração das regras de aquisição, monitoração e transferência dos dados via software dedicado. O segundo seria um bloco Mestre Modbus/RTU, responsável pela varredura dos registros associados aos equipamentos escravos na rede Modbus/RTU. E o terceiro seria um bloco de escrita no formato FAT32, responsável em armazenar os dados em um cartão de memória do tipo micro SD.
Neste artigo será abordado além de uma introdução ao sistema de aquisição de dados, um estudo das topologias utilizadas nas redes industriais, a flexibilidade e a confiabilidade do protocolo na entrega dos dados ao cliente e estudo de casos aplicados nas redes industriais no Brasil.
2- AQUISITOR DE DADOS
O aquisitor de dados pode ser dividido em blocos funcionais para melhor entendimento. Os Principais blocos são o bloco UDP, bloco TCP/IP, bloco Modbus/RTU Master, bloco de memória, bloco de indicação de status e o bloco da CPU.
Nos próximos tópicos serão abordados os blocos mais importantes do aquisitor de dados.
Figura Diagrama de Blocos funcional do aquisitor de dados.
2- Bloco Funcional UDP
O bloco funcional UDP é responsável pela configuração dos parâmetros de comunicação do TCP/IP e da porta Modbus. Esse bloco utiliza a conexão ethernet e o protocolo UDP. Os parâmetros de configuração do TCP/IP são o endereço MAC, o endereço IP e a máscara de rede (MASK). Os parâmetros de configuração da porta Modbus são número identificador da rede (ID), taxa de comunicação (baudrate), tempo de estouro (timeout).
O endereço MAC é o endereço físico do elemento na rede ethernet. Este endereço é fixo e único para todo elemento da rede.
O endereço IP é o endereço de identificação do elemento na rede. Este endereço é configurável conforme o domínio da rede em uso.
A máscara de rede é usada para separar em um IP a parte correspondente à rede pública, à sub-rede e aos hosts.
O ID na rede Modbus é o identificador, configurável e único, para cada escravo presente na rede. O ID pode ser configurado com a faixa de valores de 1 a 255.
O baudrate é a taxa, em bits por segundo (bps), na qual o mestre Modbus irá trocar informações com os escravos na rede. O baudrate pode ser configurado com os valores 9600bps, 19200bps, 38400bps, 57600bps e 115200bps.
O tempo de estouro (Time Out) é o tempo total que o mestre Modbus espera, após uma pergunta na rede e antes de reportar uma falha, por uma resposta do escravo correspondente. O tempo de estouro pode ser configurado de 0 à 9999 milisegundos.
3- Bloco Funcional TCP/IP
O aquisitor proposto pode logar até quatro escravos na rede Modbus, foi limitado neste valor por causa do volume de dados a ser adquiridos. Para cada escravo na rede é associado uma regra para a aquisição dos dados.
Uma das funcionalidades do bloco TCP/IP é de configurar as regras de aquisição. As regras são compostas por vários parâmetros e são o ID do escravo na rede, função Modbus a ser usada, faixa de endereços modbus, intervalo de aquisição, tipo de formatação, estatísticas, data e hora de início e término e o nome do arquivo.
O ID, dito anteriormente, é o endereço de identificação do escravo na rede Modbus.
O tipo de função Modbus se refere as funções Modbus padrões de leitura, são elas:
-
Função 1 (Read Coil);
- Função 2 (Read Discrets Inputs);
- Função 3 (Read Holding Registers);
- Função 4 (Read Input Registers).
A faixa de endereços Modbus inicial e final refere-se aos endereços a serem logados nos escravos.
O intervalo de aquisição é o tempo entre aquisições dado em segundos.
O tipo de formatação do arquivo pode ser normal ou encriptada. Com a formatação normal, o usuário poderá baixar e visualizar os dados formatados e legíveis. Com a formatação encriptada, o usuário somente conseguirá visualizar os dados com a ajuda do software para interpretar a encriptação.
Os recursos de estatística podem ser acrescentados ao relatório. Os dados podem ser amostrais ou podem ser pela média das amostras, podem também ser registrados os valores mínimo e máximo de cada amostra.
As datas e horas de início e término podem ser configuradas pois o aquisitor possui um calendário interno, alimentado por bateria interna e sincronizado com o calendário do PC para atualização.
O nome do arquivo poderá conter até sete caracteres. Após o último caracter, o nome será preenchido com a extensão “.txt” automaticamente.
O bloco funcional TCP/IP também tem outras funcionalidades como forçar o iniciar e a parada da aquisição, fazer download e upload das configurações das regras, ler a tensão da bateria do calendário, formatar a memória, sincronizar o calendário do aquisitor com o do PC e abrir, baixar e apagar arquivos logados na memória.
4- Bloco Funcional Mestre Modbus/RTU
O Bloco Funcional Mestre Modbus/RTU é o bloco responsável em executar todos os parâmetros configurados nas regras de aquisição. É responsável também em publicar uma pergunta na rede Modbus/RTU e aguardar a resposta do escravo. A resposta é recebida e verificada em relação a sua integridade. Se a resposta recebida for integra o aquisitor irá enviá-la ao relatório senão o aquisitor irá reportar um erro (CRC) no relatório. Se houver um estouro de tempo (timeout), isto é, por qualquer motivo o escravo da rede não responder, o aquisitor irá reportar outro erro (timeout) no relatório.
5- Bloco Funcional Cartão de Memória
O Bloco Funcional Cartão de Memória é o bloco responsável em gerar todo o relatório da aquisição.
O sistema de arquivo desse bloco é responsável em gerar relatórios em um formato padrão (FAT32) compatíveis com o sistema operacional de um PC.
No cabeçalho do relatório, é registrado um resumo de todos os parâmetros configurados na regra e logo abaixo os dados são descritos em colunas. Os parâmetros do relatório que estão em colunas são o index, data, hora, erro, endereço modbus e o CRC da linha.
O index é um número crescente que corresponde ao número de aquisições feitas para aquela regra.
A coluna de data corresponde a data em que ocorreu a aquisição.
A coluna de hora corresponde a hora em que ocorreu a aquisição.
A coluna de erro informa se a aquisição ocorreu sem erros (None), com erro de integridade (CRC) ou erro de estouro de tempo da resposta (timeout).
As colunas com os endereços Modbus correspondem a faixa de endereços configuradas na regra e logo abaixo os valores adquiridos.
E por fim a coluna do CRC da linha garante a integridade dos dados contidos em cada linha do relatório.
Figura Ilustração de relatório.
6- SOFTWARE APLICATIVO
O software aplicativo é uma ferramenta desenvolvida para auxiliar o usuário a trabalhar com o aquisitor de dados. O software aplicativo é responsável em utilizar o bloco UDP para configuração da porta Modbus/RTU e do TCP/IP e utilizar o bloco TCP/IP para configurar as regras, configurar as funcionalidades do aquisitor de dados e, responsável também, no resgate dos dados.
A figura abaixo mostra as principais telas de configuração do software aplicativo.
Figura Principais telas de configuração do software aplicativo.
7- TOPOLOGIA DE REDE
A topologia característica para o aquisitor de dados é ilustrada na figura 3. A porta ethernet do aquisitor de dados pode ser conectado na rede ethernet diretamente ao PC ou por meio de switch. No PC, esta instalado o software aplicativo para configuração e download dos dados. A porta Modbus/TCP do aquisitor de dados está conectada a rede Modbus podendo adquirir os dados de até quatro escravos.
Após a configuração do aquisitor de dados pela rede ethernet, não é necessário deixá-lo conectado, pode ser retirado da rede. Após a coleta dos dados basta conectá-lo novamente e fazer o download dos dados.
Figura Topologia de rede
8- CONCLUSÃO
As características descritas neste artigo, ou seja, o sistema de aquisição de dados utilizando um mestre ModBus/RTU para escanear a rede ModBus e registrar os dados foram implementados com o objetivo de disponibilizar uma solução com um custo reduzido, diferenciado em relação há soluções que utilizam supervisórios, destinados a análise quantitativa e estatística dos dados. Esta solução já vem sendo utilizada por algumas empresas de automação e já vem sendo aplicadas há várias redes industriais.
AGRADECIMENTOS
Os autores agradecem a Associação Sul-Americana de Automação (ISA) pela oportunidade de expormos este artigo.
REFERÊNCIAS BIBLIOGRÁFICAS
[1] RFC 768,User Datagram Protocol (UDP), www.rfc-editor.org
[2} RFC 791, Internet Protocol (IP), www.rfc-editor.org
[3] RFC 793, Transmission Control Protocol (TCP), www.rfc-editor.org
[4] RFC 826, Address Resolution Protocol (ARP), www.rfc-editor.org
[5] RFC 862, Echo Protocol (ECHO), www.rfc-editor.org
[6] Modbus-IDA, Modbus Aplication Protocol Specification, V1.1b, www.modbus.org
[7] Microsoft Corporation, Microsoft Extensible Firmware Initiative FAT32 File System Specification, Version 1.03, December 6, 2000.
REFERÊNCIAS DE APLICAÇÕES PRÁTICAS
Aplicação em cozedores de açúcar onde há uma rede Modbus/RTU com uma IHM, um aquisitor de dados para a coleta e uma sonda de concentração. Usina Boca da Mata, Boca da Mata-AL.
Aplicação em câmeras frias de frigoríficos onde há uma rede Modbus/RTU com uma remota Modbus para adquirir os pontos de temperatura, um aquisitor de dados para coleta. Frigorífico Minerva, Barretos-SP.
DADOS DOS AUTORES
Rodrigo Augusto Lippi
DLG Equipamentos LTDA
Rua José Batista Soares, 53 – CEP 14176 – Sertãozinho – SP
Telefone: (16) 3513-7400
Email: rodrigoalippi@dlg.com.br
Carlos Augusto Ribeiro
DLG Equipamentos LTDA
Rua José Batista Soares, 53 – CEP 14176 – Sertãozinho – SP
Telefone: (16) 3513-7400
Email: carlos@dlg.com.br
Faça download deste artigo clicando aqui