Você está na página 1de 12

TRABALHO FINAL DE GRADUAO OUTUBRO/2011 UNIVERSIDADE FEDERAL DE ITAJUB ENGENHARIA DE CONTROLE E AUTOMAO CONTROLE LQG E H VIA LTR APLICADOS

AO CONTROLE DE POSIO
Gabriela da Fonseca de Amorim - 13874 Orientador: Me. Caio Fernandes de Paula
Resumo - Este artigo apresenta o projeto de um controlador LQG/LTR e de um controlador H/LTR a partir das suas equaes para o mdulo de controle de posio do laboratrio LCPIC da Universidade Federal de Itajub e visa estabelecer uma comparao entre estes mtodos quando aplicados a uma mesma planta e a partir dos mesmos parmetros de projetos. Palavras-Chave: Controle de posio, Servomecanismo, Controle LQG/LTR, Controle H/LTR. O manual do mdulo didtico de controle de posio desenvolvido pela empresa Datapool encontra-se em [1] e na Figura 1 mostrada uma foto do servo-mecanismo ensaiado.

I INTRODUO
Executar uma ao de controle significa modificar a dinmica da planta para que ela obedea a requisitos mnimos de desempenho e rejeite rudos de medio e distrbios do sistema. Neste trabalho foram projetados e simulados dois controladores robustos para o mdulo de controle de posio por mtodos distintos: LQG/LTR e H/LTR. O artigo est organizado da seguinte maneira: na seo II descrito o sistema a ser controlado; nas sees III e IV so projetados, simulados e analisados os controladores LQG/LTR e H/LTR, respectivamente, e na seo V so apresentadas as concluses a partir dos resultados experimentais realizados.

Figura 1 Planta real do servo-mecanismo ensaiado. II.2 Modelagem do sistema Para modelar um servo-motor, a expresso do ngulo de sada do sistema (s) em funo da tenso de armadura Ea(s) dada por um sistema com trs plos, sendo um deles na origem [2], representada em (1). ( s) KT = (1) Ea ( s ) JLm s 3 + ( BLm + JRm ) s 2 + ( BRm + KT K m ) s Onde a indutncia e a resistncia de armadura so dadas por Lm e Rm, respectivamente, KT uma constante magntica relacionada ao torque, Km uma constante magntica relacionada fora contra-eletromotriz, J o momento de inrcia no eixo e B o coeficiente de atrito. Mas se a indutncia de armadura Lm for muito pequena, como no mdulo em questo, ela pode ser ignorada e a funo de transferncia ser dada por um sistema com apenas dois plos sendo um deles na origem como na equao (2): (s) KT = (2) 2 Ea ( s ) JRm s + ( BRm + K T K m ) s

II O MODELO DO SERVO-MECANISMO
II.1 Descrio da planta A planta um modelo reduzido de um sistema de posicionamento angular. Um servo-potencimetro alimentado com uma fonte de tenso fixa regulada funciona como transdutor de deslocamento angular da planta. Todo deslocamento no eixo deste potencimetro varia de forma proporcional tenso do cursor que varia entre 0 e +5[V]. Um servo-motor de m permanente com corrente contnua acoplado a um conjunto de engrenagens que acionam a parte mecnica do sistema de posicionamento serve de motor de acionamento. A tenso disponvel para esse servo-motor tambm varia entre 0 e +5[V].

Por tratar-se de um modelo linear, a partir de dados de entrada e sada coletados em abril de 2011 no LCPIC da Universidade Federal de Itajub - UNIFEI, estimou-se os parmetros da planta atravs do mtodo numrico dos Mnimos Quadrados. A funo de transferncia estimada da planta , ento, dada por:

III PROJETO DO CONTROLADOR LQG/LTR


