Sie sind auf Seite 1von 54

UNIVERSIDADE FEDERAL DO RIO DE JANEIRO

CONTROLADOR DE TEMPERATURA E DE VAZO DE


UM CHUVEIRO ELTRICO

Eduardo Albieri Coelho da Silva

2013

CONTROLADOR DE TEMPERATURA E DE VAZO DE


UM CHUVEIRO ELTRICO

Eduardo Albieri Coelho da Silva

Projeto de Graduao apresentado ao Curso


de Engenharia Mecnica da Escola Politcnica,
Universidade Federal do Rio de Janeiro, como
parte dos requisitos necessrios obteno do
ttulo de Engenheiro.
Orientador: Fernando Augusto de Noronha
Castro Pinto

Rio de Janeiro
DEZEMBRO de 2013

UNIVERSIDADE FEDERAL DO RIO DE JANEIRO


Departamento de Engenharia Mecnica
DEM/POLI/UFRJ

CONTROLADOR DE TEMPERATURA E DE VAZO DE


UM CHUVEIRO ELTRICO

Eduardo Albieri Coelho da Silva

PROJETO DE GRADUAO SUBMETIDA AO CORPO DOCENTE DO CURSO


DE ENGENHARIA MECNICA DA ESCOLA POLITCNICA DA UNIVERSIDADE
FEDERAL DO RIO DE JANEIRO COMO PARTE DOS REQUISITOS NECESSRIOS
PARA A OBTENO DO GRAU DE ENGENHEIRO MECNICO.
Examinada por:

________________________________________________
Prof. Fernando Augusto de Noronha Castro Pinto, Dr.-Ing.

________________________________________________
Prof. Ricardo Eduardo Musafir; DSc

________________________________________________
Prof. Thiago Gamboa Ritto; DSc

RIO DE JANEIRO, RJ - BRASIL


DEZEMBRO de 2013
ii

Silva, Eduardo Albieri Coelho da


Controle de temperatura e de vazo de um chuveiro
eltrico/ Eduardo Albieri Coelho da Silva. Rio de
Janeiro: UFRJ/ Escola Politcnica, 2013.
VI, 47 p.: il.; 29,7 cm.
Orientador: Fernando Augusto de Noronha Castro
Pinto
Projeto de Graduao UFRJ/ Escola Politcnica/
Curso de Engenharia Mecnica, 2013.
Referencias Bibliogrficas: p. 43.
1. Controladores. I. Pinto, Fernando Augusto de
Noronha Castro. II. Universidade Federal do Rio
de Janeiro, Escola Politcnica, Curso de
Engenharia Mecnica. III. Controlador de
temperatura e vazo de um chuveiro eltrico.

iii


Resumo do Projeto de Graduao apresentado Escola Politcnica/ UFRJ como
parte
dos requisitos necessrios para a obteno do grau de Engenheiro Mecnico.

CONTROLADOR DE TEMPERATURA E DE VAZO DE


UM CHUVEIRO ELTRICO
Eduardo Albieri Coelho da Silva
Deazembro/2013

Orientador: Fernando Augusto de Noronha Castro Pinto


Curso: Engenharia Mecnica
Nesse trabalho iremos estudar a aplicao de um controlador PID (Proporcional
Integral Derivativo) de temperatura e vazo em um chuveiro para uso domstico.
Demonstraremos como foi feito e o funcionamento do chuveiro, as dificuldades de
implementao e as facilidades geradas ao usurio. O foco do trabalho foi prtico na
inteno de observar dados reais e analis-los. Para isso foi montado um chuveiro
eltrico com um controlador de temperatura e vazo. Esse controle consiste em
sensores que medem as variveis do sistema, atuadores que agem sobre o sistema e
uma placa micro controladora que contm a programao e processar as medies e
controlar os atuadores.
Palavras-chave:Controlador, PID, Chuveiro, Temperatura e Vazo.

iv


Abstract of Undergraduate Project presented to POLI/UFRJ as a partial fulfillment
of
the requirements for the degree of Engineer.

TEMPERATURE AND FLOW CONTROLLER OF AN


ELETRIC SHOWER
Eduardo Albieri Coelho da Silva
December/2013

Advisor: Fernando Augusto de Noronha Castro Pinto


Course: Mechanical Engineering
In this work, we will study the application of a temperature and flow PID controller
in a domestic electric shower. The paper shows how it was made and how it works, the
implementation difficulties and the facilities generated for the user. The paper focus
was practical in order to observe real data and analyze. To this was assembled an
electric shower with a temperature and flow controller. The control consists in sensors
that make the measure of systems variables, the actuators that acts on the system and
micro controller board that contain the logarithm and it will process the measures and
control the actuators.

Keywords: Controller, PID, temperature, flow.

Sumrio
1. Introduo ...............................................................................................................1
2. Descrio do chuveiro ............................................................................................3
2.1 Lista de componentes .......................................................................................4
2.2 Descrio e funo dos componentes ..............................................................5
2.3 Funes do Arduino ........................................................................................11
2.3.1. PWM ......................................................................................................11
2.3.2. Rotina ExternalInterrupts .......................................................................12
3. Modelagem matemtica .........................................................................................14
3.1 Temperatura ....................................................................................................14
3.2 Vazo ..............................................................................................................16
3.3 Temperatura x Vazo ......................................................................................17
4. Controle ..................................................................................................................19
4.1 Linearidade ......................................................................................................20
4.2 Distrbios ou perturbaes ..............................................................................21
4.3 Controlador Liga-Desliga .................................................................................21
4.4 Controlador PID................................................................................................23
4.5 PID versus Sistemas no-lineares ..................................................................25
4.6 Programao ...................................................................................................26
5. Aquisio e Anlise dos dados ...............................................................................28
5.1 Definio das constantes do controlador de temperatura ...............................28
5.2 O controlador de temperatura e vazo ............................................................34
6. Consideraes finais ..............................................................................................39
6.1 Concluso ........................................................................................................39
6.2 Trabalhos futuros .............................................................................................40
Referncias bibliogrficas ............................................................................................42
Anexo I - Desenvolvimento da programao do controlador .......................................43

vi

Captulo 1
Introduo

Cada

vez

mais

comum

ouvir

os

termos

concorrncia, inovao

sustentabilidade. Na economia de mercado em que vivemos, sobrevive a empresa que


est sempre frente de seus concorrentes e para isso necessrio inovar. Por meio
de inovaes, as empresas lanam produtos e servios novos no mercado,
desenvolvem processos internos e de produo mais eficientes, novas estratgias de
marketing, diminuem custos, aumentam receitas etc. A empresa que no inova est
fadada ao fracasso ou ser engolida pelo mercado. J o termo sustentabilidade est
relacionado com o Desenvolvimento Sustentvel, que por sua vez definido como o
desenvolvimento que atende s necessidades do presente sem comprometer a
possibilidade de as geraes futuras atenderem s suas prprias necessidades.
nesse cenrio que os controladores ganham cada vez mais espao. Inovaes
no campo de engenharia de controle e automao viabilizam paralelamente o
crescimento e o uso racional dos recursos, por meio de tcnicas avanadas que
aumentam a eficincia de processos.
Outra razo para expanso dos estudos e da aplicao de sistemas de controle
o conceito de domtica, termo que o resultado da juno das palavras Domus (casa)
com Robtica (controle automatizado), aplicao dos sistemas de controles no uso
domstico com objetivo de gerir os recursos habitacionais. A ideia base de um sistema
de controle no lar a mesma que a industrial, o que muda o contexto para qual o
sistema de controle projetado.
Enquanto na indstria o foco o aumento da eficincia, em casa prioriza-se o
aumento da qualidade de vida. Na indstria, o sistema de controle atuar sobre o
aumento da produtividade e a reduo de custos enquanto no ambiente domstico
atuar sobre tarefas do dia a dia que visam economizar tempo e o desgaste de rotinas
para reduzir o estresse e as preocupaes do cotidiano. Outra vantagem a economia
1


