sexta-feira, 29 de abril de 2011

MiWi: Dispositivos e Topologias de rede

Recentemente iniciei um trabalho onde eu teria que desenvolver um equipamento que pudesse se comunicar através de algum tipo de protocolo wireless. Meu cliente então me trouxe uma placa de desenvolvimento que usa o módulo MRF24J40MA da Microchip. Devo confessar que não tinha qualquer experiência com protocolos wireless, e vi uma ótima oportunidade de dar inicio aos meus estudos nesta área. O que vou escrever aqui está baseado no Application Note AN1066 - MiWi Wireless Networking Protocol Stack, da Microchip.
Por enquanto, fiquemos com a introdução à este protocolo, baseado nas camadas MAC (Medium Access Layer) e PHY (Physical Layer) da especificação do IEEE 802.15.4. Esta especificação é a mesma especificação básica para o protocolo ZigBee, portanto para aqueles que já estão familiarizados com este protocolo, muita coisa por aqui será apenas repetição do que já viram. No caso, o ZigBee e o MiWi desenvolvem as camadas superiores que não são definidas por esta especificação.
Vejamos então o que a especificação IEEE 802.15.4 define, ao mesmo tempo que tratarmos do que o MiWi adiciona. Em primeiro lugar, ela define três frequências de operação: 2.4GHz, 915MHz e 868MHz. Cada frequência oferece um número fixo de canais, e possui uma taxa máxima de transmissão, que para facilitar, disponho no quadro abaixo:

FrequênciaCanais
(Número do canal)
Máximo
Throughput de dados (kbps)
868 MHz1 (0)20
915 MHz10 (1-10)40
2.4 GHz16 (11-26)250

Um pacote MAC do IEEE 802.15.4 tem tamanho máximo de 127 bytes, incluindo um CRC de 16 bits. Além disto, o IEEE 802.15.4 opcionalmente usa um mecanismo de transferência com Acknoledge no MAC. Isto significa que há um flag especial ACK no cabeçalho do pacote. Quando este flag está setado, um Acknoledgement é requerido. Isto vai garantir que o pacote foi recebido, embora isto não garanta que o pacote chegue a camadas superiores dentro do stack (o pacote pode ser descartado por alguma camada intermediária do stack). Se o flag ACK for setado e o ACK não for recebido dentro de certo tempo, o transmissor fará uma nova transmissão. Ele repetirá isto uma certa quantidade de vezes até gerar um erro.

Tipos de dispositivos

O IEEE 802.15.4 também define dispositivos baseados em sua funcionalidades, que são basicamente duas. Disponibilizo aqui também uma tabela com a descrição de cada dispositivo.

Tipo de DispositivoServiços oferecidosFonte de Tensão típicaConfiguração típica para o Receptor oscioso
Full Function Device (FFD)Todos ou a maior parteRede de alimentaçãoLigado
Reduced Function Device (RFD)LimitadoBateriaDesligado

Já o MiWi define três tipos de dispositivos, desta vez em relação ao seu status na rede. Aqui temos o PAN Coordinator, o Coordinator e o End Device.

Tipo de DispositivoTipo de dispositivo
IEEE
Função típica
PAN CoordinatorFFDUm por rede. Forma a rede, aloca os endereços de rede, mantém a tabela de conexões.
CoordinatorFFDOpcional. Estende o alcance físico da rede. Permite que mais nós se unam à rede. Pode também executar funções de monitoramento ou controle.
End DeviceFFD ou RFDExecuta funções de monitoramento e controle.

Topologias de rede

Dos três dispositivos definidos pelo protocolo MiWi, o mais importante para a a rede é o PAN Coordinator. É ele quem inicializa a rede, seleciona o canal e o PAN ID da rede. Todos os outros dispositivos devem obedecer as instruções dadas pelo PAN Coordinator, para se unir à rede. Esta rede pode ter quatro configurações possíveis, que vamos mostrar aqui. As imagens foram retiradas do já mencionado Application Note.
Configuração em Estrela
A configuração em estrela consiste de um PAN Coordinator e um ou mais End Devices. Na rede em estrela, todos os dispositivos se comunicam unicamente com o PAN Coordinator. Se algum dispositivo precisa enviar dados para outro dispositivo, ele enviará primeiro para o PAN Coordinator, que por sua vez encaminhará o pacote para o outro dispositivo.

Configuração Cluster-Tree
Na configuração Cluster-Tree, continuamos a ter apenas um PAN Coordinator. Contudo, outros Coordinators podem se unir à rede, formando uma estrutura de rede em árvore: o PAN Coordinator seria a raiz, os Coordinators seriam os ramos, e os End Devices seriam as folhas. Neste tipo de rede, todas as mensagens enviadas pela rede seguem o caminho da estrutura em árvore. Já que as mensagens podem ser roteadas através de mais de um nó para que elas cheguem a seu destino, este tipo de rede algumas vezes é referido como redes multi-hop (salto múltiplo).

Configuração Mesh
A rede Mesh é parecida com a rede Cluster-Tree, exceto pelo fato de que dispositivos FFD podem rotear mensagens diretamente a outros dispositivos FFD, ao invés de seguir a estrutura de árvore da rede. No entanto, mensagens de dispositivos RFD ainda precisam passar pelo elemento pai deste dispositivo.
Uma grande vantagem nesta topologia é a diminuição no tempo de latência das mensagens, além da confiabilidade ser aumentada. Como as redes cluster-tree, a rede mesh é também uma rede multi-hop.

Configuração Ponto a ponto (P2P)
O tipo mais simples de configuração, aqui não há distinção entre pai ou filho, pois a comunicação é direta.

Redes Multi-acesso

Uma rede IEEE 802.15.4 é uma rede multi-acesso, significando que todos os nós em uma rede possuem igual acesso ao meio de comunicação. Há dois tipos de mecanismos multi-acesso: beacon (farol) e non-beacon.
Em uma rede beacon, os nós podem transmitir em fatias de tempo predefinidas. O PAN Coordinator periodicamente inicia com um superframe, identificado como um beacon frame, e todos os nós na rede devem sincronizar com este frame. A cada nó é atribuída uma fatia específica no superframe, durante a qual, é permitida a transmissão e recepção. Um superframe pode também conter um slot comum durante a qual todos os nós competem pelo acesso do canal.
Em uma rede non-beacon, todos os nós em uma rede podem transmitir a qualquer hora desde que o canal esteja desocupado. A versão atual do MiWi suporta apenas redes non-beacon.

Primeiras conclusões

Temos aqui uma pequena descrição deste protocolo wireless da Microchip. Hoje em dia, os protocolos wireless estão cada vez mais fáceis de ser implementados, já que muitos fabricantes desenvolvem módulos completos.
Este protocolo tem como vantagem o custo, além de seus módulos possuírem tamanhos reduzidos.
Posteriormente falarei mais sobre o endereçamento neste protocolo, bem como o sistema de mensagens.

Um comentário:

Você também poderá gostar de