relatorio controle continuo

33
1 Pontifícia Universidade Católica do Paraná (PUC-Pr) Escola Politécnica Engenharia de Controle e Automação Osvaldo Silveira, Rafael dos Santos, Vinicius Pertel, Willian Vinicius Atividade de Laboratório 1: Sintonia de Controladores P, PI e PID Trabalho desenvolvido pelos alunos de Engenharia de Controle e Automação na matéria de Controle Continuo II, ministrada pelo professor Roberto Zanetti Freire na Pontifícia Universidade Católica do Paraná Setembro de 2014. Curitiba.

Upload: junior-silveira

Post on 14-Dec-2015

46 views

Category:

Documents


35 download

DESCRIPTION

Relatório sobre projeto de controle elaborado pelos alunos do curso de Engenharia de Controle e Automação - PUCPR

TRANSCRIPT

1

Pontifícia Universidade Católica do Paraná (PUC-Pr)

Escola Politécnica

Engenharia de Controle e Automação

Osvaldo Silveira, Rafael dos Santos, Vinicius Pertel, Willian Vinicius

Atividade de Laboratório 1: Sintonia de Controladores P, PI e PID

Trabalho desenvolvido pelos alunos de

Engenharia de Controle e Automação na

matéria de Controle Continuo II, ministrada

pelo professor Roberto Zanetti Freire na

Pontifícia Universidade Católica do Paraná

Setembro de 2014. Curitiba.

2

Sumário 1 - Introdução ................................................................................................................................ 3

2 - Desenvolvimento ..................................................................................................................... 4

Parte 1: ...................................................................................................................................... 4

1) Determine os parâmetros dos controladores P, PI e PID utilizando os dois métodos

de Ziegler-Nichols, apresente estes valores em duas tabelas da mesma forma que as

tabelas 1 e 2. ......................................................................................................................... 4

2) Para cada um dos métodos de Ziegler-Nichols: ............................................................ 6

3) Quais as vantagens e desvantagens da aplicação de cada método de Ziegler-Nichols?

15

Parte 2: .................................................................................................................................... 16

1) Obter a curva de resposta do sistema, em malha aberta, para um degrau de 3,5V a

6V e fazer a modelagem do sistema pelo primeiro método de Ziegler-Nichols. Determine:

16

2) Verificar através de simulação se o modelo proposto representa de forma aceitável o

modelo real em toda sua região de funcionamento linear, sobreponha as curvas de

resposta do motor e do modelo em um mesmo gráfico para fazer esta comparação

justificando sua resposta. .................................................................................................... 20

3) Adote o controlador PI projetado através de um dos métodos de Ziegler-Nichols e

simule, utilizando o MATLAB/Simulink, seu comportamento utilizando um dos modelos

aproximados do item “e” do exercício 1. Este controlador deverá modificar a resposta do

motor de modo que o erro seja nulo em regime permanente para uma entrada do tipo

degrau de 5V ....................................................................................................................... 21

4) Monte o controlador utilizando amplificadores operacionais, teste o controlador na

planta com uma resposta ao degrau de 5V (igual a simulação do exercício anterior) e

determine: ........................................................................................................................... 24

4 - Referencias ............................................................................................................................. 28

5 - Anexo ..................................................................................................................................... 29

3

1 - Introdução

Este trabalho foi subdividido de acordo com a numeração das questões

propostas pelo material da atividade. Ele baseia-se em duas atividades

principais, uma é aprender a trabalhar com o método de Ziegler-Nichols a partir

de uma função dada, e a outra é aplicar esses conhecimentos obtidos na

primeira etapa no projeto do controlador para o Ball & Hoop.

Foram necessários conhecimentos obtidos em sala da matéria de controle

continuo, informática, eletrônica entre outros que foram adquiridos por meios de

pesquisas.

4

2 - Desenvolvimento

Parte 1:

1) Determine os parâmetros dos controladores P, PI e PID utilizando os dois

métodos de Ziegler-Nichols, apresente estes valores em duas tabelas da

mesma forma que as tabelas 1 e 2.

Equação que representa o processo no domínio da frequência (figura 1).

Figura 1.

O diagrama em malha fechada sem perturbação pode ser observado na

figura 2.

Figura 2.

O diagrama em malha fechada com perturbação P(s) pode ser observado