de recursos, logo a de dinheiro tambm. Dessa forma, o usurio pode dedicar mais de
seu tempo e dinheiro para diverso e/ou trabalhos que exigem mais ateno e
responsabilidade.
Os benefcios da domtica ou da automao residencial, so grandes se
comparados com os sistemas isolados. Alm de trazer mais conforto e segurana para
os usurios, reduz o consumo de recursos como a gua, energia eltrica e gs.
Alguns exemplos de rea de aplicao da domtica so automao, iluminao,
climatizao, segurana e comunicao.
Este trabalho tem como objetivo principal conceber um chuveiro com controle de
temperatura e vazo por meio de uma placa com um micro controlador, sensores e
atuadores. Outro objetivo foi coletar dados, analis-los e compar-los com os estudos
da engenharia de controle.
As principais atividades do projeto foram o estudo da viabilidade do projeto, a
especificao dos componentes, a montagem do chuveiro, a programao do
algortmico de controle, o estudo dinmico do controlador e coleta e anlise dos
dados.

Captulo 2
Descrio do chuveiro

A ideia foi construir um chuveiro eltrico com um controlador de vazo e


temperatura. O trabalho teve uma diretriz prtica, visou primeiramente a concepo do
chuveiro para assim obter dados para fazer a anlise do sistema.
Antes de tudo, foi necessrio fazer um pequeno modelo/croqui de como
funcionaria o projeto.
Nesse projeto, o controle da temperatura se faz por meio de um PWM (Pulse
Width Modulation) e a vazo por meio de uma vlvula acoplada a um motor. Um
termopar foi instalado dentro de um chuveiro e um medidor de vazo em suas
conexes para a medio da temperatura e a vazo, respectivamente. O controle
feito por uma placa controladora e a interface com o usurio se d por meio de uma
tela LCD com botes de seleo de temperatura e vazo. Algo bem simples e prtico
para o usurio.
Por questes prticas, decidiu-se comprar um chuveiro eltrico e fazer todas as
modificaes e adaptaes necessrias para concepo do projeto. O chuveiro
alimentado por uma tenso de 110 Volts AC.
A placa controladora escolhida foi o Arduino. O Arduino uma placa que contm
um microcontrolador com entradas e sadas analgicas e digitais. Sua escolha se deu
por sua simplicidade, praticidade, boa para iniciantes, o fato de ser geralmente usada
em projetos acadmicos e de ser relativamente barata.
A placa funciona com um software prprio. Nesse software feita programao do
controle dinmico do sistema e por meio de um cabo feito o upload para a placa.
O sensor de temperatura escolhido foi o NTC. Ele foi includo na sada do
chuveirinho do chuveiro com um suporte adaptado. Dessa forma o sensor fica em


contato direto com a gua, aumentando a eficincia na medio. Embebedamos com
silicone todo o contato do sensor com a gua, para que fosse impermeabilizado e no
houvesse interferncia no sinal de medio.
Para atuao na temperatura da gua no chuveiro, utilizamos um PWM, que ser
explicado mais frente no na seo 2.3.1. O Arduino j vinha com a essa funo
(outra vantagem da placa).
Para fazer essa transmisso de sinal PWM entre a alimentao e a placa foi
inserido um rel de estado slido.
O medidor de vazo foi comprado para fazer a medio da vazo do sistema. O
sensor uma pea pequena e leve e instalado nas conexes de entrada de gua do
chuveiro.
Para o sistema de atuao na vazo foi projetado um motor acoplado a uma
vlvula. Duas peas foram concebidas para integrar o sistema. Uma que transmite o
torque do motor a vlvula e outra que seria o suporte do motor na prpria vlvula.
A transmisso entre o motor e a vlvulas engastada. Um suporte deve ser
projetado para que haja restrio do movimento de suas conexes. Essa conexo no
pode ser engastada. Duas conexes engastadas entre as mesmas peas devem ser
muito precisas, pois se no, pode formar um sistema hiperesttico podendo causar
tenses internas no sistema e danific-lo.
O motor escolhido foi um de corrente contnua e deve atuar nos sentidos horrio e
anti-horrio, que fariam a abertura e o fechamento da vlvula para o controle da
vazo. Dois rels e uma alimentao DC externa viabilizam isso.
Uma vez pesquisada todas as solues existentes, foi definido o funcionamento
do chuveiro e listaram-se os componentes necessrios concepo do projeto.

2.1

Lista de componentes

Para montar o controlador e chuveiro, foi necessrio adquirir os seguintes


componentes:
4


1 Chuveiro eltrico;
1 placa Arduino Uno;
1 sensor de temperatura;
1 medidor de vazo;
1 vlvula gaveta;
1 motor eltrico;
2 potencimetros;
1 tela de LCD;
2 rels de 2 contatos de 5 volts
1 rel de estado slido;
Alimentao de 9 Volts DC;
Protoboard e cabos;
Tambm foi necessrio desenhar e fabricar duas peas:
Transmisso entre a sada do motor e a vlvula;
Suporte do motor.

2.2

Descrio e funo dos componentes

O chuveiro escolhido foi um convencional de 4.800 Watts, 110 Volts AC e 40


Amperes de corrente. O chuveiro tem 4 estgio de temperatura. Foi utilizado o
segundo estgio que fornecia 2.000 Watts de potencia.
O Arduino Uno (Figura 2.1) uma placa de microcontrolador programvel em
C/C++. Com entradas e sadas, o Arduino funciona com uma programao em
looping. Na programao, feita leitura dos sinais de entrada, bem como seus
5


tratamentos. Nela tambm contm a modelagem dinmica do sistema, o modelo
matemtico que efetivamente far o controle e os sinais de sada que vo para os
atuadores. Entre suas caractersticas, destacam-se:
Sada de 5 Volts
Terra
Pinos de entradas analgicas: so entradas que medem de terra a 5 Volts
porm escalonado em 1024 valores diferentes onde o terra igual a 0 e 5 Volts igual
a 1023.
Pinos de entradas e sadas digitais: so entradas ou sadas booleanas que
podem ser terra ou 5 Volts. Os valores so 0 ou 1 ou LOW ou HIGH. Essas entradas
digitais podem ter outras funes; usaremos 2 delas que sero explicadas mais a
frente.

Figura 2.1: Arduino


O sensor NTC (Figura 2.2) funciona como uma resistncia varivel com a
temperatura. Dessa forma, a entrada analgica do controlador foi usada para conectar
o sensor de temperatura.

Figura 2.2:Sensor NTC


Para calibrao do sensor, necessrio medir duas temperaturas conhecidas e
assim por interpolao, tem-se uma funo do sensor com a temperatura ambiente. As
6


