Prova - Sistemas de Controle Projetos Pedro Batista (887) - pedro@ufpa.br Paulo Victor Mocbel (887) - pvmocbel@gmail.com December 4, Projeto de Controlador PI ideal Desejamos adicionar um controlador proporcional integral, no sistema da Equação para levar a zero seu erro de regime, em resposta ao degrau unitário. Como foi dado do problema o sistema opera com coeficiente de amortecimento igual a.74. G(s) = () (s+)(s+)(s+) Para levar o erro de regime a zero, adicionamos um polo em zero, para que esse polo não influencie na resposta trasitória do sistema, adicionamos também um zero próximo a este., o ganho K também é adicionado ao o sistema, e esse se torna o mostrado na Equação. Para este plotamos o LGR e o coeficiente de amortecimento na Figura, podemos então definir o ganho do sistema. Simulamos o sistema sem o controlador, e o sistema controlado na Figura onde podemos observar que o erro de regime será levado a zero. K(s+.) G(s) = () s(s+)(s+)(s+) Para gerar o LGR o código utilizado no matlab é mostrado na Figura 3, onde utilizamosozpk pararepresentarosistema, eosgridparaplotarocoeficientede amortecimento. Já para simulação dos sitemas usamos o esquema do simulink mostrado na Figura 4. Projeto de Compensador por Atraso de Fase Devemos compensar o sistema da Equação 3, com um compensador por atraso de fase. Para isso desenvolvemos os códigos das Figuras 8, 9 e 7, onde calculamos primeiramente o ganho do sistema não controlado K = 6(Figura a). Simulamos e encontramos seu erro de regime (V r =.889) e dividimo-os por, para encontrar K pc = 89., com esse definimos que nosso novo polo deve estar em p c =.3, a partir do qual calculamos o novo zero z c =.443 e ganho K = (Figura b). Simulamos então o novo sistema, o resultado é mostrado na Figura 6, e a saída de execução do programa na Figura. G(s) = K s(s+)(s+)(s+) (3)
Root Locus.7 System: p_zpk Gain: 6 Pole:.66 + 3.8i Damping:.7 Overshoot (%): 7.8 Frequency (rad/sec): 3.86.7 3 3 Figure : LGR para o sistema da Equação, com coeficiente de amortecimento igual a.74. 3 Projeto de um Controlador por Atraso de Fase Nosso objetivo aqui é projetar um compensador por atraso de fase que resulte em um k p =, com função de transferência da equação 4 sem alterar de forma brusca a localização o pólo dominante que produz um M p de %. Para isso primeiramente devemos encontrar o valor de ξ para podermos encontrar no k do sistema não compensado. Portanto usando a equação chegamos ao valor de ξ =.9. A partir desse valor podemos traçar o lgr do nosso sistema não compensado, como mostrado na figura, assim podendo encontra o valor de k = 4. Com o valor de k em mãos podemos calcular o valor de K p através da formula mostrada na equação 6. A parti desse valor usamos agora a equação 7, dela chegamos a equação 8 que é o valor de a relação entre zc e pc, para K pc =. Coloncando o valor pc =., encontramos zc =.34. Assim nosso compensador fica como mostrado na equação 9. Agora devemos saber qual é o valor do novo k para o sistema com o compensador, para tanto plotamos o seu lgr, como na figura e visualizamos k = 4.4. Observando a resposta sem e com o compensador, mostrada na figura 3 vemos que houve uma modificação considerável na resposta transitória do sistema com relação ao adicionamento do compensador. Isso ocorre pelo fato de termo adicionado um pólo que influênciou nosso pólo dominante,não obdecendo o critério de vezes afastado (o novo encontrasse em -7.9 e o outro em -). G(s) = k (s+)(s+4)(s+6) (4) M p = e πξ (πξ) ()
.4. com controlador pi sistema original.8.6.4. 3 Figure : Simulação para o sistema da Equação, e sua versão controlada (Equação com ganho K = 6. p_zpk=zpk([-.], [ - - -], ) rlocus(p_zpk) sgrid(.7, xi ) Figure 3: Código do MATLAB utilizado para plotar o LGR da Equação K p = 4 =.937 48 (6) zc K pc = K p pc (7) zc pc = K pc K p =.3447 (8) G c (s) = k(s+.34) (s+.) (9) 4 Projeto de um Controlador PD Dada a função de transferência de ramo direto dada pela equação, queremos projetar um controlador PD reduzindo o tempo de estabilização a um fator de. Primeiramente vamos encontrar o valor de K correspondente a ξ =.77. Para isso plotamos o lgr do sistema não compensado, como mostrado na figura 4, de onde encontramos k = 6.3. Como queremos que o tempo de resposta 3
(a) Esquema utilizado para o sistema não con-(btrolado (Equação ). lado (Equação Esquema utilizado para o sistema contro- ). Figure 4: Esquemas montados no simulink para simular os sistemas do Problema seja reduzido temos que encontrar primeiramente o tempo de estabilização do sistema através da equação. Reduzindo o mesmo a metade como descrito na equação. Agora podemos calcular as partes real e imaginária do polo dominante. Fazemos isso nas equações 3, 4 e. Feito isso devemos projetar a localização o zero do nosso compensador através da equação 6, assim encontraremos os valores dos ângulos como na equação 7. De posse desse valores e usando a relação descrita em 8 encontramos θ = 3.73. Agora podemos calcular o valor exato do zero do nosso compensador como descrito na equação 9. Com esse valor em mãos podemos finalmente plotar nosso lgr do sistema compensado, mostrado na figura, de onde encontramos k =. As reposta sem e com o compensador estão na figura 6 G(s) = k (s+)(s+)(s+3)(s+6) () T s = 4 ρ = 4 = 3.89 ().4 T s = 3.89 =.94 () ρ = 4 =.8.94 (3) ρ = ξ W n W n =.8 =.97.77 (4) W d = w n ξ =. () G c = s+zc (6) θ = 7.43,θ 3 = 9.4,θ 4 = 67,θ 4 = 7.96 (7) θ θ θ3 θ4 θ = 8 (8) tan(8 3.73) =.8 zc =.693 (9).8 zc 4
Projeto de um Controlador PID Para a função de transferência da Equação, desejas-se para o degrau unitário um instante de pico T p em.47 segundos e um coeficiente de amortecimento ξ =.8. G(s) = O roteiro do laboratório mostra que: K (s+)(s+4) π T p = w n ξ Podemos então definir w n como segue w n = π T = π p ξ.47.8 =.9 A partir das notas de aula encontramos: () w d = w n q ξ = 3. σ = w n ξ =.9.8 = 4.7 s = σ ±w d = 4.7±3. Usamos então a condição de ângulo para calcular a posição requerida do zero do compensador, os cálculos são mostrados na Figura 7 onde foi definido que o novo zero deve estar em -6.9996. Com esses dados calculamos o ganho do sistema k = 3. (Figura 8). A nova função de transferência de malha aberta do sistema é: G(s) = 3.(s+6.9996) (s+)(s+4) Podemos encontrar a função de transferência de malha fechada de acordo com fórmula: G f (s) = G(s) +G(s) = (s+7)(s+4)(s+) (s+)(s+4)(s +6s+) Desta forma observamos que os polos desta equação são.±.88, e 4. Observamos então que dentro do intervalo de. = 7. ( vezes o polo dominante) temos dois polos, caracterizando um sistema de terceira ordem que não pode ser aproximado por um sistema de segunda ordem.
Root Locus.74 System: q Gain: 6 Pole:.68 + 3.88i Damping:.74 Overshoot (%): 7.4 Frequency (rad/sec): 3.94.74 3 3 (a) LGR para o sistema da Equação 3 não controlado. Root Locus.74 System: q Gain: Pole:.67 + 3.79i Damping:.74 Overshoot (%): 7.4 Frequency (rad/sec): 3.8.74 3 3 (b) LGR para o sistema da Equação 3 controlado, com zero em.443 e polo em.3. Figure : LGR para solução do Problema 6
.4. sistema sem controlador sistema controlado X: 6.6 Y:.889 X: 9.7 Y:.98.8.6.4. 4 6 8 4 6 8 Figure 6: Resultado da simulação do sistema da Equação 3 original e controlado conforme Problema. Figure 7: Sistema do simulink utilizado no programa da Figura 9 function [newgain] = lgrgain(zeros, poles, gain, q, figureid); figure(figureid); q = zpk(zeros, poles, gain) rlocus(q); sgrid(q, ); k = input( ganho? ); newgain = k; end Figure 8: Função para gerar o LGR e solicitar o ganho para o usuário o ganho do sistema. 7
simname= q_sim figureini = ; desiredvalue = ; q=.74; k=; poles = [- - -]; zeros = []; k = lgrgain(zeros, poles, k, q, figureini + ); sim(simname); figure(figureini); plot(scopedata.time, ScopeData.signals.values(:,)); legend( sistema sem controlador ); simlen = length(scopedata.time); finalvalue = ScopeData.signals.values(simLen,); userfinalvalue = input([ regime " numstr(finalvalue) "? [New] ]); if not(isempty(userfinalvalue)) finalvalue = userfinalvalue; end err = desiredvalue - finalvalue; newerr = err / ; %equaç~oes da apostila pg 76 kp = (-err) / err; kpc = (-newerr) / newerr polevalue = input( Valor do novo polo? ); %equaç~ao apostila pg 77 zerovalue = (kpc/kp)*polevalue; disp([ Novo zero " numstr(zerovalue) " ]); zeros = horzcat(zeros, zerovalue); poles = horzcat(poles, polevalue); k = lgrgain(zeros, poles,, q, figureini+); sim(simname) figure(figureini); hold; plot(scopedata.time, ScopeData.signals.values(:,), r ); hold; %legend( sistema sem controlador ); 8 Figure 9: Função para resolver o problema da Seção
simname = q_sim Zero/pole/gain: ------------------ (s+) (s+) (s+) ganho? 6 regime ".889"? [New] Valor do novo polo? -.3 Novo zero "-.443" Zero/pole/gain: (s+.44) ---------------------------- (s+) (s+) (s+) (s+.3) ganho? Current plot held Current plot released Figure : Saída da execução do programa da Figura. Root Locus 8 6 4.9 System: a Gain: 4 Pole:.3 +.7i Damping:.94 Overshoot (%): 9.8 Frequency (rad/sec): 3.4 4 6 8.9 6 4 8 6 4 Figure : lgr do sistema não compensado da Seção 3. 9
Root Locus.9 System: a Gain: 4.4 Pole:.98 +.69i Damping:.93 Overshoot (%): 9.9 Frequency (rad/sec): 3.3.9 Figure : lgr do sistema compensado da Seção 3..9 sem com o controlador.8 resposta ao degrau unitã rio.7.6..4.3.. 3 3 4 tempo(s) Figure 3: Resposta do sistema compensado Seção 3.
Root Locus 8.77 6 4 4 6 8.77 System: a Gain: 6.3 Pole:. +.3i Damping:.7 Overshoot (%): 4.8 Frequency (rad/sec):.47 8 6 4 4 6 8 Figure 4: lgr do sistema não compensado da Seção 4. Root Locus.77 System: a Gain: Pole:.6 +.9i Damping:.73 Overshoot (%): 4.48 Frequency (rad/sec):.94.77 Figure : lgr do sistema compensado Seção 4.
.3.3 sem com o controlador resposta ao degrau unitã rio...... 4 6 8 tempo(s) Figure 6: Resposta do sistema com e sem compensador Seção 4. Figure 7: Calculo da condição de ângulo para projetar o compensador para o problema da Seção.
Root Locus.8 4 3 System: g Gain: 3. Pole: 4 + 3i Damping:.8 Overshoot (%):. Frequency (rad/sec): 3 4.8 Figure 8: LGR para o sistema da Equação, com um novo zero em -6.9996. 3