No tutorial anterior, foram discutidos os fundamentos das redes de sensores sem fio. Foi mencionado que a RSSF pode utilizar muitos padrões e protocolos sem fio para permitir a comunicação do sensor com uma nuvem ou servidor. Também foi mencionado que os sensores sem fio se comunicam com uma nuvem ou servidor com a ajuda de um Gateway que realiza a conversão de protocolo para a rede sem fio. Zigbee é um dos padrões e protocolos geralmente usados para RSSF implantados em aplicações industriais.
Zigbee foi desenvolvido como um padrão global de código aberto para resolver as necessidades exclusivas de redes de sensores sem fio de baixo custo e baixo consumo de energia. O Zigbee Alliance Group desenvolveu o padrão Zigbee adicionando uma pilha de camada de rede, camada de segurança e uma estrutura de aplicativo no topo do padrão IEEE 802.15.4. Zigbee opera em bandas não licenciadas, incluindo 2,4 GHz, 900 MHz e 868 MHz.

Zigbee suporta múltiplas topologias de rede, como topologias de rede ponto a ponto, ponto a multiponto e malha. Zigbee suporta comunicações mestre para mestre ou mestre para escravo para diferentes nós sensores.
O protocolo Zigbee é caracterizado pelos seguintes recursos –
1) O Zigbee opera em dispositivos que requerem baixa potência, portanto, isso limita as distâncias de transmissão a uma linha de visão de 10 a 100 metros, dependendo da potência de saída e das características ambientais.
2) Os dispositivos Zigbee podem transmitir os dados por longas distâncias, passando os dados por meio de uma topologia de rede mesh na qual cada nó sensor retransmite dados para a rede.
3) O Zigbee é normalmente usado em aplicações de baixa taxa de dados que requerem bateria de longa duração e pequeno consumo de energia.
4) Suporta redes de comunicação seguras (segurança AES de 128 bits).
5) A taxa de dados em redes Zigbee varia de 20 Kbit/s a 250 Kbit/s.
Este padrão foi projetado propositadamente para criar redes de área pessoal com a ajuda de rádios digitais pequenos e de baixa potência, como módulos Xbee para automação residencial e projetos de pequena escala que requerem conexão sem fio. O padrão pretende ser mais simples e mais barato do que outras redes PAN sem fio, como Wi-Fi e Bluetooth.
Arquitetura Zigbee –
IEEE 802.15.4 é definido por camadas físicas e MAC, enquanto o padrão Zigbee é completado pelo acúmulo de camadas de rede e de aplicação próprias do Zigbee. A arquitetura Zigbee pode ser representada conforme mostrado abaixo –
Arquitetura de rede Zigbee
1) Camada Física – Esta camada faz modulação para sinais de saída e demodulação para sinais de entrada. A frequência, país, taxa de data e número de canais desta camada estão resumidos na tabela a seguir –

2) Camada de Acesso Médio (MAC) – Esta camada é responsável por acessar as diferentes redes usando técnicas de acesso múltiplo com detecção de portadora (CSMA ou CA) para evitar colisões. Desta forma, fornece transmissão de dados confiável.
3) Camada de Rede e Segurança – Esta camada é responsável por diversas funções como iniciar a rede, gerenciar dispositivos finais, verificar se eles entram ou saem da rede, roteamento, configuração de dispositivos e fornecer segurança AES de 128 bits
4) Subcamada de suporte de aplicativo (APS) – Esta camada permite que os serviços necessários para o objeto de dispositivo Zigbee (ZDO) e objetos de aplicativo (endpoints) façam interface com as camadas de rede para comunicação de dados e serviços de gerenciamento. Esta camada é responsável por combinar dois dispositivos de acordo com seus serviços e necessidades.
Tipos de dispositivos na rede Zigbee –
O sistema Zigbee consiste em três tipos de dispositivos – coordenador Zigbee, roteador e dispositivo final (opcional).
1) Coordenador – Toda rede Zigbee deve consistir em pelo menos um nó coordenador que é o principal nó sensor de tomada de decisão da rede. Ele transmite e recebe os dados entre diferentes nós sensores com a responsabilidade de manipular e armazenar as informações incluindo chaves de segurança.
2) Roteador – Os roteadores Zigbee atuam como dispositivos intermediários que retransmitem os dados de outros dispositivos.
3) Dispositivos finais – Esses dispositivos podem se comunicar com o coordenador ou roteador, mas não podem retransmitir dados de outros dispositivos.
Módulos Zigbee –
Existem módulos Zigbee padrão disponíveis no mercado que podem ser implantados e instalados diretamente para criar uma rede WSN baseada no protocolo Zigbee. A série Xbee da Digi International é um dos produtos Zigbee populares.
O Xbee Series 2C será usado nos próximos tutoriais para projetar redes WSN. Este módulo suporta protocolo Zigbee para comunicação sem fio. Os módulos Xbee são pequenos dispositivos RF (radiofrequência) que transmitem e recebem dados pelo ar usando sinais de rádio. Os módulos Xbee operam com fonte de alimentação de 3,3 V com corrente de transmissão e recepção de 40 mA. Como eles trabalham em nível lógico CMOS de 3,3V, para se comunicar com uma placa microcontroladora como o Arduino que funciona em nível TTL, é necessário algum tipo de conversor lógico bidirecional (CMOS-para-TTL e TTL-para-CMOS). Este módulo suporta taxas de dados de até 250 Kbps.
O Xbee Series 2C tem as seguintes especificações –
• Família de produtos: XB24C
• Protocolo – Zigbee
• Padrão RF – 802.15.4
• Frequência operacional – ISM 2,4 GHz
• Tipo de antena – Fio
• Criptografia – AES de 128 bits
• Conjunto de comandos AT e API
• Requisito atual-
o Corrente de transmissão – 40mA (@modo boost de 3,3V habilitado)
o Receber corrente – 40mA (@modo boost de 3,3V habilitado)
o Sono- <1 uA
Módulo Xbee Série 2C
Para fazer uma RSSF baseada em Zigbee, serão necessários dois dispositivos Xbee série 2C, sendo um configurado como coordenador e outro como roteador.
O Coordenador é sempre necessário em qualquer rede de comunicação sem fio do padrão Zigbee. O dispositivo Coordenador executa as seguintes funções –
• Primeiro inicia a rede, selecionando o canal e o PAN ID.
• Distribui endereços, permitindo que roteadores e dispositivos finais ingressem na rede e auxilia no roteamento de dados.
• Gerencia as outras funções que definem a rede, a protegem e a mantêm saudável. Este dispositivo não pode dormir e deve permanecer ligado o tempo todo.
Um roteador é um nó Zigbee completo. Ele executa as seguintes funções –
• Une-se às redes existentes e envia, recebe e encaminha informações.
• Permite que outros roteadores e dispositivos finais ingressem na rede.
• Ele não pode dormir e deve estar ligado o tempo todo
• Pode haver vários dispositivos roteadores em uma rede.
Configurando dispositivos XBEE
Existem softwares disponíveis que podem ser usados para configurar os dispositivos Xbee como coordenador e roteador. Dois desses softwares são o XCTU legado e o XCTU 6.3.8. XCTU é um aplicativo gratuito e multiplataforma para soluções Xbee e RF. Ele pode ser usado para configurar dispositivos Xbee com a ajuda de uma placa Arduino.
Assim, para configuração de dispositivos Xbee para fazer uma rede WSN, serão necessários dois módulos Xbee Série 2, dois shields Xbee, 2 placas Arduino UNO ou Arduino Mega e alguns fios de conexão. O software utilizado será o XCTU 6.3.8 ou a versão mais recente do XCTU.
O módulo X-Bee é um módulo de 20 pinos com a seguinte configuração de pinos –


