Sunteți pe pagina 1din 49

CENTRO UNIVERSITÁRIO DA FEI

DIOGO SHIBATA REQUEL

AJUSTES DE PARÂMETROS DE CONTROLADORES PID ATRAVÉS DE REDE


NEURAL

São Bernardo do Campo


2014
DIOGO SHIBATA REQUEL

AJUSTES DE PARÂMETROS DE CONTROLADORES PID ATRAVÉS DE REDE


NEURAL

Trabalho de conclusão de curso apresentado ao


Centro Universitário da FEI, como parte dos
requisitos necessários para obtenção do título de
Especialista em Automação Industrial e Sistema
de Controle – Mecatrônica, orientado pelo Prof.
Mestre Mauro Renault Menezes

São Bernardo do Campo


2014
DIOGO SHIBATA REQUEL

AJUSTES DE PARÂMETROS DE CONTROLADORES PID ATRAVÉS DE REDE


NEURAL

Trabalho de Conclusão de Curso – Centro Universitário da FEI

Avaliador

______________________________________
Prof. Mestre Mauro Renault Menezes

São Bernardo do Campo


2014
AGRADECIMENTOS

Agradeço primeiramente a meus pais que estiveram sempre ao meu lado, me apoiando e
incentivando a minha carreira profissional.

Agradeço também a minhas irmãs que me ajudaram a manter o foco na minha carreira e vida
pessoal, e que além de tudo sempre estiveram ao meu lado.

E por último, mas não menos importante, quero agradecer à minha namorada Ana Lídia que
apesar de diversos sábados à noite em que estivemos distantes teve a paciência e incentivou o
término deste trabalho.
“Procure ser um homem de valor, em vez de
ser um homem de sucesso.”
Albert Einstein
RESUMO

O presente trabalho apresenta o desenvolvimento e aplicação de uma rede neural para ajuste
de parâmetros de um controlador PID. Com a evolução da automatização industrial são
constantemente abordadas novas técnicas de controle de plantas automatizadas. Sendo assim,
foi realizado o desenvolvimento e aplicação de uma rede neural para ajustes de parâmetros de
controladores PID, tornando o processo de sintonia simples, porém eficaz. Para o processo de
construção da rede neural foi utilizado um software gratuito e o modelo da rede utilizada foi o
Perceptron Multilayers com três neurônios de entrada, seis neurônios na camada intermediária
e três neurônios na saída. Com base nos estudos de ajustes de controladores PID, foi possível
criar uma tabela de ajustes para o aprendizado da Rede Neural Artificial (RNA) e assim
especificar valores de ajustes no controlador. Este trabalho não teve o intuito de descrever um
sistema integrado da RNA e o controlador PID para alimentação automática dos valores,
dessa forma os dados foram analisados e alimentados manualmente na RNA que apenas
indicava os parâmetros para o ajuste.

Palavras-chave: Automatização; Controle PID; Redes Neurais;


ABSTRACT

This paper presents the development and application of a neural network to adjust the
parameters of a PID controller. With the evolution of industrial automation, new control
techniques are constantly addressed for automated plants. Therefore, it was performed the
development and application of a neural network for parameter settings of PID controllers,
making the tune process simple, but effective. For the process of building a neural network it
was used a free software the model of the network used was the Perceptron multilayers with
three input neurons, six neurons in the hidden layer and three neurons in the output. Based on
studies of adjustment PID controllers, it was possible to create a settings for learning
Artificial Neural Network (ANN) and thus specify values in the controller settings. This work
did not have the intention of describing an integrated system of RNA and the PID controller
for automatic implementation of values, thus data were analyzed manually and fed into RNA
that only indicated the parameters for the adjustment.

Keywords: Automation; PID control; Neural Networks;


SUMÁRIO

1. OBJETIVOS...................................................................................................................... 10

2. FUNDAMENTOS DA REDE NEURAL ARTIFICIAL .................................................. 11

2.1 - Redes Neurais Artificiais ............................................................................................. 11

2.2 - Modelos de Neurônios Artificiais ........................................................................... 11

2.3 - Funções de Ativação ............................................................................................... 12

2.4 - Processo de Aprendizado ........................................................................................ 15

2.5 - Aprendizado por Correção de Erros ............................................................................. 16

2.6 - Modelos de Redes Neurais ........................................................................................... 18

3. CONTROLADORES PID................................................................................................. 21

3.1 – Sintonia de PID............................................................................................................ 22

3.2 – Sintonia fina do controlador PID ................................................................................. 23

4. DESENVOLVIMENTO ................................................................................................... 24

4.1 - O Processo ................................................................................................................... 24

4.2 – Rede Neural Artificial ................................................................................................. 25

4.3 – PID .............................................................................................................................. 25

5. SINTONIA DO CONTROLADOR .................................................................................. 27

6. RESULTADOS OBTIDOS .............................................................................................. 35

6.1 - Função de transferência 2ª ordem ................................................................................ 35

8. CONCLUSÃO .................................................................................................................. 47

8.1 – Resultados ................................................................................................................... 47

8.2 - Desafios ........................................................................................................................ 47

9. REFERÊNCIAS BIBLIOGRÁFICAS .............................................................................. 48


INTRODUÇÃO

Com os avanços da tecnologia e novas técnicas de controle, os processos industriais