duas temperaturas escolhidas foram 26 e 38 graus, pois um intervalo prximo da
temperatura da gua em um banho.
O medidor de vazo (Figura 2.3) tem como sada um sinal de onda quadrada cuja
frequncia varia com o fluxo. A funo de transferncia entre o fluxo e a frequncia
definida pelo fabricante e consta na folha de especificao do medidor.

Q 60

f L
f L

hora
7,5
7,5 min

Mede-se a frequncia do sinal pelas funes attachInterrupt() e rpm(). Por meio da


funo acima se obtm o valor do fluxo. Seu funcionamento explicado na seo
2.1.2.

Figura 2.3: Medidor de vazo


Uma vlvula gaveta foi utilizada para controlar a vazo.
O motor (Figura 2.4) adquirido j vem com uma reduo de 1000:1, trabalha de 3
a 9 V e tem torque de 0,88 N.m a 6 V e corrente de Stall de 1,6 Ampre. O motor deve
trabalhar com uma fonte de 9 V devido ao Arduino somente fornecer 5 V e 50 mA.
Para isso foram utilizados os rels.

Figura 2.4: Motor com a reduo


O potencimetro uma resistncia ajustvel. Nesse caso, a resistncia varia
linearmente com o giro de um pequeno eixo. Conectaram-se os dois potencimetros
de 10 k nas entradas analgicas para a definio dos parmetros de referncia por
meio de interpolao.
A tela LCD (Figura 2.5) de 16x2 (duas linhas com dezesseis caracteres cada) foi
utilizada para visualizao pelo usurio das temperaturas e vazes de referncias e do
sistema.

Figura 2.5: Tela de LCD


O rel de estado slido (Figura 2.6) foi usado para amplificar o sinal do PWM, uma
vez que o Arduino tem sada de 5 Volts DC e a alimentao do chuveiro de 110 Volts
AC. O rel suportava at 25 Amperes de corrente.

Figura 2.6: Rel estado slido

Figura 2.7: Rel de contato

Outros dois rels de contato (Figura 2.7), que alm de amplificadores, foram
usados para alterar a polaridade do motor eltrico viabilizando o fornecimento de
torque nos dois sentidos, para a abertura e o fechamento da vlvula. A Figura 2.8
mostra o funcionamento dos rels de contatos. Se ambos os contatos passam 0 V ou
9 V, no diferena de potencial, logo o motor na gira. Se um contato passa 0 V e outro
passa 9 V o motor gira em um sentido e se invertemos os contatos o motor gira em
outro sentido.
8

Figura 2.8: Inverso de polaridade do motor com os rels.

Foi necessrio desenhar e fabricar mais duas peas para o bom funcionamento
do acionamento da vlvula gaveta, uma transmisso entre a sada do motor e a
vlvula e um suporte do motor.
A transmisso do motor para a vlvula fixada por dois parafusos enquanto o
suporte fixo no motor e apoiado na vlvula. Isso foi projetado para que o sistema
no ficasse hiperesttico. Dessa forma, o sistema pode ter uma folga/grau de
liberdade que evita alguns tipos de tenses internas que possam vir a danifica-lo. As
figuras 2.9, 2.10 e 2.11 mostram fotos do prottipo concebido.

Figura 2.9: Suporte e transmisso do motor.

Figura 2.10: Montagem da transmisso do motor e a vlvula gaveta.

10

Figura 2.11: Adaptao do sensor de temperatura na sada do chuveirinho

2.3

Funes especiais do Arduino

As entradas digitais podem ser usadas com algumas funes especiais, dentre
elas destacam-se duas que foram usadas:

2.3.1

PWM

11


Pulse Width Modulation, ou em portugus, modulao por largura de pulso uma
funo que tem como sada uma onda quadrada onde se ajusta uma razo de tempo
em que ela ser ligada (1) ou desligada (0). Essa onda tem uma frequncia constante
e alta, de forma que imperceptvel a transio entre o ligar e desligar, parecendo que
o sinal constante fornecendo uma razo da potncia total.

Figura 2.12: Funcionamento de um PWM


Nesse controlador, o PWM ser usado para controlar a tenso fornecida
resistncia de forma a controlar a temperatura da gua. A figura 2.12 mostra quatro
grficos que demonstram o funcionamento do PWM. O eixo das ordenadas a tenso
e a rea do grfico a potncia fornecida ao sistema.
A funo PWM no Arduino associa o nmero 0 a 0% e 255 a 100%.

2.3.2

Rotina Externalinterrupts

Especifica uma funo a ser chamada quando ocorre uma interrupo. A


interrupo pode ser disparada de quatro formas diferentes pr-definidas.

LOW - provoca a interrupo sempre que o pino est em 0,

RISING - provoca a interrupo quando o valor do pino muda de 0 para 1,

FALLING provoca a interrupo quando o valor do pino muda de 1 para 0,


12

CHANGE - provoca a interrupo sempre que o pino muda de valor.

Em RISING, quando a funo attachInterrupt() est ativada, toda vez que h a


uma transio de 0 para 1 no pino digital indicado, essa funo chama uma outra
funo pr definida ( rpm() ). Essa funo rpm() veio descrita no DataSheet do
medidor de vazo e faz uma contagem de quantas vezes ela foi chamada. Nesse
projeto, essa funo tem o papel de ler a frequncia do medidor de vazo para
posteriormente ser usada no clculo da vazo do sistema.

Figura 2.13: Funo attachInterrupt()

A Figura 2.13 ilustra o funcionamento da funo. Ela ativada por meio do


comando sei(), um intervalo de tempo pr-definido e aps a funo desativada
pelo comando cli(). Quando ativada, a transio chama a funo rpm() que
responsvel pela contagem. Tendo assim, uma frequncia como resultado.

13

Captulo 3
Modelagem matemtica

3.1

Temperatura

A modelagem da dinmica da temperatura descrita pela frmula:

Q m c T

(3.1)

ou

Q
T0
m c

(3.2)

onde:

T Temperatura de sada, a varivel que se deseja controlar.

Razo de potncia fornecida pelo PWM, varia de 0 a 1.


Q Potncia mxima do chuveiro, 2.000W.
m Vazo mssica do sistema.

c Calor especfico do fluido, no caso, a gua, c = 1 cal

g C

.=4.180 J

kg C

14

T0 Temperatura do fluido na entrada.


v Vazo volumtrica do sistema.

Massa especifica da gua.


T T T0

A vazo do sistema, que tambm ser controlada, influencia a dinmica da


temperatura de sada. Assim como a temperatura de entrada tambm. Porm, para a
simplificao do modelo, assumiremos que as flutuaes dessas variveis so
pequenas de forma que sero tratadas como distrbios.
Por hiptese, assumiremos:

T0 24C

v 2 L

min

(3.3)

1 L
30 s

(3.4)

Como:

1 kg L
m

1 kg
30 s

(3.5)

(3.6)

Logo, para a temperatura temos:

T .14,35 T0

(3.7)

T .14,35 24

(3.8)

Para controlar a temperatura usaremos um controlador PID (Proporcional Integral


e Derivativo). Este modelo calcula um erro que a diferena entre o valor medido e o
valor desejado, e por meio de fatores proporcionais, derivados e integrais minimiza-se
esse erro, tendendo a 0. Esse modelo ser explicado melhor no captulo 4.
Pela frmula (3.7) e como max 1 (mxima razo de potncia que o chuveiro
pode fornecer), inferimos que pelo modelo e as hipteses assumidas, o aumento
mximo de temperatura que o chuveiro pode realizar de 14,35 C.

