Você está na página 1de 8

III SEMINÁRIO DE DESENVOLVIMENTO EM SOA COM CLOUD COMPUTING E CONECTIVIDADE

INSTITUTO NACIONAL DE TELECOMUNICAÇÕES – INATEL


SETEMBRO DE 2017 - ISSN 2447-2352

Casa Inteligente: Controlando sua residência


de onde estiver
Hudson de Lima Rodrigues, Márcio Emílio Cruz Vono de Azevedo

 temas relacionados ao contexto deste artigo. No capítulo III


Abstract—This document contains the result of research about uma pesquisa semelhante é apresentada sobre o Free at home,
technologies that make possible the development of smart home solução prática de automação residencial da empresa ABB. No
applications as well as their integration with the internet to enable
capítulo V se encontram os detalhes do desenvolvimento de
their use anywhere. Also, as part of this work there is a
presentation of a mobile application prototype able to ascend and um protótipo de aplicativo; e no capítulo VI a conclusão deste
switching off lamps of some residence. trabalho.
Index Terms—Home Automotion, Mobile Application, Arduino,
Smart Home. II. REVISÃO BIBLIOGRÁFICA
Resumo—Este documento contém o resultado de uma pesquisa
realizada sobre tecnologias que possibilitam o desenvolvimento de A. Arduino
aplicações para casa inteligentes, bem como sua integração com a
internet para possibilitar seu uso de qualquer lugar. Também faz
parte deste trabalho a apresentação de um protótipo de aplicativo O Arduino é uma plataforma open source composta de
móvel capaz de ascender e desligar as lâmpadas de uma residência elementos de hardware e software. Contém diversos terminais
Palavras chave—Automação Residencial, Aplicativo Móvel, que permitem a conexão com dispositivos externos, que
Arduino, Casa Inteligente podem ler dados de um sensor e controlar componentes como
sensores luminosos, microfones, termostatos e portas de
I. INTRODUÇÃO garagem. [2]

É notório que a tecnologia está cada vez mais presente e em


constante evolução na vida da sociedade. E esse avanço
produz efeitos positivos no que tange a soluções que possam
melhorar a vida das pessoas, surgindo conceitos como o da
Casa Inteligente, que tem como objetivo automatizar processos
dentro da casa.
De acordo com Vecchi [1], a automação residencial busca
aumentar a segurança e a facilidade na execução dos afazeres
domésticos, melhorando assim a qualidade de vida e gerando
bem-estar.
Neste contexto, o trabalho tem como objetivo avaliar a
viabilidade da criação de uma aplicação para dispositivo
móvel voltado para casas inteligentes, e que possa ser
Fig. 1 Placa Arduino Uno [10]
integrada com a rede mundial de computadores, tornando
possível controlar a residência independente do lugar em que o
Existem vários modelos de placas Arduino, e cada placa tem
dono esteja.
suas especificações. Se a placa não vier com os recursos
Para atingir este objetivo, um estudo sobre as tecnologias
necessários, sempre existe a opção de adicionar um shield que
existentes foi apresentado, e como exemplo prático de
suporte o recurso requerido. Dentro do universo Arduino, um
aplicação, um protótipo foi desenvolvido.
shield é muito semelhante a uma placa, mas ele só suporta uma
O trabalho está estruturado da seguinte forma: no capítulo II
funcionalidade específica, como a capacidade de conexão com
se encontra uma revisão bibliográfica sobre os principais
uma rede Wi-Fi.

Trabalho de Conclusão de Curso apresentado ao Instituto Nacional de


Telecomunicações, como parte dos requisitos para a obtenção do Certificado
de Pós-Graduação em Desenvolvimento de aplicações para Dispositivos
Móveis e Cloud Computing. Orientador: Prof. Ms. Márcio Emílio Cruz Vono
de Azevedo. Trabalho aprovado em 07/2017.
C. Mit App Inventor