na figura 3.

Figura 3.

5

No primeiro método, é obtida experimentalmente a resposta de uma

planta quando aplicado um degrau unitário. Este método é usado quando a curva

de resposta para uma entrada degrau unitário possuir um formato em “S” e na

planta não existir integradores ou polos complexos conjugados dominantes. A

função de transferência pode ser aproximada por um sistema de primeira ordem

com um atraso de transporte, indicado abaixo.

𝐶(𝑠)

𝑈(𝑠)=

𝐾𝑒−𝐿𝑠

𝑇𝑠 + 1

Tabela 1 - Parâmetros do controlador para o primeiro método

Tipo do Controlador Kp Ti Td

P τ /(K T) ∞ 0 PI 0,9τ /(K T) T/0,3 0

PID 1,2τ /(K T) 2T 0,5 T

O segundo método é um ajuste do primeiro e foi desenvolvido a partir de

experiências feitas por Ziegler. Este segundo método trabalha com um ganho de

um controlador proporcional (figura 4), fazendo o sistema atingir o limite da

estabilidade e do período de oscilação (Pcr).

Figura 4.

Tabela 2 - Parâmetros do controlador para o segundo método

Tipo do Controlador Kp Ti Td

P 0,50 K ∞ 0 PI 0,45 K P/1,2 0

PID 0,60 K 0,50 P P/8

6

Parâmetros do controlador gerados para o sistema, utilizando o primeiro

e o segundo método de Ziegler-Nichols:

Tabela 3 – Parâmetros do controlador para o primeiro método obtidos

Tipo do Controlador Kp Ti Td

P 0,3447 ∞ 0 PI 0,3102 47,8 0

PID 0,4136 28,68 7,17

Tabela 4 – Parâmetros do controlador para o segundo método obtidos

Tipo do Controlador Kp Ti Td

P 0,333 ∞ 0 PI 0,300 52,375 0

PID 0,400 31,425 3,1425

2) Para cada um dos métodos de Ziegler-Nichols:

a) Apresentar a saída para uma entrada degrau unitário (P, PI e PID

para o primeiro método em um gráfico, P, PI e PID para o segundo

método em outro gráfico).

7

A saída de uma entrada degrau unitário para o primeiro método é

mostrada na figura 5.

Figura 5.

A saída de uma entrada degrau unitário para o segundo método é

mostrada na figura 6.

Figura 6.

Na figura 7 pode se observar o esquemático montado no simulink para

gerar a resposta dos controladores sobre o sistema. Para o primeiro e o segundo

método, o esquemático é o mesmo, pois quem varia são apenas os valores de

referencia usados para os cálculos.

P

PI

PID

P

PI

PID

8

Figura 7.

b) Determinar o sobre sinal máximo percentual e o tempo de

acomodação critério (2%) a partir da simulação.

“Maximo sobressinal (em porcentagem), Mp : é o valor máximo de pico da

curva de resposta, medido a partir da unidade. Se o valor final da resposta em

regime permanente diferir da unidade, então é comum utilizar porcentagem

máxima de sobressinal definida por:

Porcentagem máxima de sobressinal = 𝑐(𝑡𝑝)−𝑐(∞)

𝑐(∞)× 100% “ (Ogata,2010).

Analogicamente, no script do programa nós obtemos Mp através de:

mp_a=(max(resposta_ma)-resposta_ma(end))/resposta_ma(end)

O tempo de acomodação (ts) é o tempo necessário para a curva de

resposta alcançar e permanecer dentro de uma faixa em torno do valor final, esta

faixa possui magnitude especificada por uma percentagem absoluta do valor

final (2% ou 5%).

9

Ts (2%) = 4𝜏 = 4

𝜎=

4

𝜁𝜔𝑛

Ts (5%) = 3𝜏 = 3

𝜎=

3

𝜁𝜔𝑛

O valor de Ts também pode ser calculado utilizando a estrutura a seguir para 2%(onde kma=ts): kma=1200;

while (resposta_ma(kma)>(resposta_ma(end)*1.02) || resposta_ma(kma)<(resposta_ma(end)*0.98))

kma=kma-1; end kma

Na figura 8 pode-se observar aonde são representadas graficamente

algumas informações uteis para conhecer e trabalhar com um sistema.

Figura 8

