You are on page 1of 63

UNIVERSIDADE PAULISTA

JORDANY LUIZ CERMINARO SPACCA


JORDY LUIZ CERMINARO SPACCA
WANGLEY WILSON CARVALHO

AUTOMAÇÃO RESIDENCIAL POR MEIO DE DISPOSITIVOS MÓVEIS

SÃO JOSÉ DO RIO PRETO


2015
JORDANY LUIZ CERMINARO SPACCA
JORDY LUIZ CERMINARO SPACCA
WANGLEY WILSON CARVALHO

AUTOMAÇÃO RESIDENCIAL POR MEIO DE DISPOSITIVOS MÓVEIS

Trabalho de conclusão de
curso para obtenção do título
de graduação em Engenharia
de Automação e Controle
apresentado à Universidade
Paulista - UNIP.

Orientador: Prof. Orientador. Me.


André Luiz de Paula

SÃO JOSÉ DO RIO PRETO


2015
JORDANY LUIZ CERMINARO SPACCA
JORDY LUIZ CERMINARO SPACCA
WANGLEY WILSON CARVALHO

AUTOMAÇÃO RESIDENCIAL POR MEIO DE DISPOSITIVOS MÓVEIS

Trabalho de conclusão de
curso para obtenção do título
de graduação em Engenharia
de Automação e Controle
apresentado à Universidade
Paulista - UNIP.

Aprovado em:

BANCA EXAMINADORA

_______________________/__/___
Prof. Orientador Me. André Luiz Alexandre de Paula
Universidade Paulista – UNIP
_______________________/__/___
Prof. Me. Fernando Henrique Carrera
Universidade Paulista - UNIP
_______________________/__/___
Eng. Guilherme Molina Santana
Universidade Paulista - UNIP
RESUMO

Com os incríveis avanços tecnológicos ocorridos nas últimas décadas,


principalmente nas áreas da automação e da eletrônica, a domótica vem se
tornando um assunto cada vez mais discutido e concreto, deixando de ser
apenas tema de filmes de ficção científica. Somado a isto, temos a
popularização dos smartphones e tablets que integram diversas funções, como
o acesso à internet. Por conseguinte, torna-se inteiramente viável inseri-los no
sistema, em conjunto com o Arduino Mega como central de automação. Para
isso foi desenvolvido um aplicativo para aparelhos moveis que operam com
sistema operacional Android através do App Inventor, que é uma ferramenta
que possibilita a criação de aplicativos. Assim, torna-se possível automatizar
uma vasta gama de processos, entre os quais, aqueles empregados neste
trabalho são: elaboração de cenas pré-programadas para um ambiente,
acionamento remoto de aparelhos televisores, o monitoramento, por meio de
uma câmera IP, e a abertura do portão social e, por fim, um sistema de alarme
residencial. A grande vantagem deste tipo de sistema está na sua relação
custo-benefício devido ao baixo custo de seus integrantes, e na relativa
facilidade em executá-lo.

Palavras chave: Automação residencial, App Inventor, Arduino.


ABSTRACT

With the incredible technological advancements occurred in the last


decades, mainly in the areas of the automation and electronics, the domotic
comes becoming a more and more discussed and concrete subject, stopping
being only a subject of movies of scientific fiction. Added up to this, we have the
popularization of the smartphones and tablets what integrate several functions,
as the access to the Internet. Consequently, it is changed completely viable to
insert them in the system, together with Arduino Mega as central automation.
For this an applications program was developed for movable appliances that
operate with operating system Android through App Inventor, which is a tool
that makes possible the creation of applications programs. So, it is made
possibly to automate a vast scale of processes, between which, those
employees in this work are: preparation of scenes daily pay planned for an
environment, remote actuation of appliances television sets, the monitoring
through a camera IP, and the opening of the social gate and, finally, a system of
residential alarm. The great advantage of this type of system is in his relation
cost-benefit due to the low cost of his integrants, and in the relative easiness in
executing it.

Keywords: Home Automation, App Inventor, Arduino.


LISTA DE ILUSTRAÇÕES

FIGURA 1: EXEMPLO DE AUTOMAÇÃO RESIDENCIAL .............................. 10


FIGURA 2: DIAGRAMA DE BLOCOS DO SISTEMA ....................................... 12
FIGURA 3: ARDUÍNO MEGA ............................................................................ 13
FIGURA 4: ETHERNET SHIELD ....................................................................... 15
FIGURA 5: ETHERNET SHIELD CONECTADO AO ARDUÍNO ....................... 15
FIGURA 6: IDE DO ARDUÍNO .......................................................................... 17
FIGURA 7: APP INVENTOR.............................................................................. 18
FIGURA 8: COMUNICAÇÃO MESTRE/ESCRAVO .......................................... 19
FIGURA 9: PINOS DE COMUNICAÇÃO ........................................................... 20
FIGURA 10: DIMMER SHIELD .......................................................................... 23
FIGURA 11: SENSOR PIR ................................................................................ 24
FIGURA 12: ESQUEMA DE LIGAÇÃO DO SENSOR DE PRESENÇA ............ 25
FIGURA 13: CÂMERA IP .................................................................................. 25
FIGURA 14: SENSOR FOTORRECEPTOR INFRAVERMELHO ...................... 29
FIGURA 15: ESQUEMA DE ABERTURA DO PORTÃO ................................... 30
FIGURA 16: TELAS DO APLICATIVO .............................................................. 32
FIGURA 17: CONFECCÃO DO PROTÓTIPO ................................................... 33
FIGURA 18: COMPARATIVO DE CUSTOS ...................................................... 37
LISTA DE ABREVIATURAS E SIGLAS

AURESIDE Associação Brasileira de Automação Residencial


CLP Controlador Lógico Programável
DDNS Dynamic Domain Name System
DHCP Dynamic Host Configuration Protocol
DNS Domain Name System
GSM Global System for Mobile Communications
HTTP Hypertext Transfer Protocol
IDE Integrated Development Environment
IR Infrared
IP Internet Protocol
LED Light Emitting Diode
LAN Local Área Network
NA Normal Aberto
PIR Passive Infrared
RF Radio Frequência
SRAM Static Random Access Memory
SPI Serial Peripheral Interface
TCP/IP Transmission Control Protocol / IP Internet Protocol
SUMÁRIO

1- INTRODUÇÃO ......................................................................................... 09
2- EMBASAMENTO TEÓRICO .................................................................... 12
2.1 - ARDUINO ............................................................................................... 13
2.2 – ETHERNET SHIELD.............................................................................. 14
2.3 – INTERFACE DE PROGRAMAÇÃO ....................................................... 16
2.4 – APP INVENTOR .................................................................................... 17
2.5 – COMUNICAÇÃO SPI ............................................................................ 19
2.6 – ACESSO EXTERNO AO ARDUINO ...................................................... 20
2.6.1 – WEB SERVER .................................................................................... 20
2.6.2 – PILHA DE PROTOCOLOS TCP/IP ..................................................... 21
2.6.3 – INTRANET E INTERNET .................................................................... 21
2.6.4 – IP FIXO E IP DINÂMICO ..................................................................... 22
2.7 – DIMMER SHIELD .................................................................................. 23
2.8 – CONTROLE REMOTO DE APARELHOS TELEVISORES ................... 24
2.9 – SENSOR PIR ......................................................................................... 24
2.10 – CÂMERA IP ......................................................................................... 25
2.11 – REDUÇÃO DOS CUSTOS................................................................... 25
3 – METODOLOGIA ....................................................................................... 27
3.1 – CONFIGURAÇÃO DO ACESSO DO ARDUINO A REDE ..................... 27
3.2 – ELABORAÇÃO DE CENAS PRÉ-PROGRAMADAS ............................ 28
3.3 – ALARME RESIDENCIAL ...................................................................... 28
3.4 – CONTROLE DE APARELHOS TELEVISORES .................................... 29
3.5 – MONITORAMENTO E ABERTURA DO PORTÃO SOCIAL .................. 30
3.6 – DESENVOLVIMENTO DO APLICATIVO ANDROID ............................. 31
3.7 – DESENVOLVIMENTO DO PROTÓTIPO ............................................... 33
3.8 – CUSTO DO PROTÓTIPO ...................................................................... 34
4 – RESULTADOS ......................................................................................... 35
4.1 – COMPARATIVO DE PREÇOS .............................................................. 37
5 - CONCLUSÃO............................................................................................ 39
6 - TRABALHOS FUTUROS .......................................................................... 40
REFERÊNCIAS BIBLIOGRÁFICAS .............................................................. 41
APÊNDICE A - CÓDIGO ARDUINO .............................................................. 45
APÊNDICE B – CÓDIGO ARDUINO “SINAL TV” .......................................... 51
APÊNDICE C – DIAGRAMA DE BLOCOS APP INVENTOR ......................... 53
APÊNDICE D – ESQUEMA ELÉTRICO DO PROTÓTIPO ............................. 58
9

1. INTRODUÇÃO

A domótica, usualmente conhecida como automação residencial, consiste no