Doyle e Stein [4], em 1981, introduziram na literatura o mtodo LQG/LTR (Linear Quadratic Gaussian with Loop Transfer Recovery) para o projeto de controladores. Este mtodo consiste em uma tcnica de controle robusto, ou seja, tolerante a grandes incertezas e distrbios, que pode ser aplicado tanto em sistemas SISO (Single Input Single Output) quanto MIMO (Multiple Input Multiple Output) e visa restabelecer as margens de ganho e de fase que os reguladores LQR (Linear Quadratic Regulators) e o filtro de Kalman possuem individualmente mas no so garantidas quando combinados no controle LQG [5]. Com relao ao desempenho, este mtodo cumpre todos os objetivos de um sistema real controlado enumerados por J. J. Cruz [6]: acompanhamento de sinais de referncia, rejeio de perturbaes externas, insensibilidade a variaes na planta e rejeio do erro de medida. No sistema controlado existem sinais que devem ter sua influncia neutralizada como entradas exgenas z ou variveis auxiliares de resposta w. A matriz de transferncia da malha fechada dos sinais w para z denotada por Tzw cujo tamanho medido pela norma H2 para o controlador LQG/LTR. [3] O objetivo desta metodologia , portanto, encontrar um controlador que, baseado na informao provida por y, gere um sinal de controle u que comande a planta e neutralize a influncia de w em z, atravs de uma minimizao da matriz de Tzw dada pela norma ||Tzw||2. III.1 Condies para a aplicao do controle LQG/LTR Para que a aplicao do controle LQG/LTR seja vivel, a planta deve ser quadrada, ou seja, possuir a mesma quantidade de entradas e sadas e deve ser de fase-mnima. Doyle e Stein [4] justificam estas necessidades mostrando que para um controlador LQG, dado em (6)

G (s) =

200 s ( s + 11)

(3)

Sendo uma representao em variveis de estado dada por:

& x = Ax + Bu + Lw x

z x = Hx z u = Iu y = Cx + Iw y
11 0 A= 0 1 C = [0 200] 1 B= 0 D = [0]

(4)

Onde x o vetor de estados, u o vetor de entradas de comando, y o vetor das variveis medidas, wx e wy so entradas e zx e zu so sadas exgenas do sistema. Alm disso, os parmetros , H, e L sero livremente designados para cumprir com o propsito firmado. [3] O sistema possui um plo na origem e, portanto, erro nulo no regime permanente em malha fechada. Porm, tratando-se de um sistema mecnico, o valor dos plos depende de uma srie de fatores e constantes que podem variar de acordo com as condies do ambiente ou mesmo com o passar do tempo. Para garantir a condio de erro nulo em regime permanente sob qualquer condio, necessrio realizar a expanso por um plo na origem dada por:

K(s) = KC (sI A + BKC + KFC)KF


Onde:

(6)

~ A B A= 0 0 ~ C = [C D]

~ 0 B= 1 ~ D = [0]

K C = 2 B T X
K F = YC
2 T

(7) (8)

Assim, o sistema passa a ser representado por:

~ ~ ~ & x = A x + B u + L wx
~ z x = Hx z u = Iu ~ y = C x + Iw y
1 0 0
0]

Sendo KC e KF matrizes de ganhos detalhadas na seo III.2 deste mesmo artigo. Se tender a 0, a matriz H for igual matriz C e a planta do sistema for quadrada e de fase-mnima, pode-se demonstrar que: (5) Logo

K(s) = (C(sI A)1 B)1.C(sI A)KF

(9) (10)

G(s)K(s) = C(sI A)KF