As Tabelas 5 e 6 representam os valores encontrados referentes à Ts(2%)

e ao Mp para o primeiro e para o segundo método.

10

Tabela 5 – Tempo de acomodação (critério2%) e sobre sinal máximo percentual do controlador

obtidos pelo primeiro método.

Tipo do Controlador Ts(2%)s Mp Mp(%)

P 464 0,5682 56,82% PI 798 0,6888 68,88%

PID 238 0,5143 51,43%

Tabela 6 – Tempo de acomodação (critério2%) e sobre sinal máximo percentual do controlador

obtidos pelo segundo método.

Tipo do Controlador Ts(2%)s Mp Mp(%)

P 473 0,5542 55,42% PI 814 0,6341 63,41%

PID 195 0,4426 44,26%

c) Obter a resposta à entrada de perturbação em degrau unitário

para o controlador ajustado, a perturbação deverá ser aplicada

após a estabilização do sistema considerando para uma referência

R(s) também em degrau unitário aplicada no instante tempo = 0s.

A representação de um sistema cuja uma perturbação é aplicada está na

figura 3.

Figura 3.

Na figura 9 pode se observar o esquemático montado no simulink para

gerar a resposta dos controladores sobre o sistema com a entrada da

perturbação:

11

Figura 9.

A resposta à entrada de perturbação em degrau unitário para o primeiro

método é mostrada na figura 10.

Figura 10.

P

PI

PID

12

A resposta à entrada de perturbação em degrau unitário para o primeiro

método é mostrada na figura 11.

Figura 11.

d) Considerando o item anterior, analise o sinal de controle de cada

um dos controladores.

O que mais chama atenção é: o controlador Proporcional apresenta um

ganho grande que muitas vezes pode não ser interessante para a

implementação pratica, o controlador Proporcional Integral apresenta o maior

valor de pico e precisa oscilar mais vezes para estabilizar a saída, logo a sua

resposta é mais “lenta” e por fim o controlador PID se destaca por, em geral,

apresentar um tempo de acomodação menor em relação aos outros.

P

PI

PID

13

e) Para a entrada de perturbação, determinar a amplitude de pico e a

duração do desvio (critério 2%).

As Tabelas 7 e 8 representam os valores encontrados referentes à Ts(2%)

e ao Mp para o primeiro e para o segundo método com a entrada da perturbação.

Tabela 7 – Tempo de acomodação (critério2%) e sobre sinal máximo percentual do controlador

obtidos pelo primeiro método com entrada de perturbação.

Tipo do Controlador Ts(2%)s Mp Mp(%)

P 564 0,5682 56,82% PI 809 4,2932 429,32%

PID 269 2,7978 279,78%

Tabela 8 – Tempo de acomodação (critério2%) e sobre sinal máximo percentual do controlador

obtidos pelo segundo método com entrada de perturbação.

Tipo do Controlador Ts(2%)s Mp Mp(%)

P 573 0,5542 55,42% PI 811 4,3248 432,48%

PID 269 2,7543 275,43%

f) Analise a saída do sistema e o sinal de controle quando uma

perturbação P(S) em degrau unitário for aplicada ao sistema

quando o sinal de referência R(s) for nulo.

A resposta à entrada de perturbação em degrau unitário quando o sinal

de referência R(s) for nulo para o primeiro método é mostrada na figura 12.

14

Figura 12.

A resposta à entrada de perturbação em degrau unitário quando o sinal

de referência R(s) for nulo para o segundo método é mostrada na figura 13.

Figura 13.

P

PI

PID

P

PI

PID

15

3) Quais as vantagens e desvantagens da aplicação de cada método de Ziegler-

Nichols?

Uma das grandes vantagens da aplicação do método de Ziegler-Nichols é

que ele se baseia e pode ser análise graficamente para ser implementado, o

que torna fácil a sua manipulação. Contudo deve-se considerar que os valores,

como por exemplo o “tempo morto”, devem ser obtidos com a maior precisão

possível para que os dados extraídos pela aplicação do método sejam validos.

16

Parte 2:

Para a realização do Projeto e Execução de um Controlador de Velocidade Analógico para o Sistema Ball & Hoop foi obtida a curva de resposta da planta (em azul no gráfico abaixo) ao ser aplicada uma entrada degrau com amplitude de 5 e -5v (como pode ser vista na figura abaixo na cor verde).