Para conectar o módulo ao PC, pode-se usar Arduino. O Arduino UNO ou Arduino Mega atua como um conversor USB para módulos Xbee. Antes de usar o Arduino UNO com módulos Xbee, um esboço mínimo deve ser carregado nele ou o microcontrolador Atmega deve ser removido da placa. O módulo Xbee e a placa Arduino devem se comunicar serialmente. O módulo Xbee deve ser conectado ao Arduino conforme tabela a seguir –

Após as conexões do circuito, os módulos Xbee podem ser configurados executando as seguintes etapas –
1) Abra o software XCTU.
2) Clique em “Descobrir Módulos de Rádio”.
3) Clique na porta COM desejada na qual o módulo está conectado.
4) Defina a taxa de transmissão de acordo com o dispositivo. A taxa de transmissão está definida para 9600 neste caso.
5) Após a digitalização bem-sucedida, o dispositivo com ID exclusivo pode ser encontrado.
6) Clique no dispositivo e o software irá ler os parâmetros AT do dispositivo.
7) Escreva o PAN ID, digamos 1234. Este PAN ID determina a rede à qual ingressar. O intervalo válido é de 0 a 0xFFFFFFFFFFFFFFFF. Este ID deve ser igual para todos os rádios da mesma rede.
8) Habilite o coordenador se o dispositivo Xbee tiver que ser configurado no modo coordenador, por CE coordenador Enable. Se o dispositivo Xbee precisar ser configurado no modo roteador, desative o CE Coordinator Enable.
9) Defina o endereço de destino como ALTO e BAIXO. Pode ser um endereço de 32 bits ou um endereço de 64 bits. É definido como “0x000000000000FFFF” neste caso. Este é o endereço de transmissão do PAN. Isso significa que o coordenador ou roteador está escutando quaisquer pacotes de rádio recebidos.
10) Se o Xbee for usado no modo roteador, habilite a verificação do canal JV. Se estiver habilitado, o roteador verificará se existe um coordenador no mesmo canal após ingressar e garantirá que está operando em um canal válido ou não.
11) Dê um nome aos módulos Xbee por “Identificador de nó NI”. O comprimento máximo aceito é de 0 a 20 caracteres ASCII.
12) Os módulos Xbee operam em dois modos – modo de comando AT e modo API. Selecione o modo adequado em “AP API Enable”.
13) Após todas essas alterações, clique nos parâmetros de gravação e a configuração será salva nos módulos Xbee.
Desta forma, os módulos Xbee podem ser configurados para os modos requeridos.
Deve-se observar que o firmware mais recente (405F neste caso) deve ser usado para os módulos Xbee. Continue também verificando atualizações de firmware para módulos Xbee mesmo depois que a rede sem fio já estiver instalada. O legado XCTU também pode ser usado de maneira semelhante para configuração do módulo.
No próximo tutorial – Comunicação cliente a cliente através do protocolo Zigbee, aprenda a configurar uma rede Zigbee simples entre dois clientes usando módulos Xbee.