Aula de 17/04/2024 🎵
Aplicando à planta do estudo de caso:
x
>> load planta
>> zpk(BoG)
0.00012224 (z+2.747) (z+0.1903)
--------------------------------
(z-0.9048) (z-0.8187) (z-0.3679)
Sample time: 0.1 seconds
Discrete-time zero/pole/gain model.
​
A equação do controlador deveria ser:
Lembrando que não posso incluir na equação raizes instáveis (então o zero da planta em não pode ser incluÃdo na eq. do controlador).
Supondo que os 2 pólos fossem em (integrador duplo):
xxxxxxxxxx
>> polos_BoG=pole(BoG)
polos_BoG =
0.90484
0.81873
0.36788
>> zero_BoG=zero(BoG)
zero_BoG =
-2.7471
-0.19031
>> C_dead1=tf(poly(polos_BoG), poly([zero_BoG(2) 1 1]), T);
>> zpk(C_dead1)
​
ans =
(z-0.9048) (z-0.8187) (z-0.3679)
--------------------------------
(z-1)^2 (z+0.1903)
Sample time: 0.1 seconds
Discrete-time zero/pole/gain model.
​
>> ftma_dead1=C_dead1*BoG;
>> zpk(ftma_dead1)
0.00012224 (z+2.747) (z-0.9048) (z-0.8187) (z-0.3679) (z+0.1903)
----------------------------------------------------------------
(z+0.1903) (z-0.3679) (z-0.8187) (z-0.9048) (z-1)^2
Sample time: 0.1 seconds
Discrete-time zero/pole/gain model.
​
>> minreal(ftma_dead1)
0.0001222 z + 0.0003358
-----------------------
z^2 - 2 z + 1
Sample time: 0.1 seconds
Discrete-time transfer function.
​
>> zpk(minreal(ftma_dead1))
0.00012224 (z+2.747)
--------------------
(z-1)^2
Sample time: 0.1 seconds
Discrete-time zero/pole/gain model.
​
>> rlocus(ftma_dead1)
>> axis equal
O obtivemos o seguinte RL:
Um "zoom" revela:
E então percebemos que por menor que seja o ganho do controlador, teremos pólos de MF instáveis.
Voltando a eq. do controlador, percebemos que um dos polos "extras" pode ser mantido em (integrador), mas o outro pólo, deve mudar de local. Se for "enviado" para a origem, teremos:
x
>> C_dead2=tf(poly(polos_BoG), poly([zero_BoG(2) 1 0]), T);
>> zpk(C_dead2)
(z-0.9048) (z-0.8187) (z-0.3679)
--------------------------------
z (z-1) (z+0.1903)
Sample time: 0.1 seconds
Discrete-time zero/pole/gain model.
>> ftma_dead2=C_dead2*BoG;
>> zpk(minreal(ftma_dead2))
0.00012224 (z+2.747)
--------------------
z (z-1)
Sample time: 0.1 seconds
Discrete-time zero/pole/gain model.
​
>> figure; rlocus(ftma_dead2)
>> hold on;
>> zgrid(zeta,0)
RL sem "zoom":
Um zoom na região de interesse revela:
Notamos alguns detalhes:
A idéia então é definir um local para o pólo de tal forma, a que o ponto de partida do RL ocorra justamente sobre a origem do plano-z, o que nos garante então a resposta no menor tempo possÃvel para este sistema.
Usando o App Control System Designer para isto:
Continuando na próxima aula...
Arquivo <planta.mat>
Fernando Passold, em 17/04/2024