Figura x.

1) Obter a curva de resposta do sistema, em malha aberta, para um degrau de

3,5V a 6V e fazer a modelagem do sistema pelo primeiro método de Ziegler-

Nichols. Determine:

a) região de funcionamento linear:

A região de funcionamento linear de uma curva de resposta de uma planta é a região onde o sinal de resposta se assemelha a uma reta, o que significa que a velocidade do motor responde de forma linear a entrada do degrau. O que nessa resposta apresentada a cima se dá entre 1 a 5 segundos para o degrau positivo, e para o negativo de 1.5 a 4.5 segundos.

17

b) zona morta: A zona morta que também é chamado de tempo morto é o tempo que o

processo leva para começar a responder à variação em degrau. Para a entrada positiva o tempo morto é 1.1425 segundos.

c) ganho do sistema:

O ganho do sistema é dado pela variação do valor da resposta em estado estacionário e o valor da entrada, o valor da resposta em estado estacionário para a entrada positiva desse projeto é de 4.7345 v, e para a negativa é 4.7875v, sendo assim o ganho do sistema para entrada positiva é de 0.9469 e para a negativa é de 0.9575.

d) constante de tempo:

Para se obter a constante de tempo e o tempo morto foi utilizado o método de reta tangente proposto na primeira parte desta atividade, utilizando esse método foi obtida a constante de tempo com o valor de 4.6465 segundos para entrada positiva e para negativa de 3.7405 segundos.

e) Duas funções de transferência para o processo (motor) utilizando

aproximações para a exponencial (usar aproximações de Padé de 1ª e de 2ª

ordem).

18

A aproximação de Padé de 1ª ordem é mostrada a cima que foi obtida

aplicando:

𝐺(𝑠) =𝐾

𝜏𝑠 + 1𝑒−𝑠𝑇

Onde 𝑒−𝑠𝑇 pode ser aproximado pelo modelo de Padé de primeira ordem

por:

2 − 𝑇𝑠

2 + 𝑇𝑠= 𝑒−𝑠𝑇

Sendo assim a planta pode ser aproximada por:

𝐺(𝑠) =0.9522

(4.1935𝑠 + 1) (2 − 1.1963𝑠)

(2 + 1.1963𝑠)

Os valores de T, 𝜏, K foram obtidos realizando-se a media aritmética dos valores de entrada positiva e negativa.

Para aproximação de 2ª ordem 𝑒−𝑠𝑇 é aproximado pela equação:

𝑒−𝑠𝑇 =𝑇2𝑠2 − 6𝑇𝑠 + 12

𝑇2𝑠2 + 6𝑇𝑠 + 12

19

Logo a aproximação da planta é:

𝐺(𝑠) =0.9522

(4.1935𝑠 + 1) 1,4311𝑠2 − 7,1778𝑠 + 12

1,4311𝑠2 + 7,1778𝑠 + 12

Sua resposta ao degrau é mostrada a seguir:

20

2) Verificar através de simulação se o modelo proposto representa de forma

aceitável o modelo real em toda sua região de funcionamento linear,

sobreponha as curvas de resposta do motor e do modelo em um mesmo

gráfico para fazer esta comparação justificando sua resposta.

A imagem a cima corresponde a curva de reposta do motor(Curva que

apresenta ruído) e a curva do modelo de Padé de 2ª ordem, pode-se notar que as curvas não possuem a mesma inclinação mas possuem o mesmo tempo morto e máximo pico sendo assim pode-se se dizer que o modelo simula de forma satisfatória a resposta do motor.

21

3) Adote o controlador PI projetado através de um dos métodos de Ziegler-

Nichols e simule, utilizando o MATLAB/Simulink, seu comportamento

utilizando um dos modelos aproximados do item “e” do exercício 1. Este

controlador deverá modificar a resposta do motor de modo que o erro seja

nulo em regime permanente para uma entrada do tipo degrau de 5V