15

3.2

Vazo

Para o modelo da vazo:

v v0

(3.9)

Onde:
v Vazo volumtrica de sada. A varivel que se deseja controlar.

ngulo da vlvula gaveta. Varivel que ser controlada. Varia de 0 a 1440.


v 0 Vazo volumtrica de entrada do sistema.

A modelagem do sistema de vazo depende da vazo onde o chuveiro vai ser


instalado v0 . O tratamento que daremos vazo de entrada a mesma que a da
temperatura de entrada supracitada.
Por hiptese , foi definida uma vazo mdia e suas flutuaes sero tratadas
como distrbios.

v0 2 L

min

1 L
30 s

(3.10)

Para controlar a vazo, usaremos um controlador liga e desliga. Isso porque no


temos como saber a posio angular da vlvula, ou seja, no temos um sensor que
mea essa posio. Dessa forma, tambm no temos como informar ao motor quanto
que ele deve abrir ou fechar a vlvula. Inviabilizando, assim, a ao de um controlador
PID na vazo do sistema.
O sistema de controle funcionar da seguinte forma: quando a vazo for inferior
ao ponto de ajuste, o motor abrir um pouco a vlvula e se for superior, o motor ir
fechar um pouco a vlvula.
A diferena est em que em vez de ligar e esperar atingir o ponto de ajuste para
desligar, como funcionaria um controlador liga e desliga normal, iremos ligar e desligar
o motor por um pequeno perodo de tempo, para que o ajuste se d de forma mais
precisa.

16


Para uma eficincia maior do controle da vazo, foi proposto duas faixas de tempo
constantes para atuao do motor na vlvula. Quando o mdulo do erro for acima de
0,8 a abertura ou fechamento da vlvula ser maior que quando o mdulo do erro
estiver entre 0,3 e 0,8.
Esta soluo foi proposta devido ao atraso entre a atuao e leitura do sistema,
ou seja, ao abrir ou fechar a vlvula, existe um atraso na estabilizao da vazo. Outra
razo foi o tempo necessrio de leitura do medidor. Como j descrito, o medidor
interrompe o programa durante um tempo para fazer a medio, afastando mais ainda
a leitura e atuao da vazo.
Outra razo para o controle ser do tipo liga e desliga foi o fato do medidor de
vazo ter uma preciso pequena e o chuveiro eltrico trabalhar com faixa pequena de
vazo. Seria muito difcil fazer o tratamento do erro.
Essa soluo se mostrou boa mesmo com um tempo alto de estabilizao em
grandes erros. Para pequenos erros ou distrbios no sistema, o controlador corrigiu
bem as flutuaes na sada do chuveiro.
Uma desvantagem desse controlador o alto tempo de estabilizao uma vez que
a correo do erro feita gradualmente.
Outra desvantagem dessa soluo a necessidade de se estabelecer uma faixa
de ajuste. Em vez de um ponto de ajuste, teremos uma faixa de ajuste. No caso, um
ponto de ajuste mais ou menos um desvio. A razo dessa faixa de ajuste que como
estamos controlando a vazo por meio de pequenas aberturas ou fechamentos
constantes, a tendncia que a sada deixe de ser uma funo contnua e se
transforme em uma funo discreta. Dessa forma, a probabilidade do erro ser zero
muito baixa, fazendo que sempre haja uma atuao, mesmo se o erro for infinitesimal.
Quando o mdulo do erro for menor que 0,3, no h atuao no sistema.

3.3

Temperatura x Vazo

Se substituirmos (3.9) em (3.1) e isolarmos a diferena de temperatura temos:

17

Tmax

Q
Q
.

m c .v0 .c

(3.11)

Aplicando as hipteses, temos:

Tmax

0,48
v0

(3.12)

Da frmula (3.12) podemos ver que o aumento da temperatura inversamente


proporcional vazo do sistema.
A figura 3.1 mostra o diagrama de bloco do sistema.

Figura 3.1: Diagrama de blocos aps as hipteses

18

Captulo 4
Controle

O projeto de controladores baseia-se em um modelo matemtico que aproxima o


comportamento dinmico do processo que se deseja controlar.
Os sistemas de controle so dispositivos que tm por objetivo controlar uma ou
mais variveis em um sistema. Por meio de sensores e atuadores, esses dispositivos
executam tarefas sequenciais de acordo com um modelo matemtico pr-programado.
Os sensores so usados para a medio de uma varivel que ser usada como
entrada no modelo dinmico enquanto os atuadores so os responsveis pela
administrao da varivel a ser controlada. Por exemplo: mquina de lavar roupa,
controlador de velocidade de um carro, piloto automtico de um avio, ar-condicionado
digital, injeo eletrnica de um motor.
Basicamente, podemos subdividir os sistemas de controle em dois grupos:
Controlador de malha aberta: so controladores no realimentados, ou seja, no
utilizam o sinal de sada como entrada no controlador. No existe a influncia do
sistema a ser controlado no sistema de controle. Esses controladores no possuem
sensores, suas atuaes so dependentes somente de rotinas relacionadas ao tempo.
Ex.: O micro ondas que para aquecer um prato de comida, por exemplo, tem
como entrada uma varivel de tempo, definida pelo usurio. No h mensurao de
um sinal de sada, no h verificao se a temperatura da comida est ideal, quente
demais ou ainda continua fria.
Controlador de malha fechada: so controladores realimentados que, por meio de
sensores, utilizam o sinal de sada e/ou uma funo do sinal de sada como entrada no
controlador. Existe a influncia do sistema a ser controlado no sistema de controle. A
diferena entre os sistemas realimentados e os sistemas de malha fechado que

19


neste ltimo trabalha-se com a diferena do sinal de sada e de entrada, chamado de
erro.
Ex.: O controlador de velocidade de um carro. Uma vez definida a referncia ou
ponto de ajuste, o controlador compara essa referncia com a velocidade real do
veculo e atua de forma a ajustar a velocidade, acelerando ou freando o carro.

Figura 4.1: Diagrama de blocos: (a) malha aberta e (b) malha fechada

4.1

Linearidade

A propriedade da linearidade define que:

F ax by aF x bF y

20


Embora muitos fenmenos sejam representados por equaes lineares, na prtica
as relaes entre eles no so efetivamente lineares. Estudos mostram que esses
fenmenos podem ser lineares somente em um intervalo de operao.
Por isso, ao modelar um sistema no-linear, faz se o que chamamos de
linearizao. Modelar nada mais que definir o comportamento das variveis de um
sistema. Ao linearizar um sistema, estamos representando matematicamente seu
comportamento dentro de um intervalo pr-definido.
Uma boa linearizao do sistema define uma boa modelagem da dinmica do
sistema, que por sua vez proporciona uma maior acurcia do sistema de controle.

4.2

Distrbios ou Perturbaes

So todas as variveis/estmulos que afetam/impactam o sistema que no so


exercidas pelos atuadores e/ou no estejam inseridas no modelo dinmico, ou seja,
alguma interferncia sobre a varivel a ser controlada que no tenha sido causada
pela ao do controlador ou por outra ao previamente calculada. Os distrbios no
so mensurados nem entram na modelagem, so inerentes ao meio.