11 0 ~ A= 1 0 0 0 ~ C = [0 200

0 ~ B = 0 1 ~ D = [0]

Portanto, a funo de transferncia da malha tende ao filtro de Kalman (observador de estados). Alm disso, o sistema deve ser de estados controlveis e observveis, o que pode ser verificado a partir das matrizes de controlabilidade e observabilidade dadas pelas equaes (11) e (12), respectivamente.

~ MC = B

MO

~~ ~ ~ AB A 2B ~ C ~~ = CA ~~ C A 2

(11)

mos das funes de sensibilidade S(s) e rastreamento T(s).

(12)

[S ( j ) ] 1 [T ( j ) ] 2 [S ( j ) ] (C ( jI A) L )1

(18) (19)

(20)

importante notar que a expanso por plos na origem pode modificar a controlabilidade e a observabilidade do sistema. Logo, para a planta em questo:

Sistemas mais complexos tornariam a escolha do parmetro L mais onerosa, mas existem tcnicas para a parametrizao desta matriz propostas por Athans [7]. III.3 Parmetros utilizados Para a planta analisada, foram utilizados os seguintes parmetros: (21a) = 10 -6 (21b) H=C =4 (21c)

0 1 11 M C = 0 0 1 1 0 0

(13)

MO

0 = 200 2200

200 0 0

0 0 200

(14)

O sistema ser de estados controlveis se o posto da matriz de controlabilidade MC dada em (13) for igual ordem da matriz . Da mesma forma, o sistema ser de estados observveis se o posto da matriz de observabilidade MO dada em (14) for igual ordem da matriz . Dado o exposto, pode-se afirmar que o sistema em questo de estados controlveis e observveis. III.2 Equaes do controlador LQG/LTR O objetivo da otimizao LQG consiste em encontrar os ganhos matriciais KC e KF que minimizam a funo de custo do sistema, ou seja, encontrar o controlador que minimiza a norma ||Tzw||2. O controlador LQG, representado atravs de variveis de estado, dado pela seguinte equao:

0 L = 0 5

(21d)

As matrizes de ganhos do controlador LQG/LTR para a planta expandida por um plo na origem so, ento, dadas por: K C = 6,7127.10 5 2.10 8 1158,7 (22)

0,10764 K F = 0,032808 1,25


III.4 Simulaes

(23)

A BK C K F C K := KC

KF 0

(15)

Com os parmetros especificados para o controle LQG/LTR, um programa foi desenvolvido no software MatLab a fim de ilustrar o comportamento do sistema. A Figura 2 ilustra a resposta ao degrau do Filtro de Kalman projetado (malha objetivo).

KC a matriz de ganhos de retroao do controlador e KF a matriz de ganhos do observador. As matrizes X e Y so simtricas e semi-definidas positivas e representam as solues das equaes de Riccatti (16) e (17) da retroao e do observador de estados, respectivamente.

A T X + XA 2 XBB T X + H T H = 0 YA + AY YC CY + LL = 0
T
2

(16) (17)

Quanto menor for o parmetro , mais a dinmica do controlador se aproximar da dinmica do filtro de Kalman. Da mesma forma, para que o princpio de recuperao da malha ocorra, as matrizes H e C devem ser iguais. Este princpio far com que os plos do sistema tendam aos do observador de estado [4]. Os parmetros e L so livres de projeto, ou seja, so os responsveis pela formatao da malha objetivo em ter-

Figura 2 Resposta ao degrau do Filtro de Kalman

A Figura 3 ilustra a resposta ao degrau do sistema controlado pelo mtodo LQG/LTR.

IV.5 Resultados Experimentais Com o auxilio do software Labview, foi desenvolvido um programa para testar a eficcia do controlador LQG/LTR na planta real.

Figura 3 Resposta ao degrau do sistema controlado pelo mtodo LQG/LTR A anlise das Figuras 2 e 3 revela que a resposta do sistema controlado est satisfatoriamente prxima da resposta do Filtro de Kalman, o que indica que o parmetro pequeno o suficiente. Alm disso, o overshoot da resposta ao degrau do sistema foi em torno de 20% e o tempo de acomodao de aproximadamente 1[s]. Os grficos da sensibilidade S(s) e do rastreamento T(s) do sistema podem ser observados nas Figuras 4 e 5.

Figura 6 Interface desenvolvida no Labview A Figura 7 mostra a resposta ao degrau do sistema real atrelado ao controlador LQG/LTR projetado na seo III.

Figura 7 Resposta ao degrau do sistema real controlado pelo mtodo LQG/LTR Figura 4 Sensibilidade S(s) do sistema controlado pelo mtodo LQG/LTR A anlise da Figura 7 revela que o overshoot do sistema real controlado foi em torno de 17% e o tempo de acomodao 2[s]. O achatamento do grfico nesta figura mostra que houve uma saturao do sinal de comando deixando o mximo pico abaixo do simulado. Tambm por este motivo, o tempo de acomodao foi maior, como pode ser observado fazendo uma comparao entre as Figuras 3 e 7. importante ressaltar que o servo-motor possui uma impreciso tpica em torno de 5, o que justifica a diferena entre a referncia e a sada na Figura 7.

IV PROJETO DO CONTROLADOR H/LTR


O mtodo H/LTR para o projeto de controladores foi introduzido na literatura por de Paula e Ferreira em 2011 [8] a partir das equaes propostas por Doyle et. al. [9]. Assim como o mtodo LQG/LTR, consiste em uma tcnica de controle robusto que pode ser aplicada em siste-

Figura 5 Rastreamento T(s) do sistema controlado pelo mtodo LQG/LTR

mas SISO (Single Input Single Output) e MIMO (Multiple Input Multiple Output) e cumpre todos os objetivos de um sistema real controlado. Em malha fechada, existem sinais que devem ter sua influncia no sistema controlado neutralizada como entradas exgenas z ou variveis auxiliares de resposta w. Tem-se que Tzw a matriz de transferncia dos sinais w para z cujo tamanho medido pela norma H para o controlador H/LTR. [6] A problemtica desta metodologia encontrar um controlador que gere um sinal de controle u baseado na informao provida por y e neutralize a influncia de w em z ao controlar o sistema, atravs de uma minimizao da matriz de Tzw dada pela norma ||Tzw||. Uma propriedade fundamental na sntese de controladores via otimizao H/LTR a borda para os mximos valores singulares de rastreamento demonstrada por de Paula e Ferreira [8] que permite limitar a resposta temporal do sistema e reduzir o overshoot. IV.1 Condies de aplicao do controle H/LTR Para que a aplicao do controle H/LTR seja vivel, a planta deve ser quadrada, de fase-mnima e de estados controlveis e observveis. Todas essas condies j foram verificadas previamente na seo III.1 deste artigo. Alm disso, o raio espectral (maior autovalor em mdulo) da matriz XY deve ser menor que 2. IV.2 Equaes do controlador H/LTR O controlador H dado por uma matriz de transferncia em (24) minimiza as matrizes de ganho KC e KF e, consequentemente, a norma ||TZW||. O controlador K representado atravs de variveis de estado dado por:

ra. A diferena no mtodo H a adio de um novo parmetro livre de projeto para alcanar a malha objetivo em termos das funes de sensibilidade S(s) e rastreamento T(s): o parmetro que no LQG/LTR tende a infinito. A malha objetivo ento formatada pelas seguintes equaes: (30) [S ( j ) ] 1

[T ( j ) ]

(31)

[S ( j ) ] (C ( jI A) L )1
IV.3 Parmetros utilizados

(32)

Para a planta analisada foram utilizados os seguintes parmetros: (33a) = 10 -6 (33b) H=C =4 (33c) = 4.3 (33d)

0 L = 0 5

(33e)

As matrizes de ganhos do controlador H/LTR so, ento, dadas por: (34) K = 6,7127.10 5 2.10 8 1158,7
C

0,22308 K F = 0,095644 2,5313


IV.4 Simulaes

(35)

A + K :=
Onde:

LLT X BK C ZK F C KC

ZK F 0

(24)

Z = I 2 YX K C = 2 B T X
K F = YC
2 T

(25) (26) (27)

Com os parmetros especificados para o controle H/LTR, tambm foi desenvolvido um programa no software MatLab a fim de ilustrar o comportamento do sistema. A figura 8 ilustra a resposta ao degrau da malha objetivo para o controlador H/LTR.

Como para o mtodo LQG/LTR, visto na seo III, KC a matriz de ganhos da retroao de estados e KF a matriz de ganhos do observador de estados. As matrizes X e Y representam as solues das equaes de Riccatti (28) e (29) do controlador e do observador, respectivamente.
A T X + XA + 2 XLLT X 2 XBB T X + H T H = 0

(28) (29) Figura 8 Resposta ao degrau da Malha Objetivo A figura 9 ilustra a resposta ao degrau do sistema controlado pelo mtodo H/LTR.

YA T + AY + 2 YH T HY 2 YC T CY + LLT = 0

Da mesma forma, quanto menor for o parmetro , mais a dinmica do controlador se aproximar da dinmica do filtro projetado. Alm disso, as matrizes H e C devem ser iguais para que o princpio de recuperao da malha ocor-

IV.5 Resultados Com o auxilio do software Labview, foi desenvolvido um programa para testar a eficcia do controlador H/LTR na planta real.

Figura 9 Resposta ao degrau do sistema controlado pelo mtodo H/LTR Analisando as Figuras 8 e 9, observa-se que a resposta ao degrau do sistema controlado via otimizao H/LQG tendeu dinmica da malha objetivo desejada. Alm disso, as caractersticas da resposta so melhores que as do sistema controlado por LQG/LTR. Os valores de overshoot, por exemplo, giram em torno de 10% e o tempo de resposta de aproximadamente 0,8 [s]. Os grficos da sensibilidade S(s) e do rastreamento T(s) do sistema podem ser observados nas Figuras 10 e 11.

Figura 12 Interface desenvolvida no Labview A Figura 13 mostra a resposta ao degrau do sistema real atrelado ao controlador H/LTR projetado na seo IV.

Figura 10 Sensibilidade S(s) do sistema controlado pelo mtodo H/LTR

Figura 13 Resposta ao degrau do sistema real controlado pelo mtodo H/LTR A anlise da Figura 13 revela que o overshoot do sistema real controlado foi em torno de 12% e o tempo de acomodao 1,4[s]. Assim como no controle LQG/LTR, o achatamento do grfico mostra que houve uma saturao do sinal de comando deixando o mximo pico abaixo do simulado e o tempo de acomodao maior. Uma comparao entre as Figuras 9 e 13 ilustra bem a situao. No entanto, para os mesmos parmetros de configurao, as respostas para o controle H/LTR tiveram melhores caractersticas de desempenho quando comparadas s respostas para o controle LQG/LTR. importante ressaltar mais uma vez que o servo-motor possui uma impreciso tpica em torno de 5, o que justifica a diferena entre a referncia e a sada na Figura 13.

Figura 11 Rastreamento T(s) do sistema controlado pelo mtodo H/LTR

V CONCLUSES
Neste trabalho foi proposto o estudo e a comparao de duas tcnicas de controle robusto factveis para sistemas SISO e MIMO desde que a planta obedea a certas condies. Ambas mostraram-se adequadas no projeto de controladores para o mdulo de controle de posio. As simulaes no Matlab do controlador LQG/LTR e do controlador H/LTR apresentaram os resultados esperados na sntese do projeto e foram confirmadas pelos ensaios realizados na planta real com o programa Labview apesar da saturao do sinal. No entanto, o controlador H/LTR apresentou melhores resultados uma vez que possui o , um parmetro livre adicional que pode ser considerado mais uma ferramenta no controle do overshoot.

BIOGRAFIA:
Gabriela da Fonseca de Amorim Nasceu em Volta Redonda - RJ em 1987 e ingressou na UNIFEI em 2006. J em Itajub, trabalhou como voluntria lecionando Redao nos cursinhos assistenciais Theotokos e CAAI e como professora de Portugus para estrangeiros no curso de idiomas Speaking. Foi Diretora de Graduao do Centro Acadmico (CAECA), atuou organizando eventos como ciclos de palestras e semanas acadmicas alm de ter sido pioneira na elaborao das pesquisas de opinio com os alunos do curso. Realizou um intercmbio acadmico no ano de 2009 e estagiou no Centre de Recherches da UTC em Compigne Frana. Em 2011 realizou um estgio na empresa incubada IE Tecnologia em Itajub. Atualmente professora de Francs no curso de idiomas Speaking, cursa o ltimo semestre de Engenharia de Controle e Automao na UNIFEI e tambm o terceiro ano de Fsica Licenciatura na UFRJ pelo consrcio CEDERJ.

VI AGRADECIMENTOS
Agradeo ao meu orientador Caio pela disponibilidade e prontido. Agradeo tambm pela ajuda e ateno dadas pelo Prof. Dr. Lus Henrique mesmo de to longe e pelo meu grande amigo Diogo Leonardo no projeto, na coleta de dados, nos clculos e na finalizao deste trabalho. Sem esquecer a minha famlia e os meus amigos que me apoiaram ao longo do curso e sempre deram foras para continuar.

REFERNCIAS
[1] Manual Servo-Mecanismo 2208; Apostila de experincias e manual de manuteno e calibrao. Datapool Eletrnica. [2] C. L. Phillips e R. D. Harbor Feedback Control Systems, Ed. Prentice Hall, 2000. [3] C. F. de Paula, F. H. R. Cunha e L. H. C. Ferreira Um procedimento simplificado de sntese de controladores H/LTR para o problema de sensibilidade mista, CBA, 2010 [4] J. C. Doyle e G. Stein Multivariable feedback design: Concepts for a modern/classical synthesis, IEEE Trans. on Automatic Control, 1981. [5] J. C. Doyle Guaranteed Margins for LQG Regulators, IEEE Trans. on Automatic Control, 1979. [6] J. J. Cruz Controle Robusto Multivariavel, Ed. USP, 1996. [7] M. Athans A tutorial on the LQG/LTR methode Proc. American Control Conference, 1986. [8] C. F. de Paula e L. H. C. Ferreira An easy-to-use H/LTR control solution with mixed-sensitivity properties, IEEE Trans. on Automatic Control, 2011. [9] J. C. Doyle, K. Glover, P. P. Khargonekar e B. A. Francis State-space solutions to standard H2 and H control problems, IEEE Trans. on Automatic Control, 1989.

APNDICE A
Cdigo do programa em software MatLab para as otimizaes LQG/LTR E H/LTR.

% Controle LQG e Hinfinito via LTR aplicados a controle de posio % Gabriela da Fonseca de Amorim % Orientador: Professor Me. Caio Fernandes de Paula % 21/10/2011 clear all; clc; % ---------------------------------------------------% -------------- Otimizao LQG/LTR -------% ---------------------------------------------------% Planta do Servo-Mecanismo ap = [ -11 0; 1 0 ]; bp = [ 1 ; 0 ]; cp = [ 0 200]; dp = zeros(1); % ---------------------------------------------------% Plos e zeros da planta em malha aberta figure; pzmap(ap,bp,cp,dp) title ('Plos e Zeros do Sistema'); legend('Plos','Location','Best') % ---------------------------------------------------% Valores singulares de G(s) na malha aberta figure; [sv, wf] = sigma (ap, bp, cp, dp, {0.001, 100}); sv = 20*log10(sv); semilogx (wf, sv); grid; axis ([0.001 100.00001 -60.000001 100.000001]); title ('Valores Singulares de G(jw)'); xlabel('Frequncia [rad/seg]'); ylabel('Mdulo [dB]'); legend('\sigma[G(j\omega)]','Location','Best') % -----------------------------------------------------% Sistema em Malha Aberta tt = 0:0.01:10; st = [ ones(size(tt)) ]; figure; [yg, tg, xg] = lsim (ss(ap, bp, cp, dp), st, tt); plot(tg, yg); grid; title ('Resposta ao Degrau em Malha Aberta'); xlabel('Tempo [seg]'); ylabel('Amplitude [volts] '); legend('Y', 'Location', 'Best') % ---------------------------------------------------% Para garantir o erro nulo em regime permanente do sistema, faz-se a incluso de um plo na origem. [ai, bi, ci, di] = series (0, 1, 1, 0, ap, bp, cp, dp);

% ---------------------------------------------------% Verificao se o sistema controlvel e observvel. mc = ctrb (ai, bi); mo = obsv (ai, ci); co = rank(mc); if co == size(ai) disp ('O sistema de estados controlveis.'); else disp ('O sistema no de estados controlveis.'); return; end ob = rank(mo); if ob == size(ai) disp ('O sistema de estados observveis.'); else disp ('O sistema no de estados observveis.'); return; end % ---------------------------------------------------% Montagem do filtro de Kalman % Parmetros de Projeto mu = 4; rho = 1e-6; li = [ 0 ; 0 ; 5 ]; hi = ci; % Clculo dos Ganhos ax = ai; bx = rho^-2*bi*bi'; cx = hi'*hi; ay = ai'; by = mu^-2*ci'*ci; cy = li*li'; xi = are(ax,bx,cx); yi = are(ay,by,cy); % Montagem do Controlador e Filtro kic = rho^-2*bi'*xi; kif = mu^-2*yi*ci'; [ak, bk, ck, dk] = reg (ai, bi, ci, di, kic, kif); [al, bl, cl, dl] = series (ak, bk, ck, dk, ai, bi, ci, di); % ---------------------------------------------------% Funo Sensibilidade S [as, bs, cs, ds] = feedbk (al, bl, cl, dl, 1); % ---------------------------------------------------% Funo Malha Fechada T [af, bf, cf, df] = feedbk (al, bl, cl, dl, 2); % ---------------------------------------------------% Filtro de Kalman [ao, bo, co, do] = feedbk (ai, kif, ci, 0, 2); % ----------------------------------------------------

% Resposta do Sistema figure; [yg, tg, xg] = lsim (ss(ao, bo, co, do), st, tt); plot(tg,yg) axis ([-0.000001 2.00001 -0.000001 1.250001]); title ('Resposta ao Degrau do Filtro de Kalman'); xlabel('Tempo [s]'); ylabel('Amplitude [V] '); legend('Y', 'Location', 'Best'); grid; % ---------------------------------------------------% Valores Singulares de Sensibilidade figure; sigma(as, bs, cs, ds); title ('Valores Singulares de Sensibilidade'); legend('\sigma[S(j\omega)]','Location','Best'); grid; % ---------------------------------------------------% Valores Singulares de Rastreamento figure; sigma(af, bf, cf, df); title ('Valores Singulares de Rastreamento'); legend('\sigma[T(j\omega)]','Location','Best'); grid; % ---------------------------------------------------% Resposta do Sistema Simulado figure; [yg, tg, xg] = lsim (ss(af, bf, cf, df), st, tt); plot(tg,yg) axis ([-0.000001 2.00001 -0.000001 1.250001]); title ('Resposta ao Degrau do Sistema'); xlabel('Tempo [s]'); ylabel('Amplitude [V] '); legend('Y', 'Location', 'Best'); grid; % ---------------------------------------------------% Montagem do Controlador para o LabView [ax1, bx1, cx1, dx1] = series(ak, bk, ck, dk, 0, 1, 1, 0); [nx1, dx1] = ss2tf (ax1, bx1, cx1, dx1); [nk1, dk1] = c2dm (nx1, dx1, 0.02, 'tustin') % ---------------------------------------------------% Resposta do Sistema Real load C:\Users\Pessoal\Desktop\TCC\matlab-labview\testematlab3.txt t = testematlab3(:,1); e = testematlab3(:,2); y = testematlab3(:,3); plot(t,e,'b'); hold; plot(t,y,'r'); axis ([-0.000001 9.00001 99.99999 190.000001]); title ('Resposta ao Degrau do Sistema Real'); xlabel('Tempo [s]'); ylabel('Amplitude [ '); ] legend('Referncia','Sada', 'Location', 'Best'); grid;

