FAP-Faculdade de Apucarana Projeto de TCC SISTEMA DE AUTOMAÇÃO RESIDENCIAL IMPLANTANDO PROJETOS EM ARDUINO E ANDROID Aluno: Rafael de Carvalho Souza Orientador: Edmilson Domaredzki Verona
FAP-Faculdade de Apucarana
Projeto de TCC
SISTEMA DE AUTOMAÇÃO RESIDENCIAL IMPLANTANDO PROJETOS EM ARDUINO E
ANDROID
Aluno: Rafael de Carvalho SouzaOrientador: Edmilson Domaredzki Verona
Apucarana/2014
Rafael de Carvalho Souza
SISTEMA DE AUTOMAÇÃO RESIDENCIAL IMPLANTANDO PROJETOS EM ARDUINO E
ANDROID
Projeto apresentado ao Curso de Sistemas de Informação da Faculdade de Apucarana, para obtenção do grau de Bacharel em Sistemas de Informação.
Orientador: Prof. Edmilson Domaredzki Verona
Apucarana/2014
Resumo
Neste projeto é apresentado um sistema para automação residencial utilizando a plataforma Arduino. Arduino é uma plataforma que se destaca entre as demais por ser de fácil integração aos sistemas finais com capacidade em sistemas robóticos, comunicação com a internet, comunicação remota, sensores, sistemas eletrônicos e etc. A proposta desse trabalho é adaptar a uma residência o total controle da iluminação de seus cômodos através de uma placa Arduino integrando com um módulo de internet para a comunicação remota utilizando dispositivos como: celulares, tablets, microcomputadores, etc. O objetivo é o proprietário obter o total controle da iluminação da sua residência com maior praticidade e facilidade. A automação residencial passará a ser acessível apenas por um botão no celular ou clique do mouse através de um acesso remoto.
Palavras-chave: arduino, automação residencial, sistema de automação.
Abstract
In this project we present a system for home automation using the Arduino platform. Arduino is a platform that stands out among the others because of its easy integration to end-systems capability in robotic systems, communication with the internet, remote communications, sensors, electronics and so on. The purpose of this work is scalable to a residence full control of lighting their rooms via an Arduino board with a module integrating internet for remote communication using devices such as mobile phones, tablets, computers, etc.. The goal is to get the owner total control of lighting your house with greater convenience and ease. The home automation will be accessible only by a button or mouse click via remote access.
Keywords: arduino, home automation, automation system.
Lista de Ilustrações
Figura 1.1 – Arduino UNO.....................................................................................................13
Figura 1.2 – Arduino Ethernet Shield.....................................................................................14
Figura 1.3 – Shield Ethernet...................................................................................................15
Figura 1.4 – Sensor de Luminosidade.....................................................................................17
Figura 1.5 – Sensor de Temperatura........................................................................................17
Figura 1.6 – Sensor PIR...........................................................................................................18
Figura 1.7 – Estrutura do Projeto.............................................................................................20
Lista de Abreviaturas
TCC Trabalho de Conclusão de CursoFAP Faculdade de ApucaranaIP Internet ProtocolLAN Local Area NetworkTCP Transmission Control ProtocolHTTP Hyper Text Transfer ProtocolADSL Asymetric Digital Subscriber LineHTML Hiper Text Multi LanguageDC Corrente Contínua
Sumário
1 INTRODUÇÃO.......................................................................................................................................10
2 PROBLEMA...........................................................................................................................................11
2.1 PROBLEMATIZAÇÃO.....................................................................................................................11
2.2 SOLUÇÃO PROPOSTA...................................................................................................................11
3 JUSTIFICATIVA E VIABILIDADE........................................................................................................12
4 OBJETIVOS...........................................................................................................................................13
4.1 OBJETIVO GERAL.........................................................................................................................13
4.2 OBJETIVO ESPECÍFICO................................................................................................................13
5 FUNDAMENTAÇÃO TEÓRICA.............................................................................................................14
5.1 SISTEMA INTEGRADO...................................................................................................................14
5.2 INTERNET E AUTOMAÇÃO RESIDENCIAL.....................................................................................15
5.3 DOMÓTICA...................................................................................................................................16
5.6 HISTÓRIA DO ARDUINO...............................................................................................................19
5.7 SOFTWARE DO ARDUINO.............................................................................................................20
5.8 ALIMENTAÇÃO..............................................................................................................................21
5.9 MEMÓRIA.....................................................................................................................................21
5.10 ENTRADA E SAÍDA...................................................................................................................21
5.11 SHIELDS..................................................................................................................................22
5.11.1 Ethernet Shield.......................................................................................................................22
5.12 SENSORES................................................................................................................................23
5.12.1 Sensor de Luminosidade.........................................................................................................23
5.12.2 Sensor de Temperatura..........................................................................................................24
5.12.3 Sensor PIR..............................................................................................................................24
6 DESENVOLVIMENTO...........................................................................................................................25
6.2.1 App Inventor Designer...........................................................................................................26
6.3 INTERFACE.......................................................................................................................................33
6.3.1 Tela Inicial.............................................................................................................................33
6.3.2 Menu Principal.......................................................................................................................34
6.3.3 Controle de Lâmpadas Internas.............................................................................................35
6.3.4 Controle de Lâmpadas Externas............................................................................................36
6.3.5 Tela de Sensores.....................................................................................................................37
6.3.6 Tela de Configuraçoes............................................................................................................38
6.3.7 Tela de Alteraçao de Senha....................................................................................................39
6.4 TESTES...............................................................................................................................................40
6.4.1 Teste de Lâmpadas.................................................................................................................40
6.4.2 Teste de Sensores....................................................................................................................40
6.4.3 Teste de motor........................................................................................................................40
7 CONCLUSAO.....................................................................................................................................41
8 REFERENCIA BIBLIOGRAFICA..................................................................................................42
ESTRUTURA DO PROTÓTIPO.......................................................................................................................43
1 INTRODUÇÃO
Muito se fala sobre as novidades tecnológicas que irão equipar nossos lares no
futuro próximo.
A tecnologia está em completa evolução a todo instante, principalmente nas áreas
que envolvem computação, sistemas de informação e tecnologia da informação. Sistemas
são de grande importância para o controle e gerenciamento das informações para obter
melhores decisões. Com o avanço tecnológico e integração desses sistemas na sociedade,
eu decidi desenvolver este projeto com a plataforma Arduino por ser um dos dispositivos
mais interessantes e inovadores da atualidade. Arduino tem a capacidade de trabalhar
praticamente com tudo e isso é muito benéfico para a sociedade que a todo instante
necessita de praticidade nos afazeres.
Esse novo conceito permite a um amplo grupo de profissionais a possibilidade de
desenvolver projetos na área da tecnologia. Foi nessa plataforma que encontrei motivação
para a realização desse projeto juntamente com a necessidade de facilitar a vida da
sociedade.
Atualmente a internet tem sido cada vez mais utilizada e grande parte dos usuários
está explorando ainda mais a rede. Existem muitas informações, arquivos e dados
disponibilizados, mas muita coisa ainda não está sendo utilizado na rede, como por
exemplo, o controle de uma residencia.
Através dos benefícios que a placa Arduino oferece de conectar diversos
dispositivos ao computador, juntando com a possibilidade de interligar esse mesmo
computador a rede mundial, vimos à possibilidade de interligar e controlar dispositivos
como aparelhos eletrônicos e eletrodomésticos através da internet de qualquer lugar do
mundo. A pessoa pode, por exemplo: estar viajando, estar em outra cidade, outro estado,
outro país e controlar a iluminação da sua casa. Pode também do trabalho ligar sua
cafeteira e seu forno para quando chegar em casa, seu café e lanche estarem prontos ou
colocar sua máquina de lavar roupas para trabalhar sem precisar estar em casa. Dentre
várias outras possibilidades que podem facilitar a vida das pessoas através desse projeto.
Essa nova abordagem surge com a Automação Residencial e vem apresentando
inúmeros benefícios quando comparamos os sistemas eletrônicos e eletromecânicos
integrados com os sistemas isolados, de eficiência limitada.
9
2 PROBLEMA
A falta de recursos que utilizam a internet para ajudar o usuário a resolver seus
problemas domésticos e controle residencial fez com que o projeto fosse desenvolvido.
A forma de controle de dispositivos em uma residência, ainda é de forma manual, e
os produtos que existem no mercado são de difícil acesso econômico por serem de alto
custo.
Para isso a plataforma Arduino encara complementamente esse problema com
grande capacidade para solucionar e satisfazer os usuários que buscam acessibilidade,
praticidade e facilidade.
2.1 PROBLEMATIZAÇÃO
Quando uma pessoa deixa o seu domicílio, automaticamente fica inacessível o
controle dos dispositivos existentes na residência pelo método de controle via manual que
existem hoje em dia. Para que esse proprietário possa controlar a residência via acesso
remoto, ele necessita de uma tecnologia que tenha capacidade de oferecer esse recurso. O
Arduino é perfeito para essa situação, pois com ele pode estabelecer essa conexão entre o
usuário e a residência, fazendo com que o objetivo de controle dos dispositivos seja
estabelecido.
2.2 SOLUÇÃO PROPOSTA
Analisando a problematização, surgiu a idéia de desenvolver um projeto com
integração à “internet das coisas”, onde se pode utilizar a internet para facilitar o cotidiano
da sociedade, tornando acessível de qualquer lugar do mundo aquilo que só poderia ser
feito de forma presencial e manual.
A proposta é fazer com que facilite o ligar/desligar de uma lâmpada de qualquer
parte da residência, abrir e fechar um portão eletronico, acionar o ar-condicionado,
verificar condições climáticas como, por exemplo: temperatura e umidade, acionar e
receber sinais de alerta caso o alarme seja interrompido, todas as funções utilizando um
aparelho celular conectado à internet.
10
3 JUSTIFICATIVA E VIABILIDADE
Segundo uma pesquisa realizada nos Estados Unidos pela National Association of
Home Builders(2012) a implantação da tecnologia dentro do ambiente residencial oferece
maior comodidade, qualidade de vida, segurança, controle e gerenciamento das instalações,
controle dos gastos com água e energia e contribuição para o meio ambiente.
A National Association of Home Builders(2012) extraiu as seguintesinformações:
84% dos construtores entendem que incorporar tecnologia às residências que
constroem é um importante diferencial mercadológico;
Existe a constatação de que os consumidores na faixa etária que estão entrando no
mercado, adquirindo seu primeiro imóvel, já convivem com naturalidade com a
tecnologia e, portanto, estão sendo exigentes com relação ao seu uso nas residências
que lhes são oferecidas;
Sistemas automatizados que contenham apelo pela sustentabilidade, economia de
energia e preservação de recursos naturais estão sendo cada vez mais requisitados;
Entre as tecnologias emergentes que devem alcançar elevados patamares de
crescimento nos próximos anos, estão os media centers (central de mídias), o
monitoramento a distância, o controle de iluminação e o home care (domótica
aplicada a saúde extra-hospitalar).
Tomando conhecimento disso, temos a conclusão de que a Automação Residencial
ofere aos profissionais e adeptos à tecnologia tornar as habitações cada vez mais eficientes
para atender as solicitações de seus dependentes e usuários.
Além disso, escolhemos o uso da placa Arduino, por ser uma plataforma livre, uma
tecnologia que está em expansão, por possuir baixos custos e que tem muito mercado
futuro.
Outra justificativa é que está em total crescimento o numero de pessoas que buscam
facilidade no seu cotidiano, que tragam economia de tempo e soluções para o dia a dia.
11
4 OBJETIVOS
4.1 OBJETIVO GERAL
O objetivo principal é criar um sistema de automação que controle toda a
iluminação em uma residência, controlar alarme, controlar a maior parte elétrica via
qualquer dispositivo android conectado à internet, fazendo com que ações simples e
rotineiras do dia a dia, como o ato de ativar o interruptor de uma lâmpada possam ser feito
tanto de forma manual quanto de forma automática. Vamos desenvolver um projeto que
disponiblizará uma série de comodidade e conforto para as pessoas.
4.2 OBJETIVO ESPECÍFICO
Trazer ao usuário um maior conforto e segurança, automatizando ações rotineiras.
Utilizar sensores para medir as variações do ambiente, como: luminosidade, temperatura
e umidade.
Aumentar o conhecimento no ambiente de robótica, eletrônica e automação,
utilizando ferramentes de desenvolvimento em Java e Web.
12
5 FUNDAMENTAÇÃO TEÓRICA
5.1 SISTEMA INTEGRADO
Uma das principais preocupações dos projetistas e instaladores de sistemas de
Automação Residencial deve ser a integração entre eles. Os produtos modernos, embora
muitas vezes de complexa tecnologia, dispõem de interfaces "amigáveis" para que possam
ser operados com certa facilidade pelo usuário final.
No entanto, quando uma série de produtos trabalha sem comunicação entre si, o
resultado na maioria das vezes é uma grande confusão operacional. Imagine por exemplo
dois sistemas de iluminação independentes (iluminação de emergência e iluminação por
zonas) atuando de forma separada, um deles se utilizando de sensores de presença e outro
baseado em controle remoto ou dois sistemas de vídeo na mesma residência (fato muito
comum envolvendo o Circuito Fechado de TV que não se comunica com o sistema do
Home Theater, o que obriga a existência de monitores dedicados, custos duplicados, etc.).
Quando se prevê um cabeamento prévio das residências, toda esta integração pode
ser obtida ao final e a um custo muito pequeno. Quando isto não é previsto em projeto, aí
temos a improvisação e o desperdício, que sempre resultam em prejuízos financeiros e
dificuldades operacionais.
Hoje quando falamos em integração de sistemas podemos facilmente considerar
aplicações que até meses atrás seriam pura ficção científica. Quais? Imagine a conexão da
Internet com os controles residenciais, tudo aquilo que o usuario controla dentro de sua
casa, através de uma simples conexão com a Internet poderá ser estendido a praticamente
qualquer local, ou seja, com seu laptop, de qualquer lugar, o usuario vai poder gerenciar o
que ocorre em sua residência, com todos os equipamentos e serviços lá instalados,
inclusive com imagens. Ou quando o usuario estiver viajando e quiser acionar um
equipamento de segurança ou a bomba da piscina, basta discar pelo telefone e digitar os
códigos pré-estabelecidos. (AURESIDE,2014).
13
5.2 INTERNET E AUTOMAÇÃO RESIDENCIAL
Cada vez mais se fala em conectividade, ou seja, a integração de dispositivos e
equipamentos através de redes de controle. Estas possibilidades se ampliaram
significativamente com o advento e a expansão da Internet. As grandes empresas das áreas
de software, hardware e telecomunicações passaram a investir pesadamente no
desenvolvimento de protocolos de compatibilidade para permitir uma conectividade
perfeita entre equipamentos. Os fabricantes de equipamentos eletrônicos de uso diário se
beneficiam destas pesquisas e incorporam novas tecnologias aos seus produtos. Desta
maneira, hoje podemos acionar e controlar equipamentos a distancia utilizando a Internet,
isto já é uma realidade e reflete uma tendência definitiva. Estamos com certeza
visualizando apenas a "ponta do iceberg" e as possibilidades de novas aplicações se
apresentam diariamente. (Echelon,2014).
Segundo Bob Metcalfe, a conectividade aumenta o poder nas redes, ele trata isto
com a lei de Metcalfe, que diz que, a rede cresce em valor com o quadrado de números de
nós conectados.
A infraestrutura para conectar estes dispositivos à Internet já esta disponível hoje,
diz Ken Oshman, presidente da Echelon. Muitas vezes invisíveis, altamente confiáveis,
dispositivos do dia a dia interligados por redes estão em praticamente todos os lugares -
desde o relógio do Millenium no topo da Torre Eiffel, nas fabricas de semicondutores no
mundo inteiro e lojas da 7-Eleven no Japão, por exemplo. Em prédios, casas, fábricas e
sistemas de transportes ao redor do mundo, equipamentos conectados foram instalados
para garantir maior eficiência aos sistemas que fazem o mundo funcionar. Equipamentos
simples que eram usados de forma rotineira em nossas vidas agora têm seu uso alavancado
para trazer a Internet à vida diária.
Segundo Bob Metcalfe, milhões de produtos usando o protocolo LonWorks -
dispositivos como interruptores nas casas, sensores de presença em edifícios, válvulas e
termostatos em fábricas, e portas automáticas em trens de metrô - estão já instalados ao
redor do mundo. Conectar estes equipamentos à Internet permite uma infinidade de novas
aplicações. Por exemplo, muitos postos de gasolina através do mundo tem redes LonWorks
em seus tanques subterrâneos para monitorar seus estoques de combustível. Conectar estes
14
controles a Internet torna possível criar novas aplicações que nem foram imaginadas
quando se instalaram estes tanques, como monitoramento em tempo real dos níveis de
estoque para otimizar as rotas de reabastecimento - reduzindo custos operacionais e
eliminando perdas devido a uma política inadequada de estoques.(METCALFE, Bob).
5.3 DOMÓTICA
“A palavra Domótica é a junção da palavra latina Domus (casa) e do termo
Robótica (controle automatizado de algo).”
O significado está relacionado à instalação de tecnologiasem residências, com o
objetivo de melhorar a qualidade de vida, aumentar a segurança eviabilizar o uso racional
dos recursos para seus habitantes. Um sistema domótico é dividido emvários subsistemas,
cada qual atua especificamente em um campo de controle. Atualmente estessistemas são
informatizados e computadorizados.
Quando a domótica surgiu com os primeiros edifícios dos anos 80, pretendia-se
controlar a iluminação, climatização, a segurança e a interligação entre esses 3 elementos.
Nos nossos dias a ideia base é a mesma, a diferença é o contexto para o qual o sistema está
pensado. Dessa forma, permite o uso de dispositivos para automatizar as rotinas e tarefas
de uma casa. (GIARETTA,2011).
15
5.4 ANDROID
Android é um sistema operacional desenvolvido pela Google, especialmente utilizados em
dispositivos móveis como: smartphones, tablets de diversos fabricantes. Segundo a
Google, mais de 1 milhão e 500 mil aparelhos com o sistema operacional são ativados
todos os dias, sendo utilizado por grandes fabricantes de celulares, como HTC, Samsung,
Sony, Motorola e LG. Suas principais características são:
É gratuito
Código livre
Desenvolvido pela grande empresa Google
Não necessita de Hardware especifico.
Seu núcleo kernel é em Linux, uma versão voltada para dispositivos móveis.
Aplicativos desenvolvidos em Java.
Grande acervo de aplicativos gratuitos e pagos.
Grande comunidade de usuários e desenvolvedores.
Atualmente o Android é o sistema operacional móvel mais usado no mundo.
Segundo a Globo.com em 2013 estava presente em cada 4 de 5 smartphones vendidos,
possuindo 81% deste mercado, sendo a versão predominante a "Gingerbread " presente em
mais da metade dos aparelhos. Também em 2013, foi noticiado que mais de 1 Bilhão de
aparelhos ativos continham o Android e que sua loja virtual, a Google Play, já ultrapassara
mais de 800 mil de apps, jogos e outras variedades.
16
Figura – Diagrama da arquitetura do Android.
5.5 ARDUINO
Arduino é uma plataforma de computação física open-source baseado em uma
simples placa com entradas e saídas e um ambiente de desenvolvimento que implementa a
linguagem Processing/Wiring. Este ambiente de desenvolvimento é multiplataforma
podendo criar as rotinas para Windows, Linux e Mac OS X. Sua linguagem de
programação se assemelha bastante com a linguagem C++, porém o Arduino segue uma
forma simplificada. (ARDUINO, 2014).
O objetivo do projeto é criar ferramentas que são acessíveis, com baixo custo,
flexíveis e fáceis, que podem ser usados desde por profissionais da área quanto por
iniciantes, principalmente por aqueles que não têm alcance aos controladores mais
sofisticados e de ferramentas mais complicadas.
A placa Arduino é composta por um controlador, algumas linhas de E/S digital e
analógica, além de uma interface serial (USB).
O funcionamento básico do Arduino consiste em:
Inserir código
o Conectar a um computador
o Usar interface própria para criar e inserir códigos
17
Executar código
o Ler entradas
o Fazer cálculos
o Escrever Saídas
Figura 1.1 Arduino UNO
5.5.1 HISTÓRIA DO ARDUINO
O projeto foi criado em meados de 2005 na cidade de Ivrea na Itália por um
professor chamado Mássimo Banzi, com o intuito de aumentar os conhecimentos escolares
voltados à eletrônica e com custos menores do que os existentes na época. Nasceu pra
complementar o aprendizado de programação, computação física, robótica e gráfica.
Sua estrutura é baseada em Processing e Wiring, Processing é um ambiente de
linguagem de programação para criar imagens, animação e interação.
Atuamente, seu hardware é feito através de um microcontrolador Atmel AVR com
componentes complementares para facilitar a programação e incorporação para outros
circuitos. (ARDUINO,2013).
18
5.5.2 SOFTWARE DO ARDUINO
O Arduino IDE é uma aplicação multiplataforma escrita em Java na qual é derivada
dos projetos Processing e Wiring. É esquematizado para introduzir a programação a
artistas e a pessoas não familiarizadas com o desenvolvimento de software. Inclui um
editor de código com recursos de realce de sintaxe, parênteses correspondentes e identação
automática, sendo capaz de compilar e carregar programas para a placa com um único
clique. Com isso não há a necessidade de editar Makefiles ou rodar programas em
ambientes de linha de comando. Tendo uma biblioteca chamada "Wiring", ele possui a
capacidade de programar em C/C++. Isto permite criar com facilidade muitas operações de
entrada e saída, tendo que definir apenas duas funções no pedido para fazer um programa
funcional: Setup, que Inserida no inicio, na qual pode ser usada para inicializar
configuração, e loop, que pode ser chamada para repetir um bloco de comandos ou esperar
até que seja desligada.
O projeto Arduino necessita de um código para a comunicação da placa com os
dispositivos, esse código é informado na janela de comando como mostra a figura abaixo:
Figura – Janela de Comando
19
5.5.3 ALIMENTAÇÃO
A alimentação é feita tanto por uma porta USB, quanto por uma fonte externa de
alimentação. A fonte pode ser de duas formas: através de bateria ou adaptador AC-DC.
A placa pode suportar de 6 a 20 volts, mas é recomendado usar de 7 a 12 volts, para
evitar queimar o dispositivo caso tenha energia acima do normal.
5.5.4 MEMÓRIA
Segundo o fabricante, a placa Uno possui 32 KB de memória. Desse total, são
reservados 0,5 KB para o bootloader, um software de boot instalado.
5.5.5 ENTRADA E SAÍDA
Segundo o site oficial (ARDUINO, 2013),a placa Uno possui 14 pinos digitais que
podem ser de entrada e saída. Para definir se um pino vai ser entrada ou saída, basta
configurar o método “voidsetup()” do código do programa.
Exemplo de definição de pino entrada ou saída:
void setup(){
pinMode(pino12, OUTPUT);
pinMode(pino13, INPUT);
}
20
5.5.6 SHIELDS
Shields são dispositivos que permitem novas funcionalidades aos projetos arduino,
é comose fosse um expansor, capaz de trazer novas funções e aplicações pra placa
principal.
5.5.6.1 Ethernet Shield
Figura 1.3 Shield Ethernet
O Arduino Ethernet Shield permite que uma placa Arduino conecte-se a internet. É
baseado no chip ethernet da Wiznet W5100, fornecendo um IP capaz de TCP e UDP. Este
shield suporta até quatro comunicações de socket simultâneas.
O Shield Ethernet se conecta ao Arduino usando barra de pinos maiores do que os
comuns. Isto faz com que os pinos da placa não entrem em contato com outros pinos
colocados na placa de cima, evitando assim curtos. Este shield possui um conector RJ45
padrão.
21
5.5.7 SENSORES
Sensores são componentes de hardware que podem fornecer ao seu computador
informações sobre o local do computador, seus arredores e mais. Os programas em seu
computador podem acessar informações a partir de sensores e então armazenar ou usar
essas informações para ajudá-lo nas tarefas diárias ou para aprimorar sua experiência no
computador.(MICROSOFT, 2013)
Sensores podem ser considerados também como dispositivos que alteram seu
estado decorrente de alguma grandeza física.
5.5.7.1 Sensor de Luminosidade
Figura 1.4 Sensor de luminosidade
Sensor de Luminosidade LDR de 5mm de diâmetro. Este sensor altera a resistência
em seus terminais conforme a luminosidade a que é submetido. Seu funcionamento básico
é captar o nível de luminosidade, se a liminosidade estiver em nível baixo, o sensor já ativa
as lâmpadas para iluminarem em paralelo ao nível de luminosidade.
22
5.5.7.2 Sensor de Temperatura
Figura 1.5 Sensor de Temperatura
Sensor de Temperatura NTC de 10k. Este sensor altera a resistência em seus
terminais segundo a temperatura a que é submetido.
5.5.7.3 Sensor PIR
Figura 1.6 Sensor PIR
Sensor PIR é um sensor de movimento, similar aos sensores de alarmes usados hoje
em dia. Depois de alimentado e ativado, basta apenas 2 segundos para que ele possa “tirar
23
uma foto” do ambiente e se qualquer coisa se mover após esse período, o pino do alarme é
disparado.
6 DESENVOLVIMENTO
Para desenvolver o projeto ultizaremos uma maquete no modelo de uma residência
com todos os cômodos descritos e suas respectivas iluminações. Será desenvolvido um
aplicativo na plataforma Android para dispositivos como: celular, tablet. Através desse
aplicativo, será possível controlar toda a parte luminária da propriedade com as opções de
ligar/desligar, o aplicativo também terá um módulo que receba e envia dados de sensores,
como por exemplo: sensor de luminosidade, sensor de movimento, sensor de umidade e
temperatura.
Para o dispositivo Andoid ter acesso ao Arduino será necessário utilizar o Ethernet
Shield conectado à placa principal. O Ethernet Shield possui uma identificação através do
IP que é atribuído a ele que estará comunicando com a rede local, Os comandos são
executados através do protocolo HTTP, o microcontrolador Arduino recebe os comandos
via HTML que é compatível com o aplicativo. Nesta seção veremos os materiais e as
ferramentas utilizadas no projeto.
6.1 MATERIAIS
Nesse projeto foi utilizado um notebook Sony Vaio com processador Intel Core i5,
memória RAM de 8GB, HD 650GB, uma placa Arduino Uno, um Ethernet Shield, sensor
de movimento PIR, sensor DHT de umidade e temperatura, sensor de luminosidade, vários
led’s, protoboard, fios de conexão, motor DC 12v, fonte de energia 9v, cabo de rede,
modem de internet e roteador wifi.
24
6.2 APP INVENTOR
App Inventor é uma aplicação web de código aberto originalmente fornecido pelo
Google e agora mantido pelo Instituto de Tecnologia de Massachusetts (MIT). Essa
aplicação foi usada nesse projeto para desenvolver e criar as telas do aplicativo para o
aparelho com android.
O conjunto é composto por duas seções: o App Inventor Designer para criar os
layouts, botões e outros componentes da tela e o App Inventor Blocks Editor para criar as
lógicas de programação que serão atribuídas aos componentes da tela, cada um com uma
função específica que veremos a seguir.
6.2.1 App Inventor Designer
O Designer é a tela inicial de um projeto. É aqui que você desenha seu aplicativo,
escolhendo a posição dos botões e imagens, inserindo fotos, droplists, checkboxes e outros
componentes disponíveis para a construção de um programa. Ele é dividido em quatro
colunas: Paleta, Visualizador, Componentes e Propriedades.
Figura 1.7 Tela Inicial App Inventor
25
6.2.1.1 Paleta
A primeira coluna, chamada de “Palette” (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 (uma divisão
daquela brincadeira de montar pecinhas que adiciona sensores, motores e processadores
aos robôs construídos).
Para utilizar um desses componentes basta clicar sobre ele e arrastar para cima da
segunda coluna, chamada “Viewer” (Visualizador).
26
Figura – Coluna “Palette”
6.2.1.2 Visualizador
Na coluna “Viewer”, 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.
27
Todos os itens adicionados da “Palette” ao “Viewer” são apresentados na terceira
coluna, chamada de “Components” (Componentes).
Figura 1.8 Coluna “Viewer”.
28
6.2.1.3 Componentes
Na coluna de componentes, ficam armazenados todos os itens adicionados, sejam
eles visíveis ou não na tela do programa. Dessa forma, fica muito mais simples selecionar
cada objeto, pois eles estão listados de forma ordenada e acessível. Aqui também é
possível renomear cada item. Assim, você pode chamar os componentes por nomes que
façam sentido para o seu projeto. É muito mais fácil encontrar cada coisa se você mesmo
criar um nome específico para ela, Como “botão de som” em vez de “Button1”.
É possível também inserir arquivos de mídia pela terceira coluna. Clicando no
botão “Adicionar” (Add) você importa sons, fotos e vídeos do seu computador para o
servidor do App Inventor, e eles ficam disponíveis para que você possa usar no projeto.
Figura 1.9 Coluna “Components”.
29
6.2.1.4 Propriedades
Esta é a coluna mais importante do App Inventor Designer, já que aqui você pode
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.
Uma vez que seu programa esteja parcialmente montado, é hora de começar a
atribuir funções a cada um dos componentes que você selecionou. Para isso é preciso clicar
no botão “Open Blocks Editor” (Abrir Editor de Blocos), que o levará para uma nova tela.
Figura 2.0 Coluna “Properties”.
30
Uma forma de testar a aplicação desenvolvida pelo AppInventor, é utilizar o
emulador. Ele está disponível na aplicação, mas necessita que tenha instalado o pacote
JAVA e JDK no computador. Após ser executado, ele mostra uma tela similar ao celular,
que automaticamente coleta as informações do AppInventor e executa a aplicação.
Figura – Emulador do AppInventor
6.3 INTERFACE
31
6.3.1 Tela Inicial
A interface do aplicativo é simples, proporcionando ao usuário facilidade no
reconhecimento dos botões e das opções a serem utilizadas. Na tela inicial, o usuário
declara uma senha de acesso para poder entrar no Menu Principal. A tela contém a logo do
aplicativo, dois botões de decisão:
LOGIN: para validar a senha e entrar no Menu Principal;
SAIR: para encerrar o aplicativo;
Figura 2.1 Tela Inicial
6.3.2 Menu Principal
32
O Menu Principal consiste nas opções de escolha que usuário possui para controlar
as lâmpadas e sensores de sua residência. A tela possui 3 botões:
Lâmpadas Internas: clicando neste botão, o usuário é levado pra outra tela de
controle das lâmpadas internas, como por exemplo: quarto, sala, banheiro;
Lâmpadas Externas: clicando neste botão, o usuário é levado pra outra tela de
controle de lâmpadas externas, como por exemplo: varanda, jardim e garagem;
Sensores: clicando neste botão, o usuário é levado pra outra tela de controle de
sensores, como por exemplo: temperatura, status de luminosidade, sensor de
movimento, etc;
Figura 2.3 Tela Menu Principal.
33
A tela de Controle de Lâmpadas Internas é de interface simples e eficaz. Mostra
para o usuário o status da lâmpada, considerando se ela está Ligada ou Desligada. É
composta por um label indicando o cômodo da casa, por exemplo: COZINHA, contém
tambem uma barra de status para mostrar o status da lâmpada e dois botões: ON para
acender a lâmpada e OFF para desligar a lâmpada.
Figura Controle de Lâmpadas Internas.
6.3.4 Controle de Lâmpadas Externas
34
A tela de Controle de Lâmpadas Externas é de interface simples e eficaz. Mostra
para o usuário o status da lâmpada, considerando se ela está Ligada ou Desligada. É
composta por um label indicando o cômodo da casa, por exemplo: GARAGEM, contém
tambem uma barra de status para mostrar o status da lâmpada e dois botões: ON para
acender a lâmpada e OFF para desligar a lâmpada.
Figura 2.5 Tela de Controle Lampadas Externas.
6.3.5 Tela de Sensores
35
Nesta tela contem os sensores do projeto, como por exemplo: sensor de umidade e
temperatura, sensor de alarme e motores.
O objetivo dessa tela é trazer ao usuário tudo que está relacionado á sensores,
tornando fácil o manuseio das operações dos mesmos.
Figura – Tela de Sensores.
36
6.3.6 Tela de Configuraçoes
A tela de configurações é composta por itens que faram algumas configurações no
sistema, como por exemplo: uma alteração de senha, configurações de ativação e
desativação de lâmpadas, configurações de alarmes, lista de comandos, etc.
Figura – Tela de Configuraçoes.
37
6.3.7 Tela de Alteraçao de Senha
Esta tela permite ao usuário a alteração da senha de login no sistema. Possui um
botão de “Confirmar” para salvar a nova senha ou “Cancelar” para cancelar a operação e
sair da tela.
Figura – Tela de alteração de senha.
38
6.4 TESTES
6.4.1 Teste de Lâmpadas
Primeiramente foi feito as ligações e conexões dos led’s, cabos e resistores
necessários no Arduino. Conectamos a placa Ethernet Shield no Arduino, ligamos os cabos
de rede na Shield e no roteador Wi-fi e executamos o comando para ligar o led no
navegador Mozilla Firefox. O resultado foi imediato, a lâmpada foi acesa em questões de
milésimos de segundo. O segundo teste foi feito através do aplicativo, conectamos o
aplicativo na rede, apertamos o botão de ligar e o resultado foi imediato. O status da
lâmpada demora cerca de 1,5 seg para mostrar na tela do aplicativo, pois o arduino recebe
o status e depois manda para o html, que em seguinda o aplicativo faz a leitura.
6.4.2 Teste de Sensores
O primeiro teste foi feito com um sensor DHT de umidade e temperatura. O sensor
DHT já vem com uma biblioteca que faz com que os dados de graus lidos não precisam ser
convertidos, eles já vem com a fração de medida exata para graus celsius, pois geralmente
outros sensores de umidade e temperatura, necessitam que sejam convertidos os dados
lidos em graus celsius. Os dados de medida são lidos pelo Arduino e mandados para o
html, que em seguida o aplicativo faz a leitura.
O segundo teste foi feito com um sensor de luminosidade, que quando ele
verificava a falta de luz, ele enviava um comando para acender a lâmpada ordenada.
O terceiro teste foi feito com um sensor PIR de movimento. Ele fica em estado
stand-by, esperando que seja ativado pelo aplicativo. Quando ativado, o sensor verifica o
movimento, caso ele detecta algum movimento, ele ativa o buzzer emitindo um som.
6.4.3 Teste de motor
O teste foi feito com um motor CC (corrente continua) cuja velocidade dele é alta e
para simular um portao eletrônico, precisou diminuir a tensão dele para chegar na
39
velocidade adequada, o teste do motor ainda esta em fase de andamento para eventuais
correções.
7 CONCLUSAO
Acredito que a automação residencial é algo do futuro, algo que facilite a vida das
pessoas em sua residência. Esse pequeno projeto é apenas uma pequena porção de uma
vasta área da automação.
Neste trabalho foi apresentado inicialmente um estudo sobre a utilidade do Arduino
na automação residencial, que juntamente com o termo “Internet das Coisas” facilita o
acesso remoto dos recursos. Falou-se também do Android, que disponibiliza diversas
utilidades e recursos para programadores que desejam engreçar na área, pois esse grande
sistema tem uma enorme intereção com vários dispositivos. Segundo a Google, mais de 1
milhão e 500 mil aparelhos com o sistema operacional são ativados todos os dias, sendo
utilizado por grandes fabricantes de celulares, como HTC, Samsung, Sony, Motorola e LG.
Falamos também sobre o AppInventor, onde se pode desenvolver um aplicativo para o
Sistema Android sem necessita de se ter um avançado conhecimento de programação.
O trabalho consistiu na criação de duas interfaces, sendo elas: hardware e software.
O hardware foi atribuído ao arduino, que por sua grande função dos pinos de entrada e
saída, fizeram comunicação com os demais componentes como: sensores, motores, etc. O
software foi atribuído ao aplicativo android, que possui uma interface ao usuário que pode
ser capaz de reconhecer as funções do sistema e interagir com o hardware.
Complementando esse trabalho, sugiro que outros alunos e interessados na área
faça proveito das informações contidas nesse pequeno projeto e possa evoluir e expandir
cada vez mais a idéia do uso do termo “Internet das Coisas” para trazer comodidade e
facilidade para as pessoas que necessitam de algo que auxiliam no seu cotidiano.
40
8 REFERENCIA BIBLIOGRAFICA
ARDUINO. Arduino. Disponivel no site oficial: http://www.arduino.cc/ Acesso em: 19 mai.2014
ARDUINO BRASIL. Arduino. Disponível no site oficial: http://www.arduino.com.br/blog/ Acesso em: 19 mai.2014
AURESIDE. Associação Brasileira de Automação Residencial – Sistemas Integrados. Disponível em:<http://www.aureside.org.br/temastec/default.asp?file=concbasicos.asp&menu=temas>
ECHELON CORPORATION. Press Release Echelon Corp. Criadora do Protocolo
LonWorks. Acesso em: 03 abr.2014
METCALFE, Bob – inventor da Ethernet , fundador da 3Com e colunista da InfoWorld.
Disponível em: http://www.infoworld.com/ Acesso em: 03 abr.2014
MICROSOFT, Sensores. Dísponível em: <http://windows.microsoft.com/pt-
GIARETTA, RAFAEL. Domótica – Disponível em: <http://portalarquitetonico.com.br/domotica/>jbr/windows7/what-is-a-sensor>
41
APÊNDICE I
ESTRUTURA DO PROTÓTIPO
Figura 2.6 Estrutura do Projeto
42