4.3

Controlador Liga e Desliga

O controlador liga e desliga o controlador mais simples que existe. A sada do


controlador muda de ligada para desligada, ou vice-versa, medida que o sinal do
erro passa pelo ponto de ajuste.
Exemplo: O termostato de geladeira, se a temperatura est acima da temperatura
de referncia, o controlador liga o compressor para refrigerar a geladeira e, se estiver
abaixo, desliga.

21


Esse tipo de controlador bem rstico e pouco preciso. Por atuar somente
como ligado ou desligado, o controlador gera oscilao na varivel controlada.
Trabalha dentro de uma mdia, oscilando entre um valor mximo e mnimo. O controle
dinmico do sistema limitado.
Geralmente, o controlador liga e desliga utilizado em ocasies onde o sistema
no impactado pelas flutuaes da varivel controlada. O processo permite essas
oscilaes.
As vantagens do controlador liga e desliga so a no necessidade de um estudo
profundo da dinmica do sistema, o projeto geralmente simples e de fcil
implementao, tem baixo custo e retorno em pouco tempo.
O controle de nvel de gua de uma caixa d'gua um bom exemplo de sistema
onde o um controlador liga e desliga funciona perfeitamente. Quando o nvel estiver
abaixo de um valor mnimo, a bomba acionada e, quando este nvel chega a um
valor mximo, a bomba desligada. A Figura 4.2 mostra um exemplo de grfico de um
controlador liga e desliga.
Nesse caso, no tem como controlar o nvel exato da gua na caixa d'gua, mas
pode-se afirmar que o nvel estar sempre entre uma faixa, nunca abaixo do nvel
mnimo, de forma a evitar o risco de faltar gua e nunca acima do nvel mximo,
evitando o vazamento e o desperdcio de gua.

Figura 4.2: Exemplo de grfico de um controlador liga e desliga

22

4.4

Controlador PID (Proporcional Integral e Derivativo)

um controlador realimentado de malha fechada que minimiza o erro entre o sinal


de sada e o de entrada contribudo por trs fatores: proporcional, integral e derivado
do prprio erro.
Proporcional: indica o valor presente do erro. Quanto maior o erro, maior a
atuao do controlador.
Integral: indica a acumulao dos erros passados. Esse fator corrige o erro
estacionrio, ou seja, gerado por uma perturbao constante. Imagine um elevador
que tem um controlador que controla a fora para definir a velocidade e o nvel dos
andares. Para o mesmo nvel (ponto de ajuste), dependendo do nmero de pessoas,
ou seja, do peso que ele carrega, a fora exercida ser diferente. Ao se aproximar do
ponto de ajuste, K p e K d tenderiam a 0, o controle iria atuar sempre de forma
constante. Esse fator corrige tal erro.
Derivado: indica a taxa de variao no tempo dos erros, ou seja, uma
indicao/previso do futuro do erro. Se essa taxa de variao estiver aumentando,
significa que o sistema se afasta do ponto de ajuste, logo o fator derivativo ser maior
e o controlador ir atuar de forma mais expressiva para corrigir o erro. J se essa
variao estiver diminuindo, o sistema se aproxima do ponto de ajuste, o fator
derivativo ser negativo e diminuir a atuao com objetivo de no extrapolar o ponto
de ajuste. um fator que amortiza o sistema, evita grandes oscilaes e propicia um
menor tempo de estabilizao.
Fator Proporcional = K p et
t

Fator Integral = K i et dt

Fator Derivativo = K d et
A soma desses trs fatores gera o controlador PID. A compreenso de cada fator
e de suas contribuies so fundamentais para a definio das constantes K p , K d e
23

K i . Essas constantes so a alma do controlador PID, so elas, junto com uma boa
modelagem dinmica do sistema, que definem a estabilidade e o comportamento do
sistema.
t

PID K p et K i et dt K d et
0

Tambm conhecida como:


t

et dt

0
Td et
PID K p et
Ti

onde:

Ki

Kp
Ti

K d K p Td

Tabela 4.1: Anlise das constantes do PID


A tabela 4.1 resume o efeito de cada constante no sistema dinmico de controle.
O inverso tambm vlido.
Por exemplo: ao diminuir o K p , o tempo de subida aumenta e assim por diante.

4.5

PID versus Sistemas no-lineares

24


Os controladores PID so lineares e simtricos, o que faz seu desempenho em
sistemas no-lineares ser varivel. Por exemplo, num controle de temperatura em um
ambiente por meio de um ar condicionado, um caso de uso comum, o arrefecimento
ativo, mas o aquecimento passivo (arrefecimento desligado, sem aquecimento), o
overshoot apenas pode ser corrigido lentamente porque no pode ser forado. Neste
caso, o PID deve ser ajustado para ser superamortecido, para prevenir ou reduzir o
overshoot. Isso reduz o desempenho e aumenta o tempo de estabilizao.

25

4.6

Programao

A programao do controlador foi feita em um software da prpria placa Arduino


em linguagem C/C++. O programa se encontra no Anexo I.
O Algoritmo de programao bem simples e pode ser dividido em 3 etapas:

Leitura das variveis:


Leitura dos sensores e dos potencimetros.
Clculo das sensibilidades para a definio dos valores do sistema e da
definio dos pontos de ajustes.

Controle:
Aplicao do modelo matemtico da dinmica do controlador.

Atuao no sistema:
Programao dos atuadores, isto , as sadas do sistema.

Para que ocorra efetivamente o controle das variveis e mantenha-se a


estabilidade, essas trs etapas devem ser executadas em sequncia e de forma
iterativa. Leem-se as variveis, aplica-se o controle e atua-se no sistema. Releem-se
as variveis e assim por diante. Por isso o programa principal um looping.
A estrutura da programao do Software consiste em:

Declarao das variveis:


