¿Cuáles son los fundamentos de programación para los nodos LoRa?

La tecnología LoRa (de largo alcance) garantiza una comunicación confiable de largo alcance entre un nodo y una puerta de enlace, lo que la hace adecuada para una variedad de aplicaciones de Internet de las cosas (IoT). El propósito de construir un nodo LoRa es reducir costos y al mismo tiempo garantizar un uso a largo plazo y un bajo consumo de energía para los dispositivos. El bajo consumo de energía de LoRa se ve afectado por varias características, que se describen a continuación.

Figura 1. Arquitectura LoRa básica.

Características
Programación inteligente. El código escrito debe ser "inteligente" y garantizar un sueño profundo cuando no esté en uso. Por ejemplo, la parte de la red de los sensores de detección de incendios forestales permanece en modo de espera si no se detecta ningún incendio a nivel del sensor. Esto es para optimizar la energía cuando sea necesario. Este enfoque garantiza que la funcionalidad de la red que consume mucha energía se active solo cuando sea necesario, conservando energía cuando los sensores no detectan un incendio.

Selección de batería. La batería es crítica, especialmente si el nodo se implementa durante años. Si es así, la corriente de autodescarga de la batería debe permanecer muy baja. Una batería ideal tendrá una tasa de autodescarga baja, especialmente para dispositivos de bajo consumo. De lo contrario, la batería perderá su carga con el tiempo, independientemente de su capacidad calculada, y dejará de funcionar. Las baterías como LiSoCl2 suelen ser favorables.

Figura 2. La batería LiSoCL2 de 3,6 V.

Selecciones de componentes. Aunque LoRa es de bajo consumo, eso no significa que todos los componentes también sean de bajo consumo. Por ejemplo, un sensor de medición de distancia ultrasónico requiere mucha energía, por lo que esto debería ser parte de la consideración del componente.

Al elegir sensores, es fundamental priorizar una batería de larga duración seleccionando componentes que funcionen con bajo consumo, incluso cuando están en uso. La función de un sensor es notificar o activar un dispositivo que transmite datos a través de la red. Por lo tanto, todos los componentes utilizados con un sensor deben tener potencias nominales muy bajas. Esto garantiza que el sensor no consuma energía excesiva, lo que permite una mayor duración de la batería y un funcionamiento eficiente del dispositivo.

En este artículo, exploraremos los conceptos básicos de los nodos LoRa, así como su programación óptima y selecciones de hardware.

Figura 3. Prevención de incendios en edificios inteligentes basada en LoRa.

Clases de nodos
En LoRaWAN –el protocolo de red de área amplia de baja potencia (LPWAN) que funciona con modulación basada en LoRa– existen tres clases de nodos con diferentes capacidades en términos de su capacidad para recibir y transmitir datos:

  • Clase A
  • Clase B
  • Clase C

Nodos de clase A

La clase A es el tipo más simple y común de nodo LoRaWAN. Están diseñados para aplicaciones que requieren comunicación de enlace ascendente poco frecuente, como enviar datos de sensores, rastrear activos o monitorear las condiciones ambientales. Los nodos de clase A se caracterizan por su bajo consumo de energía y su modo de comunicación asimétrico, donde pueden recibir datos en cualquier momento, pero solo pueden transmitir datos inmediatamente después de recibirlos o en momentos programados específicos.

Figura 4. Un diagrama de bloques de transmisión entre un nodo Clase A y la puerta de enlace en modo de bajo consumo.

El protocolo de comunicación del nodo Clase A se basa en el principio de "escuchar antes de hablar", que garantiza que la transmisión no interfiera con ninguna otra transmisión de red en curso. Una vez que un nodo de Clase A transmite datos, ingresa en un modo de suspensión de bajo consumo de energía hasta la siguiente ranura de enlace ascendente.

Además, los nodos Clase A:

  • Son el tipo de nodo LoRaWAN más simple y energéticamente más eficiente.
  • Ayude a conservar la vida útil de la batería al permitir que el nodo funcione durante períodos prolongados sin necesidad de mantenimiento o reemplazo frecuentes.
  • Tienen capacidades limitadas de enlace descendente y sólo pueden recibir datos en respuesta a sus transmisiones de enlace ascendente.
  • Solo puede recibir una cantidad limitada de datos de enlace descendente de un único paquete de datos, transmitido por la puerta de enlace inmediatamente después de la transmisión del enlace ascendente.
  • Están diseñados para aplicaciones que requieren comunicaciones de enlace ascendente poco frecuentes y tienen capacidades de enlace descendente limitadas.
  • Son adecuados para aplicaciones donde la duración de la batería es crítica y las transmisiones de datos son poco frecuentes, lo que los hace ideales para su uso en entornos donde el mantenimiento o reemplazo frecuente no es factible.