emprego das inovações tecnológicas para satisfazer as necessidades e o conforto
dos integrantes de determinada habitação, de modo automatizado, ou seja, sem que
ocorra a necessidade de ação humana na execução das tarefas, sendo esta voltada
apenas à parte de comando (EUZÉBIO, 2011, p. 15).
Segundo Bortoluzzi (2013), a palavra domótica tem origem na junção da
expressão latina "Domus" que significa "Casa" e a palavra "Robótica", que é a
automatização e controle de qualquer processo.
Tem como principal origem a automação industrial, enriquecida com o
surgimento dos CLPs (Controladores Lógicos Programáveis) durante a década de
60. Desse modo, a domótica permite ao usuário controlar dispositivos eletrônicos de
sua residência através de interfaces de controle (EUZÉBIO, 2011, p. 15).
Segundo Bortoluzzi (2013) "A década de 70 pode ser considerada o marco
inicial da automação residencial, quando foram lançados nos EUA os primeiros
módulos inteligentes chamados X-10". Estes protocolos foram desenvolvidos para
controle remoto de dispositivos utilizando a própria rede elétrica como canal de
comunicação.
Já na década seguinte, ocorreu à popularização dos computadores pessoais
(PCs), que, apesar de poderem ser aplicados como centros de automação tinham a
grande desvantagem de ficar sempre ligado, tornando o sistema inviável devido a
seu elevado consumo. Com isso, começou-se a investir em dispositivos embarcados
que, através da utilização de microprocessadores e microcontroladores substituiriam
os PCs. Desde então, segundo Cruz (2009), processos de monitoramento remotos
foram surgindo por meio da incorporação de alguns meios de comunicação ao
sistema embarcado, principalmente com o advento da internet de banda larga que
passou a ser altamente explorada pela domótica, sendo possível assim controlar a
residência através de uma Web Page.
Mais adiante, com a popularização dos smartphones, estes, em substituição a
convencional Web Page tornaram-se as ferramentas para controle dos processos
automatizados, gerando assim, maior conforto para os usuários.
10

Uma das grandes vantagens, segundo Beghini (2013, p.17), desse sistema
que integra diferentes periféricos com a central de automação é o valor agregado
devido à boa relação custo-benefício, visto que, é possível centralizar as operações
lógicas em uma única plataforma (controlador) reduzindo os custos, e acrescentar
inúmeras outras aplicações, aprimorando assim às funções do controlador.
Com isso, o sistema se torna cada vez mais útil ao usuário devido ao
fato de o mesmo atender de maneira mais eficiente as suas necessidades. A
domótica abrange diversos setores e equipamentos residenciais como ilustra a
Figura 1 abaixo:

Figura 1: Exemplo de automação residencial

Fonte: Google Imagens, 2015.

A área está em crescente evolução nos últimos anos, amparada pelo avanço
tecnológico ocorridos com a inserção de produtos da Apple e Google. (Aureside).
Além disso, em pesquisa realizada pela Parks Associate (2014) os varejistas estão
11

se preparando para comercializar dispositivos domésticos inteligentes nas


suas prateleiras, itens tais como termômetros Nest, lâmpadas Hue da Philips,
fechaduras inteligentes e outros produtos nesta tendência.
Segundo a Aureside (2014), 37% das famílias norte-americanas planejam
adquirir um ou mais dispositivos de automação residencial no próximo ano.
Outrossim, segundo Pradella (2013) o barateamento dos custos é um fator
crucial para a evolução da área. Enquanto há cinco anos um projeto de automação
residencial custava cerca R$ 50.000, hoje é possível aderir ao universo da
automação por menos de R$ 1.000. Tal efeito se deve a evolução natural das
tecnologias, provocando uma reação em cadeia em todo o setor, fazendo surgir
soluções mais personalizadas e, ao mesmo tempo, melhores e mais baratas.
Outro motivo formidável que contribui para isto foi o surgimento de
tecnologias wireless. Com base nisto, já não são mais necessárias grandes reformas
na infraestrutura da residência, o que gerava custos extras (PRADELLA, 2013).
O intuito desse trabalho foi à busca de um sistema inteligente de automação
residencial que integrasse alguns componentes de forma usual, com a utilização de
componentes de custo menos elevado se comparado a outros componentes
utilizados na automação residencial atualmente. Este sistema possui como central
de automação o Arduino e é acessado por meio de dispositivos móveis via web.
Neste contexto, a proposta deste projeto é o monitoramento e o controle do
portão social, o controle dos comandos de televisores, o alarme e o controle de
luminosidade do ambiente através do smartphone.
O monitoramento do portão é realizado através de uma câmera IP, no qual, o
usuário por meio das imagens obtidas pode optar em abri-lo ou não. Em função
disso, o usuário tem maior segurança e praticidade, visto que, não exige seu
deslocamento até o interfone.
O controle de televisores pelo smartphone ocorre em substituição ao controle
remoto convencional, onde, apenas as funções principais são comandadas pelo
aparelho. Sendo assim, é possível ao usuário realizar diversas tarefas dotado
apenas do celular, sem a necessidade de outros equipamentos.
O sistema de alarme objetiva a segurança do usuário pelo fato do
crescimento das ocorrências de violência e invasão domiciliar nos últimos anos. Vale
ressaltar que no mercado existem inúmeras empresas encarregadas do
12

monitoramento, porém, este é de baixo custo e interage com os outros integrantes


do conjunto.
A última aplicação é o controle de luminosidade de um ambiente, que no caso
é a sala de estar. Por conseguinte, o usuário pode escolher entre três cenários
distintos de acordo com suas necessidades, sendo estes: cinema, leitura e festa.
13

2. EMBASAMENTO TEÓRICO

Neste capitulo é apresentado todo o embasamento teórico no qual foi


fundamentado esta monografia. Ademais, são descritos os processos automatizados
e quais os equipamentos utilizados para realizá-lo. Neste capítulo também é
explanado as ferramentas computacionais utilizadas para o desenvolvimento do
projeto. A Figura 2 abaixo ilustra o sistema completo proposto.

Figura 2: Diagrama de blocos do sistema

Fonte: Acervo pessoal, 2015.

2.1. Arduino

Segundo McRoberts (2011, p.22) “O Arduino é o que chamamos de


plataforma de computação física ou embarcada, ou seja, um sistema que pode
interagir com seu ambiente por meio de hardware e software“.
14

Ainda segundo McRoberts (2011, p.22) “O Arduino pode ser utilizado para
desenvolver objetos interativos independentes, ou pode ser conectado a um
computador, a uma rede, ou até mesmo à Internet para recuperar e enviar dados do
Arduino e atuar sobre eles”.
Portanto, o Arduino tem função primordial para a consolidação do projeto, e
atua como principal agente do mesmo. Seu papel é como central de automação,
realizando as operações lógicas emitidas pelo usuário através do IDE.
A placa do Arduino é composta de um microprocessador Atmel AVR, um
cristal ou oscilador (relógio simples que envia pulsos de tempo em uma frequência
especificada para permitir sua operação na velocidade correta) e um regulador linear
de cinco volts (MCROBERTS, 2011, p.23). A Figura 3 abaixo ilustra a plataforma
embarcada Arduino Mega.

Figura 3: Arduino Mega

Fonte: Arduino e Cia, 2013.

O Arduino surgiu em 2005 no Interaction Design Institute na cidade de Ivrea,


na Itália, em 2005. Surgiu da procura do professor Massimo Banzi um método mais
barato e fácil para seus estudantes aprenderem a trabalhar com tecnologia, uma vez
que os produtos existentes eram relativamente caros e complexos. (EVANS. et.al,
2013, p.25)
15

Ainda segundo Evans.et.al, (2013, p.25) Massimo Banzi em parceria com


David Cuartielles, um pesquisador visitante da Universidade de Malmö, na Suécia,
que buscava um método semelhante, criaram o microcontrolador Arduino.
No projeto, devido a sua quantidade elevada de portas digitais e analógicas,
foi utilizado o Arduino Mega.
As características do sistema são as seguintes, seguindo o site oficial da
placa (ARDUINO, 2013).

-Microcontrolador: ATmega2560
-Tensão de operação: 5V
-Tensão de entrada (recomendada): 7-12V
-Tensão de entrada (limites): 6-20V
-Pinos de entrada/saída digitais: 54 (15 podem fornecer saída PWM )
-Pinos de entradas analógicas: 16
-Corrente DC por pino de E/S: 20 mA
-Corrente DC por pino de 3.3V: 50mA
-Memória Flash: 256 KB
-SRAM: 8 KB
-EEPROM: 4 KB
-Frequência de clock: 16 MHz

2.2. Ethernet Shield

Os shields (escudos) são placas de circuitos que são encaixados à placa


principal para adicionar alguma função específica ao conjunto, podendo este, ser por
exemplo, receptores GPS, displays de LCD, módulos de Ethernet entre outros
(MCROBERTS, 2011, p.24).
Portanto, o Arduino Ethernet Shield possibilita a conexão à internet pelo
Arduino. Ele é fundamentado no chip Wiznet W5100 que fornece uma biblioteca de
network (IP) que suporta tanto TCP como UDP. Até quatro conexões de socket são
permitidas simultaneamente (BEGHINI, 2013, p.23). A Figura 4 abaixo ilustra o
Ethernet Shield.
16

