Explorar E-books
Categorias
Explorar Audiolivros
Categorias
Explorar Revistas
Categorias
Explorar Documentos
Categorias
INSTITUTO DE TECNOLOGIA
FACULDADE DE ENGENHARIA ELTRICA
PROGRAMA DE EDUCAO TUTORIAL
CAMPUS UNIVERSITRIO DO GUAM
BELM-PAR
Autores
SUMRIO
1. Introduo ao SciLab
1.1 Matrizes e Vetores
2 Representao de Sistemas no Espao de Estado
2.1 Introduo
2.2 Conceituao
2.3 Soluo no Domnio do Tempo de Equaes de Estados Contnua
2.4 Equao de Estado Discreta
2.5 Simulao de Sistemas Dinmicos usando linhas de comando no Scilab
2.5.1 Sistema contnuo
2.5.2 Sistema discreto
2.6 Usando o ambiente Xcos
2.7 Exemplos de Sistemas Dinmicos em Malha Aberta no Xcos
2.7.1 Sistema contnuo
2.7.2 Sistema discreto
2.8 Converso do Espao de Estado Contnuo para Funo de Transferncia
2.9 Converso de uma Funo de Transferncia para Espao de Estado Contnuo
2.10 Controlabilidade, Observabilidade e Estabilidade para Sistemas Contnuos
2.11 Converso do Espao de Estado Discreto para Funo de Transferncia
2.12 Realizaes Cannicas para Sistemas Discretos
2.13 Controlabilidade, Observabilidade e Estabilidade para Sistemas Discretos
3. Aplicaes em Espao de Estados Utilizando o Silab
3.1 Problemas de Projeto de Regulador por Alocao e Polos
3.1.2 Caso contnuo: Resumo Terico
Alocao de Polos por Realimentao de Estados para Sistemas Contnuos
Projeto de Regulador Contnuo
3.1.3 Caso discreto: Resumo Terico
Posicionamento de Polos via Realimentao de Estados Discreta
Projeto de Regulador para Sistemas Discretos
3.2 Projeto de Servo sistema
3.2.1 Projeto de servo sistema quando a planta possui um integrador
3.2.1.1 Caso contnuo: Resumo Terico
Servo Sistema Contnuo quando a Planta Possui um Integrador
REFERNCIAS
1. Digital Control of Dynamic Systems. Gene F. Franklin, J. David Powell, Michel Workman.
Addison-Wesley, 1998.
2. Introduction to Digital Control Systems. Hugh F. Vanlandingham. Macmilliam Publishing
Company, 1985.
3. Engenharia de Controle Moderno. Katsuhiko Ogata. Pearson Educatio do Brasil, 2003.
4. Campos,
F.
F.,
2010,
Fundamentos
do
Scilab.
Disponvel
em:
<http://www.ime.unicamp.br/~encpos/VIII_EnCPos/Apostila_Scilab.pdf>. Acesso em: 20/10/
2015.
5. Gadelha,
Danusio
Filho,
2015
Scilab
5.X.
Disponvel
em:
<http://euler.mat.ufrgs.br/~giacomo/Manuais-softw/SCILAB/Apostila%20de%20Scilab%20%20atualizada.pdf>. Acesso em: 24/10/2015.
6. Mariani, Viviana Cocco; Preto, Tnia Martins; Guedes, Andr Luiz Pires. Utilizao do
Maple, Matlab e Scilab nos Cursos de Engenharia. COBENGE, 2005.
7. Pires,
Introduo
ao
Scilab
Verso
3.0,
2004.
Disponvel
<http://www.dca.ufrn.br/~pmotta/sciport-3.0.pdf>. Acesso em: 20/10/2015.
em:
1. Introduo ao SciLab
O Scientific Laboratory (SciLab) consiste em um ambiente de programao numrica
flexvel, que permite o desenvolvimento e implementao de algoritmos numricos em
diversas reas do conhecimento. Desenvolvido no INRIA (Institut National de Recherche
Informatique et en Automatique) e no ENPC (cole Nationale des Ponts et Chausses),
possui distribuio gratuita via internet (http://www.scilab.org) para diversas plataformas.
Dentre seus principais recursos e funcionalidades, destacam-se:
Cdigo fonte disponvel e linguagem simples;
Auxlio ao usurio (help);
Grficos bi e tri dimensionais, inclusive com animao;
Funes prontas para manipulao de matrizes e vetores;
Trabalha com polinmios, funes de transferncia e espao de estados;
Acesso a rotinas escritas nas linguagens FORTRAN ou C;
Suporte para o desenvolvimento de toolboxes, bibliotecas de funes criadas para
aplicaes especficas. Alm dos toolboxes desenvolvidos pelo Grupo Scilab, outros esto
disponveis tambm gratuitamente, como por exemplo: ANN (Artificial Neural Network
Toolbox), FISLAB (Fuzzy Logic Inference Toolbox) e o FRACLAB (Fractal, Multifractal
and Wavelet Analysis Toolbox).
Disponibilidade ao usurio de duas modalidades de programao: atravs de linhas de
comando, inseridas em sua rea de trabalho (Figura 1.1), ou por meio de diagramas de bloco,
construdos em um ambiente grfico prprio, denominado Xcos (Figura 1.2).
Se os valores dos vetores forem igualmente espaados, ele pode ser definido usando a
seguinte sintaxe:
vetor = valor_inicial : incremento : valor_final
-->c=5:5:30
Outro modo de criar um vetor de nmeros igualmente espaados num dado intervalo
usando a funo linspace:
vetor = linspace(valor_inicial, valor_final, nmero_de_elementos)
-->a=linspace(1,4,2)
-->a=linspace(1,4,1)
-->a=linspace(1,4,4)
-->a=linspace(1,4,3)
Operador de transposio ('): Transforma um vetor linha em um vetor coluna ou viceversa. Se o vetor tem elementos complexos, a transposio obtida pelo operador (.'). O uso
simples do operador (') resultar em um complexo conjugado transposto.
-->b=a'
-->v=[5+%i 2+%i*2]
-->v.'
//definindo vetor a
-->b=[5,3,2];
//definindo vetor b
-->a+b
//soma de vetores
-->a-b
//subtrao de vetores
-->3*a
-->a/2
-->norm(b)
Produto entre vetores: necessrio ter um vetor linha e um vetor coluna. Para obter o
produto de a e b definidos anteriormente, encontra-se primeiro a transposta de um dos
vetores.
-->b'
-->a*b'
//transposta de b
//a vezes a transposta de b
Para construir uma matriz, os elementos de uma mesma linha devem ser separados por
espao em branco ou vrgula e as linhas por ponto e vrgula ou Enter (Return).
-->A=[1 2 3;5 6 7]
Para modificar um elemento, basta index-lo no formato matriz (linha, coluna) e ento
atribuir-lhe um novo valor:
-->A(1,2)=8
-->size(C)
-->length(C)
-->B=[4 3 2; 8 3 5]
-->2*A
-->A/2
-->A+B
-->A-B
-->A'
-->B*A'
-->ones(2,2)
-->D=C(:,2)
-->E=C(1:2,2)
n 1
n 1
n2
y(t ) a1 y(t ) ... an1 y(t ) an y(t ) b1 u(t ) b2 u(t ) ... bn1 u(t ) bn u(t )
(1)
di (t )
V (t ) Ri (t ) L
Vc (t )
dVc (t )
d 2Vc (t )
dt
Soluo:
LC
Vc (t )
V (t ) RC
dt
dt 2
i (t ) i (t ) C dVc (t )
dt
n2
Y ( S ) b1 S b2 S ... bn1 S bn
G(S )
n
n 1
U (S )
S a1 S ... an1 S an
(2)
; C.I .nulas
Soluo: V (t ) RC
2
2
dt
dt
V ( s) LCs RCs 1
A anlise do sistema, incluindo o projeto de um controlador para este, pode ser feita a
partir da Eq. 2, pelo uso de tcnicas clssicas de controle, como por exemplo: Critrio de
Routh, Lugar Geomtrico das Razes, Diagrama de Bode, Diagrama de Nyquist, etc. Por outro
lado, a Eq. 1 (sistema monovarivel) pode ainda ser representada no domnio do tempo, por
um conjunto de n equaes diferenciais de 1a ordem, Eq. 3a e 3b, onde x(t ) R n o vetor de
estados, u (t ) R m o vetor de entradas de controle (ou de ao de controle) e y R o vetor
p
de sadas (ou respostas). A n,n a matriz caracterstica do sistema (matriz de evoluo), B n,m
a matriz de entradas, C p,n a matriz de sadas e D p,m a matriz de transmisso direta.
x (t ) n,1 An,n x(t ) n,1 Bn,1 u(t )1,1
Equao de estado
(3.a)
Equao de sada
(3.b)
V (t ) Ri (t ) L dt Vc (t )
dV
(
t
)
c
i(t ) i (t ) C
dt
X (t ) A. X (t ) B.u (t )
Y (t ) C. X (t ) D.u (t )
a)
Definindo :
x1 (t ) i (t )
x1 (t ) i (t ) [V (t ) Rx1 (t ) x 2 (t )] / L
x 2 (t ) Vc (t )
x 2 (t ) Vc (t ) x1 (t ) / C
1
R
1
L x(t ) V (t )
x(t ) L
L
1
0
0
C
y (t ) 0 1x(t )
b)
Definindo :
x1 (t ) Vc (t )
x 2 (t )
x1 (t ) x 2 (t )
dVc (t )
dt
x 2 (t ) Vc (t ) [V (t ) RCx 2 (t ) x1 (t )] / LC
1
0
0
1
R
x1 (t )
x(t ) 1 V (t )
L
LC
LC
y (t ) 1 0x(t )
y1 (t ) 1 0 x1 (t )
Se considerarmos duas sadas : Vc (t ) e i(t ) C Vc (t ), ento : Y
y 2 (t ) 0 C x 2 (t )
Definindo : x1 (t ) Vc (t ) Ri (t )
c)
x2 (t )
x1 (t ) x2 (t ) R i (t ) x2 (t ) RC x 2 (t )
dVc (t )
dt
x 2 (t ) Vc (t ) [V (t ) x1 (t )] / LC
R
R
1
x(t ) L V (t )
x(t ) L
1 0
1
LC
LC
y (t ) 1 RC x(t )
1
S
1
S
1
S
6
11
x1 y
x2 y
x3 y
x x2
.
x 2 x3
x 3 x1 11 x2 6 x3 6u
Ento:
1
0
0
0
x 0
0 1 x 6 0 u
1 11 6
6
y 1 0 0x
x1
x x2
x
3
onde
2.2. Conceituao
variveis de estado) tal que, o conhecimento destas variveis em t = t0, juntamente com a
entrada u(t) para t t0, determina completamente o comportamento do sistema (suas sadas)
para qualquer instante t t0.
Vetor de estado: um vetor contendo todas as variveis de estado.
A escolha das variveis de estado no nica, assim, um mesmo sistema pode ter mais
de uma representao de estados (Ex3 e Ex4). Em geral, so escolhidas de modo que
correspondam a quantidades fsicas mensurveis (mas no necessariamente), ou que levem a
simplificao de equaes. Em circuitos eltricos em geral so as tenses nos capacitores e as
correntes nos indutores, em sist. mecnicos so as posies e as velocidades das massas.
Espao de estados: o espao n dimensional cujos eixos de coordenadas so
constitudos pelas variveis de estado ( x1, x2,..., xn). Qualquer estado pode ser representado
por um ponto no espao de estados.
Estado em um dado instante de tempo representado por um ponto do espao de
estados. Com o tempo, o estado se modifica e novos pontos do espao de estados so
sucessivamente definidos. A evoluo desses pontos forma a trajetria de estados do
sistema.
2.3. Soluo no Domnio do Tempo de Equao de Estados Contnua
Para um sistema com estado inicial x(t 0 ) x0 representado pela Eq. 3.a, a soluo da
equao de estados dada pela Eq. 4.
x(t ) e A ( t t0 ) x0
A ( t )
B u ( ) d .
(4)
t0
(t ) L1 sI A
(5)
u(t)
X = AX + Bu
X(t) C
y(kT)
(6)
y(kT ) CX (kT )
(7)
e AT
(8)
T
e A .d.B
0
(9)
O sistema discreto equivalente na forma de espao de estados dado pelas Eq. 10 e 11,
onde o perodo de amostragem e k = 0, 1, 2,.... sendo e calculados pelas Eq. 8 e 9.
X (kT T ) X (kT ) u(kT )
(10)
(11)
(T ) Z 1 zI A
(12)
Sistema contnuo
0 1
0
X (t ) u(t )
X (t ) A.X (t ) B.u(t )
2 3
1
y(t ) C.X (t ) 1 0X (t )
-->spec(A)
-->t=0:0.01:5;
-->u=ones(t);
-->X0=[1;0.5];
--> [y,X]=csim(u,t,Sys,X0);
//Simulao do sistema
-->plot(t',X(1,:)','colo','black','linest','-');plot(t',X(2,:)','colo','black','linest','-.') //Grficos
-->xlabel("tempo (seg.)", "fontsize", 2);
-->hl=legend(['X1';'X2']);
2.5.2
Sistema discreto
0 1
0
X (t ) u(t )
X (t ) A.X (t ) B.u(t )
2 3
1
y(t ) C.X (t ) 1 0X (t )
Adotando como perodo de amostragem dt = 0.1, e sendo u(t) um degrau unitrio, ser
comparada a resposta do sistema contnuo com a de seu equivalente discreto (segurador de
ordem zero) considerando o estado inicial nulo. As respostas resultantes so mostradas na
Figura 2.3.
A=[0 1;-2 -3]; B=[0;1]; C=[1 0;0 1]; D=[0;0];
Sysc=syslin('c',A,B,C,D);
X0=[0;0];
spec(A)
t=0:0.01:5;
uc=ones(t);
[y,X]=csim(uc,t,Sysc,X0);
//Simulao do sistema
plot(t',X(1,:)','colo','black','linest','-');plot(t',X(2,:)','colo','black','linest','-.')
//Grficos
hl=legend(['X1';'X2']);
dt=0.1;
Sysd=dscr(Sysc,dt);
t=0:dt:5;
ud=ones(t);
[Xd]=ltitr(Sysd.a,Sysd.b,ud,X0);
plot(t',Xd(1,:)','colo','black','linest','-', 'markstyl','diam');
//Grficos
plot(t',Xd(2,:)','colo','black','linest','-.', 'markstyl','diam');
//Grficos
vermelho. Usando o bloco MUX, da paleta Roteamento de sinal, pode-se inserir mais de um
sinal escalar em apenas um bloco CSCOPE.
A paleta Operaes Matemticas (Fig. 2.9) apresenta blocos que contm diversas
operaes desta natureza, dos quais se destacam: SUMMATION usado para somar ou subtrair
sinais e GAINBLK para implementar um ganho (multiplicao por uma constante).
Uma vez selecionados os blocos a serem utilizados, necessrio realizar sua conexo,
feita clicando com o boto esquerdo do mouse na sada de um bloco e, mantendo-o
pressionado, ligando-se na entrada do bloco com o qual se deseja conectar, conforme exibido
na Figura 2.12. O Xcos apresenta dois tipos diferentes de conexes entre blocos: regular
(sinais), de cor azul e com as portas localizadas nas laterais do bloco, e de ativao (evento),
de cor vermelha e com as portas localizadas no topo ou na base do bloco.
Sistema contnuo
Seja um sistema contnuo representado pela seguinte equao de estado onde u(t) um
degrau unitrio aplicado aos 5 segundos e X(0) = [1 0.5]t.
0 1
0
X (t ) u(t )
X (t ) A.X (t ) B.u(t )
2 3
1
y(t ) C.X (t ) 1 0X (t )
Figura 2.16: Variveis de estado x1 e x2 do sistema contnuo com estado inicial X0 = [1 0.5]t
e submetido a uma entrada degrau aplicada em 5 segundos.
2.7.2
Sistema discreto
Considerando o mesmo sistema contnuo do item 3.5.1, sob as mesmas condies, ou seja:
estado inicial X0=[1 0.5]t e submetido a uma entrada degrau aplicada em 5 segundos. Sua
resposta ser comparada com a de seu equivalente discreto (segurador de ordem zero)
adotando como perodo de amostragem Ts = 0.1.
Utilizando as linhas de comando a seguir na rea de trabalho,
-->A=[0 1;-2 -3];B=[0;1];C=[1 0;0 1];D=[0;0];
-->Sysc=syslin('c',A,B,C,D);
-->dt=0.1;
-->Sysd=dscr(Sysc,dt)
O diagrama de blocos para simulao deste sistema est ilustrado na Figura 2.17, onde as
especificaes para o degrau, scope e clock foram mantidas as mesmas do item 2.7.1 e a
especificao do segurador de ordem zero (S/H) est mostrada na Figura 2.18. Os resultados
obtidos na simulao constam na Figura 2.19 de onde se observa que so os mesmos do
sistema contnuo.
Figura 2.19: Variveis de estado x1 e x2 do sistema discreto com estado inicial X0=[1
0.5]t e submetido a uma entrada degrau aplicada em 5 segundos.
Y ( s)
C ( sI A) 1 B D T ( s)
U ( s)
(13)
Para o caso de sistemas SISO (uma entrada, uma sada) T(s) uma funo de
transferncia, relao entre as transformadas de Laplace dos sinais de sada e entrada do
sistema. Para sistemas MIMO, T(s) uma matriz de transferncia de dimenso p x m .
Da Eq. 13 conclui-se que o polinmio caracterstico ou Eq. caracterstica, denominador da
funo de transferncia, dado pela Eq. 14 cujas razes so os polos do sistema.
det(sI A) 0
(14)
b1 s n 1 b2 s n 2 bn
Y ( s)
n
U ( s)
s a1 s n 1 a 2 s n 2 a n
(15)
0
y b1
a2
0
1
b2
a3
1
0 x c 0 u
0
0
b3 x c
a1
x o a 2
a3
y 1
x co
0
1
0
0 a3
1
0 a 2 x co 0 u
0
1 a1
2 3 x co
0
x ob 0
a3
y 1
3 b1 b2
1 0
b1
0 1 x o b2 u
b3
0 0
0 0 xo
1
0
a2
1 a1
b3 0 1
0 0
0
a2
a1
1
0
1
1 xob 2 u
3
a1
0 x ob
1
(16)
(18)
Um sistema ser dito observvel se todo estado x(t 0 ) puder ser determinado pela
observao de y (t ) durante um intervalo de tempo finito t 0 t t1 . O sistema , portanto,
completamente observvel se cada transio do estado puder afetar cada elemento do vetor de
sada. Ou seja, um sistema ser dito observvel no instante t 0 se, com o sistema no estado
x(t o ) , for possvel determinar esse estado a partir da observao da sada durante um
intervalo de tempo finito. Para tanto, necessrio que a matriz de observabilidade, definida
pela Eq. 19, seja de posto completo, isto , possua todas as linhas linearmente independentes.
M obs
CA
CA 2
CA n1
(19)
Sistemas contnuos so estveis se todos os seus polos tem parte real negativa. Assim
quando se tem um sistema contnuo representado na forma de espao de estados, sua
estabilidade pode ser avaliada a partir da determinao das razes do polinmio caracterstico
dada pela Eq. 14.
Y ( z)
C ( zI ) 1 D T ( z )
U ( z)
(20)
Para sistemas SISO T(z) uma funo de transferncia, relao entre as transformadas Z
dos sinais de sada e entrada do sistema. Para sistemas MIMO T(z) uma matriz de
transferncia de dimenso p x m .
Da Eq. 20 conclui-se que o polinmio caracterstico dado pela Eq. 21, tambm
denominada equao caracterstica cujas razes so os polos do sistema.
det(zI ) 0
(21)
U( z) 1 a1z1 a 2 z2 a 3 z3
(22)
b2
a 3 x1 (kT) 1
0 x 2 (kT) 0u(kT)
0 x3 (kT) 0
x1 (kT)
b 3 x 2 (kT)
x3 (kT)
1
0
0
0
0 x1 (kT) b1
1 x 2 (kT) b 2 u(kT)
0 x3 (kT) b 3
x1 (kT)
0 x 2 (kT)
x3 (kT)
Ccont = 2 ........ n1
(23)
Oobs = C C C 2 ........ C n1
(24)
Sistemas discretos so estveis se todos os seus polos tem mdulo menor ou igual a um.
Assim quando se tem um sistema discreto representado na forma de espao de estados, sua
estabilidade pode ser avaliada a partir da determinao das razes do polinmio caracterstico
dado pela Eq. 21.
com soluo via SciLab por linha de comando ou usando o Xcos so apresentados:
Projeto de regulador por alocao de polos (Contnuo e Discreto);
Projeto de servo sistema com planta tipo um (Contnuo e Discreto);
Projeto de servo sistema com planta tipo zero (Contnuo e Discreto);
Observadores de estado (Discreto);
Projeto de sistemas reguladores com observadores;
K [k1
k2 kn ]
(25)
Para um sistema em malha aberta representado no espao de estados pelas Eq. 3.a e 3.b (D
=0), ao se fechar a malha com realimentao de estados, o sinal de controle u(t) dado pela
Eq. 26, onde K dado pela Eq. 25.
u(t ) Kx(t )
(26)
(27)
Assim a Eq. caracterstica de malha fechada, Eq. 28, funo dos elementos ki do vetor K.
det(sI ( A BK )) 0
(28)
Supondo que se deseje i (i = 1, ..., n ) como polos de malha fechada, ento o polinmio
caracterstico desejado de malha fechada dado pela Eq. 29.
(29)
(30)
Onde M Cont a matriz de controlabilidade (Eq. 18) e Pd (A) , equao 31, uma matriz
formada a partir do polinmio caracterstico desejado em malha fechada (Eq. 29), onde se
substitui a varivel s pela matriz A do sistema.
Pd ( A) An an1 An1 a1 A a0 I
(31)
(32)
(33)
O vetor ganho de realimentao de estados K pode ser obtido por alocao de polos:
igualando as equaes 28 e 29 ou usando a Eq. 30.
________________________________________________________________________
1
0
0
0
1 e B
Para um sistema dinmico contnuo definido por A 0
1 5 6
0
0, ser
1
determinado o ganho de realimentao de estados K tal que os polos de malha fechada sejam
1 = -2 + j4, 2 = -2 - j4 e 3=-10 para resolver o problema de regulao. Em seguida, o
sistema em malha fechada ser simulado considerando o estado inicial x(0) = [1 0 0]t e uma
perturbao externa do tipo degrau de amplitude 15 ocorrendo aos 5 segundos.
Este problema corresponde aos exemplos 12.1, 12.2 e 12.3 (OGATA, 2003) e sua soluo
por linha de comando apresentada na Tabela 3.1. O resultado obtido exibido na Fig. 3.2.
Tabela 3.1: Projeto de regulador contnuo por alocao de polos.
A=[0 1 0;0 0 1;-1 -5 -6]; B=[0;0;1];
rank(Q)
pds=(%s+2-%i*4)*(%s+2+%i*4)*(%s+10);
pdA=A^3+14*A^2+60*A+200*eye(3,3);
se controlvel.
Eq. caracterstica desejada em malha
fechada e matriz P(A)
K=[0 0 1]*Q^-1*pdA ;
Frmula de Ackermann
Amf=(A-B*K);
Bmf=[0 0 1]';
Cmf=[1 0 0;0 1 0;0 0 1];
Dmf=[0;0;0];
X0=[1 -1 0]';
Estado inicial
Sysmf=syslin('c',Amf,Bmf,Cmf,Dmf,X0);
t=0:0.01:15;
i= max(size(t)) ; j= round(i/2)
u1=zeros(1:j);u2=ones(j+1:i);u=15*[u1 u2];
aplicada em 8 segundos.
X=csim(u,t,Sysmf);
plot(t',X(1,:)','colo','black','linest','-');
Grficos de x1 x2 e x3.
plot(t',X(2,:)','colo','black','linest','-.');
plot(t',X(3,:)','colo','black','linest',':');
xlabel("t(seg.)", "fontsize", 2);
ylabel("x1(t),x2(t),x3(t)", "fontsize", 3);
Figura 3.2: Resposta condio inicial x(0) = [1 0 0]t e degrau de amplitude 15 aplicado
aos 8 segundos usando linha de comando, caso contnuo.
Utilizando o valor obtido por linha de comando para o ganho de realimentao K, a
implementao usando o Xcos feita conforme a Fig. 3.3. Os resultados da simulao esto
na Fig. 3.4.
Figura 3.4: Resposta condio inicial x(0) = [1 0 0]t e degrau de amplitude 15 aplicado
aos 7 segundos usando o Xcos, caso contnuo.
3.1.2 Caso discreto
________________________________________________________________________
Resumo Terico:
Posicionamento de Polos via Realimentao de Estados Discreta
Se o sistema discreto controlvel, pode-se posicionar arbitrariamente seus polos de
malha fechada no plano Z, pelo uso de uma realimentao de estados ponderada por um vetor
de ganhos apropriado, de acordo com a Eq. 34.
K [k1
k2 kn ]
(34)
O clculo do vetor K pode ser feito de forma anloga s apresentadas para o caso
contnuo.
Para um sistema em malha aberta representado no espao de estados pelas equaes 10 e
11 com D = 0, ao se fechar a malha com realimentao de estados, o sinal de controle u(kT)
dado pela Eq. 35, onde K dado pela Eq. 34.
u(kT ) Kx(kT )
(35)
A equao de estado do sistema em malha fechada dada pela Eq. 36. Assim a equao
caracterstica de malha fechada dada pela Eq. 37 que funo dos elementos ki do vetor K.
x(kT T ) K x(kT )
det(zI ( K )) 0
(36)
(37)
Supondo que se deseje 1, 2, ..., n como polos de malha fechada, ento a equao
caracterstica desejada de malha fechada dada pela Eq. 38.
P ( z ) z 1 z 2 z n z n an1 z n1 a1 z a0 0
c
(38)
(39)
(40)
w(kT)
r(kT)=0 u(kT)
G
+
+
X(kT)
z1
y(kT)
K
Figura 3.5: Regulao com realimentao de estados
Assim os polos de malha fechada so as razes do polinmio caracterstico que agora
dado pela Eq. 37. Pode-se ento usar um dos dois procedimentos descritos anteriormente para
calcular K (igualar as equaes 37 e 38 ou usar a Eq. 39).
________________________________________________________________________
O mesmo exemplo do item 3.1.1 ser resolvido considerando que se deseje uma
realimentao dos estados discretos. Ser considerado um perodo de amostragem Ts = 0.02.
A soluo apresentada na Tabela 3.2 e as respostas so mostradas na Figura 3.6.
Tabela 3.2: Projeto de regulador discreto por alocao de polos.
A=[0 1 0;0 0 1;-1 -5 -6]; B=[0;0;1];
C=[1 0 0;0 1 0;0 0 1]; D=[0;0;0];
Sysc=syslin('c',A,B,C,D);
Matrizes A, B, C e D do sistema
contnuo.
Definio do sist. em tempo contnuo.
dt=0.02;
Perodo de amostragem
Sysd=dscr(Sysc,dt);
F=Sysd.a;
discreto.
G=Sysd.b;
Matriz de controlabilidade e
rank(Cont)
p1=exp((-2+%i*4)*dt);
p2=exp((-2-%i*4)*dt); p3=exp((-10)*dt);
verificao se controlvel.
Mapeamento dos polos especificados
no plano S para o plano Z (z=esdt)
pdz=(%z-p1)*(%z-p2)*(%z-p3)
pF=F^3-2.7341639*F^2+2.4913403*F-
fechada
0.7557837*eye(3,3);
Matriz P(FI).
K=[0 0 1]*Cont^-1*pF ;
Frmula de Ackermann
Fmf=(F-G*K);
Gmf=G;
Cmf=[1 0 0;0 1 0;0 0 1];
Dmf=[0;0;0];
X0=[1 -1 0]';
Estado inicial
Sysmf=syslin('d',Fmf,Gmf,Cmf,Dmf,X0);
t=0:dt:15;
i= max(size(t)); j= round(i/2);
aplicada em 8 segundos.
Simula o sist. discreto em malha
fechada.
Grficos de x1, x2 e x3.
Figura 3.6: Resposta condio inicial x(0) = [1 0 0]t e degrau de amplitude 15 aplicado
aos 8 segundos por linha de comando, caso discreto.
Com o valor obtido por linha de comando para o ganho de realimentao K, a
implementao usando o Xcos mostrada na Fig. 3.7 e os resultados da simulao na Fig.
3.8.
Figura 3.8: Resposta condio inicial x(0) = [1 0 0]t e degrau de amplitude 15 aplicado
aos 7 segundos usando o Xcos, caso discreto.
x2 (t )
kn ]
x (t )
n
u(t ) [ 0 k2 k3 ...
(41)
k1[r (t ) x1 (t )] KX (t ) k1r (t )
X (t ) ( A BK ) X (t ) Bk1r (t )
(42)
Y ( s)
1
, projetar um
U ( s) s( s 1)(s 2)
controlador por realimentao de estados que rastreie uma entrada de referncia degrau
s2=tf2ss(s1);
Converta a FT p/ espao de
estados
Matrizes do sistema representado
desejados
em
malha
fechada.
s+14s+56s+160
P1=A^3+14*A^2+56*A+160*eye(3,3);
K=[0 0 1]*Q^-1*P1;
Aa=(A-B*K);
Ba=(B*K(1));
Frmula de Ackermann
Da=[0;0;0];
Gma=syslin('c',A,B,C,D);
transmisso
t=0:0.01:5;
projetado (respectivamente)
direta
do
sistema
u=ones(t);
[y,X]=csim(u,t,Gma);
G ma
(malha
sistema
G mf (malha
plot(t',Xmf(1,:)','colo','black','linest','-');
plot(t',Xmf(2,:)','colo','black','linest','-.');
plot(t',Xmf(3,:)','colo','black','linest',':');
de estado no vetor y.
Plota o grfico da resposta em
malha fechada.
As respostas ao degrau unitrio so dadas nas Figuras 3.10 e 3.11, para o sistema em
malha aberta e em malha fechada, respectivamente.
k1
+
- -
X(k+1)=X(k)+u(k)
Y(k)=CX(k)
u
-
y = CX
y = x1
k2
k3
kn
Figura 3.14: Configurao de servo sistema discreto com a planta tipo um.
u(kT ) [ 0 k2 k3 ...
x (kT )
1
x
(
kT
)
kn ] 2
x (kT )
n
(43)
k1[r (kT ) x1(kT )] KX (kT ) k1r (kT )
(44)
1
Y (s) , considerando x1 y; x 2 y , sua
Gp(s)
s(s 1) U (s)
0 1
0
. Adotando como perodo de amostragem Ts =
X (t )
X (t ) u(t )
0 1
1
y(t ) 1 0X (t )
0.1, deseja-se determinar uma realimentao de estados discreta tal que o sistema em malha
fechada rastreie uma entrada degrau unitrio e tenha os seguintes polos de malha fechada no
plano Z: p1 = p2 = 0.5. A soluo apresentada na Tabela 3.4 e as respostas so mostradas na
Figura 3.15.
Tabela 3.4: Projeto de servo sistema discreto
A=[0 1;0 1]; B=[0;1]; C=[1 0]; D=0;
Sysc=syslin('c',A,B,C,D);
dt=0.1;
Perodo de amostragem.
Sysd=dscr(Sysc,dt);
FI=Sysd.a; GAMA=Sysd.b;
discreto.
rank(Cont)
p1=0.5; p2=0.5;
Matriz
de
controlabilidade.
d=conv(d1,d2);
K=[0 1]*inv(Cont)*alfacFI;
Frmula de Ackermann
k1=K(1);
Amf=[FI-GAMA*K]; Bmf = k1*GAMA;
Cmf = [1 0;0 1]; Dmf=[0;0];
Sysmf=syslin('d',Amf,Bmf,Cmf,Dmf);
t=0:dt:5;
u=ones(t);
X=dsimul(Sysmf,u);
plot(t',X(1,:)','colo','black','linest','-');
plot(t',X(2,:)','colo','black','linest','-.');
O sistema em malha aberta (ki = 0, K = [0 ... 0]) descrito pelas Eq. 45 a 47. Definindo
um vetor de estado aumentado conforme a Eq. 48, o sistema em malha aberta com o vetor
aumentado dado pela Eq. 49 ou Eq. 50 para r = 0, sem perda de generalidade.
X (t ) AX (t ) Bu(t )
(45)
(46)
y(t) CX (t)
(t )
X (t ) A
C
(t )
(47)
(48)
(49)
0 X (t ) B 0
u r (t )
0 (t ) 0 1
^
X (t ) A X (t ) B u(t )
(50)
^ ^
Se < A,B > controlvel e no havendo nenhum zero na origem, pode-se usar a lei de
controle da Eq. 51 para fechar a malha. Assim, o sistema em malha fechada dado pela Eq.
52 e os polos de malha fechada so obtidos pela Eq. 53.
^ ^
X (t )
u(t ) KX (t ) ki (t ) k1 k 2 k n - ki
K
X (t )
(t )
X (t ) A BK
(t )
0
Bki X (t )
r (t ) X mf Amf X mf B mf u
^
^
^
0 (t )
1
y mf C mf X mf
(51)
(52)
(53)
Ainda possvel utilizar a tcnica de alocao de plos para determinar o vetor de ganhos
K, sendo que, agora, deve-se especificar n+1 plos desejados de malha fechada. Segue um
algoritmo para projeto usando a frmula de Ackermann (Eq. 30):
1. Verificar se o sistema aumentado controlvel:
^
^n ^
^ 1
^ ^ ^ ^2 ^
M cont B A B A B A B C
(54)
(55)
^ n 1
P( A) Pd ( A) A
^n
^ n 1
n A n -1 A
1 A o I
(56)
K usando Ackermann.
^ 1
K 0 0 1M cont Pd ( A)
^
(57)
________________________________________________________________________
Para exemplificar este caso considera-se o controle do pndulo invertido, mostrado na Fig.
3.19. Deseja-se manter, tanto quanto possvel, o pndulo invertido na vertical a partir do
movimento do carro. Supondo e pequenos, tal que sen , cos 1 e 2 0 , o
modelo linear do pndulo invertido dado por:
Ml ( M m) g u
Mx u mg
20,601 u
x 0,5u 0,4905
1
0
20.601 0
A
0
0
0.4905 0
0 0
0 0
;B
0 1
0 0
0
1; C 0 0 1 0 e D 0
0
0.5
Sistema
aumentado
em
malha
Q=[Bhat
Ahat*Bhat
Ahat^2*Bhat
Ahat^3*Bhat se controlvel.
Ahat^4*Bhat];
rank(Q)
polos=[-1+%i*sqrt(3) -1-%i*sqrt(3) -5 -5 -5];
P=(%s+1%i*sqrt(3))*(%s+1+%i*sqrt(3))*(%s+5)*(%s+5)*(%s+5)
Polos
desejados
em
malha
fechada.
Eq. caracterstica desejada em
malha fechada.
Eq. Caracterstica com s=A
PA=500*eye(5,5)+550*Ahat+335*Ahat*Ahat+109*
Ahat^3+17*Ahat^4+Ahat^5;
Khat=[0 0 0 0 1]*Q^-1*PA;
Ackermann, Eq. 57
k1=-Khat(1,5);
Ganho
K=Khat(1,1:4);
do
integrador
da
Ca=[1 0 0 0 0];
Da=[0];
Sysmf=syslin('c',Aa,Ba,Ca,Da);
t=0:0.01:5;
Tempo de simulao
u=ones(t);
[ymf,Xmf]=csim(u,t,Sysmf);
Simula o sistema
para a
plot(t',Xmf(1,:)','colo','black','linest','-');
plot(t',Xmf(2,:)','colo','black','linest','-.');
plot(t',Xmf(3,:)','colo','black','linest',':');
vetor Xmf.
plot(t',Xmf(4,:)','colo','black','linest',':');
xlabel("t(seg.)", "fontsize", 2);
ylabel("x1(t), x2(t), x3(t), x4(t)", "fontsize", 3);
ei(k)
1
z 1
h
xi(k)
yi(k)
X(k+1)
Ki
z-1
y(k)
X(k)
K
Figura 3.23: Configurao de servo sistema discreto com a planta tipo zero
Para o integrador, tm-se as Eq. 58 e 59. Resultando no diagrama de simulao da Fig.
3.24, onde xi(k) definindo como varivel de estado.
xi(z)z - xi(z) =Ei(z)
(58)
(59)
ei(k)
xi(k+1)
z-1
xi(k)
h yi(k)
(60)
yi(k) = hxi(k)
(61)
(62)
y(k) = CX(k)
(63)
xi (k )
(65)
X A X B u(k )
^
(64)
Y C X
Se o sistema aumentado em malha aberta for controlvel (determinante no nulo da matriz
de controlabilidade, Eq. 66), ento, pode-se usar a ao de controle da Eq. 67, para fechar a
malha e reposicionar os polos.
^
Cont
^ n ^
^ ^ ^
B A B A B
(66)
^
(67)
(68)
xi (k )
X (k 1) K
x (k 1) C
i
y (k ) C 0 X (k )
y ' ( k ) 0 h x ( k )
k i h X (k ) 0
r (k )
1 xi (k ) 1
(69)
Definindo os n+1 plos desejados de malha fechada, Eq. 70, o vetor K pode ser obtido
pela frmula de Ackermann, Eq. 71.
(70)
K 0 0 1Cont Pd ( A)
^
(71)
________________________________________________________________________
Para exemplificar o caso discreto de rastreamento com realimentao de estados quando a
planta no tem integrador (tipo zero), ser considerado o mesmo exemplo do item 3.2.2.1, ou
seja, o pndulo invertido. A soluo apresentada na Tabela 3.6 e as respostas so mostradas
na Fig. 3.25.
Tabela 3.6: Projeto de servo sistema discreto quando a planta no possui integrador.
A=[0 1 0 0;20.601 0 0 0;0 0 0 1;-0.4905 0 0 0];
CeD
Sysc=syslin('c',A,B,C,D);
dt=0.1;
Perodo de amostragem
Sysd=dscr(Sysc,dt);
F=Sysd.a; G=Sysd.b;
Matrizes e
dt]; Da=[0];
Matriz
rank(Cont)
de
controlabilidade.
Verifica se controlvel.
fechada
no
plano
mapeamento p/ o plano Z.
pz5= exp(ps(5)*dt);
d1=[1 -pz1]; d2=[1 -pz2]; d3=[1 -pz3]; d4=[1 -pz4];
d5=[1 -pz5];
d12=conv(d1,d2); d34=conv(d3,d4);
d1234=conv(d12,d34); d=conv(d1234,d5)
malha fechada em Z.
alfacFI=Fa^5+-3.6021895*Fa^4+5.1659692*Fa^3-
3.680229*Fa^2+1.3013339*Fa-0.1826835*eye(5,5);
K=[0 0 0 0 1]*inv(Cont)*alfacFI;
Frmula de Ackermann
k1= -K(1,5);//ki*dt
Amf=[[F-G*K(1,1:4)
G*k1];[-C
1]];
Bmf
=[zeros(4,1);1];
Cmf
[eye(4,4)
zeros(4,1);zeros(1,4)
dt];
Dmf=zeros(5,1);
Sysmf=syslin('d',Amf,Bmf,Cmf,Dmf);
t=0:dt:5;
Tempo de simulao
u=ones(t);
X=dsimul(Sysmf,u);
plot(t',X(1,:)','colo','black','linest','-');
plot(t',X(2,:)','colo','black','linest','-.');
plot(t',X(3,:)','colo','black','linest','-');
traa os grficos.
plot(t',X(4,:)','colo','black','linest','-.');
xlabel("kTs(seg.)", "fontsize", 2);
ylabel("x1(kTs), x2(kTs), x3(kTs), x4(kTs)", "fontsize",
3);
title('Resposta a entrada degrau com realimentao
de estado discreta')
(72)
y(t ) C x(t )
(73)
.
u
~
x A~
x Bu K e ( y C~
x ) ( A K eC)~
x Bu K e y ( A K e C ) ~
x B K e
y
(74)
e x~
x
(75)
e x ~
x Ax A~
x K e (Cx C~
x ) ( A K e C )( x ~
x ) e ( A K e C )e
(76)
(77)
Pd ( A) An a1 An1 an I
(78)
K e Pd ( A)(M obs ) 1 0 0 1
T
(79)
Definindo o vetor de estado aumentado conforme a Eq. 80 e utilizando as Eq. 72, 73 e 74,
o conjunto planta mais observador representado pela Eq. 81.
X (t )
X a (t ) ~
X (t )
X (t ) A
X a (t )
~
KC
X (t ) e
y (t ) C 0 X (t )
~
~
y (t ) 0 C X (t )
(80)
X (t ) B
~
u (t )
A K e C X (t ) B
(81)
Supondo que se use o estado estimado para realimentao, a ao de controle dada por
u(t ) Kx(t ) , passa a ser expressa pela Eq. 82. Assim, o sistema com observador mais
u (t ) K x(t )
X (t ) A
X a (t )
~
KC
X (t ) e
y (t ) C 0 X (t )
~
~
y (t ) 0 C X (t )
(82)
X (t )
~
A K e C BK X (t )
BK
(83)
Princpio da Separao
O problema de alocao de polos usando realimentao de estados e o problema de
projeto de um estimador de estados so no interativos para sistemas lineares, ou seja: o uso
~
de X (t ) , no lugar de X(t), no altera a localizao dos polos escolhidos para o sistema em
malha fechada; uma modificao nos ganhos da realimentao de estados no alteram a
localizao dos polos do estimador (VANLANDINGHAM, 1985). Assim, pode-se proceder
de forma independente, isto : projeta-se o controlador considerando o vetor de estados
disponvel, projeta-se o estimador de estados para o sistema em malha aberta e por fim utiliza~
se o estado estimado X (t ) para fazer a realimentao de estados.
X (t ) deve ser uma boa estimativa de X(t), ser considerado um sistema dinmico definido
1
0
por: A
;B
20.6 0
0
1 ; C 1 0 e D 0 , (OGATA, 2003). Na Tabela 4.7 tem-se a
implementao por linha de comando, onde se verifica inicialmente que o sistema instvel,
assim, projeta-se um regulador, tal que os polos de malha fechada sejam: p1 = -1.8 + j2.4 e p2
= -1.8 - j2.4, supondo disponvel o vetor de estados X(t) resultando K = [29.6 3.6]. Em
seguida faz-se a simulao supondo que o vetor de estado X(t) esteja disponvel.
Supondo que apenas a varivel de estado x1 esteja disponvel, verifica-se se o sistema
observvel e projeta-se um estimador de ordem completa com polos em p1e = p2e = -8,
resultando no vetor de ganhos do estimador Ko = [16 84.6]t .
Por fim cria-se um sistema aumentado: planta, estimador mais controlador com
realimentao do estado estimado e simula-se este sistema com resultados apresentados na
Fig. 3.28.
Matrizes A, B e C
spec(A)
Q=[B A*B];
Matriz de controlabilidade e
rank(Q)
verificao se controlvel.
pds=(%s+1.8-%i*2.4)*(%s+1.8+%i*2.4)
pdA=A^2+3.6*A+9*eye(2,2);
K=[ 0 1]*Q^-1*pdA ;
Frmula de Ackermann
Amf=(A-B*K);
Bmf=[0 1]';
Sysmf=syslin('c',Amf,Bmf,Cmf,Dmf,X0);
t=0:0.01:15;
u=zeros(t);
Entrada nula
X=csim(u,t,Sysmf);
subplot(221)
plot(t',X(1,:)','colo','black','linest','-');
plot(t',X(2,:)','colo','black','linest','-.');
grficos.
xlabel("I
Matriz de observabilidade e
verificao se observvel
Eq. Carac. desejada p/ o
pdeA=A^2+16*A+64*eye(2,2);
Ko=pdeA*((O')^-1)*[ 0 1]' ;
2.44
Bbig=zeros(4,1);
Matrizes
do
sist.
aumentado:
Cbig=eye(4,4);
Dbig=[0;0;0;0];
e observador.
X0til=[1 -1 0 0]';
Sysbig=syslin('c',Abig,Bbig,Cbig,Dbig,X0til);
Xbig=csim(u,t,Sysbig);
Sist. aumentado
subplot(222)
plot(t',Xbig(3,:)','colo','black','linest','-');
os grficos de x1 e x2.
plot(t',Xbig(4,:)','colo','black','linest','-.');
xlabel("II
Fig. 3.28: I) x1(t) e x2(t) exatos II) x1(t) e x2(t) estimados III) Erro na estimativa de x1 e
IV) Erro na estimativa de x2.
Com o valor obtido por linha de comando para o ganho de realimentao do estado
estimado K = [29.6 3.6] e ganho do estimador Ko = [16 84.6], a implementao usando o
Xcos mostrada na Fig. 3.29 e os resultados da simulao na Fig. 3.30.
Y ( s)
1
, projetar um
U ( s) s( s 1)(s 2)
Funo de transferncia FT
s2=tf2ss(s1);
O=[C;C*A;C*A^2];
Matriz de observabilidade
rank(O)
Verifica se observvel
poloso=[-8 -8 -8];
Po=(%s-poloso(1))*(%s-poloso(2))*(%s-
poloso(3))
P2=A^3+24*A^2+192*A+512*eye(3,3);
Ke=P2*((O')^-1)*[0 0 1]';
Ackermann p/ o observador
Com os valores obtidos K e Ke, a implementao usando o Xcos mostrada na Fig. 3.31 e
os resultados da simulao na Fig. 3.32 (degrau unitrio na referncia).
das Eq. 10 e 11, o observador definido pelas Eq. 84 e 85, onde X (kT ) o vetor de estado
^
(84)
y(kT ) C X (kT )
(85)
Definindo o erro no estado estimado pela Eq. 86, sua dinmica dada pela Eq. 87, ou seja,
por LC. Logo, se esta matriz corresponde a um sistema estvel e rpido, o erro convergir
para zero de uma maneira satisfatria ainda que os valores de e do estimador sejam
ligeiramente diferentes dos da planta.
^
(86)
E(kT T ) LC E(kT )
(87)
este deve ser igualado a det[zI + LC] (Eq. 88) ou pode-se utilizar a frmula de
Ackermann (Eq. 89) onde e()= e(z)z= .
L e (). C 2
1
C
(88)
0
0
0
1
(89)
u(kT)
-1
z
+
y(kT)
C
PLANTA
+
+
^
-1 X(kT)
z
+
^
y(kT)
COMPUTADOR
ANALGICO OU
DIGITAL
L
Figura 3.33: Estimador de estados discreto
Da mesma forma que no caso contnuo, tambm no caso discreto vlido o princpio da
separao, permitindo que se faa o projeto do controlador por realimentao de estados
independentemente do projeto do observador de estados.
________________________________________________________________
3.3.2.1 Projeto de Reguladores com Observadores Discretos
Para exemplificar a implementao de um regulador com observador de estados discreto
ser
considerado
1
0
A
;B
20.6 0
mesmo
sistema
definido
no
item
3.3.1.1,
ou
seja:
0
1 ; C 1 0 e D 0 . Considerando um perodo de amostragem Ts =
0.1, na Tabela 3.9 tm-se as linhas de comando para projetar um regulador discreto, com
polos de malha fechada: p1 = -1.8 + j2.4 e p2 = -1.8 - j2.4 (plano s), supondo disponvel o
vetor de estados X(t) o que resulta em K = [27.974234 4.2970655]. Em seguida projeta-se um
estimador discreto de ordem completa com polos em p1e = p2e = -8 (plano s), resultando no
vetor de ganhos do estimador L = [1.3109028 6.2835918]t.
Com os valores obtidos por linha de comando para o ganho de realimentao do estado
estimado K e ganho do estimador L, a implementao usando o Xcos mostrada na Fig. 3.34
e os resultados da simulao na Fig. 3.35. Na simulao considerou-se o estado inicial do
sistema contnuo X(0)=[1 0] e o do estimador Xest(0)=[0 0].
Tabela 3.9: Projeto de regulador e observador discretos por alocao de polos.
A=[0 1;20.6 0]; B=[0;1];C=[1 0];D=0;
Sysc=syslin('c',A,B,C,D);
dt=0.1;
Perodo de amostragem
Sysd=dscr(Sysc,dt);
FI=Sysd.a; GAMA=Sysd.b;
discreto
Matriz de controlabilidade e
verificao se controlvel.
p1z=exp(p1s*dt); p2z=exp(p2s*dt);
dc=conv(d1,d2);
alfacFI=dc(1)*FI*FI+dc(2)*FI+dc(3)*[1 0;0 1];
K=[0 1]*inv(Cont)*alfacFI;
O=[C; C*FI];
rank(O)
pdos1=-8; pdos2=-8;
p1oz=exp(pdos1*dt); p2oz=exp(pdos2*dt);
d1o=[1 -p1oz]; d2o=[1 -p2oz];
deo=conv(d1o,d2o);
alfaoFI=deo(1)*FI*FI+deo(2)*FI+deo(3)*[1 0;0 1];
L=alfaoFI*((O)^-1)*[ 0 1]' ;
Matriz de observabilidade e
verificao se observvel
Polos desejados para o estimador
no plano s e no plano z
Eq. Carac. desejada p/ o estimador
e matriz e( )
Ackermann
1
Y (s) . Considerando x1 y; x 2 y , sua
Gp(s)
s(s 1) U (s)
0 1
0
. Adotando um perodo de amostragem Ts =
X (t )
X (t ) u(t )
0 1
1
y(t ) 1 0X (t )
0.1, a Tabela 3.10 mostra as linhas de comando para projetar o servo sistema discreto, com
polos de malha fechada: p1 = p2 = 0.5 (plano z), supondo disponvel o vetor de estados X(t) o
que resulta em K = [23.77083 9.3395962]. Tambm mostra o projeto de um estimador
discreto de ordem completa com polos em p1e = p2e = -0.8 (plano z), resultando no vetor de
ganhos do estimador L = [0.5051709 0.8855042]t.
Com os valores obtidos por linha de comando para o ganho de realimentao do estado
estimado K e ganho do estimador L, a implementao usando o Xcos mostrada na Fig. 3.36
e os resultados da simulao na Fig. 3.37. Na simulao considerou-se o estado inicial do
sistema contnuo X(0)=[1 0] e o do estimador Xest(0)=[0 0].
Tabela 3.10: Projeto de servo sistema com observador discreto
A=[0 1;0 1]; B=[0;1]; C=[1 0]; D=0;
Sysc=syslin('c',A,B,C,D);
dt=0.1;
Perodo de amostragem.
Sysd=dscr(Sysc,dt);
FI=Sysd.a; GAMA=Sysd.b;
Matrizes
Fi
do
Matriz
de
equivalente
rank(Cont)
p1=0.5; p2=0.5;
controlvel.
discreto.
Gama
d=conv(d1,d2);
no
plano
do
caracterstico
K=[0 1]*inv(Cont)*alfacFI;
desejado
polinmio
p/
malha
k1=K(1);
Ackermann
O=[C; C*FI];
Matriz de observabilidade
rank(O)
Verifica se observvel
pde1=0.8; pde2=0.8;
plano z
Eq. Carac. desejada p/ o
estimador e matriz e( )
Ackermann