Prévia do material em texto
<p>Universidade Tecnológica Federal do</p><p>Paraná</p><p>Campus Apucarana</p><p>Bacharelado em Engenharia da Computação</p><p>Relatório - Projeto 2</p><p>Relatório do projeto 2 proposto na disciplina de</p><p>Controle Digital do Curso de Engenharia de Com-</p><p>putação da Universidade Tecnológica Federal do</p><p>Parana, campus Apucarana como requisito parcial</p><p>para aprovação da disciplina.</p><p>Maio</p><p>2024</p><p>Conteúdo</p><p>1 Resumo 1</p><p>2 Análise Experimental 2</p><p>3 Conclusão 15</p><p>4 Referências 17</p><p>1 Resumo</p><p>O projeto em questão visa apresentar os resultados de um projeto de dois</p><p>controladores PID, um via Ziegler-Nichols e outro a partir da transformação</p><p>discreta e um controlador Deadbeat para o sistema. Para esses controladores, é</p><p>utilizado um sistema massa-mola-amortecedor como descrito na figura abaixo.</p><p>Figura 1: Sistema Massa-Mola-Amortecedor do Projeto</p><p>Fonte: Projeto CD PID20241. Zanata, Adalberto.</p><p>Expressa matematicamente pela equação 1 abaixo.(</p><p>X(s)</p><p>U(s)</p><p>)</p><p>= G(s) =</p><p>(</p><p>1</p><p>Ms2 +Bs+K</p><p>)</p><p>(1)</p><p>Onde a massa do carrinho M = 5 kg, a constante do amortecedor B = 10</p><p>Ns/m e a constante de rigidez da mola K = 50 N/m.</p><p>Apresentando dessa forma o sistema completo em diagrama de blocos, a</p><p>resposta impulsiva e a entrada degrau do sistema em malha aberta, a resposta</p><p>impulsiva e a entrada degrau do sistema em malha fechada sem controlador,</p><p>os parâmetros L e T do método Ziegler-Nichols ao qual é projetado visando</p><p>um tempo de estabelecimento inferior a 3 segundos e uma porcentagem de</p><p>overshoot inferior a 20%, além das respostas do sistema em malha fechada a</p><p>partir do controlador projetado, comparando as performances do controlador</p><p>PID cont́ınuo projetado a prinćıpio e do PID discretizado, juntamente da</p><p>performance do controlador Deadbeat projetado, comparando as respostas do</p><p>sistema.</p><p>1</p><p>2 Análise Experimental</p><p>Utilizando inicialmente a ferramenta Simulink do Matlab, obtemos a</p><p>visualização inicial do diagrama de blocos do sistema não controlado.</p><p>Figura 2: Diagrama de blocos representando o sistema com entrada degrau,</p><p>tanto sem controle com realimentação quanto com controle com realimentação.</p><p>Fonte: Autoria própria.</p><p>Também foi-se criado um diagrama de blocos do sistema tendo um degrau</p><p>e um impulso como entrada.</p><p>Figura 3: Diagrama de blocos representando o sistema com entrada de degrau</p><p>e impulso, tanto sem controle com realimentação quanto com controle com</p><p>realimentação.</p><p>Fonte: Autoria própria.</p><p>2</p><p>Obtendo a visualização gráfica das sáıdas dos diagramas de blocos sem</p><p>controlador PID.</p><p>Figura 4: Gráfico dos sistemas sem controle com uma entrada degrau.</p><p>Fonte: Autoria própria.</p><p>Figura 5: Gráfico dos sistemas sem controle com uma entrada impulso.</p><p>Fonte: Autoria própria.</p><p>Ao montar um sistema simplificado para determinar os parâmetros L e</p><p>T utilizando o método da curva de reação de Ziegler-Nichols, no sistema, a</p><p>função de transferência G(s) recebe uma entrada degrau e sofre uma derivação</p><p>em sua sáıda, identificando assim a região de maior derivada e permitindo a</p><p>inferência dos parâmetros necessários.</p><p>3</p><p>Figura 6: Diagramas de bloco da função de transferência e sua derivada.</p><p>Fonte: Autoria própria.</p><p>A constante de tempo (T) reflete a velocidade com que o sistema responde</p><p>temporalmente, ou seja, está associada à dinâmica temporal da resposta do</p><p>sistema, enquanto o ganho estático (L) indica a relação entre entrada e sáıda</p><p>no estado estacionário, sendo assim posśıvel observar na Figura 7 a sáıda do</p><p>diagrama de blocos anterior.</p><p>Figura 7: Função de transferência para entrada degrau e sua derivada para a</p><p>extração dos parâmetros L e T.</p><p>Fonte: Autoria própria.</p><p>Nota-se que a sáıda da função de transferência aplicando uma entrada</p><p>degrau é simbolizado pela cor laranja e a derivada da sáıda sendo o impulso</p><p>4</p><p>representada pela cor azul.</p><p>Figura 8: Zoom na função de transferência para entrada degrau para facilitar</p><p>a extração dos parâmetros L e T.</p><p>Fonte: Autoria própria.</p><p>Com os parâmetros determinados a partir da resposta da função de</p><p>transferência no Simulink, é posśıvel calcular os ganhos do controlador PID,</p><p>entretanto a relação entre os parâmetros e os ganhos do controlador podem</p><p>variar dependendo do método de sintonia utilizado.</p><p>Para auxiliar no calculo, utilizaram-se as seguintes fórmulas:</p><p>Kp = 1.2 ∗</p><p>(</p><p>T</p><p>L</p><p>)</p><p>;</p><p>Ti = 2 ∗ L;</p><p>Td = 0.5 ∗ L;</p><p>Ki =</p><p>(</p><p>Kp</p><p>Ti</p><p>)</p><p>;</p><p>Kd = Kp ∗ Td;</p><p>(2)</p><p>PID = Kp ∗ (1 +</p><p>(</p><p>1</p><p>Ti ∗ s</p><p>)</p><p>+ Td ∗ s) = Kp +</p><p>(</p><p>Ki</p><p>s</p><p>)</p><p>+Kd ∗ s (3)</p><p>5</p><p>Listing 1: Trecho de código para calcular os parâmetros do PID.</p><p>1 %% PID</p><p>2</p><p>3 L = 0.123;</p><p>4 T = 0.432;</p><p>5</p><p>6 Ti = 2*L</p><p>7 Td = 0.5*L</p><p>8</p><p>9 Kp = 1.2*(T/L)</p><p>10 Ki = Kp*Td</p><p>11 Kd = Kp/Ti</p><p>Portanto, os parâmetros encontrados foram de T = 0.432, L = 0.123 assim</p><p>Kp = 4.2146, Ti = 0.2460, Td = 0.0615, Ki = 17.1327 e Kd = 0.2592.</p><p>Prosseguindo com o calculo para encontrar o valor do controlador PID,</p><p>o transforma na forma de uma função de transferência, com o numerador</p><p>representando a combinação dos termos proporcional, integral e derivativo, e</p><p>o denominador “s”resultando da transformação da variável integrativa.</p><p>PID =</p><p>(</p><p>0.2592 ∗ s2 + 4.2146 ∗ s+ 17.1327</p><p>s</p><p>)</p><p>(4)</p><p>Com base nos parâmetros Kp, Kd, e Ki, um controlador PID cont́ınuo de</p><p>Ziegler-Nichols foi desenvolvido como representado na equação (4), seguido</p><p>pela implementação do controlador em domı́nio discreto. Na forma discreta,</p><p>diversas configurações são posśıveis utilizando diferentes blocos dispońıveis</p><p>na ferramenta Simulink.</p><p>Informa-nos que os valores de Kp, Kd, e Ki, não são satisfatórios para</p><p>os os parâmetros desejados na atividade, pois o tempo de estabelecimento</p><p>é maior que 3 segundos. Por conta disso, fizemos ajustes nos valores de Kp,</p><p>Kd, Ki e T, para enquadrar a sáıda no resultado desejado. Os novos valores</p><p>são: Kp = 38.21, Ki = 95.13 ,Kd = 10.75 e T = 0.1.</p><p>Para analisarmos em tempo discreto o controlador PID, utilizamos a</p><p>seguinte equação:</p><p>PID(z) =</p><p>(Kit2 + 2Kpt+ 2Kd)z2 + (Kit2 − 2Kpt− 4Kd)z + 2Kd</p><p>2tz(z − 1)</p><p>(5)</p><p>6</p><p>Para que os termos do controlador cont́ınuo proporcional, integral e deri-</p><p>vativo sejam adaptados para uma forma discreta, faz com que os parâmetros</p><p>cont́ınuos Kp, Kd, e Ki, juntamente com o peŕıodo de amostragem T, sejam</p><p>substitúıdos na equação para obter a função de transferência discreta.</p><p>PID(z) =</p><p>30.0933z2 − 49.6907z + 21.5</p><p>0.2z2 − 0.2z</p><p>(6)</p><p>Figura 9: Diagrama de blocos Ziegler-Nichols do PID com malha fechada</p><p>para uma entrada degrau.</p><p>Fonte: Autoria própria.</p><p>Para um diagrama de blocos em malha fechada, a resposta é obtida ao</p><p>aplicar uma entrada degrau. A entrada degrau é processada pelo controlador</p><p>PID, que ajusta a entrada de controle para reduzir o erro e melhorar o</p><p>desempenho do sistema.</p><p>Para o sistema controlado com entrada degrau, utilizando os valores</p><p>encontrados de L = 0.123 e T = 0.432 , foram obtidos os resultados a seguir.</p><p>7</p><p>Figura 10: Gráfico dos sistemas controlados em malha fechada para uma</p><p>entrada degrau</p><p>Fonte: Autoria própria.</p><p>Também foi-se projetado um diagrama de blocos em fechada para uma</p><p>entrada impulsiva.</p><p>Figura 11: Diagrama de blocos Ziegler-Nichols do PID com malha fechada</p><p>para uma entrada impulsa.</p><p>Fonte: Autoria própria.</p><p>Para o diagrama de malha fechada, a resposta impulsiva é obtida após</p><p>a aplicação do controlador PID, assim o controlador corrige o sistema para</p><p>minimizar o impacto do impulso e reduzir o erro em relação ao estado desejado.</p><p>8</p><p>Para os sistemas controlados com entrada impulso foram obtidos os resul-</p><p>tados abaixo.</p><p>Figura 12: Gráfico dos sistemas controlados em malha fechada para uma</p><p>entrada impulsiva</p><p>Fonte: Autoria própria.</p><p>A análise da resposta impulsiva e da resposta ao degrau do controlador</p><p>PID com os encontrados pelo método Ziegler-Nichols, como citado acima foi</p><p>feito ajusta nos parâmetros Kp, Kd, e Ki para enquadra a sáıda no resultado</p><p>desejado.</p><p>Os diagramas são os mesmos apresentados na Figura 9, porém com o</p><p>alteração nos valores citados acima, os parâmetros do controlador foram</p><p>alterados,</p><p>e as figuras a seguir ilustram a resposta ao degrau e a resposta ao</p><p>impulso.</p><p>9</p><p>Figura 13: PID ajustado com malha fechada para uma entrada degrau.</p><p>Fonte: Autoria própria.</p><p>Figura 14: PID ajustado com malha fechada para uma entrada impulsa.</p><p>Fonte: Autoria própria.</p><p>Observando as imagens acima, os requisitos da atividade foram cumpridos,</p><p>o tempo de estabilização na entrada em degrau está menor que 3 segundos, e</p><p>o overshoot é menor que 20%.</p><p>Em comparação ao desempenho do controlador PID cont́ınuo, o controlador</p><p>discretizado mostra algumas diferenças significativas, mas em geral, a resposta</p><p>10</p><p>do controlador cont́ınuo é mais suave e as mudanças são menos abruptas</p><p>devido à natureza cont́ınua no tempo. Já o controlador discretizado, apesar</p><p>de operar em intervalos de tempo discretos, mostrou-se igualmente eficaz em</p><p>atingir os critérios de desempenho estipulados. A discretização criou pequenas</p><p>variações nas respostas, embora ainda sob controle e sem comprometer a</p><p>estabilidade e a precisão do sistema. Tal controlador pode ser mais benéfico</p><p>em termos de implementação prática, pois é adequado para sistemas digitais</p><p>que dependem pesadamente do tempo real.</p><p>Um controlador DeadBeat é uma abordagem especializada que busca</p><p>atingir o estado desejado do sistema em um único passo de controle, sem</p><p>overshoot e sem erro em regime permanente, ou seja, essa técnica de controle</p><p>visa alcançar um desempenho ideal onde o sistema responde de forma quase</p><p>instantânea às mudanças na referência, sem apresentar oscilações excessivas,</p><p>atingindo a meta desejada sem erro em regime permanente, sendo valiosa em</p><p>sistemas onde é crucial alcançar rapidamente o valor de referencia desejado</p><p>sem oscilações excessivas ou imprecisões no estado estacionário.</p><p>Para projetar o controlador DeadBeat, primeiro o sistema é definido e</p><p>discretizado em código, ou seja, parte-se da função de transferência cont́ınua</p><p>e converte-se para uma função de transferência discreta. Em seguida, é</p><p>calculada uma função de transferência para um controlador de Deadbeat.</p><p>Em seguida, uma função de transferência DeadBeat M(z) foi estabelecida,</p><p>variando em função da entrada e assumindo um degrau como entrada, onde</p><p>esta definição também considerou o número de polos em excesso “n”de Gp(z)</p><p>em relação aos zeros de “Gp(z).”</p><p>M(z) =</p><p>(</p><p>1</p><p>zn</p><p>)</p><p>(7)</p><p>Com o sistema discretizado Gp e a função de transferência M(z), podemos</p><p>obter a função do controlador projetado D(z).</p><p>D(z) =</p><p>(</p><p>1</p><p>Gp(z)</p><p>)</p><p>∗</p><p>(</p><p>M(z)</p><p>1−M(z)</p><p>)</p><p>(8)</p><p>Executando o código disponibilizado no Listing 2, encontramos os valores</p><p>para a função do controlador Deadbeat.</p><p>11</p><p>Listing 2: Trecho de código para calcular a função do Deadbeat.</p><p>1 %% DeadBeat</p><p>2</p><p>3 t = 0.1;</p><p>4 % Funcao de tranferencia continuo</p><p>5 G = tf([1], [5 10 50])</p><p>6 % Funcao de tranferencia discreto</p><p>7 Gp = c2d(G,t)</p><p>8</p><p>9 % Controlador DeadBeat</p><p>10 M = tf([1], [1 0], t)</p><p>11 deadBeat = (1/Gp) * M/(1-M)</p><p>A equação de D(z) representa o cálculo do controlador projetado no</p><p>domı́nio discreto com base no sistema discretizado Gp(z) e na função de</p><p>transferência M(z), ocorre a formulação resultante da aplicação da técnica de</p><p>controle em malha fechada, onde Gp(z) é o sistema discretizado e M(z) é a</p><p>função de transferência do modelo desejado em malha fechada e a função do</p><p>controlador é calculada como o produto da inversa de Gp(z) pela razão entre</p><p>M(z) e [1-M(z)].</p><p>Equação encontrada com os valores:</p><p>D(z) =</p><p>(</p><p>z3 − 1.729z2 + 0.8187z</p><p>0.0009289z3 − 0.00006008z2 − 0.0008688z</p><p>)</p><p>(9)</p><p>Por fim um diagrama de blocos equivalente foi montado utilizando nova-</p><p>mente a ferramenta Simulink.</p><p>12</p><p>Figura 15: Diagrama de blocos do Deadbeat para entrada degrau.</p><p>Fonte: Autoria própria.</p><p>A imagem abaixo é a sáıda do degrau aplicado na função do Deadbeat.</p><p>Figura 16: Deadbeat resposta a entrada degrau</p><p>Fonte: Autoria própria.</p><p>13</p><p>Figura 17: Diagrama de blocos do sistema com o controladorDeadbeat para</p><p>entrada degrau.</p><p>Fonte: Autoria própria.</p><p>A imagem abaixo é a sáıda do degrau aplicado no sistema com o controlador</p><p>Deadbeat.</p><p>Figura 18: Sáıda do sistema com o controlador Deadbeat resposta a entrada</p><p>degrau</p><p>Fonte: Autoria própria.</p><p>Observa-se que a resposta à entrada degrau em malha fechada apresenta</p><p>um desempenho notável, o sistema é ajustado de forma precisa para atingir</p><p>o estado desejado em um único passo de controle, eliminando praticamente</p><p>todo o overshoot e reduzindo o tempo de acomodação mı́nimo, assim o erro</p><p>em regime permanente é quase inexistente.</p><p>14</p><p>Figura 19: Sáıda do sistema com o controlador Deadbeat resposta a entrada</p><p>impulso</p><p>Fonte: Autoria própria.</p><p>Nota-se que na resposta impulsiva, o método Deadbeat se destaca pela</p><p>sua capacidade de rejeitar pertubações instantâneas, agindo rapidamente a</p><p>minimização do impacto das pertubações, restaurando o sistema ao estado de-</p><p>sejado sem oscilações ou erro em regime permanente, obtendo um desempenho</p><p>notável, evidenciando a eficácia de seu controle em situações cŕıticas.</p><p>3 Conclusão</p><p>Os resultados obtidos indicam que os projetos elaborados para desenvol-</p><p>ver os controladores PID via Ziegler-Nichols, discretizado e Deadbeat foram</p><p>eficazes em melhorar o desempenho do sistema massa-mola-amortecedor. Ao</p><p>comparar as respostas em malha fechada com aquelas em malha aberta, fica</p><p>evidente a significativa melhoria alcançada, notando-se que tempo de estabe-</p><p>lecimento, o overshoot e o erro em regime permanente foram notavelmente</p><p>reduzidos com a introdução dos controladores.</p><p>O controlador PID via Ziegler-Nichols foi projetado e adaptado para</p><p>atender aos requisitos de desempenho espećıficos, garantindo um tempo de</p><p>estabelecimento te de até 3 segundos e uma porcentagem de overshoot (PO)</p><p>de no máximo 20%. Além disso, o controlador foi discretizado para atender à</p><p>taxa de amostragem inicial de T=0.1 segundos.</p><p>Portanto, conclui-se que a malha fechada é crucial para obter o compor-</p><p>15</p><p>tamento desejado e a estabilidade em sistemas dinâmicos, especialmente na</p><p>presença de perturbações ou incertezas. Por meio do método Ziegler-Nichols</p><p>obtém-se uma melhoria em relação à malha aberta, embora possa ainda apre-</p><p>sentar algum overshoot e um tempo de acomodação moderado. Em contraste,</p><p>o método Deadbeat proporciona um desempenho notável, com resposta rápida,</p><p>praticamente sem overshoot e com erro em regime permanente mı́nimo. A</p><p>escolha entre esses métodos deve levar em conta as necessidades espećıficas</p><p>de controle e as caracteŕısticas do sistema, sendo o método Deadbeat uma</p><p>escolha robusta para aplicações que requerem desempenho superior.</p><p>16</p><p>4 Referências</p><p>1. MORITZ, G. L. Controladores PID. DAELT - Universidade Tecnológica</p><p>Federal do Paraná, 14 de setembro de 2013. Dispońıvel em: https://</p><p>moodle.utfpr.edu.br/pluginfile.php/2749876/mod_resource/content/</p><p>1/10_ControladoresPIDeDeadbeat.pdf.</p><p>2. SINTONIA DE CONTROLADORES PID - Métodos de Ziegler-Nichols.</p><p>Moodle. Dispońıvel em: https://moodle.utfpr.edu.br/pluginfile.</p><p>php/2749877/mod_resource/content/1/ziegler.pdf.</p><p>3. TANNURI, E. A. Apostila sobre PID e Métodos de Sintonia. De-</p><p>partamento de Engenharia Mecatrônica e Sistemas Mecânicos, Escola</p><p>Politécnica da USP. Dispońıvel em: https://moodle.utfpr.edu.br/</p><p>pluginfile.php/2899054/mod_resource/content/1/Apostila%20sobre%</p><p>20PID%20e%20M%C3%A9todos%20de%20Sintonia.pdf.</p><p>17</p><p>https://moodle.utfpr.edu.br/pluginfile.php/2749876/mod_resource/content/1/10_ControladoresPIDeDeadbeat.pdf</p><p>https://moodle.utfpr.edu.br/pluginfile.php/2749876/mod_resource/content/1/10_ControladoresPIDeDeadbeat.pdf</p><p>https://moodle.utfpr.edu.br/pluginfile.php/2749876/mod_resource/content/1/10_ControladoresPIDeDeadbeat.pdf</p><p>https://moodle.utfpr.edu.br/pluginfile.php/2749877/mod_resource/content/1/ziegler.pdf</p><p>https://moodle.utfpr.edu.br/pluginfile.php/2749877/mod_resource/content/1/ziegler.pdf</p><p>https://moodle.utfpr.edu.br/pluginfile.php/2899054/mod_resource/content/1/Apostila%20sobre%20PID%20e%20M%C3%A9todos%20de%20Sintonia.pdf</p><p>https://moodle.utfpr.edu.br/pluginfile.php/2899054/mod_resource/content/1/Apostila%20sobre%20PID%20e%20M%C3%A9todos%20de%20Sintonia.pdf</p><p>https://moodle.utfpr.edu.br/pluginfile.php/2899054/mod_resource/content/1/Apostila%20sobre%20PID%20e%20M%C3%A9todos%20de%20Sintonia.pdf</p><p>Resumo</p><p>Análise Experimental</p><p>Conclusão</p><p>Referências</p>