Transcript
32
11
FACULDADE PITÁGORAS DE BETIM
6º Período de Engenharia Elétrica, 1º semestre 2014
Jonathan Henrique, Moisés Clemente, Tiago Alves Coimbra, Warley Oliveira
TRABALHO DE TEORIA DE CONTROLE MODERNO I
Montagem e análise da resposta de sistema térmico
Betim
2014
Jonathan Henrique, Moisés Clemente, Tiago Alves Coimbra, Warley Oliveira.
TRABALHO DE TEORIA DE CONTROLE MODERNO I
Montagem e análise da resposta de sistema térmico
Trabalho acadêmico apresentado à disciplina Teoria de Controle Moderno I do curso de Engenharia Elétrica na Faculdade Pitágoras de Betim para soma de pontos com peso de avaliação parcial e conteúdo para auxiliar o entendimento sobre sistemas dinâmicos.
Orientador: Marcelo Sousa Neves
Betim
2014
RESUMO
Este trabalho teve como objetivo a coleta de dados de um sistema térmico em malha aberta e a utilização de recursos computacionais avançados para encontrar a função de transferência que mais se aproxima, matematicamente, do sistema em questão, sendo os meios para esse fim de livre escolha de cada grupo, preservando alguns critérios na montagem do sistema físico, tais como o modelo do aquecedor, utilização de água como o meio a ser aquecido e a fonte de alimentação que deveria estar dentro de valores pré-determinados na descrição do trabalho. Foram realizados alguns ensaios que mostraram que o meio ambiente influencia diretamente na resposta do sistema, comprovando que há uma variável ou até mesmo uma função que descreve essa perturbação na resposta coletada e que torna a busca da função de transferência ainda mais complexa e difícil de ser elaborada. Chegou-se então à conclusão de utilizar simplesmente os valores da temperatura em um intervalo de tempo correspondente ao início do aquecimento da água até sua estabilidade, mantidos os dados dos primeiros testes a título de comparação com o resultado escolhido que é aquele em que se utilizou uma caixa térmica para amenizar a influencia do ar ambiente.
Palavras-chave: Sistema térmico. Computacionais. Função de transferência . Dados.
ABSTRACT
This study aimed to collect data from a thermal open-loop system and the use of advanced computational resources to find the transfer function that is closest, mathematically, the system in question, and the means to that end of free choice of each group while preserving some criteria assembling the physical system, such as the model of the heater, using water as the medium to be heated and the power supply should be within predetermined values in the job description . Some tests have shown that the environment directly influences the response of the system , proving that there is a variable or even a function that describes this disorder in response collected and that makes the search function even more complex and difficult to transfer were performed elaborate . We came to the conclusion simply using the temperature values at a time corresponding to the beginning of heating water up to their stability , kept the data of the first tests for comparison with the result that it is chosen the one which used an insulated box to reduce the influence of the ambient air .
Keywords: Thermal system. Computing. Transfer function. Data.
LISTA DE FIGURAS
Figura 1: Fonte 8
Figura 2: Ebulidor 9
Figura 3: Recipiente 9
Figura 4: Placa Arduino Leonardo 10
Figura 5: Sensor LM35 11
Figura 6: Arduino Leonardo 11
Figura 7: Software Arduino.............................................................................................................. 11
Figura 8: Monitor de Serial .............................................................................................................. 12
Figura 9: TEMPer1 e DC instalação 13
Figura 10: Log 14
Figura 11: Janela das curvas instantânea e média 14
Figura 12: Janela Opções 15
Figura 13: Teste abortado devido a condições desfavoráveis 17
Figura 14: Janela Identificação de Sistemas 23
Figura 15: Janela Identificação de Sistemas 24
Figura 16: Diretório do arquivo a ser utilizado 24
Figura 17: Janela do Import 25
Figura 18: Workspace 25
Figura 19: Ferramenta de Identificação de Sistemas....................................................................... 24
Figura 20: Import Data....................................................................................................................... 26
Figura 21: Ferramenta de Identificação de Sistemas 26
Figure 22: Ferramenta de Identificação de Sistemas 27
Figure 23: Caixa de diálogo de informação de erro em alguma variável 27
Figure 24: Identificação da falha na variável 28
Figure 25: Cálculo da função de transferência 28
Figure 26: Modelo simulado salvo como P1 29
SUMÁRIO
1 INTRODUÇÃO 7
1.1 Objetivo 7
2 OBTENÇÃO DA PARTE FÍSICA DO SISTEMA 8
2.1 A fonte 8
2.2 O ebulidor 8
2.2.1 Características 8
2.3 O recipiente 9
3 ESCOLHA DO COLETOR DE DADOS 10
3.1 LM35 Via placa Arduino 10
3.1.1 O LM35 10
3.1.1.1Características...............................................................................................................10
3.1.2 A placa Arduino Leonardo 11
3.1.2.1 Características..............................................................................................................11
3.2 O TEMPer1 12
3.2.1 Características 13
3.2.2 Instruções de instalação 13
3.2.2.1 Instrução de instalação do software............................................................................13
3.2.2.2 Instrução de instalação do hardware..........................................................................13
3.2.3 Instruções de operação 13
3.2.3.1 Log................................................................................................................................14
3.2.3.2 Display de curvas………………………………….…..................…............………………14
3.2.3.3 As configurações para salvar arquivos......................................................................15
3.2.4 Especificações físicas 15
4 COLETA DE DADOS 15
5 ENCONTRAR A FUNÇÃO DE TRANSFERENCIA POR TENTATIVA 19
6 UTILIZANDO MATLAB - IDENT Erro! Indicador não definido.
7 CONCLUSÃO Erro! Indicador não definido.32
1 INTRODUÇÃO
Este trabalho teve o propósito de obter e analisar o modelo matemático de um ebulidor elétrico em um volume de água a critério de cada grupo, tendo que seguir as etapas básicas para seu desenrolar. A primeira etapa foi a Modelagem do Ebulidor Elétrico que consiste na obtenção da massa de dados experimentalmente, elaboração de uma função de transferência através desses dados e a validação dessa função por meio de recurso de uma ferramenta do software Matlab, chamada IDENT. A segunda etapa foi a análise em Malha Aberta da planta, observando os dados na teoria e comparando-os com a resposta física.
Na elaboração deste trabalho foi de suma importância priorizar a parte física do sistema de aquecimento em malha aberta, respeitando os critérios estabelecidos na descrição. Para isso, o grupo em reunião, determinou que tipo de fonte seria utilizada para fornecer a tensão descrita ( 40 a 50 volts), que tipo de sensor de temperatura para coleta de dados e como o custo dos componentes seria dividido entre os integrantes.
Durante o primeiro ensaio foi observado que o meio ambiente influenciava diretamente nos valores de temperatura. Com isso, o grupo se viu forçado a buscar alternativa que amenizassem essas interferências para obter uma função de transferência que modelasse somente o ebulidor.
1.1 Objetivo
O objetivo principal deste trabalho foi tornar mais dinâmico o aprendizado na disciplina Teoria de Controle Moderno, envolvendo um ebulidor caseiro, que antes passava despercebido, mas que pôde ser interpretado como parte principal em um sistema termodinâmico, o qual recebeu um estímulo de entrada abaixo do nominal afim de ser percebida estabilidade em uma temperatura que não se pode afirmar previamente em malha aberta devido ao número de interferências físicas existentes para a simplicidade desse sistema.
2 OBTENÇÃO DA PARTE FÍSICA DO SISTEMA
2.1 A fonte
Figura 1: FonteFigura 1: Fonte
Figura 1: Fonte
Figura 1: Fonte
Para dar início a coleta de dados, foi necessário observar o que era pedido na descrição do projeto pois, mesmo sendo a fonte de livre escolha, o nível de tensão foi definido pelo professor (40 a 50vac).
Foi utilizado um transformador de 500VA (figura 01) de relação 1:2 que ao ser ligado em uma tomada de 127vac era medido 66,4v a vazio e 47v em plena carga, que no caso é o ebulidor puramente resistivo. Atribuiu-se essa diferença na medição à tensão eficaz que pode ser vista no calculo abaixo.
66,4*22= 46,95v (01)
Fonte: Elaborado pelo autorFonte: Elaborado pelo autorEssa fórmula foi bem convincente até haver uma observação:
Fonte: Elaborado pelo autor
Fonte: Elaborado pelo autor
O multímetro sempre mede rms. Sendo assim, a resposta para um valor diferente de tensão com carga deveria ser provado com mais conhecimento técnico. Verificou-se que faltava mais uma informação a ser colhida, a parte real da impedância do transformador que foi medida a fim de se calcular a queda de tensão na mesma.
Mediu-se uma resistência de 7Ω que, em uma corrente de 3A gera uma queda de 20 v Esclarecendo tecnicamente a queda de tensão medida no transformador de relação 1:2.
2.2 O ebulidor
O próximo item foi o ebulidor que também não gerou custo pois um dos integrantes do grupo já possuía um dentro das condições recomendadas, que são:
2.2.1 Características
Potencia nominal – 1000W
Tensão nominal – 127v
Corrente nominal – 7.8ª
Figura 2: Ebulidor
Fonte: Elaborado pelo autor
2.3 O recipiente
A quantidade de água (1 litro) foi determinada conforme o recipiente que foi escolhido devido a suas medidas permitirem melhor aproveitamento do calor dissipado pelo ebulidor, por ser de alumínio e por comportar o volume necessário para o bom desempenho do projeto.
Figura 3: Recipiente
Fonte: Elaborado pelo autor
3 ESCOLHA DO COLETOR DE DADOS
O mercado eletrônico fornece inúmeras possibilidades para coleta de dados, inclusive de temperatura. face a essas possibilidades, o grupo optou por utilizar duas tecnologias acessíveis e fácil utilização, as quais estraremos em detalhes abaixo.
A escolha de dois sensores pode ser atribuído também a necessidade de confirmar a exatidão dos valores coletados e para um outro teste que será mostrado mais adiante.
3.1 LM35 Via placa Arduino
O sensor de temperatura LM35 é muito simples de ser utilizado por ser um circuito integrado de precisão com saída linearmente proporcional à temperatura em graus Celsius e associado com o Arduino Leonardo que é uma placa didática com um software amigável de interface com o PC e programável em C++, favorece ainda mais à coleta de dados. Na imagem abaixo percebe-se como é fácil conectar os componentes pois a placa tem todos os pinos bem identificados, como exemplo, vê-se com clareza o positivo, o GND e o retorno do sensor que no caso entra no primeiro pino analógico A0.
Figura 4: Placa Arduino Leonardo
Fonte: Elaborado pelo autor
3.1.1 O LM35
Aqui serão descritas as características do sensor LM35 para melhor entendimento do seu princípio de funcionamento e como inserir em um circuito.
3.1.1.1 Características
Calibrado diretamente em graus célsius
Figura 5: Sensor LM35Figura 5: Sensor LM35 Fator de escala linear +10mv/°c
Figura 5: Sensor LM35
Figura 5: Sensor LM35
Aproximação garantida de 0,5°c em +25°c
Range de -55°c a 150°c
Adaptação a aplicações remotas
Baixo custo
Opera de 4 a 30 v
Corrente menor que 60 μA
Fonte – SENSORES..., 2014Fonte – SENSORES..., 2014Baixo auto aquecimento em ar parado, 0.08°c
Fonte – SENSORES..., 2014
Fonte – SENSORES..., 2014
Saída com baixa impedância
3.1.2 A placa Arduino Leonardo
O atual momento da evolução tecnológica e do conhecimento humano é tão impressionante que as próximas gerações não se admirarão nem mesmo duvidarão do que se pode criar com dispositivos cada vez menores. Dentro deste contexto chega o Arduino que é voltado para o público jovem, interessado em criar seu próprio brinquedo devido à facilidade de programação desta pequena placa, que pode elaborar projetos de grande complexidade dentro do que o microcontrolador encontrado em seu circuito possibilita.
Existem vários modelos de placas Arduino, porém, as características abaixo serão relacionadas ao Arduino Leonardo.
3.1.2.1 Características
Figura 6: Arduino LeonardoFigura 6: Arduino LeonardoMicrocontrolador ATmega32u4;
Figura 6: Arduino Leonardo
Figura 6: Arduino Leonardo
Tensão de operação 5v;
Tensão de entrada 7 a 12v;
Limites aceitáveis na tensão entrada 6 a 20v;
20 pinos digitais I/O;
7 canais PWM;
12 entradas analógicas;
40mA cc por cada pino I/O;
Fonte: VISÃO FRONTAL...,2013Fonte: VISÃO FRONTAL...,201350mA por cada pino de 3,3v;
Fonte: VISÃO FRONTAL...,2013
Fonte: VISÃO FRONTAL...,2013
16MHz de velocidade de clock;
SRAM 2.5KB(ATmega32u4);
Memória Flash 32KB (ATmega32u4) onde; 4KB é usado por bootloader;
EEPROM 1KB(ATmega32u4).
O software para interface da placa Arduino com um PC leva seu próprio nome, software Arduino, e é facilmente encontrado no site oficial da marca que o disponibiliza gratuitamente, incluindo um vasto menu de exemplos, primeiros passos e modelos para facilitar a familiarização com o dispositivo que foi adquirido.
A interface gráfica do Arduino é muito amigável. Com pouco tempo de dedicação e leitura do conteúdo disponibilizado no site oficial, é possível já dar os primeiros passos em programação via linguagem Cpp, lembrando que para haver comunicação entre placa e PC o hardware precisa ser bem instalado, pois a entrada é via USB mas a placa emula uma porta serial que deve ser informada também no software bem como o modelo da placa utilizada.
Figura 7: Software Arduino Figura 8: Monitor de Serial
Fonte: Elaborado pelo autor Fonte: Elaborado pelo autor
Neste console visto acima é feito o código e enviado à placa após compilado. Aos códigos que iniciam comunicação via porta serial, ao clicar no botão superior esquerdo abrir-se-á o monitor de serial onde os dados serão colhidos conforme programado.
O script utilizado foi um modelo que o grupo encontrou pronto mas modificou alguns itens que se faziam desnecessários para o bom desempenho da coleta de dados. Ao final, observou-se que o script poderia ser muito mais enxuto principalmente na hora de colher os dados, porque o excesso de símbolos dá mais trabalho na hora de levá-los até o EXCEL.
3.2 O TEMPer1
O termômetro TEMPer1F é um dispositivo de medição que utiliza a porta USB para se conectar a um computador. Ele tem um sensor com funções impermeáveis. É possível medir a temperatura do meio ambiente de forma precisa. Deve-se conectar ao computador para começar a trabalhar. O TEMPer1F pode ser usado para testes de temperatura em ambiente fechado, aberto, submerso em fluidos e ambiente especial.
3.2.1 Características
Figura 9: TEMPer1 e DC instalaçãoFigura 9: TEMPer1 e DC instalaçãoFigura 3.6 – TEMPer1Figura 3.6 – TEMPer1
Figura 9: TEMPer1 e DC instalação
Figura 9: TEMPer1 e DC instalação
Figura 3.6 – TEMPer1
Figura 3.6 – TEMPer1
Faixa medição: TEMPer1: -40 a +120 °C;
Taxa de resolução: 0.06 °C;
Precisão:+2 °C;
Energia Elétrica:< 5mA;
Suport Windows NT, XP, VISTA, W7,W8;
Memória requerida: 20M;
Salvamento automático de dados em TXT ou CSV(Excel);
Fonte: Foto do autorFonte: Foto do autorFunção de envio de e-mails.
Fonte: Foto do autor
Fonte: Foto do autor
3.2.2 Instruções de instalação
A instalação do sensor é muito simples como pode ser visto nas próximas subseções que descrevem em poucas linhas cada etapa.
3.2.2.1 Instrução de instalação do software
Instale dotnetfx.exe. Dotnetfx.exe é framework 2.0 da Microsoft, e pode ser baixado a partir do site da Microsoft, descomprimir o arquivo TEMPerV24.4.rar para o computador e executar TEMPerV24.4 setup.exe.
3.2.2.2 Instrução de instalação do hardware
Plugar o sensor em uma porta USB para conectar e rodar o programa TEMPerV24.4 setup.exe.
3.2.3 Instruções de operação (Nota: suporta somente sistema operacional Windows .)
Abaixo estão apresentadas somente as instruções de operação mais relevantes e que foram utilizadas para as coletas de dados do grupo, mais informações sobre o sensor poderão ser encontradas no site do fabricante – PC Sensor.
3.2.3.1 Log
Grava os dados de temperatura em tempo real e salva no formato previamente configurado.
Figura 10: Log
Fonte: PRODUCT INFORMATION..., 2011
3.2.3.2 Display de curvas
Há duas curvas, uma é linha de temperatura média e a outra é da linha atual. O usuário pode verificar a situação de temperatura contrastante. As curvas podem em tempo real mostrar a situação de mudança de temperatura. A tendência das curvas Responde a situação da temperatura em tempo real como pode ser visto na Figura 3
AVISO: Por favor, verifique o arquivo de log ou de dados em Salvar conteúdo Quando você quiser verificar o histórico de dados.
Figura 11: Janela das curvas instantânea e média
Fonte: PRODUCT INFORMATION..., 2011
3.2.3.3 As configurações para salvar arquivos
Selecione "Tool->Option->Memory Setting" então selecionar local de armazenamento, tipo de aquivo e a contagem máxima para cada arquivo ser salvo. (see picture8)
Figura 12: Janela Opções
Fonte: PRODUCT INFORMATION..., 2011
3.2.4 Especificações físicas
A tabela abaixo descreve as características físicas e cada componente que compõe o kit do sensor no momento de sua aquisição.
Tabela 3.1 - Especificações
Nome
Especificação
Quantidade
TEMPer1
44g
1
Driver CD
3,5 pol.
1
Sensor
Comprimento do cabo: 1m
1
Certificado de Verificação do Prod.
***
1
Fonte: PRODUCT INFORMATION..., 2011
4 COLETA DE DADOS
Ao iniciar a coleta de dados, o software do TEMPer1 foi configurado para coletar dados a cada dois segundos (2s) na intensão de obter toda reação do sensor às variações de temperatura. Também foi utilizado o sensor LM35 via Arduino, mas optou-se por omitir os valores de temperatura por ele medidas, tendo em vista que foram um pouco discrepantes por não ter sido devidamente calibrado e por gerar uma massa de dados muito extensa pois foi configurado para colher uma amostra a cada um segundo (1s).
Houve uma corrente de ar que influenciou diretamente na curva característica, alterando sua evolução e, por conseguinte, o tempo de estabilização como pode ser visto abaixo (Gráfico 4.1). Acredita-se que essa perturbação torna a modelagem do sistema mais difícil por não descrever somente a mudança de temperatura em função do ebulidor e sim, uma somatória de influências.
Gráfico 4.1 – 1º teste
Fonte: Dados da experiência
Outro teste foi feito em outro local ainda mais aberto, utilizando um recipiente com características volumétricas dispostas a dificultar o aproveitamento do calor gerado pelo ebulidor e maior distância para o sensor que neste caso foi utilizado somente o TEMPer1, pois não havia software do Arduino instalado para coleta dos dados, abrindo possibilidade para maior influência externa. Como este teste foi interrompido, visto que levaria muito tempo para atingir a temperatura de estabilidade, o grupo chegou a conclusão que o ambiente deveria ser controlado termicamente para obtenção de uma curva que atingisse o ponto de estabilidade com menos interferências e mais rápido. Sendo assim, os dados levantados neste teste foram desconsiderados, pois seriam relevantes mas trariam muita dificuldade para realizar a modelagem do projeto.
Contudo, foram mantidas evidências do encontro do grupo na casa de um dos integrantes como pode ser visto na figura 13.
Figura 13: Teste abortado devido a condições desfavoráveis
Fonte: fotos do autor
O primeiro teste em ambiente controlado termicamente foi realizado dentro de uma caixa de papelão como pode ser visto n figura 14. A temperatura dentro da caixa também foi monitorada a fim de verificar a que valores chegaria devido ao calor da vaporização da água. Dentro da água utilizou-se o TEMPer1 e dentro da caixa o LM35 via Arduino. Este último começou a oscilar intensamente devido ao vapor de água enclausurado na caixa. O numero de amostras do LM35 foi o dobro do TEMPer1, porque estavam colhendo a cada 1 segundo e a cada 2 segundos respectivamente.
Figure 14: Teste abortado devido a condições desfavoráveis
Fonte: fotos do autor
Gráfico 4.2 – 2º teste com sensor LM35 no interior da caixa
Fonte: Dados da experiência
Gráfico 4.3 – 2º teste com sensor TEMPer1 na água
Fonte: Dados da experiência
Mas como explicar que a temperatura medida fora da água e por um sensor mais afastado da fonte geradora é maior que a temperatura medida dentro dela?
[...]Também são isolantes térmicos, o ar e o gelo. O ar é utilizado pelos pássaros, no inverno. Eles eriçam suas penas para reter uma camada de ar, isolando o corpo do ambiente. E o gelo é utilizado pelos esquimós na confecção de iglus.
Cada material possui um coeficiente de condutividade térmica, que expressa a quantidade de calor conduzida por segundo através de uma camada de 1m de espessura por 1m2 de área a uma diferença de 1°C na temperatura. Dos metais, a temperatura ambiente, a prata é o que possui maior coeficiente de condutividade e dos gases, a 0°C, é o ar [...]. (Grifo meu).
CONVECÇÃO:
É o processo de transferência de calor que ocorre através do deslocamento de camadas de um fluido, isto significa que ocorre com os líquidos e os gases.
É o que ocorre, por exemplo, com a água em uma panela no fogo. A fonte de calor - a chama - aquece a água da parte inferior, que se torna menos densa e sobe devido ao empuxo, enquanto a água da parte superior, que está mais densa que a de baixo, desce. Assim, uma corrente de massa de água se forma no interior da panela e ocorre o que chamamos de deslocamento de camadas ou de massa de fluido, no caso a água. E essa corrente de convecção irá ocorrer enquanto houver diferença de temperatura entre as moléculas do fluido. (GONÇALVES, 2003).
O teste considerado definitivo foi o último no qual se utilizou uma caixa de isopor com capacidade volumétrica 13 litros. Como se optou por tomar a referência de temperatura com o TEMPer1 que indica a hora exata em que a coleta ocorre e, dessa vez configurado para informar os dados a cada seis segundos (6s) e diretamente submerso na água, a evolução da curva até atingir a estabilidade foi se desenvolvendo quase perfeitamente porque, como pode ser visto abaixo (Gráfico 4.4) confirmando o já mencionado, há pouquíssimas perturbações devido à corrente de convecção que leva camadas com temperaturas levemente variadas até o sensor. Como a massa de dados foi grande em todos os casos, a curva não foi muito afetada pelas interferências.
Gráfico 4.4 – 4º teste na caixa de isopor
Fonte: Próprio autor
5 ENCONTRAR A FUNÇÃO DE TRANSFÊRENCIA POR TENTATIVA
No gráfico não aparece todos os dados porque foram colhidos de 03:36:06 até as 04: 55:18, 1(uma) amostra a cada 6s(seis segundos), convertendo em segundos somaram 4752s (quatro mil, setecentos e cinquenta e dois segundos), dando um total de 792 (setecentos e noventa e duas amostras). Mais a frente será visto que para o melhor desempenho do software escolhido, foi necessário aumentar o número de amostras em regime permanente.
Após a coleta da massa de dados e a curva bem definida, o próximo passo seria a modelagem do sistema que pareceu difícil no início porque o grupo desconhecia a ferramenta do MATLAB conhecida como IDENT, partindo então para a tentativa de desenvolver a função através de dados conhecidos. Contudo, obteve-se êxito através da dedução de fórmulas conhecidas, mesmo sem todos os dados físicos necessários para uma função mais próxima do modelo real, sendo necessário omitir algumas perturbações que influenciam no sistema. Logo abaixo é possível ver o caminho tomado para modelar o sistema térmico através das fórmulas.
Qebulidor = Qágua+Qvapor+ Qrecipiente (2)
Onde: Q é a quantidade de calor em cada elemento, e sabendo que:
Q=mcΔt (3)
Onde: m = massa do elemento em questão
c = calor específico do elemento
Δt = diferença de temperatura.
Deduziu-se então da seguinte maneira a transferência de calor do ebulidor para a água:
Qa+ Qv+ Qr= Qe (4)
macaΔt+mvLv+mrcrΔt = Qe (5)
Relembrando a lei do resfriamento de newton:
T= -kTc- Tm (7)
Onde Tc é a temperatura do corpo, Tm a temperatura ambiente e k é a constante que depende de características físicas. Na equação (8) é feita uma analogia com a fórmula de Newton considerando apenas a água e a transferência de calor pelo ebulidor. Os demais dados foram subentendidos na constante k.
T= -kTa- Te (8)
Esta equação (8) é uma EDO de primeira ordem separável. Integrando os dois lados fica:
dTTa- Te= -kdt lnTa- Te= -kt+c
Ta- Te=e-kt+c= e-kt*c
Ta(t)=Te+ e-kt*c (9)
Considerando Ta(0) = 0 para encontrar o valor da variável c:
Ta(0)=Te+ e-k*0*c
0=Te+ c
c=-Te
Tat=Te+ -Te*e-kt
Tat=Te(1 -e-kt) (10)
Agora é necessário encontrar o valor de k através de um valor (em °c) real, retirado das amostras e o tempo(em segundos) em que houve esse valor:
66,4=95(1 -e-k*2032)
66,4=95 -95*e-k*2032
66,4-95=-95 *e-k*2032
28,6/95=e-k*2032
0,126=e-k*2032
ln0,3=lne-k*2032
-k*2032=-1,2 k=5,9*10-4 (11)
Substituindo k na eq. (10) fica:
Tat=95*(1 -e-0,00059t) (12)
Esta função encontrada também foi representada na frequência:
Tas=95/(1 +1694,92s) (13)
Tas=0,056/(s +0,0006) (14)
De posse desse modelo matemático e para o sistema, foi criada uma variável para representar o tempo de 0s (zero segundo) até 12000s (doze mil segundos) para obter um tempo maior em regime permanente com relação ao regime transitório, utilizando o Excel para plotar a eq. 12 e o MATLAB para tirar prova plotando a eq. 14.
Gráfico 5.1 – Resposta do modelo matemático no Excel
Fonte: Dados do trabalho
Gráfico 5.2 – Resposta do modelo mat. No MATLAB
Fonte: Dados do trabalho
Esse processo para determinar a função de transferência deixa claro que a resposta simulada se aproxima do sistema real, mas com pouca precisão por serem omitidos alguns parâmetros importantes como foi visto no início dos cálculos.
Um recurso computacional neste caso seria muito útil, por isso, será apresentado no próximo capitulo uma ferramenta para ajudar a determinar um modelo para o sistema desejado, no qual se pode buscar, por tentativa e erro, o modelo matemático.
6 UTILIZANDO MATLAB - IDENT
O software MATLAB é uma poderosa ferramenta para engenharia na qual se obtém suporte a vastos ramos da ciência em si tratando de cálculos mais apurados e também, encontram-se neste software muitos recursos computacionais para tratar sinais em geral com rapidez e maior precisão.
Aqui será tratado somente da ferramenta/ função denominada IDENT que foi utilizada para validar a função de transferência do sistema em questão.
A função ident() é facilmente chamada na janela de comando do MATLAB digitando o nome, com atenção nas letras minúsculas, pois o programa faz distinção entre minúscula e maiúscula.
Figura 15: Janela Identificação de Sistemas
Fonte: Próprio autor
Antes de executar qualquer comando na janela mostrada na figura 15, foi preciso criar duas variáveis no workspace do MATLAB para serem utilizadas como entrada e saída do sistema. A versão utilizada aqui é a de 2013, então será mostrado como se adquire as informações necessárias para elaboração da identificação do sistema:
Na aba HOME do MATLAB (primeira aba no canto superior esquerdo), clicou-se na opção Import Data como pode ser visto na Figura 16;
Figura 16: Janela Identificação de Sistemas
Fonte: Próprio autor MATLAB R2013a
Navegou-se até o diretório onde está o arquivo do qual se deseja extrair os dados, selecionou-se o mesmo e clicou-se em abrir;
Figura 17: Diretório do arquivo a ser utilizado
Fonte: Próprio autor Explore
Neste caso o arquivo com extensão xls abriu em uma caixa chamada Import complementado pelo endereço onde está alocado e criou-se condição de importar cada coluna selecionada como uma variável distinta, dando condição também de renomear cada uma delas;
Figura 18: Janela do Import
Fonte: Próprio autor MATLAB R2013a
Ao clicar em Import Selection, as variáveis ficaram no Workspace prontas para utilização no programa. Observe que a primeira linha ficou amarelada em não azul como as demais. Isso foi mantido de propósito onde vai gerar uma falha que será tratada no devido instante.
Outro dado muito importante é que foram coletadas somente 792 amostras e o tempo em regime permanente era menor que o tempo em regime transitório. Então inteirou-se mais 1208 amostras com o valor máximo para a temperatura e o mesmo valor de tensão para a variável de entrada;
Figura 19: Workspace
Fonte: Próprio autor MATLAB R2013a
Neste ponto já se pode chamar a ferramenta Ident como descrito no início deste capítulo e novamente clicou-se em Import Data, só que agora na ferramenta onde são dadas algumas opções. Selecionou-se Time domain data onde abriu uma janela para informar quais variáveis serão importadas do Workspace, observando qual é considerada entrada e saída e escrever seus nomes nas caixas de diálogo input e output respectivamente. Há nessa mesma janela a possibilidade de nomear o sistema, escolher o tempo inicial e qual o intervalo de tempo entre cada amostra;
Figura 20: Ferramenta de Identificação de Sistemas Figura 21: Import Data
Fonte: Próprio autor utilizando software MATLAB Fonte: Próprio autor
Ao clicar em import, abriu-se a janela do Ident contendo um bloco habilitado com o nome inserido anteriormente e visto na figura 21. Na caixa de diálogo Estimate selecionou-se Process Models;
Figura 22: Ferramenta de Identificação de Sistemas
Fonte: Próprio autor utilizando software MATLAB
Abriu-se a caixa de diálogo que pode ser vista na figura 23, onde se coloca o número de polos reais, complexos ou conjugados complexos, zeros e o tempo morto. Em suma, os dados que melhoram a aproximação do modelo do sistema real;
Figure 23: Ferramenta de Identificação de Sistemas
Fonte: Próprio autor utilizando software MATLAB
Nota:
Ao clicar em Estimate apareceu uma mensagem de erro como a mostrada abaixo, significa que entre os dados tem letras. Então foi necessário voltar nas variáveis que utilizadas e que estavam com dados que não eram somente números para fazer a correção. Foi escolhido um valor idêntico ao que estava na célula mais próxima para não prejudicar a precisão da amostragem:
Figure 24: Caixa de diálogo de informação de erro em alguma variável
Fonte: Próprio autor utilizando software MATLAB
As variáveis necessárias para a execução correta do programa precisaram ser revisadas e conferido se não há letras no lugar de números. A figura 25 mostra que o conteúdo que gerou o erro está contido a palavra NaN. Neste caso, o nome da variável capturada no Excel causou o erro. Depois das falhas corrigidas clicou-se em Estimate;
Figure 25: Identificação da falha na variável
Fonte: Próprio autor utilizando software MATLAB
Retomou-se os passos partir do 5 até o passo 8, onde, se não houver mais erros, os valores de k e Tp1 serão calculados para a configuração do sistema de primeira ordem sem tempo morto, como pode ser visto na figura 26;
Figure 26: Cálculo da função de transferência
Fonte: Próprio autor utilizando software MATLAB
Na janela principal do ident foi importado modelo com as configurações atribuídas, então outros recursos foram disponibilizados. Marcou-se a opção Model output a fim de comparação com o modelo real na busca de uma melhor aproximação;
Figure 27: Modelo simulado salvo como P1
Fonte: Próprio autor utilizando software MATLAB
O modelo criado apresentou uma aproximação de 84,14% em relação ao sistema real;
Gráfico 6.1 – Comparação curva real / simulada
Fonte: Próprio autor utilizando software MATLAB
Ao fazer outras manipulações nos polos do modelo, na janela Process Models, mostrada na figura 26, encontrou-se aproximações pior e melhor, definindo a melhor aproximação como sendo o modelo matemático que melhor representa o sistema;
Gráfico 6.2 – Comparação real / modelos
Fonte: Próprio autor utilizando software MATLAB
Na figura 29 é fácil ver que a resposta simulada que mais se aproxima da real é a da função de segunda ordem com polos complexos (P2U), chegando a um valor de 94,62% de precisão e a simulação com dois polos reais apresentou resultado abaixo do resultado da curva do sistema de primeira ordem.
O MATLAB gerou um relatório que foi copiado e colado aqui , mas somente o que se refere ao melhor modelo encontrado por tentativa e erro até obter uma resposta mais aproximada.
P2U =
Process model with transfer function:
Kp
G(s) = --------------------------------
1+2*Zeta*Tw*s+(Tw*s)^2
Kp = 2.0118 +/- 0.00089306
Tw = 1031.3 +/- 6.6799
Zeta = 0.76765 +/- 0.0029177
Os dados gerados pelo ident foram lançados no editor do MATLAB contendo um código do sistema em malha aberta G(s) e em malha fechada F(s), como pode ser visto no anexo III e gerou os seguintes gráficos para comparação:
Gráfico 6.3 – Comparação malha aberta e fechada
Fonte: Próprio autor utilizando software MATLAB
Houve um erro em regime permanente em malha fechada, porém, ainda não foram aprendidas técnicas de ajuste desse tipo de falha.
7 CONCLUSÃO
O intuito do trabalho foi encontrar uma função de transferência que melhor representa o sistema térmico, com liberdade de escolha dos componentes físicos desse sistema, algo que pareceu simples de início, mas que envolveu princípios físicos, os quais já foram aprendidos no decorrer do curso e o foco principal que é teoria de controle.
Um levantamento mais apurado de dados para encontrar a função de transferência através de cálculo manual levaria a um investimento alto, tendo em vista que seria necessário um ambiente, além de controlado, monitorado para se determinar com mais precisão a influência sobre a resposta do sistema, bem como um aprofundamento em termodinâmica que seria um foco diferente do intuito do trabalho. Porém, seria muito válido, o que não foi possível devido ao tempo escasso do semestre.
No entanto, o objetivo maior foi atingido, que foi o desenvolvimento de cada componente do grupo na disciplina Teoria de Controle Moderno I, bem como em várias outras disciplinas já aprendidas anteriormente, a pesquisa sobre utilização de dispositivos eletrônicos e a utilização do MATLAB, que fez a diferença na tentativa de encontrar o modelo matemático que mais se aproxima do sistema real.
REFERÊNCIAS
OGATA, Katsuhiko. Engenharia de Controle Moderno, Editora: LTC, 3 Edição, 2000.
CARVALHO, J. L. Martins de. Sistemas de Controle Automático, Editora: LTC, 1 Edição
2000.
MIYAGI, Paulo Eigi. Controle Programável, Editora: EDGARD BLUCHER, 1 Edição, 1996
SIGHIERI Luciano e Akiyoshi, Nishinari. Controle Automático de Processos Industriais,
Editora: EDGARD BLUCHER, 2 Edição, 1997.
LOPEZ, Ricardo Aldabo. Sistemas de Redes para Controle e Automação, Editora: BOOK
Express, 1 Edição, 2000
Coelho, A. A. R.; Coelho, L. D. Identificação de Sistemas Dinâmicos Lineares. Editora da UFSC, 1ª ed., Florianópolis, 2004.
Aguirre, L. A. Introdução à Identificação de Sistemas: Técnicas Lineares e Não-Lineares
Aplicadas a Sistemas Reais. Editora da UFMG, 1ª ed., Belo Horizonte, 2000.
Seborg, D. E.; Edgar T. F.; Mellichamp D. A. Process Dynamics and Control. John Wiley & Sons. New York, 1989.
TEXAS INSTRUMENTS: Fabricante de componentes eletrônicos
.
SENSORES: Temperatura. Imagem em arquivo didático sobre Arduino, 5 Fev. 2014 Disponível em:. Acesso em: 4 mai. 2014.
VISÃO FRONTAL: Site oficial Arduino, mar. 2013 Disponível em: . Acesso em 4 mai. 2014.
PRODUCT INFORMATION: Site PC Sensor, fabricante de sensores via USB, mar. 2011.
Disponível em: . Acesso em: 3 mai. 2014.
GONÇALVES, Leila J., Universidade Federal do Rio Grande do Sul Mestrado Profissionalizante em Ensino de Física, setembro de 2004.
Disponível em:< http://www.if.ufrgs.br/~leila/propaga.htm >. Acesso em: 3 mar. 2014.
ANEXO I – Algoritmo em C++ para a placa Arduino
//Projeto : Sensor de temperatura LM35
int pin = 0; // Pino analogico para ligacao do LM35
int tempc = 0,tempf=0; // Variaveis que armazenam a temperatura em Celsius e Fahrenheit
int samples[8]; // Array para precisão na medição
int maxtemp = -100,mintemp = 100; // Variáveis que guardam a temperatura máxima e mínima
int i;
void setup()
{ Serial.begin(9600); // Inicializa comunicação serial}
void loop()
{
for(i = 0;i<=7;i++)
{ // Loop que faz a leitura da temperatura 8 vezes
samples[i] = ( 5.0 * analogRead(pin) * 100.0) / 1024.0;
tempc = tempc + samples[i]; //A cada leitura, incrementa o valor da variavel tempc
delay(100);
}
tempc = tempc/8.0; // Divide a variavel tempc por 8, para obter precisão na medição
tempf = (tempc * 9)/ 5 + 32; //Converte a temperatura em Fahrenheit e armazena na variável tempf
if(tempc > maxtemp) {maxtemp = tempc;} //Armazena a temperatura máxima na variável maxtemp
if(tempc < mintemp) {mintemp = tempc;} //Armazena a temperatura máxima na vari[avel mintemp
}
//As linhas abaixo enviam para o monitor serial a temperatura em Celsius e Fahrenheit,
// e também as temperaturas máxima e mínima registradas
Serial.print(tempc,DEC);
Serial.print(" Cels., ");
Serial.print(tempf,DEC);
Serial.print(" Fahr. -> ");
Serial.print(" Min : ");
Serial.print(mintemp,DEC);
Serial.print(" Max: ");
Serial.println(maxtemp,DEC);
tempc = 0;
delay(1000); // Aguarda 1 segundo e reinicia o processo
}
ANEXO II – Cópia da janela de comando do MATLAB
ans =
SISTEMA DE AQUECIMENTO
G =
0.056
----------
s + 0.0006
Continuous-time transfer function.
F =
0.056
----------
s + 0.0566
Continuous-time transfer function.
SISTEMA DE AQUECIMENTO SIMULADO NO IDENT
G =
2.012
-------------------------
1.064e06 s^2 + 1583 s + 1
Continuous-time transfer function.
F =
2.012
-----------------------------
1.064e06 s^2 + 1583 s + 3.012
Continuous-time transfer function.
ANEXO III
% TRABALHO PRÁTICO CONTROLE I
'ANÁLISE EM MALHA ABERTA'
clc
clear all
close all
s = tf ('s');
'variáveis obtidas via ident'
k = 2.0118 ;
Tw = 1031.3
Zeta = 0.76765
V = 47
'MODELO DO EBULIDOR'
G= k/(1+2*Zeta*Tw*s+(Tw*s)^2)
figure(1)
subplot(2,2,1)
step(V*G)%V é o valor da tensão de entrada
% ANÁLISE EM MALHA FECHADA
H = 5/95; %ganho de realimentação
'FUNÇÃO DE TRANSFERÊNCIA EM MALHA FECHADA'
H = feedback(G,H)
%figure(2)
subplot(2,2,2)
step (V*H)%V é o valor da tensão de entrada
%comparar desempenho em malha aberta com malha fechada
%figure(3)
subplot(2,2,3)
step(V*G,V*H)
legend('FTMA','FTMF')