10

% ---------------------------------------------------% ----------- Otimizao Hinfinito/LTR ------% ---------------------------------------------------% Parmetros de controle li = [ 0 ; 0 ; 5 ]; hi = ci; rho = 0.000001; mu = 4; gamma = 4.6; % ---------------------------------------------------% Clculo dos Ganhos ax = ai; bx = (rho^-2)*bi*bi' - (gamma^-2)*li*li'; cx = hi'*hi; ay = ai'; by = (mu^-2)*ci'*ci - (gamma^-2)*hi'*hi; cy = li*li'; xi = are(ax,bx,cx); yi = are(ay,by,cy); % ---------------------------------------------------% Montagem do Controlador e Filtro kic = (rho^-2)*bi'*xi; kif = (mu^-2)*yi*ci'; Tzw = gamma; zi = (eye(3)-(gamma^-2)*yi*xi)^(-1); ak = ai + (gamma^-2)*li*li'*xi - bi*kic - zi*kif*ci; bk = zi*kif; ck = kic; dk = zeros(1); [al, bl, cl, dl] = series (ak, bk, ck, dk, ai, bi, ci, di); % ---------------------------------------------------% Funo Sensibilidade S [as, bs, cs, ds] = feedbk (al, bl, cl, dl, 1); % ---------------------------------------------------% Funo Malha Fechada T [af, bf, cf, df] = feedbk (al, bl, cl, dl, 2); % ---------------------------------------------------% Filtro [ao, bo, co, do] = feedbk (ai, kif, ci, 0, 2); % ---------------------------------------------------% Resposta do Filtro Projetado figure; [yg, tg, xg] = lsim (ss(ao, bo, co, do), st, tt); plot(tg,yg) axis ([-0.000001 2.00001 -0.000001 1.200001]); title ('Resposta ao Degrau do Filtro Projetado'); xlabel('Tempo [s]');