que contavam com máquinas e equipamentos controlados por seres humanos, deixaram de
lado o manual para ingressarem em um mundo automático.
As necessidades de medir e conhecer grandezas físicas foram surgindo ao longo do
processo de industrialização, ao qual a sociedade foi e está submetida. Os processos
industriais se tornam cada vez mais complexos e rigorosos à medida que mais tecnologias são
desenvolvidas e mais competitivas se tornam as economias (ALBUQUERQUE E
THOMAZINI, 2009).
Visando essa tendência de crescimento do automatismo das linhas de produção é que
surgem novas ideias de controle. Essas técnicas têm como objetivo principal o aumento de
qualidade de produto e uma queda na exposição do ser humano.
Sabe-se que o desgaste de peças mecânicas é algo natural e que deve ser acompanhado
a fim de evitar a quebra de peças por fadiga ou folgas. Esses desgastes, quando prejudicam a
qualidade do produto, devem ser corrigidos. Uma forma de corrigir e evitar perda de
qualidade de produto por desgastes é fazer novos ajustes de ganhos nos controladores.
Para ilustrar melhor essa problemática, será usada como referência uma planta
metalúrgica, como um laminador de chapas de aço. Devido à falta de dados concretos a
respeito de um laminador real, serão utilizadas funções de transferência de segunda e quarta
ordem.
Propõe-se para a realização de ajustes finos, o treinamento de uma Rede Neural
Artificial utilizando como valores de analise os parâmetros Tempo de Subida, Sobre elevação
e Tempo de Estabelecimento.

9
1. OBJETIVOS

O objetivo desse trabalho é desenvolver uma rede neural artificial com a capacidade de
fazer ajustes finos em um controlador tipo PID. Para ilustrar a problemática será utilizada uma
planta de laminação de chapas de aço, composta por um sistema de automatização com
funções de transferência de segunda e quarta ordem.
Contudo, a aplicação do projeto não visa apenas e tão somente o ajuste para melhoria
da qualidade dos produtos, mas também a proteção dos equipamentos instalados e a segurança
dos operadores e mantenedores dos equipamentos em questão.
Esse trabalho não tem o intuito de descrever as lógicas de acionamento ou de suas
proteções, mas a diminuição de intervenção humana a fim de evitar falhas nos ajustes de
parâmetros. O operador tendo em posse uma rede neural artificial ensinada a corrigir erros no
controle dará autonomia e agilidade nos ajustes.

10
2. FUNDAMENTOS DA REDE NEURAL ARTIFICIAL
2.1 - Redes Neurais Artificiais
A rede neural tem a vantagem de possuir um auto-aprendizado, ou seja, quanto mais
amostras são analisadas, mais precisas as mesmas se tornam (MARSILI, 1995).
Para se entender como funciona uma rede neural artificial é necessário saber como
funciona, e como são formados os neurônios biológicos. A partir daí, é necessário entender o
aprendizado humano.
Os neurônios são compostos por três partes; o corpo da célula, os dendritos e o axônio.
Cada neurônio tem em média de alguns milímetros, se forem avaliados apenas o corpo da
célula e os dendritos. Os axônios possuem tamanhos variados, mas com calibre uniforme.
Os dendritos têm como função: receber impulsos nervosos e conduzi-los para o corpo
celular, onde as informações são processadas e são gerados novos impulsos que serão
enviados para outros neurônios através do axônio. O contato entre a terminação do axônio e
os dendritos é chamado de sinapse.
É através das sinapses que são feitas as ligações entre os diversos neurônios e essa
intercomunicação é chamada de rede neural.
A comunicação entre os neurônios pode ser através de sinais elétricos dentro do
neurônio e de sinais químicos através das sinapses. A partir daí, o corpo celular combina os
sinais recebidos e verifica se o valor é acima do limiar de excitação do mesmo. Caso seja
verdade, o neurônio produz um impulso elétrico que é transmitido através do axônio para
outros neurônios.

2.2 - Modelos de Neurônios Artificiais

Uma simplificação de um neurônio a partir do que se sabia a respeito de neurônios


biológicos foi proposta por McCulloch e Pitts. O modelo era simples como pode-se ver na
figura 1, onde havia n terminais de entrada e uma única saída. Pesos eram acoplados nas
entradas para simular o comportamento das sinapses.

11
Figura 1 – Diagrama de funcionamento do neurônio proposto por McCulloch e Pitts (MENDES & OLIVEIRA,
2014)

Segundo Braga, Ludermir e Carvalho (2000), em um neurônio biológico os disparos


de impulsos são realizados quando a soma de impulsos que o mesmo recebe é maior que o
limiar de excitação (threshold). No modelo de McCulloch e Pitts, a ativação do neurônio se dá
através da “função de ativação” expressa pela equação 1.

Equação 1 – Equação de Threshold

Onde:
• n é o número de entradas;
• wi é o peso associado à entrada;
• xi é a entrada;
• θ é o threshold.

2.3 - Funções de Ativação

Função Limiar Ou Degrau


A função Limiar ou degrau é definida pela equação 2 e expressa pela figura 2. Nesse
tipo de função, os neurônios terão a saída igual a 0 quando o valor de ativação for negativo, e
valor 1 quando o valor de ativação for positivo.

1 , 0;
0 , 0;
Equação 2 – Equação da função degrau

12
Figura 2 – Gráfico da Função Degrau (MENDES & OLIVEIRA, 2014)

Função Sigmoidal
A função sigmoidal é também conhecida com função S-shape, ao contrário da função
degrau pode assumir valores entre 0 e 1. Sua função é representada pela equação 3 e expressa
pela figura 3.

Equação 3 – Equação da Função Sigmoidal


Onde:
• α é o parâmetro de inclinação da função sigmóide
• v é o valor de ativação do neurônio.

Figura 3 – Gráfico da Função Sigmoidal (MENDES & OLIVEIRA, 2014)

Um dado importante a ser levado em conta é o fato de que, se o valor do parâmetro for
aumentado tendendo-o para o infinito, esta função irá se comportar como uma função degrau
como mostra a figura 4.

13
Figura 4 – Gráfico da Função Sigmoidal com parâmetro α tentendo ao infinito (MENDES & OLIVEIRA, 2014)

Função signum:
A função signum possui as mesmas características de uma função de limiar, mas está
limitada entre os valores de 1 e -1. A equação 4 e figura 5 representam esta função.

