Escolar Documentos
Profissional Documentos
Cultura Documentos
DE PA R A O
ENSINO
CONTROLADORES PIDS
Jorge Otvio Trierweiler Maurcio Simes Posser
RESUMO
O controlador PID sem dvida o algoritmo de controle mais comum, sendo muito utilizado na indstria de processos. A maioria das malhas de controle feedback so controladas por este algoritmo ou variaes secundrias dele. implementado em muitas formas diferentes, como um controlador analgico sozinho ou como uma parte de um SDCD (sistema digital de controle distribudo). O ajuste de controladores tipo PID faz parte da vida diria de milhares de engenheiros de instrumentao e controle. Embora sejam considerados como sendo o "feijo com arroz" entre os diversos tipos de controladores, praticamente no h nenhum toolbox em MATLAB que automatize o projeto de controladores PIDs e, mais ainda, permita a fcil e sistemtica comparao entre os diferentes mtodos existentes. Para preencher esta lacuna, foi desenvolvido o PID Controller Design Toolbox (ou simplesmente PID-TB), o qual apresenta diversos mtodos para determinao dos parmetros de um controlador PID. Os mtodos de projeto diferem com respeito do conhecimento sobre a dinmica do processo requerida. Por exemplo, o mtodo de ajuste de Ziegler-Nichols (ZN) baseado em Ku e Pu est relacionado ao ganho do processo e a sua rapidez. J uma outra verso tambm proposta por ZN baseia-se em parmetros que so simplesmente obtidos da aproximao da dinmica do sistema atravs de uma funo de primeira ordem com tempo morto. O PID-TB contempla uma srie de mtodos pertencentes a ambas categorias, permitindo uma comparao sistemtica entre eles, bem como a facilidade de documentar os resultados obtidos. Alm disto, a interface grfica desenvolvida para o PID-TB seqencial e auto-explicativa, conduzindo o usurio atravs dos diversos passos necessrios para o desenvolvimento do projeto de um controlador. Adicionalmente, um eficiente sistema de ajuda, o Help On-line, tambm est disponvel contendo toda a teoria necessria para compreender e interagir melhor com o PID Controller Design Toolbox, constituindo-se dessa forma numa valiosa ferramenta de ensino.
1 I NTRODUO
Controladores do tipo PID so sem sombra de dvida os mais usados na indstria de processos. Embora sejam considerados como sendo o "feijo com arroz" entre os diversos tipos de controladores praticamente no h nenhum toolbox em MATLAB que automatize o projeto de controladores PIDs e, mais ainda, que permita a fcil e sistemtica comparao entre os diferentes existentes.
1.1 Objetivos
Visando suprir o ambiente MATLAB com uma ferramenta para o projeto e comparao de controladores PIDs foi desenvolvido o PID-Toolbox, o qual tem por objetivos: 1. Apresentar diferentes mtodos de ajuste de controladores PIDs geralmente apresentados em cursos de graduao em controle de processos. 2. Permitir atravs de simulaes a visualizao da contribuio dos diversos parmetros de ajuste de controladores PIDs. 3. A partir de dados de planta, utilizando tcnicas simples de identificao, tanto contnua quanto discreta, desenvolver modelos dinmicos capazes de capturar as caractersticas dinmicas fundamentais para um bom projeto de controlador. 4. Atravs de critrios que levam em conta a robustez e o desempenho em malha fechada permitir a sistemtica comparao entre os diferentes mtodos. 5. Facilitar a documentao dos resultados gerados, permitindo a fcil exportao dos mesmos para planilhas e editores de texto.
2 F UNDAMENTOS T ERICOS
O controlador tipo PID sem dvida o algoritmo de controle mais comum. A maioria das malhas de controle feedback so controladas por este algoritmo ou variaes secundrias dele. implementado em muitas formas diferentes, como um controlador analgico sozinho ou como uma parte de um SDCD (sistema digital de controle distribudo). O ajuste de controladores tipo PID faz parte da vida diria de milhares de engenheiros de instrumentao e controle. O PID-TB apresenta diversos mtodos para determinao dos parmetros de um controlador PID. Os mtodos de projeto diferem com respeito do conhecimento sobre a dinmica do processo requerida. Por exemplo, o mtodo de ajuste de Ziegler-Nichols (ZN) baseado em Ku e Pu PID T OOLBOX 1
caracterizado por esses dois parmetros (Ku e Pu), sendo um relacionado ao ganho do processo (ganho ultimativo, Ku) e outro que descreve a sua rapidez ( i.e., perodo ultimativo, Pu) . J uma outra verso tambm proposta por ZN baseia-se em parmetros que so simplesmente obtidos da aproximao da dinmica do sistema atravs de uma funo de primeira ordem com tempo morto. O PID-TB contempla uma srie de mtodos pertencentes a ambas categorias. Mas antes de apresent-los iremos ver como os modelos dinmicos podem ser obtidos a partir de dados de planta utilizando tcnicas de identificao contnua e discretas.
(1)
para se obter os parmetros que descrevem essa funo (i.e., K, t e q ) o Mtodo da Tangente e o Mtodo de Sundaresan and Krischnaswamy [SK77] podem ser facilmente aplicados.
Step Response Approximation
12
y()
Dy =y()-y(0) Dy () K = ----------D u ( )
q t
0 50 100 150 200 250
y(0)
300 350 400 450
-2
Time (sec.)
Figura 1: Representao esquemtica do mtodo da tangente
A figura 1 mostra esquematicamente como so obtidos os parmetros do modelo aproximado atravs do mtodo da tangente. Um ponto chave desse mtodo consiste em se passar uma tangente no ponto de inflexo (i.e., ponto onde a derivada da curva atinge o seu valor mximo, ou seja, o ponto de maior inclinao). O tempo morto ser dado pelo ponto correspondente a interseo da reta tangente com a linha correspondente ao valor base , que, no caso da figura, igual a zero(y=0). J a constante de tempo ser dada pela diferena entre o tempo correspondente a interseo da reta tangente com a linha y() e o tempo morto, conforme indicado na figura. PID T OOLBOX 2
y(t)
12
10
y()
0.853xDy
y ( t85.3%)
Dy =y()-y(0)
0.353xDy
y ( t35.3%)
Dy () K = ----------D u ()
y(0)
0 50 100
-2
t35.3%
150
200
t85.3%
250
300
350
400
450
Time (sec.)
Quando o sinal que est sendo aproximado tiver muito rudo fica extremamente difcil se determinar o ponto de inflexo. Uma mtodo simples que evita a utilizao do ponto de inflexo foi proposta por Sundaresan and Krishnaswamy [SK77] e consiste (veja figura 2) na determinao dos tempos t35;3% e t85;3% que correspondem respectivamente aos tempos em que a resposta atinge 35.3% e 85.3% da sua variao final Dy (i.e., Dy = y()-y(0)). De posse desses valores pode-se calcular facilmente o tempo morto do processo e sua constante de tempo atravs das seguintes equaes: q = 1,3 t35.3% - 0.29 t85,3% e t = 0,67 (t85,3% - t 35, 3% ) . Esses valores de q e t praticamente minimizam a diferena entre o valor medido e o predito pelo modelo aproximado se o critrio dos mnimos quadrados for tomado como base da funo de otimizao.
Step Response
From: U(1) 12
10
Amplitude
6 To: Y(1)
-2
50
100
150
200
250
300
350
400
450
Time (sec.)
A figura 3 mostra a comparao entre os dois mtodos de aproximao. Observe que o mtodo de SK tende sempre a gerar um tempo morto maior e uma constante de tempo menor que o mtodo da tangente. Em termos de controle, as aproximaes geradas pelo mtodo SK devero em geral serem escolhidas. No PID-TB, a resposta do sistema aproximada pelo mtodo SK, mas o usurio atravs de uma interface amigvel poder facilmente alterar os valores inicialmente gerados. PID T OOLBOX 3
Para muitos processos a aproximao de primeira ordem com tempo no suficientemente acurada. Nesses casos pode-se aproximar a resposta utilizando-se sistemas de segunda ordem com tempo morto. Mtodos similares aos apresentados aqui podem ser encontrados na literatura, veja p.ex. [SEM89, seo 7.3]. Esses mtodos por motivos didticos foram tambm includos no PIDTB. Naturalmente, quando se deseja obter um modelo mais acurado deve-se fazer uso de tcnicas de identificao para sistemas discretos ou contnuos. O PID-TB j possui uma interface que permite acessar automaticamente as funes disponveis no "System Identification Toolbox"[SID99]. No apndice A o leitor encontrar uma pequena discusso desses mtodos de identificao. A mesma interface permite que se acesse as funes disponveis no "CONtinuousTime System Identification Toolbox" [CONTSID 99].
(2)
Para se evitar aes de controle extremamente brusca provocadas pela ao derivativa durante mudanas bruscas de setpoint se utiliza no PID-TB o parmetro c=0 em todas as simulaes. Portanto os parmetros de ajuste desse controlador so os seguintes: b, KP ,tI , tD e N. O parmetro b responsvel por amenizar a ao de controle inicial para mudanas no setpoint, reduzindo dessa forma consideravelmente o overshoot para esse tipo de perturbao. Atravs do correto ajuste do parmetro b se consegue atingir timos desempenhos tanto para mudanas de setpoint (caractersticas servo), quanto na compensao de distrbios na carga (caractersticas regulatrias). O nico mtodo de ajuste disponvel no PID-TB que faz uso desse parmetro o mtodo de KappaTau. Nos demais mtodos b=1. O parmetro N serve como filtro do rudo, o qual o principal vilo de controladores com ao derivativa. No PID-TB, N considerado como sendo igual 10, mas esse valor pode ser alterado pelo usurio. Quanto maior for valor de N mais prximo da ao derivativa pura estar o controlador. J quanto menor for N mais filtrado ser o rudo. A tabela abaixo ilustra o efeito dos parmetros KP ,tI e tD na resposta do sistema. Tabela: Efeito dos parmetros KP ,tI e tD
Resposta em malha fechada Tempo de subida Overshoot Tempo de assentamento Offset Efeito do rudo
KP 1/tI,, tI D=tD
PID T OOLBOX
Dada a sua grande simplicidade aliada a sua grande aplicabilidade e satisfatria qualidade em aproximar sistemas reais compostos por dinmicas de primeira ordem em srie (esse tipo de dinmica geralmente aparece em processos industriais), fez com que uma categoria de mtodos fossem especialmente desenvolvidos para ajustar controladores PIDs a partir do ganho K, tempo morto q e constante de tempo t de uma funo de primeira ordem com tempo morto. Naturalmente esses mtodos, que a partir de agora sero denominados de mtodos baseados em K, tau e teta, Cabe salientar que principalmente para sistemas subamortecidos a aplicao desse tipo de mtodo de ajuste no recomendvel. Entretanto, para uma imensa classe de problemas essa classe de mtodos representa um bom compromisso entre tempo investido no projeto do controlador e desempenho alcanado no projeto. Por isso, podemos entender facilmente porque esses mtodos fazem parte de qualquer curso de graduao em controle de processos. No PID-TB o usurio poder encontrar uma gama enorme desse tipo de mtodos, os quais sero nas prximas subseces sucintamente discutidos. 2.3.1.1 Ziegler-Nichols baseado em K, tau e teta No seu artigo clssico, Ziegler e Nichols$ tambm propuseram regras de ajuste visando alcanar uma razo de decaimento de na resposta em malha fechada para sistemas de primeira ordem com tempo morto. A tabela a seguir sumariza a regra de ajuste por eles proposta. Cabe salientar que controladores ajustados dessa forma so extremamente sensveis a razo q/t, no sendo recomendado o seu uso fora do intervalo 0,1 < q/t < 1. 2.3.1.2 Mtodo de Cohen-Coon Cohen-Coon tambm desenvolveram regras de ajuste de controladores visando se obter respostas em malha fechada com uma razo de decaimento de (aproximadamente 20% de overshoot). Esse tipo de resposta apresenta melhor desempenho para rejeitar distrbios na carga que o principal objetivo a ser alcanado para processos contnuos que trabalham em um mesmo ponto de operao. Para esses sistemas, o principal papel desempenhado pelo controlador a rejeio de distrbios. Esse mtodo possui um intervalo de aplicao similar ao ZN (K, tau e teta), ou seja, no dever ser utilizado fora do seguinte intervalo: 0,1 < q/t < 1.
John G. Ziegler e Nathaniel B. Nichols escreveram o seu papel seminal em ajuste de controladores industriais (Optimum Settings for Automatic Controllers, ASME Transactions, Nov. 1942, p759), o qual trouxe ordem ao caos. Simplicidade substituiu a complexidade. Posteriormente, esse artigo foi republicado vrios vezes, o que seguramente o torna um dos artigos mais publicados sobre esse assunto. Desde de ento vrios autores o tomam como base de comparao quando apresentam um novo mtodo de ajuste. Naquele poca, eles no tiveram nenhuma idia sobre a grande contribuio que tinham feito. Ambos morreram em 1997, Nichols em abril a idade 82 e Ziegler em dezembro com idade 88. Um captulo na vida de controle automtico terminou, mas o livro continua e quem sabe poder contar com a sua valiosa contribuio.
PID T OOLBOX
Mtodo de Cohen-Coon P
1 q 1 + 3t K t q
PI
0,9 t K q
3,33q
PID
1,2 t K q
2,0q
PI
1 q 0,9 + 12 t K t q
PID
4 1 q + 3 4 t K t q
tI
q 30 + 3 t q q 9 + 20 t
q 32 + 6 t q q 13 + 8 t 4 q 11 + 2 t q
tD
0,5q
2.3.1.3 ITAE ("Integrated Time-Weighted Absolute Error") A integral do erro absoluto ponderado no tempo (ITAE= t e(t ) dt ) o critrio desempenho
0 T
que melhor concilia propriedades de desempenho e robustez. Smith et al. [OR94] determinaram os parmetros de controladores P, PI e PID que minimizam ITAE para diferentes valores de q/t. A forma da funo erro depende tanto do tipo de perturbao quanto da localizao onde ela ocorre na malha de controle. Smith et al. desenvolveram expresses tanto para degrau no setpoint quanto no distrbio na carga as quais so listadas na Tabela 2. Tabela 2: Mtodos ITAE para Setpoints e Distrbios na Carga ITAE-Setpoint PI KP
0,586 t K q
0,916
PID
0,965 t K q
PI
1,084
PID
0,977
0,49 t K q
0,859 t K q t q 0,674 t
1,357 t K q
0,947
tI
t q 1,03 - 0,165 t
t q 0,796 - 0,147 t
0,680
t q 0,842 t
0,738
tD
q 0,308 t t
0,929
q 0,381 t t
0,995
PID T OOLBOX
IMC PID PI
t lK
t
PI melhorado
2t + q 2 lK q 2
PID
2t + q 2 K (l + q ) t+ q 2
2t + q 2 K (l + q )
tI tD
t+
q 2
t+
Filtro adicional
tq 2t + q
ql 2 (l + q )
l > 1,7 q
l > 1,7 q
tq 2t + q l > 0,25 q
(3)
PID T OOLBOX
A Tabela 4 apresenta a ttulo de ilustrao os ajuste para o caso de um controlador PID e sistemas estveis. Em [AH95], o leitor poder encontrar tabelas similares para controladores PI e PI e PID para sistemas integrantes (sistemas com plo na origem). Tabela 4: Frmulas para o ajuste de controladores PID baseadas no mtodo Kappa-Tau utilizandose a parametrizao Tau. A Tabela apresenta os parmetros da funo: a 0 exp(a1Tau + a 2Tau 2 ).
a 0 e (a1Tau + a2Tau K P K (q t )
Tau = q (q + t )
2
MS = 1.4 a0
3.8 5.2 0.48 0.89 0.077 0.40
(Projeto p/ Robustez) a1 a2 -8.4 -2.5 2.8 -0.37 5.0 0.18 7.3 -1.4 -2.1 -4.1 -4.8 2.8
MS = 2.0 a0
8.4 3.2 0.28 0.86 0.076 0.22
(Projeto p/ Perform.) a1 a2 -9.6 -1.5 3.8 -1.9 3.4 0.65 9.8 -0.93 -1.6 -0.44 -1.1 0.051
tI q tD t tD q tD t
2.3.2
Mtodos baseados em Ku e Pu
Por darem informaes sobre as caractersticas dinmicas justamente na regio onde a maioria dos controladores feedback normalmente trabalham, ou seja, a regio de corte, o ganho ultimativo (Ku) e o perodo ultimativo (Pu) so informaes extremamente importantes sobre a dinmica dos sistemas. Esses valores podem ser facilmente calculados para qualquer funo de transferncia e podero ser ento aplicados para projetar controladores para sistemas com uma dinmica de elevada ordem, no necessitando que se faa nenhum aproximao como feita nos mtodos anteriores. O PID-TB possui implementados dois mtodos baseados em Ku e Pu: Mtodo de Ziegler-Nichols e o Mtodo de Kappa-Tau (com a parametrizao Kappa).
A Tabela 5 apresenta a ttulo de ilustrao os ajuste para o caso de um controlador PID e sistemas estveis. Em [AH95], o leitor poder encontrar a tabela equivalente para controladores PI.
Tabela 5: Frmulas para o ajuste de controladores PID para os mtodos de Ziegler-Nichols e Kappa-Tau utilizando-se a parametrizao Kappa. Para o mtodo de Kappa-Tau a tabela apresenta os parmetros da funo: a 0 exp(a1k + a 2k 2 ) onde k = 1 ( K u K ) . Ziegler- Nichols (Ku,Pu) Kappa P PI PID a0 0,5 0,45 0,6 0.33 1/1,2 1/2 0.76 1/8 0.17 1 1 1 0.58 PID p/ a1 -0.31 -1.6 -0.46 -1.3
KP/Ku
t I Pu t D Pu
Os processos industriais so no lineares e dinmicas rpidas so normalmente desconsideradas durante o projeto do controlador. Esses e outros fatores fazem com que os modelos lineares invariantes no tempo (LTI) sejam apenas, como qualquer outro modelo, uma aproximao da realidade. Essa aproximao normalmente suficiente para o projeto do controlador, se uma certa margem de segurana for garantida durante o projeto. A margem de ganho, a reserva de fase e a mxima sensibilidade so tpicas medidas dessa margem de segurana. A figura 4 mostra esquematicamente em um diagrama de Nyquist como essas grandezas podem ser determinadas.
Nyquist Diagrams
From: U(1) 1
0.5
Imaginary Axis
MS=1/RS RS RF
GM=1/A A
To: Y(1)
-0.5
-1 -1.5
-1
-0.5
0.5
Real Axis
Figura 4: Representao da reserva de fase (RF), margem de ganho (GM) e mxima sensibilidade (MS)
PID T OOLBOX
Normalmente reserva de fase (RF) e margem de ganho (GM) inferiores a 30 e 1,7 so indicadores de projetos muito sensveis a incertezas, ou seja, a qualidade do modelo utilizado, e, por isso, so chamados de pouco robustos. A margem de ganho uma medida de quanto o sistema (controlador+planta) suportaria uma variao no ganho esttico, enquanto que a reserva de fase pode ser interpretada como tempo morto suportvel pela malha antes de instabilizar. Esse tempo morto pode ser interpretado em termos prticos como sendo uma medida das implicaes em termos de estabilidade em se desconsiderar dinmicas rpidas, tais como: dinmica das vlvulas e dos medidores, durante o projeto do controlador. Embora RF e GM sejam boas medidas da robustez do projeto, no so suficientes para uma completa anlise, uma vez que valores de RF e GM dentro da faixa recomendvel no garantem que o diagrama de Nyquist do controlador+planta no passe muito perto do ponto 1. Pontos prximos a 1 indicam uma elevada tendncia a instabilizao. Portanto, a medida mais conclusiva da robustez a Mxima Sensibilidade (MS) a qual definida como sendo o inverso da menor das distncias do ponto 1, ou seja, o ponto mais sensvel e fcil de ser instabilizado. O mtodo de Kappa-Tau faz uso de MS como critrio de projeto. Duas so as verses disponveis: MS=1,4 recomendado para projetos mais robustos e MS=2 para projetos com maior desempenho. Um bom projeto de controlador ter que ter os valores de MS no seguinte intervalo: 1,2 (muito robusto, menor desempenho) < MS < 2,2 (pouco robusto, maior desempenho) O PID-TB j calcula automaticamente os valores de GM, RF e MS para todos os controladores projetados. 2.4.2 Critrios de desempenho
Um bom projeto de controlador deve conciliar boas caractersticas de robustez com bom desempenho. Na seo anterior vimos como podemos quantificar facilmente a robustez do projeto atravs de ndices de robustez, tais como: GM, RF e MS. Naturalmente, o desempenho pode ser inferido atravs da simples visualizao grfica das simulaes geradas para distrbios especficos, dos quais se destacam: a mudana de setpoint (caractersticas servo) e distrbios na carga (caractersticas regulatrias). Embora de fcil e intuitivo entendimento, a comparao de simulaes alm de ser um tanto quanto subjetiva, so de difcil documentao, uma vez que requerem um considervel espao para o seu armazenamento. Portanto, se faz mister que se defina ndices que permitam o fcil acompanhamento do desempenho do sistema. O PID-TB atravs da Integral do Erro Quadrtico (Integrated Square Error, ISE) e da Integral do Erro Absoluto (Integrated Absolute Error, IAE) permite o fcil acompanhamento do desempenho do sistema. Esses ndices de desempenho so definidos pelas seguintes expresses:
ISE = e 2 (t )dt
0
(5) (6)
IAE = e(t ) dt
0
O limite T das integrais corresponde ao tempo de simulao selecionado pelo usurio. Naturalmente, quanto menores forem os valores ISE e IAE maior ser o desempenho do sistema. A ISE, pelo fato de elevar ao quadrado o erro, tem o seu valor mais penalizados pelo maiores valores de erro, enquanto que IAE no faz nenhuma diferenciao no tamanho relativo dos erros.
PID T OOLBOX
10
3 I MPLEMENTAO
A implementao do PID Controller Design Toolbox fundamentou-se em alguns preceitos bsicos, os quais surgiram da observao prtica de outros toolboxes disponveis no Matlab. Alguns aspectos considerados positivos foram mantidos ou ento aprimorados, porm os demais foram reformulados, o que implicou em um desafio maior em termos do algoritmo e da programao, resultando em um produto final de excelente qualidade. A seguir sero listados alguns dos conceitos que nortearam a programao: Interface grfica com disposio seqencial e auto-explicativa: Uma interface grfica seqencial significa uma interface com os objetos dispostos de maneira tal a seguir a seqncia lgica na elaborao de um projeto de controlador; enquanto que o fato de ser auto-explicativa, auxilia o usurio na tomada de decises. Opes desabilitadas enquanto no se dispe de informaes suficientes: Quando no se dispe de informaes suficientes, as opes se encontram desabilitadas, desta forma o usurio obrigado a seguir a seqncia lgica de um projeto. Tambm pode ocorrer o caso de no haver opes especficas para uma determinada ao, neste caso, no havendo a necessidade da mesma, ela desabilitada, fazendo com que o usurio no precise ficar pensando se deve ou no inform-la. Flexibilidade de insero de modelos definidos pelo usurio: O PID Controller Design Toolbox no uma ferramenta rgida, permitindo que o usurio adicione modelos prprios, tanto para a simulao (modelos no lineares), quanto para a estrutura do controlador que ser utilizado na simulao.
Help On-line: O Help On-line serve para esclarecer dvidas sobre a utilizao do PID Controller Design Toolbox, atuando tambm como elemento didtico, de tal maneira que o usurio vai ampliando e consolidando seus conhecimentos a medida que o projeto do controlador vai avanando.
Visualizao e manipulao dos resultados: O PID Controller Design Toolbox permite a elaborao de diversos projetos de controladores do tipo P (Proporcional), PI (Proporcional Integral) e PID (Proporcional Integral Derivativo) ao mesmo tempo, utilizando os diversos mtodos de ajuste disponveis. Assim, tem-se como resultado final, um conjunto de controladores que podem ser comparados entre si para a seleo do melhor para uma posterior implementao. Para facilitar a comparao dos diversos controladores projetados, existe a opo Show Table que gera uma tabela com os controladores projetados para um dado modelo. Nesta tabela existem ndices que permitem avaliar a qualidade dos controladores e desta forma orden-los segundo um dos ndices escolhidos. Documentao atravs do programa MS Excel: Depois da ordenao dos controladores realizada na tabela, os resultados podem ser exportados diretamente para o programa MS Excel para sua documentao. A documentao dos resultados um dos aspectos que muitos dos toolboxes disponveis no Matlab no possuem, ficando apenas limitados a etapa de clculo e no mximo apresentao dos resultados, mas em ambiente Matlab; enquanto que muitas vezes, o trabalho no se limita a esta etapa, obrigando o usurio a desenvolver programas que faam a comunicao com programas capazes de documentar os resultados obtidos, ou ento utilizar a velha prtica (mas muito til) Ctrl+C e Ctrl+V. A no utilizao do Workspace para armazenamento de variveis globais: Este outro aspecto que muitos toolboxes disponveis no Matlab no possuem, fazendo com que o Workspace fique repleto de informaes desnecessrias. A no utilizao do Workspace 11
PID T OOLBOX
para armazenamento de variveis globais implica na sua manuteno apenas com as informaes que o usurio deseja que estejam disponveis nele. Dessa forma, o Workspace no fica "poludo", o que muitas vezes acaba dificultando anlises posteriores que se deseja realizar na linha de comando do Matlab.
help contents Universidade Federal do Rio Grande do Sul (UFRGS) RS Brasil MATLAB PID Controller Design Toolbox Version 5.3.1 (R11.1) Jul-2000 Main Command Pid_gui - Open the PID Controller Design Toolbox.
PID Tuning Methods ZN_PID - Ziegler-Nichols Tuning Method. CC_PID - Cohen-Coon Tuning Method. IMC_PID - IMC-PID Tuning Method. ITAE_PID - ITAE-PID Tuning Method. KT_PID - Kappa-Tau PID Tuning Method. General Purpose Functions Bodedt - Bode frequency response for continuous-time linear systems. Lnyquist - Nyquist frequency response for continuous-time linear systems. Export2xls - Export table to MS-Excel. Overdamp - Determine an overdamped TF using the [RK94] method. Raiz - Calculates the systems roots. Met_tan - Tangent method aproach. Set_Time - Calculates the settling time. Trapezio - Find the area under the curve y = f(x) using the trapezoidal rule. W_U - Calculate the ultimate frequency of the second order with dead time transfer function. W_U_Zn - Calculate the ultimate frequency of the first order with dead time transfer function. SisoIdent - Open the SISO identification interface.
As funes utilizadas para o ajuste dos controladores so genericamente denominadas XXX_pid, onde XXX corresponde ao nome do mtodo utilizado, o qual poder ser IMC, ITAE, ZN (Ziegler-Nichols), CC (Cohen-Coon) e KT (Kappa-Tau). A ttulo de ilustrao vamos mostrar a PID T OOLBOX 12
seguir o help da funo ITAE_PID. Todas as demais funes de ajuste foram construdas e so acionadas de forma similar.
help ITAE_pid [Kp,Ti,Td]=ITAE_PID(num,den,teta,d_s) [Kp,Ti,Td]=ITAE_PID(K,tau,teta,d_s) [Kp,Ti,Td]=ITAE_PID(t,y,d_s) ITAE PID Tuning Method Output Parameters: -----------------Kp -> proportional constant Ti -> Integration Time (Reset Time) Td -> Derivative Time PI or PID-tuning method is automatically selected based on the number of output parameters. Use [Kp,Ti]=ITAE_pid(...) for PI-Tuning Settings [OR94,Tab.15.4] [Kp,Ti,Td]=ITAE_pid(...) for PID-Tuning Settings [OR94,Tab.15.4] Input Parameters: ----------------num-> numerator, k, or t den-> denominator, tau, or y teta-> pure time delay d_s -> 'd'-> setting for disturbance (default) 's'-> setting for set point Examples: [Kp,Ti,Td]=ITAE_pid(t,y,'s') t-> time y-> system's step response [Kp,Ti,Td]=ITAE_pid(num,den,teta) G(s)=num(s)/den(s)*exp(-teta*s) [Kp,Ti,Td]=ITAE_pid(k,tau,teta) G(s)=k/(tau*s+1)*exp(-teta*s) SEE: [OR94, Tables 15.4]
A interface grfica com usurio do PID-TB acionado pelo comando pid_gui na linha de comando do MATLAB. A figura 5 mostra a janela principal do Toolbox. O primeiro passo para comear o ajuste do controlador a importao dos modelos LTI, com os quais se deseja trabalhar. Tais modelos devem ser gerados no Workspace do MATLAB para que seja possvel import-los.
PID T OOLBOX
13
3.2.2
A importao feita pressionando-se o boto Import Model dentro do frame Linearized Plant Model da janela principal. Neste momento abre-se a janela mostrada na figura 6 onde o usurio solicitado a escolher dentre os modelos LTI disponveis no Workspace quais ele deseja trabalhar. Existe ainda a possibilidade de se utilizar um conjunto de dados provenientes de um processo qualquer para a identificao do respectivo modelo. Para tanto, seleciona-se o radio-button Data to Identification, como mostrado na figura 7. Os modelos LTIs disponveis no Workspace do MATLAB so apresentados no campo Available data, os quais so selecionados atravs dos botes com setas indicativas para o campo Selected data. Ao se pressionar OK os modelos selecionados so automaticamente importados para a janela principal.
No caso de se dispor de um conjunto de dados de um processo, eles sero importados para identificao selecionando o radio button correspondente. Ao ser pressionado o boto OK, a janela de importao de dados para identificao automaticamente aberta j com os valores padres sugeridos nos campos de entrada de dados. PID T OOLBOX 14
A figura 8 a seguir apresenta a janela para identificao de um ou mais modelos que representem de forma satisfatria o conjunto de dados provenientes do processo que se deseja projetar um controlador.
(a) (b) Figura 8: Janela para identificao dos modelos pertinentes ao conjunto de dados importado.
Para se proceder com a identificao, basta selecionar o conjunto de dados a ser utilizado e um dos diversos tipos de modelos disponveis (figura 8(a)), escolhendo a ordem que se deseja para o mesmo e depois pressionar o boto Estimate. Os modelos estimados vo sendo armazenados em uma lista na forma de popup-menu, como visto na figura 8(b). Algumas anlise sobre os modelos estimados podem ser feitas, como por exemplo Model Output. Para tanto, deve-se selecionar um conjunto de dados de validao no campo Select Validation Data. Com os resultados obtidos destas anlises, pode-se selecionar os modelos a serem utilizados, exportando-os para a janela principal do PID_TB atravs do boto Accpet. 3.2.3 Pr-anlise, projeto dos controladores
Aps importar os modelos que se deseja utilizar, pode-se ter uma idia do seu comportamento atravs de uma pr-anlise do modelo, ou seja, do modelo quando no existe nenhum controlador PID T OOLBOX 15
atuando sobre ele. Para se proceder com uma anlise do modelo, basta selecionar o tipo de estudo desejado clicando nos respectivos check-boxes. A figura 9 apresenta a resposta do modelo selecionado g3 a uma perturbao do tipo degrau unitrio, juntamente com a resposta ao mesmo sinal para um modelo aproximado de g3, o qual ser utilizado por alguns dos mtodos de ajuste de controladores.
Figura 9: Seleo do modelo, pr-anlise atravs de uma resposta do tipo degrau unitrio, seleo dos controladores que sero projetados e os respectivos mtodos a serem utilizados.
Aps selecionado o modelo a ser utilizado, os tipos de controladores a serem projetados e os seus mtodos, pressiona-se o boto Calculate do frame Controller Parameters da janela principal. Desta forma, sero calculados todos os parmetros para todos os tipos de controladores utilizando os mtodos selecionados. Estes resultados so armazenados em uma lista do tipo popup-menu e os parmetros correspondentes ao elemento selecionado desta lista apresentado ao lado. A figura 10 a seguir mostra o que os resultados aps o clculo dos parmetros dos controladores.
Figura 10: Resultados obtidos atravs do clculo dos parmetros dos controladores.
PID T OOLBOX
16
Os parmetros dos controladores calculados podem ser alterados manualmente e salvos como parmetros definidos pelo usurio para testes posteriores. 3.2.4 Simulao e anlise dos controladores em malha fechada
Para a simulao dos controladores projetados, deve-se selecionar um modelo no campo Plant for Simulation, que no precisa necessariamente ser o modelo utilizado no projeto do controlador, podendo inclusive ser um modelo no linear do processo feito no Simulink. Depois de selecionada a planta, deve-se ainda escolher qual tipo de modelo de controlador ser utilizado. Existem quatro modelos do Simulink j propostos, permitindo ainda que o usurio adicione seus prprios modelos personalizados. Os modelos propostos so os seguintes: SIM_PID_1: PID implementado apenas com anti-Windup. SIM_PID_2: PID implementado com anti-Windup, limites de saturao e na variao das aes de controle. SIM_PID_3: PID implementado com anti-Windup, limites de saturao e na variao das aes de controle e com distrbios. SIM_PID_4: Anlogo ao anterior, porm ainda com filtros nos distrbios e nas aes de controle.
Nestes modelos, a planta submetida a uma variao no setpoint e um distrbio na carga. Desta forma pode-se analisar o a efetividade do controlador para estes dois casos tpicos de variaes. A figura 11, a seguir, apresenta o esquema do controlador SIM_PID_3 implementado no Simulink, enquanto que a figura 12 a implementao do anti-Windup nos controladores PIDs utilizados.
PID T OOLBOX
17
y_ref Set Point PID Set point PID with Anti-Windup Step Fcn1 num(s) Step Fcn yout Tempo Morto Valor no Processo
Saturation
Rate Limiter
Sum1
u_antes Ao de Controle1
Sum2 Sum3 erro Erro y_medido Valor Medido Band-Limited White Noise
PID T OOLBOX
18
1/Tt Saturation 1 Set point 2 System Output y b set point weighting ysp error Anti Windup Gain 1 Ti.s Integrator
Sum
K P+I+D Proportional
1 Input to system
Os resultados das simulaes podem ser observados nas figuras 13 e 14 a seguir. PID T OOLBOX 19
Figura 13: Simulao do modelo g3 com os controladores Figura 14: Simulao do modelo g3 com os controladores projetados. projetados.
Os resultados das simulaes compem-se das respostas do sistema (Varivel Controlada) na poro superior da figura enquanto que na poro inferior pode-se observar as aes de controle (Ao de Controle). Para facilitar a visualizao e tornar mais rpida a interpretao dos resultados, ao ser selecionada uma das linhas com o boto esquerdo so mostradas informaes pertinentes mesma, como por exemplo o tipo de mtodo de ajuste utilizado para projetar aquele controlador (cf. figura 13). No caso de se utilizar o boto direito, informaes dos parmetros do controlador utilizado so mostradas ao mesmo tempo em que a linha selecionada destacada das demais (cf. figura 14). 3.2.5 Tabela de resultados e exportao para o EXCEL
Para proporcionar uma comparao sistemtica entre os diversos mtodos de ajuste de controladores, pode-se utilizar o recurso Show Table, o qual monta uma tabela com os parmetros dos controladores projetados bem como ndices que permitem avaliar a qualidade dos mesmos. A figura 15 a seguir apresenta uma tabela gerada para os controladores projetados anteriormente.
Figura 15: Tabela com os parmetros dos controladores projetados seus respectivos ndices de anlise.
Nesta tabela os dados podem ser reordenados segundo algum dos ndices disponveis apenas clicando sobre a respectiva coluna. Aps a disposio a contento do usurio, os dados podem ser exportados para uma planilha do MS Excel como mostrado na figura 16. PID T OOLBOX 20
Figura 17: Planilha do MS Excel com os dados calculados pelo PID Controller Design Toolbox.
3.2.6
Helps on-line
Para auxiliar o usurio na utilizao do PID Controller Design Toolbox esto disponveis o Help On-line como comando de linha no prprio MATLAB e o Help On-line na verso em html. O segundo pode ser executado atravs de comando de linha no MATLAB ou na janela principal do PID Controller Design Toolbox clicando com o boto direito sobre um dos mtodos de ajuste, por exemplo. A verso em html do Help On-line mais completa, trazendo informaes no apenas sobre a utilizao do PID Controller Design Toolbox como tambm a teoria envolvida por trs desta implementao. A figura 18 mostra o resultado de se clicar com o boto direito sobre o mtodo IMC de ajuste de controladores.
PID T OOLBOX
21
Figura 18: Help On-line em html sobre o mtodo IMC de ajuste de controladores.
R EFERNCIAS
[AH95] K.J. strm, T. Hgglund "PID Controllers: Theory, Design, and Tuning, second edition, Instrument Society of America, (1995)
[CONTSID 99] CONTSID toolbox (for CONtinuous-Time System IDentification) for Matlab PID T OOLBOX 22
[OR94]
B.A. Ogunnaike, W. H. Ray, Process Dynamics, Modeling, and Control, Oxford University Press, New York, Oxford, (1994).
[SEM89] D.E. Seborg, T.F. Edgar, D.A. Mellichamp, "Process Dynamics and Control", John Wiley & Sons, (1989). [SID99] [SK77] Ljung, System Identification Toolbox, Mathworks, (1999) Sundaresan, K. R. and P. R. Hrishnaswamy, "Estimation of time delay time constant parameters in time, frequency, and Laplace domains", Can. J. Chem. Eng., 56, pp. 257, (1977)
PID T OOLBOX
23
(8)
onde A, B, C, D e F so polinmios em q--1 (para q-k x(t) = x(t-k)), nk o tempo morto do sistema e:
A(q ) = 1 + a1q -1 + ... + a na q - na , B (q ) = b0 + b1q -1 + ... + bnb q - nb , C (q ) = 1 + c1q -1 + ... + cnc q - nc , D (q ) = 1 + d1q -1 + ... + d nd q -nd e F (q ) = 1 + f 1q -1 + ... + f n f q
-n f
O polinmio A corresponde ao termo auto-regressivo; o termo B/F corresponde a funo de transferncias para as entradas do sistema, enquanto que C/D corresponde a funo de transferncia para os distrbios. Existem vrias outras formas mais simples que derivam da apresentada na equao (8) que geralmente so utilizadas conforme o caso, uma delas a FIR (Finite Impulse Response) que apresenta a seguinte forma: y (t ) = B(q )u (t - nk ) + e(t ) . (9)
Neste modelo as informaes das sadas em tempos passados no so utilizadas. Um outro modelo, muito usado, que utiliza estas informaes o ARX (Auto Regressive with eXtra input) que possui a seguinte forma: A(q ) y (t ) = B(q ) u (t - n k ) + e(t ) . (10)
Esta forma muito utilizada devido a sua simplicidade e possibilidade de um estudo rpido do sistema que se pretende identificar. A figura A1 mostra a sua representao em diagrama de blocos
PID T OOLBOX
24
Como pode ser observado, esta representao possui um erro com a mesma dinmica do sistema, ou seja, ele incorporado mesma. No caso do sistema apresentar apenas rudos nos instrumentos de medida, isto , no acrescenta erros dinmica do sistema, mas sim diretamente nas sadas do mesmo, uma estrutura do tipo OE (output error),
y (t ) = B(q ) u (t - n k ) + e(t ) F (q )
(11)
deve ser utilizada. Essa forma possui a seguinte representao em diagrama de blocos:
A estrutura ARMAX (Auto Regressive with Moving Average and eXogenous Variables), A(q ) y (t ) = B(q )u (t - nk ) + C (q ) e(t ) uma forma mais sofisticada que as anteriores para representar o erro. A sua representao na forma de diagrama de blocos : (12)
Uma outra de forma de modelo muito usada o de Box-Jenkins, e o que melhor lida com os erros devido a sua estrutura, a qual geralmente representada por: y (t ) = B(q ) C (q ) u (t - nk ) + e(t ) . F (q ) D(q ) (13)
Os parmetros de um modelo podem ser determinados via mtodos de otimizao, sendo um dos mais populares o Mtodo dos Mnimos Quadrados (MMQ). Os parmetros envolvidos nestes modelos so estimados usando mtodos de otimizao iterativos, com exceo da estrutura ARX,
PID T OOLBOX 25
que possui uma forma direta para o clculo dos seus parmetros, sendo este um dos motivos de sua intensa utilizao, principalmente para uma anlise prvia da ordem do sistema e do seu tempo morto.
PID T OOLBOX
26