Inicio Artículos Creando un sensor LoRaWAN sin batería

Creando un sensor LoRaWAN sin batería

lorawan
Figura 1: Sistema de prototipo de sensor LoRa

Ahora estamos desarrollando la próxima generación de sensores de IoT, proporcionando dispositivos con inteligencia local para medir una amplia gama de diferentes parámetros físicos, procesar estos datos localmente y compartir los datos en la nube. También se nos pide que aumentemos el rendimiento de estos sensores, ya que deberían ser capaces de procesar y compartir cada vez más información de varios sensores, consumiendo la menor cantidad de energía posible. A estos dispositivos realmente se les pide que trabajen horas extras mientras consumen menos. Ahora hay mucha discusión sobre cómo lograremos esto y cómo impulsaremos estos productos en el futuro. Hoy en día, muchos confían en la tecnología de baterías químicas para proporcionar la energía necesaria y se plantean preguntas sobre si esta es la mejor forma de alimentar los sensores de IoT en el futuro.

El uso de baterías hoy en día es cada vez más difícil. Una legislación como la Directiva europea sobre baterías nos hace responsables no solo de la batería durante su uso, sino también de su eliminación al final de su vida útil, lo que a menudo agrega costos y complejidad a la eliminación de un producto. Los materiales utilizados por las propias baterías también están siendo objeto de un mayor escrutinio. ¿Cuál es la procedencia de los materiales utilizados? ¿De dónde vienen? ¿Han sido provistos de una fuente ética? ¿Son sostenibles? Todas estas son preguntas para las que debemos encontrar respuestas, especialmente con la demanda de material de batería que se prevé que aumente masivamente en los próximos años debido a la demanda de vehículos eléctricos. Otros problemas, como el factor de forma o incluso el peso de las baterías requeridas, también se volverán más prominentes, impulsados ​​por aplicaciones como dispositivos portátiles y sensores médicos.

A menudo también hemos tenido otros requisitos. Muchas aplicaciones requieren una vida útil del producto más prolongada que la que se puede lograr con las tecnologías de batería tradicionales, lo que da como resultado una mayor demanda de tecnologías de batería más esotéricas y caras, como las baterías de cloruro de tionilo de litio. Estos pueden ofrecer una vida útil de hasta 10 años o más en algunas aplicaciones, pero con un costo, tanto para el medio ambiente como para el producto.

Una aplicación como una estructura de sensores de monitorización puede integrarse en un puente o edificio durante muchos años, y puede ser difícil y costoso proporcionar acceso al sensor para reemplazar o recargar una batería. El costo de detener el tráfico en un puente, solo para reemplazar las baterías en un sensor, sería prohibitivo, por lo que para muchas aplicaciones es una buena idea encontrar otra fuente de energía.

Aprovechar la energía para alimentar sensores de la energía presente en el medio ambiente ayuda a solucionar muchos de estos problemas, brindando la posibilidad de recargar o incluso eliminar la necesidad de baterías y aplicaciones de soporte que pueden funcionar casi indefinidamente sin intervención externa.

Este artículo discutirá el desarrollo de un sensor de IoT simple sin batería, que mide la temperatura y la humedad y comparte los datos en la nube a través de una radio LoRaWAN®. Esta aplicación se ejecutará en un microcontrolador de baja potencia, que se puede alimentar desde una pequeña celda solar, almacenar la energía de la celda solar en un supercondensador y controlar la energía en esta celda solar para administrar el suministro de energía al sensor y a la radio LoRaWAN®, optimizando así la eficiencia energética de la aplicación.

El primer componente que elegimos es el microcontrolador. Como cerebro del sistema, no solo debe administrar el funcionamiento del sistema y todos los requisitos de procesamiento del sistema, sino que debe hacerlo con la energía disponible. La familia de microcontroladores Renesas RE01 ha sido desarrollada para hacer exactamente esto. Implementado en un proceso único de energía ultra baja, es capaz de operar a alta velocidad y bajo voltaje mientras consume muy poca energía.

El RE01 consume menos de 25 µA / MHz en modo activo y solo 100 nA en modo “Deep S leep”. El RE01 tiene una arquitectura de fuente de alimentación única con múltiples dominios de alimentación internos y externos, capaz de trabajar hasta 64 MHz y hasta 1,62v. El dispositivo también viene con una amplia gama de periféricos en chip de baja potencia, incluido un convertidor analógico a digital de 14 bits de potencia ultra baja que puede muestrear datos mientras que todo el chip consume menos de 4 µA.

El RE01 también tiene un controlador de recolección de energía único que permite que el dispositivo funcione con corrientes de arranque de solo unos pocos µA y brinda soporte para la gestión de supercondensadores y baterías recargables externas. El RE01 puede utilizar una fuente de alimentación regulada interna de baja caída en el chip para suministrar energía internamente; o para ahorrar energía, puede desactivar su suministro interno y utilizar un convertidor CC-CC externo mucho más eficiente para reducir el consumo de energía. En el caso de la placa de evaluación, el diseño de la fuente de alimentación externa que utiliza Renesas ISL9213 puede reducir el consumo de energía en casi un 50%. Estas funciones hacen de este dispositivo la solución ideal para construir una aplicación de recolección de energía.