!"#" $ 0
| |

Equação 4 – Equação da Função Signum

Onde:
• b são os limites inferiores e superiores (b = |1| no gráfico);
• v é o valor de ativação da unidade.

Figura 5 – Gráfico da Função Signum (MENDES & OLIVEIRA, 2014)

14
Tangente hiperbólica:
Similar à função sigmoidal com a forma de “s”, assumindo valores entre 1 e -1. A
equação 5 e a figura 6 representa esta função.

% & %
" % %
Equação 5 – Equação da Função tangente hiberbólica

Onde:

• a é o parâmetro de inclinação da curva;


• b são os limites inferiores e superiores (b = |1| no gráfico);
• v é o valor de ativação da unidade.

Figura 6 – Equação da Função tangente hiberbólica (MENDES & OLIVEIRA, 2014)

2.4 - Processo de Aprendizado

Uma Rede Neural possui a característica de aprender, e para isso ela segue um
princípio bastante parecido com o do cérebro humano.
Fazendo uma analogia com uma criança, a rede neural se comporta da mesma maneira.
Crianças têm o hábito de colocar coisas na boca, tocar e mexer em tudo o que é desconhecido.
É assim que o cérebro consegue distinguir gostos ruins e bons, quente e frio, afiado ou não.
Em outras palavras, a maioria das coisas que se aprende quando se é criança, é a partir
de dados que são coletados. A rede neural artificial funciona de forma similar, pois ela
necessita de um aprendizado inicial para fornecer resultados convenientes. Dessa forma, ao
longo de sua “vida”, a rede neural artificial irá sempre se ajustar para manter os dados mais
precisos.
15
Existem diversos métodos de aprendizado (Braga, Ludemir e Carvalho, 2000) nos
quais, de forma mais geral, dividem-se em dois tipos: aprendizado supervisionado e
aprendizado não supervisionado.
Aprendizado supervisionado é o aprendizado onde a rede neural conta com a ajuda de
um “professor”, que lhe diz o que é “certo” ou “errado”. Dessa maneira as entradas e as saídas
são fornecidas por um “professor” externo, que ajusta os parâmetros da rede, visando
direcionar o processo de treinamento.
A desvantagem desse tipo de aprendizado é que, na falta de um supervisor (professor),
a rede não irá conseguir seguir um caminho para o aprendizado.
Aprendizado Não-Supervisionado, como o nome já diz, é um aprendizado pelo qual,
não existe qualquer interferência externa a não ser o meio. Nesse processo não existe o
Professor.

2.5 - Aprendizado por Correção de Erros


No aprendizado com supervisão uma rede neural artificial pode calcular seu erro
fazendo a diferença entre a saída real gerada pela rede, e a saída desejada fornecida por um
supervisor. Deste modo, os erros são calculados sucessivamente, até que cheguem a um valor
satisfatório. A equação 6 mostra o cálculo de erro da rede.

' (' − *' Equação 6 – Equação para cálculo de erro.

Onde:
• k - estímulo;
• e - erro;
• d - saída desejada apresentada durante o treinamento;
• y - saída real da rede após a apresentação do estímulo de entrada.

O Aprendizado por Correção de Erros caminha para alcançar o menor valor de erro
possível. Porém, nem sempre o algoritmo alcança este resultado, atingindo o que se chama de
mínimo local. Nesse caso é necessário recomeçar o aprendizado. O gráfico da figura 7 mostra
a curva de erros por ciclo de treinamentos.

16
Figura 7 – Gráfico de erros por ciclo de treinamentos (MENDES & OLIVEIRA, 2014)

A correção do erro é feita, ajustando os pesos da rede de forma que a saída real seja
igual à saída desejada.
Na Regra Delta de Aprendizado, os ajustes dependem do erro calculado, do valor do
estímulo de entrada, pelo peso a ser ajustado, e também pela taxa de aprendizado, a qual se
relaciona à cautela com que a curva de erros é percorrida. Para um dado estímulo k, no passo
de treinamento n, expressa na equação 7:
∆, - . ' . - . Equação 7 – Equação de ajuste de pesos.

Onde:
• w(n) - valor de ajuste a ser acrescido ao peso -;

• . - taxa de aprendizado;
• e(n) - valor do erro;
• - (n) - valor do estímulo.

O valor do peso será expresso na equação 8:

- ./1 . /∆ - n Equação 8 – Equação para calcular o valor do peso.

Onde:

• - . / 1 – Valor do peso corrigido na conexão ij na iteração (n +1);


• - . - Valor antigo do peso na conexão ij na iteração (n);

17
• ∆ - n – variação no valor do peso na conexão ij proporcional ao erro na iteração
(n).

A Regra Delta é usada para corrigir os valores dos pesos, minimizando a função de

erro. Conforme a equação 9.

2
1 . . Equação 9 – Equação de função de erro.
2
Onde:
• e(n) - erro da rede no passo n do treinamento;

• ε (n) - valor da função de custo no passo n do treinamento.


Este é o aprendizado utilizado pelos modelos Perceptron e Multicamadas, descritos a
seguir.

2.6 - Modelos de Redes Neurais


Perceptron
Segundo Castro e Castro (2005), é o modelo mais simples de RNA. Utiliza modelos de
neurônios de McCulloch – Pitts, e sistema de aprendizado supervisionado. Foi primeiramente
proposto por Rosenblatt em 1958.
O Perceptron é composto basicamente por um neurônio com pesos sinápticos
ajustáveis e uma polarização (bias). Porém o perceptron de apenas um neurônio é capaz de
classificar em apenas duas classes.

Figura 8 – Perceptron (CASTRO & CASTRO 2005, Capitulo 3, pag.15).

18
A figura 8 mostra a configuração básica de um perceptron. As entradas são somadas

