INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE GOIÁS
CAMPUS GOIÂNIA
DEPARTAMENTO DE ÁREAS ACADÊMICAS IV
COORDENAÇÃO DA ÁREA TELECOMUNICAÇÕES
CURSO SUPERIOR DE TECNOLOGIA EM REDES DE TELECOMUNICAÇÕES
Dácio Gonçalves de Oliveira Fernandes
Wenderson da Silva Vaz
ACIONAMENTO E CONTROLE DE ILUMINAÇÃO UTILIZANDO O
PROTOCOLO DE COMUNICAÇÃO SEM FIO ZIGBEE
Goiânia – Goiás
Março/2016
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE GOIÁS
CAMPUS GOIÂNIA
DEPARTAMENTO DE ÁREAS ACADÊMICAS IV
COORDENAÇÃO DE TELECOMUNICAÇÕES
CURSO SUPERIOR DE TECNOLOGIA EM REDES DE TELECOMUNICAÇÕES
Dácio Gonçalves de Oliveira Fernandes
Wenderson da Silva Vaz
ACIONAMENTO E CONTROLE DE ILUMINAÇÃO UTILIZANDO O
PROTOCOLO DE COMUNICAÇÃO SEM FIO ZIGBEE
Trabalho de Conclusão de Curso
apresentado ao Instituto Federal de
Educação, Ciência e Tecnologia de
Goiás, como requisito para obtenção do
Título do Curso Superior de Tecnologia
em Redes de Telecomunicações.
Orientador: Prof.Dr. José Luis Domingos
Goiânia – Goiás
Março/2016
Dácio Gonçalves de Oliveira Fernandes
Wenderson da Silva Vaz
ACIONAMENTO E CONTROLE DE ILUMINAÇÃO UTILIZANDO O
PROTOCOLO DE COMUNICAÇÃO SEM FIO ZIGBEE
FOLHA DE APROVAÇÃO
Trabalho de Conclusão de Curso
apresentado ao Instituto Federal de
Educação, Ciência e Tecnologia de
Goiás, como requisito para obtenção do
Título do Curso Superior de Tecnologia
em Redes de Telecomunicações.
Data de aprovação: ____/____/______
__________________________________________________
Prof. Dr. José Luis Domingos
__________________________________________________
Prof. Dr. Claudio Afonso Fleury
__________________________________________________
Prof. MSc. Paulo César Bezerra Bastos
Goiânia – Goiás
Março/2016
DEDICATÓRIA
Dedicamos este trabalho a Deus, que nos
criou e nos deu a capacidade de
aprender. Assim, podemos questionar
realidades e propor sempre um novo
mundo de possibilidades.
AGRADECIMENTOS
Agradecemos, primeiramente, a Deus que nos deu energia e garra para
concluir todo este trabalho.
Aos nossos familiares que nos incentivaram durante todos estes anos em que
estivemos na faculdade.
Aos professores do Instituto Federal de Educação, Ciência e Tecnologia de
Goiás, pela confiança, apoio e reflexões críticas.
A todos os amigos que fizemos nestes anos de curso, e que nos apoiaram a
superar os momentos mais difíceis nessa jornada.
Enfim, a todas as pessoas que de alguma forma contribuíram para que
conseguíssemos realizar mais essa etapa em nossas vidas.
EPÍGRAFE
“Se, a princípio, a ideia não é absurda,
então não há esperança para ela.”
(Albert Einstein)
RESUMO
Este trabalho visa o desenvolvimento de um sistema de acionamento e controle de
iluminação de ambientes, baseado no protocolo de comunicação sem fio ZigBee.
Intenta-se para a demonstração da factibilidade de, um usuário, acionar os recursos
desse sistema via rede local ou internet. Objetiva-se integrar a plataforma Arduino a
módulos de comunicação sem fio Xbee, combinando a outros dispositivos auxiliares
denominados Shields. Para que ocorra a comunicação adequada entre o sistema de
acionamento e controle de iluminação utilizando o protocolo de comunicação sem fio
ZigBee e a rede, faz-se necessário a criação de uma página Web que permita o
acesso rápido aos recursos disponibilizados.Procura-se averiguar a viabilidade de
utilização e a capacidade de configuração e atuação, dos dispositivos, quando em
conjunto. Pretende-se também, constatar a praticidade de uso e demonstrar a
versatilidade para aplicações distintas.
Palavras-chave: Arduino; ZigBee; Acionamento; Iluminação; Web Site.
ABSTRACT
This work aims to develop a drive system and lighting control environments based on
ZigBee wireless communication protocol. Intends to demonstrating the feasibility of a
user, trigger the features of this system via local or internet network. It aims to
integrate the Arduino platform XBee wireless modules, combining the other so-called
auxiliary devices Shields. In order to have proper communication between the drive
system and lighting control using the ZigBee wireless communication protocol and
network, it is necessary to create a Web page that allows quick access to available
resources. Seeking to determine the feasibility of using the configuration and
capacity and actions, the devices when together. It is intended also to verify the
practicality of use and demonstrate the versatility for different applications.
Key-words: Arduino; ZigBee;Actuation; Lighting; Web Site.
LISTA DE FIGURAS
Figura 1 - Aplicações do protocolo de comunicação sem fio ZigBee ....................... 20
Figura 2 - Pilha do protocolo ZigBee ......................................................................... 24
Figura 3 - Posicionamento das tecnologias wireless ................................................. 25
Figura 4 - Modelo de rede ZigBee ............................................................................ 26
Figura 5 - Arquitetura do projeto................................................................................ 29
Figura 6 - Esquema elétrico da ligação em paralelo entre o interruptor e o relé para
acionamento da lâmpada .......................................................................................... 29
Figura 7 - Diagrama de blocos, representação do projeto ........................................ 30
Figura 8 - Motor Shield .............................................................................................. 33
Figura 9 - Shield automação e alarme residencial V4 ............................................... 34
Figura 10 - Arduino EthernetShield ........................................................................... 36
Figura 11 - Xbee Shield ............................................................................................. 36
Figura 12 - Arduino Uno R3....................................................................................... 37
Figura 13 - Arduino Mega 2560 ................................................................................. 38
Figura 14 - Sensor de presença PIR ......................................................................... 39
Figura 15 - Módulo Xbee Pro S2 ............................................................................... 40
Figura 16 - Tela inicial do aplicativo IDE Arduino ...................................................... 42
Figura 17 - Tela de funções do aplicativo IDE Arduino ............................................. 43
Figura 18 - Interface gráfica do aplicativo X-CTU...................................................... 45
Figura 19 - Shield Xbee Explorer acoplado ao módulo Xbee .................................... 46
Figura 20 - Arduino Uno R3 com o microprocessador (esq.), e outro sem o
microprocessador (dir.) ............................................................................................. 46
Figura 21 - Jumpers do Xbee Shield na posição Xbee (esq.) e na posição USB (dir.)
.................................................................................................................................. 47
Figura 22 - Etiqueta com o endereço MAC e outras informações referentes ao
módulo Xbee ............................................................................................................. 48
Figura 23 - Interface do aplicativo Notepad++........................................................... 49
Figura 24 - Interface gráfica do aplicativo EasyPHP ................................................. 50
Figura 25 - Sistema de Controle de Iluminação ........................................................ 53
Figura 26 - Interface gráfica da página Web ............................................................. 53
Figura 27 - Status dos LED’s representando as lâmpadas 3 e 5 no statuson. .......... 54
Figura 28 – Dispositivos que compõem o conjunto Transmissor .............................. 55
Figura 29 – Dispositivos que compõem o conjunto Receptor e o WebSite, mostrando
que a lâmpada está desligada................................................................................... 56
Figura 30 – Dispositivos que compõem o conjunto receptor com a lâmpada 3 ligada
.................................................................................................................................. 56
Figura 31 - Statuson das lâmpadas 3 e 5 mostradas no notebook ........................... 57
LISTA DE ABREVIATURAS E SIGLAS
AC –
Alternate Current – Corrente Alternada
AES –
Advanced Encription Standard – Padrão de Criptografia Avançada
APC –
American Power Conversion – Empresa Americana fabricante de
equipamentos elétricos
AVR –
Linha de Microcontroladores desenvolvido pela fabricante de
circuitos integrados ATMEL. Não é um acrônimo, não possuindo
nenhum significado em especial
CC –
Constant Current – Corrente Contínua
DHT -
Digital Humidity and Temperature – Umidade e Temperatura
Digital
FFD –
Full Function Device – Dispositivos de Funções Completas
FTDI –
Future Technology Device International – Dispositivo Internacional
de Tecnologia do Futuro – Fabricante de Circuitos Integrados
GNU –
Acrônimo Recursivo de GNU – GNU is not Unix – GNU não é Unix
GPRS –
General Packet Radio Services – Serviços Gerais de Pacote por
Rádio
GPS –
Global Positioning System – Sistema de Posicionamento Global
HTML –
Hyper Text Markup Language – Linguagem de Marcação de
Hipertexto
IDE –
Integrated Development Environment – Ambiente de
Desenvolvimento Integrado
IEEE –
Institute of Electric and Electronic Engineers – Instituto de
Engenheiros Eletricistas e Eletrônicos
IP –
Internet Protocol – Protocolo de Internet
LCD –
Liquid Crystal Display – Tela de Cristal Líquido
LED –
Light Emitting Diode – Diodo Emissor de Luz
MAC –
Media Access Control – Controle de Acesso ao meio
MISO –
Master IN Slave OUT – Entrada Mestre Saída Escravo
MOSI –
Master OUT Slave IN – Saída Mestre Entrada Escravo
PAN –
Personal Area Network – Rede de Área Pessoal
PHP –
Acrônimo para Hypertext Preprocessor – Pré-processador de
Hipertexto
PIR –
Pyroeletric Infrared – Infravermelho Piroelétrico
PWM –
Pulse Width Modulation – Modulação por Largura de Pulso
RF –
Radio Frequency – Rádio Frequência
RFD –
Reduced Function Device – Dispositivo de Funções Reduzidas
RJ45 –
Registered Jack 45 – Conector Registrado 45
SCK –
Serial Clock – Temporizador Serial
SPI –
Serial Peripheral Interface – Interface Periférica Serial
SS –
Slave Select – Selecionador de Escravo
TCP –
Transmission Control Protocol – Protocolo de Controle de
Transmissão
TTL –
Transistor Transistor Logic – Lógica Transistor-Transistor
UART –
Universal Asynchronous Receiver Transmitter – TransmissorReceptor Assíncrono Universal
UDP –
User Datagram Protocol – Protocolo de Datagrama de Usuário
URL –
Uniform Resource Locator – Localizador Uniforme de Recursos
USB –
Universal Serial Bus – Barramento Serial Universal
UTP -
Unshielded Twisted Pair - Par Trançado sem Blindagem
WLAN –
Wireless Local Area Network – Rede de Área Local sem Fios
WPAN –
Wireless Personal Area Network – Rede de Área Pessoal sem
Fios
X-CTU –
Xbee – Configuration & Test Utility – Xbee – Configuração &
Utilitário de Teste
SUMÁRIO
1. INTRODUÇÃO ............................................................................................. 16
2. DESCRIÇÃO DA PLATAFORMA ARDUINO INTERLIGADA AO MÓDULO
ZIGBEE............................................................................................................... 22
2.1
Introdução .......................................................................................... 22
2.2
Visão geral ......................................................................................... 22
2.3
Descrição da plataforma de prototipagem Arduino ............................ 22
2.4
Descrição do módulo de comunicação sem fio ZigBee ...................... 23
2.5
Funções lógicas dos dispositivos ....................................................... 25
2.6
Conclusão .......................................................................................... 26
3. ARQUITETURA............................................................................................ 27
3.1
Introdução .......................................................................................... 28
3.2
Composição ....................................................................................... 28
3.3
Esquematização elétrica para o acionamento da lâmpada ................ 29
3.4
Conexões entre os dispositivos transmissor e receptor ..................... 30
3.5
Conclusão .......................................................................................... 31
4. DISPOSITIVOS UTILIZADOS NO DESENVOLVIMENTO DO PROJETO .. 32
4.1
Introdução .......................................................................................... 32
4.2
Arduino ............................................................................................... 32
4.2.1 Shield Automação e Alarme Residencial V4 ................................ 33
4.2.2 Arduino Ethernet Shield................................................................ 35
4.2.3 Xbee Shield .................................................................................. 36
4.3
Arduino Uno R3 .................................................................................. 37
4.4
Arduino Mega 2560 ............................................................................ 37
4.5
Sensor de Presença PIR .................................................................... 38
4.6
Módulo Xbee Pro S2 .......................................................................... 39
4.7
Conclusão .......................................................................................... 40
5. PROGRAMAÇÃO DOS DISPOSITIVOS ..................................................... 41
5.1
Introdução .......................................................................................... 41
5.2
Aplicativos para desenvolvimento do projeto ..................................... 41
5.3
Configuração do Arduino Uno R3 e arduino Mega 2560 .................... 43
5.3.1 Configuração do Arduino Uno R3 ................................................. 43
5.3.2 Configuração do Arduino Mega 2560 ........................................... 44
5.4
Configuração dos módulos Xbee’s ..................................................... 45
5.5
Configuração Web .............................................................................. 48
5.6
Disponibilização de códigos ............................................................... 51
5.7
Conclusão .......................................................................................... 51
6. RESULTADOS OBTIDOS ............................................................................ 52
6.1
Introdução .......................................................................................... 52
6.2
Resultados finais ................................................................................ 52
6.3
Conclusão .......................................................................................... 57
7. CONCLUSÃO............................................................................................... 58
8. REFERÊNCIAS BIBLIOGRÁFICAS ............................................................ 59
16
1. INTRODUÇÃO
Na atualidade, os recursos naturais estão cada vez mais escassos. A
população mundial começa a se preocupar com essa questão. Existem esforços por
parte de uma minoria para amenizar a crise iminente de recursos naturais em nosso
planeta. Há cerca de 15 anos, no ano de 2001, o Brasil sofreu um apagão sendo
causado por falta de planejamento e investimentos em geração de energia elétrica
por parte do Governo Federal Brasileiro. Recentemente, em janeiro de 2015, iniciouse o sistema de bandeira tarifária para o consumo de energia elétrica em que as
bandeiras verde, amarela e vermelha sinalizam o custo da energia, em função das
condições da geração da eletricidade no país. A população nacional sente na “pele”
e no bolso a consequência da falta de consumo eficiente e consciente de energia
elétrica. Visando uma economia na questão elétrica e comodidade no controle de
iluminação predial/residencial observa-se um crescente uso de automação.
A automação foi criada para facilitar a execução de diversas atividades
humanas. Teve início na década de 1960 e vem da palavra inglesa automation que
buscava ressaltar a participação do controle automático nos processos industriais.
Automação é qualquer sistema, apoiado em computadores, que substitui o
trabalho humano em favor da segurança das pessoas, da qualidade dos produtos,
rapidez da produção ou da redução de custos. Assim, aperfeiçoa os complexos
objetivos das indústrias, dos serviços ou bem-estar [1].
A automação predial/residencial teve origem a partir da automação industrial
e objetiva identificar todas as tecnologias que permitem automatizar uma série de
operações no interior de um prédio ou habitação.
Justifica-se o tema abordado neste trabalho contextualizando-o em um
cenário moderno dentro do mundo contemporâneo. Nesta conjuntura, as constantes
inovações tecnológicas se difundem rapidamente. Deste modo, são notadas
variadas propostas, entre os desenvolvedores de tecnologia da informação, de
mecanismos que beneficiam, de diversos modos, a humanidade. Sendo a
segurança, uma das mais urgentes necessidades das pessoas, em um âmbito
global, faz-se necessário estabelecer o emprego de novos dispositivos que visam
auxiliar neste constante processo de aprimorações tecnológicas.
17
A domótica, originou-se da palavra domus, cujo significado em latim é “casa”,
e por definição, automação é um sistema ou método pelo qual é possível realizar e
controlar eventos de forma automática. A domótica existe para simplificar o cotidiano
de seus utilizadores, satisfazendo três necessidades básicas: conforto, segurança e
comunicação[2].
O grande impulso da domótica ocorreu após o surgimento e aprimoramento
de dispositivos tais como: microprocessadores, relés e sensores. Com esses
dispositivos todos os campos em que a automação estava presente sofreram
significativas mudanças quanto à qualidade dos equipamentos, principalmente a
área da automação residencial. Uma vez que os novos equipamentos não exigiam
grandes espaços alocados, passaram a ser capazes de interagir com outros
equipamentos e, talvez o mais importante, não necessitavam de constantes
manutenções de técnicos [3].
Há uma variedade de processos de automação que são utilizados há mais de
60 anos no mundo inteiro. Com advento da nanotecnologia (termo usado para
referir-se ao estudo de manipulação da matéria em uma escala atômica ou
molecular) vão se tornando cada vez mais práticos de instalação, programação e
uso. Contudo, a miniaturização dos componentes eletrônicos não torna suficiente a
questão evolutiva. Observa-se também, um considerável avanço nas tecnologias de
comunicação, principalmente utilizando a radiofrequência para interligar dispositivos
diversos, o que facilita o seu emprego na área da automação residencial. Uma das
vertentes, das tecnologias de comunicação sem fio, é a wireless ZigBee. Outros
fatores como a facilidade dos dispositivos (Arduino, Xbee, etc.) utilizados neste
trabalho, de serem encontrados para a venda na internet e também por serem de
prática utilização, serviram de motivação para escolha do protocolo wireless ZigBee
juntamente com a plataforma de prototipagem Arduino, no desenvolvimento deste
projeto.
Existem
diversas
aplicações
em
que
podem
ser
aproveitadas
as
características do ZigBee. O que deve ser observado na realidade é que variadas
aplicações, terrestres, que necessitem de longa duração das baterias (podendo
durar meses ou até anos sem serem substituídas), baixo custo, pequenos circuitos,
suporte à topologia em malha, e possa pagar o custo de uma baixa taxa de
transferência, poderá se valer dessas características do ZigBee para ser
implementada.
18
De forma prática, o ZigBee é de valia em situações conforme as descritas a
seguir:
I.
Em um ambiente já existente e não cabeado;
II.
Rede necessária para medidas e experimentos temporários;
III.
O baixo custo de manutenção for uma das principais preocupações do
projeto.
As tecnologias wireless são bem flexíveis em sistemas de automação
predial/residencial, e percebe-se bons resultados para esses fins na aplicação de
dispositivos Xbee’s em conjunto com a rede de sensores e atuadores [4].
O protocolo ZigBee, sendo uma das vertentes da comunicação wireless (sem
fio), pode ser aproveitado para o propósito de automação residencial/predial e até
industrial. O padrão de comunicação IEEE (Institute of Electric and Electronic
Engineers – Instituto de Engenheiros Eletricistas e Eletrônicos) 802.15.4 pode
substituir condutores em uma residência automatizada. Proporcionando uma
significante economia de recursos estruturais de redes de comunicação.
Através de dados levantados, nota-se que um sistema baseado em TCP/IP
(Transmission Control Protocol – Protocolo de Controle de Transmissão / Internet
Protocol – Protocolo de Internet) em conjunto com ZigBee é bem efetivo em
aplicações de automações residenciais, podendo ser expandido para automações
prediais e até industriais [5].
O desenvolvimento deste trabalho foca a elaboração de um sistema de
acionamento e controle de iluminação utilizando o protocolo sem fio ZigBee. A base
do sistema é a plataforma de prototipagem eletrônica Arduino, em conjunto com o
protocolo de comunicação sem fio ZigBee.
O uso da radiofrequência é um bom exemplo na substituição dos cabos,
geralmente, presentes nas aplicações onde há comunicação entre computadores e
microcontroladores. Nessa linha, a tecnologia ZigBee tem destaque, pois opera em
faixa de frequência livre, oferece excelente imunidade a interferências, pode
hospedar milhares de dispositivos em uma mesma rede e possui módulos acessíveis
com interessantes funções de entrada/saída para uso em sistemas embarcados
(Arduino).
O projeto desenvolvido preza pela praticidade, comodidade e uso de
tecnologia de comunicação sem fio de baixo custo, sendo uma ferramenta
19
importante para contribuir com a segurança doméstica. Através de dispositivos
móveis com conexão à internet é possível interagir com a iluminação de
determinado ambiente, ativando ou desativando, de forma independente, cada ponto
de iluminação presente no local com o sistema instalado.
Uma das formas de acionamento da iluminação, proposta neste trabalho, é
por sensores de presença e se aplica a prédios e residências. Em prédios a
utilização poderá ser em ambientes, como por exemplo, corredores, garagens,
jardins, cuja permanência de pessoas seja de curto período. Assim, ocorrerá o
acionamento das lâmpadas por um determinado momento, somente enquanto existir
alguém no local.
A outra forma de acionamento da iluminação é por dispositivos móveis ou
computadores pessoais conectados à internet,através de uma interface em PHP
(Acrônimo para Hypertext Preprocessor – Pré-processador de Hipertexto) que
poderá ser hospedada em um host (computador) em rede local ou em um servidor
na nuvem (internet). Neste caso, amplia-se a aplicabilidade do sistema de
acionamento e controle de iluminação utilizando o protocolo de comunicação sem fio
ZigBee, podendo ser instalados em salas, quartos, salas,etc. Em resumo, qualquer
ambiente que necessite de iluminação.
Há uma considerável importância também na justificativa da escolhe do tema
deste trabalho, pois as disciplinas relacionadas ao tema, são inerentes ao Curso
Superior de Tecnologia em Redes de Telecomunicações – IFG. Essas disciplinas se
concatenam,
podendo
ser
empregadas
em
sistemas
de
automação
predial/residencial.
Ao acessar todos os sistemas remotamente, o usuário aciona apenas aquilo
que quer e precisa. Isso faz com que as luzes de um cômodo da casa, por exemplo,
estejam ligadas apenas quando necessário.
A figura 1 descreve algumas das aplicações do protocolo de comunicação
sem fio ZigBee, o qual faz-se presente no controle residencial e comercial, foco
principal deste projeto.
20
Figura 1 - Aplicações do protocolo de comunicação sem fio ZigBee[6]
Neste trabalho em particular, foi desenvolvido um sistema automático de
iluminação por meio de comunicação wireless.
Fundamentado nos processos de automação, o objetivo geral deste trabalho
é o desenvolvimento de um sistema de acionamento e controle de iluminação
utilizando o protocolo de comunicação sem fio ZigBee.
Os objetivos específicos são:
I.
Demonstrar a viabilidade técnica para a utilização, em automação
residencial/predial, do protocolo de comunicação wireless ZigBee unido à plataforma
de prototipagem Arduino, sendo evidenciado em um projeto de controle de
iluminação prático e versátil;
II.
Estabelecer uma forma de padronização de comandos, para que, por meio
de qualquer sistema computacional que possua um navegador Web, as cargas
possam ser acionadas remotamente via rede;
III.
Demonstrar que o módulo Xbee (ZigBee) interligado à plataforma Arduino,
alia a praticidade de instalação e configuração dos dispositivos com a economia de
recursos estruturais de redes de comunicação, além da eficiência na transmissão do
sinal de um ponto a outro.
21
Para o alcance dos objetivos supracitados, este trabalho foi organizado
conforme a estrutura a seguir:
I.
O Capítulo I apresenta a introdução onde são indicados os
objetivos, a justificação e a contextualização do projeto;
II.
O Capítulo II apresenta a descrição do Arduino e do módulo de
comunicação sem fio Xbee, utilizados neste projeto;
III.
O Capítulo III demonstra a arquitetura do projeto, como os
dispositivos estão conectados para o alcance do resultado esperado;
IV.
O Capítulo IV apresenta todos os dispositivos utilizados no
projeto;
V.
O Capítulo V demonstra como foi realizada as configurações
necessárias para o alcance do objetivo;
VI.
O
Capítulo
VI
apresenta
os
resultados
alcançados
no
desenvolvimento deste projeto;
VII.
O Capítulo VII contém as conclusões obtidas a partir dos
resultados alcançados no desenvolvimento do projeto;
VIII.
Referências Bibliográficas utilizadas neste trabalho.
22
2. DESCRIÇÃO DA PLATAFORMA ARDUINO INTERLIGADAAOMÓDULO
ZIGBEE
2.1
INTRODUÇÃO
Neste capítulo é realizada a descrição da plataforma de prototipagem Arduino
e também do módulo de comunicação sem fio ZigBee. Inicialmente, um breve
histórico de cada um desses dispositivos, seguidamente da descrição em si e as
possíveis funções que podem desempenhar.
2.2
VISÃO GERAL
A plataforma Arduino interligada ao módulo ZigBee é constituída por uma
unidade controladora (Arduino), em conjunto com uma unidade de comunicação sem
fio (ZigBee). Essa formação permite que, através de comandos externos via internet,
ou pela rede local, seja possível a interação com o sistema de iluminação de
determinado ambiente. A descrição detalhada de cada um dos elementos dessa
composição segue adiante.
A plataforma Arduino provê diversos recursos e várias possibilidades de
aplicação. Em um cenário com redes de sensores, um dispositivo Arduino pode
atuar como roteador ou gateway para conexão com uma base de dados ou um
sistema de usuário, isto porque possui conectividade Ethernet, WiFi, Bluetooth ou
ainda ZigBee, lembrando que são necessárias placas auxiliares (Shields) para o
Arduino desempenhar essas funções. Existem inúmeros tipos de sensores, com
diversas aplicabilidades, tais como: medidores de temperatura, luminosidade,
presença, umidade, entre outros [7].
2.3
DESCRIÇÃO DA PLATAFORMA DE PROTOTIPAGEM ARDUINO
A partir de 2005, quando o Arduino Project teve início, mais de 200.000 placas
foram vendidas em todo o mundo. Sua popularidade é devido a diversos fatores, dos
quais pode-se ressaltar o incrível potencial desse dispositivo de fonte aberta, que
facilita a criação de projetos interessantes de forma rápida.
23
A vantagem do Arduino em relação a outras plataformas de desenvolvimento
de microcontroladores é a grande facilidade de sua utilização, mesmo pessoas com
pouco conhecimento técnico nessa área, podem aprender as funções básicas e
iniciar a criação dos seus próprios projetos.
O Arduino é uma plataforma de computação física ou embarcada, ou seja, um
sistema que pode interagir com o seu ambiente por meio de hardware e software.
Por exemplo, o uso simples de um Arduino para acender uma lâmpada por certo
intervalo de tempo, digamos, 30 segundos, depois que o botão fosse pressionado
[8].
O Arduino integra um microcontrolador de placa única e um conjunto de
software para programá-lo. O hardware consiste em um projeto utilizando um
processador Atmel AVR (Linha de Microcontroladores desenvolvido pela fabricante
de circuitos integrados ATMEL. Não é um acrônimo, não possuindo nenhum
significado em especial). O software consiste de uma linguagem de programação
baseada na linguagem C e C++ e do bootloader para carregamento do programa de
inicialização da placa Arduino.
Dessa forma, o Arduino é considerado um pequeno computador, no qual é
possível usar programação para processamento de entradas e saídas entre o
próprio Arduino e os componentes externos conectados a este dispositivo.
O
Arduino
pode
ser
utilizado
para
desenvolver
objetos
interativos
independentes, ou pode ser conectado a um computador, a uma rede, ou até
mesmo a internet para recuperar e enviar dados e atuar sobre esses objetos. O
Arduino pode ser conectado a LEDs (Light Emitting Diode – Diodo Emissor de Luz),
Displays (mostradores) de matriz de pontos, botões, interruptores, motores,
sensores de temperatura, sensores de pressão, sensores de distância, receptores
GPS (Global Positioning System – Sistema de Posicionamento Global), módulos
Ethernet ou qualquer outro dispositivo que emita dados ou possa ser controlado.
2.4
DESCRIÇÃO DO MÓDULO DE COMUNICAÇÃO SEM FIO ZIGBEE
Em 2004 foi definido o padrão ZigBee por uma aliança empresarial chamada
“ZigBee Alliance”. O ZigBee utiliza a definição 802.15.4, que trabalha em banda de
frequências livres. Operando nas faixas 868 MHz na Europa, 915 MHz nos Estados
Unidos e 2.4 GHz no restante do planeta. O IEEE 802.15.4 é um padrão que
24
especifica a camada física e efetua o controle de acesso ao meio para redes sem fio
pessoais de baixas taxas de transmissão. É a base para as especificações ZigBee,
ISA100.11a, WirelessHART, eMiWi, cada uma das quais estende ainda mais o
padrão através do desenvolvimento de camadas superiores que não são definidas
pelo IEEE 802.15.4. Esse padrão ficou responsável pela criação das duas camadas
mais baixas da tecnologia ZigBee, enquanto o ZigBee Alliance trabalhava nas
camadas superiores. A figura 2, representa a pilha do protocolo ZigBee.
Figura 2 - Pilha do protocolo ZigBee
Entre as tecnologias de comunicação sem fio que podem ser aplicadas em
automação residencial, o padrão ZigBee destaca-se por se tratar de uma tecnologia
com foco em economia, segurança e baixo consumo de energia, além de permitir, a
configuração de redes privadas com uma grande quantidade de dispositivos
conectados entre si.
O padrão ZigBee não requer licenciamento para o seu funcionamento,
permitindo que essa tecnologia possa ser utilizada livremente. Também oferece uma
excelente imunidade a ruídos, devido às suas características de rede e criptografia
de dados AES (Advanced Encryption Standard – Padrão de Criptografia Avançada)
de 128 bits, o que minimiza as chances de interferências entre dispositivos ZigBee
configurados em redes diferentes e também com dispositivos que utilizam outros
protocolos de comunicação na mesma faixa de frequência [9].
25
Uma das principais vantagens do padrão ZigBee é o suporte a uma rede auto
organizável. Através de nós que são formados por dispositivos contendo um
microcontrolador e um transceptor de radiofrequência, a pilha protocolar permite que
os dispositivos reconheçam uns aos outros e envie dados através de uma rede com
topologia malha. Se um dos nós falha, a transmissão dos dados pode ser realizada
por um outro caminho até a informação atingir o nó de destino. Utilizando
endereçamento de 16 bits, é possível configurar até 65535 dispositivos em uma rede
única [10].
A figura 3 apresenta o posicionamento do padrão ZigBee em relação as
principais tecnologias de comunicação WPAN (Wireless Personal Area Network –
Rede de Área Pessoal sem Fios) e WLAN (Wireless Local Area Network – Rede de
Área Local sem Fios).
Figura 3 - Posicionamento das tecnologias wireless
2.5
FUNÇÕES LÓGICAS DOS DISPOSITIVOS
Os nós que integram uma rede ZigBee, podem possuir dois diferentes tipos
de dispositivos, FFD (Full Function Devices – Dispositivos de Função Completa) ou
RFD (Reduced Function Devices – Dispositivos de Função Reduzida).De acordo
com sua posição na rede, os nós podem ser classificados como: coordenadores,
roteadores ou dispositivos finais.
26
O coordenador é um dispositivo FFD que inicializa a rede, operando em um
estado ativo para efetuar o controle das informações que trafegam.
Os roteadores possuem tabelas de roteamento. São dispositivos FFD, o que
permite encontrar o menor caminho para se chegar ao destino. Caso o roteador não
tenha o endereço de destino requisitado, este processo dá à rede a propriedade de
autorregeneração, caso aconteça à queda das funcionalidades de outros roteadores
na rede.
Os dispositivos finais,por serem dispositivos RFD, não fazem função de
roteamento ou coordenação de rede. Esses dispositivos se comunicam diretamente
com o roteador principal e podem ser implementados com microcontroladores que
possuam menos memória ou potência, passando quase todo o tempo em stand by.
Em um dispositivo RFD são instalados sensores, atuadores e sistemas de controle.
Na figura 4, pode-se visualizar duas das topologias de redes ZigBee (malha e
estrela). No meio, percebe-se, em forma de pentágono, o roteador principal que é o
coordenador ZigBee. Os roteadores secundários são representados, por círculos e
os dispositivos finais, representados por estrelas. No meio da figura está a topologia
em malha, e nas laterais a topologia estrela.
Figura 4 - Modelo de rede ZigBee[11]
2.6
CONCLUSÃO
Constata-se neste capítulo que, tanto o Arduino quanto o ZigBee, foram
desenvolvidos em épocas semelhantes. O Arduino atua como um nó sensor,
podendo assumir funcionalidades distintas de acordo com seus recursos e posição
27
(Hierarquia na rede), além de atuar como processador de dados. O protocolo ZigBee
facilita o tráfego de dados,via radiofrequência, formando uma rede confiável e auto
organizável1. Sendo as características desses dispositivos favoráveis para utilização
em automação residencial.
3. ARQUITETURA
1
A pilha protocolar permite que os dispositivos ZigBee reconheçam uns aos outros e envie
dados através de uma rede em malha, se um dos nós falha, a transmissão pode ser realizada por um
outro caminho até a informação atingir o nó de destino.
28
3.1
INTRODUÇÃO
Este capítulo apresenta a arquitetura do projeto desenvolvido. É detalhada a
composição do sistema de acionamento e controle de iluminação utilizando o
protocolo de comunicação sem fio ZigBee. Em seguida a forma em que todos os
dispositivos estão conectados entre si e como os dados trafegam por cada um.
Aborda-se, também a questão sobre possíveis falhas no sistema de acionamento e
controle de iluminação utilizando o protocolo de comunicação sem fio ZigBee.
3.2
COMPOSIÇÃO
O projeto é composto por módulos de comunicação de dados sem fio ZigBee,
um transmissor e um receptor, juntamente com as lâmpadas que caracterizam o
sistema de iluminação. Essa arquitetura está dividida em blocos, onde cada bloco
representa a junção de um Arduino a determinados Shields (placas auxiliares). No
bloco transmissor, o centro de processamentos de dados está no Arduino Uno R3, e
no receptor, o centro é no Arduino Mega 2560.O bloco transmissor é conectado a
um Modem com acesso à internet através de um cabo de rede convencional UTP
(Unshielded Twisted Pair – Par Trançado sem Blindagem) e também ao sensor PIR
(Pyroeletric Infrared – Sensor Infravermelho Piroelétrico). O Modem, por sua vez se
comunica com o dispositivo móvel (notebook ou smartphone) e desse dispositivo sai
o comando que é transferido do bloco transmissor para o receptor. Entretanto, o
sensor pode realizar o acionamento de forma independente. O protocolo de
comunicação sem fio ZigBee é responsável por transferir o sinal de acionamento de
um módulo ZigBee ao outro. O bloco receptor está interligado à fase da rede elétrica
e neste bloco estão presentes relés eletromecânicos, que são os atuadores para
ligar e desligar a(s) lâmpada(s). Uma das extremidades da(s) lâmpada(s), é
interligada ao relé, e a outra, ao neutro da rede elétrica, o que possibilita o
acionamento pelo dispositivo relé. Essa arquitetura é detalhada na figura 5.
29
Figura 5 - Arquitetura do projeto
3.3
ESQUEMATIZAÇÃO ELÉTRICA PARA O ACIONAMENTO DA LÂMPADA
Para ligar ou desligar a lâmpada existe um dispositivo de acionamento
chamado interruptor, para no caso de falha do relé, o mesmo ser acionado
manualmente. A figura 6 representa um esquema elétrico da ligação em paralelo
entre o interruptor e o relé para acionamento da lâmpada.
Figura 6 - Esquema elétrico da ligação em paralelo entre o interruptor e o
relé para acionamento da lâmpada
30
3.4
CONEXÕES ENTRE OS DISPOSITIVOS TRANSMISSOR E RECEPTOR
A figura 7 representa, através do diagrama de blocos, as conexões entre os
dispositivos dos blocos transmissor e receptor. Cada seta indica uma conexão,
sendo assim, todos os dispositivos estão interligados, seja por cabos, por conexão
direta dos elementos, ou por meio do protocolo de comunicação sem fio ZigBee.
Torna-se claro então, que no bloco transmissor, o Arduino UnoR3, é conectado
diretamente ao Ethernet Shield e este, por meio de jumpers, interligado ao Xbee
Shield e por último ao módulo Xbee. O Xbee é responsável pela transmissão, sem
fio, do sinal gerado do dispositivo móvel ou do sensor de presença que é propagado
de uma extremidade a outra. O bloco transmissor é conectado, por meio de cabo
UTP, ao Modem que faz a conexão com a internet, e do Modem interliga-se o
dispositivo móvel (notebook, smartphone etc.). No bloco receptor o Shield
Automação e Alarme é anexado ao Arduino Mega 2560 e este ao outro módulo
Xbee, responsável pela recepção do sinal para acionamento da lâmpada. No Shield
Automação e Alarme o atuador é responsável pelo procedimento de acionamento da
lâmpada. Na extremidade final, é possível visualizar a representação da lâmpada
ligada.
Figura 7 - Diagrama de blocos, representação do projeto
31
3.5
CONCLUSÃO
Verifica-se, neste capítulo que, a arquitetura do projeto favorece a interação
total entre todos os dispositivos empregados. A junção dos dispositivos e a interação
é realizada por meio de placas auxiliares que em conjunto com a plataforma de
prototipagem Arduino e o módulo de comunicação sem fio ZigBee, formam o
sistema de acionamento e controle de iluminação utilizando o protocolo de
comunicação sem fio ZigBee. Desse modo, os dados que trafegam do transmissor
ao receptor, são mostrados intuitivamente e por meio de ilustrações. Esses dados
fluem em um único sentido para acionamento da lâmpada.
Demonstra-se também que é possível realizar uma ligação elétrica, em
paralelo, entre o sistema de acionamento e controle de iluminação utilizando o
protocolo de comunicação sem fio ZigBee e um interruptor, para que em caso de
falha do sistema, a lâmpada ser acionada manualmente.
32
4. DISPOSITIVOS UTILIZADOSNO DESENVOLVIMENTO DO PROJETO
4.1
INTRODUÇÃO
No decorrer deste capítulo, há uma abordagem sobre todos os dispositivos
utilizados neste projeto.Iniciando-se pelo dispositivo Arduino e após, os Shields, o
Sensor PIR e os módulos ZigBee.
4.2
ARDUINO
Há diversos modelos de Arduino existentes que servem para aplicações
distintas, sendo primordial saber detalhes de, por exemplo, o quanto de memória
será necessário para processar as informações de acordo com cada projeto, tensão
de operação, tipo de conexão com o computador (USB (Universal Serial Bus –
Barramento Serial Universal), Micro USB), etc. As principais placas que existem
atualmente são; Arduino Uno, Mega2560, Leonardo, Duemilanove, ADK, Nano, Mini,
Esplora.
O Arduino por si só não tem capacidade para agregar sistemas mais
complexos. Isoladamente, pode efetuar atividades simples e locais, porém se houver
a necessidade de algo que envolva diversos componentes dispersos um dos outros
a uma determinada distância. Em uma rede de sensores sem fio, por exemplo, é
necessário acrescentar ao Arduino algum tipo de equipamento que esteja
capacitado para efetuar tarefas em rede, comumente chamados de Shields.
Os Shields são placas eletrônicas auxiliares que são acopladas ao Arduino
para aumentar acapacidade de atuação. Existem Shields para diversas finalidades e
são exemplos: o Ethernet Shield, Motor Shield, Proto Shield, Xbee Shield, etc. Na
figura 8, é possível visualizar um MotorShield [12].
33
Figura 8 - Motor Shield
Emprega-se neste projeto 3 (três) Shields, um com Relés para acionamento
das cargas (lâmpadas) e para realizar a interconexão do Arduino Mega 2560 com o
dispositivo Xbee, esse denominado como Shield Automação e Alarme Residencial.
O segundo Shield tem a finalidade de servir como ponto de conexão do Arduino Uno
com a rede Ethernet através de um conector do tipo RJ45 (Registered Jack 45 –
Conector Registrado 45), denominado Arduino Ethernet Shield. O terceiro,
denominado Xbee Shield, estabelece a interface entre o módulo Xbee com o
Arduino Uno R3. São apresentados a seguir os detalhes de cada uma dessas
placas.
4.2.1 Shield Automação e Alarme Residencial V4
O Shield Automação e Alarme Residencial V4 é uma placa de automação e
alarme, em que é possível acoplar-se ao Arduino Mega 2560, permitindo
simultaneamente o encaixe de outros Shields comerciais, como por exemplo,
Ethernet Shield ou GPRS (General Packet Radio Services – Serviços Gerais de
Pacote por Rádio Shield).
Essa versão possui soquete para módulo Xbee, com um sensor integrado
DHT (Digital Humidity and Temperature – Umidade e Temperatura Digital) para
medir a umidade e a temperatura ambiente, além de duas entradas opto acopladas
ligadas aos pinos de interrupção para o funcionamento de módulos de leitura de
consumo de energia.
34
Uma das características fundamentais para o uso desse Shield são os 10
relés integrados ao hardware. As funcionalidades são descritas e identificadas
conforme a figura 9:
Figura 9 - Shield automação e alarme residencial V4
1.
Relés: com os relés disponíveis na placa pode-se acionar
motores, lâmpadas, trancas, sirenes, bombas de água, enfim, cargas
alimentadas por tensão alternada de 110 ou 220 volts, não ultrapassando a
potência de 1.320W, para cada uma das cargas;
2.
Entrada foto acoplada: entrada para ligar sensores de contato
seco com alta sensibilidade a ruídos, mantendo a estabilidade do circuito;
3.
Entradas digitais: essas entradas, para contato seco, servem para
gerar um pulso no Arduino, pode-se usar qualquer tipo de sensor de contato
seco, exemplos: Reedswitch, interruptor, sensor de infravermelho, sensores
de alarmes;
4.
Entrada analógica máximo 5V: através dessa entrada é possível
ligar sensores de saída analógica. Exemplos: sensores de temperatura,
umidade, luminosidade, pressão, etc.;
5.
Saída Transistor 800mA: através dessa saída é possível ligar e
desligar dispositivos de até 9,6W;
35
6.
Saída Transistor 1,5A: através dessa saída é possível ligar e
desligar dispositivos de até 18W;
7.
Entrada Módulo Bluetooth: através dessa entrada é possível
utilizar controle remoto Bluetooth;
8.
Entrada Módulo APC (American Power Conversion – Empresa
Americana fabricante de equipamentos elétricos): módulo que trabalha
através de comunicação serial, podendo alcançar cerca de 1200 metros em
campo aberto;
9.
Módulo Xbee: módulo que permite a utilização do protocolo de
comunicação sem fio ZigBee;
10. Entrada LCD (Liquid Crystal Display – Tela de Cristal Líquido)
16x2: painel de informações;
11. Entrada 12V: fonte alimentadora com tensão de entrada de 12V,
corrente 1,5A;
12. Controle Contraste do Display: controla o aumento e diminuição
do contraste do painel de informações.
4.2.2 Arduino Ethernet Shield
O Arduino Ethernet Shield é uma placa que permite conexão do Arduino com
a internet ou uma rede Ethernet local. Essa placa é baseada no Chip Wiznet
Ethernet W5100 fornecendo uma biblioteca de Network (IP) que suporta tanto TCP,
quanto UDP (User Datagram Protocol – Protocolo de Datagramas de Usuário). Até 4
(quatro) conexões de socket são permitidas simultaneamente. Os Sockets são
mecanismos de comunicação, usados normalmente para implementar um modelo
cliente/servidor, que permite a troca de mensagens entre os processos de uma
máquina/aplicação servidor e de uma máquina/aplicação cliente. A figura 10
representa o Arduino Ethernet Shield.
36
Figura 10 - Arduino Ethernet Shield
4.2.3 Xbee Shield
O Xbee Shield é uma placa única para plataforma Arduino que se encaixa
diretamente sobre o Arduino Uno ou Duemilanove e permite uma comunicação sem
fio sobre o protocolo ZigBee. É especialmente desenvolvida para simplificar as tarefas de junção do módulo Xbee com o Arduino Uno R3 ou Duemilanove. A figura 11
representa o Xbee Shield.
Figura 11 - Xbee Shield
37
4.3
ARDUINO UNO R3
Neste projeto, opta-se pelo Arduino UnoR3, para ser um dos elementos do
módulo transmissor por ser um dos modelos mais populares, com suas 14 portas
digitais, 6 portas analógicas e 6 portas PWM (Pulse Width Modulation – Modulação
da Largura de Pulso), tendo tensão de alimentação 5 volts, memória com
capacidade de armazenamento igual a 32kB, conexão USB e conector para
alimentação externa, para servir como fonte de energia. Na figura 12, é possível
visualizar o Arduino Uno[12].
Figura 12 - Arduino UnoR3
4.4
ARDUINO MEGA 2560
O Arduino Mega 2560 foi idealizado como elemento principal do módulo
receptor por possuir características ideais para acoplagem ao Shield Automação e
Alarme, desenvolvido exclusivamente para este modelo de Arduino.
O Arduino Mega 2560 é uma placa microcontroladora baseado no ATmega
2560. Essa placa tem 54 pinos digitais de entrada / saída (dos quais 15 podem ser
usados como saídas PWM), 16 entradas analógicas, 4 UARTs (Universal
Asynchronous Receiver Transmitter – Transmissor-Receptor Assíncrono Universal)
38
um cristal oscilador de 16 MHz, uma conexão USB, entrada de alimentação elétrica
e um botão de reset. O Arduino Mega 2560 contém tudo o que é necessário para
servir de apoio ao microcontrolador. Basta conectá-lo a um computador com um
cabo USB ou ligá-lo com um conversor AC (Alternate Current – Corrente Alternada)
para CC (Constant Current – Corrente Contínua) ou bateria para utilização. O
Arduino Mega 2560 é uma placa compatível com a maioria dos Shields projetados
para Arduino Uno e as antigas placas Duemilanove ou Diecimila. Na figura 13 é
possível visualizar o Arduino Mega 2560[12].
Figura 13 - Arduino Mega 2560
4.5
SENSOR DE PRESENÇA PIR
O sensor de presença PIR é um componente eletrônico que permite monitorar
movimentos dentro de um ambiente. Este sensor é frequentemente usado para
detectar presença de humanos ou animais e assim, pode-se gerar um sinal para o
disparo do alarme.
É um dispositivo de baixo consumo elétrico e baixa tensão de alimentação,
usado em ambientes diversos. É capaz de detectar níveis de irradiação
infravermelha na forma de calor, de objetos, pessoas ou animais. A figura 14
representa o Sensor de presença PIR.
39
Figura 14 - Sensor de presença PIR
4.6
MÓDULO XBEE PRO S2
Os Módulos Xbee’s são desenvolvidos pela Digi Networking Solutions que
visam à comunicação em RF (Radio Frequency – Rádio Frequência) no padrão
ZigBee IEEE 802.15.4 multiponto ou ponto a ponto. Os módulos Xbee’s, dessa
forma, são projetados para aplicações de alto rendimento que requerem baixa
latência e tempo previsível de comunicação. São soluções que fornecem
conectividade sem fio para dispositivos embarcados como o Arduino.
Com o Xbee é possível construir uma rede wireless extremamente robusta,
confiável e econômica, pois o Xbee possui um modo de economia de energia
quando não está executando nenhuma ação. Isso permite que os módulos
funcionem por muito tempo, meses ou até anos, também com o uso de baterias.
Emprega-se no sistema de acionamento e controle de iluminação utilizando o
protocolo de comunicação sem fio ZigBee, o Xbee PRO S2, sendo um módulo para
transmissão dos dados ponto a ponto e outro para recepção. É um módulo prático e
totalmente Inter operável com outros produtos que utilizam a tecnologia ZigBee. A
figura 15 representa um módulo Xbee Pro S2.
40
Figura 15 - Módulo Xbee Pro S2
4.7
CONCLUSÃO
Neste capítulo é observado que dentre as variações de plataformas Arduino
existentes, opta-se, pelo Arduino Uno R3 e Arduino Mega 2560. As funcionalidades
são distintas para esses dispositivos. O Arduino pode desempenhar diversas tarefas,
dependendo de qual Shield é empregado para o auxílio de uma aplicação. São os
Shields que complementam o Arduino e a partir daí, define-se, uma aplicação a qual
pode desempenhar.
Os outros dispositivos (sensor de presença e módulo Xbee) não são de
relação direta com o Arduino e sem a presença do Shield adequado (Xbee Shield ou
outro para o módulo Xbee), não há a menor compatibilidade entre o Arduino e o
módulo Xbee ou sensor de presença. O módulo Xbee é o dispositivo de
comunicação wireless que utiliza o protocolo ZigBee para enviar os dados através
de uma rede sem fio confiável e auto organizável.
41
5. PROGRAMAÇÃO DOS DISPOSITIVOS
5.1
INTRODUÇÃO
No decorrer deste capítulo há uma descrição sobre os aplicativos utilizados
para configuração do Arduino Uno R3, do Arduino Mega 2560, dos módulos Xbee’s
e do Web Site. Existe toda uma sequência que deve ser seguida para que não
ocorram falhas no momento da utilização desses dispositivos em conjunto.
5.2
APLICATIVOS PARA DESENVOLVIMENTO DO PROJETO
Para o desenvolvimento do sistema são utilizados dois aplicativos. Um para
passar instruções para a central de comando, conhecida como microcontrolador
(desenvolvido pela Atmel Corporation), que se encontra na plataforma de
prototipagem. Através dessas instruções, o microcontrolador comunica-se com o
relé, enviando um sinal que informa o momento em que o relé deve ser acionado. O
aplicativo que passa instruções ao Arduino é o IDE (Integrated development
environment – Ambiente de desenvolvimento integrado). Utilizando-se dessas
instruções é possível o comando de outros dispositivos (motores, relés, sensores,
etc.). É desenvolvido para possibilitar o acesso à programação do Arduino a
pessoas não familiarizadas com assunto.
O segundo aplicativo utilizado é o X-CTU (Xbee – Configuration & Test Utility
– Xbee – Configuração & Utilitário de Teste), criado pelo fabricante do Xbee que
trata-se de uma aplicação que roda apenas no sistema operacional Windows,
projetada para permitir aos desenvolvedores interagir com módulos RF (Radio
Frequency - rádio frequência) através de uma interface gráfica.
O X-CTU inclui todas as ferramentas que um desenvolvedor precisa para
deixar, rapidamente, o Xbee instalado e funcionando. Serve para enviar comandos
de configuração, fazer atualizações e possui outras diversas ferramentas para
configurar o Xbee.
O IDE Arduino é uma ferramenta de código aberto, multiplataforma que roda
no sistema operacional Windows, Macintosh e Linux que encontra-se disponível
para baixar de forma gratuita no site do desenvolvedor.
42
Inclui um editor de código com recurso de realce de sintaxe, parênteses
correspondentes e identação automática, sendo capaz de compilar e carregar os
programas para a placa com um único clique. A figura 16 representa a tela de início
do aplicativo IDE Arduino [12].
Figura 16 - Tela inicial do aplicativo IDE Arduino
No IDE do Arduino há uma ferramenta cuja designação é “wiring” capaz de
programar em C/C++. Isto permite criar com facilidade muitas operações de entrada
e saída. Para isso, é necessário definir apenas duas funções para criar um
programa:
I.
setup() - inserida no início, na qual pode ser usada para inicializar
configuração;
II.
loop() - Chamada para repetir um bloco de comandos ou esperar
até que seja desligada.
A figura 17 representa as funções do aplicativo IDE Arduino[12].
43
Figura 17 - Tela de funções do aplicativo IDE Arduino
5.3
CONFIGURAÇÃO DO ARDUINOUNO R3 E ARDUINO MEGA 2560
Através do uso do aplicativo IDE Arduino, realiza-se a programação dos
Arduinos, Uno versão R3 e Mega 2560. Essa programação se realiza através de
linhas de comando pelo qual cria-se um código denominado Sketch.
5.3.1 Configuração do Arduino UnoR3
Para a comunicação do Arduino Uno R3 com o Ethernet Shield cria-se um
código específico utilizando o barramento SPI (Serial Peripheral Interface – Interface
periférica serial).
Na comunicação SPI sempre existe um Master (mestre) e os periféricos
restantes são Slaves (escravos). Portanto, o dispositivo Master, no conjunto
transmissor, é o Arduino Uno R3 e o Ethernet Shield é o Slave. Esta comunicação
contém 4 (quatro) conexões:
I.
MISO (Master IN Slave OUT – Entrada Mestre Saída Escravo) –
Dados do Slave para o Master;
44
II.
MOSI (Master OUT Slave IN – Saída Mestre Entrada Escravo) –
Dados do Master para o Slave;
III.
SCK
(Serial
Clock
–
Temporizador
Serial)
–
Clock
de
sincronização para transmissão de dados entre Master e Slave;
IV.
SS (Slave Selected – Selecionador de Escravo) – Seleciona qual
Slave receberá os dados.
Para se comunicar pela rede local ou até mesmo pela internet o Ethernet
Shield, que é acoplado ao Arduino Uno R3, necessita de um número de IP válido.
Essa informação é inserida no Sketch (esboço – como são conhecidos os códigos
no IDE Arduino) através de linhas de comando. O número de IP, possibilita a
comunicação do Ethernet Shield com o servidor PHP, desde que o equipamento que
fornece o IP esteja conectado à internet. Assim, é possível visualizar a página via
Browser (navegador) e realizar o acionamento das lâmpadas. Dessa forma, são
adicionadas linhas de comando ao Sketch para que se possa transmitir a informação
para acionamento das lâmpadas do módulo Xbee transmissor para o módulo Xbee
receptor via porta serial do Arduino UnoR3. Agrega-se também, linhas de comando
para realização da leitura dos sinais provenientes dos sensores de presença.
Simultaneamente, após o acionamento das lâmpadas pelos comandos da página em
PHP, é transmitido um sinal para o Ethernet Shield que está acoplado ao Arduino
Uno, por sua vez o mesmo comunica-se com o módulo Xbee enviando este sinal do
módulo transmissor para o módulo receptor, que encontra-se acoplado ao Shield
automação e alarme residencial e tem-se como resultado uma mensagem ON/OFF,
no Display.
5.3.2 Configuração do Arduino Mega 2560
Em segundo plano, existe um Sketch para o Arduino Mega 2560. Este Sketch
configura o Mega 2560 para servir como dispositivo central, de controle de dados do
módulo receptor. O módulo é responsável pela leitura da informação que chega na
porta serial do Arduino Mega 2560, o qual envia o sinal para o acionamento dos
diversos relés que estão presentes no Shield automação acoplado a esse
dispositivo.
45
5.4
CONFIGURAÇÃO DOS MÓDULOS XBEE’S
Antes de qualquer ação voltada para configuração do Xbee, é necessário
baixar e instalar o aplicativo X-CTU da Digi Networking Solutions no respectivo
computador onde o dispositivo será configurado.
O X-CTU é projetado para funcionar com computadores que utilizam o
sistema operacional Windows. Pode-se baixá-lo diretamente do site do fabricante de
forma gratuita.
Este aplicativo é projetado para interagir com os arquivos de configuração
básica, denominados firmware encontrados em módulos de RF do desenvolvedor do
Xbee, o qual fornece uma interface gráfica que se pode usar de forma intuitiva. A
figura 18 representa a interface gráfica do aplicativo X-CTU[13].
Figura 18 - Interface gráfica do aplicativo X-CTU
A configuração dos módulos Xbee é realizada utilizando o Arduino Uno R3,
por meio do aplicativo X-CTU, o Shield Xbee e os módulos de transmissão (Xbee
Router) e recepção (Xbee Coordinator), um por vez, até a completa configuração
desses módulos. Para isso é essencial a utilização de um cabo USB que cria uma
porta serial COMxx ao ser conectado a um computador, em que esteja instalado o
aplicativo X-CTU. Opta-se pelo modo Router (roteador) e não end device (dispositivo
final) para facilitar a agregação futura de novos nós a rede.
46
Há também outra forma de configurar os módulos Xbee’s que realiza-se
utilizando o dispositivo Xbee Explorer, compatível com todas as versões dos
módulos Xbee’s. A figura 19 apresenta um Shield Xbee Explorer acoplado ao
módulo Xbee.
Figura 19 - Shield Xbee Explorer acoplado ao módulo Xbee
O procedimento de configuração do módulo Xbee utilizando o ArduinoUno R3
é efetuado com a retirada do Microcontrolador do Arduino e uma pequena alteração
na posição dos jumpers do Shield Xbee que saem do ponto Xbee para ponto USB e
após essa modificação, há a reconexão do módulo no Shield e do Shield no Arduino.
A figura 20 representa o Arduino Uno R3 com o microprocessador (esq.), e outro
sem o microprocessador (dir.).
Figura 20 - Arduino Uno R3 com o microprocessador (esq.), e outro sem o
microprocessador (dir.)
47
Primeiramente posiciona-se os jumpers na posição Xbee. Nesta posição, o
pino DOUT (saída digital) do módulo Xbee é ligado ao pino RX do microcontrolador;
e DIN (entrada digital) fica ligado ao TX. Os pinos RX (recepção) e TX (transmissão)
do Atmega, ligados aos pinos TXe RX, respectivamente, do chip FTDI (Future
Technology Device International – Dispositivo Internacional), que é responsável pela
conversão do sinal TTL (Transistor Transistor Logic – Lógica Transistor-Transistor)
para USB, os dados enviados a partir do microcontrolador são transmitidos ao
computador via USB, da mesma forma que são enviados, sem fio, de um módulo
Xbee transmissor, para outro módulo Xbee receptor. O microcontrolador, no entanto,
só é capaz de receber dados a partir do módulo Xbee, não sendo possível através
da USB do computador.
Com os jumpers na posiçãoUSB, o pino DOUT do módulo Xbee fica ligado ao
pino RX do chip FTDI,e o DIN no módulo Xbee ligado ao pino TX do FTDI. Isto
significa que o módulo Xbee pode se comunicar diretamente com o computador. No
entanto,isso só funciona se o microcontrolador for removido da placa Arduino. Se for
deixado na placa, o Arduino é capaz de se comunicar com o computador
normalmente via USB, mas nem o computador nem o microcontrolador são capazes
de se comunicar com o módulo Xbee. A figura 21 representa os jumpers do Xbee
Shield na posição USB e depois na posição Xbee.
Figura 21 - Jumpers do Xbee Shield na posição Xbee (esq.) e na
posição USB (dir.)
48
Uma rede Xbee, deve ter no mínimo um módulo configurado como
Coordinator (coordenador). É com o coordenador que é inicializada a rede ZigBee,
comunicando-se com os outros módulos, que funcionam em modo Router (roteador),
e estes, com os dispositivos chamados End devices (dispositivos finais).
Continuando com o procedimento, conecta-se o cabo USB ao notebook, para
o reconhecimento do módulo Xbee a ser configurado, em seguida é feita a
instalação do driver deste módulo. Então, inicia-se a comunicação entre o aplicativo
X-CTU e o módulo Xbee. Para que os dois módulos se comuniquem é necessário o
cadastro do nome da rede bem como, o endereço MAC (Media Access Control –
Controle de Acesso à Mídia), em ambos os módulos.
A figura 22 representa a etiqueta com o endereço MAC, e outras informações
referentes ao módulo Xbee. Na figura da esquerda o endereço MAC é
0013A20040B7A138 e na outraé 0013A20040B8F6F6.
Figura 22 - Etiqueta com o endereço MAC e outras informações
referentes ao módulo Xbee
5.5
CONFIGURAÇÃO WEB
A configuração Web, é realizada para se ter um ambiente no qual não seja
necessário a instalação de uma plataforma, ou aplicativo, para execução de uma
interface gráfica com o usuário final do sistema de acionamento e controle de iluminação utilizando o protocolo de comunicação sem fio ZigBee. A melhor solução
para esta finalidade é a construção de um WebSite. Utiliza-se o HTML (Hyper Text
Markup Language – Linguagem de Marcação de Hipertexto), que serve como base
da implementação da página.
49
Para efetuar a comunicação entre o Web Site e o ArduinoUno R3, usa-se um
parâmetro de ligação por URL's (Uniform Resource Locator – Localizador Uniforme
de Recurso), mediante um método de query string2 (tradução literal cadeia de
consulta). Deste modo é realizado o envio de parâmetros do Web Site para o
Arduino Uno R3. É através desta query string que a URL “transporta” informação de
acionamento das cargas (lâmpadas).
A edição do Web Site é feita em um editor HTML que é um software para criação de páginas Web, utilizando a linguagem de marcação HTML. Existem vários
editores gratuitamente disponibilizados na internet, mas o próprio sistema
operacional Windows já possui por padrão o Notepad. Entretanto, por oferecer
variados recursos, é utilizado o Notepad ++, neste projeto. A figura 23, representa a
interface do aplicativo Notepad ++[14].
Figura 23 - Interface do aplicativo Notepad++
O Web Site é desenvolvido com auxílio do editor Notepad++ com o objetivo
de melhor organizar o código HTML ou PHP.
Para se obter uma maior interatividade do usuário com o sistema de
acionamento e controle de iluminação utilizando o protocolo de comunicação sem fio
ZigBee existem figuras representativas das lâmpadas e dos botões de acionamento
2
Uma query string é uma forma de se concatenar, na própria URL que está chamando,
alguns valores para a área seguinte da aplicação.
50
no Web site. Através desses botões, pode-se ligar ou desligar as lâmpadas de um
determinado local, alterando assim o status da imagem virtual da lâmpada na
página.
Para se obter um melhor desempenho, utiliza-se a linguagem demarcação
PHP. É por meio da PHP que se desenvolve a página, na qual há um ambiente
interativo com o usuário final.
Este Web Site é hospedado no próprio computador (localmente) ou em uma
máquina remota (em rede), sendo necessário para isso a utilização de um Wamp
Server3 (conhecido anteriormente como Wamp5) que é um aplicativo publicado sob
a GNU (Acrônimo Recursivo de GNU – GNU não é Unix) desenvolvido pelo PHP
team. Um aplicativo PHP para esta finalidade, e com excelentes recursos, é o
EasyPHP, utilizado nesse projeto. A figura 24, representa a interface gráfica do
aplicativo EasyPHP[15].
Figura 24 - Interface gráfica do aplicativo EasyPHP
Essencialmente, para que o EasyPHP possa ser acessado é necessário que
ambos os serviços, Apache e MySQL, estejam no modo started “iniciado”, indicando
que estão funcionando corretamente. Desta forma, o Web Site, que nesse projeto
está hospedado em um computador local, interage com o Arduino Uno R3, em que
está acoplado o Ethernet Shield, fazendo com que os comando digitados no Web
Site, sejam recebidos e interpretados pelo Arduino Uno R3.
3
Este aplicativo, tem como finalidade a instalação rápida dos softwares PHP 5, MySQL e
Apache, disponibilizando suporte ao uso de scripts PHP localmente no ambiente operacional
Windows.
51
5.6
DISPONIBILIZAÇÃO DE CÓDIGOS
Toda a programação utilizada para a realização deste projeto, está disponível
para
baixar
de
forma
gratuita,
através
do
seguinte
endereço:
https://www.dropbox.com/s/ei5k3u26v8s6uux/Projeto_completo-2016-0302.zip?dl=0.
5.7
CONCLUSÃO
Neste capítulo é demonstrado, que há um aplicativo específico para a
configuração de cada um dos dispositivos utilizados no desenvolvimento deste
projeto. Observa-se, que depois de realizados todos os procedimentos de
configurações dos dispositivos e do Web Site, tem-se, o sistema pronto para ser
utilizado.
Desta forma, após a execução dos comandos, a partir do Web Site, os dados
trafegam pelos dispositivos do conjunto transmissor até chegar ao conjunto receptor,
onde ocorre o acionamento da lâmpada.
52
6. RESULTADOS OBTIDOS
6.1
INTRODUÇÃO
Este capítulo aborda os resultados obtidos após os procedimentos relatados
nos capítulos IV e V. Esses procedimentos se referem a escolha dos dispositivos
adequados e a correta configuração necessária para o desenvolvimento do sistema
de acionamento e controle de iluminação utilizando o protocolo de comunicação sem
fio ZigBee.
6.2
RESULTADOS FINAIS
Como resultados finais, ressalta-se informar que, tudo está relatado em uma
sequência que é detalhada, por meio de apresentações de figuras (ilustrações e
fotos), juntamente com as devidas explicações no decorrer deste capítulo.
Através da figura 25 é possível visualizar o sistema como um todo. Mostra-se
as ligações entre os Relés e as lâmpadas que estão conectadas à rede elétrica. O
sistema é dividido em dois blocos: transmissor e receptor. O bloco transmissor é
composto por um Arduino Uno R3, um Ethernet Shield, um Xbee Shield e um
módulo Xbee. Este bloco está conectado ao modem e através de um computador
(tablet, celular, smartphone, ou outro dispositivo com navegador) é possível a
interação com o sistema de acionamento e controle de iluminação utilizando o
protocolo de comunicação sem fio ZigBee, tanto pela rede local, quanto pela
internet. O bloco receptor possui um Arduino Mega 2560, um Shield automação
residencial e um módulo Xbee.
53
Figura 25 - Sistema de Controle de Iluminação
A figura 26 demonstra, através de um print screen do Web Site, o momento
em que são ligadas as lâmpadas da “suíte” e do “quarto”.
Nesta figura, há 8 (oito) lâmpadas que representam os 8 (oito)Relés do Shield
Automação e Alarme Residencial, sendo mantida a mesma disposição tanto no Web
Site quanto nos Relés.
Figura 26 - Interface gráfica da página Web
54
Na figura 27 é possível visualizar o status das lâmpadas no Display do Shield
Automação e Alarme Residencial. A disposição dos Relés está em conformidade
com a sequência dos botões ilustrada no Web Site, representado na figura 26.
Na figura 27, não se faz presente nenhuma lâmpada anexada aos Relés, pois
o intuito é de apenas mostrar as informações de on (ligado)ou off (desligado) que
aparecem no display para auxiliar a quem estiver distante das lâmpadas e próximo
ao bloco receptor.
Percebe-se que os nomes dos ambientes são enumerados no display do
Shield Automação e Alarme, de forma sequencial, de 1 (um) a 8 (oito).Sendo
preservada a mesma organização das lâmpadas, no Web Site. Observa-se, que no
display o número 1 corresponde a “sala” e o 8 corresponde a “garagem”. No
momento da fotografia o status dos LED’s 3 e 5 é on.
Figura 27 - Status dos LED’s representando as lâmpadas 3 e 5 no status on.
55
Na figura 28, observa-se os dispositivos: Arduino Uno R3, Ethernet Shield,
Xbee Shield e módulo Xbee transmissor, acoplados. Este conjunto de dispositivos
está conectado ao modem para conexão com a rede local ou internet.
Nos testes, o conjunto transmissor foi disposto a uma distância média de 10
metros dos dispositivos que compõem o conjunto receptor. Fez-se necessário esse
procedimento, para demonstrar que existe a viabilidade técnica de utilização desses
dispositivos de forma conjunta, e que a comunicação via protocolo ZigBee, entre
transmissor e receptor, ocorre sem falhas. Lembrando, que o alcance de
comunicação desta rede, pode atingir cerca de 100 metros em ambientes fechados.
Figura 28– Dispositivos que compõem o conjunto Transmissor
Na figura 29, faz-se presente os dispositivos que compõem o conjunto
receptor. Ao lado deste conjunto, há um notebook, que está conectado à rede via
Wi-Fi e não faz parte deste conjunto.
A intenção de posicionar o notebook ao lado do conjunto receptor é para
verificação do status da lâmpada no Web Site. Percebe-se, na imagem, que o status
das figuras de todas as lâmpadas, tanto no Web Site, quanto no conjunto receptor,
apresenta-se desligado. Existe a presença de apenas uma das lâmpadas, pois o
intuito é, somente, demonstrar o funcionamento do sistema de acionamento e
controle de iluminação utilizando o protocolo ZigBee.
56
Figura 29–Dispositivos que compõem o conjunto Receptor e o WebSite, mostrando que
a lâmpada está desligada
Na figura 30, a lâmpada é acionada no conjunto receptor, mudando para o
status ligado, sendo exibido simultaneamente no Web Site na figura 31.
Os testes, demonstram êxito em todos os objetivos propostos neste projeto.
Figura 30 – Dispositivos que compõem o conjunto receptor com a lâmpada 3 ligada
57
Figura 31 - Status on das lâmpadas 3 e 5 mostradas no notebook
6.3
CONCLUSÃO
Observa-se, neste capítulo,que são alcançados os objetivos propostos. Os
dispositivos relacionados neste trabalho, após as devidas configurações, viabilizam
e integram o sistema de acionamento e controle de iluminação utilizando o protocolo
ZigBee.
Obteve-se, êxito no desenvolvimento de uma interface gráfica para
padronização de comandos através da construção de um Web Site, conforme
relatado em imagens descritas neste capítulo. Os testes mostram que existe a
confiabilidade na transmissão de dados utilizando o protocolo ZigBee.
58
7. CONCLUSÃO
Em virtude do que é apresentado como resultado final deste projeto, concluise, que tanto o Arduino quanto o ZigBee, podem, atuar de forma conjunta, ou
particular, para a simplificação de aplicações em diversos ramos da tecnologia.
Utiliza-se o Arduino Uno R3, Arduino Mega 2560, Shield Automação e
Alarme, Ethernet Shield e Xbee Shield, baseado em características peculiares, pois
promovem a integração do sistema proposto. Através destes elementos, a
comunicação ocorre de forma satisfatória.Após as devidas configurações dos
dispositivos, tem-se, o sistema de acionamento e controle de iluminação utilizando o
protocolo de comunicação sem fio ZigBee, pronto para o uso.
Desenvolve-se, então, um Web Site com interface gráfica, para padronização
de comandos, capazes de realizar o acionamento e controle do sistema de
iluminação.
Existe economia de recursos estruturais de redes de comunicação, com a não
utilização de cabos. A partir dos resultados descritos anteriormente, demonstra-se a
confiabilidade e a eficiência na transmissão de dados utilizando o protocolo ZigBee.
Por se tratar de uma arquitetura moderna e versátil, o sistema de
acionamento e controle de iluminação utilizando o protocolo de iluminação sem fio
ZigBee, dispõe de uma gama de recursos agregados, podendo servir como base de
elaboração de variados projetos.
Pode-se sugerir algumas propostas, para o
desenvolvimento de futuras aplicações, por exemplo, acionamento e controle de
condicionadores de ar, acionamento de motores elétricos, entre outras.
8. REFERÊNCIAS BIBLIOGRÁFICAS
[1] MORAES, C. C. de; CASTRUCCI, P. L. Engenharia de Automação Industrial.
São Paulo. 2.ed. LTC, 2007.
[2] CHAMUSCA, A. Domótica & Segurança Electrónica: A Inteligência que se
Instala. Lisboa: Ingenium Edições, 2006.
[3] BOLZANI, C.A.M. Residências inteligentes - domótica, redes domésticas,
automação residencial. São Paulo: Livraria da Física, 2004.
[4] MATEUS FILHO, P.R.; DIAS, Y.F.G.; FERREIRA Jr., P.A.; BAUCHSPIESS, A.
Automação Predial Wireless em Ambiente com Cargas Térmicas. Brasília.
Departamento de Engenharia Elétrica – Universidade de Brasília. 2009. p.6.
Disponível em: http://www.ene.unb.br/adolfo/Papers/SBAI2009_55763.pdf. Acesso
em: 6 mar. 2015.
[5] WOSS, A. C.; VALENTINI, R. P.; NEVES JR, P. T. Automação Residencial sem
fio Baseada nos Protocolos TCP/IP e ZigBee. Paraná. Seminário de Extensão e
Inovação da Universidade Tecnológica Federal do Paraná. 2013. p. 8
[6] ROGERCOM. Controle remoto e aquisição de dados via Xbee/ZigBee (IEEE
802.15.4). 2008. Disponível em: http://www.rogercom.com/ZigBee/ZigBee.htm.
Acesso em: 08 jun. 2015.
[7] HERNANDEZ, H. X.; KALIL, F. Viabilidade da plataforma Arduino e do
protocolo ZigBee na elaboração de redes de sensores sem fio. Faculdade
Meridional – IMED. Passo Fundo – RS, 2013, p.1.
[8] MCROBERTS, Michael. Arduino Básico. [Tradução Rafael Zanolli]. São Paulo:
Novatec Editora, 2011, p. 22.
[9] KINDERMANN, L. M.; DOS SANTOS, E. L. F. Estudo sobre o padrão ZigBee e
desenvolvimento de sistema aplicado em automação residencial. Revista Ilha
Digital – Instituto Federal de Santa Catarina, p. 56. Florianópolis, 2012. Disponível
em: http://www.ilhadigital.florianopolis.ifsc.edu.br. Acesso em: 19 mar. 2014.
[10] TSANG, K. F.; LEE, W. C.; LAM, K. L.; TUNG, H. Y.; KAI XUAN. An integrated
ZigBee automation system: An energy saving solution. ; [Tradução Lucas de Melo
Kindermann, Everton Luiz Ferret dos Santos]. 2007. Disponível em:
http://www.ieeexplore.ieee.org/Xplore/home.jsp. Acesso em: 17 mai. 2015.
[11] Universidade Federal do Rio de Janeiro. ZigBee. 2011. Disponível em:
http://www.gta.ufrj.br/grad/10_1/ZigBee/dispositivos.html. Acesso em: 20 mar. 2014.
[12] ARDUINO. Credits. 2015. Disponível em:
https://www.Arduino.cc/en/Main/Credits. Acesso em: 12 mai. 2015.
[13] DIGI. X-CTU.2015. Disponível em: http://www.digi.com/products/xbee-rfsolutions/xctu-software/xctu. Acesso em: 14 mai. 2015.
[14] Notepad++. Disponível em: https://notepad-plus-plus.org/. Acesso em: 18 mai.
2015.
[15] EasyPHP. Disponível em: http://www.easyphp.org/. Acesso em: 02 jun. 2015.