Dado este modelo de aproximação, é possível simular um controlador agindo sobre o modelo de planta apresentado na figura 1. O controlador aplicado foi um PI (Proporcional-Integral), para extrair as informações necessárias da planta, para desenvolvimento do controlador, foi necessária a escolha de um dos métodos de Ziegler-Nichols apresentados, nos exercícios anteriores .O método utilizado para sintonia do controlador foi o primeiro método (método da reta tangente), este método foi escolhido pois trabalha em malha aberta, ou seja, trabalhamos diretamente com a curva em “s” da planta (curva do modelo de Padé de 2ª ordem) , sem precisar efetuar outras modificações.

Ao efetuarmos o método da reta tangente, foram obtido novos valores

para a planta G(s),

𝐺(𝑠) =0.9522

(3.765𝑠 + 1) 1.504𝑠2 − 7.359𝑠 + 12

1.504𝑠2 + 7.359𝑠 + 12

Ao aplicar o método da reta tangente foram obtidos os parâmetros Kp e

Ti, necessários para um controlador PI conforme a formula abaixo

𝐻(𝑠) =𝐾𝑝(𝑠 + 1 𝑇𝑖𝑠⁄ )

𝑠

Dados os respectivos valores de Kp= 3.8438 e Ti=3.8085 , a equação do controlador ficou na forma,

𝐻(𝑠) =3.8438 (𝑠 + 1 3.8085𝑠)⁄

𝑠

Abaixo Diagrama de Blocos para a planta e o controlador,

22

Para efetuar a simulação no MATLAB/Simulink, temos o seguinte

diagrama de blocos:

As demais etapas e simulação feitas através de script no MATLAB estão

disponíveis no anexo(nº anexos). O sinal do sistema simulado, é apresentado

na figura(n), na próxima pagina.

23

Para efetuar os cálculos de tempo de acomodação ts(2%) e máximo

sobressinal utiliza-se as formulas.

Porcentagem máxima de sobressinal = 𝑐(𝑡𝑝)−𝑐(∞)

𝑐(∞)× 100% “ (Ogata,2010).

Para o calculo do tempo de acomodação (ts(2%)) e máximo sobressinal (Mp)

foi utilizado o seguinte algoritmo,

kma=801; while (resposta_ma(kma)>(resposta_ma(end)*1.02) ||

resposta_ma(kma)<(resposta_ma(end)*0.98)) kma=kma-1; end tempo_ma=tempo(kma); mp_a=(max(resposta_ma)-resposta_ma(end))/resposta_ma(end)

onde kma é o índice máximo do vetor tempo (eixo “X”), e a resposta_a (eixo

“Y”), apresenta o valor da curva em determinado instante.Para o critério de

ts(2%), o valor do tempo de acomodação é de 40 segundos. O máximo

sobressinal encontrado foi de 6.83%.

24

4) Monte o controlador utilizando amplificadores operacionais, teste o

controlador na planta com uma resposta ao degrau de 5V (igual a simulação

do exercício anterior) e determine:

Para projeto do controlador real foi utilizada a seguinte arquitetura,

O diagrama equivalente com amplificadores operacionais somente para

o controlador é mostrado abaixo,

Foi utilizado o software de montagem e simulação de circuitos

elétricos Proteus/Isis, as imagens a seguir mostram a curva de resposta, e toda

a montagem do controlador incluindo os valores de resistores e capacitores

utilizados.

25

Cálculos dos resistores e capacitores

Dado o circuito abaixo,

26

A equação de saída pela entrada deste circuito é,

𝑉𝑜(𝑠)

𝑉𝑖(𝑠)= −

𝑍2

𝑍1 (𝐼)

Utilizando a formula (I) para o circuito com amplificadores operacionais

da parte Proporcional da figura 2 temos que,

𝐾𝑝 = −𝑅12 + 𝑅11 + 𝑅5

𝑅13 + 𝑅4 + 𝑅14= 3.8438

Utilizando a formula (I) para o circuito com amplificadores operacionais

da parte integral da figura 2 temos que,

𝐾𝑖 =1

𝑅3𝐶1𝑠= 1.0093

Após os cálculos e projeto, a curva de resposta do sistema com o

controlador e a planta real foi obtida, e está plotada em azul na figura abaixo,

Figura3

27

Podemos comparar com a curva simulada

Existem muitas diferenças entra a curva real e a curva simulada, o tempo

de acomodação por exemplo, da curva simulada é de 40s e da curva real é maior

que 60s. Houve uma mudança também na referencia da curva de resposta,

quando simulamos a referencia vale 5 volts, valor do degrau aplicado, porém, ao