Construiremos esta aplicación alrededor de la placa de evaluación RE01-256K, que incluye varios conectores de hardware, como una interfaz Arduino Uno que permite la creación de prototipos de esta aplicación fácilmente. Esta placa también viene con una placa de expansión LCD de gráficos Memory in Pixel (MiP) que incluye una pantalla MIP TN0181ANVNANN, lo que nos permite la capacidad de proporcionar una indicación visual del estado mientras consume una corriente de menos de 1µA en promedio. La placa también está diseñada para admitir la recolección de energía, ya que también viene con una celda solar amorfa Panasonic AM-1815CA que se puede conectar directamente al controlador de recolección de energía en el chip RE01. El AM-1815CA proporciona una compensación ideal, proporcionando suficiente energía para operar el sensor de manera confiable sin ser tan grande como para aumentar la huella del sensor.

Hemos elegido el sensor de temperatura y humedad relativa de alto rendimiento Renesas HS3001. Se trata de un sensor de temperatura y humedad relativa totalmente calibrado y de alta precisión con un tiempo de respuesta de medición rápido, estabilidad a largo plazo y, lo que es más importante, consume tan solo 1,0 µA durante el funcionamiento. El HS3001 viene en un paquete LGA de 6 pines extremadamente pequeño y también está disponible una pequeña placa de evaluación, lo que lo hace ideal para esta aplicación.

Una lógica integrada de compensación de temperatura y calibración proporciona valores relativos y de temperatura completamente corregidos a través de una interfaz I²C estándar. Los datos medidos se corrigen y compensan internamente para un funcionamiento preciso en una amplia gama de niveles de temperatura y humedad sin necesidad de calibración por parte del usuario.

Hemos seleccionado el supercondensador AVX (número de pieza SCMQ14C474PRBA0) que se puede añadir fácilmente a la placa de evaluación RE01-256K para proporcionar el elemento de almacenamiento de energía, el supercondensador AVX.

lorawan gateway
Figura 2: arquitectura del sensor

El último componente principal que hemos elegido es el transceptor LoRaWAN® sub-GHz SX1261. El SX1261 es adecuado para el mercado europeo, pero se puede reemplazar fácilmente con el SX1262, optimizado para otros mercados, como EE. UU. En este diseño, para facilitar el desarrollo, utilizaremos una placa Arduino basado en SX1261 que se puede montar fácilmente en la placa de evaluación RE01-256K, pero los usuarios pueden reemplazarlo fácilmente con un módulo LoRa en el dispositivo SX1261.

Una arquitectura de red LoRaWAN® se configura como una topología de estrella de estrellas, en la que se utiliza una puerta de enlace LoRaWAN® para enviar mensajes entre los dispositivos finales y un servidor de red central. La puerta de enlace actúa como un puente transparente que convierte los paquetes LoRaWAN® en paquetes IP y viceversa para proporcionar una conexión robusta y fácil de configurar al servidor central.

En este diseño, diseñaremos nuestro sensor sin batería para que se comporte como un dispositivo LoRaWAN® Clase A simple. Los dispositivos finales LoRaWAN® como nuestro sensor generalmente se clasifican en 3 clases diferentes: Clase A, Clase B y Clase C, donde cada una de estas clases de dispositivos aborda diferentes requisitos de aplicación.

Los dispositivos de clase A son la clase predeterminada y las funciones siempre deben ser compatibles con todos los dispositivos finales LoRaWAN®. También son la clase de dispositivo que consume menos energía. En un dispositivo de clase A, la comunicación siempre la inicia el sensor y es bidireccional y totalmente asíncrona. El sensor puede iniciar una transmisión de enlace ascendente en cualquier momento y va seguida de dos ventanas de enlace descendente cortas, RX1 y RX2, como se muestra en la Figura 3. La sincronización de las ventanas de enlace descendente puede ser controlada tanto por el sensor como por el servidor LoRaWAN®.

dispositivo lorawan
Figura 3: Tiempo de TX y RX en un dispositivo LoRaWAN® Clase A

Los dispositivos de clase A pueden entrar en un modo de bajo consumo bajo control de la aplicación y no existe ningún requisito en la red para una comunicación regular. Esta es la razón por la que la Clase A es normalmente la mejor clase para seleccionar cuando se requiere un funcionamiento con bajo consumo de energía. En este caso es ideal para nuestra aplicación de sensores ya que solo requerimos una comunicación ocasional para actualizar nuestros datos en la nube.

Los dispositivos de clase B agregan ventanas de recepción a la especificación de clase A. Los dispositivos de clase B se sincronizan con la red mediante balizas periódicas y «ranuras de ping» de enlace descendente abiertas en horarios programados. Esto proporciona a la red la capacidad de enviar comunicaciones de enlace descendente con una latencia determinista, pero a expensas de un consumo de energía adicional en el dispositivo final.

