Você está na página 1de 14

Projeto de Compensadores para Controle de Velocidade de Cruzeiro

(T2)

Nomes: Dorival Neto e Luis Henrique

O trabalho trata-se de projetar um compensador capaz de fazer um controle


suave e preciso da velocidade de um veículo, seguindo o esquemático a seguir:

O compensador foi executado no formato Ganho, avanço e atraso e seguiu os


requisitos solicitados abaixo:

• Malha fechada estável com margem de fase (φm) entre 60 e 70


graus;
• Frequência de cruzamento 0 dB (ω0dB) entre 9 e 11 rad/s;
• Erro em regime permanente ao degrau de referência menor ou
igual a um centésimo percentual, ou seja: ep ≤ 10^−4
Portanto, para fins de projeto foram almejados os respectivos valores:

• φm = 65°;
• ω0dB cruzando em 10 rad/s;
• ep ≤ 10^−4 ↔ kp ≥ 10000.
Projeto do Compensador via MATLAB (Script)

O projeto começa pelo Script fornecido pelo professor, com as seguintes


informações:
clc
clear all
close all
s=tf('s');

% Trabalho T2 - Projeto de Sistemas de Controle


% PUCRS - Escola Politécnica
% Prof. Dr. Rafael Castro
%
% Projeto de Compensadores Dinâmicos para Controle
% de Velocidade de Cruzeiro em Automóveis

Após esta limpeza e declaração da variável “s” vamos para o próximo passo:

%% Função de Transferência G(s) da Planta

% Insira sua matrícula (sem DV) dentro dos parênteses abaixo:


[ a , b , c ] = getvaluesT2( 18106720 );
% Atenção: não sobrescrever os parâmetros (a,b,c).

G = a/( s^2+b*s+c );
% |------|
% Pedal Acelerador --> | G(s) | --> Velocidade do Automóvel
% [%] |------| [km/h]

Com a função getvaluesT2 com a seed da matrícula “18106720” do aluno


Dorival, obtivemos a = 11, b=5, c=1.
Portanto, a F.T ficou a seguinte:

Após a obtenção da Função de transferência, fomos para o próximo passo de


plotagem:

%% Diagrama de Bode da Planta

% Espectro de frequência [rad/s]


W = 10.^(-4:0.01:4)';
figure(1)
hold all
bode(G,W)
grid on

O bode adquirido do sistema:

Anotando algumas informações importantes nele para o projeto:


Com o Diagrama de Bode em mãos, migramos para o próximo passo, onde
efetua-se uma análise inicial e estabelecemos alguns valores:

%% Utilize este espaço para projetar seu controle

% REQUISITOS:
% -> Malha fechada estavel com margem de fase (om) entre 60 e 70 graus
[65°+5°];
% -> Frequencia de cruzamento 0 dB (w0dB) entre 9 e 11 rad/s [10 rad/s];
% -> Erro em regime permanente ao degrau de referencia menor ou igual a
% um centesimo percentual, ou seja: ep<= 10^-4 = 0.0001, ou seja Kp >= 9999
% então, [Kp >= 10000].

% 1) ANÁLISE INICIAL:

% Pelo BODE:
% Margem de fase inicial = 72°
% W0dB = 2.09 rad/s
% Kp = 20.8dB = 10.9647
Kp = 10.9647;
Kp_alvo = 10000;

Notou-se que o Kp do erro de posição era 20.8dB na frequência tendendo a 0


rad/s, ou seja, 10.9647 convertendo. Além da margem de fase do sistema inicial de
72°, a frequência de cruzamento do w0db em 2.09 rad/s e o Kp alvo de valor 10000.
Então, para começar o compensador de Ganho realizamos da seguinte maneira:

% 2) Projeto Compensador GANHO K0:

% W0dB* [alvo] = 10 rad/s


W0db_alvo = 10;
% Ganho em W0dB* = -20.1 dB
M = -20.1;
K0= 10^(-M/20);
% Kp'
Kp_ganho= Kp*K0;
% Margem de fase nova:
Margem_fase_ganho = 27; % (-153)-(-180)
% Bode Ganho K0
C_ganho = K0;
G_ganho = C_ganho*G;
bode(G_ganho, W)

Nosso W0dB alvo para o projeto é de 10 rad/s, porém para alcançarmos este
valor era necessário anotar o ganho no Bode, no caso -20.1 dB, convertidos como:
Portanto o Compensador de GANHO é, basicamente:
10.1158
Este foi o ganho K0 fornecido ao sistema para a alteração da frequência de
cruzamento do W0dB em 10 rad/s. Como observado no primeiro diagrama de bode, a
margem de fase agora passaria a ser de 27°, e não mais 72°. O mesmo vale para o Kp,
que, de 10.9647, foi para 110.9167.

A parte do Ganho K0 feita do Compensador está feita, então o próximo passo,


por facilidade, foi feito a parte de Avanço:
% 3) Projeto Compensador AVANÇO:

% Margem de Fase Desejada = 65° + 5° (ATRASO)


aux_fase = 43; % (70° - 27°)
% Beta
beta = (1+sind(aux_fase))/(1-sind(aux_fase));
% Polo Avanço
Pb = W0db_alvo*sqrt(beta);
% Zero Avanço
Zb = Pb/beta;
% Ganho Avanço
Kb = sqrt(beta);
% Kp após avanço
Kp_avanco = Kp_ganho/Kb;
% Bode avanço
C_avanco = Kb*((s+Zb)/(s+Pb));
G_avanco_ganho = C_avanco*G_ganho;
bode(G_avanco_ganho, W)
Nesta parte, visamos ajustar a margem de fase para o almejado 65°. Porém,
sabe-se que terá a presença de um Atraso, e este afeta 5°na nossa margem, portanto o
valor utilizado idealmente será de 70°. Também teremos uma perca no Kp, que será
ajustado no Atraso.
Seguindo o passo a passo, e montando-se corretamente os cálculos, chegou-se
em Kb:

E o polo e o zero do Compensador de Avanço:

Portanto, está montado a parte do AVANÇO:


𝑠 + 4.348
2.2998 ( )
𝑠 + 23

Plotando o Bode, podemos observar as mudanças oferecidas pelo Avanço na


margem de fase:
Com o Compensador de Ganho e de Avanço feito, para finalizar, foi feito o
Atraso via resto do Script:
% 4) Projeto Compensador ATRASO:

% Alfa
Alfa = Kp_alvo/Kp_avanco;
% Zero Atraso
Za = W0db_alvo/10;
% Polo Atraso
Pa = Za/Alfa;
% Margem de Fase FINAL = 70° - 5° = 65°.
C_atraso = (s+Za)/(s+Pa);
G_atraso_avanco_ganho = C_atraso*G_avanco_ganho;
bode(G_atraso_avanco_ganho, W)

Calculando Alfa, utilizando o Kp alvo de 10000, com o Kp resultante do


Compensador de Avanço e, também, dividindo o W0dB alvo de 10 rad/s em uma
década, chegamos ao Polo e ao Zero necessários:

Portanto, o Compensador de Atraso fica assim:


𝑠+1
( )
𝑠 + 0.004823

E plotando o Diagrama de Bode final, utilizando todos os três compensadores,


obtivemos, então, todos os valores almejados pelo projeto:
Então, o compensador completo de Ganho, Avanço e Atraso ficou assim:
𝑠 + 𝑍𝑏 𝑠 + 𝑍𝑎
𝐶(𝑠) = 𝐾0 ∗ 𝐾𝑏 ∗ ( )∗( )
𝑠 + 𝑃𝑏 𝑠 + 𝑃𝑎
𝑠 + 4.348 𝑠+1
𝐶(𝑠) = 10.1158 ∗ 2.2998 ∗ ( )∗( )
𝑠 + 23 𝑠 + 0.004823
[ Ganho ] [ Avanço ] [ Atraso ]

Análise dos Resultados pelo Simulink

Realizado o projeto completo do compensador de ganho, avanço e atraso, foi


simulado via Simulink, então, o comportamento do Sistema em M.F em frente ao
objetivo de ser capaz de Controlar a Velocidade de Cruzeiro de um veículo, onde há um
cenário prático em que a velocidade inicial do veículo é de 80 km/h e o valor de
cruzeiro desejado está programado para 100 km/h.

Foram realizadas cinco simulações referentes ao sistema L(s), ou seja, C(s)*G(s):


1. Nenhum compensador (C(s)=1);
2. Apenas compensação de ganho;
3. Apenas compensação de ganho e atraso;
4. Apenas compensação de ganho e avanço;
5. Compensador completo: ganho, avanço e atraso.

Seguindo, então, para o Primeiro Caso, onde não temos nenhum compensador
C(s)=1, foi montado da seguinte no ambiente do Simulink:

Simulando em tempo de 8 segundos foi obtida à seguinte resposta:


Nota-se que o sistema tem uma leve oscilação inicial, um pequeníssimo
sobressinal, mas estabiliza longe da referência de 100 km/h.

Seguindo, então, para o Segundo Caso, onde temos apenas o Compensador de


Ganho 𝐶(𝑠) = 10.1158, foi montado da seguinte maneira no ambiente do Simulink:

Simulando em tempo de 8 segundos foi obtida à seguinte resposta:


Nota-se uma subida mais rápida inicialmente e uma referência mais próxima no
regime permanente, porém com um sistema mais oscilatório e um sobressinal bem
aparente no regime transitório.

Seguindo, então, para o Terceiro Caso, onde temos apenas o Compensador de


𝑠+1
Ganho e Atraso 𝐶(𝑠) = 10.1158 ∗ ( 𝑠+0.004823 ) foi montado da seguinte maneira no
ambiente do Simulink:

Simulando em tempo de 8 segundos foi obtida a seguinte resposta:

Nota-se, que quando utilizado o compensador de Ganho e Atraso, manteve as


mesmas características de transitório, com oscilação e sobressinal, porém, a atuação
do Atraso, trouxe em regime permanente o erro de posição nulo, fixada na referência.

Seguindo, então, para o Quarto Caso, onde temos apenas o Compensador de


𝑠+4.348
Ganho e Avanço 𝐶(𝑠) = 10.1158 ∗ 2.2998 ∗ ( ) foi montado da seguinte
𝑠+23
maneira no ambiente do Simulink:
Simulando em tempo de 8 segundos foi obtida a seguinte resposta:

Nesta simulação, temos uma resposta mais rápida no transitório, foram


anuladas as oscilações e o sobressinal pelo efeito do Compensador de Avanço, porém
o sistema não alcança a referência (100km/h).

Seguindo, então, para o Quinto Caso, onde temos o Compensador Completo de


𝑠+4.348 𝑠+1
Ganho, Avanço e Atraso, 𝐶(𝑠) = 10.1158 ∗ 2.2998 ∗ ( ) ∗ (𝑠+0.004823) foi
𝑠+23
montado da seguinte maneira no ambiente do Simulink:
Simulando em tempo de 8 segundos foi obtida a seguinte resposta:

Enfim, obtida a resposta do sistema com o Compensador Completo projetado,


podemos notar a resposta rápida e suave, sem oscilações e sobressinal, além de
termos cravado o regime permanente na referência. Portanto nota-se a característica
de cada parte do compensador e como ele inflige na resposta em si.

SCRIPT UTILIZADO NO TRABALHO:


clc
clear all
close all
s=tf('s');

% Trabalho T2 - Projeto de Sistemas de Controle


% PUCRS - Escola Politécnica
% Prof. Dr. Rafael Castro
%
% Projeto de Compensadores Dinâmicos para Controle
% de Velocidade de Cruzeiro em Automóveis

%% Função de Transferência G(s) da Planta

% Insira sua matrícula (sem DV) dentro dos parênteses abaixo:


[ a , b , c ] = getvaluesT2( 18106720 )
% Atenção: não sobrescrever os parâmetros (a,b,c).

G = a/( s^2+b*s+c );
% |------|
% Pedal Acelerador --> | G(s) | --> Velocidade do Automóvel
% [%] |------| [km/h]

%% Diagrama de Bode da Planta

% Espectro de frequência [rad/s]


W = 10.^(-4:0.01:4)';

figure(1)
hold all
bode(G,W)
grid on

%% Utilize este espaço para projetar seu controle

% REQUISITOS:
% -> Malha fechada estavel com margem de fase (?m) entre 60 e 70 graus
[65°+5°];
% -> Frequencia de cruzamento 0 dB (?0dB) entre 9 e 11 rad/s [10
rad/s];
% -> Erro em regime permanente ao degrau de referencia menor ou igual
a
% um centesimo percentual, ou seja: ep ? 10^?4 = 0.0001, ou seja Kp >=
9999
% então, [Kp >= 10000].

% 1) ANÁLISE INICIAL:

% Pelo BODE:
% Margem de fase inicial = 72°
% W0dB = 2.09 rad/s
% Kp = 20.8dB = 10.9647
Kp = 10.9647;
Kp_alvo = 10000;

% 2) Projeto Compensador GANHO K0:

% W0dB* [alvo] = 10 rad/s


W0db_alvo = 10;
% Ganho em W0dB* = -20.1 dB
M = -20.1;
K0= 10^(-M/20)
% Kp'
Kp_ganho= Kp*K0
% Margem de fase nova:
Margem_fase_ganho = 27; % (-153)-(-180)
% Bode Ganho K0
C_ganho = K0;
G_ganho = C_ganho*G;
bode(G_ganho, W)

% 3) Projeto Compensador AVANÇO:

% Margem de Fase Desejada = 65° + 5° (ATRASO)


aux_fase = 43; % (70° - 27°)
% Beta
beta = (1+sind(aux_fase))/(1-sind(aux_fase));
% Polo Avanço
Pb = W0db_alvo*sqrt(beta);
% Zero Avanço
Zb = Pb/beta;
% Ganho Avanço
Kb = sqrt(beta)
% Kp após avanço
Kp_avanco = Kp_ganho/Kb;
% Bode avanço
C_avanco = Kb*((s+Zb)/(s+Pb));
G_avanco_ganho = C_avanco*G_ganho;
bode(G_avanco_ganho, W)

% 4) Projeto Compensador ATRASO:

% Alfa
Alfa = Kp_alvo/Kp_avanco;
% Zero Atraso
Za = W0db_alvo/10
% Polo Atraso
Pa = Za/Alfa
% Margem de Fase FINAL = 70° - 5° = 65°.
C_atraso = (s+Za)/(s+Pa)
G_atraso_avanco_ganho = C_atraso*G_avanco_ganho;
bode(G_atraso_avanco_ganho, W)

Você também pode gostar