com os pesos e o bias e o resultado é o potencial de ativação.

O objetivo de uma rede neural perceptron é classificar os conjuntos de entrada em


duas classes.
Perceptron Multi-Camadas
O perceptron multi-camadas (Figura 9) é a extensão do perceptron de uma camada,
porém apresenta camadas intermediárias que são conhecidas também como camadas ocultas.
Assim como o perceptron de uma camada, este possui um aprendizado supervisionado, sendo
o mais comum o “backpropagation” apresentado a seguir.

Figura 9 – Perceptron multi-camada (CASTRO & CASTRO, 2005, Capitulo 4, pag.1).

A rede neural perceptron de uma camada é capaz de resolver apenas problemas


linearmente separáveis. Já a rede neural perceptron multi-camadas é usada para soluções de
problemas que não são linearmente separáveis.

O Algoritmo Retropropagação "Backpropagation"


O algoritmo Backpropagation se baseia no aprendizado supervisionado por correção
de erro.
Primeiro as entradas geram saídas na primeira camada, que é propagada como entrada
para a outra camada seguinte, e assim o erro é calculado na saída da rede. Essa primeira fase é
chamada de propagação.

19
Após os erros serem calculados, há um ajuste nos pesos sinápticos de trás para frente,
ou seja, da saída para a entrada. Essa fase é chamada de retropropagação ou backpropagation.
O gradiente local para a unidade da camada de saída é definido por:

3- n = - n . O- n . 1 − 5- n Equação 10 - gradiente para camada de saída

3- n = O- n . 61 − 5- n 7 ∑ 3' . -' Equação 11 - gradiente para camada camadas internas

Onde:

• O- n . 61 − 5- n 7 - é a função de ativação diferenciada;

• -' - são os pesos das conexões com a camada anterior.

Após o cálculo dos erros de cada unidade, calcula-se o ajuste dos pesos de cada
conexão segundo a regra delta generalizada e atualizam-se os pesos:
∆9: n + 1 = αw9: n + nδ: y: Equação 12 – função para ajustes dos pesos

Onde :
• α – é a constante de momento que aumenta a velocidade da trajetória no espaço de
pesos na descida mais íngreme. Seu valor deve ser 0 <α <1, quando α = 0, esta função
funciona como a regra delta comum;
• y- – é a saída produzida pela unidade j.

20
3. CONTROLADORES PID

A utilização de controladores do tipo PID se justifica principalmente pela sua


aplicabilidade geral na maioria dos sistemas de controle. Segundo Ferrari (2011) a maioria
dos processos industriais utilizam controladores do tipo PID e são em sua maioria ajustados
em campo.

Os controladores do tipo PID podem ser expresso pela seguinte equação:

Equação 13 – Controlador PID

Onde:
Kp – Ganho proporcional;
Ti – Tempo integral;
Td – Tempo derivativo.

Cada um desses valores possui uma função distinta no controlador, onde todos
trabalham em conjunto para um controle fino do equipamento.

Segundo o National Instruments – NI (2010, pág. 2) a ação proporcional na planta gera


uma resposta proporcional ao erro, ou seja, caso o erro gerado pela planta seja 10 e o ganho
proporcional seja de 2, a resposta na saída do controlador será de 20. Esse ganho de maneira
geral aumenta a velocidade de resposta do sistema.

A ação proporcional pode tornar o sistema instável não atingindo o setpoint do


sistema. Isso pode acontecer se o ganho for aumentado sem critério. (NI, página 2, 2010).

A ação integral no sistema soma o erro ao longo do tempo, ou seja, o erro gerado pelo
sistema mesmo que pequeno irá fazer a componente integral crescer lentamente ao menos que
o erro seja igual à zero. Dessa forma, induz o sistema a um erro de estado estacionário para
zero. (NI, 2010, página 3).

21
A ação derivativa age na saída do processo fazendo com que a saída diminua se a
variável de processo aumentar abruptamente. A taxa de variação da variável de processo é
proporcional a derivada de resposta. Caso o parâmetro do Td seja aumentado fará com que o
sistema de controle aja mais rápido e aumente a velocidade de resposta do controle. (NI,
2010, página 3).

Um fato importante a ser levando em conta é que a resposta derivativa é sensível a


ruídos, se o sinal de feedback possuir ruídos a malha de controle se tornará lenta e a derivada
de resposta pode transformar o sistema de controle instável. (NI, 2010, página 3).

3.1 – Sintonia de PID


Para o processo de sintonia do controlador PID utilizou-se o método da Curva de
Reação de Ziegler e Nichols. Para que esse método funcione a malha de controle deve ser
aberta para que não haja realimentação e uma variação deve ser inserida na entrada. Dessa
forma a planta dever possuir uma curva similar a um “S” em sua saída.

A curva gerada é composta por duas constantes, L que representa o atraso e T que
representa o tempo. Com uma linha de K, traça-se uma linha tangente a curva S que separa no
eixo das abcissas a constante L e T conforme a figura 10.

Figura 10 – Sintonia do controlador método da curva de reação (Lourenço,1997, página 8)

22
Após encontrar os valores de L e T, inserem-se os mesmos nas funções abaixo para
encontrar os valores de Kp, Ti e Td.

Tabela 1 – Tabela de ajuste PID Ziegler e Nichols (BARBOSA, SANTOS, LIMA & JÚNIOR, 2010, página 5 )
Em uma planta real esses valores são usados apenas como bases para que
posteriormente um técnico faça ajustes finos nesses valores.

3.2 – Sintonia fina do controlador PID

Todo o controlador necessita ajustes finos em campo para uma melhor reposta à planta
industrial. Esse ajuste necessita de pessoal treinado e experiente na planta e que tenha
conhecimento dos efeitos de cada parâmetro no sistema.
Essa sintonia fina por demandar tempo e pessoal capacitado, aumenta o custo de
manutenção da planta como um todo.

