Académique Documents
Professionnel Documents
Culture Documents
x1 (t ) x (t) x( t ) = 2 M xn (t )
Professor: Jos Felipe Haffner
(10.1)
PROJETOS DE SISTEMAS DE CONTROLE PONTIFCIA UNIVERSIDADE CATLICA DO RIO GRANDE DO SUL DEPARTAMENTO DE ENGENHARIA ELTRICA
Para sistemas multivariavel, linear e invariante no tempo, de ordem n, com p sinais de entrada e q sinais de sada, pode-se escrever a representao de variveis de estado na forma matricial como:
(10.2)
D
u(t)
+ +
dx(t) dt
1 s
x(t)
y(t)
A
Fig. 10.1: Representao do sistema em variveis de estado. As relaes entre um sistema linear descrito por equaes diferenciais, funes de transferncia e espao de estado so apresentadas na Fig. 10.2. Deve-se reparar, que um sistema descrito por um conjunto de equaes diferencias, admite uma nica representao em funo de transferncia, entretanto esse mesmo sistema pode ser representado por diferentes conjuntos de estados.
Transformada de Laplace Transformada inversa de Laplace
Y(s) = G(s)U(s)
an
Formas Cannicas
G(s) = C(sI A) B + D
Fig. 10.2: Relao entre equaes diferenciais, funo de transferncia e espao de estados. Professor: Jos Felipe Haffner 2
PROJETOS DE SISTEMAS DE CONTROLE PONTIFCIA UNIVERSIDADE CATLICA DO RIO GRANDE DO SUL DEPARTAMENTO DE ENGENHARIA ELTRICA Forma Cannica Controlvel
Conceito de Controlabilidade Um processo dito ser completamente controlado se todas as variveis de estado deste processo puder ser afetadas ou controladas de forma a atingir um certo objetivo, em um tempo finito, pr algum controle u(t) sobre o qual no existe nenhuma restrio. O estado x(t) dito ser controlvel em t=t 0 se existir um controle continuo por partes u(t) que leve o estado x(t 0 ) a qualquer estado final x(t1 ) em um intervalo finito de tempo (t 1 -t 0 ) 0. Embora a maioria dos sistemas fsicos sejam controlveis, seus correspondentes modelos matemticos podem no ter a propriedade de controlabilidade. Logo necessrio saber as condies em que o sistema controlvel. Matriz de Controlabilidade O sistema controlvel se o posto (rank)1 da matriz de controlabilidade Cx de mesma ordem que a matriz A. Deve-se reparar que A uma matriz quadrada de ordem n , onde n indica a ordem do sistema.
C x = B M AB M A 2 B M L
A n 1 B
(10.3)
A funo do Matlab que determina a matriz de controlabilidade : Cx = ctrb(A,B); A funo do Matlab que determina o posto de uma matriz : rank(Cx); Forma Cannica Controlvel . Uma maneira de se obter uma representao em variveis de estado a partir de uma funo de transferncia conhecida chamada de Forma Cannica Controlvel. A representao em variveis de estado consiste na determinao das matrizes A , B, C e D a partir da funo de transferncia genrica definida pela eq. 10.4. Repare que se a funo de transferncia tiver um nmero de plos superior ao nmero de zeros a matriz D ser nula.
G ( s) =
0 0 0 A= 0 M 0 a n C = [bn
b1 s n 1 + b 2 s n 2 + L + bn 1 s + bn +d s n + a1 s n 1 + a 2 s n 2 + L + a n 1 s + a n
1 0 0 0 M 0 a n1 0 1 0 0 M 0 an 2 0 0 1 0 L L L L 0 0 0 0 M 1 a1 0 0 0 0 0 0 0 B = 0 M 0 1
(10.4)
M L M 0 L 0 an 3 L a 2 b1 ]
(10.5)
bn1
bn 2
bn 3 L b2
D =d
A funo do Matlab que obtm a forma cannica controlvel a partir da funo de transferncia : [A,B,C,D] = tf2ss(num,dem);
1
O posto de uma matriz indica se os seus vetores coluna ou linha so linearmente independentes. Ou seja se uma matriz tem posto pleno seu determinante diferente de zero. Professor: Jos Felipe Haffner 3
PROJETOS DE SISTEMAS DE CONTROLE PONTIFCIA UNIVERSIDADE CATLICA DO RIO GRANDE DO SUL DEPARTAMENTO DE ENGENHARIA ELTRICA
Conceito de Observabilidade Um processo dito ser completamente observvel se todas as variveis de estado contribuam para gerar o sinal de sada do processo. Portanto num sistema completamente observvel possvel obter informao sobre as variveis de estado a partir de medidas dos sinais de entradas e dos sinais de sada. . Matriz de Observabilidade O sistema Observvel se o posto (rank) da matriz de Observabilidade Ox de mesma ordem que a matriz A. Deve-se reparar que A uma matriz quadrada de ordem n, onde n indica a ordem do sistema.
C CA O x = CA 2 M n 1 CA
A funo do Matlab que determina a matriz de Observabilidade : Ox = obsv(A,C); Forma Cannica Observvel
(10.6)
Uma maneira de se obter uma representao em variveis de estado a partir de uma funo de transferncia conhecida chamada de Forma Cannica Observvel. A representao em variveis de estado consiste na determinao das matrizes A, B , C e D a partir da funo de transferncia genrica definida pela eq. 10.7. Repare que se a funo de transferncia tiver um nmero de plos superior ao nmero de zeros a matriz D ser nula.
G ( s) =
b1 s n 1 + b 2 s n 2 + L + bn 1 s + bn +d s n + a1 s n 1 + a 2 s n 2 + L + a n 1 s + a n
(10.7)
0 1 0 A = 0 M 0 0
0 an 0 a n 1 0 a n 2 0 a n 3 M M 0 a2 0 0 0 L 1 a1 0 0 1 0 M 0 0 0 0 1 M 0 0 0 0 0 M 1 L L L L L L D=d
bn bn 1 b n 2 B = b n 3 M b2 b 1
(10.8)
C = [0 0 0 0 L 0 1]
PROJETOS DE SISTEMAS DE CONTROLE PONTIFCIA UNIVERSIDADE CATLICA DO RIO GRANDE DO SUL DEPARTAMENTO DE ENGENHARIA ELTRICA Sistemas Equivalentes
Dois sistemas em variveis de estado so chamados de equivalentes se possurem o mesmo nmero de variveis de estado e produzirem uma mesma funo de transferncia. Sejam os sistemas representados e m (10.10) e (10.11), considerados equivalentes de tal forma que
z = Px
onde P uma matriz inversvel, ou seja P existe.
-1
(10.9)
& = Ax + Bu x y = Cx + Du
(10.10)
Sendo o sistema original, dado por (5.7) e empregando a relao descrita por (5.6), obtenha o sistema equivalente apresentado em (5.8)
z & = Az + Bu y = Cz + Du
(10.11)
Logo para que ambos sistemas sejam considerados equivalentes, deve ser satisfeita as seguintes condies:
A = P A P 1 B = P B C = C P 1 D=D
A funo do Matlab que produz um sistema equivalente :
[ A , B , C , D ] = ss 2 ss( A, B, C , D, P )
(10.12)
G(s)
Y(s)
Fig. 10. 3: Diagrama de blocos empregando o mtodo convencional de sistemas de controle. Em vez de especificar somente os plos dominantes a malha fechada, a tcnica de alocao de plos especifica todos os plos em malha fechada. Os plos a malha fechada so determinados se baseado nas exigncias do regime transitrio da resposta e/ou na resposta em freqncia. Atravs da escolha de uma Professor: Jos Felipe Haffner 5
PROJETOS DE SISTEMAS DE CONTROLE PONTIFCIA UNIVERSIDADE CATLICA DO RIO GRANDE DO SUL DEPARTAMENTO DE ENGENHARIA ELTRICA
matriz de ganhos apropriada para a retroao de estado, possvel forar o sistema a ter os plos em malha fechada nas localizaes desejadas. Isto importante especialmente quando se trabalha com processos mais complexos. Na Fig. 10.4 apresentado o diagrama em blocos do controle por alocao de plos, considerando que a matriz D nula. O custo associado a aplicao desta tcnica, em relao ao controle convencional alto, uma vez que necessrio obter com confiabilidade a informao de todos os estados do processo. Uma condio necessria para aplicar o projeto de controle por alocao de plos, ou tambm chamada de realimentao dos estados, que o sistema deve ser totalmente c ontrolvel.
r(t)
yc(t)
+ -
u(t)
+ +
dx(t) dt
Processo
1 s
x(t)
y(t)
A
Controle por Realimentao de Estados
K
Fig. 10.4: Realimentao de estados de um processo representado por variveis de estados. O processo original pode ser descrito por (10.13), i..:
& = Ax + Bu x y = Cx
(10.13)
A reali mentao de estados, ou projeto por alocao de plos, consiste em realimentar todos os estados, x(t ), de forma a gerar um sinal de entrada, u(t), que produza o sinal de sada, y(t), desejado. Considerando o sistema com realimentao de estados mostrado na Fig. 10.4, determina-se que:
u ( t ) = Kx (t ) + r (t )
onde
(10.14)
K = [k1 k2 L kn ] sendo n: o nmero de estados do processo a ser controlado, K: o vetor de ganhos de realimentao dos estados e a: ganho necessrio para ajustar o valor em regime do sinal de sada y(t). Substituindo (10.14) em ( 10.13) e considerando que a matriz D = 0, tem-se
(10.15)
Portanto o projeto de controle por alocao de plos consiste na escolha adequada do vetor de ganhos K e do ajuste a do sinal de referncia r(t). Os passos para o projeto com alocao de plos podem ser especificados como se segue: Passo 1 : Especificar os plos de malha fechada em funo das caractersticas da resposta temporal desejada.
( s + 1 )( s + 2 )L( s + n 1 )( s + n )
Professor: Jos Felipe Haffner
(10.16) 6
PROJETOS DE SISTEMAS DE CONTROLE PONTIFCIA UNIVERSIDADE CATLICA DO RIO GRANDE DO SUL DEPARTAMENTO DE ENGENHARIA ELTRICA
onde (1...n) determina a localizao dos plos desejada. Utilizando os plos de malha fechada desejados, escrever o polinmio caracterstico desejado:
( s + 1 )( s + 2 ) L( s + n 1 )( s + n ) = s n + b1 s n 1 + L + bn 1 s + bn
e determinar os valores de b1 , b 2 ,L, bn 1 , bn
(10.17)
Passo 2: Verificar se o sistema completamente controlvel. O posto da matriz de controlabilidade Cr (eq. 5.3), deve ser n.
C x = B M AB M A 2 B M L A n 1 B
sI A = s n + a1 s n 1 + L + a n 1 s + a n
Passo 4:Determinar a matriz de transformao P (eq. 10.19) que relaciona a representao original com a forma cannica controlvel. Se a equao do sistema j estiver sob forma cannica controlvel ento P = I. Observao: Use as matrizes de controlabilidade na representao original, Cx e na forma cannica controlvel, Cz, para encontrar a matriz de transformao P, pois:
P = C z (C x )
(10.19)
Passo 5 A matriz de ganhos da retroao de estado K requerida pode ser determinada pela seguinte equao:
K = [bn an
bn 1 an 1 L b2 a2
b1 a1 ] P
(10.20)
Passo 6: Valor de regime da varivel de sada, y(t). Ajuste o fator de correo a, de tal forma que o ganho DC da funo de transferncia Y(s)/R(s) seja unitrio.
No Anexo encontra-se um programa escrito em Matlab que realiza todas as etapas deste projeto por alocao de plos. Professor: Jos Felipe Haffner 7
PROJETOS DE SISTEMAS DE CONTROLE PONTIFCIA UNIVERSIDADE CATLICA DO RIO GRANDE DO SUL DEPARTAMENTO DE ENGENHARIA ELTRICA
Fig. 10.5: Resposta temporal y(t), considerando um sinal de entrada do tipo degrau unitrio. Testar se este sistema controlvel:
C x = B M AB M A B M L
2
n 1
1 12 34 B = 1 12 2 0 2 1
Como o posto da matriz Cx igual a ordem do processo, o processo controlvel. No matlab: Cx=ctrb(A,B); n=rank(Cx); Forma cannica Controlvel: Encontrar a funo de transferncia relacionada com a representao em espao de estados. A funo de transferncia necessria para encontrar a forma cannica controlvel. [num,den]=ss2tf(A,B,C,D)
Y (s) 2s + 9 = 3 U (s ) s + 4s 2 + 4 s + 5
logo, a Forma cannica Controlvel dada por:
PROJETOS DE SISTEMAS DE CONTROLE PONTIFCIA UNIVERSIDADE CATLICA DO RIO GRANDE DO SUL DEPARTAMENTO DE ENGENHARIA ELTRICA
sI A = s 3 + 4s 2 + 4 s + 5
No Matlab: Ac=[0 1 0; 0 0 1; -5 -4 -4]; Bc=[0; 0; 1]; Cc=[ 9 2 0]; Dc=0; Matriz de transformao P: Cz=ctrb(Ac,Bc); P=Cz*inv(Cx) P= 0.02162162162162 -0.01081081081081 0.13513513513514 -0.09729729729730 0.04864864864865 -0.10810810810811 0.43783783783784 0.28108108108108 0.48648648648649 Localizao dos plos desejada: P1 = -1 , P2 = -2 + j e P3 = -2 - j Equao caracterstica desejada para o processo:
b (s ) = ( s + 1)( s + 2 + j )( s + 2 j ) = s 3 + b1 s 2 + b 2 s + b3 = s 3 + 5 s 2 + 9s + 5
No M atlab: p1=-2-j*1; p2=-2+j*1; p3=-1; b = poly([ p1 p2 p3]); b1=b(2); b2=b(3); b3=b(4); Clculo da matriz de ganhos K : No Matlab: K=[a3-b3 a2-b2 a1-b1] * P Processo modificado, com a alterao dos plos:
K = [a3 b3
a 2 b2
a1 b1 ] P
PROJETOS DE SISTEMAS DE CONTROLE PONTIFCIA UNIVERSIDADE CATLICA DO RIO GRANDE DO SUL DEPARTAMENTO DE ENGENHARIA ELTRICA
Fig. 10.6: Resposta temporal y(t), considerando um sinal de referncia , r(t), do tipo degrau unitrio. Verificao se a especificao dos plos foi atendida: Os plos do processo modificado devem ser iguais aos plos especificados no inicio do projeto. No Matlab: [numN,denN]=ss2tf(AN,BN,CN,DN); disp('plos especificados no projeto') roots(b) disp('sistema com os plos alocados') roots(denN) Ajustando o valor de regime do sinal de sada y(t ): Como o sinal de entrada do tipo degrau unitrio e o valor de regime 1.8, conforme Fig. 10.6, deve-se ajustar o valor do sinal de referncia, i.e., termo independen te do numeradorda funode transferncia = b3
Fig. 10.7: : Resposta temporal y(t),considerando um sinal de referncia ajustado ,a r(t), para que o sinal de sada em regime seja igual ao valor de referncia.
10
PROJETOS DE SISTEMAS DE CONTROLE PONTIFCIA UNIVERSIDADE CATLICA DO RIO GRANDE DO SUL DEPARTAMENTO DE ENGENHARIA ELTRICA Equao de Espao de Estados Discreta
Para realizar a converso das equaes de estado do tempo continuo para o tempo discreto ser empregada aproximao de Euler. Aproximao de Euler consiste em representar a operao derivao de um sinal no tempo continuo em seu equivalente no tempo discreto, ou seja:
x (t ) =
dx(t ) x( n + 1) x( n) dt T
(10.21)
onde: n representa o instante da amostragem do sinal e T o passo de amostragem do sinal Considerando a representao em espao de estados apresentada em (10.22), ser desenvolvido o procedimento para obter sua representao no tempo discreto.
a12 x1 (t ) b1 + u (t ) a 22 x 2 ( t) b2
(10.22)
x1 ( t) c 2 ] x 2 (t )
(10.23)
Para escrever (10.23) no tempo discreto utiliza -se a aproximao de Euler apresentada em (10.21), ou seja: .
(10.24)
(10.25)
Por similaridade, pode-se obter a equao discreta dos outros estados. Assim a forma discreta da equao de espao de estados (10.22)
(10.26)
A equao (10.26) pode ser revolvida simplesmente atravs do procedimento de recurso. Como exemplo, considere a seguinte equao de diferenas:
x( n + 1) = 0.2 x( n) + 2u( n)
onde x(0)=0 e u(n)=1 para n=1,2,3 ... A soluo x(1) pode ser achada por recurso. Professor: Jos Felipe Haffner 11
PROJETOS DE SISTEMAS DE CONTROLE PONTIFCIA UNIVERSIDADE CATLICA DO RIO GRANDE DO SUL DEPARTAMENTO DE ENGENHARIA ELTRICA
x(1) = 0.2 x( 0) + 2u( 0) = 2
Similarmente,
12
PROJETOS DE SISTEMAS DE CONTROLE PONTIFCIA UNIVERSIDADE CATLICA DO RIO GRANDE DO SUL DEPARTAMENTO DE ENGENHARIA ELTRICA Anexo I: Projeto por alocao de plos
close all clear all %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Projeto por alocao de plos % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %sistema original A=[ -4 -4 -5;1 0 0;0 1 0]; B=[1; 2; 0]; C=[0 0 1]; D=0; [num,den]=ss2tf(A,B,C,D) sys=ss(A,B,C,D); figure(1),step(sys) %coeficientes da equao caracterstica do sistema original a=den; a1=a(2); a2=a(3); a3=a(4); %matriz de controlabilidade Cx=ctrb(A,B) %matriz de transformao Ac=[0 1 0; 0 0 1; -5 -4 -4]; Bc=[0; 0; 1]; Cc=[ 9 2 0]; Dc=0; Cz=ctrb(Ac,Bc) P=Cz*inv(Cx) %localizao desejada dos plos em malha fechada: p1=-1; p2=-2+j; p3=-2-j; %coeficientes da equao caracterstica do sistema modificado b=poly([p1 p2 p3]); b1=b(2); b2=b(3); b3=b(4); %Matriz de ganhos de realimentao de estados K=[a3-b3 a2-b2 a1-b1]*P; %Sistema modificado para atender a especificao AN=A+B*K; BN=B; CN=C; DN=D; [numN,denN]=ss2tf(AN,BN,CN,DN); sysN=ss(AN,BN,CN,DN); figure(2),step(sysN) %verificao se os plos de MF so realmente os plos especificados roots(denN) %ajuste do valor de sada, por exemplo sada de valor unitrio alfa=b(4)/num(4); [numNn,denNn]=ss2tf(AN,BN*alfa,CN,DN); sysNn=ss(AN,BN*alfa,CN,DN); figure(3),step(sysNn) Professor: Jos Felipe Haffner 13