Figura 4: Ethernet shield

Fonte: Multilógica, 2015.

O Ethernet Shield, portanto, é uma placa de circuito impresso composto por


um modulo Ethernet, que, sendo compatível com o Arduino Uno e Mega realiza a
conexão do microcontrolador com a internet através de um cabo de rede com
conector RJ 45. Segundo o site oficial (ARDUINO-2, 2013), a forma de comunicação
com a placa principal é feita utilizando o barramento SPI (Serial Peripheral
Interface), através dos pinos 10, 11, 12 e 13. No pino 10 é feita a seleção do W5100.
Ele fornece o protocolo TCP/IP para o Arduino na rede, possibilitando toda a
comunicação com outro dispositivo via internet. A Figura 5 abaixo ilustra o shield
conectado ao Arduino (MULTILOGICA, 2015).

Figura 5: Ethernet Shield conectado ao Arduino

Fonte: Arduino e cia, 2013.

Na parte superior do shields encontram-se os leds de status da placa. Estes


mostram o funcionamento do modulo e o status de conexão à rede quando o a placa
17

encontra-se devidamente encaixada ao Arduino. A Tabela 1 abaixo demonstra a


denominação dos leds no shield e o que estes indicam (MULTILOGICA, 2015).

Tabela 1: Leds indicativos do shield

LED INDICAÇÃO
TX TRANSMISSÃO
RX RECEPÇÃO
COLL COLISÃO
FULLD MODELO DE CONEXÃO FULL DUPLEX
100M CONEXÃO 100 MBITES
LINK CONEXÃO ESTABELECIDA
PWR MÓDULO LIGADO
Fonte: Multilogica, 2015.

Abaixo segue uma simples explicação dos itens citados na tabela acima:

 PWR: indica que a placa está ligada


 LINK: indica a presença de uma rede e pisca quando o shield transmite ou
recebe informações
 FULLD: indica que a conexão de rede é full duplex
 100M: indica a presença de uma conexão de rede de 100 Mb/s (em oposição
a 10 Mb/s)
 RX: pisca quando o shield recebe informações
 TX: pisca quando o shield transmite informações
 COLL: pisca quando colisões na rede são detectadas

2.3. Interface de programação

A programação e comunicação com o microcontrolador Arduino é realizada


através de um software open source também denominado IDE (do inglês Integrated
Development Environment ou Ambiente Integrado de Desenvolvimento). Através
deste é possível escrever códigos de comandos, compila-lo e realizar o upload para
o microprocessador AtMega328. A conexão é feita do computador com o Arduino
18

via USB (BEGHINI, 2013). A interface disponível pode ser verificada na Figura 6, do
mesmo modo como alguns comandos:

Figura 6: IDE do Arduino

Fonte: Google Imagens, 2015.

2.4. App Inventor

O App Inventor é um software para criação de aplicativos para dispositivos


móveis que dispõe de sistema operacional Android, através de uma interface gráfica
de programação (APPINVENTOR, 2013).
19

É importante ressaltar também que a ferramenta "MIT App Inventor" é uma


plataforma utilizada via navegador de internet com suporte para os navegadores
"Mozilla Firefox" e "Google Chrome" (APPINVENTOR, 2013).
O endereço de URL utilizado para iniciar sua utilização é o
http://appinventor.mit.edu/explore/, sendo necessário criar uma conta do Google.
A interface emprega a biblioteca Java de código aberto Open Blocks para
concepção de um ambiente visual de programação. O compilador que traduz a
linguagem de blocos visual para aplicação em Android utiliza a estrutura de
linguagem Kawa (linguagem de programação para plataforma Java)
(APPINVENTOR, 2013). A Figura 7 abaixo mostra a interface da página inicial do
App Inventor.

Figura 7: App Inventor

Fonte: AppInventor, 2015.


20

2.5. Comunicação SPI

Segundo o site oficial do Arduino “um Serial Peripheral Interface (SPI) é um


protocolo de dados seriais síncronos, utilizado em microcontroladores para
comunicação entre o microcontrolador e um ou mais periféricos. Também pode ser
utilizado entre dois microcontroladores”.
A comunicação serial entre os equipamentos eletrônicos se tornou de extrema
importância devido ao fato de que estes vêm agregando cada vez mais funções,
exigindo a utilização de diversos circuitos integrados. Contudo, é impossível
estender longos barramentos de comunicação paralelos, pois tornariam as placas de
circuito impresso caras e muito grandes (SACCO, 2014).
Ainda segundo Sacco (2014), os métodos de comunicação podem ser
paralelos ou seriais, sendo que o último pode ser divido em síncronos e assíncronos.
Na comunicação serial síncrona, é imprescindível compreender e identificar a
relação Mestre-Escravo. O gerador do sinal de sincronismo, que neste caso é o
Arduino é definido como o Mestre (Master) da comunicação e os dispositivos que
utilizam do sinal de sincronismo gerado, ou seja, os periféricos são definidos como
Escravo (Slave) (SACCO, 2014). A Figura 8 abaixo ilustra o esquema de
comunicação Mestre/Escravo.

Figura 8: Comunicação mestre/escravo

Fonte: Embarcados, 2014.

Segundo Sacco (2014), os pinos básicos de comunicação entre dispositivos


SPI e o esquema padrão de ligação são dados conforme abaixo:
21

 MISO (Master IN Slave OUT) - Dados do Slave para Master;


 MOSI (Master OUT Slave IN) - Dados do Master para Slave;
 SCK (Serial Clock) - Clock de sincronização para transmissão de dados entre o
Master e Slave;
 SS (Slave Select) - Seleciona qual Slave receberá os dados.

A Figura 9 abaixo mostra os pinos de comunicação e os esquemas de ligação.

Figura 9: Pinos de comunicação

Fonte: Embarcados, 2014.

2.6. Acesso externo ao Arduino

2.6.1. Web Server

Para que ocorra a troca de informações entre o usuário e o Arduino pela


internet é indispensável à utilização de uma interface que possibilite essa
transferência de dados. Sendo assim, foi desenvolvida, por intermédio da
programação do microcontrolador, uma Web Page. Posto isto, a Web Page ficará
hospedada na memória do Arduino. Deste modo, o Arduino terá, neste caso, a
função de Web Server (Servidor Web), atendendo aos pedidos solicitados pelo
cliente (Aplicativo).
22

É possível acessar a página hospedada no Arduino através de um navegador,


como o Internet Explorer e o Google Chrome, através do número de IP que foi
designado ao Arduino na sua programação.

2.6.2. Pilha de protocolos TCP/IP

O TCP/IP é um conjunto de protocolos integrados que é responsável pelo


envio e recebimento de dados via internet. O TCP/IP é dividido em 4 camadas
distintas, com o objetivo de garantir a integridade dos dados que trafegam pela rede
(TECMUNDO, 2013). As camadas são apresentadas abaixo:
Camada de Aplicação: Trata-se da camada que é utilizada para enviar ou receber
informações de outros programas através da rede, para que, após isso possam ser
enviados para a camada de transporte.
Camada de transporte: Divide os dados recebidos da camada anterior em blocos
de dados, também conhecidos como pacotes.
Camada de rede: Após a divisão, os dados empacotados são recebidos e anexados
ao endereço virtual (IP) do dispositivo remetente e do destinatário.
Camada de Interface: Especifica os detalhes de como os dados são enviados
fisicamente pela rede. Os protocolos utilizados nessa camada dependem do tipo de
rede que está sendo utilizada. O tipo mais comum utilizado atualmente é o Ethernet.

2.6.3. Intranet e Internet

Para comunicar externamente o Arduino é essencial definir os conceitos de


Intranet e Internet. Segundo Muller (2011) a Intranet é um espaço (rede) restrito a
determinado público utilizado para compartilhamento de informações restritas. Pode
ser usada em empresas e em residências.
Em contrapartida, a Internet é a rede mundial de computadores, ou seja, um
conglomerado de redes locais. Não possui acesso restrito e é possível acessá-la
externamente de qualquer lugar do mundo (MULLER, 2011).
O acesso pela Intranet ocorre a partir de um computador ou dispositivo móvel
conecta-se ao roteador, que por sua vez envia o comando ao Arduino.
23

Já pela Internet é necessário saber qual o endereço IP está o roteador e o


servidor ou domínio ligado a ele na rede para conseguir acessar o roteador para
enviar os comandos dados ao Arduino.

2.6.4. IP fixo e IP dinâmico

Segundo a Tecmundo (2009), todo computador, conectado através de uma


