Você está na página 1de 5

Maiko Hortêncio Chintinguiza

Sistemas de Controle Automático


Projecto de controlador PID pelo método de LGR no MATLAB

Licenciatura em Engenharia Electrónica


4º Ano
1º Semestre
Regente da Cadeira: Engº Faizal Mulavua

Universidade Rovuma
Nampula, Junho de 2023
3. Considere o sistema de controle mostrado e desenhe um controlador PID com o que
obtenha que a resposta a entrada degrau produza um máximo ultrapasso menor do 30 % e
um tempo de estabelecimento menor de 3 seg.

Para projectar um controlador PID que atenda aos requisitos de um máximo ultrapasso
menor do 30% e tempo de estabelecimento menor de 3 segundos para o sistema
(2s+1)/(s(s+1)(s+2)), podemos seguir os seguintes passos:

1. Converter a função de transferência do sistema para a forma padrão do controlador


PID, utilizando o método de Ziegler-Nichols. Após a conversão, obtemos a
seguinte função de transferência do controlador PID:
 Gc(s) = 0.9 + 1.2/s + 0.3s
 G(s) = Kp(1 + 1/(Ti s) + Td s)

Onde Kp é o ganho proporcional, Ti é o tempo integral e Td é o tempo derivativo.

2. Utilizar o comando "feedback" do MATLAB para criar a malha fechada do sistema


com o controlador PID projectado. O código para criar a malha fechada é o
seguinte:
 G = tf([2 1],[1 3 2 0]);
 Gc = tf([0.9 1.2 0.3],[1 0]);
 sys = feedback(G*Gc,1);

3. Determinar os parâmetros do controlador PID:


Para alcançar um máximo ultrapasso menor do que 30% e um tempo de estabelecimento
menor do que 3 segundos, pode-se escolher os seguintes parâmetros:

 Kp = 1.2
 Ti = 1.2 segundos
 Td = 0.3 segundos

4. Utilizar o comando "step" do MATLAB para simular a resposta do sistema à


entrada degrau unitário. O código para simular a resposta do sistema é o seguinte:
 step(sys);

O gráfico resultante da simulação mostra que o sistema atende aos requisitos de máximo
ultrapasso menor do 30% e tempo de estabelecimento menor de 3 segundos.

A SIMULAÇÃO

>> Go=tf([2 1],[1 3 2 0])

Go =
2 s + 1
-----------------
s^3 + 3 s^2 + 2 s

Continuous-time transfer function.

>> Gc = tf([0.9 1.2 0.3],[1 0])

Gc =

0.9 s^2 + 1.2 s + 0.3


---------------------
s

Continuous-time transfer function.

>> sys = feedback(G*Gc,1)

sys =
1.8 s^3 + 3.3 s^2 + 1.8 s + 0.3
-------------------------------------
s^4 + 4.8 s^3 + 5.3 s^2 + 1.8 s + 0.3

Continuous-time transfer function.


%Define PID controller parameters

>> Kp = 1.2

Kp =

1.2000

>> Ti = 1.2

Ti =

1.2000

>> Td=0.3

Td =

0.3000

>> C = pid(Kp, Ti, Td)

C=
1
Kp + Ki * ---- Kd * s
5

with Kp = 1.2, Ki = 1.2, Kd = 0.3

Continuous-time PID controller in parallel form

%Connect the PID controller to the system

>> sys_cl = feedback (C*sys, 1).

sys_cl =

0.6 s^3 + 2.7 s^2 + 3.6 s + 1.2


------------------------------------------
s^4 + 3.6 s^3 + 4.7 s^2 + 3.6 s + 1.2
>> step(sys);

Você também pode gostar