11

ylabel('Amplitude [V] '); legend('Y', 'Location', 'Best'); grid; % ---------------------------------------------------% Valores Singulares de Sensibilidade figure; sigma(as, bs, cs, ds); title ('Valores Singulares de Sensibilidade'); legend('\sigma[S(j\omega)]','Location','Best'); grid; % ---------------------------------------------------% Valores Singulares de Rastreamento figure; sigma(af, bf, cf, df); title ('Valores Singulares de Rastreamento'); legend('\sigma[T(j\omega)]','Location','Best'); grid; % ---------------------------------------------------% Resposta do Sistema figure; [yg, tg, xg] = lsim (ss(af, bf, cf, df), st, tt); plot(tg,yg) axis ([-0.000001 2.00001 -0.000001 1.250001]); title ('Resposta ao Degrau do Sistema'); xlabel('Tempo [s]'); ylabel('Amplitude [V] '); legend('Y', 'Location', 'Best'); grid; % ---------------------------------------------------% Montagem do Controlador para o LabView [ax2, bx2, cx2, dx2] = series(ak, bk, ck, dk, 0, 1, 1, 0); [nx2, dx2] = ss2tf (ax2, bx2, cx2, dx2); [nk2, dk2] = c2dm (nx2, dx2, 0.02, 'tustin') % ---------------------------------------------------% Resposta do Sistema Real load C:\Users\Pessoal\Desktop\TCC\matlab-labview\testematlab4.txt t = testematlab4(:,1); e = testematlab4(:,2); y = testematlab4(:,3); plot(t,e,'b'); hold; plot(t,y,'r'); axis ([-0.000001 9.00001 99.99999 190.000001]); title ('Resposta ao Degrau do Sistema Real'); xlabel('Tempo [s]'); ylabel('Amplitude [ '); ] legend('Referncia','Sada', 'Location', 'Best'); grid; % ----------------------------------------------------

12

Você também pode gostar