rede a outros computadores, possui um endereço IP, que é definido como um
conjunto de números que o identifica dentro da rede. Esse endereço IP é fornecido
pelo roteador, podendo ser dinâmico ou fixo.
O IP fixo é definido manualmente, sendo invariável com o tempo
(TECMUNDO, 2009). Por conseguinte, o acesso externo, via internet, aos dados
ocorre mais facilmente, sendo necessária apenas a liberação de uma porta para
acessá-los.
Entretanto, usualmente os clientes de provedores possuem IP dinâmico,
sendo o IP fixo exclusivo de entidades que necessitam deste fator. Com o IP
dinâmico, onde o número do IP do cliente é se altera cada vez que o roteador
reinicia, o acesso externo se torna mais complexo devido ao fato de o servidor DNS
(Domain Name System) focaliza um IP específico, não sendo válido quando o
mesmo se altera (BEGHINI, 2013, p.27).
Para resolver este problema, segundo Beghini (2013, p.27), é necessário o
uso do servidor DDNS (Dynamic Domains Name System). O servidor DDNS, através
do servidor DHCP (Dynamic Host Configuration Protocol), permite o acesso externo
ao Arduino.
O DHCP é configurado no roteador de modo a fornecer um IP específico para
uma rede específica, onde com o auxílio do site no-ip é possível alocar servidores
DDNS gratuitamente, de modo que, ao acessar o endereço criado no site pelo
navegador, os dados serão redirecionados ao domínio gerado pela rede doméstica
possibilitando desta forma o acesso ao Arduino (BEGHINI, 2013, p.27).
Contudo, devido à restrição do acesso a configuração do roteador utilizado,
não foi possível o acesso pela internet ao Arduino, sendo assim, só é possível
acessá-lo na rede local (LAN), com o dispositivo conectado na mesma rede do
microprocessador.
24

2.7. Dimmer Shield

Segundo o Instituto Newton Braga (2013), dimmers são circuitos que,


intercalados com cargas na rede de energia elétrica, permitem controlar a sua
potência.
Ainda segundo o Instituto Newton Braga (2013), os dimmers podem controlar
o brilho quando ligados em série com lâmpadas incandescentes, a velocidade de
motores quando ligado em série com aparelhos que utilizam motores universais e a
temperatura de elementos de aquecimento como chuveiros e torneiras elétricas.
O Instituto Newton Braga (2013) afirma ainda que os dimmers não podem ser
utilizados no controle de potência de lâmpadas eletrônicas, fluorescentes ou outros
equipamentos eletrônicos em geral. O TRIAC é o elemento principal capaz de
conduzir a corrente principal da carga. O controle da potência é feito, variando-se o
ponto de disparo do TRIAC em cada semiciclo da alimentação de corrente alternada.
Segundo Pereira (2014), o Dimmer Shield tem a mesma função de um
dimmer convencional, porém, o controle da potência é através da lógica de
programação do Arduino. Seu princípio de funcionamento é detectar o ponto zero
da onda senoidal da rede elétrica e ativar o TRIAC.
Com a detecção do ponto zero, o pino D2 do Dimmer Shield ficará em nível
alto (5 volts). De acordo com a programação, a porta digital D3 (pino D3) do
microcontrolador é colocado em nível alto (ativado) para disparar o TRIAC por um
determinado tempo, e desativado (nível baixo – 0 volts) posteriormente. Reativando
novamente quando detecta o ponto zero (PEREIRA, 2014). A Figura 10 abaixo
ilustra o Dimmer Shield.

Figura 10: Dimmer Shield

Fonte: Labdegaragem, 2014.


25

2.8. Controle remoto de aparelhos televisores

O controle convencional do aparelho televisor envia mensagens codificadas


por meio da luz infravermelha para o aparelho. Essa luz, ao piscar quando o botão é
pressionado, emite pulsos longos e curtos que compõem um código binário,
convertido em comandos pelo aparelho ao qual se destina. Um microprocessador
gera um código para cada comando do controle e aciona um gerador de frequências
que envia os sinais para o equipamento controlado. Outro microprocessador, que
recebe estes códigos é responsável por decodificar esse sinal e executar o
respectivo comando (MUNDO ESTRANHO, 2015).
O sinal é composto por três códigos binários enviados simultaneamente a fim
de evitar interferências de outros aparelhos: o código da tecla pressionada, esse
mesmo código invertido e o código do fabricante (MUNDO ESTRANHO, 2015).

2.9. Sensor PIR

Segundo Beghini (2013, p.34) um Sensor PIR (Passive Infrared Sensor) é um


sensor de movimento que detecta níveis de radiação infravermelha presentes em
seu campo de atuação.
Para isso, o sensor possui um circuito integrado que amplifica os sinais
analógicos de detecção e com isso, modula um sinal de saída em nível digital que,
ao detectar presença mantém esse sinal em nível lógico alto. (BEGHINI, 2013).
Segundo o Website da fabricante (PW ELETRÔNICA), o modelo utilizado
possui uma lente com abrangência de 180° em um raio de 8m. A Figura 11 abaixo
ilustra um sensor PIR.

Figura 11: Sensor PIR

Fonte: Google Imagens, 2015.

A Figura 12 abaixo ilustra o esquema de ligação do sensor de presença.


26

Figura 12: Esquema de ligação do sensor de presença.

Fonte: Google Imagens, 2015.

2.10. Câmera IP

Segundo Beghini (2013, p.47) uma câmera IP é um dispositivo que,


conectada por um cabo de rede ou via Wireless, recebe e transmite imagens pela
internet. Para isso, ela possui um IP na rede, que pode ser obtido automaticamente
ou pode ser configurado manualmente. A Figura 13 abaixo ilustra uma câmera IP.

Figura 13: Câmera IP

Fonte: Google Imagens, 2015.

2.11. Redução dos custos

Segundo Pradella (2013), a evolução tecnológica dos últimos anos ascendeu


uma vasta diversidade de soluções que propiciaram uma expressiva redução de
custos na automação residencial. Há cinco anos, não se pensava em automatizar
uma residência com menos de cinquenta mil reais e, atualmente, com o advento da
tecnologia sem fio fomentando o mercado é possível automatizar com menos de mil
27

reais utilizando controles universais, com a possibilidade de automatizar, sem a


necessidade de um instalador, a iluminação ambiente e sistemas de áudio e vídeo.
Porém, a automação ainda é vista como um artigo de luxo para as classes
mais baixas. A classe média possui grande potencial de consumo e pode conquistar
uma parcela do mercado em alguns anos. A redução dos custos modificou a
maneira como a classe média observa a automação residencial, antes vistos como
artigos dispensáveis e exclusivos de milionários, como itens que trazem mais
conforto e economia (AURESIDE, 2011).

A utilização de sistemas que o usuário já possui componentes possibilita uma


redução ainda maior dos custos da automação. A utilização do smartphone do
usuário e de sua rede local é possível substituir a instalação de painéis e sistemas
de integração que ocasionariam uma modificação na estrutura da residência,
gerando custos. Destarte, foi possível eliminar custos com equipamentos de
interface de comando e sistema de comunicação.

O emprego do App inventor, que é uma ferramenta gratuita, possibilita a


criação de aplicativos de acordo com a necessidade do cliente, com designer prático
e intuitivo, sem gerar mais custos ao cliente. Além de que, possibilita a expansão do
sistema de maneira simples e funcional.

O Arduino possibilitou uma redução expressiva nos custos do projeto. Pela


sua característica de código aberto, foram desenvolvidas diversas placas similares e
com um preço reduzido comparado a placa original e com outros
microcontroladores. O Arduino Mega possui várias portas de saídas e entradas
possibilitando o controle de diversos processos com apenas uma placa.

Ademais, o Arduino permite a centralização da automação, em contrapartida


aos comumente encontrados no mercado, que são disponibilizados em módulos
individuais. Como arquétipo temos os controles remotos via WI-FI que controlam
equipamentos IR ou RF. Para adquirir um desses módulos, limitados a apenas um
ambiente, é necessário desembolsar em média duzentos reais. Ao utilizar o Arduino
é mandatório apenas o emprego de um receptor IR e um emissor IR para cada
aparelho controlado. O custo de cada emissor e receptor não ultrapassa dez reais.

Neste contexto, um módulo Insteon 2245-222 HUB que permite controlar a


luminosidade de lâmpadas por meio de smartphones, custa em média duzentos e
28

vinte reais. Como dito anteriormente, ao aplicar o Arduino, é imprescindível somente


a aquisição de um dimmer shield com custo de cinquenta reais.
29

3. METODOLOGIA

O procedimento de automação ocorre em duas etapas. Primeiramente, com a


devida programação no App Inventor, quando o usuário efetua algum comando,
como ao pressionar um botão, o aplicativo envia um texto escolhido pelo
programador para o servidor Web através da requisição HTTP. Esse endereço é
acessado através do número IP do Arduino e da porta TCP onde ele se encontra.
A segunda etapa consiste na leitura pelo Arduino desse texto alocado na Web
Page. Com base nisso é realizado determinado comando pré-programado no código
do microcontrolador.
Devido a algumas dificuldades que serão detalhadas na seção 4, o projeto foi
montado para operar apenas em rede local, não sendo possível seu acesso à
Internet.

3.1. Configuração do Acesso do Arduino à Rede

Inicialmente deve-se conectar o Ethernet Shield ao Arduino encaixando- o


