Ligue um dispositivo a 21 km (13 milhas) de distância – O projeto definitivo Off-Grid LoRa com WiFi LoRa 32!

Esta lição faz parte de: Introdução ao WiFi LoRa

Ligue um dispositivo a 21 km (13 milhas) de distância – O projeto definitivo Off-Grid LoRa com WiFi LoRa 32!

Imagine poder trocar umventilador, aquecedor, fechadura de porta ou sistema remotode cima até21 quilômetros (13 milhas)ausente completamentefora da rede,sem Wi-Fi, esem um cartão SIMNeste tutorial, você aprenderá como construir um controlador de relé sem fio de longo alcance e seguro usandoHeltec WiFi LoRa 32 V3módulos e oRobojax_HeltecLoRa32biblioteca. Este projeto permite comunicação LoRa criptografada para acionar relés com segurança em longas distâncias.

Visão Geral do Projeto

Este sistema consiste em duas placas LoRa32:

  • Transmissor (TX)Um botão pressionado aciona um comando criptografado ("LIGADO" ou "DESLIGADO") via LoRa.

  • Receptor (RX)Escuta e decripta o comando, então controla um módulo relé conectado ao GPIO4 de acordo.

Você tem duas versões de código do transmissor:

  • SimplesEnvia ON quando o botão é pressionado, OFF quando solto.

  • AlternarAlterna o estado a cada pressionamento.


Instalando Placas Heltec ESP32

Adicione este caminho nas preferências do seu Arduino IDE, conforme mostrado no vídeo:https://resource.heltec.cn/download/package_heltec_esp32_index.json

Biblioteca Requerida

Você deve instalar oRobojax_HeltecLoRa32biblioteca. Baixe-o a partir do link abaixo deste artigo.

Instale esta biblioteca ZIP pelo Arduino IDE antes de fazer o upload de qualquer código.

Instruções de Fiação

Fiação do Transmissor:

  • Botão do usuário conectado aGPIO0

  • Opcional: O display OLED utiliza pinos padrão (SCL/SDA)

Fiação do Receptor:

  • Pino de controle do relé (ou buzina) conectado aGPIO4

  • Módulo de relé de 5V alimentado através do 5V e GND da placa

Controle uma carga usando LoRa

Diagrama de ligação mostrando o receptor LoRa32 com relé e carga.

Helte_Wifi_LoRA_buzzer

Diagrama de fiação mostrando o buzzer LoRa32.

Explicação do Código TX Seguro

Em ambos os esboços do TX, a criptografia é ativada usando osetSecurityKey()método da biblioteca Robojax. Por exemplo:

const char *userKey = "hyhT676#h~_876s";
robojaxDevice.setSecurityKey(userKey);

EmRelay_Secure_TX_Simple.ino, um sinal ALTO no GPIO0 envia "ON", enquanto um sinal BAIXO envia "OFF":

if(digitalRead(0) == HIGH){
  robojaxDevice.sendSecureMessage("ON");
} else {
  robojaxDevice.sendSecureMessage("OFF");
}

EmRelay_Secure_TX_Toggle.inocada pressão do botão alterna entre LIGADO e DESLIGADO:

if(buttonPressed){
  status = !status;
  String message = status ? "ON" : "OFF";
  robojaxDevice.sendSecureMessage(message);
}

Explicação do Código Secure RX

O esboço do receptor usa a mesma chave de criptografia e escuta por mensagens seguras:

robojaxDevice.setSecurityKey("hyhT676#h~_876s");
String message = robojaxDevice.receiveSecureMessage();

Então controla o GPIO4 de acordo.

if(message == "ON"){
  digitalWrite(RELAY_CONTROL_PIN, HIGH);
} else if(message == "OFF"){
  digitalWrite(RELAY_CONTROL_PIN, LOW);
}

O display OLED mostra o estado recebido e o rótulo "RX".

Índice do Capítulo

  1. Introdução ao Projeto e Demonstração de Alcance

  2. Casos de Uso: Ventilador, Aquecedor, Portão, Luz

  3. [00:20] Hardware Utilizado

  4. [00:40] Visão Geral da Fiação

  5. [01:00] Instalando a Biblioteca Robojax

  6. [01:20] Código TX (Versão Simples)

  7. [01:40] Código TX (Alternar Versão)

  8. [02:00] Explicação do Código RX

  9. [02:20] Demonstração Ao Vivo

Este tutorial oferece uma maneira robusta e segura de controlar dispositivos sem fio a longas distâncias. Todo o código e a biblioteca necessária estão disponíveis abaixo deste artigo. Assista ao vídeo completo para acompanhar!

Imagens

Heltec_WiFi_LoRa_32_V3_N35-1-package
Heltec_WiFi_LoRa_32_V3_N35-1-package
Nenhum código anexado.

Common Course Files

Arquivos📁

Outros arquivos