aplicarmos uma entrada de 5 volts no sistema real, a referencia do sinal aumenta

para um valor de aproximadamente 6.75 volts. Em nossa simulação, a curva

obtida para um degrau de 0 a +5 volts positivo não se comportou de maneira

satisfatória, a curva apresentada na figura 3, é a curva para uma entrada de

degrau de 0 a -5 volts, porém, foi rebatida para efeito de comparação. Neste

caso, já que não foi obtida a curva para entrada de 0 a +5 volts, não podemos

comparar. Um fator que impediu a correta apresentação da curva de respota foi

o capacitor usado no projeto do controlador, que por ser polarizado, modificou

bastante o comportamento da curva para sinais de entrada opostos.

28

4 - Referencias

OGATA, Katsuhiko. Engenharia de Controle Moderno.

5ª Edição. Rio de Janeiro: Pearson, 2010.

OGATA, Katsuhiko. Solving control engineering problems with MATLAB.

Englewood cliffs: Prentice Hall, 1994.

NISE, Norman S. Engenharia de sistemas de controle. Rio de Janeiro: LTC,

2009.

29

5 - Anexo

Atividade1_Ctrlprog.m % Parte1: Primeiro método sem perturbação //----------------------------------------------------------------------------------------------

clear all; close all; clc; %Função de Transferência

num=15; den=[6000 1100 60 1]; G=tf(num,den); dt=0.05; t=0:dt:350; y=step(G,t)'; dy=diff(y)/dt; [m,p]=max(dy); yi=y(p); ti=t(p); L=ti-yi/m; Tau=(y(end)-yi)/m+ti-L; K=y(end); %Controlador PID Kp3=1.2*Tau/(K*L); Ti2=2*L; Td=L/2; Ki=Kp3/Ti2; Kd=Kp3*Td; %Controlador PI Kp2=0.9*Tau/(K*L); Ti1=L/0.3; Ki1=Kp2/Ti1; %Controlador P Kp1=Tau/(K*L); %Funções Controlador %FTCPID=tf([Kd Kp3 Ki],[1 0]); %FTCPI=tf([Kp2 Ki1],[1 0]); %FTCP=tf(Kp1,1); %Funções de Transferência %HLC=feedback(G*FTCPID,1); %HLC2=feedback(G*FTCPI,1); %HLC3=feedback(G*FTCP,1); %Plotagem sim('Atvdade1Ctrl'); plot(tempo,resposta_ma,'b'); % azul, PID hold on; plot(tempo,resposta_ma2,'r'); % vermelho, PI hold on; plot(tempo,resposta_ma3,'g'); % verde, P grid on;

//----------------------------------------------------------------------------------------------

30

CtrlOsc.m % Parte1: Segundo método sem perturbação

//----------------------------------------------------------------------------------------------

clear all; close all; clc;

dt=0.05; num=15; den=[6000 1100 60 1]; t=0:dt:50; H=tf(num,den); Kasc=2/3; FOsc=feedback(Kasc*H,1); y=step(FOsc,t)'; [m,p1]=max(y); ti=t(p1); t=10:dt:145; y=step(FOsc,t)'; [m,p2]=max(y); tf=t(p2); Pasc=tf-ti; %Controlador P Kp1=0.5*Kasc; %Controlador PI Kp2=0.45*Kasc; Ti1=Pasc/1.2; Ki1=Kp2/Ti1; %Controlador PID Kp3=0.6*Kasc; Ti2=0.5*Pasc; Td=Pasc/8; Ki=Kp3/Ti2; Kd=Kp3*Td; %Funções Controlador %FTCPID=tf([Kd Kp3 Ki],[1 0]); %FTCPI=tf([Kp2 Ki1],[1 0]); %FTCP=tf(Kp1,1); %Funções de Transferencia %HLC=feedback(G*FTCPID,1); %HLC2=feedback(G*FTCPI,1); %HLC3=feedback(G*FTCP,1); %Plotagem figure(2); sim('Atvdade1Ctrl'); plot(tempo,resposta_ma); hold on; plot(tempo,resposta_ma2,'r'); hold on; plot(tempo,resposta_ma3,'g'); grid on;

//----------------------------------------------------------------------------------------------

31