corretamente sobre o controlador. Após isso, basta conectar o cabo de rede com
conector RJ 45 ligando o shield ao roteador. Deve-se atentar ao fato de conectar o
cabo no roteador em uma das portas LAN do mesmo, deixando assim, a porta WAN
sem nenhuma conexão.
Em seguida, é atribuído ao sistema controlador um endereço IP e uma porta
serial. O endereço escolhido - que é 192.168.0.103 e a porta 8090 - é inserido na
programação do Arduino formando um endereço (192.168.0.103:8090) que
possibilita a requisição de dados ao servidor.
Devido ao fato de o Arduino atuar como servidor, todas as requisições são
processadas pelo Atmega 2560, que gera uma página web como interface de
comunicação entre o servidor e o cliente.
Sendo assim, todas as informações necessárias para a criação desta página
são descritas por comandos na programação do Arduino. Esta página HTML pode
ser simples ou mais detalhada, porém, como o foco não está na página, mas no
aplicativo, esta não foi desenvolvida para interface com o usuário.
30

Vale ressaltar que a página pode ser acessada por qualquer navegador de
internet apenas inserindo o endereço citado anteriormente.

3.2. Elaboração de cenas pré-programadas

A partir do aplicativo o usuário opta entre quatro cenas diferentes conforme a


ocasião, sendo estas:
 Cinema: Nesta opção, o aplicativo envia para a página web o texto “Filme”.
Deste modo, o Dimmer Shield atua no controle do brilho da lâmpada,
reduzindo a potência em 75%;
 Leitura: Nesta opção, o aplicativo envia o texto “Leitura” reduzindo em
12,5% a potência da lâmpada;
 Festa: Nesta opção, será emitido o texto “Festa”. Assim, a potência da
lâmpada é reduzida em 100 % e o globo luminoso é acionado com o
auxílio de um relé.
 Sono: Nesta opção, a lâmpada é apagada e o globo, se estiver acionado,
é desativado.

O controle da lâmpada é feito pelo Dimmer Shield conforme a programação


do Arduino. Por se tratar de um Shield, o Dimmer Shield é encaixado facilmente
sobre o Arduino assim como o Ethernet Shield. A lâmpada é inserida no conector
LOAD e a alimentação da mesma, no conector VAC.

3.3. Alarme Residencial

Na tela do aplicativo, o usuário tem a opção de escolher ente Ativar e


Desativar o Alarme. Com a Ativação, o Arduino atua colocando a porta 5 em nível
logico alto e acionando um relé. O relé, integrado em um modulo relé de 4 canais,
atua energizando o sensor PIR com 127VAC.
Com o acionamento do sensor PIR, este detecta a presença de um corpo
como já detalhado na seção 2.6.3, enviando um sinal de 127VAC que aciona uma
lâmpada em simulação a uma sirene. Em paralelo a lâmpada encontra-se um relé de
interface, que ao ser acionado envia ao Arduino um sinal 5VDC.
31

Ao receber o sinal, o Arduino imprime na página web o alerta “


AlarmeDisparado”. O aplicativo, ao ler a frase na página, realizará uma ligação
telefônica ao celular do usuário alertando-o da presença detectada. O Alarme, ao ser
ativado, fica acionado por 30 segundos.

3.4. Controle do Aparelho Televisor

Inicialmente deve-se montar o circuito receptor para captar os códigos do


controle do aparelho televisor. O receptor infravermelho possui 3 terminais conforme
ilustra a Figura 14 abaixo.

Figura 14: Sensor Fotorreceptor Infravermelho.

Fonte: Google Imagens, 2015.

Ao direcionar o controle do aparelho para o receptor e pressionar qualquer


botão, o código referente ao botão é impresso no Serial Monitor. Em posse dos
códigos, é possível inseri-los no código principal do Arduino, de onde, através do
emissor infravermelho, será enviado ao aparelho televisor, controlando o mesmo. O
emissor infravermelho possui os mesmos terminais do receptor, entretanto, o pino de
sinal deve ser obrigatoriamente conectado ao pino 9 do Arduino Mega, conforme
programação da própria Biblioteca IR não sendo possível alterá-lo para qualquer
outro pino.

3.5. Monitoramento e Abertura do Portão Social

A abertura do portão social é realizada através de um comando no aplicativo.


Quando o usuário opta por abrir o portão, o texto “AbrirPortão” é enviado a Página
32

Web e, o Arduino, ao ler esse texto, aciona o relê responsável por acionar a
fechadura. A Figura 15 abaixo ilustra o esquema de ligação.

Figura 15: Esquema ligação para abertura portão

Fonte: Acervo pessoal, 2015.

É importante ressaltar que o contato NA do relé atua em paralelo com a


botoeira padrão em um sistema de interfone. Isto evita a necessidade de alterações
no conjunto interfone-fechadura e permite ao usuário optar entre abrir o portão pelo
modelo convencional ou pelo aplicativo.

Entretanto, no protótipo, a fim de simular a fonte padrão da fechadura, foi


utilizado um transformador 127 V/ 12 V para acionar a bobina.
Quanto ao monitoramento, este ocorre através da câmera IP. Ao pressionar o
botão “Câmera” o aplicativo, por meio do comando Activity Starter do App Inventor,
inicia a execução do aplicativo Plug and Play. Tal aplicativo advém do CD de
instalação que acompanha a câmera. Ao iniciar o aplicativo, este detecta as
câmeras que estão na rede – podendo ser utilizada diversas câmeras – e permite ao
usuário, além de visualizar as imagens, controlar a rotação da câmera em 360° nos
eixos vertical e horizontal.
Para utilizar a câmera sem o uso do cabo de rede, ou seja, através da rede
sem fio, é necessário configurar a câmera colocando os caracteres de usuário e a
senha.
33

3.6. Desenvolvimento do Aplicativo Android

Para que ocorra a execução dos comandos pelo usuário, é necessário a


criação de uma interface, no caso, o aplicativo desenvolvido através da ferramenta
App Inventor, descrito na seção 2.3. O aplicativo foi programado para enviar dados
para a página criada pelo Arduino através do número IP e, através dessa página
enviar e receber dados do Arduino.
O nome escolhido para o aplicativo foi “ automacao”, e este pode ser
encontrado no menu “ Aplic “ do smartphone.
Foram desenvolvidas 4 telas de interação com o usuário:

1. Tela Screen 1: Tela inicial onde o usuário deve cadastrar um nome de usuário
e uma senha. E munido destes dados, o mesmo deve realizar o login para ter
o acesso ao aplicativo. Na primeira vez que o usuário utilizar o aplicativo ele
deverá cadastrar um nome de usuário e uma senha. Esses dados serão
salvos no banco de dados do aplicativo onde, desta forma, todas as vezes
que o usuário acessar o aplicativo ele deverá digitar o nome de usuário e a
senha salvas.
2. Tela Menu: Nesta tela encontram-se os botões correspondentes aos
comandos e os botões que vão abrir outras telas do aplicativo. Na tela menu
o usuário tem acesso à tela do controle da televisão, da iluminação, poderá
abrir o portão através do botão “Abrir portão”, poderá acessar as imagens da
câmera pelo botão “Câmera” e poderá ativar ou desativar alarme;
3. Tela Iluminação: Tela para controle do dimmer. Foram confeccionados os
botões “Leitura”, “Filme”, “Sono” e “Festa”;
4. Tela Televisão: Tela que exibe os botões para o controle do aparelho
Televisor. Foram desenvolvidos o Botão “Power”, “Mais Volume”, “Menos
Volume”, Mais Canal”, “Menos Canal”, “Record”, “Band”, “SBT” e “Globo”.
Cada botão, ao ser pressionado, enviará através do emissor infravermelho o
código correspondente que foi captado anteriormente pelo receptor
infravermelho.

A Figura 16 abaixo ilustra as telas desenvolvidas no App Inventor.


34

Figura 16: Telas do aplicativo desenvolvido.

Fonte: Acervo pessoal, 2015.

Os principais comandos utilizados são:

Notifier: Os blocos do componente Notifier foram utilizados com a finalidade


de notificar o usuário na Tela Screen 1 alertando-o para inserir o nome de usuário e
a senha ou, se o mesmo digitou incorretamente os dados salvos. Os blocos também
foram utilizados para alertar o usuário quando o mesmo abre o portão ou ativa e
desativa o alarme.

Tiny DB: Utilizado para armazenar os dados de nome de usuário e senha na


primeira vez que o usuário acessa o aplicativo. Os dados ficam salvos no próprio
aplicativo.

Web: O componente Web foi utilizado com a finalidade de acessar os dados


armazenados na página através de uma variável denominada “ip”. Também foi
utilizada para requisição HTTP GET e HTTP POST para receber e enviar um texto
para a página Web.

Activity Starter: Através dos blocos do componente Activity Starter é


possível acessar o aplicativo da câmera ao pressionar o botão “Câmera” da tela
Menu.

SpeechRecognizer: Este comando possibilita, através do serviço de busca


por voz Offline da Google (Google Now), a emissão de comandos por voz no
aplicativo.
35

3.7. Desenvolvimento do protótipo

