Modulação e protocolo LoRaWAN


Modulação


Em LoRa, um sistema final possui um módulo de rádio responsável pela codificação/decodificação das informações em um sinal. Esse sinal é transmitido e recebido por um gateway que também possui o mesmo módulo que é capaz de modular/demodular o sinal. Portanto, a comunicação entre sistema final e gateway é bidirecional, e estes dispositivos que se comunicam recebem nome de "TRANSCEIVERS".


Módulo de rádio presente nos sistemas finais e gateway.

A modulação de sinais na arquitetura LoRa é feita através do Chirp Spread Spectrum e é propagada em faixas de frequência ISM não licenciadas, o que, legalmente, facilita a sua utilização por entidades e, ao mesmo tempo, barateia o custo de seu uso. Um pulso chirp é um sinal cuja frequência varia monotonamente. Se aumentamos a frequência temos um "Up-chirp" e se ela decresce temos um "Down-Chirp". Os chirps são deslocados ciclicamente, isto é, quando se atinge a frequência mais alta retorna-se para a frequência mais baixa. Com isso, a informação que qualquer sinal carrega é dada pelos saltos de frequência


Faixas de frequência nas quais LoRa opera em diferentes países.[10]


Sinal no tempo (esquerda). Chirps (direita).

Um salto, quando decodificado, representará um símbolo. Um símbolo representa um ou mais bits de dados e apresenta 2SF valores possíveis (em binário, seria equivalente a um número de SF bits). De modo enfático, o fator de espalhamento (SF) representa o número de bits da modulação.Na prática, ele representa a duração de um chirp, ou seja, quanto maior o SF, mais longo é o chirp e mais bits serão transmitidos por chirp. A cada incremento no SF, o tempo no ar e um chirp dobra, como na tabela a seguir:


Relação entre SF e tempo de um chirp no ar[5].

Além deste há outros paramêtros caracteristicos de implementação da rede. Dentre eles a largura de banda (BW) que especifica em que faixa de frequência a rede irá operar. Com esses dois parametros conseguimos obter as seguintes relações:

Taxa de símbolo/segundo:


Taxa de símbolo/segundo[3]

E o período de um símbolo:


Período de um símbolo[3]

Há ainda a taxa de código (CR) que está relacionada a resistência a ruídos e facilidade de decodificação. Em uma rede que se propaga pelo ar (lê-se alta propabilidade de erro), é importante que os sinais apresentem em seu protocolo trechos de verificação ou possível correção de erros. As diferentes CR possibilitam a arquitetura tal feito. Portanto podemos introduzir a nova relação matemática:


Taxa de bits.[3]

A vantagem do uso do CSS é que os sinais emitidos são robustos, não propagam ruídos, apresente resistência a diferentes meios e não sofrem interferência na sua faixa de frequência (por conta dos inúmeros dispositivos que podem operar de maneira semelhante).

O protocolo LoRaWAN


Utilizando a modulação física da tecnologia LoRa, foi definido um protocolo LoRaWAN (Long Range Wide Area Network) para a codificação e a decodificação do conteúdo das mensagens recebidas e enviadas.

A estrutura de um pacote de uplink é composta por um preâmbulo, que identifica o início de um pacote, por um cabeçalho da camada física (PHDR), por um campo CRC, responsável pela verificação da integridade da mensagem, por um cabeçalho CRC e por um campo de payload da camada física (PHYPayload).[5]



Estrutura da mensagem de uplink.[5]

Para o pacote de downlink, o padrão definido foi manter os campos do pacote de uplink com excessão dos de verificação de mensagens, CRC e Header CRC.[5]



Estrutura da mensagem de downlink.[5]

O campo de payload da camada física é uma composição de outros campos. Ele começa com um cabeçalho MAC (MHDR), seguido de um MACPayload (substituído por um join-request ou join-response para OTAA) e termina com um código que verifica a sua integridade (MIC). O cabeçalho MAC (MHDR) especifica o tipo de mensagem (MType) e a versão formato do quadro utilizado para codificar o quadro[5]



Estrutura do cabeçalho MAC.[5]


Tipos de mensagem (MType).[5]

Adentrando ainda mais na arquitetura do protocolo, o campo do MACPayload é formado por um cabeçalho para o quadro (FHDR), um campo de porta opcional (FPort) e um campo opcional de payload do quadro (FRMPayload).[5]

O Cabeçalho do quadro (FHDR) é composto por um identificador do dispositivo final na rede (Desenvolvido no tópico "Ativação de dispositivos"), por um campo de controle (FCtrl), por um contador de quadros (FCnt) com tamanho igual a dois octetos e por um campo para opçõe (FOps) com quinze octetos de tamanho.[10]



Protocolo LoRaWAN.[10]


Identificação do preâmbulo e dos subsequentes símbolos em um gráfico Frequência x Tempo.



A partir de todos esses campos do protocolo, a rede LoRa consegue oferecer segurança, ajuste de consumo de dados e adaptação à variados dispositivos finais.