A tabela abaixo ilustra os efeitos de cada parâmetro no controlador:


Parâmetro Aumentar Diminuir
Kp O sistema se torna mais Torna o sistema mais lento
rápido com mais oscilações com menos overshoot e
e maior overshoot. menos oscilatório.
Ti O sistema se torna mais Demora a atingir o
rápido, diminuindo o Setpoint, aumenta às
tempo de subida e oscilações e diminui o
aumentando às oscilações e overshoot.
o overshoot.
Td Deixa o sistema mais Deixa o sistema mais lento
rápido e aumenta o e diminui o overshoot.
overshoot.
23
Tabela 2 – Tabela de ajuste finos no PID (NOVUS, 2010, página 6)

4. DESENVOLVIMENTO

4.1 - O Processo
Para ilustrar melhor o funcionamento do projeto proposto por esse trabalho, será
utilizado como exemplo um processo industrial de uma metalúrgica no processo de laminação
de tiras a quente, onde o foco é um laminador.

Figura 11 – Laminador de Chapas de Aço

Plantas industriais como uma metalúrgica exigem muito de seus equipamentos


mecânicos, causando desgastes e folgas. Muitas dessas folgas não chegam a afetar o
equipamento, permitindo que o mesmo continue a operar sem a necessidade de substituição
de peças.
Durante o processo de laminação, as placas a serem laminadas atingem altas
temperaturas e possuem uma rigidez alta, o que gera esforços e vibração de todo o conjunto
do laminador.
A fim de evitar que folgas inerentes ao processo no laminador tornem o produto final
falho e de baixa qualidade, os técnicos são constantemente acionados e treinados para ajustar
parâmetros e inspecionar peças.

24
A complexidade de acionamento e controle de um laminador se dá devido a inúmeros
equipamentos sendo acionados simultaneamente e intertravamentos. Os motores de ajuste de
espessura devem ser acionados com velocidade suficiente para que a peça não perca
temperatura e de maneira sincronizada com os motores das mesas para que o material não
entre no laminador antes que o mesmo esteja posicionado. A velocidade dos motores do
laminador deve ser controlada para evitar que o material escorregue dentro do laminador.
Os motores de ajuste de espessura não podem ser ajustados com o material dentro do
laminador, ou seja, um intertravamento deve ser implementado no CLP.

4.2 – Rede Neural Artificial

Uma vez que o operador aliado ao controle de qualidade identifique que novos ajustes
são necessários, propõe-se que o mesmo irá através de um botão instalado em seu
supervisório dizer à rede neural, que foi treinada para ajustar os ganhos do PID, realize ajustes
nesse controlador.
De forma genérica a figura abaixo ilustra bem a sequência de operação.

Operador

PID RNA

Ajustes

Figura 12 – Fluxograma de operação

4.3 – PID

A escolha pelo controlador PID entre os controladores, deve-se ao fato do mesmo


possuir o menor tempo de resposta e maior estabilidade. Os controladores devem possuir
essas características por se tratar de um processo onde não há tempo hábil para reajustes.

25
Para realizar a sintonia do controlador PID existem algumas alternativas, sendo que na
maior parte das vezes ajustes finos devem ser feitos em campo. Dentre elas escolheu-se o
método de Ziegler e Nichols malha aberta.
Os ajustes finos foram feitos pela rede neural, sendo alimentada manualmente e os
ajustes feitos a partir dos resultados da RNA no controlador.

26
5. SINTONIA DO CONTROLADOR

Devido à falta de conhecimentos mais profundos de uma planta industrial metalúrgica,


serão adotadas funções de transferência de segunda e quarta ordem de forma ilustrativa.
Definida a função de transferência que irá simular a planta industrial, adotam-se os
métodos convencionais de ajustes de parâmetros do controlador PID. Será utilizado o método
de Ziegler e Nichols malha aberta, que consiste inicialmente na aplicação de um degrau
unitário na entrada do controlador sem realimentação na saída.
Esse método possui uma resposta de baixa confiabilidade e com necessidades de
ajustes finos, geralmente realizados por técnicos experientes em campo. Dessa forma, a rede
neural irá realizar tal tarefa, detectando falhas e auxiliando na melhoria contínua do processo.
Cada parâmetro do controlador PID, possui características próprias. Fazendo uma
análise dos efeitos de cada parâmetro em relação à resposta do processo é possível descrever
uma tabela de ajustes, que será a entrada para o aprendizado da rede neural.
Propõe-se para a realização de ajustes finos, o treinamento da RNA utilizado como
análise dos valores de Tempo de Subida, Sobre elevação e Tempo de Estabelecimento. Em
outras palavras, adotam-se valores para os parâmetros escolhidos.
A resposta do sistema em malha fechada pode ser demonstrada segundo a tabela 3
com o aumento dos parâmetros descritos na coluna “Resposta CF (cadeia fechada)”:

Tabela 3 – Tabela de analise para ajuste do controlador (Lourenço,1997, página 4)