Para a fixação das placas e dos outros componentes foi utilizado uma base
de madeira com 50 cm de comprimento por 20 cm de largura e 1 cm de espessura.
Inicialmente, foram feitos os furos na madeira para que os fios não ficassem visíveis,
fazendo a conexão dos fios sem poluição visual do protótipo.
Após a furação, foram fixados os componentes no suporte de madeira
utilizando espaçadores para placas e um trilho para o relé de interface. O diagrama
representativo dos comandos do Arduino produzido no software Proteus se encontra
no Apêndice D dessa monografia. A Figura 17 abaixo mostra o protótipo sendo
confeccionado.

Figura 17: Confecção do Protótipo

Fonte: Acervo próprio, 2015.

3.8. Custo do Protótipo

A Tabela 2 abaixo detalha as despesas do protótipo descrevendo os itens


utilizados no projeto e o seu custo.
36

Tabela 2: Custo do Protótipo


Item Preço (Em reais) Vendedor Quantidade

Arduino Mega 89,00 MecaLoja (Loja 01


Virtual)
Ethernet Shield 49,90 MecaLoja (Loja 01
Virtual)
Dimmer Shield 49,00 Laboratório de 01
Garagem (Loja
virtual)
Câmera IP 139,00 Mercado Livre 01
(Loja virtual)
Sensor PIR 48,90 Leroy Merlin São 01
José do Rio Preto

Módulo Relé 4 canais 34,90 Filipe Flop (Loja 01


virtual)
Emissor IR 8,33 MecaLoja (Loja 01
Virtual)
Receptor IR 10,50 MecaLoja (Loja 01
Virtual)
Transformador 127V/12V 22,50 Mercado Livre 01
(Loja virtual)
Fechadura AGL 102,00 Acervo próprio 01

Roteador Wireless 65,00 Acervo próprio 01

Lâmpadas 127 V / 40W 8,00 Leroy Merlin São 01


José do Rio Preto

Fios elétricos 0,45 cada metro Eslei Eletrônica 30 metros


São José do Rio
Preto
Globo Luminoso 20,00 Acervo próprio 01

Relé de Interface 127 V 49,00 Mercado Livre 01


37

(Loja virtual)

Lâmpada fluorescente compacta 25,00 Leroy Merlin São 01


127 V / 35 W (Sirene) José do Rio Preto
Total 1146,63

Fonte: Acervo pessoal, 2015

Observa-se que, alguns dos itens citados na Tabela 1 acima já são de acervo
próprio do grupo. Deste modo, fica claro a vantagem deste modelo de Automação
Residencial quanto ao custo.
38

4. RESULTADOS E DISCUSSÕES

O acesso ao Arduino pelo aplicativo através da rede local foi realizado com
sucesso. Para facilitar os testes relativos a cada um dos processos automatizados,
estes foram montados separadamente com o Arduino e os Shields. Todos os
processos funcionaram de acordo com as expectativas.
Entretanto, na realização dos testes com a junção de todos os processos,
percebeu-se que houve uma perda considerável na velocidade e estabilidade do
sistema. Observa-se também que, ao receber muitas requisições HTTP em um curto
espaço de tempo o sistema também se mostra instável podendo derrubar a conexão
entre o servidor e o cliente. A solução proposta para esse problema é a utilização de
um servidor web em uma máquina com mais capacidade de processamento, o que
reduziria a possibilidade de ocorrer uma falha de conexão entre o cliente e o
servidor. Contudo, isto exigiria um conhecimento aprofundado em programação de
websites, desenvolvimento de servidores e banco de dados.

Houveram dificuldades relacionadas ao uso das portas do Arduino,


principalmente com relação ao emissor IR. Na biblioteca IR, para o Arduino Mega,
deve ser utilizada a porta 9 para o sinal do sensor. Na grande maioria dos projetos
encontrados é utilizado o Arduino Uno, que utiliza a porta digital 3. Essa variação de
portas dificultou a execução do projeto.

Notou-se também que, com o Dimmer Shield encaixado no Arduino, a porta


digital 9 do Arduino é colocada em nível alto intermitentemente. Isso causou uma
interferência no funcionamento do emissor IR colocando o Dimmer Shield e o
Emissor IR em conflito. Assim, não foi possível utilizar no mesmo projeto o Dimmer
Shield e o Emissor IR. Foram feitas diversas pesquisas em fóruns e blogs
especializados no assunto e foram observados outros projetos parecidos com essa
dificuldade, porém, não foi explicada esse conflito e nem foi encontrado solução para
esse problema.

Apesar das dificuldades encontradas, o Dimmer Shield se mostrou uma


excelente alternativa para Automação residencial com Arduino pois sua
comunicação e instalação ocorre facilmente e ele atua com precisão no controle da
luminosidade. Porém ocorreram alguns problemas devido as interferências na rede
39

causadas pela má infraestrutura da instalação elétrica, na qual foi detectada uma


pequena diferença de potencial no Neutro. Com isso, sucederam-se grandes
oscilações na luminosidade da lâmpada, o que depende do local onde ele é
instalado.
Além do mais, o Dimmer Shield comanda apenas uma lâmpada, ou várias
lâmpadas em paralelo, respeitando o limite de corrente de 4 ampères suportado pelo
TRIAC, não sendo possível um Dimmer Shield controlar mais de uma lâmpada de
maneira independente. Isso sobrevém do fato de o mesmo possuir apenas uma
saída LOAD para alimentar a lâmpada.

A respeito da Câmera IP, a utilização da mesma se mostrou de grande valia


no projeto em virtude da possibilidade do acesso as imagens do aparelho no
smartphone. O modelo utilizado é o V045232 possui movimento rotativo permitindo
um monitoramento mais eficiente em uma área de atuação mais abrangente.
Em relação ao alarme residencial, a maior dificuldade foi por causa do
aplicativo não ser em tempo real, o que impossibilita o alerta de alarme disparado ao
usuário quando o aplicativo não estiver em execução. A solução proposta seria a
utilização de um sistema intermediário, como o Twitter, que notificaria o usuário
assim que o alarme for disparado. Entretanto, devido as dificuldades de
programação para que o ocorra a comunicação do Arduino com o Twitter, não foi
possível a utilização deste sistema no projeto

4.1. Comparativo dos Preços

Os custos envolvidos em um sistema de Automação são, na maioria dos


casos, dependentes da quantidade e da complexidade dos processos controlados,
visto que, processos que exigem mais elementos opcionais como redes sem fio (Wi-
Fi, Radio Frequência), com mais componentes controlados (lâmpadas, persianas,
som, irrigação, etc.) são mais caros e exigem maior número de controladores ou
controladores mais robustos.

Portanto, os custos variam muito e são condicionados as exigências e


necessidades do usuário do projeto. Por isso, no Gráfico 1 abaixo, os valores das
categorias referem-se a sistemas isolados e específicos para determinada aplicação.
Além disso, é importante ressaltar que na categoria Arduino foram cotados os
40

preços do controlador e do Ethernet Shield e cada categoria são incrementados os


custos dos componentes necessários a seu funcionamento.

Figura 18: Comparativo de preços

Fonte: Acervo pessoal, 2015.

É essencial ressaltar que os valores apresentados no Gráfico 1 acima são


variáveis dependendo da complexidade do sistema e da quantidade de elementos a
serem controlados. O Arduino Mega possui 54 portas digitais I/O e 16 portas
analógicas, não se limitando apenas aos processos apresentados, enquanto os
outros controladores possuem um número inferior de portas.

Categoria Dimmer: os valores cotados na categoria Dimmer na barra


representativa denominada Arduino referem –se aos custos do Arduino Mega
somado aos custos do Ethernet Shield e do Dimmer Shield. Na barra denominada
Controlador encontra-se a cotação do Interruptor WiFi WiLight Modelo I-001 com
Dimmer para uma lâmpada - assim como o Dimmer Shield – no Website da
Fabricante (WiLight, 2015). Ambos possuem comunicação através da rede Wireless
da residência e podem ser acessados pelo smartphone.

Categoria Controle da TV: Na barra denominada Arduino estão englobados


o Arduino Mega, o Ethernet Shield e o Emissor e Receptor Infravermelho. Na barra
Controlador está o Broad Link Rm2 Pro. Ambos possuem acesso a rede WI-FI são
controlados pelos smartphones. Porém, o Rm2 consegue emitir sinais de Rádio
Frequência. Entretanto, o modelo com o Arduino possibilita a adição de vários
41

emissores dispersos em vários ambientes na residência em contrapartida ao Rm2


que possui alcance em um raio máximo de 5 m, necessitando de um aparelho por
ambiente segundo dados do fabricante (MERCADO LIVRE, 2015).

Categoria Alarme residencial: Devido às restrições, a barra referente ao


controlador refere-se a um kit de alarme residencial com comunicação GSM
(mensagem de texto) contrapondo-se ao sistema WI-FI do Arduino. Na barra
Arduino foram cotados os valores do Arduino Mega, do Ethernet Shield, do Sensor
PIR e do Relé de Interface. Na barra Controlador está orçado um kit de alarme
residencial GSM composto por um receptor central de sistema de alarmes GSM,
uma sirene de alta potência, um sensor PIR e um sensor de porta.

