controle de iluminação residencial utilizando arduino ... · operacional android foi desenvolvido...
TRANSCRIPT
UNIVERSIDADE FEDERAL DE OURO PRETO
ESCOLA DE MINAS
COLEGIADO DO CURSO DE ENGENHARIA
DE CONTROLE E AUTOMAÇÃO – CECAU
TAMIRES MARTINS REZENDE
CONTROLE DE ILUMINAÇÃO RESIDENCIAL UTILIZANDO ARDUÍNO
ACIONADO POR APLICATIVO EM SISTEMA OPERACIONAL ANDROID
MONOGRAFIA DE GRADUAÇÃO EM ENGENHARIA DE CONTROLE E
AUTOMAÇÃO
Ouro Preto, 2014.
TAMIRES MARTINS REZENDE
CONTROLE DE ILUMINAÇÃO RESIDENCIAL UTILIZANDO
ARDUÍNO ACIONADO POR APLICATIVO EM SISTEMA
OPERACIONAL ANDROID
Monografia apresentada ao Curso de Engenharia
de Controle e Automação da Universidade
Federal de Ouro Preto como parte dos requisitos
para a obtenção do Grau de Engenheiro de
Controle e Automação.
Orientadora: Prof.ª Me. Regiane de Sousa e Silva
Ramalho
Coorientador: Prof. Dr. Paulo Marcos de Barros
Monteiro
Ouro Preto
Escola de Minas – UFOP
Dezembro/2014
Fonte de catalogação: [email protected]
R467c Rezende, Tamires Martins.
Controle de iluminação residencial utilizando Arduino acionado por
aplicativo em sistema operacional Android. [manuscrito] / Tamires
Martins Rezende. – 2014.
65f. : il., color., tab.
Orientador: Prof.ª Me. Regiane de Sousa e Silva Ramalho.
Co-Orientador: Prof. Dr. Paulo Marcos de Barros Monteiro.
. Monografia (Graduação) – Universidade Federal de Ouro
4
5
DEDICATÓRIA
Dedico este trabalho e toda a
minha graduação à minha família.
AGRADECIMENTOS
Tudo começou quando eu tive a oportunidade de estudar no CEFET-OP. Lá encontrei pessoas
que me ajudaram demais e fiz grandes amigas como Juliana e Sarana. Assim que formei,
consegui estágio na Fundação Gorceix por intermédio de Viviane, Kiki, Quênia e Hugo...
tenho muito que agradecer vocês, pois esse foi um dos principais passos para o meu
crescimento pessoal e profissional.
Passei pela Química Licenciatura e fiz mais uma amiga: Gabriela... rimos muito e fomos para
muitos rock’s! Tudo era bom quando a gente se encontrava! Após dois anos na Química,
chegou a hora da conquista. Ler a palavra “DEFERIDO” no meu requerimento de
transferência foi uma emoção e tanto. Começava uma nova etapa... Começava o que eu
(realmente) queria para mim! Durante o curso de Eng.ª de Controle e Automação tive muitos
parceiros: Aline, Elisa, Felipe Tavares, João, Lucas, Sabrina, Thiago Loureiro, Wellington...
Além dos meus admiráveis mestres: Paulo Monteiro, Ríspoli, Agnaldo, Cocota, Joca, Karla,
Alan, Sica, Klebão, Marcone... Sem os quais eu não me tornaria uma engenheira!!!
Durante a minha graduação participei de alguns projetos e agradeço aos mestres que sempre
acreditaram em mim: Prof. Sebastião (Monitoria de Cálculo), Prof.ª Karla (Monitoria de
Informática Industrial), Prof. Sica (Projeto Aluno Integrado), Prof. Agnaldo (PIVIC), Prof.
Carlos (Lab de Pirometalurgia), Prof.ª Regiane e Prof. Paulo (meus orientadores), além de
todos os meus amigos da 12 Bis e do Pré-vestibular Humanista.
Não posso esquecer do meu estágio no DEPAI. Muito obrigada Rogério (o melhor chefe),
Demétrius, Waltinho, Sérgio, Valdiléia, Luciano, Divanildo e as estagiárias mais legais do
mundo: Elisa (valeu pela indicação), Victória (se nada der certo, trabalhe corrigindo textos) e
“Eu”.
Bom... foi com a proteção de Deus que encontrei essas pessoas maravilhosas que, sem as
quais, eu não chegaria até aqui. Como se não bastasse, eu ainda tenho uma família
maravilhosa e especial. Agradeço ao meu querido Pai Emidio, homem de caráter
inquestionável, e a minha linda Mãe Nelita, melhor mãe do mundo. Aos meus irmãos:
Ronaldo (meu 2º pai), Luciano (exemplo de profissional) e Viviane (minha inspiradora). Ao
Kiki e Cakis. Ao meu sobrinho Ronaldo Júnio: minha razão de viver, tia te ama muito! Aos
meus tios (as), primos (as), padrinho e madrinhas. Ao Dê pelo companheirismo e carinho.
Esse é um dos momentos mais felizes da minha vida em que eu tenho certeza que tudo valeu a
pena. Agora sim, sou uma Engenheira!!!
“Tudo posso naquele que me fortalece”.
(Filipenses 4:13)
RESUMO
A automação tem vestígios desde o século X, mas foi instituída apenas em 1946. Desde essa
época, a automação, auxiliada pelos avanços tecnológicos, vem evoluindo numa velocidade
assustadora. Diante desse progresso, surgiu a domótica ou automação residencial, que é a
automação aplicada às residências como forma de propiciar conforto, segurança e praticidade.
Com tantas vantagens e buscando uma solução simples e de baixo custo, neste trabalho foi
desenvolvido um sistema de controle de iluminação com o intuito de utilizar luz natural o
máximo possível e proporcionar conforto visual ao usuário. Através de um aplicativo de
smartphone, o usuário seleciona o ambiente da sua residência (sala ou quarto) e qual a
atividade será desempenhada nele (sala: de jogos, de ver televisão, de ver filme, de estar /
quarto: de estudo, para relaxar, para dormir, para assistir televisão). Depois da escolha feita, o
controlador desenvolvido em Arduino aciona a persiana, abrindo-a ou fechando-a, e, caso o
fluxo luminoso não seja suficiente, a lâmpada é acionada. O aplicativo para sistema
operacional Android foi desenvolvido no software online MIT App Inventor 2 e a
comunicação entre ele e o controlador é via bluetooth. Todo esse sistema foi testado em uma
maquete feita de acrílico, podendo constatar a veracidade do projeto.
Palavras-chave: Arduino, Android, controle de iluminação, conforto visual, domótica.
ABSTRACT
Automation has remains from the tenth century, but was established only in 1946. Since that
time the automation, aided by technological advances, has been evolving at a dizzying rate.
Given this progress, came home automation, which is automation applied the homes as a way
of providing comfort, safety and practicality. With so many advantages and seeking a simple
and low cost solution, this study developed a lighting control system with the intention to use
natural light as much as possible and provide visual comfort to the user. Through a
smartphone app, the user selects the room of your house (living room or bedroom) and chose
the activity will be performed on it (room: games, watch TV, to watch films, living room /
bedroom: study, to relax , to sleep, to watch TV). After the choice made, the controller
developed in Arduino drive the curtain, opening it or closing it, and, if the luminous flux is
not enough, the lamp is turned on. The application for the Android operating system was
developed at software online: MIT App Inventor 2 and the communication between him and
the controller is via Bluetooth. This whole system was tested in a model made of acrylic and
could be confirmed the veracity of the project.
Key-words: Arduino, Android, lighting control, visual comfort, home automation.
LISTA DE ABREVIAÇÕES
CI - Circuito Integrado.
CLP - Controlador Lógico Programável.
CNC – Controle Numérico Computadorizado.
EUA - Estados Unidos da América.
IDE - Integrated Development Environment
IRC - Índice de reprodução de cor.
I/O – Input/Output.
LED - Light Emitting Diode.
LDR - Light Dependent Resistor ou fotoresistor.
MDF - Medium-Density Fiberboard.
PVC - Policloreto de polivinila (ou policloreto de vinil).
PWM - Pulse Width Modulation.
LISTA DE FIGURAS
FIGURA 1.1 - ACONTECIMENTOS HISTÓRICOS ............................................................. 15
FIGURA 2.1 - PLACAS DE ACRÍLICO MONTADAS ......................................................... 22
FIGURA 2.2 - PAREDES REVESTIDAS ............................................................................... 22
FIGURA 2.3 - MAQUETE FINALIZADA ............................................................................. 23
FIGURA 2.4 - ARDUINO UNO .............................................................................................. 24
FIGURA 2.5 - LDR .................................................................................................................. 24
FIGURA 2.6 - LED .................................................................................................................. 25
FIGURA 2.7 - LIGAÇÃO ENTRE ULN2003A E MOTOR DE PASSO ............................... 25
FIGURA 2.8 - MÓDULO BLUETOOTH ............................................................................... 26
FIGURA 2.9 - SUPORTE DA SALA (VISTA FRONTAL) ................................................... 26
FIGURA 2.10 - SUPORTE DO QUARTO (VISTA LATERAL) ........................................... 27
FIGURA 2.11 - SUPORTES ENCAIXADOS ......................................................................... 27
FIGURA 2.12 - IDE ARDUINO (VERSÃO 1.5.7) ................................................................. 28
FIGURA 2.13 - DESIGN MIT APP INVENTOR ................................................................... 29
FIGURA 2.14 - BLOCOS MIT APP INVENTOR .................................................................. 30
FIGURA 2.15 - EMULADOR MIT APP INVENTOR ........................................................... 30
FIGURA 2.16 - SCREEN 1 (TELA INICIAL)......................................................................... 31
FIGURA 2.17 - COMPONENTES ORGANIZADORES ....................................................... 31
FIGURA 2.18 - COMPONENTES DA TELA INICIAL......................................................... 32
FIGURA 2.19 - PROGRAMAÇÃO DA NOTIFICAÇÃO ...................................................... 32
FIGURA 2.20 - NOTIFICAÇÃO INICIAL ............................................................................. 33
FIGURA 2.21 - OPÇÃO SAIR ................................................................................................ 33
FIGURA 2.22 - PROGRAMAÇÃO DOS BOTÕES DA TELA INICIAL ............................. 33
FIGURA 2.23 - NOTIFICAÇÃO DO BOTÃO "ENTRAR ..................................................... 34
FIGURA 2.24 - ELABORAÇÃO DA TELA 2 ........................................................................ 34
FIGURA 2.25 - COMPONENTES INICIALMENTE INVISÍVEIS ....................................... 35
FIGURA 2.26 - ROTINA BLUETOOTH ................................................................................. 35
FIGURA 2.27 - SALA ............................................................................................................. 36
FIGURA 2.28 - QUARTO ....................................................................................................... 36
FIGURA 2.29 - CONFIGURAÇÕES DA SALA .................................................................... 36
FIGURA 2.30 - CONFIGURAÇÕES DO QUARTO .............................................................. 37
FIGURA 2.31 - BOTÃO VOLTAR ......................................................................................... 38
FIGURA 2.32 - BOTÃO SOBRE ............................................................................................ 38
FIGURA 2.33 - DESCONECTAR BLUETOOTH ................................................................... 38
FIGURA 2.34 - TELA SOBRE ................................................................................................ 39
FIGURA 2.35 - CONFIRMAÇÃO PARA FECHAR O APP .................................................. 39
FIGURA 2.36 - BOTÃO VOLTAR ......................................................................................... 39
FIGURA 2.37 - BOTÃO SAIR ................................................................................................ 40
FIGURA 2.38 - CONTROLE EM MALHA FECHADA ........................................................ 40
FIGURA 2.39 - LÓGICA DE PROGRAMAÇÃO .................................................................. 42
FIGURA 2.40 - ESQUEMA ELÉTRICO ................................................................................ 44
FIGURA 3.1 - PASSO PARA ESQUERDA ........................................................................... 46
FIGURA 3.2 - PASSO PARA DIREITA ................................................................................. 46
FIGURA 3.3 - SERIAL MONITOR ........................................................................................ 47
FIGURA 3.4 - VARIAÇÕES DO LED (DE 1 A 12) ............................................................... 47
FIGURA 3.5 - REVESTIMENTO ........................................................................................... 48
FIGURA 3.6 - OPÇÃO 1 ......................................................................................................... 48
FIGURA 3.7 - RESPOSTA DA OPÇÃO 1 .............................................................................. 49
FIGURA 3.8 - OPÇÃO 2 ......................................................................................................... 49
FIGURA 3.9 - RESPOSTA DA OPÇÃO 2 .............................................................................. 49
FIGURA 3.10 - DADOS DA MUDANÇA DE OPÇÃO ......................................................... 50
FIGURA 3.11 - ACIONANDO O LED ................................................................................... 51
FIGURA 3.12 - ATUANDO SOBRE O ERRO ....................................................................... 52
FIGURA 3.13 - VISTA SUPERIOR DA MAQUETE ............................................................ 53
FIGURA 3.14 - PARTE ELÉTRICA ....................................................................................... 53
LISTA DE TABELAS
TABELA 2.1 - CONCEITOS ................................................................................................... 21
TABELA 2.2 - LISTA DE MATERIAIS ................................................................................. 23
TABELA 2.3 - FERRAMENTAS DE DESIGN ...................................................................... 29
TABELA 2.4 - COMUNICAÇÃO ........................................................................................... 37
TABELA 2.5 - COMANDOS UTILIZADOS NA PROGRAMAÇÃO .................................. 41
TABELA 2.6 - LUMINOSIDADE NECESSÁRIA ................................................................. 43
TABELA 2.7 - ALTERAÇÕES NO ESQUEMA ELÉTRICO ................................................ 45
SUMÁRIO
1 INTRODUÇÃO ............................................................................................................. 15
1.1 Considerações iniciais .................................................................................................. 15
1.2 Objetivos ....................................................................................................................... 16
1.2.1 Objetivos Genéricos...................................................................................................... 16
1.2.2 Objetivos Específicos ................................................................................................... 17
1.3 Metodologia .................................................................................................................. 17
1.4 Justificativa do Trabalho............................................................................................... 18
1.5 Estrutura do Trabalho ................................................................................................... 19
2 ELEMENTOS DE DESENVOLVIMENTO DO PROJETO ................................... 20
2.1 Revisão da literatura ..................................................................................................... 20
2.2 Iluminação .................................................................................................................... 21
2.3 Componentes ................................................................................................................ 22
2.3.1 Arduino ......................................................................................................................... 24
2.3.2 LDR .............................................................................................................................. 24
2.3.3 Led ................................................................................................................................ 25
2.3.4 Motor de passo e ULN2003A ....................................................................................... 25
2.3.5 Módulo Bluetooth ......................................................................................................... 26
2.3.6 Fixação dos componentes ............................................................................................. 26
2.4 Softwares ...................................................................................................................... 28
2.4.1 Arduino - IDE ............................................................................................................... 28
2.4.2 MIT App Inventor 2...................................................................................................... 28
2.5 Aplicativo desenvolvido ............................................................................................... 31
2.6 Controlador proposto .................................................................................................... 40
2.7 Circuito elétrico ............................................................................................................ 44
3 RESULTADOS .............................................................................................................. 46
4 CONCLUSÕES ............................................................................................................. 54
REFERÊNCIAS BIBLIOGRÁFICAS ................................................................................. 55
APÊNDICE I ........................................................................................................................... 58
APÊNDICE II ......................................................................................................................... 59
1 INTRODUÇÃO
1.1 Considerações iniciais
A automação surgiu como o caminho para a redução da participação da “mão humana” sobre
os processos industriais (GOEKING, 2010) e, desde o século X, tem-se o registro da evolução
tecnológica como exemplificado na figura 1.1. Segundo Goeking (2010), tudo começou com
utilização, em larga escala, do moinho hidráulico para fornecimento de farinha. Esta foi uma
das primeiras criações humanas com o objetivo de automatizar o trabalho, ainda que de forma
arcaica. Todos esses acontecimentos deram origem a uma fase constante de evoluções na
busca de solucionar problemas e formas de trabalho arcaicas.
Mesmo com essa grande evolução, o conceito de automação foi instituído nos Estados Unidos
apenas em 1946, nas fábricas automotivas e, atualmente, o termo significa qualquer sistema
que utilize computação e que substitua o trabalho humano com o intuito de aumentar a
velocidade e a qualidade dos processos produtivos, a segurança dos funcionários, além de
obter maior controle, planejamento e flexibilidade da produção (GOEKING, 2010).
Como um dos ramos da automação tem-se a Automação Residencial ou Domótica, que é a
automação aplicada nas residências, seja um simples portão eletrônico ou até mesmo um
controle mais sofisticado envolvendo iluminação, persiana, alarmes, entre outros. De acordo
com Chamusca (2007), a domótica existe para simplificar a vida diária dos utilizadores,
satisfazendo três necessidades básicas: conforto, segurança e comunicações.
Figura 1.1 - Acontecimentos históricos
16
A Automação Residencial vem ganhando grande representatividade no mercado consumidor
contemporâneo. De acordo com a empresa de pesquisa IHS, tem-se uma previsão de
crescimento para o mercado de 44,6 milhões de dispositivos instalados em 2018, o que
implica um enorme mercado potencial (REVISTA...,2014). Tal pesquisa demonstra que a
busca em poupar tempo com tarefas repetitivas, economizar gastos, tais como energia e
dinheiro, e aumentar o conforto vem intensificando-se na sociedade. Além disso, vale
ressaltar que a automação insere-se no século XXI, despertando o desejo do mercado
consumidor de aproximar-se, cada vez mais, de novas invenções e sensações. Só nos EUA é
previsto, entre 2012 e 2017, um aumento da taxa composta de crescimento anual em 55%,
para atingir 31,4 milhões de sistemas domésticos inteligentes (KURKINEN, 2013).
Dessa forma, neste trabalho desenvolveu-se um sistema de gerenciamento de luz artificial,
que visa o conforto visual e a utilização máxima da luz natural. Através de um aplicativo de
smartphone, o usuário seleciona o ambiente de sua casa e o que será realizado nele (exemplo:
ambiente - sala, funcionalidades - ver filme/sala de jogos/estar). A partir disso, um sistema de
controle integrado atua no sistema de acionamento de persianas, abrindo-as ou fechando-as,
de modo a maximizar o uso de luz natural. Isso implica que a iluminação artificial só será
acionada caso a luz natural seja insuficiente para a realização da tarefa selecionada.
Além de aplicar os conceitos de Automação Residencial, estudou-se o efeito que a intensidade
luminosa tem sobre as atividades que o ser humano desenvolve, tendo em vista que a falta de
luminosidade para a prática das atividades diárias pode acarretar problemas visuais. Em
contrapartida, na maioria das vezes, não é necessário que a fonte de luz trabalhe com 100% da
sua capacidade, pois em determinadas horas do dia a luz natural supre a necessidade do fluxo
luminoso.
A automação aplicada neste trabalho é, portanto, um processo que, usando diferentes soluções
e equipamentos, possibilita ao usuário usufruir o máximo de qualidade na sua habitação
(MURATORI; DAL BÓ, 2013).
1.2 Objetivos
1.2.1 Objetivos Genéricos
Ao construir uma maquete, tem-se como principal finalidade a simulação de um ambiente
para estudo, a fim de tornar o trabalho didático e apresentável para o entendimento do
17
controle da persiana e da luminosidade. Tal modelagem possibilita a visualização, a
representação e a interpretação realista acerca do objeto em estudo. Além disso, o dispositivo
que comunica remotamente com o Arduino oferece uma solução simples e eficaz de
automação, que pode ser implantado em qualquer residência.
1.2.2 Objetivos Específicos
O desenvolvimento deste estudo compreende os seguintes objetivos específicos:
Realizar uma análise para identificar os pontos fortes e fracos da automação
residencial.
Explorar os conceitos de temperatura de cor, índice de rendimento cromático e
psicodinâmica da cor.
Desenvolver o controle em Arduino inteligente: passível de mudanças e inserção de
novas variáveis.
Desenvolver um aplicativo para Android que será a interface conversacional com o
usuário.
Fazer a utilização, o máximo possível, da luz natural.
1.3 Metodologia
Ao propor o Controle de Iluminação como tema desta monografia, pensou-se numa forma de
explorar todo o conhecimento disponível acerca de tal assunto, direcionando-se para um
estudo que resultasse num produto viável e útil às residências. Dessa forma, foi realizada uma
pesquisa a respeito da Automação Residencial e, a partir disso, optou-se em fazer um estudo
qualitativo que proporcionasse a simulação de um ambiente residencial.
Em seguida, foi construída uma maquete de acrílico equipada com atuadores que acionam o
fechamento ou abertura da persiana, através de um motor de passo, e atuam na luminosidade
(led). Vale ressaltar que como o foco principal é a utilização máxima da luz natural, torna-se
prioridade o controle das persianas, utilizando a luz artificial como complemento. Outra
observação importante é que a maquete é coberta por papel adesivo na cor branca para
proporcionar maior aproveitamento da luz.
18
Como destacado anteriormente, os controles da luminosidade e da persiana foram feitos
separadamente e, numa segunda etapa, analisou-se o conjunto. Além disso, em paralelo, foi
construída a revisão bibliográfica, a qual representa uma fonte de embasamento teórico e
prático para a realização do projeto.
Finalizada a programação do controlador, em Arduino, passou-se para o desenvolvimento do
aplicativo em sistema operacional Android, utilizando o programa MIT App Inventor. Esse
aplicativo é fundamental, já que proporciona ao usuário acessibilidade ao controle do produto.
1.4 Justificativa do Trabalho
Estudos mostram que as lâmpadas quando limitadas em 90% da sua capacidade, não causam
nenhuma alteração visual (fluxo luminoso); porém, permitem uma economia de 10% de
energia. Além disso, a dimerização propicia um aumento significativo na vida útil das
lâmpadas (MURATORI; DAL BÓ, 2013). Diante da realidade da falta de água e,
consequentemente, racionamento de energia, vê-se a necessidade de buscar recursos para que
as casas sejam mais sustentáveis e eficientes. Paralelamente a busca de contenção energética,
preocupou-se também com o conforto visual e com o fluxo luminoso necessário para as
atividades cotidianas.
As cores, por meio de nossos olhos e do cérebro, fazem penetrar no corpo físico uma
variedade de ondas com diferentes potências, que atuam sobre os centros nervosos e suas
ramificações e que modificam, não somente o curso das funções orgânicas, mas também
nossas atividades sensoriais, emocionais e afetivas (BASTOS; FARINA; PEREZ, 2006).
Dessa forma, controlando a intensidade luminosa, buscou-se uma melhor relação entre o que
se vê e o mínimo necessário para se ver, evitando, assim, o uso inadequado da visão. Sabe-se,
também, que utiliza-se a luz como recurso atrativo através de efeitos luminosos, seja no
ambiente de trabalho, para melhorar o rendimento, ou no comércio, para exibir seus produtos
de maneira atraente, ou seja, o controle de iluminação não é um tema aplicável apenas às
residências, mas ao ambiente industrial e comercial.
É importante frisar que, além de sustentabilidade e conforto visual, pensou-se também na
comodidade proporcionada ao proprietário da residência através do aplicativo. Atualmente a
busca pela automação cresce cada dia mais com o objetivo de facilitar a vida das pessoas e o
de lhes proporcionar maior bem-estar e conforto à medida do cliente (CHAMUSCA, 2007).
19
1.5 Estrutura do Trabalho
O presente texto é composto por quatro capítulos.
No capítulo 1, Introdução, expõe-se um breve histórico da evolução da automação como
assunto introdutório para o desenvolvimento do trabalho de conclusão de curso e, além disso,
deixa claro os requisitos a serem alcançados para a defesa do mesmo.
No Capítulo 2, Elementos de desenvolvimento do projeto, é definido todos os conceitos
teóricos utilizados como base para o estudo, os componentes utilizados no projeto e a
descrição da lógica de controle e do aplicativo.
No Capítulo 3, Resultados, apresenta-se os resultados obtidos ao final do estudo e no Capítulo
4, Conclusão, são feitas as considerações finais.
Nas referências apresenta-se, em ordem alfabética, todo o material bibliográfico consultado e
citado ao longo do texto.
2 ELEMENTOS DE DESENVOLVIMENTO DO PROJETO
2.1 Revisão da literatura
Desde a concepção do tema deste trabalho, teve-se a preocupação com a economia de energia,
com o fluxo luminoso necessário para as atividades e com a aplicação os conceitos da
automação vistos durante toda a graduação.
Há, na literatura, várias propostas com as mesmas preocupações citadas no parágrafo anterior
e com ênfases diferentes. Ribeiro (2006) fez um estudo sobre o papel da iluminação no
auxílio de uma melhor qualidade de vida para o idoso, analisando, através de um questionário,
quais as necessidades básicas de uma pessoa com idade avançada. Esse estudo mostra a
importância da automação na segurança dos seus usuários proporcionando-lhes uma vida
tranquila sempre.
Já Bicudo (2009) propôs um sistema de controle de iluminação com o uso de CLP que
fornece conforto, segurança e retorno financeiro para o proprietário. Como parte desse estudo,
foi mostrado, também, a relação entre a luz e as cores. Com isso, é possível mostrar que a
automação pode estar presente nos lares contemporâneos tendo baixo custo.
Em relação a comunicação, Santos (2010) desenvolveu um sistema de monitoramento e
controle com comunicação via celular, mostrando a importância da comunicação entre
dispositivos na área de aquisição de dados. Atualmente a aquisição de dados tem uma enorme
importância na engenharia, pois a relação entre os elementos dos variados sistemas dependem
da segurança de tráfego dos dados, bem como a clareza de exposição dos mesmos.
Por fim, Almeida (2010) sugeriu uma maneira eficaz de controle de iluminação de ambientes,
usando para isso uma interface que gera a integração do gestor com todos os pontos de
luminosidade do ambiente e Morais (2013) mostrou os benefícios da automação residencial
controlando a abertura de portas e portões, além da iluminação.
Mesmo com focos diferentes, todos os trabalhos descritos têm como essência conceitos muito
importantes da automação e, principalmente, da domótica. Não se pode esquecer que, por trás
de todo sistema, existe um usuário que quer usufruir do seu bem com facilidade e conforto.
Esse é um dos intuitos e missão da domótica. Dessa forma, o estudo científico descrito nesta
dissertação, assemelha-se com temas já propostos, porém apresenta-se com um foco
diferencial: é um sistema aplicável em qualquer residência, fácil de usar e entender.
21
2.2 Iluminação
Quando se trabalha com iluminação, há por trás desse tema muitos conceitos e grandezas que
estão explicitados na tabela 2.1 para melhor entendimento do assunto, além de serem
imprescindíveis para a compreensão do tema proposto.
Tabela 2.1 - Conceitos
Variável Definição
Luz É uma onda eletromagnética situada na faixa de 380 a 780 nanômetros
(nm) e que, percebida pelo cérebro, tem a capacidade de refletir em
determinadas superfícies, sendo então visível ao olho humano.
Temperatura
de cor
É a grandeza que define a cor da luz emitida pela lâmpada. Quanto mais
alta for a temperatura em Kelvin, mais branca será a luz e quanto mais
baixa, mais amarela e avermelhada será.
IRC Índice de reprodução de cor: mede o quanto a luz artificial consegue imitar
a luz natural.
Fluxo
luminoso (ø)
É a quantidade total de luz emitida por uma fonte. Unidade: Lúmen (lm).
Intensidade
luminosa (I)
É a intensidade do fluxo luminoso (lm) projetada em uma direção.
Unidade: Candela (cd).
Iluminância
(E)
É o fluxo luminoso que incide sobre uma superfície situada a uma certa
distância da fonte. Unidade: Lux (lx).
E =
Luminância
(L)
É a intensidade luminosa produzida ou refletida por uma superfície
aparente.
L =
Cor fria Temperatura de cor mais alta, luz mais branca.
Cor morna Temperatura de cor mais baixa, luz mais amarelada.
Fonte: SILVA, 2004.
22
2.3 Componentes
Para a confecção da maquete, utilizou-se chapas de acrílico, com 3mm de espessura, cortadas
em uma máquina a laser CNC. Foram feitas fissuras nas bordas dessas placas para encaixe das
paredes e essas fissuras foram fixadas através de parafusos (Figura 2.1). As paredes da
maquete foram revestidas com papel adesivo branco (Figura 2.2) e, a porta principal e o
telhado com adesivos customizados (Figura 2.3). A base da maquete é madeira MDF.
Figura 2.1 - Placas de acrílico montadas
Figura 2.2 - Paredes revestidas
23
A maquete é equipada com atuadores que, após comandos de controle, atuam na persiana e na
lâmpada. A lista completa de todos os componentes utilizados, bem como sua finalidade,
pode ser vista na tabela 2.2.
Tabela 2.2 - Lista de materiais
Material Utilização
Arduino UNO Controlador.
LDR Medir a iluminação do cômodo.
Led Fonte de luz.
Resistência Limitar corrente e tensão no led.
Motor de Passo Abrir ou fechar a persiana.
CI ULN2003A Driver do motor.
Módulo Bluetooth Comunicação entre o aplicativo e o Arduino.
Fios elétricos Conexão elétrica entre os componentes da maquete e o Arduino.
Figura 2.3 - Maquete finalizada
24
2.3.1 Arduino
Segundo McRoberts (2011), Arduino é um pequeno computador que você pode programar
para processar entradas e saídas entre o dispositivo e os componentes externos conectados a
ele. É um hardware livre projetado com microcontrolador Atmel, composto por dispositivos
de entrada e saída, programado em linguagem C/C++.
O Arduino utilizado neste projeto foi o UNO (Figura 2.4), que tem 14 pinos de I/O digital
(dos quais 6 podem ser PWM) e 6 pinos de entrada analógica, e nele foi programada toda a
lógica de controle que envia comandos para o led e o motor de passo de acordo com o nível
de luz do cômodo, medido pelo LDR.
2.3.2 LDR
O LDR (Figura 2.5) é um dispositivo que tem uma resistência que varia de acordo com a
quantidade de luz que incide sobre sua superfície. A resistência do LDR varia de forma
inversamente proporcional à quantidade de luz incidente sobre ele, isto é, enquanto o fluxo
luminoso é alto, o LDR oferece uma resistência muito baixa, caso contrário, sua resistência
aumenta.
Figura 2.5 - LDR
Fonte: MARINHO, 2014
Figura 2.4 - Arduino UNO
Fonte: AUGUSTO, 2014
25
2.3.3 Led
O led (Figura 2.6) e a resistência fazem parte do circuito
de iluminação. A resistência limita a corrente que passa
no led e, dessa forma, protege o componente contra
tensões não suportadas pelo mesmo. Já o led, que é um
diodo emissor de luz, é um condutor de energia elétrica,
que quando energizado, emite luz visível a olho nu.
2.3.4 Motor de passo e ULN2003A
O Motor de passo e o CI ULN2003A (Figura 2.7) são responsáveis por acionar a persiana.
Segundo Brites e Santos (2008), motor de passo é um dispositivo eletromecânico que
converte pulsos elétricos em movimentos mecânicos que geram variações angulares discretas.
O rotor ou eixo de um motor de passo é rotacionado em pequenos incrementos angulares,
denominados “passos”, quando pulsos elétricos são aplicados em uma determinada sequência
em seus terminais. Já o ULN2003A é um CI do tipo Driver, ou seja, através de pequenas
correntes, ele controla correntes maiores em suas saídas.
Figura 2.6 - LED
Fonte: CABANAS, 2014
Figura 2.7 - Ligação entre ULN2003A e motor de passo
Fonte: Adaptado de JÚNIOR, 2012
26
2.3.5 Módulo Bluetooth
O módulo bluetooth utilizado foi o Módulo Trasceiver Bluetooth RS232/TTL. Ele faz a
comunicação entre o usuário (aplicativo) e o sistema de controle (Arduino). Como o usuário
utilizará o seu sistema dentro da própria casa, a distância máxima permitida para
comunicações via bluetooth é suficiente.
2.3.6 Fixação dos componentes
Como o acrílico é um material frágil para fixação dos componentes, pensou-se em um sistema
de encaixe para não comprometer a estrutura. Dessa forma, confeccionou-se um suporte de
PVC (Figuras 2.9 e 2.10) que é embutido na parede do cômodo que tem a janela (Figura
2.11).
Figura 2.8 - Módulo Bluetooth
Figura 2.9 - Suporte da sala (vista frontal)
27
Os componentes responsáveis pela movimentação da persiana, juntamente com guias de
plástico, fio de nylon e parafusos, foram pregados nesse suporte de forma que o acrílico não
fosse danificado e para facilitar alguma modificação, caso necessário.
Todo esse aparato foi desenvolvido no Departamento de Análises e Inovações (DEPAI) da
Fundação Gorceix.
Figura 2.10 - Suporte do quarto (vista lateral)
Figura 2.11 - Suportes encaixados
28
2.4 Softwares
2.4.1 Arduino - IDE
Para programar o Arduino, utiliza-se o IDE do Arduino (Figura 2.12), um software livre no
qual se escreve o código na linguagem que o Arduino compreende (baseada na linguagem C).
O IDE permite que se escreva um programa de computador, que é um conjunto de instruções
passo a passo, das quais se faz o upload para o Arduino. O Arduino, então, executa essas
instruções, interagindo com o que estiver conectado a ele. No mundo do Arduino, programas
são conhecidos como sketches (rascunho, ou esboço) (MCROBERTS, 2011).
2.4.2 MIT App Inventor 2
MIT App Inventor é uma ferramenta de programação baseada em blocos que permite que
todos, mesmo os novatos, iniciem a programação e criem aplicativos totalmente funcionais
para dispositivos Android (MIT, 2014). Android é o sistema operacional para celulares
desenvolvido pelo Google, cuja grande aposta é o código aberto, que proporciona liberdade de
customização para os fabricantes de aparelhos e também de criação de aplicativos para os
desenvolvedores (UOL, 2014).
O software é online e para acessá-lo é necessário ter uma conta no gmail. Ele é composto por
duas seções: design e blocos. Na seção design (Figura 2.13) tem-se alguns conjuntos de
Figura 2.12 - IDE Arduino (Versão 1.5.7)
29
ferramentas que serão descritos na tabela 2.3 e são fundamentais para a configuração da tela
do aplicativo.
Tabela 2.3 - Ferramentas de design
Ferramenta Funcionalidade
Paleta
Onde ficam todos os componentes utilizáveis num aplicativo. Esta
paleta é dividida em seções para facilitar a localização dos
componentes, que vão dos básicos (botões, imagens e textos) até uma
seção exclusiva para integração com ferramentas de Lego Mindstorms.
Visualizador
O usuário pode organizar cada um de seus objetos, montando o
aplicativo como ele deve ser. Uma janela de exibição simula a tela de
um smartphone com o sistema operacional Android, apresentando uma
versão próxima da final ao programador, à medida que ele organiza o
espaço de uso do programa.
Componentes
Na coluna de componentes, ficam armazenados todos os itens
adicionados, sejam eles visíveis ou não na tela do programa. É possível
renomear os componentes, impostar arquivos de mídia, etc.
Propriedades
É possível definir os tamanhos e conteúdos dos textos de botões e caixas
de informação, tamanho das imagens, cores de fundo e largura e altura
de objetos. Essas e muitas outras configurações são aplicadas
instantaneamente na tela da coluna “Viewer”, permitindo que você
tenha sempre uma ótima ideia de onde e o que está mudando em seu
programa.
Fonte: GUISS, 2011
Figura 2.13 - Design MIT App Inventor
30
Após montar a tela, é possível programar o aplicativo através da tela blocos (Figura 2.14),
atribuindo funções a cada um dos elementos do seu aplicativo.
O que foi feito no software pode ser visualizado, em tempo real, no emulador do programa
(Figura 2.15). Essa capacidade faz com que a programação de qualquer item possa ser
avaliada assim que efetuada, tornando mais simples voltar atrás em algum passo (GUISS,
2011).
Figura 2.14 - Blocos MIT App Inventor
Figura 2.15 - Emulador Mit App Inventor
31
2.5 Aplicativo desenvolvido
O aplicativo é o elemento do sistema que possibilita a comunicação do usuário com o
controlador de forma prática. Durante a pesquisa científica optou-se por usar esse recurso, já
que atenderia as necessidades do projeto com melhor custo-benefício.
Para o desenvolvimento do mesmo, o passo inicial é a disponibilização de uma conta de email
no gmail. Dessa forma é possível fazer login no software MIT App Inventor 2 através do link
http://ai2.appinventor.mit.edu/ e iniciar a confecção do programa. O aplicativo desenvolvido
tem 3 telas (screens): tela inicial, tela de trabalho e tela sobre.
A Screen1 (Figura 2.16), tela inicial, contem as informações gerais do projeto, que são: curso,
finalidade do trabalho e os dados do desenvolvedor. Além disso, foi inserido o símbolo da
Escola de Minas e botões para entrada e saída do sistema. Sendo assim, utilizou-se os
componentes: label, button e image.
Para organizar os itens na tela, foi necessário utilizar os itens mostrados na figura 2.17, pois
com eles é possível arranjar os compenentes um do lado do outro, além de ser possível
espaçá-los de forma que fique organizado e visível.
Figura 2.16 - Screen 1 (Tela Inicial)
Figura 2.17 - Componentes organizadores
32
Com o layout definido, passou-se para fase de definição das ações a serem tomadas naquela
tela. Como será utilizado a comunicação via bluetooth, inicialmente o programa verificará se
o bluetooth do celular está ligado ou não, caso ele não esteja ligado, o usuário será notificado.
Para isso, foi necessário utilizar o componente BluetoothClient e o Notifier (Figura 2.18).
Dessa forma, passou-se para a programação. Na seção “Blocks” a notificação inicial foi
implementada da seguinte forma: quando a aplicação for executada, ou seja, a Screen1
inicializada e o bluetooth do celular estiver desativado, será exibida a mensagem: “Bluetooth
deve estar ativado para executar o app!”, além de dois botões: “Ok” e “Sair”. Essa mensagem
não aparecerá caso o bluetooth do celular já esteja ativado, como mostra a figura 2.19.
Figura 2.18 - Componentes da tela inicial
Figura 2.19 - Programação da notificação
33
Na tela do celular a mensagem aparecerá de acordo com a figura 2.20.
Se a opção escolhida for “Sair”, a aplicação será encerrada (figura 2.21).
Em relação os botões da tela inicial, a lógica é a mostrada na figura 2.22: clicando no botão
“Entrar” será possível acessar a tela de trabalho (Tela2), visto que a condição imposta
(Bluetooth habilitado) foi considerada (Figura 2.23). Clicando no botão “Sair” a aplicação
será fechada.
Figura 2.20 - Notificação inicial
Figura 2.21 - Opção sair
Figura 2.22 - Programação dos botões da tela inicial
34
Quando se trabalha com comunicação via bluetooth e o MIT App Inventor, o bluetooth não
trabalha em mais de uma tela, ou seja, as configurações feitas na tela 2, por exemplo, não
poderão ser utilizada na tela 3. Dessa forma, foram utilizados alguns artifícios para que o
aplicativo continuasse sendo simples e intuitivo.
A Figura 2.24 mostra o design da tela 2, que foi elaborada com base nos componentes
organizadores (Figura 2.17). Inicialmente aparecem na tela apenas os botões “Conectar” e
“Desconectar” (Figura 2.25), pois os outros componentes estão inseridos em organizadores
que estão invisíveis (Figura 2.26) quando a tela é inicializada.
Figura 2.23 - Notificação do botão "Entrar
Figura 2.24 - Elaboração da tela 2
35
Ao clicar em “Conectar”, o componente “ListPicket1” é acionado. Esse componente encontra-
se na ferramenta “Paleta”. Porém, após ser inserido na tela, sua propriedade Visible é alterada
para hidden, ou seja, ele ficará escondido (oculto). Esse componente abrirá uma lista de todos
os componentes pareados com o celular. Com isso, serão exibidos o endereço e o nome de
todos os componentes da lista e o bluetooth conectará com o componente que o usuário
selecionará, que no caso será o módulo que está conectado com o Arduino. Vale ressaltar que
com essa ação, os botões para a seleção do ambiente que será controlado também ficarão
visíveis como exposto na figura 2.26.
Escolhendo o ambiente da casa, sala (Figura 2.27) ou quarto (Figura 2.28), ficarão disponíveis
apenas os componentes referentes a opção selecionada, e essa será destacada com uma cor
diferente. Após decidir a funcionalidade do cômodo, através do componente Spinner (Figuras
2.29 e 2.30), o aplicativo envia para o controlador a opção escolhida pelo meio de código
como explicitado na Tabela 2.4.
Figura 2.25 - Componentes inicialmente invisíveis
Figura 2.26 - Rotina bluetooth
36
Figura 2.28 - Quarto
Figura 2.29 - Configurações da sala
Figura 2.27 - Sala
37
Tabela 2.4 - Comunicação
Cômodo Funcionalidade Código da comunicação
Sala
Sala de estar d
Assistir TV t
Ver filme f
Jogos j
Quarto
Estudo e
Assistir TV v
Relaxar r
Dormir o
Na tela de trabalho é possível, também, voltar para a Screen1 (Figura 2.31) ou ir para a tela de
informações (Figura 2.32), porém, antes de mudar de tela, o bluetooth deve ser desconectado
(Figura 2.33) para que não haja erros na comunicação.
Figura 2.30 - Configurações do quarto
38
Figura 2.32 - Botão sobre
Figura 2.31 - Botão voltar
Figura 2.33 - Desconectar bluetooth
39
Na Tela3 (Figura 2.34), tela sobre, há informações mais detalhadas da monografia, além do
botão Voltar, que abre a tela anterior (Tela2), e Sair, que antes de fechar vai solicitar uma
confirmação do usuário (Figura 2.35). A programação desses dois botões é bem simples e está
demonstrado nas figuras 2.36 e 2.37.
Figura 2.34 - Tela sobre
Figura 2.36 - Botão voltar
Figura 2.35 - Confirmação para fechar o app
40
2.6 Controlador proposto
Segundo Hey (1997), dentre as atividades desenvolvidas pelo ser humano, praticamente todas
são afetadas por sistemas de controle. A busca da qualidade, eficiência e precisão,
praticamente exige a presença de sistemas de controle em malha fechada sem a presença do
operador humano, isto é, controle automático.
O controle proposto neste trabalho é dito automático, visto que o usuário atua no sistema
apenas no comando inicial. Além disso, o sistema é em malha fechada (Figura 2.38), pois é
um sistema que tende a manter uma relação preestabelecida entre o sinal de saída e a entrada
de referência, comparando-as e utilizando a diferença entre estes sinais como um meio de
controle do sinal de saída (HEY, 1997), e com ação proporcional, ou seja, o controlador é um
simples ganho proporcional.
A programação do controlador foi feita utilizando a IDE do Arduino (Figura 2.12),
trabalhando primeiro com o controle da persiana e posteriormente com o da iluminação. Para
qualquer programa feito na IDE, há no sketch duas funções pré-definidas: a void setup() e a
void loop(). A função setup é executada quando o programa é iniciado, ou seja, apenas uma
vez. Nela serão definidas as configurações iniciais do programa tais como inicialização das
variáveis e inclusão de bibliotecas. Já a função loop, executa seus comandos em repetições
Figura 2.37 - Botão sair
Figura 2.38 - Controle em malha fechada
Fonte: HEY, 1997
41
constantes durante o tempo que a aplicação estiver rodando. Além dessas funções padrão,
foram utilizados os comandos que estão explicitados na tabela 2.5.
Tabela 2.5 - Comandos utilizados na programação
Comandos Descrição
#include <Stepper.h> Inclui a biblioteca para o motor de passo.
#include <EEPROM.h> Inclui a biblioteca da memória não-volátil.
pinMode() Define o estado de um pino (entrada/input ou saída/output).
digitalWrite() Configura um pino digital (ligado/high ou desligado/low).
analogRead() Lê o valor do pino analógico.
Serial.begin(9600) Declara o uso da porta serial.
Serial.flush() Esvazia o buffer.
Serial.read() Lê o que chega na serial.
Serial.print() Escreve no serial monitor.
Serial.println() Escreve no serial monitor e muda de linha.
Serial.available() Retorna a quantidades de bytes disponíveis para leitura no
buffer de leitura.
delay(tempo) Espera por um “tempo” em milissegundos.
setSpeed(velocidade) Ajusta a “velocidade” do motor.
step() Passo do motor.
map(p1, p2, p3, p4, p5) Faz a interpolação da variável P1, que varia de P2 a P3
para a variação P4 a P5.
sin() Calcula o seno do ângulo (em radianos).
EEPROM.read(adr) Lê o que foi gravado no endereço “adr”.
EEPROM.write(adr, valor) Armazena “valor” no endereço “adr”.
A lógica de programação mostrada na figura 2.39 deixa explicito que foram implementadas
duas funções: analise() e controle_led(). A função analise() recebe como parâmetro o valor de
luminosidade referente ao cômodo e atividade selecionada, o valor lido no ldr e o led que
poderá ou não ser acionado. Já a função controle_led() recebe os mesmos parâmetros que
analise(), porém é nessa função que é feito o controle PWM das lâmpadas. Optou-se por
efetuar as ações fora do loop principal de forma a não sobrecarrega-lo.
42
INÍCIO
Definição das
variáveis
Lê os dados da
memória
Inclusão das
bibliotecasFunção setup()
Inicialização da serial;
Definição dos pinos de saída;
Definição dos pinos de entrada;
Ajusta velocidade dos motores.
Função loop()
FIM
Verifica os comandos enviados
pelo bluetooth e executa a ação de
acordo com cada valor enviado.Função
analise() e
controle_led()
Analisa se é necessário abrir
ou fechar a persiana e se é
preciso acionar o led.
Grava na EEPROM os
passos do motor
Figura 2.39 - Lógica de programação
O pseudocódigo abaixo detalha a programação final. Vale ressaltar que todas as funções
criadas são chamadas apenas uma vez durante uma execução loop.
Loop()
Recebe comando do aplicativo;
Lê e faz a conversão dos valores dos ldr’s;
Para cada comando recebido, a função análise será solicitada
---
Analise ()
Se cortina aberta
Se tem pouca luz
Chama função controle_led()
Se tem muita luz
Dá um passo para fechar a cortina
passo--
Se a cortina está fechada
Se tem pouca luz
Dá um passo para abrir a cortina
passo--
Se tem muita luz
Desliga as lâmpadas
Se a cortina não está nem aberta e nem fechada
43
Se tem pouca luz
Abre a cortina
passo++
Se tem muita luz
Fecha a cortina
passo—
---
Controle_led()
Aciona o led com a luminosidade complementar ou diminui sua luminosidade
Para determinar a luminosidade necessária para cada funcionalidade foi utilizada como base a
norma NBR5413. Essa trata da iluminação de interiores sendo que, para cada ambiente, é
especificado uma faixa de luminosidade porém, para a simulação na maquete utilizou-se
valores fixos aleatórios (de 0 a 255), respeitando a ordem de luminosidade presente na norma,
como exposto na tabela 2.6.
Tabela 2.6 - Luminosidade necessária
Cômodo Funcionalidade Testes Luminosidade (lux) Referência
Sala
Sala de estar 200 200 Sala de estar (geral).
Assistir TV 150 150 Sala de estar (geral).
Ver filme 70 1 Cinema e teatro.
Jogos 230 500 Salão para esportes (mesas).
Quarto
Estudo 230 750 Leitura, escrita, bordado, etc.
Assistir TV 150 150 Hotel – quarto (geral).
Relaxar 50 100 Hotel – quarto (geral).
Dormir 0 0 -
Fonte: ASSOCIAÇÃO..., 1992
Utilizou-se valores de 0 a 255, pois essa é a faixa de trabalho do led e, dessa forma, foi feita a
interpolação dos valores lidos pelos LDR’s (de 0 a 1023) para essa faixa, de modo que todos
os dispositivos trabalhassem com o mesmo range.
44
2.7 Circuito elétrico
Entender como cada componente funciona e fazer o mapeamento do circuito elétrico é
imprescindível para a elaboração de qualquer trabalho prático. Em muitos casos é possível
simular o circuito elétrico em softwares específicos, mas nem sempre o que funciona na
simulação, funciona na prática.
Para a elaboração do esquema elétrico (Figura 2.40) deste trabalho foi utilizado o software
Fritzing. Ele possui uma vasta biblioteca de componentes e é muito intuitivo. Alguns
componentes foram adaptados no esquema e a tabela 2.7 descreve quais informações do
esquema estão diferentes da prática.
Figura 2.40 - Esquema Elétrico
45
Tabela 2.7 - Alterações no esquema elétrico
Componentes Características Alterações
Motor de passo Tensão máxima de 24V.
Alimentado com 5V.
É de 5 fios cuja sequência
é 1-4-2-5 e o terceiro fio é
ligado no Vcc.
ULN2003A
Tensão máxima: 30V.
Corrente de entrada máxima: 25mA.
Corrente de saída máxima: 500mA.
Alimentado com 5V.
Módulo Bluetooth
HC-06
RX do bluetooth ligado no TX do Arduino.
TX do bluetooth ligado no RX do Arduino.
Há apenas 4 conexões
(Vcc, GND, TX e RX).
Optou-se por alimentar o motor com 5V, pois para o trabalho que está sendo realizado não é
necessário que ele trabalhe com seu torque máximo, mas, vale ressaltar que sua performance é
melhor quando este é alimentado com 12V.
Vale ressaltar que se o projeto for expandido e o controle abranger mais cômodos, será
necessário utilizar uma versão de Arduino com um número maior de entradas digitais e
analógicas.
3 RESULTADOS
Durante todo o trabalho optou-se em trabalhar por etapas. Cada estágio era implementado
após o teste anterior ter sido bem sucedido. Sendo assim, tudo começou com o teste das
persianas, pois era necessário analisar o torque do motor com tensão de 5V e como seria todo
o aparato instalado na maquete. Utilizando, simplesmente, as funções para dar passo no motor
e acender um led, o primeiro teste acendia o led quando a persiana estava fechando (Figura
3.1) e apagava quando ela estava abrindo (Figura 3.2). Além disso, era impresso no Serial
monitor quantos passos o motor deu (Figura 3.3).
Figura 3.1 - Passo para esquerda
Figura 3.2 - Passo para direita
47
O segundo passo foi estudar como variar a luminosidade e não apenas ligar e desligar o led.
Sabendo-se que o led, por estar ligado a uma saída digital, varia de 0 a 255, fez-se o controle
PWM nessa faixa. Fazer um controle PWM é modular a saída de acordo com a largura do
pulso que se dá na entrada. Utilizando as saídas digitais específicas do Arduino Uno para
PWM (3, 5, 6, 10, 11) foi possível fazer o controle. A figura 3.4 mostra algumas graduações
da variação.
Para direita
Para esquerda
Figura 3.3 - Serial monitor
1 2 3 4
5 6 7 8
9 10 11 12
Figura 3.4 - Variações do led (de 1 a 12)
48
Por fim, passou-se para a fase de juntar tudo o que já foi testado e implementar a lógica de
programação descrita na figura 2.39 e o pseudocódigo já apresentado. Durante os testes, foi
possível verificar que o fato do acrílico estar revestido com papel adesivo não era suficiente
para barrar a refração da luminosidade externa. Diante disso, revestiram-se as paredes da casa
com papel cartão branco (Figura 3.5) para bloquear os raios incidentes.
Finalizando os testes, foi possível validar a proposta, visto que todos os ensaios feitos tiveram
êxito.
Uma das avaliações feitas foi na mudança de opção de funcionalidade. O usuário “logou” no
sistema e selecionou o cômodo “Quarto”. Primeiramente sua funcionalidade escolhida foi
“Dormir” (Figura 3.6). Sendo assim o sistema apenas fechou a cortina, pois a lâmpada já
estava apagada (Figura 3.7).
Figura 3.5 - Revestimento
Figura 3.6 - Opção 1
49
Em um segundo momento o usuário, no mesmo cômodo, selecionou a funcionalidade
“Assistir TV” (Figura 3.8) e, de acordo com a luminosidade passada como referência, foi
necessário abrir a persiana e acionar a lâmpada do ambiente (Figura 3.9).
Figura 3.7 - Resposta da opção 1
Figura 3.8 - Opção 2
Figura 3.9 - Resposta da opção 2
50
Além das mudanças visuais que podem ser acompanhadas durante a simulação da maquete,
foi exposto pelo Serial monitor os dados das mudanças que aconteciam no sistema. A figura
3.10 mostra que a primeira opção escolhida foi “Dormir” e a segunda opção foi “Assistir TV”.
Como a cortina estava fechada (passo = 20), para cada loop a cortina ia abrindo e o valor do
ldr (Potenciômetro) era verificado.
Figura 3.10 - Dados da mudança de opção
51
Assim que a persiana foi totalmente aberta (passo = 0), o led foi acionado com a luminosidade
complementar (Figura 3.11) sendo que, a todo momento, o valor do sensor era lido e o
sistema atuava sobre o erro (Erro = Referência – Potenciômetro) para deixar o ambiente com
a luminosidade adequada sempre (Figura 3.12).
Figura 3.11 - Acionando o led
52
Além dos resultados práticos, tem-se como resultado uma maquete didática (Figura 3.13)
equipada com seus atuadores na parte externa do modelo (Figura 3.14) de forma a facilitar
possíveis mudanças.
Figura 3.12 - Atuando sobre o erro
53
Figura 3.14 - Parte elétrica
Figura 3.13 - Vista superior da maquete
4 CONCLUSÕES
A elaboração de um trabalho final de curso é um dos passos mais importantes da graduação,
visto que demanda persistência e organização, além de ser a oportunidade dada ao estudante
de colocar em prática os conhecimentos aprendidos na graduação e aprofundar em algum
assunto ou disciplina de seu maior interesse.
O trabalho proposto nesta monografia superou todos os objetivos propostos, além de ter sido
muito prazeroso fazê-lo. É um projeto simples e de grande utilidade.
O assunto abordado tem grande importância, visto que fatores como inflação desordenada,
crises no comércio e economia oscilante atingem os países a todo momento e ter uma casa
autossustentável e econômica é promissor. Vale ressaltar que esse projeto contribui com
apenas uma parte dessa opção promissora, mas em grande escala a economia gerada por esse
sistema pode ser notável.
REFERÊNCIAS BIBLIOGRÁFICAS
ALMEIDA, Gustavo Caetano de. Sistema controlador de iluminação de ambientes através
de interface computadorizada. 2010. 123p. Monografia (Trabalho Final de Curso em
Engenharia de Computação) – Faculdade de Tecnologia e Ciências Sociais Aplicadas, Centro
Universitário de Brasília, Brasília, Distrito Federal, 2010.
ASSOCIAÇÃO BRASILEIRA DE NORMAS TÉCNICAS. NBR 05413: Iluminação de
interiores. Rio de Janeiro, 1992.
AUGUSTO, Alexandre. Componentes Eletrônicos. Arduino UNO R3 - Versão R3 do Uno.
Disponível em: < http://www.alexandreaugusto.com.br/arduino/uno-r3-anti-estatica.html>.
Acesso em: 27 ago. 2014.
BASTOS, Dorinho; FARINA, Modesto; PEREZ, Clotilde. Psicodinâmica das cores em
comunicação. 5ª ed. Ver. e ampl. São Paulo: Editora Edgard Blücher Ltda, 2006.
BICUDO, Glauber Rocha. Proposta para controle de iluminação utilizando controlador
lógico programável. 2009. 40p. Monografia (Trabalho Final de Curso em Engenharia de
Controle e Automação) – Escola de Minas, Universidade Federal de Ouro Preto, Ouro Preto,
Minas Gerais, 2009.
BRITES, Felipe Gonçalves; SANTOS, Vinicius Puga de Almeida. Motor de Passo. Grupo
PET-Tele. Universidade Federal Fluminense. Niterói, Rio de Janeiro, 2008.
CABANAS, Emily. LED – Diodo Emissor de Luz. Disponível em: <
http://slideplayer.com.br/slide/281674/>. Acesso em 22 nov. 2014.
CHAMUSCA, Alexandre. Domótica & Segurança Electrónica – A Inteligência que se
instala. 1ª ed. Editora Ingenium, 2007.
GOEKING, Weruska. Da máquina a vapor aos softwares de automação. O Setor Elétrico.
Edição 52, Maio de 2010. Disponível em: < http://www.osetoreletrico.com.br/web/
component/content/article/57-artigos-e-materias/343-xxxx.html >. Acesso em: 4 nov. 2014.
GUISS, Alexandre. Google App Inventor: o criador de apps para Android para quem
não sabe programar. 2011. Disponível em: <http://www.tecmundo.com.br/google/11458-
google-app-inventor-o-criador-de-apps-para-android-para-quem-nao-sabe-programar.htm>.
Acesso em 22 nov. 2014.
56
HEY, Hélio Leães. Caderno Didático de Sistemas de Controle 1. Projeto Reenge – Eng.
Elétrica. Departamento de Eletrônica e Computação. Centro de Tecnologia. Universidade
Federal de Santa Maria. 1997.
JÚNIOR, José Neres de Almeida. Estrutura do equipamento - funcionamento do motor de
passo (II). Espectrofotômetro na Web. 2012. Disponível em: < http://era-
weblab.blogspot.com.br/2012/03/estrutura-do-equipamento-funcionamento.html>. Acesso em
22 nov. 2014.
KURKINEN, Lars. 36 million homes in Europe and North America will be smart by 2017.
Smart Homes and Home Automation – 2nd Edition. Berg Insight’s M2M Research Series.
Nov. 2013.
MARINHO, Rui. Arduino + LDR. Eletronic Piece. Disponível em: <
http://electronicpiece.blogspot.com.br/2012/01/boas-hoje-venho-aqui-publicar-mais-um.html
>. Acesso em: 22 nov. 2014.
MCROBERTS, Mchael. Arduino básico. Tradução Rafael Zanolli. São Paulo: Novatec
Editora, 2011.
MIT APP INVENTOR. About us. Disponível em: <http://appinventor.mit.edu/explore/about-
us.html>. Acesso em: 22 nov. 2014.
MORAIS, Eduardo Luís. Domótica: automação e controle de uma maquete residencial
utilizando controlador lógico programável e sistema supervisório. 2013. 57p. Monografia
(Trabalho Final de Curso em Engenharia de Controle e Automação) – Escola de Minas,
Universidade Federal de Ouro Preto, Ouro Preto, Minas Gerais, 2013.
MURATORI, José Roberto; DAL BÓ, Paulo Henrique. Automação Residencial – Conceitos
e Aplicações. 1ª ed. Belo Horizonte: Editora Educere Ltda, 2013.
REVISTA FORTUNE, 2014 apud AURESIDE – Associação Brasileira de Automação
Residencial. Empresas de Automação Residencial correm atrás de um "hub". Disponível
em: < http://www.aureside.org.br/noticias_recentes/default.asp?file=01.asp&id=368>. Acesso
em: 09 nov. 2014.
RIBEIRO, Carla Spencieri de Oliveira. Iluminação e design de interiores em residências de
pessoas da terceira idade. 2006. 75p. Monografia (Trabalho Final de Curso em Iluminação e
Design de Interiores) – Universidade Castelo Branco, Goiânia, Goiás, 2006.
57
SANTOS, Ricardo Antônio Silva dos. Domótica via dispositivos móveis. 2010. 110p.
Monografia (Trabalho Final de Curso em Engenharia de Controle e Automação) – Escola de
Minas, Universidade Federal de Ouro Preto, Ouro Preto, Minas Gerais, 2010.
SILVA, Mauri Luiz da. Luz, lâmpadas e iluminação. Rio de Janeiro: Editora Ciência
moderna Ltda, 2004.
UOL. Sistema operacional do Google conquista espaço no mercado de smartphones.
Disponível em: <http://android.uol.com.br/o-que-e-google-android.jhtm>. Acesso em: 23 nov.
2014.
58
APÊNDICE I
Código para inicializar a memória
//Esse programa será descarregado antes do arquivo monografia
#include <EEPROM.h> //inclusão da biblioteca
// o endereço atual na EEPROM (isto é, é a posição do byte que gravaremos dentro da
//EEPROM)
int addr1 = 0;
int addr2 = 1;
void setup(){
}
void loop(){
int motor1=0; //motor do quarto
int motor2=0; //motor da sala
// grave o valor do byte apropriado da EEPROM. Estes valores lá permanecem mesmo que a
//placa seja desligada.
EEPROM.write(addr1, motor1); // EEPROM.write(0, 0);
EEPROM.write(addr2, motor2); // EEPROM.write(1, 0);
delay(100); //delay de 0,1 segundos
}
59
APÊNDICE II
Código de trabalho
#include <Stepper.h> //biblioteca do motor de passo
#include <EEPROM.h> //biblioteca da memória não-volátil
int ledSala1 = 9; //led próximo da porta da sala - Pino 13
int ledSala2 = 6; //led mais afastado da porta da sala - Pino 12
int ledQuarto = 5; //led do quarto - Pino 11
int ldrQuarto = 3; //LDR ligado ao pino A3, referente ao ledQuarto
int ldrSala1 = 4; //LDR ligado ao pino A4, referente ao ledSala1
int ldrSala2 = 5; //LDR ligado ao pino A5, referente ao ledSala2
int passoS = EEPROM.read(1); //passos do motor da sala
int passoQ = EEPROM.read(0); //passos do motor do quarto
int valorpotS1; //valor do LDR próximo da porta da sala
int valorpotS2; //valor do LDR mais afastado da porta da sala
int valorpotQ; //valor do LDR do quarto
char caracter; //recebe o código enviado pelo bluetooth
float controle=0; //variável que atua na luminosidade do led
#define MIN 0 //cortina aberta - passo==0
#define MAXQ 20 //cortina fechada do quarto - passo==20
#define MAXS 45 //cortina fechada da sala - passo==45
#define STEPS 200 //número de passos do motor (1.8 grau/passo)
//nº de passos de cada motor e os pinos aos quais está ligado
Stepper motorQuarto (STEPS, 10, 11, 12, 13);
Stepper motorSala (STEPS, 3, 4, 7, 8);
void setup() {
Serial.begin(9600); //inicializa a serial
Serial.flush(); //esvazia o buffer
//definição dos pinos de saida
60
pinMode(ledSala1, OUTPUT);
pinMode(ledSala2, OUTPUT);
pinMode(ledQuarto, OUTPUT);
//definição dos pinos como entrada
pinMode(ldrSala1, INPUT);
pinMode(ldrSala2, INPUT);
pinMode(ldrQuarto, INPUT);
//setando a velocidade do motor;
motorSala.setSpeed(5);
motorQuarto.setSpeed(5);
//leitura inicial dos ldr's
valorpotQ = map(analogRead(ldrQuarto), 0,1023, 255, 0);
valorpotS1 = map(analogRead(ldrSala1), 0,1023, 255, 0);
valorpotS2 = map(analogRead(ldrSala2), 0,1023, 255, 0);
Serial.print("LDR QUARTO = ");
Serial.println(valorpotQ);
Serial.print("LDR SALA 1 = ");
Serial.println(valorpotS1);
Serial.print("LDR SALA 2 = ");
Serial.println(valorpotS2);
Serial.print("Passo Quarto = ");
Serial.println(passoQ);
Serial.print("Passo Sala = ");
Serial.println(passoS);
}
//FUNÇÃO 'CONTROLE_LED' RECEBE COMO PARÂMETRO O VALOR DE
//LUMINOSIDADE REFERENTE AO CÔMODO E ATIVIDADE SELECIONADA, O
//POTENCIÔMETRO LIDO E O LED QUE PODERÁ OU NÃO SER ACIONADO
int controle_led(int ref, int pot, int lamp){
int retorno = 0;
int erro = (ref - pot);
if (erro<0){ //do cômodo com mais luminosidade para um de menos luminosidade
controle=controle+erro; // diminui o fluxo luminoso
if (controle<1) { //lâmpada está apagada
61
controle = 0;
retorno = 1;
}
analogWrite(lamp, controle);
}
if (erro>0){ //do cômodo com menos luminosidade para um de mais luminosidade
controle=controle+erro; // aumenta o fluxo luminoso
if (controle>254) {
controle = 255;
}
analogWrite(lamp, controle);
}
Serial.print("Controle = ");
Serial.println(controle);
Serial.print(" - Erro = ");
Serial.println(erro);
delay(1000); //delay de 1 segundos
return(retorno);
}
//FUNÇÃO 'ANALISE' RECEBE COMO PARÂMETRO O VALOR DE LUMINOSIDADE
//REFERENTE AO CÔMODO E ATIVIDADE SELECIONADA, O POTENCIÔMETRO
//LIDO E O LED QUE PODERÁ OU NÃO SER ACIONADO
int analise (int ref, int pot, int lamp, int comodo){
if (comodo == 1){ //SALA
Serial.print("Referencia = ");
Serial.print(ref);
Serial.print(" --- Potenciometro = ");
Serial.println(pot);
if (passoS == MIN){ //cortina aberta
controle_led (ref, valorpotS2, ledSala2); //luminosidade complementar pro led2
int check = controle_led (ref, pot, lamp); //acende a lâmpada com a luminosidade
//complementar
if (check == 1){ //tem-se mais luz do que precisa no ambiente e a luz está no minimo
passoS++;
62
motorSala.step(-2); //fecha a cortina
}
}
if (passoS == MAXS){ //cortina fechada
if (ref > pot){ //tem-se pouca luz no ambiente
passoS--;
motorSala.step(2); //abro a cortina
}
else{ //tem-se mais luz do que precisa no ambiente
digitalWrite(ledSala1, LOW); //desliga os leds da sala
digitalWrite(ledSala2, LOW);
}
}
if ((passoS > MIN) && (passoS < MAXS)){ //cortina nem aberta, nem fechada
if (ref > pot){ //tem-se pouca luz no ambiente
passoS--;
motorSala.step(2); //abro a cortina
}
else{ //tem-se mais luz do que precisa no ambiente
passoS++;
motorSala.step(-2); //fecha a cortina
}
}
Serial.print(" ---- Passo Sala = ");
Serial.println(passoS);
}
if (comodo == 2){ //QUARTO
Serial.print("Referencia = ");
Serial.print(ref);
Serial.print(" --- Potenciometro = ");
Serial.println(pot);
if (passoQ == MIN){ //cortina aberta
int check = controle_led (ref, pot, lamp); //acende a lâmpada com a luminosidade
//complementar
63
if (check == 1){ //tem-se mais luz do que precisa no ambiente e a luz está no mínimo
passoQ++;
motorQuarto.step(-2); //fecha a cortina
}
}
if (passoQ == MAXQ){ //cortina fechada
if (ref > pot){ //tem-se pouca luz no ambiente
passoQ--;
motorQuarto.step(2); //abro a cortina
}
else{ //tem-se mais luz do que precisa no ambiente
digitalWrite(ledQuarto, LOW); //desliga o led do quarto
}
}
if ((passoQ > MIN) && (passoQ < MAXQ)){ //cortina nem aberta, nem fechada
if (ref > pot){ //tem-se pouca luz no ambiente
passoQ--;
motorQuarto.step(2); //abro a cortina
}
else{ //tem-se mais luz do que precisa no ambiente
passoQ++;
motorQuarto.step(-2); //fecha a cortina
}
}
Serial.print(" ---- Passo Quarto = ");
Serial.println(passoQ);
}
delay (1000); //delay de 1 segundo
}
void loop() {
if (Serial.available()>0){
delay(10);
caracter = Serial.read();
64
}
// leitura e conversão dos LDR's
//como a relação entre ldr e luminosidade é inversamente propocional, é feito uma
//interpolação sendo 0(no ldr) = 255(luminosidade) e 1023(no ldr) = 0(luminosidade)
valorpotS1 = map(analogRead(ldrSala1), 0,1023, 255, 0);
valorpotS2 = map(analogRead(ldrSala2), 0,1023, 255, 0);
valorpotQ = map(analogRead(ldrQuarto), 0,1023, 255, 0);
if (caracter == 'j'){ //sala de jogos
Serial.println("------------------ Controle - sala - de jogos ------------------");
analise (230, valorpotS1, ledSala1, 1);
}
if (caracter == 'd'){ //sala de estar
Serial.println("------------------ Controle - sala - de estar ------------------");
analise (200, valorpotS1, ledSala1, 1);
}
if (caracter == 't'){ //sala de tv
Serial.println("------------------ Controle - sala - de tv ------------------");
analise (150, valorpotS1, ledSala1, 1);
}
if (caracter == 'f'){ //sala para ver filme
Serial.println("------------------ Controle - sala - ver filme ------------------");
analise (70, valorpotS1, ledSala1, 1);
}
if (caracter == 'e'){ //quarto de estudo
Serial.println("------------------ Controle - quarto - estudo ------------------");
analise (230, valorpotQ, ledQuarto, 2);
}
if (caracter == 'v'){ //quarto para ver tv
Serial.println("------------------ /Controle - quarto - tv ------------------");
analise (150, valorpotQ, ledQuarto, 2);
}
if (caracter == 'r'){ //quarto para relaxar
Serial.println("------------------ Controle - quarto - relaxar ------------------");
65
analise (50, valorpotQ, ledQuarto, 2);
}
if (caracter == 'o'){ //quarto para dormir
Serial.println("------------------ Controle - quarto - dormir ------------------");
digitalWrite(ledQuarto, LOW); //apaga a luz
if (passoQ < MAXQ){ //a cortina não está fechada
int i;
for (i=passoQ; i<MAXQ; i++){
motorQuarto.step(-2); //fecha a cortina
delay(100);
passoQ++;
}
}
}
if (caracter == 'c'){ //fechar programa
Serial.println("--------------------------- SAIR -----------------------------");
digitalWrite(ledSala1, LOW); //apaga todas as lâmpadas
digitalWrite(ledSala2, LOW);
digitalWrite(ledQuarto, LOW);
EEPROM.write(0, passoQ); //grava o número de passos do quarto no endereço 0
EEPROM.write(1, passoS); //grava o número de passos da sala no endereço 1
delay(100); //delay de 0,1 segundos
}
delay(1000); //delay de ,1 segundos
}