Com base nas informações de ajuste fino de controladores do tipo PID, foi elaborada
uma tabela de autoria própria que irá treinar a rede neural artificial, de modo que ela defina os
parâmetros que serão ajustados como um técnico experiente.
A rede neural artificial foi treinada com valores binários, utilizado como base na tabela
3, sendo necessárias algumas alterações para que existam apenas duas situações, ou seja,
“aumento” ou “sem alteração”. O termo de “Diminuição” não será abordado nesse trabalho
devido à necessidade de apresentação de apenas dois valores.
Para a proposta deste trabalho serão escolhidas apenas três características do
controlador para realizar os ajustes finos. São eles; Tempo de Subida, Sobre elevação
(Overshoot) e Tempo de Estabelecimento.
27
O valor de 0 (zero) será destinado à situação “Sem alteração” e “Diminuição” da
tabela 3. Já o valor de 1 (um) será utilizado para representar a situação “Aumento”. Para este
tipo de aprendizado utilizou-se a função de ativação degrau descrita na equação 2. Sendo
assim a tabela 4, foi a proposta do autor para o treinamento da RNA, baseando-se na tabela 3.
Tabela de treinamento da RNA
Tempo de
Overshoot Estabilização Proporcional Integral Derivativo
subida
0 0 0 0 0 0
0 0 1 0 0 1
0 1 0 0 0 1
0 1 1 0 0 1
1 0 0 0 1 1
1 0 1 1 0 1
1 1 0 1 0 1
1 1 1 1 0 1
Tabela 4 – Tabela de treinamento para aprendizado da RNA
Em outras palavras, a tabela acima proposta pelo autor descreve quais parâmetros
deve-se modificar em determinados casos. Por exemplo, um determinado controlador
apresenta um overshoot muito alto, tornando o controle inaceitável para o processo. Dessa
forma, segundo a tabela 4 de treinamento da RNA, o parâmetro Derivativo deve ser
aumentado.
Tabela de treinamento da RNA
Tempo de
Overshoot Estabilização Proporcional Integral Derivativo
subida
0 0 0 0 0 0
0 0 1 0 0 1
0 1 0 0 0 1
0 1 1 0 0 1
1 0 0 0 1 1
1 0 1 1 0 1
1 1 0 1 0 1
1 1 1 1 0 1
Tabela 5 – Resposta da RNA

28
Os valores de aumento do parâmetro e resultados aceitáveis para o processo foram
propostos de forma experimental, ou seja, não há qualquer embasamento teórico para os
valores de ajuste. Foram efetuados testes tipo “tentativa e erro” para verificar quais valores
eram mais significativos comparando-os com os resultados obtidos.

Os valores de Overshoot, tempo de subida e tempo de estabilização foram definidos


para a planta industrial, um laminador de chapas de aço reversível, onde é necessária uma
resposta rápida e precisa.

Os critérios adotados para a sintonia foram:


• Overshoot deve ser menor que 20% do PV;
• Tempo de subida deve ser menor que 5% do tempo de estabilização;
• Tempo de estabilização deve menor que 10s;

Para a construção da rede neural artificial, foi utilizado um software gratuito Pythia
que pode ser encontrado no site “http://pythia.en.softonic.com/” (Figura 13).

Figura 13 – Software gratuito Pythia simulando a RNA


Para o treinamento da RNA no software Pythia os seguintes passos foram seguidos:

29
1. Com a tabela de treinamento definida pela figura 16, reescreve-se em um arquivo TXT
em um editor de texto como na figura 14;

Figura 14 – Bloco de notas com valores de treinamento da RNA

2. Com a tabela de treinamento salva, o próximo passo é abrir o software “Pythia” para a
criação da RNA e leitura da tabela de treinamento (Figura 15);

Lê um arquivo Para criar uma


para RNA nova
treinamento da
RNA

Figura 15 – Software gratuito “Pythia” aberto.

30
3. Insere-se o arquivo para treinamento (Figura 16);

Figura 16 – Software gratuito “Pythia” arquivo de treinamento.

4. Ao apertar abrir, o Software abrirá uma janela para definição de números de saída,
delimitadores etc. Nessa fase o mais importante é determinar o número de outputs;
como a rede terá três saídas, uma para cada parâmetro Kp, Ki e Kd, selecionam-se 3
saídas no campo apropriado (Figura 17).

Figura 17 – Determinação de número de saídas.

31
5. Após clicar em OK, o próximo passo é criar a RNA especificando o número de
entradas (3), tempo de subida, sobre elevação e tempo de estabilização, o número de
camadas e número de saídas (3), Kp, Kd e Ki.

Figura 18 – Determinação de número entradas e saídas.

6. Em seguida, efetua-se o treinamento da RNA. para isso basta clicar no botão


selecionado na figura 19 e apertar OK.

32
Figura 19 – Treinando a RNA.

7. Para alimentar a rede com os valores basta clicar no ícone sinalizado na figura 20 e
inserir os valores desejados separados por “,” (virgula).

Figura 20 – Alimentado a RNA.

8. Sempre que um neurônio de saída for ativado, ou seja, corresponder a entrada de


maneira como foi treinada ele ficará da cor vermelha, enquanto os que não forem
ativados ficaram com a cor branca.

33
Para que a RNA identifique a necessidade de ajuste, foi proposta pelo autor um
cálculo simples de erro, fazendo a subtração do valor de saída real pelo valor de saída
esperado. Toda vez que o cálculo de erro for maior que “0” a RNA irá interpretar como valor
“1”, caso o valor do erro seja igual ou menor que “0” a RNA irá interpretar como “0”.

Os seguintes termos são apresentados pela RNA; I1, I2, I3, O1, O2, O3. De acordo
com a tabela criada para o treinamento cada um desses neurônios significam um termo ou
parâmetro que está expresso abaixo:

I1 – Erro de Tempo de Subida; expresso pela subtração do tempo de subida real menos
o tempo de subida definido como máximo;
I2 – Erro de Overshoot; expresso pela subtração do Overshoot real menos o Overshoot
definido como máximo;
I3 – Erro de Tempo de Estabilização; expresso pela subtração do tempo de
estabilização real menos o tempo de estabilização definido como máximo;
O1 – Kp;
O2 – Ki;
O3 – Kd.
Assim, o erro gerado pelo valor obtido e o valor definido, irá alimentar a rede neural
artificial, que definirá quais parâmetros serão ajustados. Cada vez que a RNA ativar um
neurônio de saída, será somado 0.5 aos valores do Kp, Ki ou Kd conforme as saídas da rede
neural.
O valor de 0.5 que será somado foi obtido de forma experimental pelo autor, na
tentativa de obter um valor que não alterasse o controlador de forma brusca e levasse ao
fracasso do projeto.

