Escolar Documentos
Profissional Documentos
Cultura Documentos
INSTITUTO DE INFORMTICA
CURSO DE CINCIA DA COMPUTAO
Trabalho de Diplomao.
SUMRIO
3.4.4
3.4.5
3.4.6
Sensores .............................................................................................................. 29
Acionamento ....................................................................................................... 29
Estrutura do Software ......................................................................................... 30
LISTA DE FIGURAS
LISTA DE TABELAS
AES
API
APS
CSMA-CA
GTS
IEEE
JSP
LED
MAC
OSI
PAN
PDU
PHY
Physical Layer
RF
Radio Frequency
USB
VCC
ZDO
RESUMO
ABSTRACT
After witnessing the advance of industrial automation, Brazil is seeking the services
of home automation, an emerging market in the country. However, most current
systems are limited to controlling the residence with user intervention, with few
resources that works automatically.
This work consists in the implementation of a home automation system based on
various types of wireless sensors. The operation of the system occurs automatically,
only with the information acquired from these sensors (motion, temperature, humidity,
luminosity, etc.). They use the ZigBee protocol to communicate, forming a network of
wireless sensors.
1 INTRODUO
1.1 Contextualizao
As reas de automao, tanto residencial como industrial, vem buscando cada vez
mais as novas tecnologias de comunicao sem fio. Em funo disso, o mercado de
redes de transmisso de dados tambm est se expandindo, principalmente em redes
sem fio para ambientes locais. Nesse contexto, foi criado o protocolo ZigBee, com o
objetivo de padronizar o desenvolvimento de produtos nessa rea.
O mercado de automao residencial est em um grande momento, impulsionado
por essas novas tecnologias sem fio, que proporcionam uma grande facilidade,
principalmente na instalao, pois evita a necessidade de reformas na residncia. Outro
grande motivo dessa expanso a reduo dos custos dessas tecnologias, o que est
tornando o mercado de automao cada vez mais popular e acessvel.
O protocolo ZigBee um dos fatores que influenciou essa reduo do custo de
desenvolvimento de sistemas de automao sem fio, pois at ento s existiam sistemas
que utilizavam protocolos fechados e especficos para uma determinada soluo.
1.2 Motivao
Apesar da evoluo da tecnologia ter impulsionado o mercado de automao
residencial, a maioria dos sistemas existentes se limita no controle da residncia pela
interveno do usurio, seja pelo celular, internet ou algum tipo de painel de controle.
Poucas so as solues que atuam de forma realmente automtica, e quando existem,
elas atuam de forma local, por exemplo, um sensor de luminosidade em uma lmpada
especfica que ligar quando o nvel de luz for baixo.
Alm disso, muitas solues de automao residencial oferecem as possibilidades de
configurao e agendamento bastante engessadas, em alguns casos obrigando o
usurio a acionar a empresa responsvel pelo sistema para alterar alguma funo
programada.
Levando em considerao esse contexto, o presente trabalho prope desenvolver
uma soluo que atua de forma automtica e inteligente, limitando ao mximo a
interferncia do usurio.
12
14
Frequncia
Canais
868/915 MHz
868-870 MHz
20
BPSK
902-928 MHz
1-10
40
BPSK
2.4-2.4835 GHz
11-26
250
O-QPSK
2.4 GHz
15
16
2.1.5 Caractersticas
O padro ZigBee possui diversas funcionalidades que foram desenvolvidas para
atender as necessidades do mercado, principalmente da rea de automao. Algumas
das principais caractersticas do ZigBee so:
Baixo consumo de energia: possui a habilidade de operar no modo sleep,
podendo reduzir o consumo de energia de 70 mili amperes para 6 micro
amperes;
Baixo custo: possui uma pilha de protocolo de fcil implementao;
Grande quantidade de ns: possvel ter 65535 ns em uma nica rede;
Diferentes topologias de rede: estrela, rvore ou malha;
Baixa latncia: tempo pequeno de ligao a rede e rapidez na transio do
modo de espera (sleep) para o modo ativo (30 milisegundos ou menos);
Dois modos de operao da rede: beaconing e non-beaconing;
Segurana e confiabilidade: possui recursos de encriptao com a
implementao do padro AES (Advanced Encryption Standard) de 128 bits;
2.1.6 Funcionamento
Para entender o funcionamento de uma rede ZigBee, se faz necessrio conhecer os
trs tipos de ns que a rede pode possuir. Os trs tipos de n so: roteador, dispositivo
final ou coordenador.
O dispositivo coordenador (coordinator) o agente central da rede, o n que cria e
gerencia uma rede ZigBee. Existe apenas um nico coordenador por rede, sendo ele o
responsvel por concentrar as informaes de interesse da aplicao, por isso ele possui
uma maior capacidade computacional. O coordenador quem determina o identificador
da rede (PAN ID) e este valor dever ser utilizado por todos os equipamentos que
desejam fazer parte da mesma rede.
Os dispositivos roteadores (router) possuem o importante papel de redirecionar os
pacotes entre os ns da rede que no conseguem se comunicar diretamente. Isso permite
a expanso da rede do ponto de vista fsico.
Dispositivos finais (end devices) so aqueles que desempenham as funes de
sensores ou atuadores da rede. Esses dispositivos podem se comunicar somente com os
roteadores e o coordenador.
Uma das principais funcionalidades dos dispositivos finais a possibilidade de
operar no modo sleep, o que reduz de forma significativa o consumo de energia eltrica.
Esse tipo de dispositivo projetado para ficar a maior parte do tempo nesse modo,
sendo que a transao para o modo ativo extremamente rpida, cerca de 30
milissegundos.
17
18
19
20
Nome
Descrio
ND
Node Discover
ID
PAN ID
D0
AD0 / DIO0
Configuration
IS
Force Sample
SM
Sleep Mode
21
3 IMPLEMENTAO DO PROJETO
22
23
24
3.2.4 Dispositivos
O mdulo XBee pode controlar qualquer tipo de dispositivo que esteja conectado em
seus pinos de I/O, como, por exemplo, luzes, cortinas e persianas automatizadas,
motores, tomadas, entre outros.
Como o foco do presente trabalho a interao entre os sensores, no ser
implementado um circuito para acionar esses diferentes dispositivos. Ao invs disso,
ser utilizado o prprio mdulo XBee alimentado por uma fonte de energia 3,3 VCC e
com um componente LED conectado diretamente nos pinos, para detectar quando o
dispositivo est ligado ou desligado.
25
26
27
ZigBee. necessrio informar um nome para o dispositivo e tambm qual o pino de I/O
que ser utilizado, pois em um mesmo mdulo XBee poderemos ter diversos
dispositivos, limitados pelo nmero de pinos de I/O. Porm nesse trabalho cada mdulo
estar relacionado a apenas um dispositivo atuador, que cadastrado pelo tipo Liga e
Desliga no software de automao.
De forma similar, o administrador poder cadastrar os sensores ZigBee que ficaro
instalados na residncia. Nesse caso, alm do nome e endereo do mdulo XBee, ser
necessrio informar tambm qual o tipo de sensor, que poder ser de movimento, chuva
ou temperatura. Nesse caso o pino ser preenchido automaticamente de acordo com o
sensor selecionado.
28
29
3.4.4 Sensores
Os sensores utilizados no projeto so adaptados com um mdulo XBee para
poderem interagir com a central de controle. Dependendo do tipo de sensor, ele ir se
comunicar de forma diferente com o XBee e a central.
Os sensores de movimento e de chuva utilizam a funcionalidade Digital IO Change
Detection. Assim o coordenador recebe a mensagem (sample) no exato momento em
que ocorre um evento no sensor (movimento ou chuva).
J para o sensor de temperatura, a tcnica de comunicao outra. Nesse caso, a
central de controle envia um comando requisitando as informaes necessrias do
sensor. O comando XBee utilizado o IS, com isso forado um sample no nodo
desejado e as informaes podem ser adquiridas com a mensagem de resposta. Essa
requisio enviada a cada minuto e o resultado usado para verificar as regras de
acionamento cadastradas e, caso seja necessrio, executar as aes definidas nos
cenrios.
3.4.5 Acionamento
A verificao das regras de acionamento ocorre em dois momentos: quando uma
mensagem de algum dos sensores recebida (sample) ou a cada minuto, quando feita
a leitura dos sensores de temperatura. Nesses dois casos, as regras de todos os cenrios
so analisadas, sero executados os cenrios que possurem todas suas regras em um
estado verdadeiro.
Na execuo de um cenrio, uma mensagem enviada a cada um de seus
dispositivos cadastrados. Esses dispositivos sero ligados ou desligados, de acordo com
a configurao feita pelo usurio.
30
Nos dispositivos desenvolvidos nesse trabalho, foi utilizado o pino DIO 0 (digital
input/output 0), o valor desse pino alterado para alto ou baixo pelo comando D0 da
API de programao do XBee, possibilitando ligar ou desligar o LED do circuito.
O Apndice 1 contm maiores informaes sobre o processo de configurao e
acionamento dos dispositivos, detalhando todos os casos de uso do sistema.
3.4.6 Estrutura do Software
O software de automao foi desenvolvido em dois mdulos: mdulo WEB e
mdulo de controle.
Mdulo WEB: responsvel por gerar a interface para o usurio (telas de
cadastro de cenrios, regras e aes). Todos os dados informados pelo
usurio so armazenados em um banco de dados (MySQL) que ser
interpretado pelo mdulo de controle.
Mdulo de Controle: responsvel por interagir com a rede ZigBee e
executar os cenrios contidos no banco de dados.
No mdulo de controle, existem duas threads executando em paralelo que
coordenam a validao e execuo de todos os cenrios.
Uma das threads realiza a leitura dos sensores de temperatura a cada minuto,
mandando uma mensagem que fora um sample dos mdulos XBee. Alm disso, aps
enviar o comando aos sensores de temperatura, essa thread faz a leitura de todos os
cenrios cadastrados e a execuo dos cenrios que forem necessrios. Essa verificao
a cada minuto tambm necessria para que sejam executados os cenrios que possuem
o horrio como uma das regras.
A outra thread faz a leitura das mensagens que chegam ao coordenador, o
tratamento de cada mensagem depende do seu tipo:
Sample do sensor de temperatura: feita a leitura do pacote e o valor da
temperatura atualizado no banco de dados. Nesse caso a verificao dos
cenrios feita pela thread que envia a mensagem aos mdulos de
temperatura.
Sample do sensor de movimento ou chuva: faz a verificao de todos os
cenrios e executa os cenrios que forem necessrios. O mtodo de
verificao/execuo o mesmo utilizado pela thread descrita anteriormente.
Resposta OK de um dispositivo atuador: atualiza no banco de dados o estado
desse dispositivo (ligado ou desligado). Isso feito na resposta ao invs do
envio para garantir que o XBee est funcionando corretamente, evitando que
o estado do dispositivo seja alterado indevidamente (se o XBee estivesse
indisponvel, por exemplo).
Qualquer acionamento de dispositivo, independente da thread que executa, utiliza
uma estrutura de dados para indicar qual o comando foi enviado para o mdulo (ao de
liga ou desliga), assim possvel atualizar o banco de dados com o valor correto do
dispositivo. As duas threads do sistema tem a visibilidade dessa varivel. Alm disso, o
prprio tipo da varivel (ConcurrentHashMap do Java) possui o controle de
concorrncia na sua implementao, evitando problemas de acesso pelas duas threads
simultaneamente.
31
32
4.1 Concluses
Com a popularizao e o desenvolvimento de novas tecnologias sem fio, o mercado
de automao residencial est crescendo significativamente, inclusive no Brasil. Esse
trabalho props uma alternativa de sistema que utiliza apenas sensores wireless para
automatizar as tarefas rotineiras em uma residncia.
O software desenvolvido ser includo no sistema de automao residencial da
empresa Home Manager, criada pelo autor desse trabalho em conjunto com o scio
Bernardo Pianta. Atualmente a empresa encontra-se incubada na RAIAR, incubadora de
empresas da PUCRS, de Viamo.
A utilizao do protocolo ZigBee na implementao desse trabalho agrega vrias
vantagens para o sistema de automao, como a economia de energia, baixo custo e
grande facilidade na instalao do sistema, evitando reformas na residncia. Alm disso,
a capacidade do ZigBee de formar uma rede mesh garante uma ampla cobertura de sinal
e tambm agrega confiabilidade na comunicao entre os nodos da rede.
O modelo de configurao do sistema definido por uma lista de regras e outra lista
de aes se mostrou bastante flexvel, assim sempre possvel criar os cenrios de
acordo com a necessidade do usurio.
Como esse modelo foi desenvolvido para ser o mais genrico possvel, visando
abrangncia do maior nmero de casos, em algumas ocasies a configurao no to
intuitiva quanto se desejava. Em alguns casos necessria a criao de mais de um
cenrio para o mesmo propsito, um para ligar o dispositivo e outro para desligar aps
um perodo de tempo, por exemplo.
33
REFERNCIAS
ZigBee:
Wireless
Control
That
Simply
Works.
35
36
Configurar Sensores
Administrador
Ter feito o login com um usurio com a permisso de
administrador
Permite gerenciar o cadastro de sensores do sistema
Descrio:
Sequncia de Eventos
Ator
Sistema
1. Acessa a rea de cadastro dos sensores
2. Exibe os sensores cadastrados
3. Seleciona um sensor para edio ou 4. Exibe tela de cadastro
seleciona a criao de um novo sensor
5. Insere as informaes referentes ao 6. Salva as informaes no banco de
sensor
dados
Caso de Uso:
Atores:
Pr-condies:
Configurar Dispositivos
Administrador
Ter feito o login com um usurio com a permisso de
administrador
Permite gerenciar o cadastro de dispositivos do sistema
Descrio:
Sequncia de Eventos
Ator
Sistema
1. Acessa a rea de cadastro dos 2. Exibe os dispositivos cadastrados
dispositivos
3. Seleciona um dispositivo para edio ou 4. Exibe tela de cadastro
seleciona a criao de um novo dispositivo
5. Insere as informaes referentes ao 6. Salva as informaes no banco de
dispositivo
dados
Caso de Uso:
Atores:
Pr-condies:
Definir Regras
Usurio
Ter feito o login com a permisso de usurio
Permite gerenciar o cadastro de regras de sensores e as
aes dos dispositivos
Sequncia de Eventos
Ator
Sistema
1. Acessa a rea de configurao de 2. Exibe todos cenrios cadastrados
cenrios por sensores
3. Seleciona um cenrio para edio ou 4. Exibe a tela de cadastro do cenrio,
seleciona a criao de um novo cenrio
contendo a lista de regras e aes dos
dispositivos
5. Adiciona ou remove regras de sensores 6. Atualiza a lista de regras na tela de
na lista de regras
cadastro
7. Adiciona ou remove aes para os 8. Atualiza a lista de aes na tela de
dispositivos na lista de aes
cadastro
9. Confirma a alterao ou criao do 10. Salva as informaes no banco de
cenrio
dados
Caso de Uso:
Atores:
Pr-condies:
Descrio:
37
Acionar Dispositivos
Usurio
Ter configurado no sistema o sensor que ser disparado
Aciona os dispositivos configurados de acordo com a
informao dos sensores
Sequncia de Eventos
Ator
Sistema
algum dos sensores da 2. Busca todos os cenrios que possuem
como regra o sensor disparado
3. Para cada cenrio, valida se todas as
regras do cenrio so verdadeiras
4. Aciona os dispositivos dos cenrios que
possuem todas as regras verdadeiras
Caso de Uso:
Atores:
Pr-condies:
Descrio:
1. Dispara
residncia
38
APNDICE 2 DIAGRAMA ER