16
Universidade de Évora Engenharia Mecatrónica Controlo e Automação II 5. Diagramas de blocos Um sistema de controlo pode ser constituído por vários componentes. O diagrama de blocos é uma representação por meio de símbolos das funções desempenhadas por cada componente e do fluxo dos sinais. Num diagrama de blocos as variáveis do sistema estão ligadas entre si por meio de blocos funcionais. O bloco é uma representação das operações que são efectuadas sobre o sinal à sua entrada. Um elemento do diagrama de blocos pode ser: A representação por diagramas de blocos tem como principal vantagem a simplificação da análise dos sistemas. O diagrama de blocos não contem nenhuma informação relativa à estrutura física do sistema. Qualquer sistema linear pode ser representado por um diagrama de blocos constituído por blocos, somadores e pontos de ramificação. Exemplo de sistema com realimentação Quando a saída de um sistema é realimentada para comparação com a entrada, pode ser necessário modificar o sinal de saída de modo a que ele possa ser comparado com o sinal de entrada. Isso pode ser feito por meio de um bloco auxiliar de função de transferência H(s). Para o sistema representado pode obter-se a função de transferência da seguinte forma: [ ] = = = = ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( s C s H s R s G s C s C s H s R s B s R s E s E s G s C ) ( ) ( 1 ) ( ) ( ) ( s H s G s G s R s C + = Função de transferência da malha fechada

Diagramas de blocosltodi.est.ips.pt/fgrilo/down/CA2.pdfUniversidade de Évora Engenharia Mecatrónica Controlo e Automação II 6.1.Controladores de 2 posições ou ON-OFF Sistema

Embed Size (px)

Citation preview

Universidade de Évora Engenharia Mecatrónica Controlo e Automação II

5. Diagramas de blocos

Um sistema de controlo pode ser constituído por vários componentes. O diagrama de blocos é uma representação por meio de símbolos das funções desempenhadas por cada componente e do fluxo dos sinais. Num diagrama de blocos as variáveis do sistema estão ligadas entre si por meio de blocos funcionais. O bloco é uma representação das operações que são efectuadas sobre o sinal à sua entrada.

Um elemento do diagrama de blocos pode ser:

• A representação por diagramas de blocos tem como principal vantagem a simplificação

da análise dos sistemas. • O diagrama de blocos não contem nenhuma informação relativa à estrutura física do

sistema. • Qualquer sistema linear pode ser representado por um diagrama de blocos constituído

por blocos, somadores e pontos de ramificação.

Exemplo de sistema com realimentação

• Quando a saída de um sistema é realimentada para comparação com a entrada, pode ser

necessário modificar o sinal de saída de modo a que ele possa ser comparado com o sinal de entrada. Isso pode ser feito por meio de um bloco auxiliar de função de transferência H(s).

Para o sistema representado pode obter-se a função de transferência da seguinte forma:

[ ]⇒−=⇒⎩⎨⎧

−=−==

)()()()()()()()()()()(

)()()(sCsHsRsGsC

sCsHsRsBsRsEsEsGsC

)()(1)(

)()(

sHsGsG

sRsC

+=⇒ → Função de transferência da malha fechada

Universidade de Évora Engenharia Mecatrónica Controlo e Automação II

ALGUMAS REGRAS DE SIMPLIFICAÇÃO DE DIAGRAMAS DE BLOCOS

Diagrama de blocos original Diagrama de blocos Equivalente

Universidade de Évora Engenharia Mecatrónica Controlo e Automação II

• Sistema em malha fechada sujeito a uma perturbação N(s).

Para analisar o efeito da perturbação N(s), considera-se que o sistema está inicialmente com R(S)=0. Calcula-se então a resposta CN(s) à perturbação apenas. Neste exemplo a resposta pode então ser determinada a partir de:

)()()(1)(

)()(

21

2

sHsGsGsG

sNsCN =

Da mesma forma pode obter-se a resposta do mesmo sistema sujeito apenas à entrada, considerando para o efeito N(s)=0. Neste caso a resposta do sistema CR(s) à entrada de referência R(s) pode ser determinada a partir de:

)()()(1)()(

)()(

21

21

sHsGsGsGsG

sRsCR

+=

Como o sistema é linear, a resposta à aplicação simultânea da entrada e da perturbação pode ser obtida somando as respostas individuais (Principio da sobreposição) e portanto:

)()()()( 2 sG

sCsCsC RN =+=

6. Controlo automático industrial

Os controladores industriais têm como principio de funcionamento a comparação do valor real da saída do sistema onde estão aplicados com o valor desejado para essa saída. Determinando o desvio existente, produz um sinal de controlo que reduz o desvio a zero ou a um valor muito pequeno.

Podemos classificar de acordo com a sua acção de controlo como:

• Controladores de 2 posições ou ON-OFF • Controladores Proporcionais (P) • Controladores Integrais (I) • Controladores Proporcional-Integrais (PI) • Controladores Proporcional-Derivativos (PD) • Controladores Proporcionais-Integral-Derivativos (PID)

)()()(1 21 sHsGsG )()(1 sRsG

+

++ sN( )[ ]

Universidade de Évora Engenharia Mecatrónica Controlo e Automação II

6.1. Controladores de 2 posições ou ON-OFF Sistema de controlo simples com apenas 2 posições do elemento actuador. Sendo o

sinal de saída do controlador m(t) e o erro e(t) o controlo ON-OFF terá apenas dois valores dependendo do valor do erro

⎩⎨⎧

<≥

=0e(t) , 0e(t) ,

)(2

1

uu

tm com u1 e u2 constantes

É comum haver um intervalo de valores de e(t) entre os valores correspondentes a u1 e

u2 (uma histerese).

Exemplo da temperatura de um aquecedor domestico pela acção do seu termostato

Implementação pratica com AMP-Ops de controlo de acção ON-OFF sem histerese

Implementação pratica com AMP-Ops de controlo de acção ON-OFF com histerese

Universidade de Évora Engenharia Mecatrónica Controlo e Automação II

6.2. Controladores Proporcionais (P)

controlador com acção de controlo proporcional é essencialmente uma amplificador

com ganho ajustáveis. A sua relação entre a saída do controlador e o erro e(t) é: m(t)=Kp e(t) ou em termos de transformada de Laplace,

KpsEsU=

)()(

Implementação pratica com AMP-Ops

montagem inversora

i

i

VRR

V

RV

RV

1

20

12

0 0

−=⇔

⇔−

=

Implementação pratica com AMP-Ops montagem não inversora

i

ii

VRRV

RV

RVV

⎟⎟⎠

⎞⎜⎜⎝

⎛+=⇔

⇔−

=−

1

0

1

20

12

0

Universidade de Évora Engenharia Mecatrónica Controlo e Automação II

6.3. Controladores de acção Integral (I)

Num controlador com acção de controlo Integral, o valor da saída do controlador

m(t)altera-se a uma taxa proporcional ao sinal do erro e(t). Ou seja:

∫=⇒=t

dtteKitmteKidt

tdm

0

)()()( )( , onde Ki é uma constante ajustável. A função de

transferência de um controlador de acção Integral é:

sKi

sEsU=

)()(

Implementação práctica com AMP-Ops (inversora)

No controlo integral o sinal de saída em cada instante é dado pela área sob a curva do erro até esse instante. O controlo m(t) pode assumir um valor não nulo, mesmo quando o sinal do erro e(t) é zero. Esta situação é impossível no caso do controlo proporcional.

Universidade de Évora Engenharia Mecatrónica Controlo e Automação II

6.4. Controladores de acção Proporcional-Integral (PI)

A acção de controlo de um controlador PI é definida pela equação:

∫+=t

dtteTiKpteKptm

0

)()( )( ,

A função de transferência de um controlador de acção Integral é:

⎟⎠⎞

⎜⎝⎛ +=

s 11

)()(

TiKp

sEsU

Em que: Kp – Ganho ou sensibilidade proporcional (ajustável) Ti – Tempo do integral (ajustável) É possível decompor este controlador em 2 controladores sequenciais respectivamente P e I.

Como consequência, saliente-se que a saída do controlador P é a entrada do controlador I.

Implementação prática com AMP-Ops

(inversora) (não inversora)

Erro em degrau unitário

Resposta de um controlador PI a uma entrada (erro) em degrau unitário

Universidade de Évora Engenharia Mecatrónica Controlo e Automação II

6.5. Controladores de acção Proporcional-Derivativa (PD)

A acção de controlo de um controlador PI é definida pela equação:

dt

tdeTdKpteKptm )( )( )( += ,

A função de transferência é:

( )sTdKpsEsU 1)()(

+=

Em que: Kp – Ganho ou sensibilidade proporcional (ajustável) Td – Tempo da derivada (ajustável) É possível decompor este controlador em 2 controladores sequenciais respectivamente P e D.

Como consequência, saliente-se que a saída do controlador P é a entrada do controlador D. A acção de controlo derivativa, também designada por controlo da taxa de mudança, é uma acção em que a saída do controlador é proporcional à taxa de mudança do sinal do erro. O tempo Td é o intervalo de tempo de que a acção de controlo proporcional é avançada devido ao efeito da taxa de mudança.

Erro em rampa unitária Resposta de um controlador PD a uma

entrada (erro) em rampa unitária

A acção de controlo derivativa tem um efeito antecipativo. Evidentemente esta acção não pode antecipar uma acção que ainda não ocorreu. Esta acção de controlo permite obter um controlador de elevada sensibilidade, tendo a vantagem de responder à taxa de mudança do erro, podendo produzir uma correcção antes que a grandeza do erro se torne demasiado grande. A sua principal desvantagem reside no facto de que os sinais de ruído são amplificados e pode ocorrer saturação do actuador. Devido ao facto de o controlo de acção Derivativa operar sobre a taxa de variação do erro actuante e não sobre o próprio erro actuante, este nunca é utilizado sozinho. É sempre utilizado em combinação com acção Proporcional (P) ou acção Proporcional-Integral (PI).

Universidade de Évora Engenharia Mecatrónica Controlo e Automação II

6.6. Controladores de acção Proporcional-Integral-Derivativa (PID)

A acção de controlo de um controlador PID é a combinação dos controlos

Proporcionais, Integrais e Derivativos. A equação do controlador é:

∫++=t

dtteTiKp

dttdeTdKpteKptm

0

)()( )( )( ,

A função de transferência é:

⎟⎠⎞

⎜⎝⎛ ++=

sTisTdKp

sEsU

1 1

)()(

Em que: Kp – Ganho ou sensibilidade proporcional (ajustável) Ti – Tempo da derivada (ajustável) Td - Tempo do integral (ajustável)

Implementação prática com AMP-Ops

Universidade de Évora Engenharia Mecatrónica Controlo e Automação II

Nas montagens com controladores electrónicos é frequente, introduzir os controladores

I e D na malha de realimentação. Por exemplo se se desejar uma acção PD, pode inserir-se o

elemento com função de transferência sTd1

1+

na malha de realimentação, mantendo o P na

malha directa. Deve-se manter presente que o controlo de um sistema em malha fechada reduz a

sensibilidade de um sistema em relação a variações dos parâmetros mas também aumenta o número de componentes dos sistemas, aumentando a complexidade e introduzindo também a possibilidade de instabilidade.

6.7. Dicas gerais para desenhar um controlador PID – Matlab

Neste capítulo, pretende-se evidenciar as características de cada controlador P, I e D e como os manipular afim de obter a resposta desejada. Como auxiliar será ser utilizado o MATLAB. O sistema de controlo a considerar terá a estrutura que se segue:

Nesta estrutura, o controlador actua directamente sobre o sinal do erro.

O sistema a utilizar como exemplo é o seguinte:

Considerando que não há atrito adicional nas rodas, e utilizando os conhecimentos adquiridos na

modelação de sistemas, resulta:

)()()()(2 sFsKXsBsXsXMs =++ De onde se extrai a função de transferência:

KBsMssFsX

++= 2

1)()(

Considerando então:

M=1Kg B=10N.s/m K=20N/m

Substituindo na função de transferência fica:

20101

)()(

2 ++=

sssFsX

Universidade de Évora Engenharia Mecatrónica Controlo e Automação II

É objectivo desta demonstração mostrar como cada tipo de controlador contribui para se obter: • Rápido tempo de subida • Overshoot mínimo • Erro nulo em regime permanente

6.7.1. Resposta do sistema em malha aberta a uma entrada em degrau unitário

O sistema em malha aberta é do tipo:

Em que a função de transferência é a cálculada utilizando os conceitos da modelação:

20101

)()(

2 ++=

sssFsX

A simulação poderá ser feita no Matlab com a seguinte sequência de comandos:

• Num=1; • Den=[1 10 20]; • Step(Num,Den)

Sugere-se a construção de um ficheiro *.m.

Time (sec.)

Am

plitu

de

Step Response

0 0.5 1 1.5 20

0.005

0.01

0.015

0.02

0.025

0.03

0.035

0.04

0.045

0.05

Daqui se depreende que o “ganho” da função de transferência em malha aberta é 1/20 e como tal 0,05 será a saída perante uma entrada de um degrau unitário. Isto corresponde a um erro em regime permanente de 0,95. Para além disso o tempo de subida (0-100%) é de 2s. Sugere-se que faça manipulações no sistema para ver como se altera o seu comportamento perante variações individuais dos seus componentes, M, B e K.

Universidade de Évora Engenharia Mecatrónica Controlo e Automação II

6.7.2. Resposta do sistema em malha fechada com controlo P

O sistema será:

De acordo com a abordagem teórica, espera-se que a utilização do controlador proporcional na

malha fechada reduza o tempo de subida, aumente o overshoot e reduza o erro em regime permanente.

A função de transferência será:

( )KpssKp

sFsX

+++=

2010)()(

2

A simulação poderá ser feita no Matlab com a seguinte sequência de comandos: • Kp=300; • Num=[Kp]; • Den=[1 10 20+Kp]; • t=0:0.01:2; • step(Num,Den,t) Sugere-se a construção de um ficheiro *.m.

Time (sec.)

Am

plitu

de

Step Response

0 0.5 1 1.5 20

0.2

0.4

0.6

0.8

1

1.2

Doravante, em vez de calcular a função de transferência em malha fechada, sugere-se a

utilização da função “cloop” do MATLAB ou dependendo da versão do MATLAB a função “feedback”. Utilizando a função “cloop”, a sequência de comandos ficaria:

• clear; • Num=1; • Den=[1 10 20]; • Kp=300; • [NumCL,DenCL]=cloop(Kp*Num,Den); • t=0:0.01:2; • step(NumCL,DenCL,t)

Universidade de Évora Engenharia Mecatrónica Controlo e Automação II

Como esperado o sistema reduziu o tempo de subida, o erro em regime permanente e reduziu também ligeiramente o tempo de estabelecimento. Contudo aumentou o Overshoot.

6.7.3. Resposta do sistema em malha fechada com controlo PD De acordo com a abordagem teórica, espera-se que a utilização do controlador PD reduza o

Overshoot e o tempo de establecimento. A função de transferência da malha fechada com o controlador PD será:

( ) ( )PD

PD

KsKsKsK

sFsX

+++++

=2010)(

)(2

A simulação poderá ser feita no Matlab com a seguinte sequência de comandos: • clear; • Kp=300; • Kd=10; • Num=[Kd Kp]; • Den=[1 10+Kd 20+Kp]; • t=0:0.01:2; • step(Num,Den,t) Sugere-se a construção de um ficheiro *.m.

Time (sec.)

Am

plitu

de

Step Response

0 0.5 1 1.5 20

0.2

0.4

0.6

0.8

1

Como esperado constata-se a redução do Overshoot, tempo de estabelecimento, pequena melhoria do tempo de estabelecimento e pequeno efeito no tempo de subida e erro em regime permanente.

Universidade de Évora Engenharia Mecatrónica Controlo e Automação II

6.7.4. Resposta do sistema em malha fechada com controlo PI

A função de transferência da malha fechada com o controlador PI será:

( ) IP

IP

KsKssKsK

sFsX

+++++

=2010)(

)(23

Reduzindo Kp para 30 e igualando Ki a 70, a simulação poderá ser feita no Matlab com a

seguinte sequência de comandos: • clear; • Kp=30; • Ki=70; • Num=[Kp Ki]; • Den=[1 10 20+Kp Ki]; • t=0:0.01:2; • step(Num,Den,t) Sugere-se a construção de um ficheiro *.m.

Time (sec.)

Am

plitu

de

Step Response

0 0.5 1 1.5 20

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Reduziu-se o ganho proporcional (Kp) porque o controlador integral também reduz o tempo de subida e aumenta o Overshoot conforme o faz também o proporcional (duplo efeito). A resposta demonstra que o controlador integral eliminou completamente o erro em regime permanente.

Universidade de Évora Engenharia Mecatrónica Controlo e Automação II

6.7.5. Resposta do sistema em malha fechada com controlo PID

A função de transferência da malha fechada com o controlador PID será:

( ) ( ) IPD

IPD

KsKsKsKsKsK

sFsX

+++++++

=2010)(

)(23

2

Utilizando agora KP=350, KI=300 e KD=50 pode-se simular no MATLAB com a seguinte

cadeia de comandos. • clear; • Kp=350; • Ki=300; • Kd=50; • Num=[Kd Kp Ki]; • Den=[1 10+Kd 20+Kp Ki]; • t=0:0.01:2; • step(Num,Den,t) Sugere-se a construção de um ficheiro *.m.

Time (sec.)

Am

plitu

de

Step Response

0 0.5 1 1.5 20

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Obteve-se agora um sistema sem Overshoot, rápido tempo de súbida e sem erro em regime permanente.

Sugerem-se os seguintes passos para o desenho de um controlador PID

• Obter a resposta em malha aberta e determinar o que necessita de ser melhorado • Adicionar controlo proporcional para melhorar o tempo de subida • Adicionar controlo derivativo para melhorar o Overshoot • Adicionar controlo integral para eliminar o erro em regime permanente. • Ajustar o Kp, Ki e Kd até obter a saída desejada. • Manter na ideia que caso não se justifique, não se deverão implementar os 3 tipos de

controlador num sistema. Por exemplo se um controlador PI for suficiente (como no exemplo abordado), não será necessário implementar o controlador derivativo. Deverá manter-se o controlador o mais simples possível.

• Métodos de sintonia de Ziegler-Nichols (apresenta-se de seguida) ou outros

Universidade de Évora Engenharia Mecatrónica Controlo e Automação II

6.8. Sintonia de controladores Ziegler-Nichols e Shinskey, malhas fechadas Será visto apenas o caso da malha fechada. Para malha aberta deverá consultar-se a

bibliografia aconselhada. Apresenta-se de seguida os métodos de Ziegler-Nichols e Shinskey

• Faça o controlador comportar-se como um controlador P apenas, ajustando os modos I e D para uma acção mínima.

• Aumente progressivamente o ganho até que a saída oscile com amplitude constante. O ganho que permitir esta oscilação será chamado de ganho crítico (Kc). O período da oscilação resultante será designado por período crítico (Tc). Esta situação corresponde à acção de um par de pólos conjugados localizados no eixo imaginário. Como alternativa, através do traçado do lugar de raízes obtém-se o ganho que faz com que surjam pólos sobre o eixo imaginário.

• Após encontrar o ganho critico (Kc) e o período critico (Tc), ajusta-se o controlador com os seguintes parâmetros:

Controlador Parâmetro Ziegler Nichols (malha fechada)

Shinskey

P K 0.5Kc 0.5Kc K 0.45Kc 0.5Kc PI Ti 0.833Pc 0.43Pc K 0.6Kc 0.5Kc Ti 0.5Tc 0.34Pc

PID

Td 0.125Tc 0.08Pc Em geral estes métodos não nos conduzem directamente ao resultado desejado. Contudo produzem bons indicadores iniciais para uma aproximação iterativa

Sugere-se experimentar estes método com uma função de transferência por exemplo para a

função de transferência em malha aberta G s ss s s s

( ) = +

+ + +

35 9 54 3 2

Programa em Matlab para analisar sucintamente este exemplo: clear %Controlador Kp=4.49*.6 t=0:0.01:20 Ti=0.5*4.55 Td=0.125*4.55 % Função de transferência de um PID NumC=[Kp*Ti*Td Kp*Ti Kp] DenC=[Ti 0] SysC=tf(NumC,DenC) %Função de transferência da função (isolada) em malha aberta NumMA=[1 3] DenMA=[1 5 9 5 0] SysMA=tf(NumMA,DenMA) %controlador em serie com a malha aberta Total=series(SysC,SysMA) rlocus(Total,t) x=rlocus(Total,t); pause %Malha fechada do sistema completo já incluindo o controlador SysMF=feedback(Total,1) %Gráfico da resposta a degrau step(SysMF,t)