Nessa primeira parte, declaram-se todas as variveis e seus respectivos
tipos que sero usadas em todo o programa.
Aqui tambm inclumos bibliotecas (#include). Uma biblioteca um conjunto
de comandos previamente feitos por algum. O Arduino j possui uma rica
biblioteca, cada uma desenvolvida para uma aplicao particular.

Declarao de funo ( void #nomedafuno() ):


Caso haja necessidade, pode se criar uma funo para ser usada no
programa. Essa funo descrita fora do programa principal.
26


Na figura abaixo, pode-se ver todas as variveis declaradas e a incluso da
biblioteca <LiquidCrystal.h>, que necessria para o funcionamento do
LCD.
V-se tambm a definio da funo rpm().

Definio das configuraes ( void setup() ):


Nesse espao so definidas as configuraes do programa.
onde se define se o pino digital por tipo (entrada ou sada), o tamanho do
display e onde se configura a funo attachInterrupts().

O programa ( void loop() ):


o programa principal, onde so desenvolvidas as trs etapas.

A tabela 4.2 destaca alguns comandos:


NoTopsFan++

NoTopsFan=NoTopsFan+1

pinMode(pino,INPUT/OUTPUT);

defineopinocomoentradaousada

attachInterrupt(pino,funo,TIPO);

defineopino,afunoaserchamadaeoTIPO
(LOW/CHANGE/RISING/FALLING)

analogRead(pino);

fazaleituraanalgica(01023)

analogWrite(pino,pwm);

comandaasadapwm(0255)

digitalRead(pino);

fazaleituradigital(0ou1)

digitalWrite(pino,LOW/HIGH);

comandaasadadigital(0ou1)

sei();

habilitaainterrupo

cli();

desabilitaainterrupo

delay(tempo);

paraoprogramaporumtempo(emms)

map(x,min,max,novomin,novomax);

interpolaonmeroxdeumaescalaparaoutra

lcd.setCursor(x,y);

defineocursordoLCD

lcd.print(var);

imprimenoLCD

Serial.print();

imprimenoSerial
Tabela 4.2: Comandos principais do Arduino

27

Captulo 5
Aquisio e anlise dos dados

Para aquisio dos dados, foi usado o comando Serial.print() e depois exportados
para o Excel para fazer anlise e gerao de grficos.

5.1

Definio das constantes do controlador de temperatura

Primeiramente, para definir as constantes do controlador de temperatura, foram


feitos alguns ensaios somente utilizando o controlador de temperatura.
Nesses experimentos, usou-se um intervalo de 1 segundo entre as medies e

40
38
36
34
32
30
28
26
24
22
20

SP

200

190

180

170

160

150

140

130

120

110

90

100

80

70

60

50

40

30

20

10

temp

Temperatura[C]

atuaes. Esse intervalo de tempo o que usado no projeto junto com a vazo.

Tempo[s]

Figura 5.1 - Grfico da temperatura no tempo do 1 experimento.


Para o primeiro experimento foram atribudos valores arbitrrios para o K p de 10
e K i de 0,2. Analisando a figura 5.1, o grfico da temperatura desse experimento
28


mostra que o controlador responde bem ao sistema tendendo a temperatura de
referncia ou ponto de ajuste (SP). Porm, percebe-se que a volatilidade da medio
muito alta. Essa volatilidade alta, atrapalha a dinmica do sistema. Com essa
volatilidade, fica difcil tambm determinar o tempo de estabilizao do sistema. Por
isso foi includo um filtro de mdia mvel de dois para atenuar essa volatilidade. A
mdia mvel de dois usa a mdia entre o valor atual e o valor anterior medido.
Funciona como um filtro passa baixa onde atenua as medies de alta frequncia que
no so interessantes para o sistema.
O primeiro abaixou-se a temperatura, esperou-se estabilizar, logo em seguida

40
38
36
34
32
30
28
26
24
22
20

SP
temp

0
10
20
30
40
50
60
70
80
90
100
110
120
130
140
150
160
170
180
190
200
210
220
230
240
250
260
270
280
290
300
310

Temperatura[C]

voltou temperatura anterior e esperou estabilizar novamente.

Tempo[s]

Figura 5.2 - Grfico da temperatura no tempo do 2 experimento.


Pode-se ver pela figura 5.2 que ao inserir o filtro de mdia mvel, a dinmica da
leitura da temperatura fica mais estvel e estabelece um padro melhor. V-se
tambm que a temperatura lida tende a seguir a temperatura estabelecida pelo ponto
de ajuste, o que demonstra que o controlador est atuando de forma corretiva como
queramos.
Nesse experimento tivemos 2 modificaes no ponto de ajuste. Na primeira
baixamos a temperatura em torno de 8 graus, esperamos estabilizar e depois
retornamos a temperatura inicial. Em relao ao tempo de estabilizao, vemos que
quando abaixamos a temperatura, o sistema levou em torno de 30 segundo para
estabilizar enquanto quando retornamos a temperatura inicial, a estabilizao se deu
em torno de 65 segundos.

29

PWM
1,2
DutyCycle[%]

1
0,8
0,6
0,4
0,2
0
10
20
30
40
50
60
70
80
90
100
110
120
130
140
150
160
170
180
190
200
210
220
230
240
250
260
270
280
290
300
310

0
Tempo[s]

Figura 5.3 PWM do 2 experimento.


A figura 5.3 mostra a atuao do PWM no segundo experimento.
No terceiro experimento, foi aumentado o K p para 30 e manteve-se K i em 0,2. A
inteno foi diminuir o tempo de estabilizao do sistema.
40
38

Temperatura[C]

36
34
32
30
SP

28

temp

26
24
22
0
10
20
30
40
50
60
70
80
90
100
110
120
130
140
150
160
170
180
190
200
210
220
230
240
250
260
270
280
290
300
310

20
Tempo[s]

Figura 5.4 - Grfico da temperatura no tempo do 3 experimento.


A figura 5.4 mostra que o padro da dinmica do sistema se manteve. O
controlador atuou de forma corretiva e estabilizou bem as temperaturas.

30


Como esperado, pelo fato de uma constante proporcional maior, o tempo de
estabilizao das temperaturas foi menor. Quando se abaixou a temperatura, o
sistema estabilizou-se em torno de 25 segundos enquanto aumentamos a temperatura
o sistema estabilizou-se em 50 segundos. A figura 5.5 mostra a atuao do PWM no
segundo experimento.

PWM
CiclodeTrabalho[%]

1,2
1
0,8
0,6
0,4
0,2
0
10
20
30
40
50
60
70
80
90
100
110
120
130
140
150
160
170
180
190
200
210
220
230
240
250
260
270
280
290
300
310

0
Ttulo

Figura 5.5 PWM do 3 experimento.


No quarto experimento aumentou-se o K p para 50. O resto do experimento se
manteve.
40
38
Temperatura[C]

36
34
32
30

SP

28

temp

26
24
22
0
10
20
30
40
50
60
70
80
90
100
110
120
130
140
150
160
170
180
190
200
210
220
230
240
250

20
Tempo[s]

Figura 5.6 - Grfico da temperatura no tempo do 4 experimento.

31


A dinmica do experimento foi igual a das anteriores com um tempo de
estabilizao menor. A figura 5.6 mostra que quando se abaixou a temperatura o
tempo de estabilizao foi de em torno de 30 segundos enquanto aumentamos a
temperatura o sistema estabilizou-se em 38 segundos.
Na verdade, o tempo de estabilizao quando abaixamos a temperatura foi maior
no quarto experimento que no terceiro. Isso pode ser explicado pelo fato que atuao
no caso de resfriamento da gua passiva, ou seja, no h atuao. Espera-se que o
sistema por si s resfrie a gua decorrido certo tempo. Nesse tipo de situao, o
sistema fica a merc de situaes adversas que no controlamos como, por exemplo,
a temperatura de entrada da gua e a perda de energia do sistema para o meio.

PWM
CiclodeTrabalho[%]

1,2
1
0,8
0,6
0,4
0,2
0
10
20
30
40
50
60
70
80
90
100
110
120
130
140
150
160
170
180
190
200
210
220
230
240
250

0
Tempo[s]

Figura 5.7 PWM do 4 experimento.


V-se na figura 5.7 que entre os tempos 5 e 33 o sistema no atua, esperando
passivamente a estabilizao da temperatura.
Dentre o segundo, terceiro e quarto experimento. Analisaram-se os resultados e
decidiu-se por escolher as constantes K p = 50 e K i = 0,2. Essas constantes
responderam de forma eficaz.
O fato de no se ter introduzido um K d , ou seja, um fator derivativo, se deu por
conta da alta volatilidade da medio da temperatura. O fator derivativo tem como
objetivo tentar antecipar erros futuros e como explicado anteriormente, ele calculado
pela variao dos erros. Para introduo de fator derivativo, seria necessrio um

32


sensor mais preciso e/ou a introduo de mtodos matemticos de filtragem mais
eficientes na dinmica da leitura do sensor.
Foi realizado tambm um experimento somente com um controlador proporcional.
S que dessa vez diminumos o intervalo de tempo entre as medies e atuaes para
0,1 segundos.
Sem a constante de integrao o sistema no conseguiria eliminar o erro
estacionrio. Porm com um constante de integrao alta e um intervalo muito
pequeno entre as medies e atuaes, o sistema deveria oscilar com uma amplitude
pequena em torno do ponto de ajuste. Essa amplitude seria pequena ao ponto de ser
imperceptvel na sada do sistema.
40
38

Temperatura[C]

36
34
32
30
SP

28

temp

26
24
22
0
4
8
12
16
20
24
28
32
36
40
44
48
52
56
60
64
68
72
76
80
84
88
92
96
100
104
108
112

20
Tempo[s]

Figura 5.8 - Grfico da temperatura no tempo do 5 experimento


A figura 5.8 mostra que o sistema respondeu como esperado e o tempo de
estabilizao quando aumentamos a temperatura foi de em torno de 30 segundos. A
figura 5.9 mostra a atuao do PWM no quinto experimento.

33

PWM
1,2

CiclodeTrabalho[%]

1
0,8
0,6
0,4
0,2
0
0

10

20

30

40

50

60

70

80

90

100

110

Tempo[s]

Figura 5.9 PWM do 5 experimento.


Esse quinto experimento foi feito para entendermos melhor o funcionamento do
controlador por meio da alterao de parmetros alm das constantes. Nesse caso,
pode-se ver que como o controlador tem a capacidade de atuar de forma mais rpida
e mesmo sem um fator integral, ele atua melhor e de forma mais eficiente na dinmica
do sistema, corrigindo o erro estacionrio. No nosso projeto, por causa do medidor de
vazo, o intervalo de tempo de 1 segundo.

5.2

Controlador de temperatura e vazo

Foram realizados trs experimentos com o controlador:


No primeiro, aplicou-se uma diferena ao mesmo tempo no controlador de
temperatura e no controlador de vazo. A inteno foi visualizar o comportamento
dinmico do sistema quando fosse solicitado grande atuao nas duas variveis a
serem controladas.
No segundo e no terceiro deixou-se a temperatura constante e variou-se a vazo.
No segundo diminui-se a vazo enquanto no terceiro aumentou-se. A inteno foi ver
o quanto de alterao na vazo influenciaria a dinmica da temperatura.

34

20

18

Vazo[L/s]

22

SP
temp
SP
vazo

80

75

24

70

65

26

60

55

28

50

45

30

40

35

32

30

25

34

20

15

36

10

10

38

Temperatura[C]

Tempo[s]

Figura 5.10 - Grfico da dinmica dos controladores do 1 experimento

A figura 5.10 mostra que os controladores reagiram da forma esperada. O


controlador de temperatura no atingiu a temperatura do ponto de ajuste por falta de
potncia do projeto, pois como podemos ver pela figura 5.11, o controlador fornecia o
mximo de potncia que poderia. Enquanto o controlador de vazo trabalhou dentro
do intervalo que foi projetado.

PWM
CiclodeTrabalho[%]

1,2
1
0,8
0,6
0,4
0,2
0
0

10

20

30

40

50

60

70

80

Tempo[s]

Figura 5.11 PWM.

35


Nesses experimentos, pode-se ver que as temperaturas medidas se mantiveram
constantes parecendo assim que a temperatura do sistema independente da vazo.
Porm, se analisarmos o grfico da atuao do PWM sobre a temperatura, vemos que
houve uma alterao na atuao da temperatura.
O que podemos concluir em relao aos experimentos dois e trs que a
resposta do sistema de controle da temperatura alta e a da vazo lenta. Ento por
isso, imperceptvel o impacto na temperatura quando alteramos a vazo do sistema.
O controlador corrige a diferena de temperatura causada pela alterao na vazo de
forma rpida, antes mesmo que o usurio perceba.
As figuras 5.12 e 5.14 mostram a dinmica da temperatura e vazo no segundo e
terceiro experimento respectivamente e as figuras 5.13 e 5.15 mostram a atuao do
PWM no segundo e terceiro experimento respectivamente.
32

31

7
6
5

29
4
28
3

Vazo[L/s]

Temperatura[C]

30

SP
temp
SP
vazo

27

2
1

25

0
0
5
10
15
20
25
30
35
40
45
50
55
60
65
70
75
80
85
90
95
100
105
110

26

Tempo[s]

Figura 5.12 - Grfico da dinmica dos controladores do 2 experimento

36

PWM
CiclodeTrabalho[%]

0,85
0,8
0,75
0,7
0,65
0,6
0,55
0
10
20
30
40
50
60
70
80
90
100
110
120
130
140
150
160
170
180
190
200
210
220
230

0,5
Ttulo

Figura 5.13 PWM

31

30

7
6
5

28
4
27
3
26

Vazo[L/s]

Temperatura[C]

29

SP
temp
SP
vazo

65

60

55

50

45

40

35

30

25

20

15

0
10

24
5

25

Tempo[s]

Figura 5.14 - Grfico da dinmica dos controladores do 3 experimento

37

PWM
CiclodeTrabalho[%]

0,9
0,85
0,8
0,75
0,7
0

10

20

30

40

50

60

70

80

90

100

110

Tempo[s]

Figura 5.15 PWM

38

Captulo 6
Consideraes finais

A implementao de um controlador realmente facilita e simplifica a vida do


usurio. Um controlador bem projetado trs segurana, praticidade e conforto no dia a
dia. Outra vantagem a economia de tempo disponibilizando mais tempo para
atividades que exigem menos trabalhos operacionais e mais analticos.
Um controlador de temperatura em um chuveiro eltrico, por exemplo, uma boa
opo para locais onde no existe gs encanado. O gs uma fonte de energia mais
barata que a eltrica e o boiler permite regular a temperatura de forma mais precisa
que os chuveiros eltricos convencionais. Com o controlador de temperatura no
chuveiro eltrico, apesar de mais caro que os boilers, a definio da temperatura
mais simples e rpida. Evita que o usurio fique regulando a temperatura
manualmente por meio de macetes ou que tome um banho muito frio ou muito quente,
como acontece com os chuveiros eltricos convencionais. Isso acarreta em um tempo
de banho menor do que o normal, diminuindo o consumo de gua e de energia.
O controlador de vazo em um chuveiro aconselhado para locais com vazes
inconstantes ou com vazes muito altas. Da mesma forma, o usurio economiza
tempo transferindo o controle da vazo para o prprio chuveiro. Ainda por cima mais
eficiente.

6.1

Concluso

39


O controlador do chuveiro de temperatura e vazo inicialmente planejado foi
concludo. As respostas e os grficos gerados corresponderam expectativa inicial do
projeto. O objetivo de estudar e entender mais sobre controladores, a concepo e a
visualizao de um controlador fsico foram alcanados com sucesso.
O que foi realizado:
Definio, adaptao e calibrao do sensor de temperatura no chuveiro.
Definio, adaptao e calibrao do medidor de vazo no chuveiro.
Sistema de atuao vlvula motor com transmisso e suporte adaptados para o
chuveiro.
Modelagem matemtica do sistema. Implementao de mdia dos valores
medidos para diminuir a impreciso e volatilidade dos instrumentos de medio
Programao do controlador foi desenvolvida em C/C++.

6.2

Trabalhos futuros

O projeto ainda pode ter melhorias significativas aperfeioando-se individualmente


cada componente do chuveiro.
Como propostas de trabalhos futuros destacam-se:
Na nfase do controle da temperatura, ver a possibilidade de usar dois
termopares para a medio da temperatura antes e depois do aquecimento da gua. A
medio da temperatura de entrada reduziria o peso dos distrbios do sistema,
diminuindo o fator integral do controlador. Por sua vez, um fator integral pequeno
diminui o tempo de resposta e aumenta a estabilidade do sistema.
Outra melhoria poderia ser na modelagem da temperatura. Incluir a vazo nesse
modelo traria mais eficincia ao chuveiro.
Na vazo, procurar uma soluo para transformar o sinal em frequncia para um
sinal em tenso do medidor de vazo. Dessa forma, a medio se daria
40


instantaneamente possibilitando a instalao de um controlador mais robusto como o
PID e tambm melhoraria o desempenho do controlador de temperatura.
Melhorar o desempenho do sistema de atuao motor-vlvula. A implementao
de um motor de passo daria mais eficincia ao modelo, pois se conseguiria saber a
posio angular da vlvula.

41

Referncias Bibliogrficas

[1]PID Controller, Wikipedia. Disponvel em:


< http://en.wikipedia.org/wiki/PID_controller> Acessado em: 18 ago. 2013.

[2]Robocore. Disponvel em:


< www.robocore.net> Acessado em: 18 ago. 2013.

[3]OGATA, Katsuhiko. Engenharia de Controle Moderno. 5. ed. So Paulo: Pearson


Prentice Hall, 2010.

42

Anexo I
Desenvolvimento da programao do controlador

43


#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 6, 5, 4, 3);
int caso = 0;
int pottemp = 5;
int potvazao = 4;
float temp = 0;
float vazao = 0;

// Pino de entrada dos potencimetros dos setpoints

// Setpoints (temp e vazo)

const int NTC = 1;


// Pino do sensor de temperatura
volatile int NbTopsFan;
// measuring the rising edges of the signal
int hallsensor = 2;
// The pin location of the sensor
float ValorVazao = 0;
// Leitura da vazo do sistema
float errovazao = 0;
// Erro da vazo do sistema
float errovazao2 = 0;
float mediaerrovazao = 0;
float ValorTemp = 0;

// Leitura da temperatura do sistema

float errotemp = 0;
float errotemp2 = 0;

// Erros (temp)

float mediaerro = 0;
float errotemp_integral = 0;
float dertemp = 0;
float kpt = 50;
float kit = 0.2;

// Constantes do controlador

int pwm = 0;
int pinopwm = 10;
int saidatemp = 0;
int motor1 = 8;
int motor2 = 7;

// Controladores (Sadas)

float t = 1;
// Tempo entre as medies ( determinar)
//________________________________________________________________________
void rpm ()
//This is the function that the interupt calls
{
NbTopsFan++;
}
//________________________________________________________________________
void setup(){
lcd.begin(16, 2);
Serial.begin(9600);
pinMode(hallsensor, INPUT); // Entradas e sadas
pinMode(pinopwm, OUTPUT);
pinMode(motor1, OUTPUT);

44


pinMode(motor2, OUTPUT);
TCCR1B = TCCR1B & 0b11111000 | 0x05;
attachInterrupt(0, rpm, RISING); //and the interrupt is attached
}
//_______________________________________________________________________
void loop(){
// ----------------------- Incio da leitura da vazo ------------------NbTopsFan = 0;
//Set NbTops to 0 ready for calculations
sei();
//Enables interrupts
delay (1000);
//Wait 1 second
cli();
//Disable interrupts
ValorVazao = NbTopsFan;
//(Pulse frequency x 60) / 7.5Q, = flow rate in L/hour
ValorVazao = ValorVazao / 7.5;
// ---------------------- Final da leitura da vazo --------------------ValorTemp = map(analogRead(NTC), 508, 635, 260, 380);
ValorTemp = ValorTemp/10;

// Leitura da temperatura

temp = map(analogRead(pottemp), 0, 1023, 200, 400); // Definio do SP da temperatura


temp = temp/10;
vazao = map(analogRead(potvazao), 0, 1023, 10, 80); // Definio do SP da vazo
vazao = vazao/10;
// Controlador:________COONTROLE DA TEMPERATURA_________________________
errotemp = temp - ValorTemp;
// Erro temp
mediaerro = (errotemp + errotemp2);
errotemp_integral = errotemp_integral + mediaerro*t;

// Acumulao do erro, parte integral

saidatemp = kpt * mediaerro + kit * errotemp_integral;


pwm = map(saidatemp, -50, 50, 0, 255);

// Controlador da temperatura

if (pwm > 255){


pwm = 255;
}
if (pwm < 0){
pwm = 0;
}
analogWrite(pinopwm, pwm);
//_______________________________________________________________
errotemp2 = errotemp; // Guarda os erros anteriores para o
// clculo da mdia
//___________________CONTROLE DA VAZO______________________________
errovazao = vazao - ValorVazao;
mediaerrovazao = (errovazao + errovazao2)/2;
errovazao2 = errovazao;

// Erro vazao

45


caso = 0;
if ((mediaerrovazao < -0.3) && (mediaerrovazao > -0.8)){
p/ um sentido
digitalWrite(motor2,HIGH);
delay(300);
caso = 1;
digitalWrite(motor2,LOW);
}

// Controlador da vazo

if ((mediaerrovazao > 0.3) && (mediaerrovazao < 0.8)){


// Controlador da vazo
p/ o outro sentido
digitalWrite(motor1,HIGH);
delay(300);
caso = 2;
digitalWrite(motor1,LOW);
}
if (mediaerrovazao < -0.8){
// Controlador da vazo p/ um sentido
digitalWrite(motor2,HIGH);
delay(700);
caso = 3;
digitalWrite(motor2,LOW);
}
if (mediaerrovazao > 0.8){

// Controlador da vazo p/ o outro

sentido
digitalWrite(motor1,HIGH);
delay(700);
caso = 4;
digitalWrite(motor1,LOW);
}
// FIM DO CONTROLADOR________________________________________
// LCD ______________________________________
// 0123456789012345
// T: 30,5 30,5 C
// V: 1,4 1,6 L/m
// ________________
lcd.setCursor(0,0);
lcd.print("T:");
lcd.setCursor(0,1);
lcd.print("V:");
lcd.setCursor(14,0);
lcd.print("C");
lcd.setCursor(13,1);
lcd.print("L/m");
lcd.setCursor(3,0);
lcd.print(temp);
lcd.setCursor(7,0);
lcd.print(" ");
lcd.setCursor(3,1);
lcd.print(vazao);
lcd.setCursor(7,1);

46


lcd.print(" ");
lcd.setCursor(9,1);
lcd.print(ValorVazao);
lcd.setCursor(8,0);
lcd.print(ValorTemp);
lcd.setCursor(13,0);
lcd.print(" ");
// FIM DO LCD________________________________
} //void loop

47

Das könnte Ihnen auch gefallen