Proyecto de relé remoto DIY: módulo Heltec LoRa 32 de 13 millas sin Wi-Fi/sin SIM

Esta lección es parte de: Introducción a WiFi LoRa

Proyecto de relé remoto DIY: módulo Heltec LoRa 32 de 13 millas sin Wi-Fi/sin SIM

Control Remoto LoRa de Larga Distancia con Heltec WiFi LoRa 32

Imagina poder controlar un ventilador, una luz, una bomba de agua o una alarma de seguridad desde más de 15 millas o 21 kilómetros de distancia, todo sin necesidad de una tarjeta SIM o pagar ninguna tarifa. Esto es posible utilizando tecnología LoRa (de Largo Alcance), y en esta guía, te mostraremos exactamente cómo construir un sistema así. Estaremos utilizando el potenteMódulo Heltec WiFi LoRa 32, convenientemente alojado dentro del resistenteCaso Meshnology N35que incluye una batería de 3000mAh para un funcionamiento duradero.

Este proyecto demostrará cómo configurar un transmisor y un receptor para controlar una carga de dos maneras diferentes: una función simple de encendido/apagado y una función de alternancia. Cubriremos el ensamblaje de hardware, el cableado, la configuración del código y te mostraremos una prueba de rango en un entorno real.


Componentes y Hardware

En el corazón de nuestro proyecto hay unos pocos componentes clave diseñados para trabajar juntos para lograr el máximo alcance y fiabilidad.

  • Heltec WiFi LoRa 32 V3:Este es un microcontrolador versátil que viene con un chip de comunicación LoRa integrado, así como capacidades de Wi-Fi y Bluetooth. Es totalmente programable como un Arduino, lo que nos permite leer entradas y controlar salidas.
  • Caja y Batería Meshnology N35:Este es un estuche duradero diseñado específicamente para el módulo Heltec. Al comprarse como un kit, incluye una batería de 3000mAh, que es esencial para la transmisión y recepción a largo plazo, especialmente en lugares remotos.
  • Antena de alta ganancia:Para lograr el mejor rango posible, utilizaremos una antena de alta ganancia, que mejora significativamente la fuerza de la señal en comparación con la antena de serie.
  • Relé o timbre:Para el receptor, puedes conectar un relé para controlar dispositivos de CA o CC de alta potencia, como ventiladores y luces, o un simple zumbador para aplicaciones de alarma.

Montaje de hardware

El ensamblaje de la unidad es un proceso sencillo, como se muestra en el video que comienza alrededor de05:56El kit N35 viene con el módulo Heltec, la batería de 3000mAh, la caja, una antena con un cable de extensión y conectores.

Los pasos principales implican colocar los botones en la carcasa, pasar el cable de la batería, conectar el cable de extensión de la antena al módulo, colocar el módulo dentro y conectar la batería. Luego, simplemente cierras la carcasa y aseguras el soporte de la antena en el exterior. Vale la pena mencionar que una versión anterior de la carcasa requería una pequeña modificación para ajustar el soporte de la antena, pero Meshnology ha solucionado este problema en lotes más nuevos.


Cableado para la carga del receptor

En el lado del receptor, conectarás tu dispositivo de salida. A continuación se presentan las instrucciones de cableado tanto para un relé como para un zumbador, según se detalla en el video en11:17.

Cableando un relé

Un relé actúa como un interruptor operado eléctricamente, lo que te permite controlar una carga de alta potencia.

  • El pin de señal del relé se conecta apin 4del módulo Heltec LoRa.
  • El pin de tierra del relé se conecta a unGNDpin en el módulo.
  • Importante:El pin VCC (potencia) del relé debe ser alimentado por unfuente de poder externa de 5VLa salida de 3.3V del módulo no puede manejar de manera confiable la corriente que consume el relé.
  • Debes crear unpunto en comúnconectando el suelo de la fuente de alimentación externa al suelo del módulo Heltec. Esto es crítico para el funcionamiento del circuito.
Helte_Wifi_LoRA 32

Cableando un Zumbador con un Transistor

Para una alarma de audio simple, puedes usar un zumbador. Para evitar extraer demasiado corriente del pin del microcontrolador, usamos un transistor NPN 2N2222 para hacerlo funcionar.

  • Conectarpin 4del módulo a una resistencia de 1kΩ. El otro extremo de la resistencia se conecta a labase(pin del medio) del transistor.
  • El transistor'semisor(el pasador izquierdo, con el lado plano hacia ti) se conecta aGND.
  • El transistor'srecuperador(el pin derecho) se conecta alnegativo (-)terminal del zumbador.
  • Elpositivo (+)el terminal del zumbador se conecta a el3.3Vpin en el módulo Heltec.
Helte_Wifi_LoRA 32 con zumbador

Configuración de la IDE de Arduino y la biblioteca