Categoria Controle Integrado: Na barra Arduino foram considerados


somente o Arduino, o Ethernet Shield e 14 relés de contato. Nota-se que no
protótipo foi utilizado um módulo relé de 4 canais por questões estéticas e por
segurança já que o módulo relé adquirido possui um circuito de proteção ao
microcontrolador. Com o intuito de facilitar a comparação entre os
microcontroladores utilizou-se os 14 relés para igualar ao controlador CasaWeb.
Abaixo, a Tabela 3 compara os dois microcontroladores.

Tabela 3: Comparação Arduino x CasaWeb

Dados Arduino Mega Casa Web

Microcontrolador Atmega 2560 PIC 16F887 (MicroChip)

Memória Flash 256 KB 14 KB

EEPROM 4 KB 256 Bytes

RAM 8 KB 368 Bytes

Velocidade da CPU 16 5
(Milhões de Instruções por
Segundo))

Fonte: Acervo pessoal, 2015.


42

Com base nos dados obtidos nos datasheets dos produtos - para o CasaWeb
(MICROCHIP, 2015) e Arduino (ATMEL, 2015) – observa-se que o Arduino Mega
possui maior capacidade de processamento e de memória.
43

5. CONCLUSÃO

Com base no conteúdo adquirido e nas simulações realizadas, é possível


afirmar a eficiência de se automatizar uma residência com o Arduino Mega e o
aplicativo “ automacao “desenvolvido pelo App Inventor.
A plataforma Arduino vem se mostrando uma excelente ferramenta para
automação residencial. Atualmente no mercado, existem diversas plataformas
compatíveis que permitem a comunicação do Arduino com um servidor de diversas
formas, variando do Bluetooth, limitado á uma distância de poucos metros até por
comunicação via internet de qualquer lugar do mundo.
Com a popularização dos smartphones e tablets, a automação residencial se
elevou a outro nível, sendo possível monitorar e controlar a sua residência de
qualquer lugar e de maneira bem cômoda, não sendo necessário ficar preso a
computadores.
O aplicativo App Inventor é uma excelente ferramenta para a criação de
aplicativos, permitindo ao usuário do sistema operacional Android a criação de
aplicativos sem a necessidade de um conhecimento aprofundado em programação
Java, podendo o próprio usuário criar seu aplicativo de forma simples e usual. Com
inúmeros recursos o usuário pode vincular design e funcionalidade ao seu projeto,
com um ambiente de programação simples e comandos extremamente intuitivos.
Contudo, podemos notar que a automação residencial, que antes era
acessível apenas à parte mais rica da sociedade está se tornando cada vez mais
acessível a pessoas com menos poder de compra, devido ao barateamento dos
componentes. Além disso, a utilização do Arduino interagindo com o App inventor se
mostrou viável devido à boa relação custo-benefício.
44

6. TRABALHOS FUTUROS

A fim de reduzir a instabilidade do sistema e possibilitar um maior número de


acessos ao servidor, sugere-se o uso de um servidor externo, que pode ser
desenvolvido em algum computador que o próprio usuário possui. Quanto aos
conflitos de portas existentes no Arduino, pode-se utilizar um outro Arduino Uno no
projeto como escravo, a fim de controlar o Dimmer Shield, sem que ocorra
interferência no emissor IR.
Também pode ser utilizado um contador para evitar que o aplicativo realize
diversas ligações quando o alarme for disparado. Assim, o usuário será alertado e
não será incomodado por ligações sequenciais.
Além disso, pode ser utilizado outros tipos de plataformas embarcadas como
o Raspberry Pi. Porém, tais sistemas custam mais do que as versões do Arduino e
desqualificariam os objetivos desta monografia em reduzir os custos.
45

REFERÊNCIAS BIBLIOGRAFICAS

ATMEL. Datasheet do produto: Atmega 2560. Disponível em:


<www.atmel.com/images/atmel-2549-8-bite-avr-microcontroller-atmega640-1280-
1281-2560-2561_datasheet.pdf> Acesso em: 14/11/2015.

AURESIDE. Casa Inteligente chega à classe média. Disponível em:


<http://www.aureside.org.br/imprensa/default.asp?file=folha_130311.htm> Acesso
em 28/08/2015.

APPINVENTOR. Site oficial do App Inventor. Disponível em:


<http://ai2.appinventor.mit.edu/#4673346787606528. > Acesso em 04/05/2015.

ARDUINOECIA. Arduino Uno e Ethernet Shield. Disponível em:


<http://www.arduinoecia.com.br/2013/06/ethernet-shield-wiznet-w5100-parte-1.html>
Acesso em 10/05/2015.

BEGHINI, Lucas Bragazza. Automação residencial de baixo custo por meio de


dispositivos móveis com sistema operacional Android. 2013. 78 f. Monografia
(Graduação em Engenharia Elétrica) - Universidade de São Paulo. São Carlos, SP,
2013.

BOEIRA, Marcelo. 2013. O que é Arduino? Disponível em: <


http://blog.marceloboeira.com/arduino/o-que-e/> Acesso em:04/05/2015

BORTOLUZZI, Matias. Blog SRA Engenharia, Histórico da automação residencial,


2013. Disponível em: <http://sraengenharia.blogspot.com.br/2013/01/historico-da-
automacaoresidencial_10.html>. Acesso em: 06/05/2015.

CRUZ, Renan Pontes. Desenvolvimento de um Sistema de Supervisão Via Web


Aplicado à Automação Residencial. Universidade Federal do Rio Grande do
Norte. Trabalho de Conclusão de Curso. Natal, RN, 2009.
46

EUZÉBIO, M. V. M. DroidLar- Automação Residencial através do celular


Android. 2011. 59 f. Monografia (Tecnólogo em Sistemas de Telecomunicações) -
Instituto Federal de Santa Catarina. São José, 2011.

EVANS, Martin; NOBLE, Noshua; HOCHENBAUM, Jordan. Arduino em ação. 1ª


ed. São Paulo: Novatec, 2013.

INSTITUTO NEWTON C. BRAGA. 2014. Dimmers e controles de potência.


Disponível em: <http://www.newtoncbraga.com.br/index.php/como-funciona/619-
dimmers-e-controles-de-potencia-art071>. Acesso em: 20/05/2015.

JORDÃO, Fábio. Tecmundo. 2009. O que é IP estático? E dinâmico? Disponível


em: < http://www.tecmundo.com.br/1836-o-que-e-ip-estatico-e-dinamico-.htm>
Acesso em: 25/08/15.

MARTINS, Giuliano Alex. Blog AlexMartins. 2012. Conhecendo o Arduino Uno.


Disponível em: < http://alexmartins.net/blog/2012/08/03/eletronica-conhecendo-o-
arduino-uno/>. Acesso em 15/05/2015.

MCROBERTS, Michael. Arduino básico. Tradução Rafael Zanolli. São Paulo:


Novatec, 2011.

MERCADO LIVRE. Eletrônicos: Broad Link Rm2. Disponível em: <


http://produto.mercadolivre.com.br/MLB-701969396-controlar-tv-ar-som-pelo-celular-
automaco-residencial-_JM> Acesso em: 10/11/2015

MICROCHIP. Datasheet do produto: PIC 16F887. Disponível em:


<www.microchip.com/wwwproducts/Devices.aspx?product=PIC16F887> Acesso em:
14/11/2015.

MULLER, Nicolas. Oficina da Net. 2014. Intranet, Internet e Extranet: o que são e
quais as diferenças. Disponivel em: <http://www.oficinadanet.com.br/artigo/1276
47

/internet_intranet_e_extranet_o_que_sao_e_quais_as_diferencas>. Acesso em:


16/05/2015.

MULTILÓGICA. Arduino Ethernet Shield R3. Disponível em:


<https://multilogicashop.com/Arduino-Ethernet-Shield/>. Acesso em 15/05/2015 .

MUNDOESTRANHO. Como funciona o controle remoto? Disponível em:<


http://mundoestranho.abril.com.br/materia/como-funciona-o-controle-remoto. >.
Acesso em 01/06/2015.

PARKS ASSOCIATES. Parks Associates: 62% of Consumers Unfamiliar with


Smart Home Products or Services. Disponível em: <
http://www.parksassociates.com/blog/article/pr-nov2014-CEA-research. >. Acesso
em: 01/06/2015.

PEREIRA, André Araújo Khun. Laboratório de Garagem. 2014. Tutorial Dimmer


Shield. Disponível em: < http://labdegaragem.com/profiles/blogs/tutorial-dimmer-shield>.
Acesso em 23/05/2015.

PRADELLA, Arthur. Automação residencial que cabe no bolso. Home Theater &
Casa Digital, ano 12, ed. 199, maio 2013. Disponível em:
<http://revistahometheater.uol.com.br/site/tec_artigos_02.php?id_lista_txt=8367>
Acesso em: 23/08/2015.

PW ELETRÔNICA. Site Oficial da Fabricante: Produtos. Disponível em:


