Post on 04-Aug-2015
INSTITUTO UNIFICADO DE ENSINO SUPERIOR OBJETIVO - IUESO
CIÊNCIA DA COMPUTAÇÃO
BRUNO DE CASTRO RODRIGUES SILVA
LUCIANO ANTÔNIO ASSUNÇÃO CÂNDIDO
SISTEMA DE CONTROLE RESIDENCIAL BASEADO NA
PLATAFORMA ARDUINO
GOIÂNIA – GO
2011
BRUNO DE CASTRO RODRIGUES SILVA
LUCIANO ANTÔNIO DE ASSUNÇÃO CÂNDIDO
SISTEMA DE CONTROLE RESIDENCIAL BASEADO NA
PLATAFORMA ARDUINO
Monografia apresentada como requisito parcial
para a conclusão do curso de graduação em
Ciência da Computação ao Instituto Unificado
de Ensino Superior Objetivo - IUESO.
Orientador: Prof. Dr. Antônio Marcos Medeiros
GOIÂNIA – GO
2011
SILVA, Bruno de Castro Rodrigues
CÂNDIDO, Luciano Antônio de Assunção
SISTEMA DE CONTROLE RESIDENCIAL BASEADO NA
PLATAFORMA ARDUINO
Goiânia, 2011. 48 p.
Monografia apresentada ao Instituto Unificado de Ensino Superior
Objetivo – IUESO, para conclusão do curso de graduação em
Ciência da Computação.
Orientador: Prof. Dr. Antônio Marcos Medeiros
1. Arduino 2. Android 3. Automação Residencial 4. Bluetooth
BRUNO DE CASTRO RODRIGUES SILVA
LUCIANO ANTÔNIO DE ASSUNÇÃO E CÂNDIDO
SISTEMA DE CONTROLE RESIDENCIAL BASEADO NA PLATAFORMA
ARDUINO
Monografia apresentada ao Instituto Unificado de Ensino Superior Objetivo como
requisito parcial para a conclusão do curso de graduação em Ciência da
Computação.
Goiânia, 11 de novembro de 2011.
Nota: ____________
_____________________________________________________________
Prof. Dr. Antônio Marcos Medeiros
(Orientador)
_____________________________________________________________
Prof. Dr. José Wilson Lima Nerys
(Examinador)
_____________________________________________________________
Profª. Ms.ª Luciana Valéria Braga dos Santos Carvalho
(Examinador)
AGRADECIMENTOS
Agradecemos ao professor Antônio Marcos, da Engenharia Elétrica, por se dispor a
nos ajudar, mesmo não sendo professor do nosso curso. Agradecemos também aos
professores Weysller e Wedson, da Ciência da Computação, e Fabrício, da
Engenharia Elétrica, pela ajuda no decorrer do trabalho.
Eu, Bruno, agradeço a Deus pelo conhecimento adquirido para a realização deste
trabalho. Agradeço também à minha mãe, Tânia, pela paciência e incentivo, à minha
família pela tolerância, ao amigo arquiteto Paulo Morgan pela ajuda na confecção da
maquete e a minha amiga e companheira Lorena pela ajuda no desenvolvimento
deste trabalho.
Eu, Luciano, agradeço à minha mãe por contribuir para minha formação, ao meu pai
pelos aconselhamentos e ao meu irmão que sempre me ajudou quando precisei.
RESUMO
A área de Automação Residencial vem se expandindo no Brasil, trazendo tendências que antes eram vistas apenas em países europeus e nos Estados Unidos. Uma dessas tendências é o controle unificado de sistemas residenciais, que visa unir os controles de todos os sistemas dentro da residência em apenas um aparelho. Este trabalho apresenta uma solução de controle residencial centralizado em um smartphone, capaz de controlar o sistema de iluminação e o sistema de segurança em um único programa. Toda a estrutura física da solução é feita sobre a plataforma Arduino™, projeto open-source hardware que permite a construção ágil de circuitos. Para controlar o sistema remotamente foi desenvolvida uma aplicação em um smartphone com sistema operacional Android™ que se comunica via Bluetooth® com o sistema residencial. Palavras-chave: Arduino – Android – Bluetooth – Automação Residencial
ABSTRACT
The Home Automation area is expanding in Brazil, bringing trends that had been seen only in European countries and the United States. One of the trends is the unified control of home systems, which aims put together the controls of the all residence systems inside a device. This work presents a solution of residence control centralized on a smartphone, capable of controlling the lighting system and security system in a singles program. All the physical structure of the solution is made on de Arduino™ platform, an open-source hardware project that allows the construction of quick circuits. For controlling the system remotely was developed an application on a smartphone with Android™ Operational System that communicates with residential system by Bluetooth®. Keywords: Arduino – Android – Bluetooth – Home Automation.
ABREVIATURAS E SIGLAS
AR Automação Residencial;
ABESE Associação Brasileira das Empresas de Sistemas Eletrônicas
de Segurança;
AURESIDE Associação Brasileira de Automação Residencial;
EPROM Erasable Programmable Read-Only Memory;
EEPROM Electrically-Erasable Programmable Read-Only Memory;
E/S Entrada e Saída;
HVAC Heating, Ventilating and Air Conditioning;
IDE Integrated Development Environment;
IEEE Institute of Electrical and Electronics Engineers;
LAN Local Area Network;
LED Light Emitting Diode;
OSI Open System Interconnection;
PROM Programmable Read-Only Memory;
PWM Pulse-Width Modulation;
RAM Random Access Memory;
ROM Read-Only Memory;
SMS Short Message Service;
USB Universal Serial Bus;
WLAN Wireless Local Area Network.
LISTA DE ILUSTRAÇÕES
Figura 1: Interruptor compatível com x-10 ................................................................. 21
Figura 2: Lâmpada compatível com x-10 .................................................................. 21
Figura 3: Crescimento do faturamento do mercado de Sistemas de Segurança
Eletrônica no Brasil ................................................................................................... 22
Figura 4: Arquitetura Genérica de um Microcontrolador ............................................ 24
Figura 5: Microcontrolador contém uma CPU como o microprocessador ................. 26
Figura 6: Elementos de um sistema de comunicação ............................................... 27
Figura 7: Topologias de Redes .................................................................................. 28
Figura 8: Logotipo atual do Arduino ........................................................................... 32
Figura 9: Arduino BT ................................................................................................. 34
Figura 10: Interface do IDE Arduino versão 00.22 ..................................................... 36
Figura 11: Receptor e emissor de infravermelho ....................................................... 40
Figura 12: Planta da casa apresentada na tela de interação com o usuário ............. 42
LISTA DE TABELAS
Tabela 1: Comparativo de gasto com e sem automação ........................................... 19
Tabela 2: Tipos de rede ............................................................................................. 29
Tabela 3: Potência e alcance das classes de Bluetooth ............................................ 30
Tabela 4: Constantes utilizadas no sistema .............................................................. 39
SUMÁRIO
1 INTRODUÇÃO ....................................................................................................... 12
2 AUTOMAÇÃO RESIDENCIAL ............................................................................... 14
2.1 Conceito e História ............................................................................................ 14
2.2 Domótica ............................................................................................................ 16
2.3 Eletrônica e Computação ................................................................................. 16
2.3.1 Formas de Controle .......................................................................................... 16
2.4 Controle Residencial ......................................................................................... 17
2.4.1 Visão Geral ....................................................................................................... 17
2.4.2 Consumo de Energia ........................................................................................ 18
2.4.3 Climatização ..................................................................................................... 19
2.4.4 Iluminação ........................................................................................................ 20
2.4.5 Sistemas de Segurança ................................................................................... 21
3 SOLUÇÃO PROPOSTA ......................................................................................... 24
3.1 Sistemas Microcontrolados .............................................................................. 24
3.1.1 Microcontroladores ........................................................................................... 24
3.1.2 Diferença entre Microcontrolador e Microprocessador ..................................... 25
3.2 Sistemas de comunicação ................................................................................ 27
3.2.1 Definição .......................................................................................................... 27
3.2.2 Redes Locais .................................................................................................... 28
3.2.3 Redes Sem Fio ................................................................................................. 29
3.2.4 Bluetooth .......................................................................................................... 30
3.3 Plataforma Arduino ........................................................................................... 32
3.3.1 A Placa Arduino ................................................................................................ 33
3.3.2 IDE Arduino ...................................................................................................... 35
3.3.3 Computação Física .......................................................................................... 36
3.4 Android ............................................................................................................... 37
3.5 Detalhamento da Solução ................................................................................. 37
3.5.1 Aplicação para testes ....................................................................................... 38
3.5.2 Lado Arduino .................................................................................................... 39
3.5.2.1 Sistema de Iluminação .................................................................................. 39
3.5.2.2 Sistema de Segurança .................................................................................. 40
3.5.2.3 Integração dos Sistemas ............................................................................... 41
3.5.3 Lado Android .................................................................................................... 41
4 ANÁLISE DOS RESULTADOS .............................................................................. 43
5 CONCLUSÃO ........................................................................................................ 45
6 REFERÊNCIAS ...................................................................................................... 46
APÊNDICES ............................................................................................................. 48
APÊNDICE A – Esquemático do Arduino BT ......................................................... 48
12
1 INTRODUÇÃO
A automação residencial sempre foi vista pela sociedade como algo
futurista, disponível apenas para poucas pessoas que tinham condições financeiras
melhores para cobrir os seus altos custos. Porém, esta realidade esta mudando aos
poucos. Muitas casas e apartamentos, hoje, já vêm equipados com alguns recursos
de automação residencial como controle de segurança, iluminação, entretenimento,
entre outros. Também é possível encontrar alguns desses dispositivos disponíveis
para compras por preços mais baixo do que eram praticados antigamente.
Os produtos estão com preços mais acessíveis, porém ainda existem
serviços que continuam caros. O que muitas vezes custa muito é a integração entre
os diferentes sistemas residenciais. Por exemplo: um sistema de controle de
acessos pode ser integrado com o Home Theater, que faz parte do sistema de
entretenimento, dependendo da pessoa que estiver acessando a sala de estar no
momento é tocada uma música de acordo com o gosto que o ele definiu no sistema.
Hoje existem poucos profissionais que atuam nesse campo. No Brasil já existem
algumas empresas que oferecem cursos de formação para profissionais que
desejam se engajar nesta área.
Assim como em outras áreas da tecnologia, a automação residencial no
Brasil ainda está atrasada se comparada a países como Estados Unidos e os
europeus. Ainda é um desafio, no Brasil, realizar a integração e centralização dos
sistemas residenciais. Com o advento dos “celulares inteligentes” (smartphones)
também surgiu outro desafio, expandir o controle dos sistemas residenciais para fora
da residência e permitir o acesso do usuário de onde ele estiver. Os smartphones
são capazes de realizar inúmeras tarefas, podendo até substituir o computador em
muitas atividades, o que os tornam hábeis a portar aplicativos mais robustos para
controlar e/ou monitorar remotamente os sistemas internos da residência.
Focado nesta necessidade, este trabalho visa desenvolver uma solução
em automação residencial que tenha uma interface de controle disponível em um
smartphone. O resultado final deste trabalho é um protótipo de um sistema
residencial controlado remotamente por um smartphone, possibilitando o controle da
iluminação residencial e o sistema de segurança. O sistema de segurança e o
13
sistema de iluminação são integrados. O sistema é desenvolvido sobre a placa de
circuito Arduino™, um projeto de open-source hardware que facilita o
desenvolvimento de aplicações físicas oferecendo funções de leitura e manipulação
de elementos físicos. O smartphone comunica diretamente com a placa utilizando a
tecnologia Bluetooth, sem a necessidade de um computador e/ou roteador como
intermediador. Para realizar esta conexão foi utilizada uma placa Arduino BT, um
modelo de Arduino™ que contém um modem Bluetooth® embutido, facilitando este
tipo de comunicação. A aplicação no smartphone para comunicar com a placa foi
desenvolvida sobre a plataforma Android™, sistema operacional para celulares
desenvolvido pelo Google®.
Este trabalho envolve diferentes elementos como Circuitos Integrados,
Sistemas Embarcados, desenvolvimento em baixo nível e comunicação de
dispositivos por rede sem fio. Todos estes elementos são englobados na Ciência da
Computação, fazendo com que ela seja uma ciência completa, indo além do
desenvolvimento de software em alto nível.
Os capítulos seguintes mostram um pouco do conceito e aplicação da
automação residencial, fazendo uma abordagem superficial aos seus elementos
básicos. Depois é feita uma visão geral sobre a plataforma Arduino™, suas
características e fundamentos, e mostrando também as redes de comunicação
possíveis e sistemas operacionais para dispositivos móveis. Por fim vem o
desenvolvimento da aplicação, detalhando a parte eletrônica e a parte
computacional do projeto.
14
2 AUTOMAÇÃO RESIDENCIAL
2.1 Conceito e História
A automação residencial (AR) visa diminuir o esforço humano dentro da
residência com mecanismos que trabalham para executar tarefas em casa. Qualquer
mecanismo que trabalhe para realizar alguma tarefa dentro de uma casa pode ser
classificado como automação residencial, desde tarefas simples, como um porteiro
eletrônico, até tarefas mais complexas, como controle do sistema de segurança da
residência. Porém a implementação de sistemas mais sofisticados de automação
residencial fica limitada pelo fator econômico.
Apesar de existir mecanismos de automação residencial acessíveis e com
baixos custos, o que muitas vezes sai caro, e que é classificado como um sistema
sofisticado, é a integração desses mecanismos. Um sistema que seja capaz de
integrar todos os mecanismos dentro da residência, ou uma parte deles, geralmente
é um sistema complexo que se não for bem planejado pode sair acima do custo
necessário. Quando não há uma adequação da tecnologia utilizada e do problema a
ser resolvido, o sistema pode sair mais caro do que o normal, gerando desperdício
de recursos. Para evitar esse desperdício, é necessário fazer um projeto de todo o
sistema, detalhando as suas funcionalidades e os seus objetivos, e então definir qual
ferramenta é mais apta para resolver o problema (BOLZANI, 2004a, p. 45).
Um fator que deve um pouco de preocupação é a forma que o sistema
deverá interagir com o usuário. Quando existe apenas um dispositivo o seu
manuseio é mais simples. Quando existem vários dispositivos separados o
manuseio torna-se um incômodo para o usuário com tantos controles. Ao integrar os
dispositivos a interface de controle deve ser o mais simples possível e também
apresentar todas as funcionalidades disponíveis ao usuário.
Historicamente a Automação Residencial não possui um marco de início,
porém adota-se que em meados de 1970 começaram os primeiros esforços na
confecção de produtos para controle de eletrodomésticos (BOLZANI, 2004a). O X-10
foi pioneiro na domótica1, desenvolvido pelo Pico Electronics de Glenrothes na
1 Domótica é explicado no item 2.2
15
Escócia em 1975, foi o primeiro protocolo de comunicação capaz de transmitir dados
entre produtos compatíveis com tal tecnologia através da linha elétrica, onde o
usuário controla à distância as funções limitadas de liga/desliga. Em pouco tempo
tornou-se muito vendido nos Estados Unidos para aplicações não integradas. Depois
de longos anos, em 1990 termina a patente da Pico Eletronics e em seguida a
Electronic Industries Association descreve um conjunto de normas para fixar uma
rede de desenvolvimento de comunicação de produtos domésticos, seu objetivo era
desenvolver um protocolo universal de baixo custo.
Logo após estas padronizações várias empresas interessadas em
desenvolver novos produtos para automação residencial surgiram no mercado.
Echelon Corporation, empresa norte-americana, criou o LonWorks, um protocolo de
controle residencial e predial, que hoje é o campeão de venda e atualmente recebeu
uma concessão para instalar leitores de energia inteligentes em toda Suécia e
Holanda.
No Brasil a história é ainda mais recente, somente em fevereiro de 2000
foi registrada a AURESIDE (Associação Brasileira de Automação Residencial), que
tem como missão divulgar conceitos a todos os envolvidos, difundir tecnologias,
homologar produtos e serviços, treinar e formar profissionais. Hoje há menos de 100
empresas associadas, as quais a maioria está instalada nas capitais do Sudeste e
Sul, demonstrando que o mercado ainda é restrito e carente de investimento.
Por se tratar de um conceito recente, ainda não foi criado um padrão de
desenvolvimento ou um conjunto de protocolos para reger a implantação de AR. Isso
se torna um problema tanto para o desenvolvimento quanto para a manutenção dos
equipamentos dificultando, principalmente, a integração de sistemas prontos.
Entidades internacionais e até nacionais, como a AURESIDE, tentam elaborar um
padrão para fomentar a tecnologia de Automação Residencial. Enquanto esses
padrões não existem, cabe ao profissional utilizar equipamentos e programação
flexíveis para facilitar a manutenção e integração.
16
2.2 Domótica
A palavra “Domótica” é uma junção da palavra em latim “Domus” (que
significa “casa”) com palavra robótica. Grosso modo, a domótica é a implantação de
elementos da robótica dentro da residência a fim de realizar tarefas como controle
de dispositivos ou consumo.
Diferente dos outros tipos de automação, a AR tinha uma dificuldade para
se adaptar ao usuário, pois ele estava sempre interagindo com o sistema de
diferentes formas, o que não permitia um padrão lógico no funcionamento dos
equipamentos. Para suprir essa necessidade foi criada a domótica, que incorporou
todos os conceitos de Automação Residencial e se tornou uma ciência
multidisciplinar, agregando conceitos de outras ciências, como Arquitetura, Ciência
da Computação, Sociologia, Psicologia, entre outras, a fim de estudar e
compreender as necessidades dos usuários dentro uma casa (BOLZANI, 2007).
É comum as pessoas confundirem Automação Residencial com domótica,
visto que os dois possuem os mesmos preceitos. Alguns autores tratam a domótica
e a AR como a mesma coisa, outros já as tratam como ciências diferentes. O fato é
que tanto AR quanto domótica existem com finalidade: facilitar a interação do
residente com os equipamentos dispostos dentro da sua residência, reduzindo ao
máximo o contato.
2.3 Eletrônica e Computação
2.3.1 Formas de Controle
Devido ao crescimento de soluções para automação residencial, fez-se
necessário diferenciar as formas de controle. Hoje os fabricantes dividem sistemas
em centralizados e descentralizados. Esta forma de separação vem para contribuir
na elucidação, pois soluções distribuídas com processamento descentralizado
poderiam ter um controle centralizado em uma central de automação.
17
Normalmente sistemas complexos compõe-se por um conjunto de
soluções descentralizadas, isto porque as várias ações que o sistema terá que
gerenciar tornará o projeto complicado em sua execução e programação. Por outro
lado, automação residencial centralizada é um conjunto de soluções conectadas a
uma central. “Na automação residencial as soluções mais complexas terão maior
desempenho sendo controladas em programadas de forma descentralizada e parece
ser uma tendência” (TERUEL, 2008, p. 29).
2.4 Controle Residencial
2.4.1 Visão Geral
Em uma residência automatizada é importante que exista um sistema de
controle sobre os equipamentos. Esse sistema de controle permite monitorar os
dispositivos conectados ajudando a reduzir os gastos e aumentando o conforto do
morador, mantendo-o informado sobre tudo o que está acontecendo sem que ele
esteja presente de frente ao equipamento. Podemos ter como um exemplo prático
deste controle um software que mostra todas as lâmpadas de uma casa, indicando
se estão acesas ou apagadas, permitindo ao morador acender ou apagar qualquer
lâmpada sem ir até ela.
Bolzani (2004a) afirma que em sistemas maiores, como um condomínio
inteligente, além do monitoramento de todo o sistema, também deve ser feito um
monitoramento dos subsistemas que compõem esse sistema, destinando a cada
uma estação de controle. Isso facilita a detecção e resolução de problemas. Bolzani
(2004a) também cita 13 subsistemas (denominados também de sistemas domóticos)
que constituem as principais abordagens da automação residencial e juntos
fornecem um controle total da residência. Esses 13 sistemas, são amplamente
utilizados no continente europeu, América do Norte e no Japão, porém no Brasil
ainda não são utilizados em conjuntos, apenas alguns módulos separados. Esses
sistemas domóticos são:
1. Sistema de fluídos e detritos;
2. Sistema de energia elétrica;
18
3. Sistema de ventilação, aquecimento e ar-condicionado;
4. Sistema de redes de computadores;
5. Sistema de controle de iluminação;
6. Sistema de detecção e combate de incêndios;
7. Sistema de segurança patrimonial;
8. Sistema de controle e automação de acessos;
9. Sistema de detecção e controle mecânico;
10. Sistema de telefonia;
11. Sistema de áudio e vídeo;
12. Sistema de monitoramento e visualização;
13. Sistema de auditoria e otimização de processos.
2.4.2 Consumo de Energia
Atualmente a energia elétrica é um recurso essencial para famílias,
comerciantes e indústrias. Entretanto a falta de uma regulamentação de projetos e
implantação de circuitos eletrônicos residências permite a montagem de toda
estrutura por pessoas que não possuem conhecimento técnico suficiente, o que na
maioria dos casos resulta em transtornos e gasto.
Segundo a EPE (Empresa de Pesquisa Energética), as residências
consumiram 5,3% mais energia em relação aos três primeiros meses de 2010,
motivado pela à expansão e ao maior uso de eletrodomésticos nos domicílios, em
decorrência do aumento da renda e crédito facilitado a pessoas físicas. Entretanto, o
consumidor deve ficar atento na hora de comprar um aparelho eletrônico,
pesquisando se o produto tem baixo consumo e integração de sistemas de
automação ou internet.
É importante em uma casa ou edifício que mantêm alguma automatização
possuir meios para a proteção de descargas elétricas e de reserva de energia, assim
evitando-se danos aos equipamentos de controle. Sistemas de segurança precisam
operar sem parar, então é interessante possuir um nobreak2 para casos em que o
2 Nobreak é um dispositivo que oferece uma proteção extra ao seu equipamento. No caso da falta de
energia elétrica, o nobreak continua alimentando os equipamentos ligados a ele.
19
fornecimento seja interrompido por um curto espaço de tempo, porém se a duração
for longa é recomendável o uso de um gerador à gasolina ou diesel.
Para quem possui vários aparelhos eletrônicos é fundamental preocupar-
se com as instalações elétricas, pois para automatizar uma residência é necessário
uso de circuitos integrados, que na maioria das vezes são muito sensíveis a
variações de tensão e a presença de ruídos na linha pode comprometer a
transmissão de dados, efetuada pelo gestor residencial.
Um dos problemas de uma casa é o custo da energia elétrica, o usuário
normalmente não tem um controle eficaz de quanto gastou durante um determinado
período. Com ajuda de hardwares e softwares para a automatização conseguimos
saber exatamente quanto já foi consumido. Fazendo um trabalho complementar o
gestor consegue trabalhar para otimizar ao máximo o uso da luz solar sem
comprometer o ar-condicionamento e o conforto, trazendo economia na conta de
energia. Segundo o artigo da revista IP é possível economizar até 30% o consumo
total de energia, na tabela a seguir é demonstrado quanto o consumidor
economizaria em reais.
Aparelho
Eletronico/
Elétrico
Potência
(watts)
Uso/Diário
(horas)
Uso/Mensal
(Dias)
Tarifa
(Celg-D)
Consumo
Médio
Mensal
(Kwh)
Valor
gasto sem
Automa-
ção
Valor
aplicando
auto-
mação
Lâmpada FLC 220V
15 6h 30 0.29353 2.7 $ 0.792 $ 0.554
Ar condicio-nado Slipt 9.000 BTU/H
2637 3h 30 0.29353 7.911 $ 69.510 $ 48.657
DUCHA FLORENZA
7800 0.17h (10min)
30 0.29353 37.44 $ 10.970 $ 7.679
Tabela 1: Comparativo de gasto com e sem automação
2.4.3 Climatização
Segundo o dicionário Aurélio (1999), climatização é o “Conjunto de
processos empregados para se obterem, por meio de aparelhos, em recinto
fechado, condições ambientais de temperatura, umidade, pressão, etc. [...]”. Neste
contexto a climatização é tida como um recurso de automação residencial, pois
utiliza de aparelhos para simular uma condição de ambiente. Porém, climatização
20
está mais voltada para o contexto de domótica que para AR. Um sistema sofisticado
de climatização visa oferecer um ambiente agradável ao gosto do usuário, para isto
é necessário entender a necessidade e preferência do usuário e o clima ao seu
redor.
Hoje existem os Sistemas HVAC (Heating, Ventilating and Air
Conditioning, ou Aquecimento, Ventilação e Ar Condicionado) que permitem
controlar e monitorar o clima do ambiente, a qualidade do ar, a troca de
temperaturas, entre outras funções. Os recursos dos Sistemas HVAC variam de
acordo com o modelo e o fabricante, partindo de sistemas simples, que aplicam
apenas alguns princípios de HVAC, até sistemas mais sofisticados, que aplicam
todos os recursos. Os Sistemas HVAC são muito utilizados em automação predial,
mas já são encontrados adaptados para funcionar em residências.
2.4.4 Iluminação
Com a automação residencial podemos controlar toda a iluminação da
residência, através de controles remoto, via SMS de celulares entre outros modos.
Recentemente a Google® anunciou a “android@home” que consiste em uma casa
inteligente controlada pelo sistema operacional Android™. Confortavelmente
mudamos a intensidade das lâmpadas obtendo um ambiente adequado para assistir
a um filme ou ler um livro, tudo isso apenas com um toque no smartphone ou tablet.
O controle da iluminação foi um dos primeiros itens de automatização de
uma casa. Os produtos fabricados com a tecnologia x-10 foram os precursores e
também os mais vendidos, durante vinte e cinco anos. Hoje encontramos estes
produtos sendo vendidos embutidos em sistemas mais complexos de gestão
residencial. Nas figuras 1 e 2 podemos observar que os produtos portadores da
tecnologia x-10, possuem uma interface amigável e de fácil instalação.
21
Figura 1: Interruptor compatível com x-10
Figura 2: Lâmpada compatível com x-10
A economia de energia é obtida através de vários sensores que
verificarão o estado do ambiente e aplica a regulagem da iluminação necessária,
através de uma programação pré-configurada, conseguindo uma redução de
consumo de 30% a 50%, contribuindo assim, para um consumo mais inteligente.
2.4.5 Sistemas de Segurança
Em um levantamento feito pela Associação Brasileira das Empresas de
Sistemas Eletrônicas de Segurança (ABESE) foi revelado que o mercado de
dispositivos de segurança teve um crescimento de 12% em 2010 em relação a 2009,
fechando o ano com um faturamento de US$1,680 bilhão. Nos últimos dez anos o
mercado cresceu em média 13% ao ano, segundo as pesquisas da ABESE. A figura
3 apresenta um gráfico baseado nos dados retirados da ABESE (2011) que esboça o
faturamento anual com sistemas de segurança eletrônica no intervalo de 2006 a
2010.
22
Porém, aproximadamente 88% dos produtos levantados pela ABESE são
consumidos por clientes comerciais. Ainda assim o setor de segurança é o que mais
cresce dentro de automação residencial. Bolzani (2004a) afirma que dentre todos os
sistemas domóticos, os sistemas de segurança patrimonial são os mais procurados
pelos usuários.
Figura 3: Crescimento do faturamento do mercado de Sistemas de Segurança Eletrônica no Brasil
Os sistemas de segurança patrimonial utilizados na automação
residencial vão além dos sistemas utilizados por clientes comerciais. Bolzani (2004a
e 2004b) diz que um sistema de segurança patrimonial possui alguns pontos básicos
que devem ser cumpridos. Esses pontos são:
a) Prevenção ou dissuasão: o sistema deve inibir e promover a desistência do
invasor;
b) Detecção e alarmes: o sistema deve comunicar com todos os sensores para
identificar uma possível invasão e acionar os alertas;
c) Reconhecimento ou identificação: o sistema deve ser capaz de identificar se a
pessoa é o usuário ou não e tomar as devidas decisões;
d) Retardo: o sistema analisa as condições de todos os sensores e câmeras antes
de tomar uma decisão ou aguarda uma ordem do usuário para evitar falsos
alarmes;
1,026
1,2
1,4
1,5
1,68
1
1,1
1,2
1,3
1,4
1,5
1,6
1,7
1,8
2006 2007 2008 2009 2010
Faturamento Anual com Sistemas de Segurança Eletrônica
Faturamento Anual (embilhões de dólares)
23
e) Reação: o sistema deve disparar os alertas programados assim que houver uma
invasão, a fim de cancelá-la.
Bolzani (2004a) também diz que o sistema deve conter um software
específico que é responsável pelo tratamento dos sinais emitidos pelos sensores.
Este software deve possuir duas abordagens, um para o caso de o usuário não estar
presente na residência e outra para o caso de ele estar presente. O sistema deve
ser capaz de evitar que o invasor chegue até o usuário, mantendo-o sempre em
segurança dentro da residência. Caso o usuário não esteja presente, o sistema tem
que ser capaz de enviar alertas remotamente informando da possível invasão da
residência ou solicitando algum comando, caso haja dúvidas sobre a autenticidade
da invasão.
Bolzani (2004a e 2004b) considera o sistema de Segurança Patrimonial
como um sistema maior que se divide em cinco subsistemas. Estes sistemas são:
a) Detecção perimetral: se baseia em sensores e barreiras que monitoram o
perímetro da residência detectando possíveis invasões;
b) Sensoriamento interno: consiste em sensores que supervisionam o interior da
residência;
c) Circuito Fechado de Televisão (CFTV): associado ao Sistema de Sensoriamento
Interno, CFTV consiste em câmeras colocadas em locais críticos da residência
(como a entrada ou áreas de acesso restrito) adaptadas para cada tipo de local,
enviando as gravações para um servidor3 que armazena as imagens;
d) Controle de Acessos: também associado ao Sistema de Sensoriamento Interno,
controla o acesso das pessoas a determinados pontos da residência através de
crachás, cartões, sistemas biométricos ou outros meios de identificação;
e) Controle de Rondas: consiste em controlar a movimentação do pessoal
responsável pela segurança para evitar brechas para uma invasão, este se aplica
em casos onde existe segurança feita por pessoas.
3 Computador com grande capacidade de processamento destinado a tarefas dedicadas.
24
3 SOLUÇÃO PROPOSTA
3.1 Sistemas Microcontrolados
3.1.1 Microcontroladores
Os microcontroladores são componentes que possuem os três principais
elementos da arquitetura de Von Neumann4 (CPU, memória e E/S), integrados em
um único componente, como representado na figura 4. Tanenbaum se refere aos
microcontroladores como “computadores embutidos” e diz que são “computadores
que são embutidos em dispositivos que não são vendidos como computadores”
(TANENBAUM, 2007, p. 18). Por possuírem a mesma arquitetura que os
computadores comuns, os microcontroladores podem realizar tarefas semelhantes,
porém com capacidade processual muito reduzida.
Figura 4: Arquitetura Genérica de um Microcontrolador
4 Arquitetura proposta pelo matemático John Von Neumann onde o computador deve conter
componentes para realizar a entrada, o processamento, o armazenamento e a saída dos dados.
25
Os microcontroladores são encontrados em tipos variados de dispositivos
no mercado como eletrodomésticos, brinquedos eletrônicos, periféricos de
computadores e até armamentos militares. Por essa variedade de aparelhos os
microcontroladores possuem um mercado mais amplo que os microprocessadores.
Segundo Tanenbaum (2007), os microcontroladores podem ser
classificados em dois tipos: microcontroladores de propósito geral, que consistem
apenas em pequenos computadores com atividades comuns; e microcontroladores
de propósito específico, que possuem uma vertente definida, contendo um conjunto
de instruções específico para alguma atividade (multimídia, cálculos fracionários,
etc.).
Por possuírem uma arquitetura completa e uma estrutura simplificada, os
microcontroladores podem obter melhor desempenho em tarefas que não
demandam muito processamento, mas que trabalham continuamente, por exemplo,
um circuito responsável por monitorar a temperatura de um ambiente, que precisa
obter dados reais em tempo real porém não demanda grande capacidade
computacional para isto. A estrutura simplificada de um microcontrolador também
permite que seu custo financeiro seja reduzido, podendo ser comprado por um preço
bem mais baixo que um microprocessador.
3.1.2 Diferença entre Microcontrolador e Microprocessador
Em geral, um microcontrolador possui mais dispositivos que um
microprocessador, sendo hábil para executar mais tarefas que um microprocessador.
Os microprocessadores são mais voltados para o alto processamento,
conseguindo trabalhar com grandes quantidades de dados em grande velocidade.
Para isso, os microprocessadores possuem apenas a CPU (Central Process Unit),
que é responsável pelo processamento. Os demais dispositivos necessários devem
ser implantados externamente ao microprocessador, formando módulos auxiliares.
Esses módulos são responsáveis pelas funções principais da arquitetura Von-
Neumann (memórias e E/S), e outros, caso seja necessário. No caso de memória,
os microprocessadores modernos possuem a memória cache acoplada, utilizando
26
para armazenar as informações a serem executadas, porém ainda existem
diferenças em relação aos microcontroladores (FERREIRA, 1998).
Nos microcontroladores todos estes módulos estão inseridos em um único
componente (FERREIRA, 1998; NICOLOSI, 2007), o que permite que o
microcontrolador seja autônomo, ou seja, um desenvolvedor de sistemas não
precisa se preocupar com a entrada e saída de dados ou a forma de
armazenamento pois o microcontrolador mantém todos esses componentes
encapsulados em um único chip.
Figura 5: Microcontrolador contém uma CPU como o microprocessador (NICOLOSI, 2007)
No interior do microcontrolador também existe uma CPU. Esta CPU não é
tão desenvolvida como a de um microprocessador, sendo suficiente apenas para
trabalhar com poucos dados a uma baixa frequência. Comparando
microprocessador com microcontrolador, Nicolosi (2007) afirma que a CPU do
27
microcontrolador corresponde ao microprocessador em um computador. Esta
afirmação foi representada na figura 5.
3.2 Sistemas de comunicação
3.2.1 Definição
Entende-se por sistemas de comunicação, aquele que, através de um
canal direto, consegue transmitir uma mensagem ao seu destino, assim como
demonstrado na Figura 6.
Figura 6: Elementos de um sistema de comunicação (HAYHN, 2004)
Em seu livro, HAYKIN (2004) afirma que existem dois tipos básicos de
transmissão:
1. Radiodifusão (broadcasting): é aquele que utiliza apenas um transmissor robusto
para vários receptores. Neste tipo de transmissão os sinais que possuem
informação correm somente para uma direção. Exemplo deste tipo é a
transmissão de rádio e televisão, onde uma antena distribui o sinal em uma área
com várias antenas receptoras.
2. Comunicação ponto a ponto: é feita entre um transmissor e um único receptor.
Nesse caso normalmente a comunicação é feita de forma bidirecional, ou seja, o
receptor e o transmissor trocam dados entre si. Exemplo são as redes de
computadores, onde os computadores são conectados por cabos e tanto enviam
quanto recebem dados.
Em um sistema de comunicação pode se destacar outros dois recursos
importantes: a potência transmitida e a largura de banda do canal. A potência
28
transmitida é a intensidade do sinal enviado pelo meio. A largura de banda do canal
é o espaço alocado para a transmissão do sinal (HAYKIN, 2004).
3.2.2 Redes Locais
As redes locais, conhecidas também como LAN’s (Local Area Networks),
são redes reservadas, que abrangem um único edifício ou campus universitário.
Normalmente é utilizada para conectar computadores pessoais e estações de
trabalho nas empresas e em instalações industriais, para o compartilhamento de
recursos (impressoras, scanner ou multifuncionais) ou envio/recebimento de
informações. Segundo Tanenbaum (2003), existem três características que distingue
a rede LAN da demais:
Tamanho;
Tecnologia de transmissão;
Topologia.
Figura 7: Topologias de Redes (ROSS, 2008)
29
As redes locais possuem tamanho limitado, não podendo ultrapassar a
distância de 100 metros conforme a NBR 14.565 (sem a necessidade de repetidores
de sinal5).
Uma rede local geralmente utiliza-se o cabo como meio de transmissão,
porém já existem muitas redes feitas com comunicação sem fio (wireless), neste
caso levam a nomenclatura de WLAN (Wireless Local Area Network).
Topologia é um termo que caracteriza como os objetos estão dispostos
em uma área, podemos visualizar na figura 7 alguns tipos de topologia.
3.2.3 Redes Sem Fio
Avançamos por um caminho de grandes inovações tecnológicas.
Passamos de computadores que ocupavam galpões para máquinas que cabem
dentro do bolso. Podemos lembrar também de quando se iniciou o compartilhamento
de recursos, como impressoras e scanners. Hoje passamos do mundo estático para
o móvel e com ele surgiu à necessidade de uma rede permitisse essa mobilidade. As
redes sem fio vieram para contemplar essa nova exigência.
Diante deste requisito, os engenheiros começaram a desenvolver
algumas tecnologias de rede sem fio. O Institute of Electrical and Electronics
Engineers (IEEE) já possui padrões para normalizar as redes sem fio que existem
hoje no mercado. Esses padrões podem ser vistos na tabela 2.
Tipo de Rede
Cobertura Função Custo Largura de
Banda Padrões
WPAN
Espaço operacional pessoal;
normalmente 10 metros
Tecnologia de substituição de cabeamento;
redes pessoais
Baixo 0,1-4 Mbps IrDA, Bluetooth,
802.15
WLAN Prédios ou campus; normalmente 100
metros
Extensão ou alternativa para redes cabeadas
Médio-baixo 1-54 Mbps 802.11a, b, g, HIPERLAN/2
WWAN Nacional através de vários fornecedores
Extensão de rede local
Médio-alto 8 Kbps-2Mbps
GSM, TDMA, CDMA, GPRS,
EDGE, WCDMA
Redes de
Satélite Global
Extensão de rede local
Alto 2 Kbps-
19.2 Kbps TDMA, CDMA,
FDMA
Tabela 2: Tipos de rede (ROSS, 2008)
5 Equipamentos responsáveis por replicar o sinal para evitar atenuação antes de chegar ao destino
30
3.2.4 Bluetooth
O Bluetooth é um padrão de comunicação entre dispositivos lançando em
1998 por um consórcio de empresas denominado Special Interest Group (SIG),
composto inicialmente por Nokia, Motorola, Intel, IBM, Toshiba e Ericsson. No final
do mesmo ano já existiam quatrocentas empresas associadas ao SIG. O objetivo
inicial desta tecnologia era padronizar a comunicação entre celulares e periféricos
sem a utilização de cabos, entretanto o mercado incorporou a tecnologia também
em notebooks, PDAs, teclados, impressoras, mouses e fones de ouvido, entre
outros dispositivos.
Em 1999 foi lançada a versão release 1.0. Ao final do mesmo ano,
recebeu o prêmio “Best of Show Technology Award” no COMDEX6 (Computer
Dealers’ Exhibition). Dois anos depois, 500 tipos de aparelhos já utilizavam a
tecnologia para troca de dados entre dispositivos.
Os dispositivos que portam a tecnologia Bluetooth operam na banda ISM
(Industrial, Scientific and Medical band7) em uma largura de 2,450GHz, podendo
variar em alguns países entre 2,400GHz a 2,500GHz. Como se trata de uma
frequência de rádio aberta utiliza-se de um transceiver (um dispositivo
transmissor/receptor aplicado na comunicação de dispositivos) para diminuir a
atenuação e interferência no sinal, e ainda utiliza a técnica de espalhamento de
espectro por saltos em frequência.
O transceptor Bluetooth é classificado quanto a sua potência de
transmissão. Essa classificação é detalhada na tabela 3.
Classe Potência máx. de saída Potência min. de saída Alcance
1 100 mW (20 dBm) 1 mW(0 dBm) ≈ 100 m
2 2,5 mW (4 dBm) 0.25mW(-6 dBm) ≈ 10 m
3 1 mW(0 dBm) N/A ≈ 10 cm
Tabela 3: Potência e alcance das classes de Bluetooth (Bluetooth Radio, 2011)
6 COMDEX (Computer Dealers' Exhibition) uma feira de exposição que acontecia em novembro,
iniciando em 1979 e tendo sua ultima edição em 2003, expondo periféricos e softwares. 7 Industrial, Scientific and Medical (ISM) é uma banda de radio reservada internacionalmente para
o uso de radio frequência nos campos da industria, ciência e medicina.
31
Podemos entender por modulação como a transformação de um sinal que
possui uma informação em seu formato original em um sinal “transformado”
adequadamente ao meio de transmissão o qual será submetido. Este processo
ocorre por meio de um sinal senoidal chamado de portadora, cuja frequência é maior
que a frequência contida no sinal original.
A tecnologia Bluetooth possui um modo chamado de Enhanced Data Rate
(Taxa de Dados Aprimorada) que é o esquema de modulação alterando o pacote. Os
códigos de acesso e cabeçalho do pacote são transmitidos com modulação GFSK8,
entretanto a sincronização de carga é feita usando o esquema PSK9.
A tecnologia Bluetooth possui uma arquitetura baseada na camada de
rádio, que obedece à camada física do modelo OSI10, lidando com a transmissão de
dados via RF (Rádio Frequência) com as respectivas modulações. Logo acima a
camada Baseband (ou banda base) descreve a especificação do Controlador de
Enlace (LC), este protocolo é responsável pelo controle do enlace de baixo nível. O
LMP (Link Manager Protocol) ou Protocolo de Gerenciamento de Enlace é
responsável pela configuração e gerenciamento do enlace.
O HCI é a Interface de Controle do Host (Host Controller Interface),
fornece às camadas superiores uma interface default de acesso ao LMP. O Logical
Link Control and Adaptation Protocol, tem a função de multiplexação e
demultiplexação, lida com a qualidade do serviço QoS11 e segmenta a montagem
dos pacotes.
O Bluetooth foi adotado como meio de comunicação nesta solução por
permitir a conexão direta entre os dispositivos, dispensando o uso de roteadores ou
outros dispositivos para redirecionar o sinal do celular para a placa. Outro fator
decisório para a escolha do Bluetooth é o fato de, basicamente, todos os celulares e
(principalmente) smartphones possuírem um modulador Bluetooth integrado
nativamente.
8 GFSK (Gaussian Frequency Shift Keying) é um tipo de modulação no qual consiste em codificar os
dados de uma portadora. Os pulsos passam por um filtro gaussiano diminuindo assim sua largura espectral, sendo o bit 1 representado por uma variação positiva da frequência, e o bit 0 por uma variação negativa. 9 PSK (Phase Shift Keying) é uma forma de modulação em que a informação do sinal digital é
embutida nos parâmetros de fase da portadora. Neste sistema de modulação, a onda portadora é deslocada em graus de 45, 135, 225 e 315 em intervalos uniformes. 10
Arquitetura para redes de computadores que visa a padronização das diferentes redes 11
QoS do inglês ( Quality of Services) é um conjunto de técnicas para transmissão de dados, que garante a integridade dos dados.
32
3.3 Plataforma Arduino
Arduino™ é uma plataforma open source hardware composta em duas
partes: a placa Arduino™, que é o componente físico (hardware), e o IDE Arduino™,
que é o software utilizado no computador para desenvolver os programas que serão
executados na placa Arduino™ (BANZI, 2008). Ambas essas partes serão mais
detalhadas nos próximos capítulos.
Figura 8: Logotipo atual do Arduino™
O Arduino™ surgiu na Itália no ano de 2005. A equipe responsável pela
criação e manutenção do projeto (intitulada Arduino Team) é composta por Massimo
Banzi, David Cuartielles, Tom Igoe, Gianluca Martino e David Mellis. A ideia por trás
do projeto é ter um sistema que permita o desenvolvimento ágil de circuitos,
ajudando iniciantes em eletrônica no aprendizado.
Por ser open source hardware o Arduino oferece um hardware e software
bem flexíveis, ou seja, os códigos fonte do Arduino ou os esquemáticos ficam
disponíveis para que qualquer pessoa possa modificá-lo de acordo com sua
problemática, sem nenhuma cobrança de direitos autorais. Isso permite a criação de
outros modelos mais focados em uma situação (como uma conexão sem-fio, por
exemplo).
O Arduino™ foi escolhido para esta solução pela facilidade e agilidade
que a plataforma oferece para o desenvolvimento das aplicações. Por possibilitar a
programação de circuitos em um nível mais alto, o Arduino™ faz a computação
física ficar mais semelhante ao desenvolvimento de softwares aplicativos, que está
mais presente no nosso dia-a-dia.
33
3.3.1 A Placa Arduino
A placa Arduino™ é a parte física da Plataforma Arduino™. Baseia-se em
uma placa de circuito contendo um microcontrolador e outros componentes
complementares (chip de conversão serial, cristal de frequência, etc.). O
microcontrolador do Arduino™ contém um bootloader12 gravado que é responsável
por executar os programas que serão inseridos pelo programador.
As placas Arduino™ oficiais (e também a maioria das placas não oficiais)
utilizam os microcontroladores Atmel® AVR, família megaAVR13 (serie ATmega)
(Arduino, 2011). Porém existem placas não oficiais montadas sobre outros
microcontroladores. Como dia, por ser um projeto com licença livre, a “comunidade”
é livre para utilizar os esquemáticos como quiser. Em uma entrevista, David Mellis
diz que “uma vantagem é a possibilidade de adaptar o modelo de negócios e o
fornecimento a diferentes situações. [...] Muitas pessoas têm desenhado novas
placas com base nos projetos anteriores.” (MELLIS, 2009).
Para fazer a captura de informações, o Arduino™ dispõe de portas (ou
pinos) digitais e analógicas.
As portas digitais podem ser utilizadas como entrada ou saída de dados,
conforme o que o programador definir no código do programa. Servem para a
leitura de dados simples, que enviam apenas um pulso de energia como um
botão e para a escrita de dados. Dentre as portas digitais, duas são dedicadas à
comunicação serial, ligadas paralelamente às portas Rx e Tx14 do
microcontrolador, o que possibilita a troca de sinais com outro microcontrolador
ou um computador;
As portas de entrada analógica são responsáveis por leitura de dados
analógicos (como a tensão de um sensor). O microcontrolador lê o valor destas
portas e converte em um valor entre 0 e 1023 (BANZI, 2008);
12
Um programa gravado diretamente no chip que é responsável por inicializar os outros programas quando o circuito é ligado 13
O microcontrolador ATmel® AVR é dividido em quatro famílias: tinyAVR, megaAVR, XMEGA e At94k 14
Pinos Rx (receptor) e Tx (transmissor) responsáveis por receber e enviar sinais, respectivamente
34
As portas de saída analógica são algumas das portas digitais que podem ser
programadas para enviarem sinais analógicos. Essas portas possuem PWM15, o
que permite que se controle a intensidade do sinal enviado.
A quantidade de portas de uma placa Arduino™ varia de acordo com a
quantidade de pinos disponíveis no microcontrolador. O Arduino Mega, por exemplo,
utiliza um microcontrolador ATmega1280 e disponibiliza 54 portal digitais e 16 portas
analógicas. Já o Arduino Uno utiliza um microcontrolador ATmega328 e disponibiliza
apenas 14 portas digitais e 6 portas analógicas.
Além das portas digitais e analógicas, o Arduino™ possui uma porta serial
que é ligada às portas Rx e Tx do microcontrolador. O dispositivo serial conectado à
placa pode variar com os diferentes modelos de placa. O mais comum é uma porta
USB, mas é fácil encontrar placas com modems Bluetooth ou conectores ethernet16.
Além de receber os programas essas portas seriais podem receber dados (vindos de
um computador ou um celular, por exemplo).
Na solução deste trabalho foi utilizada uma placa Arduino BT. Esta placa
possui um modulador Bluetooth integrado que faz a comunicação serial com os
outros dispositivos. A placa utilizada é baseada no microcontrolador ATmega328,
com um clock de 16MHz. O Arduino BT possui 14 portas digitais, 4 delas contendo
PWM, e 6 portas analógicas.
Figura 9: Arduino BT
15
Pulse-Width Modulation (ou MLP - Modulação por Largura do Pulso) permite o controle da carga elétrica emitida 16
Tecnologia para conexão de redes locais
35
3.3.2 IDE Arduino
O IDE (Integrated Development Environment) Arduino™ é o software que
permite o desenvolvimento dos programas que serão executados na placa
Arduino™. Desenvolvida pela mesma equipe que mantém o hardware, o IDE segue
o mesmo princípio open-source, todo o código fonte (desenvolvido em linguagem
Java) está disponível para download no site oficial.
A última versão disponibilizada até o desenvolvimento deste trabalho é a
versão 00.22 alpha17, disponível para os três principais sistemas operacionais.
Apesar de estar na versão alpha, o software Arduino™ está disponível no site oficial
para qualquer pessoa fazer o download. Na metade deste ano foi lançada a versão
1.0 beta18, até a data de encerramento deste trabalho não foram divulgadas as
mudanças em relação à versão anterior, porém pode-se perceber uma mudança no
front-end19.
Dentro do IDE Arduino™ existe um compilador que realiza as análises
(léxica, sintática e semântica) no código digitado e sinaliza os possíveis erros. Esses
arquivos de códigos fonte gerados pelo Arduino™ são chamados sketchs. De dentro
do próprio IDE o desenvolvedor faz o upload dos sketchs para a placa Arduino™.
Durante o upload o compilador converte os sketchs em arquivos assembly e
transfere para a placa via porta serial.
17
Versão em construção, mas apenas os envolvidos no projeto tem acesso ao software 18
Versão incompleta do software liberada publicamente para realizar testes com os usuários 19
“Camada” responsável por interagir com o usuário e coletar os dados para processamento
36
Figura 10: Interface do IDE Arduino™ versão 00.22
3.3.3 Computação Física
A Computação Física é a técnica que busca criar sistemas que possam
interagir com o mundo real, capturando informações do meio em que está inserido e
interagindo com essas informações. Funda-se em dispositivos eletrônicos (sensores,
atuadores) conectados a um microcontrolador com um software. O software no
microcontrolador é responsável por processar as informações recebidas dos
dispositivos conectados e executar a sua ação.
O campo de computação física é bastante explorar por designers e
artistas plásticos em suas obras, como afirma Banzi (2008, p. 3). Fonseca (2009) diz
que esta técnica pode ser utilizada por várias áreas, não apenas áreas e
computação ou elétrica.
[...] computação fisica {sic} engloba todas as disciplinas que permitem construir equipamentos digitais de computação que interagem com, e respondem à, realidade fisica {sic} analógica que os rodeia, usando software e hardware para este fim.
37
(FONSECA, 2009)
3.4 Android
Android™ é o nome dado a um conjunto de tecnologias, as quais podem
citar sistema operacional, middleware e interface gráfica, destinado principalmente
para os dispositivos móveis, tablets e smartphones.
Esta tecnologia tem o propósito de auxiliar o desenvolvimento de
aplicativos para dispositivos móveis e fazer com que todos os recursos sejam
utilizados. O Google®, empresa responsável pelo projeto Android™, atualmente,
disponibiliza o código de toda a plataforma, tornando-o um software livre não
havendo a necessidade da compra de uma licença para uso ou desenvolvimento,
porém existem algumas regras para a comercialização dos aplicativos. Esse fator foi
o que influenciou na escolha da plataforma Android™ para o desenvolvimento do
aplicativo remoto.
O Android™ foi construído baseado no sistema operacional Linux, porém
não dá suporte a alguns itens cruciais em algumas distribuições como windowing
system, componente de interface gráfica, e glibc (biblioteca C, utilizada para várias
arquiteturas de computadores). O grande chamariz do Linux, a segurança, foi
implementado no sistema Android™, os componentes são instalados
independentemente, portanto para um aplicativo tentar acessar aos dados de outro
aplicativo ele deverá ter permissão do usuário.
3.5 Detalhamento da Solução
A solução desenvolvida é composta por duas partes: a parte física, que
consiste no circuito elétrico e o programa carregado na placa Arduino™, e a móvel
(mobile), que se baseia no aplicativo desenvolvido no smartphone Android™. Ambas
as partes serão detalhadas nos capítulos seguintes.
Para simular um ambiente residencial o circuito foi montado sobre uma
maquete com dimensões em escala real de uma casa pequena, com quatro
cômodos sendo um o banheiro. Na maquete foram utilizados LEDs para representar
38
as lâmpadas da residência. Os sensores de presença foram construídos utilizando
emissores e receptores de infravermelho.
A migração de LEDs para lâmpadas normais não impacta no programa
desenvolvido no Arduino™. Para permitir o controle de uma lâmpada normal é
necessário montar um circuito utilizando um transístor ligado a um relé, onde o
transístor amplifica o sinal vindo da porta digital do Arduino™ e envia para o relé.
3.5.1 Aplicação para testes
Para auxiliar no desenvolvimento da solução foi criada uma aplicação
para computador para testar os programas no Arduino™. A aplicação se comunica
via USB com uma placa Arduino UNO. Em nível de programação o Arduino™ trata o
USB e o modem Bluetooth da mesma forma, lendo os sinais da porta serial. Assim, o
mesmo sketch utilizado em uma placa USB pode ser utilizado em uma placa
Bluetooth.
As placas Arduino UNO e Arduino BT possuem o mesmo microcontrolador
(ATmega328) e a mesma arquitetura de portas. A diferença entre as duas se dá na
forma de comunicação.
Independente da interface de comunicação o microcontrolador central
trabalha com um tipo de sinal específico (RS-232). O Arduino UNO possui um
microcontrolador ATmega8U2-MU que faz a conversão do sinal recebido pelo USB
para sinal serial e vice-versa. No Arduino BT essa conversão ocorre dentro do
modem Bluetooth. Os conversores são ligados aos pinos Rx e Tx do
microcontrolador central. Por isso a forma de leitura e escrita se mantem a mesma
em nível de programação.
A aplicação de testes foi desenvolvida em linguagem Java. Para a
comunicação serial foi necessário a utilização de uma biblioteca externa chamada
“RXTXcomm”20. O funcionamento se resume em coletar uma entrada de dados
digitada pelo usuário e enviá-la pela porta serial em que está conectado o Arduino™.
20
Disponível em http://rxtx.qbang.org
39
3.5.2 Lado Arduino
Enquanto a aplicação estava executando sobre o Arduino UNO,
conectado ao computador via USB, a porta serial estava sendo utilizada com uma
taxa de 9600 bits por segundo (bps ou baud) para a comunicação, que é a taxa
padrão para a conexão via USB. Ao mudar a aplicação para o Arduino BT foi
necessário alterar esta taxa para 115200 bps, pois o adaptador Bluetooth do
smartphone trabalha com esta taxa de dados. Quando se tentava trabalhar com as
taxas diferentes os dados chegavam inconsistentes no Arduino™ e o programa não
reconhecia os valores recebidos. A taxa de baud é definida durante a programação,
no momento em que a comunicação serial é inicializada. Neste caso a comunicação
serial deve ser iniciada utilizando o comando “Serial.begin(115200)”.
Para que o Arduino™ identifique a ação que o usuário escolheu foi
definido um conjunto de constantes para todo o sistema. Esses valores são
imutáveis e devem ser os mesmos tanto no Arduino™ quanto no Android™.
Casa Sala Cozinha Quarto Banheiro
Lâmpada 1 2 3 4 5
Sensor 6 7 8 - -
Tabela 4: Constantes utilizadas no sistema
3.5.2.1 Sistema de Iluminação
O sistema de iluminação oferece controle sobre todas as lâmpadas da
residência. Como mencionado anteriormente, aqui neste projeto as lâmpadas foram
substituídos por LEDs para se adaptar ao tamanho da maquete.
No modelo de residência utilizado, com quatro cômodos, cada lâmpada
ocupa uma porta digital do Arduino™. As lâmpadas estão ligadas no Arduino™
através das portas digitais 10, 11, 12 e 13. A lâmpada acende quando o sinal na
porta digital for positivo (1 ou High) e apaga quando o sinal é nulo (0 ou Low).
40
3.5.2.2 Sistema de Segurança
O sistema de segurança é composto por sensores de presença e uma
sirene. No modelo de residência adotado foi utilizado apenas dois sensores de
presença, um na sala e um na cozinha.
Os sensores de presença foram feitos a partir de emissores e receptores
de infravermelho. Cada sensor é composto por um emissor e um receptor, que agem
em conjunto. O emissor é um LED infravermelho simples (como os emissores
encontrados em controles remotos de televisões), ligado ao Arduino™ diretamente.
Para aumentar o alcance do sensor pode ser utilizado um transistor entre Arduino™
e o emissor.
Quando ativado, o emissor dispara um sinal a cada 5 milissegundos.
Quando um objeto se posiciona em frente ao sensor, esse sinal e refratado de volta
para o sensor e captado através do receptor de infravermelho. Ao receber o sinal o
receptor gera um pulso positivo que é captado pelo Arduino™.
Figura 11: Receptor (à esquerda) e emissor (à direita) de infravermelho
Ao detectar presença, ou seja, ao receber um pulso positivo do receptor
de infravermelho, o programa no Arduino™ ativa o alarme da residência, disparando
a sirene e acendendo todas as lâmpadas da residência até receber um sinal de
desligamento do usuário. A sirene, na maquete, foi simbolizada por um buzzer para
se adaptar ao tamanho reduzido da maquete.
41
Cada sensor de presença necessita de duas portas digitais, uma para o
emissor e uma para o receptor. Os dois sensores foram ligados ao Arduino™ pelas
portas 6, 7, 8 e 9, sendo as portas 9 e 7 funcionando como saída de dados
(emissores) e as portas 6 e 8 funcionando como entrada de dados (receptores). O
buzzer ficou ligado na porta 5 configurado como saída de dados utilizando PWM.
3.5.2.3 Integração dos Sistemas
Como tanto o sistema de iluminação quanto o sistema de alarme são
controlados pelo Arduino™, a integração dos dois fica mais fácil. Neste caso os dois
sistemas tem um ponto em comum que é o Arduino™. A integração é toda feita via
programação, sem precisar modificar o esquema elétrico para torna-la possível.
Como existe independência física dos dois sistemas, caso seja
necessário retirar o sistema de alarmes não será necessário modificar a instalação
elétrica do sistema de iluminação, apenas modificar o código do programa no
Arduino.
Nesta solução, em nível de programação, foram utilizados alguns
conceitos de orientação a objetos. Assim, o sistema de alarmes e o sistema de
iluminação também possuem uma independência. A retirada de um dos dois não
causa grande interferência no funcionamento do outro.
3.5.3 Lado Android
Para estabelecer a comunicação e trocar dados com a placa Arduino™ foi
utilizada uma classe chamada “TBlue”, disponibilizada por Karvinen e Karvinen
(2011) e adaptada para atender as necessidades da aplicação. Essa classe
centraliza todas as operações relacionadas à conexão Bluetooth com o dispositivo
remoto, neste caso o Arduino BT.
42
Figura 12: Planta da casa apresentada na tela de interação com o usuário
A tela que faz a interação com o usuário apresenta uma planta da casa,
como uma visão aérea (figura 12). Ao clicar em um dos cômodos da casa o usuário
é redirecionado para a tela com os controles desse cômodo. A tela de controle é
quem captura os comandos do usuário e envia para a placa Arduino™. De acordo
com o cômodo e a ação escolhida o programa envia um dado para o Arduino™
levando a constante definida para a ação (conforme listado na tabela 4).
Além do controle individual de cada cômodo, o sistema também oferece
uma tela para o controle de toda a casa, que permite acender ou apagar todas as
luzes e ativar ou desativar todo o sistema de alarmes. É nesta tela que o usuário
desativa o alarme caso este seja disparado.
43
4 ANÁLISE DOS RESULTADOS
O projeto desenvolvido consegue atender a necessidade de um controle
residencial sobre os sistemas de iluminação e segurança por meio de um
smartphone. Durante os testes o sistema apresentou boas respostas aos comandos
realizados no celular, não apresentou delay21 nas ações e foi eficiente em detectar
movimentos através do sensor de presença. Porém o projeto apresentou algumas
limitações.
A limitação mais impactante do projeto está na tecnologia adotada. O
adaptador Bluetooth® do smartphone e o modem do circuito se enquadram na
classe 2, limitando a distância de conexão para até 10 metros sem barreiras. Nos
testes realizados o sinal começou a atenuar a uma distância de 7 metros, e não foi
possível estabelecer conexão a 10 metros. Esta restrição pode ser amenizada
dentro da residência utilizando vários moduladores Bluetooth® espalhados pelo
espaço e conectados em paralelo.
Apesar do entrave em relação à distância, o Bluetooth® oferece uma
vantagem sobre outras tecnologias por não depender de outros aparelhos para
estabelecer uma comunicação entre os dispositivos. Outra vantagem do Bluetooth®
é a segurança no pareamento entre os aparelhos, onde é necessário informar o
código de segurança, neste caso definido na placa Arduino™, para o envio e
recebimento de dados.
Outra dificuldade encontrada foi em relação à quantidade de portas
digitais da placa Arduino™ que utilizamos na confecção do circuito. A placa Arduino
BT possui apenas 14 portas digitais, sendo que as portas 0 e 1 são dedicadas à
comunicação serial. Caso haja a necessidade de se conectar mais dispositivos será
preciso utilizar outra placa Arduino™ ou então uma placa que ofereça mais portas,
como a Arduino Mega, por exemplo.
Um obstáculo encontrado para a implantação desta solução em uma
residência é a integração com os interruptores de parede (ou semelhantes). A
solução mantém uma conexão direta entre o Arduino™ e as lâmpadas, dificultando a
inserção dos interruptores convencionais no circuito. Uma possível solução deste
21
Atraso ao executar uma ação
44
problema é a criação de interruptores que enviem sinal para o Arduino™, tornando
todo o controle da lâmpada centralizado.
Outra dificuldade encontrada no desenvolvimento da aplicação foi a
leitura de dados do Arduino™ por parte da aplicação no smartphone. Ao mandar o
Arduino™ escrever na porta serial, ou seja, enviar dados através do modem
Bluetooth™, o smartphone não conseguia ler este sinal. Devido a este problema a
solução funciona apenas do lado Android™ para o lado Arduino™.
Apesar das dificuldades encontradas, a solução apresentada é viável ao
requisito de controle sistemas, conseguindo atender as necessidades de unificação
dos controles e mobilidade. A solução consegue integrar de forma fácil os dois
sistemas (iluminação e segurança) sem manter dependência entre os dois,
possibilitando a extração de um deles a qualquer momento.
O fato de ser totalmente desenvolvido sobre plataformas open-source
também pode ser considerado uma vantagem, visto que, para a implantação do
sistema, não é necessário pagar licenças para utilizar as tecnologias.
O sistema desenvolvido neste trabalho também apresentou um baixo
consumo de energia para seu funcionamento. A placa Arduino™ utiliza uma carga de
5 volts, podendo ser alimentada até com uma bateria. Durante o desenvolvimento foi
utilizada uma bateria de 9 volts com um regulador de tensão alimentar a placa. No
caso da implantação em uma residência o gasto mais elevado de energia é a
alimentação das lâmpadas.
Esta solução também apresenta facilidade na implantação residencial,
pois não necessita de reformas na estrutura da casa para que sejam instalados os
dois sistemas. Visto que as residências já possuem a instalação elétrica das
lâmpadas prontas é possível aproveitá-la no sistema de iluminação, porém ainda
existe o problema da integração com os interruptores de parede. Muitos recursos
sofisticados, hoje, necessitam de uma reforma na residência para serem
implantados, como um sistema de segurança mais avançado, com circuito fechado
de televisão e sensores mais avançados.
45
5 CONCLUSÃO
Apesar de ser uma área pouco explorada, a automação residencial
oferece várias oportunidades para desenvolvimento e inovação, tanto na área de
computação quanto na área de elétrica e eletrônica. A plataforma Arduino™ pode ser
uma boa escolha para se desenvolver uma solução em automação residencial. A
solução desenvolvida neste trabalho consegue atender aos requisitos básicos do
controle residencial, integrando o sistema baseado no Arduino™ com um
smartphone Android™.
A principal dificuldade encontrada no desenvolvimento deste trabalho foi o
fato de trabalhar com duas tecnologias até então desconhecida para o grupo, tanto
Arduino™ quanto Android™, o que necessitou um maior tempo de aprendizagem
para desenvolver o sistema. Em relação à pesquisa, as duas tecnologias
apresentam poucas referências bibliográficas, dificultando o recolhimento de dados
para a revisão de literatura. Em contrapartida, as duas tecnologias oferecem um
grande acervo de material como exemplo que podem ser utilizados como base para
o desenvolvimento das aplicações.
Com base nos resultados apresentados concluímos que o sistema que
desenvolvemos consegue atender as necessidades de controle em uma residência
pequena, eliminando o uso de diversos controles e centralizando todas as
operações em um único dispositivo móvel, no caso um smartphone portando o
sistema Android™.
46
6 REFERÊNCIAS
BANZI, M. (2008). Getting Started With Arduino. Sebastopol, California, Estados
Unidos: O'reilly Media.
BOLZANI, C. A. (2004a). Residências Inteligentes (1ª Ed.). São Paulo, Brasil: Editora
Livraria da Física.
BOLZANI, C. A. (2004b). Desenvolvimento de um Simulador de Controle de
Dispositivos Residenciais Inteligentes: Uma Introdução aos Sistemas Domóticos.
BOLZANI, C. A. (JANEIRO/JUNHO de 2007). Desmistificando a Domótica. Revista
do Centro Federal de Educação, p. 17-20.
BOLZANI, C. A. (2010). Análise de Arquiteturas e Desenvolvimento de uma
Plataforma para Residências Inteligentes.
FERREIRA, J. M. (1998). Introdução ao Projeto com Sistemas Digitais e
Microcontrolados (1ª ed.). Cidade do Porto. Faculdade de Engenharia da
Universidade do Porto.
HAYKIN, S. (2004). Sistemas de Comunicação: Analógicos e Digitais. Editora
Bookman.
KARVINEN, K., & KARVINEN, T. (2011). Make: Arduino Bots and Gadgets. O'reilly
Media.
MELLIS, D. (9 de MARÇO de 2009). O Hardware em 'Código Aberto'. (M. GREGO,
Entrevistador) Revista Info.
NICOLOSI, D. E. (2007). Microcontrolador 8051 Detalhado (8ª Ed.). Editora Érica.
ROSS, J. (2008). Redes De Computadores. Antenna Edições Técnicas.
TANENBAUM, A. S. (2003). Computer Networks. Pearson Prentice-Hall.
TANENBAUM, A. S. (2007). Organização Estruturada De Computadores (5ª Ed.).
Pearson Prentice-Hall.
TERUEL, E. C. (OUTUBRO de 2008). Uma Proposta de Framework para Sistemas
de Automação Residencial com Interface para a Web.
Arduino. (2011). Disponível em Arduino: http://www.arduino.cc. Acesso em: 27 set.
2011.
47
Mercado de sistemas eletrônicos de segurança cresce 12% ancorado na ampliação
do uso de tecnologias. (24 mai. 2011). Disponível em:
http://www.abese.org.br/noticias2.asp?n=15. Acesso em 28 mai. 2011.
Bluetooth Radio. (s.d.). Disponível em Bluetooth Special Interest Group:
https://www.bluetooth.org/Building/HowTechnologyWorks/Architecture/Radio.htm.
Acesso em 06 out. 2011.
FONSECA, J. L. (07 de Março de 2009). COMPUTAÇÃO FISICA. Disponível em
Dream Feel: http://dreamfeel.wordpress.com/2009/03/07/computacao-fisica. Acesso
em 16 set. 2011.
DICIONÁRIO AURÉLIO ELETRÔNICO; SÉCULO XXI. Rio de Janeiro, Nova
Fronteira e Lexicon Informática, 1999, CD-rom, versão 3.0.
48
APÊNDICES
APÊNDICE A – Esquemático do Arduino BT