Escolar Documentos
Profissional Documentos
Cultura Documentos
Comunicação LoRa Com ArduínoPonto A Ponto - P2P
Comunicação LoRa Com ArduínoPonto A Ponto - P2P
Apesar da disponibilidade das tecnologias Wi-Fi, Bluetooth e redes de comunicação celular (GPRS/3G/4G) em diferentes soluções
em Internet das Coisas (IoT), surgiu a necessidade por um tipo de comunicação de longo alcance com baixo de consumo de energia.
Assim, um novo grupo de tecnologias de comunicação, as LPWAN (do inglês Low Power Wide Area Networks), apresentam como
principais características alto alcance de transmissão e baixo consumo de energia.
As duas redes LPWAN mais conhecidas são a rede Sigfox e redes LoRa, sendo esta última baseada na tecnologia LoRa e procotolo
LoRaWAN.
Essas tecnologias também estão disponíveis para comunicação LoRa com Arduino.
A tecnologia LoRa trata-se de um tipo de modulação patenteado pela empresa SEMTECH e disponível como comunicação de
radiofrequência (RF) nas frequências 433, 868 e 915 MHz.
As faixas de operação do LoRa fazem parte da banda ISM (Industrial Sientific and Medical), onde diferentes intervalos são
reservadas internacionalmente para o desenvolvimento Industrial, científico e médico.
Um exemplo de um módulo de comunicação que também faz parte da banda ISM é o nRF24L01.
O módulo SX1276 é um transceiver, dispositivo responsável pela comunicação sem fio, oferecendo comunicação de espectro
disperso de alcance ultra longo e alta imunidade a interferências e minimizando o consumo de energia.
O transceiver SX1276 é um circuito integrado muito pequeno e que necessita diferentes circuitos de proteção a interferências e
ruídos, assim diversos fabricantes têm disponibilizado o SX1276 em módulos com comunicação serial para diversas plataformas de
desenvolvimento, como Arduino e Raspberry Pi.
Da esquerda para direita temos o módulo LoRa mini, e LoRaF 30, ambos da niceRF.
A diferença entre os dois primeiros corresponde a potência de transmissão, o LoRa mini permite transmissao com 100mW e LoRaF
30 com 500mW. O terceiro módulo corresponde ao RFM95W da HopeRF.
Vale destacar que você já encontra o LoRa mini disponível para venda na loja virtual da FilipeFlop.
Página 1 de 6
Em comum a todos os três módulos listados acima tem-se a pinagem para conexão com as placas de desenvolvimento, baseado na
comunicação serial pelo protocolo SPI, onde será detalhada na seção a seguir.
Do protocolo SPI temos os pinos: SCK, MISO, MOSI e NSS (que atua como Chip Select).
Os pinos responsáveis pela alimentação do módulo são o VCC (com funcionamento exclusivamente na tensão de 3.3V!) e o GND
(terra).
Para a conexão com antena, seja esta helicoidal, wire (baseada em fio) ou com algum conector específico, o pino ANT. Outros pinos
exclusivos do módulo são: DIO0, DIO1, DIO2, e NRESET.
A tabela abaixo mostra a descrição completa (também ilustrada na Figura) e resumida.
Página 2 de 6
Para a conexão do modulo LoRa mini com o Arduino faz-se necessário o uso de conversor de nível lógico 3.3-5V Bidireccional,
visto que o Arduino UNO opera em 5V e o nível lógico do modulo LoRa mini é 3.3V.
Assim, segue a lista dos componentes necessários (para a comunicação LoRa com Arduino entre dois módulos):
Componentes utilizados:
2x Arduino UNO R3
2x Módulo LoRa Mini 915MHz
4x Conversor de Nível Lógico 3.3-5V Bidireccional ou 2x PCBs adaptadoras do módulo LoRa
Antes de começar qualquer passo da montagem do circuito note que o módulo LoRa mini não possui conexão direta com os
tradicionais pinos da protoboard.
Assim faz-se necessária uma conexão com protoboard ou pinos para ligação com Arduino UNO.
Duas opções tornam-se possíveis (mostradas na figura abaixo): soldar diretamente o jumper a ser utilizado na placa ou utilizar uma
placa de circuito (PCB) de modo a adaptar a ligação do módulo.
O leitor que optar pela segunda opção pode utilizar esta placa open-source hardware desenvolvida anteriormente para conexão.
Considerando o uso com Arduino UNO (também válido para o Mega e placas baseadas no Atmega32u4 como Arduino Leonardo)
segue abaixo a tabela para comunicação.
Página 3 de 6
O código a ser utilizado pela biblioteca possui alguns parâmetros de configuração, como o endereço do dispositivo, o endereço do
destino da mensagem e o intervalo de tempo entre o envio de mensagens.
O código comentado e explicado, pode ser encontrado a seguir:
Página 4 de 6
Página 5 de 6
FUNCIONAMENTO DOS MÓDULOS LORA CONECTADOS
Para realizar uma comunicação LoRa com Arduino entre dois módulos basta programar cada respectivo Arduino com seu endereço e
o endereço do módulo a ser enviado.
Por exemplo, programe um módulo condereco 0x01 e com envio de mensagens para o módulo 0x05. Em seguida, programe um
Arduino com o endereço 0x05 e envio para 0x01.
Página 6 de 6