34
6. RESULTADOS OBTIDOS

Para a simulação do projeto, foi utilizado o software “Matlab” versão R2012a


da Mathworks e o “Pythia” versão 1.02 da Runtime Software.
A cada teste do controlador os valores obtidos eram coletados e calculados para
a inserção dos valores na RNA “Pythia”, descrito anteriormente.

6.1 - Função de transferência 2ª ordem

Foram realizados testes com uma função transferência de 2ª ordem, simulando como a
planta industrial.
1
4 25 / 1

Para isso, primeiramente, efetuou-se a sintonia através do método de Ziegler e


Nichols.

Figura 21 – Função transferência de 2 ordem no Matlab

Obteve-se a seguinte resposta a perturbação degrau unitário em malha aberta:

35
Figura 22 – Resposta da função transferência de 2ª ordem

Através do gráfico gerado é possível determinar os valores de T e L para obtenção dos


valores de Kp, Ki e Kd.

Figura 23 – Sintonia do controlador, através do método de Ziegler e Nichols


Traçando as retas e colocando nas formulas encontram-se os seguintes valores;

36
Tabela 6 – Tabela de ajuste PID Ziegler e Nichols (BARBOSA, SANTOS, LIMA & JÚNIOR, 2010, página 5 )

T = 7.5
L = 1.5
C.D
Kp = 1.2 ∗ =6
.D

Ki = 2*1.5 = 3
Kp = 05*1.5 = 0.75

Colocando os valores de ajuste no controlador PID obteve-se a seguinte resposta:

Figura 24 – Controlador PID Matlab


Dessa forma é possível observar que o sistema conseguiu chegar à estabilidade, porém
ainda necessita de ajustes finos para uma resposta mais precisa. Nesse momento e que a rede
neural entra em ação.

De acordo com os valores definidos anteriormente tem-se:


37
I1 = Tr – Tpv
I1 = 4 – 5
I1 = -1
Onde:
I1 – erro de tempo de subida;
Tr – Tempo de subida real;
Tpv – Tempo de subida máximo definido.

O valor de -1 impõe ao sistema que não há necessidade de ajuste fino no quesito


tempo de subida, dessa forma a entrada na rede neural passará a ser 0 (zero).

I2 = (Or – Opv)*10
I2 = 1.4 – 1.2
I2 = 0.2*10
I2 = 2

Onde:
I2 – erro de overshoot;
Or – Overshoot real;
Opv – Overshoot máximo definido.

O resultado gerado pela subtração entre o overshoot real e o overshoot definido como
ideal nesse sistema, apresenta resposta positiva, o que para a rede neural artificial significa
que há a necessidade de intervenção nos parâmetros para uma resposta menos agressiva.

I3 = Er – Epv
I3 = 12 – 10
I3 = 2

Onde:
I3 – erro de tempo de estabilização;
Er – Estabilização real;
Epv – Estabilização máxima definida.

38
Assim como no overshoot, tem-se a resposta positiva no quesito tempo de
estabilização, ou seja, o sistema demora muito a se estabilizar. Para o processo isso já foi
identificado como uma falha sendo necessária a intervenção nos parâmetros do controlador.

Com os valores encontrados, alimenta-se a rede neural, obtendo-se os seguintes


resultados:

Figura 25 – Resposta da RNA


Com a rede treinada, ela identifica os valores de entrada e decide que a melhor opção
para ajuste do controlador está no termo O3, em outras palavras, Kd.

Sendo assim, adiciona-se 0.5 ao valor derivativo. Realizando-se um novo teste:

39
Figura 26 – Controlador PID no Matlab

Observou-se uma queda do Overshoot e uma diminuição do tempo de estabilização, e


novamente alimenta-se a rede neural com os novos valores;

I1 = Tr – Tpv
I1 = 4 – 5
I1 = -1
Onde:
I1 – erro de tempo de subida;
Tr – Tempo de subida real;
Tpv – Tempo de subida máximo definido.

Assim como a primeira vez, os resultados de tempo de subida estão satisfatórios, não
havendo necessidade de ajustes.

I2 = (Or – Opv)*10
I2 = 1.35 – 1.2
I2 = 0.15*10
I2 = 1.5

40
Onde:
I2 – erro de overshoot;
Or – Overshoot real;
Opv – Overshoot máximo definido.

O resultado ainda não é satisfatório nesse sistema, apresentando resposta positiva, o


que para a rede neural artificial significa que há a necessidade de intervenção nos parâmetros.

I3 = Er – Epv
I3 = 8 – 10
I3 = - 2
Onde:
I3 – erro de tempo de estabilização;
Er – Estabilização real;
Epv – Estabilização máxima definida.

Após o primeiro ajuste realizado pela rede neural, o tempo de estabilização chegou ao
nível ideal para a planta industrial, não sendo necessários novos ajustes.
Com esses dados a rede neural é alimentada para que a mesma defina quais ajustes são
necessários para o controlador.

Figura 27 – Resultado da RNA

41
Novamente a rede neural indica que o melhor parâmetro a ser ajustado é o Kd.

Figura 28 – Controlador PID no Matlab

Novamente o controlador apresenta uma queda em seu overshoot, sem alterar outros
valores como tempo de estabilização e tempo de subida.

Esse processo se repete até que os valores de overshoot, tempo de subida e tempo de
estabilização cheguem ao esperado.

Após sintonizar o controlador, o seguinte resultado de ajuste final é obtido, onde a


rede não impõe mais mudanças ao controlador.

Kp = 8.5
Ki = 3.5
Kd = 8.25

42
Figura 29 – Controlador PID no Matlab
Com o intuito de tornar mais evidente o funcionamento da rede neural para a
realização de ajustes finos, foram realizados testes com diferentes funções transferência e
diferentes critérios para as plantas.

