4 RESULTADOS 1 Introdução
4.2 Modelagem do processo
O diagrama de blocos para o controle do sistema leva em consideração que o sensor, o driver e o motor são apenas ganhos estáticos, sendo desprezados por apresentar funções de transferência muito mais rápidas que a do controle utilizado.
Figura 9. Diagrama de blocos para controle de nível
Fonte: Elaborado pelo autor
O micro controlador, que é representado pelo compensador e pelo ganho KC, receberá a referência em sua entrada que, comparada com o sinal proveniente do sensor de nível, enviará um sinal de erro para ser compensado. A saída é baseada no controle de PWM (Pulse
Width Modulation), de forma a se controlar tensão no motor e, consequentemente, a vazão de
saída necessária para o controle do nível de fluido do tanque. A função do driver será amplificar o sinal proveniente da saída do micro controlador de modo que o mesmo seja capaz de acionar o motor.
A relação da vazão de entrada pela altura de água no reservatório pode ser utilizada para o cálculo matemático da função de transferência do processo, é demonstrada na Eq. (1).
(1)
Fi: Vazão de entrada (bomba) [m³/s]
F0: Vazão de saída [m³/s]
A: Área do fundo do tanque [m²] h: altura de líquido [m]
Utilizando a transformada de Laplace, obtemos a Eq. (2), para condição inicial nula.
( ) ( ) ( ) (2)
Como simplificação, a vazão de saída F0 será considerada como uma perturbação do
sistema, não sendo, portanto, considerada no cálculo da função da planta. Assim, a função de transferência é demonstrada pela Eq. (3).
( ) ( ) ( ) ( ) (3)
A vazão máxima de saída também pode ser estimada, considerando-se a maior coluna de fluido igual à maior altura de controle do tanque e a vazão máxima da válvula e é obtida através da Eq. (4).
√ (4)
F0: Vazão de saída [m³/s]
A0: Área de seção transversal da tubulação [m²]
h: altura de líquido [m]
g: aceleração da gravidade [m/s²] C: coeficiente de descarga
O ganho estático do driver é determinado pela Eq. (5).
(5)
Os ganhos do motor e da bomba são considerados como um só e determinados através da Eq. (6).
(6)
O ganho Kd será o produto dos ganhos Kdriver e Kmotor+bomba.
Para determinar o ganho estático do sensor, é considerado que para a altura máxima de controle sua tensão de saída será máxima. Portanto, para o cálculo do ganho, é utilizada a Eq. (7).
(7)
Foram utilizados os seguintes parâmetros na simulação: Tensão máxima do PWM = 5 V
Tensão máxima no motor = 24 V Área do tanque = 3.61 x 10-2 m²
Altura máxima do tanque = 0.3 m
Área de seção transversal da tubulação = 1.04 x 10-3 m²
Vazão máxima de entrada = 2.5 x 10-4 m³/s
Vazão máxima de saída = 1.51 x 10-4 m³/s
Aceleração da gravidade = 9.8 m/s² Coeficiente de descarga = 0.6
Com esses parâmetros e as equações (3) (4) (5) (6) (7), tem-se que:
( ) (8) (9) (10) (11) (12) (13)
Figura 10. Diagrama de blocos do sistema simulado
Nesse sistema, foram analisadas 9 variáveis, que são detalhadas na Tab. 16, que ilustra os tipos e a descrição de cada uma delas.
Tabela 16 - Variáveis do sistema simulado
Variável Tipo da Variável Descrição da Variável
entrada_digital1 Entrada Digital Acionamento da Válvula de Entrada entrada_digital2 Entrada Digital Acionamento da Válvula
de Saída entrada_analog1 Entrada Analógica SetPoint Nível (cm) entrada_analog2 Entrada Analógica Ganho proporcional do
controlador entrada_analog3 Entrada Analógica Ganho integral do
controlador entrada_analog4 Entrada Analógica Abertura da válvula de
saída (%) saida_analog1 Saída Analógica Nível do Tanque (cm) saida_analog2 Saída Analógica Vazão de entrada (m³/h) saida_analog3 Saída Analógica Vazão de saída (m³/h)
Fonte: Elaborado pelo autor 4.3 Resultados
4.3.1 Servidor
O software é executado em uma máquina virtual e aguarda o estabelecimento da conexão do cliente Modbus e do supervisório. A mensagem “Nova conexão recebida” é apresentada quando o servidor recebe uma conexão, como demonstrado na Fig. 11. Ele irá responder aos pedidos do cliente e do supervisório, processando a mensagem recebida e enviando a resposta, de acordo com as regras definidas pelo protocolo Modbus.
Figura 11 - Servidor Modbus em execução
Fonte: Elaborado pelo autor
Quando o pedido não for válido, o servidor irá retornar Exception Codes, como mostra a Fig. 12.
Figura 12 - Exception Codes
Fonte: Elaborado pelo autor 4.3.2 Cliente Modbus
O Cliente Modbus inicia a simulação da planta em tempo real e realiza a troca de dados entre o servidor e o processo simulado. A quantidade dos parâmetros do sistema é
atualizada automaticamente na interface do cliente durante a inicialização e é ilustrada, em conjunto com as variáveis de entrada, na Fig. 13.
Figura 13 - Cliente Modbus
Fonte: Elaborado pelo autor 4.3.3 Supervisório
A tela de supervisão desenvolvida permite ao usuário a visualização dos dados da planta de nível, bem como a possibilidade de alteração dos valores de setpoints do processo e os parâmetros do controlador. Nela também é possível acionar ou desligar os dispositivos do sistema, como motores e bombas. A tela de supervisão em execução pode ser vista na Fig. 14.
Figura 14. Tela do sistema supervisório – Tanque enchendo
Fonte: Elaborado pelo autor
A válvula de entrada aciona a bomba que enche o tanque, utilizando a água do reservatório. Os valores das ações proporcional e integral do controlador também podem ser alterados clicando no valor atual das mesmas e digitando o valor desejado.
Através do Set Point, define-se a altura de água que o tanque deve atingir e nele é possível ver a altura atual de líquido. Quando o tanque está cheio, pode-se notar que a vazão
de saída é igual à vazão de entrada, mantendo assim o volume de água no tanque constante, e consequentemente, a altura. Esta situação é ilustrada pela Fig. 15.
Figura 15. Tela do sistema supervisório – Tanque na altura desejada
Fonte: Elaborado pelo autor
Ao clicar na válvula de saída, ela é desativada e fica com a coloração vermelha, como ilustra a Fig. 16. A vazão de saída também é alterada variando a abertura da válvula. Um pequeno erro de regime permanente aparece ao se utilizar uma grande abertura na válvula de saída, devido às aproximações feitas durante a modelagem.
Figura 16. Tela do sistema supervisório – Válvula de saída desligada
Fonte: Elaborado pelo autor 4.3.4 Análise dos pacotes na rede
Para fazer a análise dos pacotes na rede, foi utilizado o software Wireshark®. Ele tenta
possível. Algumas das funcionalidades do Wireshark são (WIRESHARK FOUNDATION, 2004):
Solucionar problemas na rede;
Examinar problemas de segurança da rede; Testar implementações utilizando protocolos; Aprender sobre os protocolos.
A fim de comprovar o desenvolvimento das outras funcionalidades do protocolo Modbus TCP, foi utilizado o software Wireshark® para analisar os pacotes transmitidos na rede, através do qual é possível visualizar detalhadamente cada pacote e filtrar qual protocolo será monitorado. A Fig. 17 ilustra os pacotes Modbus/TCP que estão trafegando na rede durante a execução do sistema, onde é possível observar as funções Write Multiple Registers,
Read Coils, Read Holding Registers, Write Single Register e Write Single Coil serem
Figura 17. Pacotes da rede Modbus
A Fig. 18 e Fig. 19 demonstram um pedido e uma resposta do servidor à função Write
Multiple Registers, mostrando todos os campos e valores da mensagem Modbus.
Figura 18 - Wireshark - Write Multiple Registers – Request
Figura 19- Wireshark - Write Multiple Registers – Response
Com o objetivo de certificar a resposta do servidor nos casos de pedidos incorretos (Exception Codes), o código do cliente Matlab foi modificado, criando mensagens com parâmetros fora dos limites possíveis ou com valores incorretos.
Primeiramente, foi testado o envio de uma mensagem da função Write Multiple
Registers com o campo de comprimento incorreto. Este campo deve possuir valor igual a 7
mais o dobro de número de registros. A mensagem enviada possui 10 registros a serem escritos no servidor e o campo de comprimento com o valor de 28. A Fig. 20 ilustra a mensagem enviada.
Figura 20- Wireshark - Write Multiple Registers – Comprimento incorreto
Em seguida, uma mensagem em que o endereço inicial em soma com a quantidade de registros a serem escritos excede o limite do servidor é ilustrada na Fig. 21.
Figura 21 - Wireshark - Write Multiple Registers – Endereço incorreto
E por fim, é solicitada uma função de código 19, que não existe no servidor, como ilustra a Fig. 22.
Figura 22 - Wireshark – Função incorreta
As respostas recebidas são, respectivamente, um Exception Code 03, 02 e 01, que são as respostas corretas nos casos citados, como apresentado anteriormente no Capítulo 2. A Fig 23, 24 e 25 ilustram as respostas do servidor ao cliente para as mensagens anteriores.
Figura 23- Wireshark - Write Multiple Registers – Comprimento incorreto – Response
Figura 24- Wireshark - Write Multiple Registers – Endereço incorreto – Response
Figura 25 - Wireshark – Função incorreta – Response
5 CONCLUSÃO
Na introdução do trabalho foram apresentadas as aplicações e vantagens da simulação industrial, que se prova uma boa opção para indústrias que desejam minimizar os custos de operação e obter equipamentos adequados ao seu processo, além de auxiliar estudantes que desejam aprofundar seus conhecimentos sobre processos industriais.
Também foram citados alguns dos dispositivos presentes em ambientes industriais e a necessidade da comunicação entre eles, que pode ser feita através de diversos protocolos de redes industriais. Além disso, foram citadas pesquisas na área de desenvolvimento e pesquisas de protocolos de redes industriais.
Nesse contexto, tem-se como proposta de trabalho o desenvolvimento de uma ferramenta computacional aplicada na simulação de processos industriais, utilizando o software Matlab® e a ferramenta Simulink, que possibilita uma simulação em tempo real de uma planta industrial, que fará a conexão com um servidor através do protocolo Modbus/TCP. Este servidor permite o acesso de um sistema supervisório, que pode fazer a manipulação e visualização dos dados do processo.
No Capítulo 2 é apresentada uma definição de simulação industrial, indicando suas vantagens, desvantagens, situações onde ela deve ou não ser utilizada e áreas aonde vem sendo utilizada no cenário brasileiro. Em seguida, o protocolo Modbus é também definido, citando suas principais versões, a estrutura das mensagens, como são feitas as comunicações entre os dispositivos e as funções disponibilizadas pelo protocolo que foram utilizadas no trabalho.
No Capítulo 3 foram apresentadas as 3 partes em que foi dividida a ferramenta computacional desenvolvida: servidor Modbus, cliente Modbus e supervisório. O servidor Modbus desenvolvido disponibiliza seis funções do protocolo Modbus, que permitem a escrita e leitura de dados discretos e analógicos do sistema. O software do servidor mostra mensagens quando recebe conexões e quando recebe mensagens com erros, respondendo com os Exception Codes descritos no Capitulo 2.
O software Matlab®, em conjunto com a ferramenta Simulink, fazem o papel do cliente Modbus. Eles possibilitam a simulação do processo de forma precisa e rápida, onde é possível simular, realizar trocas de informações e atualizar os dados do processo em tempo real. A interface desenvolvida permite inserir o tempo entre as leituras realizadas no servidor, o endereço inicial a ser utilizado, a planta que será simulada e o IP do servidor.
O supervisório é feito através do software Indusoft®, que possibilita o monitoramento dos dados através de uma tela de supervisão criada, possuindo objetos que interagem com o usuário, de forma a facilitar o entendimento e visualização das variáveis do processo.
No Capítulo 4 é realizada a modelagem, de forma aproximada, de uma planta de controle de nível de um tanque. Esse sistema possui 9 variáveis, das quais 6 são variáveis de entrada e 3 variáveis de saída. São apresentadas as telas dos softwares utilizados em execução, mostrando o servidor recebendo conexões e mensagens incorretas, o cliente atualizando os parâmetros do sistema e o sistema de supervisão monitorando as variáveis do processo. Para validar os resultados obtidos, é utilizando um software de captura de pacotes da rede chamado Wireshark, o qual possibilita ver os dados das mensagens enviadas pelo cliente e as suas respectivas respostas geradas pelo servidor.
Portanto, a ferramenta desenvolvida permite a simulação de todo o processo industrial, possibilitando sua aplicação nas mais diversas áreas de aplicação, como o estudo comportamental de plantas industriais, desenvolvimento de novos dispositivos e sistemas e a realização de testes em situações extremas ou de risco. Isso é feito através de softwares com interfaces simples, de forma a facilitar para o usuário a sua utilização, onde as variáveis do processo são facilmente visualizadas e manipuladas pelo supervisório.
Como desvantagem da ferramenta computacional desenvolvida é que o software Matlab® possui requisitos elevados do computador para um bom funcionamento e a necessidade da nomeação correta dos blocos da planta a ser simulada.
Como propostas futuras, pretende-se estender esse trabalho na aplicação de outros protocolos de redes industriais e o mapeamento de blocos da planta sem a necessidade de nomes específicos, possibilitando uma plataforma computacional base para o desenvolvimento de novas tecnologias para a indústria e o controle e automação de processos industriais.
REFERÊNCIAS
BANKS, J.; CARSON, J.; NELSON, B. L.; NICOL, D. M. Discrete-Event System
Simulation, 4 ed, Upper Saddle River, New Jersey: Prentice Hall, 2005, 624 p.
BRANDÃO, D. Ferramenta de Simulação para projeto, estudo e treinamento de redes
fieldbus. 2005. Tese (Doutorado em Engenharia Mecânica) – Escola de Engenharia de São Carlos, Universidade de São Paulo, São Paulo, 2005
CASSIOLATO, C. Redes Industriais, SMAR Artigos Técnicos. 2012. Disponível em: <http://www.smar.com/brasil/artigostecnicos/artigo.asp?id=48>. Acesso em: 14 jul. 2014. GUARESE, G. B. M.; SIEBEN, F. G.; WEBBER, T.; DILLENBURG, M. R.; MARCON, C. Exploiting Modbus Protocol in Wired and Wireless Multilevel Communication Architecture. In: BRAZILIAN SYMPOSIUM ON COMPUTING SYSTEM ENGINEERING, 2., 2012, Natal. Anais… 2012, p. 13-18.
HUITSING, P.; CHANDIA, R.; PAPA, M.; SHENOI, S. Attack taxonomies for the Modbus protocols. International Journal of Critical Infrastructure Protection, v. 1, p. 37-44, 2008. LOBÃO, E. C.; PORTO A. J. V.. Proposta Para Sistematização de Estudo de Simulação, In: ENCONTRO NACIONAL DE ENGENHARIA DE PRODUÇÃO, 17., 1997, Gramado.
Anais Eletrônicos... Disponível em:
<http://www.abepro.org.br/biblioteca/ENEGEP1997_T1101.PDF>. Acesso em: 14 jul. 2014. MODBUS ORGANIZATION. MBServer – Collection of Programs and Libraries Listed on Technical Resources Page. 2013. Disponível em: <http://modbus.org/tech.php>. Acesso em: 20 fev. 2014.
MODBUS ORGANIZATION. MODBUS Apllication Protocol Specification V1.1b3. 2012. Disponível em: <http://modbus.org/docs/Modbus_Application_Protocol_V1_1b3.pdf>. Acesso em: 20 fev. 2014.
MODBUS ORGANIZATION. MODBUS Messaging on TCP/IP Implementation Guide V1.0b. 2006. Disponível em:
<http://modbus.org/docs/Modbus_Messaging_Implementation_Guide_V1_0b.pdf>. Acesso em: 20 fev. 2014.
MODBUS ORGANIZATION. Object Messaging Specification For The MODBUS/TCP Protocol, Version 1.1. 2004. Disponível em:
<http://modbus.org/docs/Object_Messaging_Protocol_ExtensionsVers1.1.doc>. Acesso em: 20 fev. 2014.
PEGDEN, C. D.; SHANNON, R. E.; SADOWSKI, R. P. Introduction to Simulation Using
SIMAN, New York: McGraw-Hill Higher Education, 1991, 610 p.
REYNDERS, D.; MACKAY, S.; WRIGHT, E. Practical industrial data communications: best practice techniques (Practical professional). Butterworth-Heinemann, 2005, 432 p.
SCHNEIDER, G.; LIMA, V. F.; SCHERER, L. G.; CAMARGO, R. F.; FRANCHI, C. M. SCADA System Applied To Micro Hydropower Plant. In: Annual Conference of the IEEE Industrial Electronics Society, 39., 2013, Vienna. Anais Eletrônicos... Disponível em: <http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=6700330>. Acesso em: 14 jul. 2014.
TORRES, R. V. Simulador de redes Profibus. 2013. Dissertação (Mestrado em Sistemas Dinâmicos) - Escola de Engenharia de São Carlos, Universidade de São Paulo, São Carlos, 2013. Disponível em: <http://www.teses.usp.br/teses/disponiveis/18/18153/tde-12112013- 153414/>. Acesso em: jul. 2014.
VIEIRA, G. E.. Uma revisão sobre a aplicação de simulação computacional em processos industriais. In: SIMPÓSIO DE ENGENHARIA DE PRODUÇÃO, 13., 2006, Bauru. Anais... Bauru: Unesp, 2006.
WIRESHARK FOUNDATION. Wireshark User’s Guide. 2004. Disponível em: <http://www.wireshark.org/docs/wsug_html_chunked/>. Acesso em: fev. 2014.