Ejemplos de clase A

Los nodos Clase A son ideales para aplicaciones donde la duración de la batería es crítica y las transmisiones de datos son poco frecuentes. En la agricultura inteligente, los nodos de Clase A se pueden utilizar para monitorear los niveles de humedad del suelo y enviar datos a un servidor central periódicamente. En las aplicaciones de seguimiento de activos, los nodos de Clase A se pueden conectar a activos de alto valor y transmitir datos de ubicación periódicamente, lo que permite monitorear la ubicación de un activo a lo largo del tiempo.

Nodos de clase B

Los nodos de clase B son otro tipo de nodo LoRaWAN que ofrece más funciones que los nodos de clase A. Los nodos de clase B están diseñados para aplicaciones que requieren comunicación bidireccional con latencia garantizada. Estos nodos tienen ventanas de recepción periódicas sincronizadas con la baliza de red, lo que permite transmisiones de enlace descendente programadas desde la puerta de enlace al nodo. Esto significa que los nodos de Clase B pueden recibir datos de la red incluso cuando no están transmitiendo activamente.

Los nodos de clase B tienen ventanas de recepción adicionales que permiten la comunicación de enlace descendente con latencia garantizada, lo que los hace ideales para aplicaciones que requieren comunicación bidireccional.

Figura 5. Un diagrama de bloques de transmisión entre un nodo LoRa Clase B y la puerta de enlace.

Por ejemplo, en aplicaciones domésticas inteligentes, los nodos de Clase B pueden controlar los electrodomésticos de forma remota, donde un usuario envía un comando al dispositivo IoT a través de la red y el dispositivo responde en reconocimiento. Estos nodos también se pueden utilizar en sistemas de automatización de edificios para controlar y monitorear sistemas HVAC, iluminación y sistemas de seguridad.

Además, los nodos de Clase B:

  • Tienen un mayor consumo de energía que los nodos de Clase A y requieren comunicaciones por radio más frecuentes para mantener sincronizadas sus ventanas de recepción.
  • Tienen menor consumo de energía que los nodos de Clase C.
  • Tener ventanas de recepción periódicas sincronizadas con la baliza de red, permitiendo una latencia garantizada en la comunicación de enlace descendente.

Figura 6. Un medidor de agua AMR inalámbrico LoRa.

Ejemplos

Los nodos de clase B son ideales para aplicaciones que requieren comunicación bidireccional, como hogares inteligentes y sistemas de automatización de edificios. Ejemplos incluyen:

  • Medición inteligente: Lectura remota de contadores de servicios públicos, como electricidad, gas y agua.
  • Monitorización industrial: Monitorización de equipos y máquinas en entornos industriales para mantenimiento preventivo.
  • Automatización de edificios: Control y monitorización de iluminación, HVAC y sistemas de seguridad de edificios.

Nodos de clase C

Los Clase C son el tipo más avanzado de nodo LoRaWAN, diseñados para aplicaciones que requieren comunicación continua y en tiempo real. Tienen el mayor consumo de energía de todos los nodos LoRaWAN y proporcionan el más alto nivel de funcionalidad. Los nodos de clase C se caracterizan por su ventana de recepción continua, por lo tanto, siempre están “escuchando” los datos que llegan de la red. Como resultado, tienen la latencia más baja en comparación con los nodos de Clase A y Clase B.

Figura 7. Un diagrama de bloques de transmisión entre un nodo LoRa Clase C y la puerta de enlace.

Los nodos de clase C son ideales para aplicaciones de monitoreo y control en tiempo real, como sistemas de seguridad, gestión del tráfico y automatización industrial. Los Clase C proporcionan actualizaciones de estado en tiempo real en estas aplicaciones, lo que permite una rápida toma de decisiones y respuesta a condiciones cambiantes.