Criado pelo Google, e mantido por MIT (Massachusetts


Institute of Technology), o MIT App Inventor
(http://ai2.appinventor.mit.edu/) é uma plataforma online com
um ambiente de programação para criação de aplicativos. Em
2015, a comunidade da plataforma era composta por quase 3
milhões de usuários espalhados por 195 países, com cerca de
100.000 usuários ativos por semana [4].
Seu uso é frequente pois transforma a complexa linguagem
de codificação baseada em texto em blocos de construção
visuais.

Fig. 2 Shield Ethernet [10]

Um shield funciona como um acessório; isto é, ele é


fisicamente acoplado sobre uma Placa Arduino. Uma vez
acoplado o shield, a placa Arduino também passa a ser capaz
de lidar com os recursos oferecidos por ele.

B. Smartphone Android

Ao longo dos anos, a quantidade de telefones celulares vem


aumentando cada vez mais. De acordo com Pereira[3], a
quantidade de celulares na internet (3.000.000.000) atinge
mais que o dobro de computadores com acesso à internet. Fig. 4 Interface de programação do App Inventor [12]
Um Smartphone (telefone inteligente) é um celular com
tecnologias avançadas, o que inclui programas executados em A interface gráfica simples possibilita a criação de um
um sistema operacional, equivalente aos computadores. aplicativo básico e totalmente funcional dentro pouco tempo.
Android é um exemplo de sistema operacional da Google para
ser utilizado em celulares, tablets, TVs e STBs. O D. Automação Residencial
desenvolvimento de aplicativos android é gratuito.
Automação Residencial é um conjunto de serviços criados
através da tecnologia para o nosso conforto e bem-estar dentro
de nossas residências.

Fig. 5 Ilustração de uma automação residencial [13]

Fig. 3 Smartphone Android [11]


Segundo Soper [5], as tecnologias de automação doméstica
fazem a ponte entre a casa de botões do futuro e as casas em
que vivemos hoje, e adaptando essas tecnologias em
equipamentos já existentes na residência, mais conceitos de
automação residencial são criados.
A partir do momento em que se faz a automação de uma
residência, com um único comando é possível apagar as luzes
de toda a casa, fechar cortinas, desligar pontos de ar
condicionado, gerenciar a parte de segurança e câmeras. A
integração de tudo isso é que chamamos de automação
residencial, não apenas a motorização de algum equipamento Fig. 7 Ilustração produto Free at Home [15]
isoladamente.
Com interruptores e displays intuitivos, é possível ter total
controle das ações por meio do smartphone ou tablet, onde
E. Domótica quer que o usuário esteja. A solução proporciona excelente
relação de custo e benefício na instalação, que pode ser
Segundo Moya[6] “A Domótica, aplica-se a ciência e os ajustada a qualquer momento. A solução ABB free at home é
elementos desenvolvidos para fornecerem algum nível de um sistema inovador que torna as casas inteligentes. Ou seja, é
automação de dentro da casa, pode ser qualquer coisa como uma tecnologia extremamente atrativa que envolve custos
um simples temporizador para ligar e desligar a luz ou adicionais mínimos em comparação às instalações elétricas
aparelho de uma casa em uma determinada hora, até sistemas convencionais.
complexos capazes de interagir com qualquer componente
elétrico da casa”. Tem, portanto, a finalidade de garantir ao A. Instalação
usuário um aumento de conforto, economia, segurança, entre
outros.
O free at home é um produto de rápida e fácil instalação dos
integradores, pois é feita por meio do Access Point (interface
de configuração em que é realizada a programação de todas as
funções da residência através de uma conexão de internet).
Uma vez configurado, o usuário pode visualizar a interface
fazer os ajustes desejados. O free at home possui um
aplicativo como parte de seu sistema, que torna as coisas ainda
mais fáceis, pois otimiza todas as imagens para exibição no
dispositivo móvel.

Fig. 6 Domótica [14]

Originada da palavra latina “domus”, que significa “casa” e Fig. 8 Instalação sistema free at home [15]
da palavra francesa “robotique”, que quer dizer “robótica”, a
Domótica busca a integração de todos os aparelhos Apenas alguns componentes são necessários para a
eletrodomésticos, para que tudo funcione em harmonia perfeita instalação: jumpers de barramento, Access Point, Fonte de
com a máxima utilidade e a intervenção mínima do usuário. Alimentação e os sensores desejados. O Access Point faz a
conexão com o free at home por meio de snartphone ou
III. FREE AT HOME computador.

Em 2015, A empresa ABB, líder em tecnologias de energia A.1 Vantagens


e automação, lançou no Brasil o produto Free at Home, uma
solução para automação residencial, que oferece conforto, As principais vantagens que o free at home possui, são:
segurança e eficiência. Por meio de um aplicativo incluso
nessa solução, é possível controlar remotamente, por exemplo: 1. Controle móvel de iluminação, aquecimento e
a iluminação, aquecimento, interfone, sonorização, movimento persianas por meio de smartphone ou tablet
das persianas de uma residência [7].
2. Criação de cenários que permite a combinação com O kit deve ser adequado conforme a Figura 10.
elementos de iluminação, controle de intensidade,
climatização e persianas

3. Aplicativo de fácil configuração e utilização inclusa


no pacote do produto

IV. DESENVOLVIMENTO DE UM PROTÓTIPO DE


APLICATIVO PARA CASAS INTELIGENTE

O objetivo deste capítulo é desenvolver um protótipo para Fig. 10 Estrutura montada [16]
colocar em prática os conceitos de Casa Inteligente, através de
um aplicativo Android conectado em uma placa Arduino que, O controle do módulo relé é feito pela porta 3 do Arduino, e
por sua vez, comunica com a lâmpada da residência, tornando a alimentação do módulo é feita pelo pino 5V. No circuito
possível ligar e desligar a luz. acima, foi utilizado uma lâmpada ligada à rede elétrica. Note
que o Ethernet shield está acoplado à placa Arduino, causando
a impressão que as duas placas são uma só. A figura 11
A. Kit Automação mostra o circuito montado, já com o cabo USB que deve ser
conectado ao roteador.
Para desenvolvimento do projeto, foi utilizado um kit de
automação[9], conforme mostra a figura 9.

Fig. 9 Kit Automação [16]

Esse kit é composto por:


Fig . 11 Circuito Montado
• Fonte de Alimentação
• Cabo Usb A.1 Criando um Web Server
• Jumpers Macho e Fêmea
• Ethernet Shield W5100 Após a montagem dos componentes, é preciso vincular
• Placa Arduino Uno R3 algum código à placa, e esse procedimento é feito pelo
• Módulo Relé 5V 2 Canais Arduino IDE, o ambiente de programação responsável por
• Soquete Lâmpada E14 fazer o upload do código para a placa.
• Cabo de Rede Conector RJ45 1,5m Uma IDE (Integrated Development Environment) é um
• Lâmpada E14 15W ambiente de desenvolvimento integrado que reúne várias
• Plug Tomada Macho ferramentas necessárias para o desenvolvimento de softwares.
• Fio Simples 1,0mm 3m A programação do Arduino utiliza a biblioteca Ethernet que
já vem embutida na IDE do Arduino. Com ela, foi criado um
Web Server que vai receber as informações pela rede e acionar strToRead="";
a porta. // para o cliente
No início do programa, são declaradas as variáveis que o client.stop();
}
sistema utiliza, como de IP, gateway, máscara de rede e a
}
variável que informa a porta digital que foi utilizada na placa, }
conforme listagem 1. }
}
Listagem. 3 Função Loop
// Endereço Mac
byte mac[] = { 0x90, 0xA2, 0xDA,
0x00, 0x9B, 0x36 }; Com o código finalizado, é preciso carregar para a placa.
Nesse momento, o computador precisa estar conectado à placa
// Endereço de Ip da sua Rede para estabelecer conexão, como mostra a figura 12.
byte ip[] = { 192,168,1,12 };

