Introdução
A conectividade LoRaWAN é uma das conectividades mais adequadas para soluções em Internet das Coisas e Smart Cities, pois alia longo alcance (na ordem de alguns quilômetros entre dispositivo e gateway LoRaWAN) e baixo consumo energético.
Para mostrar um dos usos de LoRaWAN nestes contextos, trago aqui um projeto open-source, de minha autoria, de um rastreador munido de conectividade LoRaWAN e, ainda, feito utilizando Zephyr RTOS como sistema operacional embarcado.
Funcionalidades
O projeto conta com as seguintes funcionalidades:
- Captura das coordenadas (latitude e longitude) de um módulo GPS/GNSS via UART. Qualquer módulo GPS do mercado que disponibilize mensagens do tipo NMEA é compatível com este projeto.
- Transmissão de mensagens LoRaWAN (no modo de ativação ABP) através do módulo Smart Modular LoRaWAN (SMART Modular Technologies).
- Monitoramento do status da ignição (ligada/desligada) e tempo acumulado com ignição ligada (em milissegundos).
- Validação das coordenadas obtidas por meio da leitura do fix do GNSS.
- Integração com o subsistema de logging do Zephyr RTOS para gerenciar todas as mensagens de log.
- Envio periódico de mensagens LoRaWAN contendo: latitude (4 bytes em ponto flutuante), longitude (4 bytes em ponto flutuante) e um byte de status. Nesse byte, o bit 0 indica o status da ignição e o bit 1 o status do GNSS fix.
Uma foto do projeto desenvolvido pode ser vista na figura 1.
Com este projeto como base, você pode criar soluções realmente interessantes para rastreamento e telemetria.
Observações importantes
Antes de enviar com sucesso qualquer mensagem LoRaWAN para a nuvem, você precisa definir as credenciais LoRaWAN. Como este projeto usa LoRaWAN no modo de ativação ABP, as seguintes credenciais devem ser obrigatoriamente definidas:
- Device address: defina isso em CONFIG_LORAWAN_UART_SMARTMODULAR_DEVADDR
- Application Session Key: defina isso em CONFIG_LORAWAN_UART_SMARTMODULAR_APPSKEY
- Network Session Key: defina isso em CONFIG_LORAWAN_UART_SMARTMODULAR_NWKSKEY
- Application EUI: defina isso em CONFIG_LORAWAN_UART_SMARTMODULAR_APPEUI
Código-fonte do projeto
O projeto é open-source, distribuído sob licença MIT. Este pode ser acessado na íntegra em: https://github.com/phfbertoleti/gnss_lorawan_tracker
Indicações de hardware para este projeto
Segue abaixo uma lista de links para locais onde você pode adquirir os componentes de hardware utilizados neste projeto:
- ESP32 Devkit V1, com cabo USB para alimentação e programação
- Shield para Arduino – LoRaWAN Helix Antenna
- Módulo GPS Ublox GY-GPS6MV2
- Jumpers diversos]
- Protoboard 830 pontos
- Interruptor Chave Liga Desliga Gangorra
0 comentário