Aula de 17/10/2019
Recuperando dados da seção de trabalho anterior:
>> load planta
Analisando nosso caso: \[ BoG(z)=\dfrac{0.00012224 (z+2.747) (z+0.1903)}{(z-0.9048) (z-0.8187) (z-0.3679)} \]
Testando opções de controladores Lag:
Opção 1) \(C(s)=K \dfrac{(z-0.86)}{(z-0.95)}\)
Opção 2) \(C(z)=K \dfrac{(z-0.91)}{(z-0.95)}\)
Usando matlab
:
Ingressando controladores
>> C_Lag1=tf([1 -0.86],[1 -0.95],T)
C_Lag1 =
z - 0.86
--------
z - 0.95
Sample time: 0.1 seconds
Discrete-time transfer function.
>> C_Lag2=tf([1 -0.91],[1 -0.95],T)
C_Lag2 =
z - 0.91
--------
z - 0.95
Sample time: 0.1 seconds
Discrete-time transfer function.
>>
Determinar as \(FTMA(z)\):
>> ftma_C_Lag1=C_Lag1*BoG;
>> ftma_C_Lag2=C_Lag2*BoG;
Levantando o RL do Lag opção 1:
>> rlocus(ftma_C_Lag1)
>> hold on; zgrid(zeta, 0);
>> [K_C_Lag1,poloMF_C_Lag1]=rlocfind(ftma_C_Lag1)
Select a point in the graphics window
selected_point =
0.9160 + 0.0994i
K_C_Lag1 =
14.3512
poloMF_C_Lag1 =
0.9171 + 0.0995i
0.9171 - 0.0995i
0.8476 + 0.0000i
0.3578 + 0.0000i
>> % raio do pólo dominante complexo de C_Lag1
>> r_C_Lag1=sqrt(0.9610^2+0.0994^2)
r_C_Lag1 =
0.9661
>>
Gráfico do RL para ftma_C_Lag1
:
Repetindo o mesmo procedimento para C_Lag2
:
>> % projeto de C_Lag2
>> figure; rlocus(ftma_C_Lag2)
>> hold on; zgrid(zeta, 0);
>> [K_C_Lag2,poloMF_C_Lag2]=rlocfind(ftma_C_Lag2)
Select a point in the graphics window
selected_point =
0.8897 + 0.1269i
K_C_Lag2 =
22.5588
poloMF_C_Lag2 =
0.9111 + 0.0000i
0.8882 + 0.1271i
0.8882 - 0.1271i
0.3512 + 0.0000i
>> % calculando raio do pólo dominante de C_Lag2
>> r_C_Lag2=sqrt(0.8897^2+0.1269^2)
r_C_Lag2 =
0.8987
>>
RL para ftma_C_Lag2
:
Fechando as malhas:
>> % Fechando malha para C_Lag1:
>> ftmf_C_Lag1=feedback(K_C_Lag1*ftma_C_Lag1, 1);
>> figure; step(ftmf_C_Lag1)
>> % calculando erro...
>> erro_C_Lag1=(1-dcgain(ftmf_C_Lag1))/1*100
erro_C_Lag1 =
33.2318
>> % fechando malha para C_Lag2
>> ftmf_C_Lag2=feedback(K_C_Lag2*ftma_C_Lag2, 1);
>> figure; step(ftmf_C_Lag2)
>> erro_C_Lag2=(1-dcgain(ftmf_C_Lag2))/1*100
erro_C_Lag2 =
33.0001
>> figure; step(ftmf_C_Lag1, ftmf_C_Lag2)
>> figure; step(ftmf_C_Lag1, ftmf_C_Lag2, ftmf_PI)
Resposta ao degrau do C_Lag1:
Resposta ao degrau do C_Lag2:
Comparando os 2 controladores:
Comparando os Controladores de Atraso com o PI:
Encerrando seção de trabalho no Matlab:
>> save planta