Académique Documents
Professionnel Documents
Culture Documents
e Ts
Gp (s)
onde era indicado que a planta era G p (s ) = 1. Anlise do sistema sem atraso.
3 e T = 0.5s. (s + 1)
Definio da planta (criao de um objecto LTI que a representa) numerador = 3; denominador = [1 1]; Gp = tf(numerador, denominador) de notar que o denominador descrito pelos coeficientes do polinmio por ordem decrescente. Alternativamente, pode-se introduzir a planta usando directamente os zeros, os plos e o ganho: Gp = zpk([], [-1], 3) Traado de Bode da planta bode(Gp); Anlise detalhada do grfico obtido: grid on zoom on Pode agora utilizar o rato para seleccionar reas do grfico para ver com ampliao. Traado de Nyquist da planta nyquist(Gp); Determinao automtica de margens de ganho e de fase margin(Gp); Notar que a margem de ganho infinita. Porqu?
2. Anlise do sistema com atraso. Introduo do atraso no sistema Gp.InputDelay = 0.5 Traado de Bode da planta com atraso. bode(Gp); Traado de Nyquist da planta com atraso. nyquist(Gp); Determinao automtica de margens de ganho e de fase margin(Gp);
3. Sugesto de exerccio. Experimentar novos valores para o atraso e voltar a efectuar a anlise nas frequncias 1/5
Gc1 ( s )
Gc 2 ( s )
Gp (s)
s +2 (compensador em avano, por forma a se obterem plos dominantes em malha s + 2.67 fechada em 1 j 3 ); s + 0.2 (compensador em atraso, por forma a ser obter uma constante de erro de velocidade s + 0.004 de 80 s 1 ). Gc 2 (s ) =
1. Anlise do sistema supondo Gc1 (s ) = K e Gc 2 (s ) = 1 , isto , compensao por mero ajuste de ganho. Definio da planta (criao de um objecto LTI que a representa) numerador = 10; denominador = [1 10 16 0]; Gp = tf(numerador, denominador) de notar a expanso do polinmio que define o denominador da planta. Alternativamente, pode-se introduzir a planta usando directamente os zeros, os plos e o ganho: Gp = zpk([], [0 -2 -8], 10) Determinao do Lugar Geomtrico de Razes rlocus(Gp) Determinao do ganho de realimentao que permite obter um plo prximo do desejado K = rlocfind(Gp, -1+j*sqrt(3)) Alternativamente poder-se-ia executar o comando sem o segundo argumento, escolhendo-se os plos com o rato, directamente no grfico: K = rlocfind(Gp) Os plos realmente obtidos so dados por (verifique que no se consegue obter 1 j 3 ): R = rlocus(Gp, K) Determinao da funo de transferncia em malha fechada: Gmf = K*Gp/(1+K*Gp) Determinao da resposta do sistema realimentado a uma entrada em degrau: step(Gmf) Anlise detalhada do grfico obtido: grid on zoom on Pode agora utilizar o rato para seleccionar reas do grfico para ver com ampliao.
2/5
2. Anlise do sistema quando o compensador Gc1(s ) introduzido no sistema. Definio do compensador Gc1(s ) (criao de um objecto LTI que o representa) numerador = 3.47*[1 2]; denominador = [1 2.67]; Gc1 = tf(numerador, denominador) de notar a expanso dos polinmios que definem o numerador e o denominador de Gc1 (s ) . Alternativamente, pode-se introduzir Gc1(s ) usando directamente os zeros, os plos e o ganho: Gc1 = zpk(-2, -2.67, 3.47) Determinao do Lugar Geomtrico de Razes rlocus(Gc1*Gp) Verificao que os plos 1 j 3 pertencem ao traado obtido, correspondendo ao ganho unitrio (ou seja, no necessrio qualquer ganho adicional para se obterem estes plos): hold on, rlocus(Gc1*Gp, 1), hold off Para obter o resultado numericamente, usar antes o comando: R = rlocus(Gc1*Gp, 1) Determinao da nova funo de transferncia em malha fechada: Gmf1 = Gc1*Gp/(1+Gc1*Gp) Resposta ao degrau do sistema realimentado com o compensador Gc1 (s ) : step(Gmf1) Alternativamente, indicando os pontos onde a resposta calculada: step(Gmf1, 0:0.01:10) Comparao com a resposta obtida sem o compensador Gc1 (s ) : hold on, step(Gmf), hold off grid on, zoom on Pode agora seleccionar, com a ajuda do rato, as reas do grfico que quer comparar com detalhe.
3/5
Gc (s )
G p (s )
onde G p (s ) =
1 s(s + 1)
1. Anlise do sistema supondo Gc (s ) = K , isto , sistema realimentado com compensador por mero ajuste de ganho. Definio da planta (criao de um objecto LTI que a representa) Gp=zpk([], [0 1], 1) Obteno do traado de Bode (em malha aberta) e determinao das margens de ganho e de fase: bode(Gp); grid margin(Gp); grid Verificao de margem de fase com o ganho calculado ( K = Inspeco do traado de Bode bode(Gp*sqrt(2)); grid Determinao automtica margin(Gp*sqrt(2)); grid
2 ).
Determinao da largura de banda (a 3dB) do sistema realimentado. Inspeco do traado de Bode do sistema realimentado (malha fechada) bode( Gp*sqrt(2) / (1+Gp*sqrt(2)) ); grid Determinao automtica bandwidth( Gp*sqrt(2) / (1+Gp*sqrt(2)) )
A partir do traado de Bode do compensador obtenha a mxima fase introduzida e a frequncia a que esta ocorre. 3. Determinao do ganho k para a frequncia de travessia de ganho passar para 4 rad/s. Determinao da resposta do sistema em malha aberta frequncia de 4 rad/s. resp=freqresp(Gc*Gp, 4) Clculo da magnitude e determinao do valor de k: mag=abs(resp) k=1/mag
4. Anlise do sistema compensado Comparao entre o sistema compensado com um ganho e com o compensador em avano de fase: bode(Gp*sqrt(2), k*Gc*Gp); grid
4/5
IV Espao de estados
Considere o seguinte sistema (exerccio 2 da aula prtica n 9)
2 1 0 x = 1 1 2 0 2 0 2 + 0 0
1. Verificar se o sistema controlvel Definir as matrizes A e B A=[2 1 0; 1 1 2; 0 2 0] B=[2; 0; 0] Determinar a matriz de controlabilidade Q Q=ctrb(A,B) Alternativamente, pode-se calcular a matriz de controlabilidade, a partir de A e B: Q=[B A*B A^2*B] Determinar a caracterstica de Q rank(Q)
2. Determinar uma realimentao de estado u = -k x, de modo que os plos do sistema em malha fechada sejam 3, 4 e 5. Definir o vector com os plos pretendidos polos=[-3 4 5] Determinar o vector K utilizando a frmula de Ackermann K=acker(A,B, polos) Alternativamente, pode-se calcular o vector K a partir da matriz Q e do polinmio caracterstico: I=eye(3) alfa=(A+3*I)*(A+4*I)*(A+5*I) K=[0 0 1]*inv(Q)*alfa
3. Sugesto de exerccios. Verificar que no possvel utilizar a Frmula de Ackermann no exerccio 3 da aula 9, onde o sistema representado por:
4 3 1 x= x + u 6 5 2
Pode passar um sistema para a forma diagonal determinando os vectores e valores prprios da matriz A: [vecp, valp]=eig(A)
5/5