// Porta de serviço
EthernetServer server(80);

int lampada1 = 3;
String strToRead = String(30);
String statusLed;
Listagem 1 Declaração das variáveis

Foi utilizado para a variável IP, o endereço 192.168.1.12,


que é um IP único na rede local, e que é acessado pelo
aplicativo.
O código em si é bem simples, com apenas duas funções:
uma para inicializar o serviço (setup), e outra (loop) para ficar
“esperando” alguma requisição para “agir”.
Fig. 12 Placa conectada ao computador
void setup(){
Ethernet.begin(mac, ip); Após clicar para carregar, o Arduino IDE compila o código
pinMode(lampada1, OUTPUT); para garantir que não existe erros, e se não existir, o upload do
Serial.begin(9600); código é feito e uma mensagem de sucesso é exibida,
}
Listagem. 2 Função Setup
conforme figura 13.

void loop(){
// Criar uma conexão de cliente
EthernetClient client =
server.available(); Fig. 13 Código compilado com sucesso

if (client) { Antes do acesso ao Web Server pelo Aplicativo, é


while (client.connected()) importante verificar se o IP configurado no programa está
{ respondendo adequadamente. Para isso, basta utilizar o
if (client.available()) { comando “ping” na janela de comando.
char caracter = client.read();
// ler caracteres vindo do HTTP
if (strToRead.length() < 30)
{
strToRead += (caracter);
//armazena os caracteres para string
}
//se o pedido HTTP terminou
if (caracter == '\n')
{
if (strToRead.indexOf("lampada1") > 0) Fig. 14 Testando disponibilidade do serviço
{

digitalWrite(lampada1,!digitalRead(lampada
1));
}
//limpa string para a próxima leitura
B. Protótipo

Com o serviço disponível para ser acessado, é hora de criar


o aplicativo que fará a requisição para ligar ou desligar a
lâmpada. E para desenvolver o aplicativo para Android, foi
utilizado a plataforma online App Inventor, que é acessível
pelo endereço ai2.appinventor.mit.edu.
O App Inventor permite desenvolver aplicativos para
telefones Android usando um navegador da Web e um telefone
ou um emulador de telefone na tela. Os servidores do MIT App
Inventor armazenam seu trabalho e ajudam a acompanhar os
projetos desenvolvidos de maneira prática.

Fig. 17 Desenhando tela Inicial

O Aplicativo tem 2 botões (um em forma de imagem), e um


espaço para o usuário informar o IP que está a lógica da placa
Arduino. E com os recursos de arrastar e soltar do App
Inventor, facilmente pode-se finalizar a tela do aplicativo,
bastando procurar o componente desejado na área da esquerda
do ambiente, e arrastar para o espaço destinado ao aplicativo
Fig. 15 Plataforma App Inventor

Para criar o app, basta clicar em Projects – Start New


Project e depois escolher um nome. O aplicativo tem apenas
uma tela.
Depois de criar o projeto, o App Inventor abre o espaço
para desenvolver o projeto. Por padrão, já vem com uma tela
inicial, chamada de Screen1.

Fig. 16 App criado

E para criar a tela do protótipo, basta, de início, arrastar e


soltar para o projeto 4 Horizontal Arrangements.

Fig. 18 Tela finalizada do aplicativo

Com a tela pronta, o próximo passo é criar a lógica de


funcionamento.
Para migrar da tela para o código, basta clicar em Blocks, e
para voltar para a tela, basta clicar em Designer, que pelo App
Inventor se torna também um processo não tão complexo.

Fig. 19 Designer/Blocks
Fig. 22 Lógica para guardar o IP
Basicamente, são pré-definidos 8 tipos e Built-ins que é
Dessa forma, a codificação se torna muito intuitiva e
possível adicionar à lógica (tudo disponível na área esquerda
produtiva, onde foi criado um control no botão Ok da tela, que
da plataforma)
se chama changeip. E quando esse botão é clicado pelo
usuário, uma variável global iparduino recebe o valor do text
field criado para o usuário digitar o IP em que a placa está
trabalhando. Após isso, o valor do IP é armazenado num
banco de dados da aplicação (criado anteriormente), com
intuito do usuário não precisar ficar configurando o IP toda
vez que entrar no aplicativo.
A figura 23 representa o momento em que o usuário clica na
lâmpada.

Fig. 23 Clique na imagem da lâmpada

Também foi criado um control para a ação do clique na


Imagem da lâmpada. Nessa lógica, existe um novo elemento
Fig. 20 Built-ins disponíveis chamado Web1, que é um componente não visível que provê
funções HTTP (Get, Post, Put, Delete), o que torna possível
fazer uma requisição Get no endereço 192.168.1.12/lampada1
A figura 21 apresenta algumas das opções disponíveis (é importante notar que no código carregado na placa Arduino,
para utilização ao clicar no Built-in Control é esperado exatamente depois do IP, a palavra lampada1)

B.1 Executando o aplicativo

Uma vez desenvolvido o aplicativo, é possível baixar o. apk


do aplicativo para instalar no celular. Para isso, basta clicar em
Build -> apk ( save .apk to my computer)

Fig. 24 Gerando. apk do aplicativo


Fig. 21 Built-in Control
Uma vez com o aplicativo compilado, basta executá-lo e
A figura 22 mostra a lógica utilizada para armazenar o IP configurar de acordo com as configurações estabelecidas no
informado pelo usuário código atrelado à placa Arduino. Os testes podem ser feitos em
qualquer celular com sistema operacional Android, ou no
computador, com qualquer emulador de Android.
Na Figura 25, é apresentado o momento em que a lâmpada é êxito, pois o aplicativo desenvolvido foi capaz de acender e
acionada via aplicativo criado. apagar uma lâmpada ligada à energia elétrica.

REFERÊNCIAS
[1] VECCHI, Hermes F., OGATA, Reinaldo Jiunji. - Edificios Inteligentes.
[2] JAVED, Adeel – Criando projetos com Arduino para a Internet das
Coisas – 2016, pp 19-20
Acessado em 10/04/2017
[3] PEREIRA, Lúcio- SILVA, Michel – Android para desenvolvedores.
2009, p.2
[4] Mit App Inventor – Disponível em:
http://appinventor.mit.edu/explore/about-us.html
Acessado em 17/04/2017
[5] SOPER, Mark – Absolute Beginners Guide to Home Automation,
2005, p.11
[6] MOYA, J.M - TEJEDOR, R.J – Manual de Domótica, 2010, p.4
[7] FreeAthome – Disponível em:
http://www.abb.com.br/cawp/seitp202/426d11c47270904583257e9d00
4aa27d.aspx
Acessado em 16/04/2017
[8] ABB – Disponível em: http://www.abb.com.br
Acessado em: 20/04/2017
Fig. 25 Ligando a lâmpada [9] Kit Automação Residencial com Arduino. Disponível em:
http://www.filipeflop.com/pd-39b576-kit-automacao-residencial-com-
arduino.html?_ga=1.121906120.2109684062.1493638387
Acessado em: 01/04/2017
Já na figura 26, é apresentado o momento em que a lâmpada [10] Fonte: http://www.hperobotica.com.br
é desligada via aplicativo criado. [11] Fonte: http://bibliotheeklaarne.blogspot.com.br/2016/11/opleiding-
gebruik-van-smartphone-in-de.html Acessado em 17/04/2017
[12] Fonte: https://preetiedul.wordpress.com/2011/12/13/create-kindle-fire-
app-using-app-inventor/ Acessado em 17/04/2017
[13] Fonte: https://www.williampitt.com/whats-trending-in-the-world- of-
smart-home-technology/ Acessado em 17/04/2017
[14] Fonte https://pt.dreamstime.com Acessado em 17/04/2017
[15] Fonte http://new.abb.com/low-voltage/launches/free-at-home Acessado
em 18/04/2017
[16] Fonte: http://www.filipeflop.com/ Acessado em 19/04/2017

Hudson de Lima Rodrigues nasceu em Pouso Alegre, MG, em 22 de


Dezembro de 1990. Possui título de Bacharel em Sistemas de Informação
pela UNIVÁS – Universidade do Vale do Sapucaí (2014).
Desde 2013 atua como programador de sistemas, com foco em automação
comercial e desenvolvimento web.
Fig. 26 Desligando a lâmpada

V. CONCLUSÃO
Márcio Emílio Cruz Vono de Azevedo possui graduação em Engenharia
Após o estudo realizado, foi possível observar que a com a Elétrica Modalidade Eletrônica pelo Instituto Nacional de Telecomunicações
evolução da tecnologia, é possível até mesmo criar recursos (1999) e mestrado em Ciência e Tecnologia da Computação pela
para automatizar uma residência aplicando conceitos de Universidade Federal de Itajubá(2012). Atualmente é Especialista em
Sistemas do Instituto Nacional de Telecomunicações, professor do Instituto
domótica. nacional de Telecomunicações, professor da Universidade do Vale do Sapucaí
O produto free at home foi apresentado, para mostrar que já e Sócio proprietário da TM Tecnologia da Informação Ltda.
existem no mercado soluções que tornam uma residência
inteligente, aplicando os conceitos de domótica.
Foi apresentado a placa Arduino e como conectá-la à
internet através do Ethernet Shield, e configurado um Web
Server pronto para responder às requisições feitas para ele.
No protótipo desenvolvido durante a pesquisa, foi possível
concluir como é viável utilizar a plataforma App Inventor, que
faz com que a programação em si fique um pouco menos
complexa, sendo possível concluir o objetivo do estudo com

Você também pode gostar