Antes de poder cargar el código, necesitas configurar el IDE de Arduino para trabajar con las placas Heltec. El proceso comienza en14:37en el video.

  1. Instalar placas ESP32:En el IDE de Arduino, ve al Administrador de placas y buscaESP32Instala el paquete de Espressif Systems.
  2. Agregar URL de la placa Heltec:Ve a Archivo > Preferencias. En "URLs adicionales del Gestor de Placas", agrega el enlace JSON para la serie Heltec ESP32. Este enlace se proporcionará en la página de recursos debajo del artículo.
  3. Instalar las placas Heltec ESP32:Regresa al Gestor de Tableros, buscaHeltec ESP32, y instala el paquete.
  4. Instalar bibliotecas requeridas:Ve al Administrador de Bibliotecas e instala lo siguiente:
    • Heltec ESP32 dev boards
    • Adafruit GFX Library(y haga clic en "Instalar todo" para sus dependencias)
  5. Instalar la biblioteca Robojax:Descargar el personalizadoRobojax Heltec LoRa 32biblioteca zip de la página de recursos. En el IDE de Arduino, ve a Esquema > Incluir Biblioteca > Añadir Biblioteca .ZIP y selecciona el archivo que descargaste.
  6. Selecciona la Junta:Finalmente, ve a Herramientas > Tablero y selecciona elHeltec WiFi LoRa 32 (V3).

Configuración del código explicada

Tenemos tres bocetos de código diferentes para este proyecto: uno para el transmisor simple de encendido/apagado, uno para el transmisor de alternancia y uno para el receptor. La biblioteca maneja las partes complejas, por lo que solo necesitas ajustar algunos ajustes en la parte superior de cada archivo. La explicación del código comienza en19:00en el video.

Transmisor (TX) - Configuraciones de Código Simple de Encendido/Apagado

Este código enciende el relé solo mientras se mantiene presionado el botón.

// Text to display on the OLED screen
const char *displayTexttitle = "Relay:";
const char *displayTextTX = "(TX)";
const char *displayTextRelayON = "ON";
const char *displayTextRelayOFF = "OFF";

// Security key and frequency (MUST MATCH RECEIVER)
const char *userKey = "6tfDs$wEq3!";
#define RF_FREQUENCY 915555000 

// Transmission power (2-21, higher is stronger)
#define TX_OUTPUT_POWER 14 

Transmisor (TX) - Alternar Configuración de Código

Este código alterna el estado del relé (de encendido a apagado, o de apagado a encendido) con cada pulsación del botón.

// Set to true for serial monitor debugging, false for normal use
bool debug = true; 
// The built-in user button pin is 0
#define PUSH_BUTTON_PIN 0  

// Text to display on the OLED screen
const char *displayTextTitle = "Relay:";
const char *displayTextTX = "(TX)";
const char *displayTextRelayToggleON = "TOG-ON";
const char *displayTextRelayToggleOFF = "TOG-OFF";

// Security key and frequency (MUST MATCH RECEIVER)
const char *userKey = "6tfDs$wEq3!"; 
#define RF_FREQUENCY 915555000 

// Transmission power (2-21)
#define TX_OUTPUT_POWER 2 

Configuraciones del Código del Receptor (RX)

Este código de receptor único funciona con los transmisores simples y de alternancia.

// The pin connected to the relay's signal input
#define RELAY_CONTROL_PIN 4

// Text to display on the OLED screen
const char *displayTextTitle = "Relay:"; 
const char *displayTextTX = "(RX)"; 
const char *displayTextRelayON = "ON"; 
const char *displayTextRelayOFF = "OFF"; 
const char *displayTextRelayToggleON = "TOG-ON"; 
const char *displayTextRelayToggleOFF = "TOG-OFF"; 

// Security key and frequency (MUST MATCH TRANSMITTER)
const char *userKey = "6tfDs$wEq3!";
#define RF_FREQUENCY 915555000 

Crucialmentе, theuserKeyyRF_FREQUENCYdebe ser idéntico tanto en el transmisor como en el receptor para que puedan comunicarse.


Demostración y prueba de alcance de 13 millas

El sistema funciona a la perfección en un entorno de laboratorio, con el relé o zumbador del receptor respondiendo instantáneamente a las pulsaciones del botón en el transmisor. Pero el verdadero poder de LoRa es su alcance.

Se realizó una prueba de largo alcance, como se puede ver desde25:03hacia adelante. El transmisor se configuró a un nivel de potencia de 20, equipado con una antena de alta ganancia, y se colocó en un trípode a unos 10 metros sobre el nivel del agua en la orilla de un lago para garantizar una línea de vista clara. Luego, el receptor fue llevado al otro lado del lago.

El resultado fue un éxito sorprendente. Se recibió una señal estable desde una distancia de13.04 millas, o 20.98 kilómetrosEsto demuestra que con la configuración adecuada, puedes controlar dispositivos de manera fiable a grandes distancias, lo que lo hace perfecto para aplicaciones como el monitoreo agrícola remoto, el control de puertas o un sistema de alarma contra robos de largo alcance.


Marcas de tiempo del video

  • 00:00- Introducción al Control a Largo Alcance
  • 02:42- ¿Qué es LoRa?
  • 03:20- Visión general de los componentes (Heltec, caja N35)
  • 05:56- Desempaquetado y Montaje de Hardware
  • 11:17- Explicación del cableado: Relé y Zumbador
  • 14:37- Configuración del IDE y la Biblioteca de Arduino
  • 19:00- Configuración del código explicada (TX y RX)
  • 25:03- Demostración y prueba de alcance de 13 millas
Sin código adjunto.

Common Course Files

Recursos y referencias

Archivos📁

Otros archivos