Exemplo 2

43
Figura 30 – Controlador PID no Matlab

Foi mantida a mesma forma de cálculo de parâmetros iniciais, utilizando o método de


Ziegler e Nichols malha aberta.

Figura 31 – Sintonia do PID pelo metodo de Ziegler Nichols

T = 4.3
L = 1.7
44
E.F
Kp = 1.2 ∗ = 4.4
.C

Ki = 2*1.2 = 2.4
Kp = 05*1.2 = 0.6

Figura 32 – Sintonia do PID pelo metodo de Ziegler Nichols e RNA

Na figura acima tem-se dois gráficos, sendo o primeiro a resposta do controlador PID
ajustado pela rede neural. O segundo gráfico é a resposta do controlador PID ajustado apenas
pelo método de Ziegler e Nichols.

Como é possível notar, na função de transferência proposta a resposta de ajustes pelo


método de Ziegler e Nichols não foi satisfatória sendo que o controlador não conseguiu se
estabilizar e o overshoot chegou a 100% acima do setpoint.

Após o ajuste através da rede neural artificial, o valor de overshoot se manteve em 1.6,
tempo de subida em 10s e tempo de estabilização menor que 20s. Esses valores se
mantiveram inalterados ou com pouca variação de resultado.

A rede neural artificial que inicialmente foi projetada apenas para ajustes finos, não foi
capaz de sintonizar o controlador, porém obteve valores satisfatórios com tempo de

45
estabilização menor que 20s e tempo de subida próximo de 10s, porém com valor de
overshoot 60% acima do setpoint.

46
8. CONCLUSÃO
8.1 – Resultados
Diante das dificuldades em se obter dados de uma planta industrial real, foram
efetuados testes com função de transferência de 2ª e 4ª ordem, onde todos obtiveram
resultados significativos e relevantes para a conclusão deste trabalho.

A rede neural foi desenvolvida por um software gratuito apenas com o intuito de
demonstrar a eficiência dos resultados sem a preocupação em integrar com um equipamento
CLP ou controlador. Sendo assim os dados foram alimentados manualmente tanto na rede
neural como no controlador.

A eficiência da rede neural foi testada no segundo exemplo citado neste trabalho, onde
as equações de sintonia de Ziegler e Nichols não foram suficientes para o ajuste do
controlador.

8.2 - Desafios
Os desafios encontrados ao longo deste trabalho foram superados acima do previsto,
porém alguns problemas não foram totalmente sanados. Para que esse trabalho seja colocado
em prática e utilizado na indústria, é necessária a criação de programas que integrem a rede
neural ao controlador sem a necessidade de intervenção humana.

Durante os testes do exemplo 2 percebeu-se que em um determinado ponto o


controlador já não respondia aos efeitos da RNA, ou seja, chegou-se a um ponto não era o
ideal, ou definido, mas era o máximo que o controlador podia responder.

Isso demostra que o trabalho ainda deve continuar, de forma que a rede identifique não
apenas os valores definidos, mas que também entenda os limites do controlador. Um estudo
mais aprofundado com a RNA pode ser a resposta para adaptação do processo de forma
contínua.

47
9. REFERÊNCIAS BIBLIOGRÁFICAS

ALBUQUERQUE, Pedro Urbano Braga de; THOMAZINI, Daniel. Sensores

Industriais: Fundamentos e Aplicações. 6. Ed. São Paulo: Érica, 2009. 222 p.

BARBOSA, Lucas Pires; SANTOS, Quelle Gomes dos; LIMA, Rafael Pereira;

JÚNIOR, Vital Pereira Batista. Laboratório de controle I – Experiência 6

Sintonia de controlador PID. 2010

Disponível em: < http://www.univasf.edu.br/~eduard.montgomery/relatorio6.pdf >.

BRAGA, A.P.; CARVALHO, A.C.P.L.F; LUDERMIR, T.B.; Redes Neurais

Artificiais: teoria e aplicações. Livros Técnicos e Científicos Editora, Rio de

Janeiro, 2000.

CASTRO, Fernando César C. de; CASTRO, Maria Cristina F. de. Multilayer

Perceptrons. 2005

Disponível em: < http://www.feng.pucrs.br/~decastro/pdf/RNA_C4.pdf >.

FERRARI, Allan Christian Krainski. CONTROLADOR PID SINTONIZADO POR

REDES NEURAIS ARTIFICIAIS. 2011. Disponível em: <

www.eletrica.ufpr.br/ufpr2/tccs/190.pdf >.

HAYKIN S. Redes Neurais princípio e prática – Segunda edição de 2001;

48
Lourenço, J – Sintonia de controladores P.I.D. 1997. Disponível em:

<http://ltodi.est.ips.pt/smarques/CS/Pid.pdf>

MARSILI, R. The electronic nose. 1995. Disponível em: <

http://www.foodproductdesign.com/articles/1995/06/the-electronic-nose.aspx >.

MENDEL, J. M. e MCLAREN, R. W. Adaptive, Learning, and pattern

Recognition Systems, Theory and Applications, chapter reinforcement-

learning control and pattern recognition systems, 1970

MENDES, D. Q.; OLIVEIRA, M. F. S – Tutoriais de redes neurais aplicações

em bioinformática. Disponível em: < http://www.lncc.br/~labinfo/tutorialRN/>

NOVUS Produtos Eletrônicos LTDA - Artigo técnico – Introdução ao controle

PID – Disponível em:

<http://das.ufsc.br/~aarc/ensino/posgraduacao/DAS6613/PID_Novus.pdf>

NATIONAL INSTRUMENTS - NI – Artigo técnico – Explicando a Teoria PID –

Disponível em: <http://www.ni.com/white-paper/3782/pt/#toc6>

49

S-ar putea să vă placă și