Académique Documents
Professionnel Documents
Culture Documents
+
(
=
(
+
(
=
) (
) (
1 0
0 1
) (
1 3
2 1
) (
) (
) (
) (
5 0
0 2
) (
1 3
1 5
2
1
2
1
2
1
t u
t u
t x
t y
t y
t u
t u
t x t x
&
No Matlab, a representao desse sistema demonstrada no Exemplo 2 abaixo:
% Exemplo 2
% Cria e apresenta um sistema representado no espao de estados
>> A = [-5 -1; 3 -1];
>> B = [2 0; 0 5];
>> C = [1 2; 3 1];
>> D = [1 0; 0 1];
>> printsys(A, B, C, D)
LABORATRIO DE SISTEMAS DE CONTROLE II 2
2.3 Espao de Estados Funo de Transferncia
O comando ss2tf transforma a representao no espao de estados na representao de
funo (matriz) de transferncia. Realiza a operao
D B A sI C s G + ++ + = == =
1
) ( ) (
Note que, para esse exemplo, G(s) ser uma matriz 2x2, uma vez que o sistema tem duas
entradas e duas sadas, ou seja, G(s) ser da forma
| || |
| || |
| || |
\ \\ \
| || |
= == =
) ( ) (
) ( ) (
) (
22 21
12 11
s G s G
s G s G
s G
Uma melhor visualizao do fluxo dos sinais conseguida, observando a figura 2.1 abaixo:
Figura 2.1 - Representao de um sistema com duas entradas e duas sadas
Para o sistema do Exemplo 2, calcule manualmente G(s) e depois confira os resultados
usando o Matlab.
>> % Exemplo 3
>> % Obteno das funes de transferncia relacionadas com a entrada 1, ou seja, G
11
(s) e G
21
(s)
>> [num1, den1] = ss2tf (A, B, C, D, 1);
>> printsys(num1, den1, 's')
>> % Calcula as funes de transferncia relacionadas com a entrada 2, ou seja, G
12
(s) e G
22
(s)
>> [num2, den2] = ss2tf (A, B, C, D, 2);
>> printsys(num2, den2, 's')
2.4 Funo de Transferncia Espao de Estados
O comando utilizado tf2ss, que obtm a representao no espao de estados na forma
cannica controlvel para sistemas monovariveis (SISO ou uma entrada, uma sada).
>> % Exemplo 4 (mesmo sistema do Exemplo 1)
>> % Converte a funo de transferncia para forma cannica controlvel
>> [A, B, C, D] = tf2ss(num,den);
>> printsys(A, B, C, D)
>> % Retornando para Funo de Transferncia
>> [n, d] = ss2tf (A, B, C, D)
>> printsys(n, d, 's')
LABORATRIO DE SISTEMAS DE CONTROLE II 3
2.5 Soluo da Equao de Estados
A soluo da equao de estados dada por
+ ++ + = == =
t
t A At
d Bu e x e t x
0
) (
) ( ) 0 ( ) (
ou
) ( ) ( ) 0 ( ) (
0
) (
t Du d Bu e C x Ce t y
t
t A At
+ ++ + + ++ + = == =
O Matlab realiza essa soluo atravs dos comandos impulse (resposta ao impulso), step
(resposta ao degrau) e lsim (resposta a uma entrada qualquer). Considere o sistema
representado pela seguinte equao de estados:
( ) u t x t x
(
+
(
=
1
0
) (
3 2
1 0
&
, 0 ) 0 ( = == = x
Obtenha analiticamente as variveis de estado desse sistema para entrada degrau unitrio. A
seguir, use o Matlab para comprovar o resultado, exibindo os grficos dessas variveis.
>> % Exemplo 5 - Grficos da resposta ao degrau
>> A = [0 1; -2 -3];
>> B = [0; 1];
>> C = eye(2); % C = matriz identidade de dimenso 2 e
>> D = zeros(2,1); % D = matriz nula 2 x 1 porque a sada y = x
>> step(A, B, C, D)
2.6 Transformao para Formas Cannicas
O comando canon transforma a representao de estados para formas cannicas. O
exemplo abaixo realiza a transformao de um sistema para uma forma companheira.
>> %Exemplo 6
>> A = [0 1; -2 -3];
>> B = [2; 1];
>> C = [1 0];
>> D = 0;
>> [Ac Bc Cc Dc T] = canon(A, B, C, D, companion)
>> % T a matriz que realiza a transformao T
-1
AcT = A
>> T \ Ac * T
2.7 Simulao de um Motor de Corrente Contnua
Um motor de corrente contnua pode ser modelado pelas seguintes equaes:
a) Equao de Kirchhoff na armadura
k
dt
di
L Ri v + ++ + + ++ + = == =
b) Equao de Newton no eixo
f
dt
d
J ki T + ++ + = == = = == =
c) Velocidade angular
dt
d
= == =
LABORATRIO DE SISTEMAS DE CONTROLE II 4
onde:
: a posio angular do eixo
: a velocidade angular do eixo
i : a corrente de armadura
T : o torque do motor
R : a resistncia de armadura (3,4 )
L : a indutncia de armadura (15 mH)
J : o momento angular do eixo (0,7x10
-3
- MKS)
f : o coeficiente de atrito viscoso do eixo (50x10
-6
Ws
2
/rd
2
)
k : a constante do motor (0,15 - MKS)
1. Apresente um modelo desse sistema no espao de estados considerando o vetor de estados
[ [[ [ ] ]] ] i x = == =
T
e o Torque T como sada do sistema.
2. Usando o Matlab, crie uma function que apresente a resposta desse sistema para uma
entrada qualquer na tenso na armadura.
3. Aplique a function do tem anterior para uma entrada degrau de 30 V.
4. Aplique novamente a function do tem anterior para f = 5,0x10
-6
Ws
2
/rd
2
.
5. Repita os procedimentos acima, considerando como sada do sistema.