Los dispositivos de clase C reducen la latencia en el enlace descendente al mantener abierto el receptor del dispositivo final cuando el dispositivo no está transmitiendo (semidúplex). En base a esto, el servidor de red puede iniciar una transmisión de enlace descendente en cualquier momento asumiendo que el receptor del dispositivo final está abierto, por lo que no hay latencia. Esto significa que la clase C solo es adecuada para aplicaciones en las que se dispone de energía continua.

Para esta aplicación, crearemos una prueba de concepto para el sensor montando la placa Arduino Semtech LoRaWAN® en la placa de evaluación RE01-256K para crear el conjunto del sensor como se muestra en la Figura 4.

placa de evaluacion lorawan
Figura 4: Placa de evaluación RE01-256K con la placa Arduino SX1261 LoRaWAN® y la placa de visualización MiPs

Podemos agregar el supercondensador AVX a la placa de evaluación, agregar el sensor de temperatura y humedad HS3001 y conectar la pantalla MiPs usando el conector Pmod para darnos un método para mostrar localmente el estado de la aplicación. Esto nos da un sensor completo y solo necesitamos agregar el software de aplicación.

software del sensor lorawan
Figura 5: Arquitectura del software del sensor

La arquitectura de software de la aplicación necesaria para ejecutar el sensor se muestra en la Figura 5. Esta aplicación está construida sobre los controladores CMSIS del microcontrolador RE, que proporcionan una capa de abstracción de hardware fácil de usar construida sobre el hardware del chip RE01. Estos controladores nos permiten controlar fácilmente las diversas funciones periféricas del chip sin necesidad de un conocimiento detallado de cómo funciona el chip.

También hemos desarrollado una capa de interfaz entre estos controladores y el controlador SX1261 y la pila de protocolos LoRaWAN® proporcionada por Semtech. Nuestra sencilla aplicación de sensor se basa en todos estos componentes.

diagrama de flujo del sensor
Figura 6: diagrama de flujo del software del sensor

La Figura 6 muestra la rutina principal de la aplicación del sensor documentada en el diagrama de flujo. La aplicación principal se iniciará una vez que el controlador de recolección de energía haya detectado que tenemos suficiente energía en el supercondensador para ejecutar la rutina principal y proporcionar suficiente energía para operar los sensores y la radio.

Para minimizar el consumo de energía, copiamos parte de la aplicación principal de Flash a SRAM e inicializamos un temporizador de bajo consumo para generar una interrupción en 30 segundos para crear el tiempo de ciclo del sistema. Luego inicializamos todos los sistemas de control de potencia, incluido el convertidor CC-CC y los circuitos de detección de bajo voltaje. A continuación, configuramos la pantalla de MiP para que muestre una pantalla de logotipo. Luego inicializamos la radio LoRaWAN® y verificamos el voltaje en la supercapa. Si es demasiado bajo, ingresamos a un modo de batería baja para permitir que se recupere el nivel de voltaje.

Luego, la aplicación se une a la red LoRaWAN®, lee los datos del sensor, actualiza la pantalla de MiP y envía los datos a través de la radio LoRaWAN®. Finalmente, cerramos la aplicación de forma segura y entramos en modo de espera hasta que el temporizador de 30 segundos despierta la aplicación y reiniciamos la aplicación para el siguiente ciclo.

La Figura 7 muestra el perfil de consumo de energía típico para esta aplicación de sensor con un tiempo de ciclo de 30 segundos. Con este tiempo de ciclo, la aplicación tiene un consumo de energía promedio de alrededor de 400 µA.

consumo de energia
Figura 7: Consumo de energía de la aplicación durante el funcionamiento

Para muchas aplicaciones, no es necesario compartir los datos con tanta regularidad. Por ejemplo, la temperatura y la humedad rara vez cambian tan rápidamente. Como la radio usa la mayor parte de la energía en esta aplicación, aumentar el tiempo de ciclo en el que opera la aplicación puede disminuir significativamente el consumo de corriente promedio.

El proyecto de software completo para esta aplicación se puede descargar desde el sitio web de Renesas.

El desarrollo de esta aplicación ha demostrado que es posible construir una aplicación de sensor de IoT completa que puede ser alimentada de manera segura por una pequeña celda solar, sin la necesidad de una batería. Dependiendo de las condiciones de iluminación en las que se utilice la aplicación, es posible medir la temperatura y la humedad una vez cada 1 o 2 minutos, enviar los datos al Gateway LoRaWAN® y compartir los datos en la nube.

También es posible utilizar la misma estructura básica de hardware y software de aplicación y reemplazar el supercondensador por una batería recargable si se requiere un conjunto diferente de características de rendimiento. El uso de placas de evaluación fácilmente disponibles y una pila de software simple y disponible en descarga facilitan la prueba de esta arquitectura y comienzan a desarrollar un sensor sin batería.

En la nota de la aplicación mencionada en la lista de documentos de referencia se encuentra disponible una descripción completa de cómo construir esta aplicación, incluidos los detalles de los diversos componentes utilizados, cómo acceder a los componentes de software, usar el Gateway LoRaWAN® y conectar la aplicación a la nube.