Por ejemplo, en los sistemas de gestión de tráfico, los nodos de Clase C pueden monitorear el flujo de tráfico y los dispositivos de control de señales para realizar ajustes en tiempo real basados ​​en los datos recibidos de los nodos.

Además, los nodos Clase C:

  • Tienen un mayor consumo de energía que los nodos Clase A y Clase B, ya que siempre están escuchando los datos recibidos de la red.
  • Pueden funcionar con una fuente de alimentación eléctrica, lo que los hace adecuados para aplicaciones donde la duración de la batería no es crítica.
  • Están diseñados para aplicaciones que requieren comunicación continua y en tiempo real.
  • Tienen la latencia más baja de todos los nodos LoRaWAN y son ideales para sistemas de seguridad, gestión de tráfico y aplicaciones de automatización industrial.

Figura 8. Un botón de pánico Monskart basado en LoRa.

Ejemplos

Los nodos de clase C tienen un mayor consumo de energía, lo que los hace confiables y siempre "encendidos". Esto significa que se pueden utilizar para servicios críticos como:

  • Servicios de Emergencia: Sistemas de seguimiento y comunicación en tiempo real para equipos y personal de emergencia.
  • Sistemas de seguridad: Sistemas de detección y vigilancia de intrusos para viviendas, oficinas y zonas públicas.
    Seguimiento de la vida silvestre: seguimiento del comportamiento y los movimientos de la vida silvestre en los esfuerzos de conservación.
    Monitoreo de Inundaciones: Detección temprana y monitoreo de niveles de agua en ríos, lagos y áreas propensas a inundaciones.

Figura 9. Un sistema de seguridad SEMTECH con LoRa.

El nodo personalizado

Aunque las clases están definidas en LoRa, eso no significa que esté restringido a usar solo una clase a la vez, con el hardware adecuado. Es posible escribir código para que un nodo funcione en modo C durante algún tiempo y luego cambiar a Clase A o B en otro momento, según la aplicación.

Ejemplo: seguimiento de mascotas
Imagínese desarrollar un rastreador de mascotas para su amado compañero. Lo habitual es pasear a tu mascota entre las 4 y las 5 de la tarde. Para optimizar la funcionalidad del dispositivo, puedes programarlo con las siguientes características:

Figura 10. Un dispositivo de seguimiento de mascotas de nodo personalizado.

Durante los períodos en los que no se camina (fuera de 16:00 a 17:00 horas):

    1. Configure el rastreador para que funcione en Clase A LoRa.
    2. La transmisión de datos se produce cada 10 minutos sin necesidad de confirmación ACK.

Este enfoque conserva energía durante intervalos regulares.

Durante el tiempo de caminata:

    1. Cambie el rastreador a LoRa Clase C.
    2. Dado que el tiempo es esencial y su mascota puede escaparse, el seguimiento en tiempo real es esencial.
    3. Transmita datos a una velocidad rápida de 500 milisegundos para garantizar un seguimiento preciso e inmediato.

Al adoptar este enfoque, la eficiencia energética del rastreador de mascotas se optimiza fuera del horario de caminata, pero responde entre las 4:00 p. m. y las 5:00 p. m. cuando camina con su mascota. Básicamente, el dispositivo funciona en modo de ahorro de energía la mayor parte del tiempo, pero cambia a un modo de seguimiento de alta frecuencia durante el período crítico de caminata.

Programación para bajo consumo de energía.

Programar en modo de bajo consumo significa optimizar el uso de periféricos y minimizar procesamientos innecesarios. Por ejemplo, utilizar interrupciones en lugar de sondeos continuos puede reducir el consumo de energía. Sin embargo, es importante considerar la fuente de alimentación y asegurarse de que esté completamente optimizada para el modo específico de bajo consumo que se utiliza. Esto puede implicar seleccionar una fuente de alimentación con una corriente de reposo baja o usar un regulador de voltaje con un voltaje de caída bajo.

La serialización de datos es otra consideración esencial. LoRaWAN utiliza un formato específico para la transmisión de datos, por lo que es importante comprender cómo serializar los datos en ese formato para la transmisión.

En artículos futuros, aprenderemos cómo codificar nodos LoRa y crear una aplicación que funcione.

contenido relacionado

Regresar al blog

Deja un comentario

Ten en cuenta que los comentarios deben aprobarse antes de que se publiquen.