<http://www.pweletronica.com.br/Produtos/Sensor-de-Presenca/Item/sensor-de-
presenca-standard.html> Acesso em: 02/11/2015.

SACCO, Francesco. 2014. Comunicação SPI. Disponível em:


<http://www.embarcados.com.br/spi-parte-1/. > Acesso em 05/05/2015.
48

TECMUNDO, 2013. O que é TCP/IP? Disponível


em:<http://www.tecmundo.com.br/o-que e/780-o-que-e-tcp-ip-.html> Acesso em:
13/05/2015.

TECMUNDO, 2009. O que é IP Estático? E dinâmico? Disponível em:<


http://www.tecmundo.com.br/1836-o-que-e-ip-estatico-e-dinamico-.htm > Acesso em:
13/05/2015.
WILIGHT, 2015. Site Oficial da Fabricante: Produtos. Disponível em: <
www.wilight.com.br/#!loja-e-carrinho/c1mn8 >. Acesso em: 10/11/2015.

WOLBER et al. App Inventor- Create Your Own Android App. Published by
O’Reilly Media, Inc., 1005 Gravenstein Highway North, Sebastopol, CA 95472. First
Edition, 2011.
49

APÊNDICE A – Código Arduino

#include <IRremote.h>
#include <IRremoteInt.h>

#include <SPI.h> // Inclui biblioteca SPI


#include <String.h> // Inclui biblioteca de String
#include <Ethernet.h> // Inclui biblioteca Ethernet

String readString = String(3); // string para buscar dados de endereço


byte mac[] = { 0x90, 0xA2, 0xDA, 0x00, 0x9B, 0x36 }; // Endereço Mac
byte ip[] = { 192, 168, 0, 103 }; // Endereço de Ip da sua Rede
EthernetServer server(8090); // Porta de serviço

// controle da TV

IRsend irsend; //variável para poder enviar o código a TV

// DIMMER

int AC_LOAD = 3;// Dará o pulso no Triac pin


int dimming = 120;// Dimming level (0-128) 0 = ON, 128 = OFF
unsigned long time;//Contará o tempo
unsigned long timeout;//Estouro
int x,y;//Variaveis auxiliares
int redpin=23; //Pin 9
int buffalarme = 0;

void setup ()

// CONTROLE TV

pinMode (9, OUTPUT);

//ALARME

pinMode (11,INPUT);
pinMode (5,OUTPUT);
digitalWrite (2,LOW);

//PORTÃO

pinMode (22, OUTPUT);

//DIMMER
50

pinMode(AC_LOAD, OUTPUT);
attachInterrupt(0, zero_crosss_int, RISING);
pinMode(7,OUTPUT);

// Inicia o Ethernet
Ethernet.begin(mac, ip);

// Inicia a comunicação Serial


Serial.begin(9600);
}
void zero_crosss_int() // Função que detecta a passagem por 0
{
// Calculo do ângulo de disparo :: 60Hz-> 8.33ms (1/2 Cycle)
// (8333us - 8.33us) / 128 = 65 (Approx)
int dimtime = (65*dimming); // 65 equivale a 1 de 128
delayMicroseconds(dimtime); // Off cycle
digitalWrite(AC_LOAD, HIGH); // disparando o Triac
delayMicroseconds(8.33); // Aguarda o tempo de disparo
digitalWrite(AC_LOAD, LOW); // finaliza o pulso do Triac

}
void loop()
{

EthernetClient client = server.available();

if (client) {
while (client.connected())
{
if (client.available())
{
char c = client.read();
// ler caractere por caractere vindo do HTTP
if (readString.length() < 100)
{
// armazena os caracteres para string
readString += (c);
}

//se o pedido HTTP terminou


if (c == '\n')
{

// TELEVISÃO

if (readString.indexOf("Power") >=0)
{
51

for (int i = 0; i < 3; i++) {


irsend.sendNEC(0x20DF10EF, 32);// código que sera enviado a tv para aumentar
o volume

}
}
if (readString.indexOf("MaisCanal") >=0)
{
for (int i = 0; i < 3; i++) {
irsend.sendNEC(0x20DF00FF, 32);// código que sera enviado a tv para aumentar
o volume
}
}
if (readString.indexOf("MenosCanal") >=0)
{
for (int i = 0; i < 3; i++) {
irsend.sendNEC(0x20DF807F, 32);// código que sera enviado a tv para aumentar
o volume
}
}
if (readString.indexOf("MaisVolume") >=0)
{
for (int i = 0; i < 3; i++) {
irsend.sendNEC(0x20DF40BF , 32);// código que sera enviado a tv para aumentar
o volume
}
}
if (readString.indexOf("MenosVolume") >=0)
{
for (int i = 0; i < 3; i++) {
irsend.sendNEC(0x20DFC03F, 32);// código que sera enviado a tv para aumentar
o volume
}
}
if (readString.indexOf("Globo") >=0)
{
for (int i = 0; i < 3; i++) {
irsend.sendNEC(0x20DF48B7, 32);// código que sera enviado a tv para aumentar
o volume
}
}
if (readString.indexOf("Record") >=0)
{
for (int i = 0; i < 3; i++) {
irsend.sendNEC(0x20DFE817, 32);// código que sera enviado a tv para aumentar
o volume
}
}
if (readString.indexOf("SBT") >=0)
52

{
for (int i = 0; i < 3; i++) {
irsend.sendNEC(0x20DF9867, 32);// código que sera enviado a tv para aumentar
o volume
}
}
if (readString.indexOf("Band") >=0)
{
for (int i = 0; i < 3; i++) {
irsend.sendNEC(0x20DFA857 , 32);// código que sera enviado a tv para aumentar
o volume
}
}

// CINEMA

if (readString.indexOf("Filme")>=0)
{

dimming = 90;
digitalWrite (7,LOW);

}
// FESTA

if (readString.indexOf("Festa")>=0)
{
dimming = 120;
digitalWrite(7,HIGH);
delay(100);

}
// SONO

if (readString.indexOf("Sono")>=0)
{
dimming = 120;
digitalWrite(7,LOW);

// LEITURA

if (readString.indexOf("Leitura")>=0)
{
dimming = 15;
digitalWrite(7,LOW);
53

// ALARME
if(readString.indexOf("AtivarAlarme")>=0)
{
// O alarme vai ser ligado
digitalWrite(5, HIGH);

}
// Se a string possui o texto Desativar alarme
if(readString.indexOf("DesativarAlarme")>=0)
{
// O alarme vai ser desligado
digitalWrite(5, LOW);

//ALARME
int sensorpir = digitalRead(11);
if (sensorpir == HIGH){
Serial.println ("alarmedisparado");
}

// PORTÂO

if(readString.indexOf("AbrirPortão")>=0)
{
// O Portão vai ser aberto

digitalWrite(22, HIGH);

client.println("HTTP/1.1 200 OK");


client.println("Content-Type: text/html");
client.println();

// Alarme

client.print("<font size='20'>");
if (sensorpir==HIGH) {
client.print("AlarmeDisparado");
} else {
54

client.print("Normal");
}

//limpa string para a próxima leitura


readString="";

// parar cliente
client.stop();
}
}
}
}
}
55

APÊNDICE B – Código Arduino “ receber sinal da TV”

#include <IRremote.h>

int RECV_PIN = 11;

IRrecv irrecv(RECV_PIN);

decode_results results;

void setup()
{
Serial.begin(9600);
irrecv.enableIRIn(); // Start the receiver
}

// Dumps out the decode_results structure.


// Call this after IRrecv::decode()
// void * to work around compiler issue
//void dump(void *v) {
// decode_results *results = (decode_results *)v
void dump(decode_results *results) {
int count = results->rawlen;
if (results->decode_type == UNKNOWN) {
Serial.println("Could not decode message");
}
else {
if (results->decode_type == NEC) {
Serial.print("Decoded NEC: ");
}
else if (results->decode_type == SONY) {
Serial.print("Decoded SONY: ");
}
else if (results->decode_type == RC5) {
Serial.print("Decoded RC5: ");
}
else if (results->decode_type == RC6) {
Serial.print("Decoded RC6: ");
}
Serial.print(results->value, HEX);
Serial.print(" (");
Serial.print(results->bits, DEC);
Serial.println(" bits)");
}
Serial.print("Raw (");
56

Serial.print(count, DEC);
Serial.print("): ");

for (int i = 0; i < count; i++) {


if ((i % 2) == 1) {
Serial.print(results->rawbuf[i]*USECPERTICK, DEC);
}
else {
Serial.print(-(int)results->rawbuf[i]*USECPERTICK, DEC);
}
Serial.print(" ");
}
Serial.println("");
}

void loop() {
if (irrecv.decode(&results)) {
Serial.println(results.value, HEX);
dump(&results);
irrecv.resume(); // Receive the next value
}
}
57

APÊNDICE C – Diagrama de blocos App Inventor

Screen 1- Tela de Login


58
59

Controle da televisão
60

Menu Principal
61

Iluminação
62

APÊNDICE D – Esquema elétrico do Protótipo feito no Proteus