Atividade1_Ctrlprog.m % Parte1: Primeiro método com perturbação //----------------------------------------------------------------------------------------------

clear all; close all; clc; %Função de Transferência

num=15; den=[6000 1100 60 1]; G=tf(num,den); dt=0.05; t=0:dt:350; y=step(G,t)'; dy=diff(y)/dt; [m,p]=max(dy); yi=y(p); ti=t(p); L=ti-yi/m; Tau=(y(end)-yi)/m+ti-L; K=y(end); %Controlador PID Kp3=1.2*Tau/(K*L); Ti2=2*L; Td=L/2; Ki=Kp3/Ti2; Kd=Kp3*Td; %Controlador PI Kp2=0.9*Tau/(K*L); Ti1=L/0.3; Ki1=Kp2/Ti1; %Controlador P Kp1=Tau/(K*L); %Funções Controlador %FTCPID=tf([Kd Kp3 Ki],[1 0]); %FTCPI=tf([Kp2 Ki1],[1 0]); %FTCP=tf(Kp1,1); %Funções de Transferência %HLC=feedback(G*FTCPID,1); %HLC2=feedback(G*FTCPI,1); %HLC3=feedback(G*FTCP,1); %Plotagem sim(' Atv1Per'); plot(tempo,resposta_ma,'b'); % azul, PID hold on; plot(tempo,resposta_ma2,'r'); % vermelho, PI hold on; plot(tempo,resposta_ma3,'g'); % verde, P grid on;

//----------------------------------------------------------------------------------------------

32

CtrlOsc.m % Parte1: Segundo método com perturbação

//----------------------------------------------------------------------------------------------

clear all; close all; clc;

dt=0.05; num=15; den=[6000 1100 60 1]; t=0:dt:50; H=tf(num,den); Kasc=2/3; FOsc=feedback(Kasc*H,1); y=step(FOsc,t)'; [m,p1]=max(y); ti=t(p1); t=10:dt:145; y=step(FOsc,t)'; [m,p2]=max(y); tf=t(p2); Pasc=tf-ti; %Controlador P Kp1=0.5*Kasc; %Controlador PI Kp2=0.45*Kasc; Ti1=Pasc/1.2; Ki1=Kp2/Ti1; %Controlador PID Kp3=0.6*Kasc; Ti2=0.5*Pasc; Td=Pasc/8; Ki=Kp3/Ti2; Kd=Kp3*Td; %Funções Controlador %FTCPID=tf([Kd Kp3 Ki],[1 0]); %FTCPI=tf([Kp2 Ki1],[1 0]); %FTCP=tf(Kp1,1); %Funções de Transferencia %HLC=feedback(G*FTCPID,1); %HLC2=feedback(G*FTCPI,1); %HLC3=feedback(G*FTCP,1); %Plotagem figure(2); sim('Atv1Per'); plot(tempo,resposta_ma); hold on; plot(tempo,resposta_ma2,'r'); hold on; plot(tempo,resposta_ma3,'g'); grid on;

//----------------------------------------------------------------------------------------------

33

ts.m % Parte1: Cálculo do Ts(2%) e Mp

//----------------------------------------------------------------------------------------------

clc;

kma=1190; % azul PID while (resposta_ma(kma)>(resposta_ma(end)*1.02) ||

resposta_ma(kma)<(resposta_ma(end)*0.98)) kma=kma-1; end %tempo_ma3=tempo(kma3) kma

kma2=1200; % azul PID while (resposta_ma2(kma2)>(resposta_ma2(end)*1.02) ||

resposta_ma2(kma2)<(resposta_ma2(end)*0.98)) kma2=kma2-1; end %tempo_ma3=tempo(kma3) resposta_ma(end) kma2

kma3=1200; % azul PID while (resposta_ma3(kma3)>(resposta_ma3(end)*1.02) ||

resposta_ma3(kma3)<(resposta_ma3(end)*0.98)) kma3=kma3-1; end %tempo_ma3=tempo(kma3) kma3 %resposta_ma(kma)

mp_a=(max(resposta_ma)-resposta_ma(end))/resposta_ma(end) mp_a2=(max(resposta_ma2)-resposta_ma2(end))/resposta_ma2(end) mp_a3=(max(resposta_ma3)-resposta_ma3(end))/resposta_ma3(end)

//----------------------------------------------------------------------------------------------