Sensor de humedad del suelo LoraWAN - Makerfabs

Sensor de humedad del suelo LoraWAN - Makerfabs

noviembre 21, 2022

Lorawan-Suelo-Humedad-Sensor-1
A medida que más y más clientes están interesados en LoRaWAN, decido hacer un sensor de humedad del suelo LoRaWAN.

1. Descripción del proyecto.

MakerfabsSensor de humedad LoRaha sido popular vendido y utilizado en la comunidad de hardware abierto, pero a veces recibimos preguntas de los clientes: ¿Cómo puedo usar su sensor con TTN / Helio? Cada vez que recibimos estas preguntas, solo podemos retroalimentarnos: Er, hay alguna dificultad ...

LoRa y LoRaWAN en realidad se adaptan a aplicaciones absolutamente diferentes:
Capas físicas y de comunicación de Lorawan
  • Lora, en su mayoría significa comunicación local simple punto a punto, se necesitan emisor y receptor, actúa más comoCapa físicaen OSI, que el emisor envía la señal mientras que el receptor la recibe. LoRa se adapta a aplicaciones que necesitan comunicación punto a punto local de baja velocidad, que van hasta unos pocos kilómetros.
  • LoRaWANactúa como elCapa de reden OSI. Se utiliza principalmente en la red que necesita acceder a Internet. LoRaWAN actúa como una red WIFI local, que se ocupa de toda la coordinación / direccionamiento / trato de excepción, etc. Al igual que WIFI, se necesita un enrutador en la red, que se ocupe de estas tareas y la adhesión a Internet. La diferencia es que, beneficios del mayor alcance de LoRaWAN, hay algunos enrutadores LoRaWAN públicos, que es posible que no necesite instalar su enrutador usted mismo. Solo piense que está usando el enrutador WIFI en su vecindario o un teléfono que se registra en una estación.

Makerfabs el sensor de humedad LoRa es un módulo LoRa, el controlador Atmega328P controla el módulo LoRa SX127X, con SPI, para transmitir la humedad del suelo y la temperatura y humedad del aire cada 1 hora, cualquier receptor LoRa en el rango puede obtener la información y, por lo tanto, decidir si lidiar o no con ella. No tiene conexión a Internet. Por supuesto, algunos usuarios programan el controlador Atmega328P para ejecutar el protocolo LoRaWAN, con un router LoRaWAN, para conectarse a TTN o Helium y conseguir éxito, como estos siguientes proyectos:

● //twitter.com/hexaspot/status/1593216730566123520
Lora-Suelo-Humedad-Sensor-Proyecto-1



● //community.home-assistant.io/t/makerfabs-soil-moisture-sensor-v3-LoRaWAN-ttn-v3-and-ha-integration/446021
Lora-Suelo-Humedad-Sensor-Proyecto-2

Pero esto necesita que el usuario tenga una alta habilidad de codificación, y a veces hay algunas excepciones como Atmega328 limita los recursos.

Con más clientes interesados en LoRaWAN, decido hacer un sensor de humedad del suelo LoRaWAN.

2. Soluciones LoraWAN actuales.

Hay principalmente 2 estructuras para proyectos LoRaWAN:
● Controlador STM32 + SX126X

En esta estructura, el STM32 ejecuta el protocolo LoRaWAN y también se ocupa de la aplicación presentada, como el Seeed LoraE5.
Seeed-LoraE5

Es barato y eficiente. Los usuarios pueden ejecutar aplicaciones archivadas en el STM32 (que también ejecuta el protocolo LoRaWAN), pero la desventaja es que los usuarios deberán rehacer todos los códigos, los códigos de las aplicaciones de campo, como la interacción del sensor y los códigos del protocolo LoRaWAN, cada vez que se actualice la aplicación archivada. Además, es difícil de traducir a otras plataformas, solo se puede pegar a la plataforma STM32;

● Controlador separado + módulos LoRaWAN

En esta estructura, se utilizó un módulo LoRaWAN separado para ejecutar / tratar con el protocolo LoRaWAN, por lo que los usuarios finales no necesitan considerar ninguna codificación relacionada con LoRaWAN, solo controlan el módulo LoRaWAN mediante comandos AT, el controlador separado se puede usar solo para ejecutar las aplicaciones archivadas de los clientes.
Solución
Ventajas
Desventajas
Controlador STM32+ SX126X
Rentable
Los códigos de aplicación archivados y los códigos LoRaWAN se ejecutan simultáneamente. Difícil para la codificación y el trasplante
Controlador separado + módulo LoRaWAN
1. Los códigos archivados y los códigos de protocolo LoRaWAN se separarán;
2. Fácil de trasplantar en múltiples controladores
Se necesita un controlador adicional

Finalmente, decidí usar la 2ª estructura.
* El Seeed Lora E5 también tiene firmware incorporado con comandos AT, que también se puede usar como un módulo LoRaWAN en la 2ª estructura.

3. Sensor de humedad del suelo LoraWAN

Como módulo LoRaWAN, selecciono el AiThink RA08H, como los módulos LoRaWAN se conectan al controlador principal a través de comandos UART y AT, en realidad es fácil actualizar a otros módulos de otros proveedores.

En cuanto a la selección del controlador principal, consideré los siguientes candidatos:
● Atmega328P:Popular utilizado controlador de 8 bits, compatible con Arduino Uno. Pero el mayor problema es su precio... Es de hasta $ 5 en la escasez de IC;

● SAMD21: El controlador utilizado en Arduino zero y nuestroMódulos Maduino Zero, USB incorporado;
● RP2040:Un controlador relativamente nuevo de Raspberry Pi. Caliente recientemente ...

Para que esté caliente, seleccioné elRP2040... er, lo que demuestra que tal vez no sea una buena opción finalmente.

En 2 semanas, hice el hardware:
Lorawan-suelo-humedad-sensor-diagrama
  • El controlador central es RP2040, por supuesto, con flash adicional de 128M, genera el PWM y, por lo tanto, detecta la humedad del suelo a través del método capacitivo;
  • También detecta la temperatura y humedad del aire a través de un sensor AHT10;
  • Se utilizan 3 baterías AAA para generar voltaje de 4.5V, para garantizar que el ADC sea estable, aunque 2 baterías AAA, 3V, en realidad está bien, pero como probé en el sensor de humedad LoRa, el resultado del ADC disminuye a medida que cae el voltaje principal, por lo que hacer que el VCC a 3.3V sea estable ayuda a que el ADC sea estable.

Tengo un enrutador LoRaWAN en nuestra oficina, el Dragino_LIG16, creé un LoRaWAN simple para acceder a Internet rápidamente.
Lorawan-Suelo-Humedad-Sensor-Prueba

1.Los datos locales de humedad y aire se cargan en LoRaWAN TTN (la red de cosas)
Datos del sensor en LoRaWAN-TTN

2.Además, el TTN admite la transmisión de los datos a Thingspeak para la verificación visual:
Sensor-Data-on-Thingspeak
*Para obtener más información sobre la configuración TTN / thingspeask, consulte:

4. Consumo de energía del sensor de humedad del suelo LoraWAN

El hardware / software total parece funcionar muy bien, pero luego encontré un problema:Consumo de energía.

Una ventaja principal de LoRaWAN es su bajo consumo de energía, la corriente del sensor de humedad LoRa de Makerfabs es de unos pocos uA (7.1uA en modo de suspensión), es decir, con las baterías 2 * AAA, puede funcionar durante al menos un año (teóricamente). Pero cuando intento comprobar el consumo de energía del RP2040, me parece un problema:


● En Arduino y MicroPython, no obtengo mucho soporte en la configuración del modo de suspensión, hay pequeños archivos, sin mencionar las librerías, sobre el ahorro de energía RP2040. Encontré que tomjorquera hizo elAjuste de bajo consumo PICO, pero es impulsado por una interrupción externa, no se puede restablecer desde el modo de suspensión mediante el reloj interno. Además, demuestra que la corriente RP2040 alta incluso en modo inactivo:
Consumo de energía

● Luego, tengo que transmitir a Pico C / C ++ SDK, la herramienta de desarrollo RP2040 original lanzada por el equipo de Raspberry Pi:

Pico-C-C++-SDK

Pero aún así, encontré el modo de suspensión de RP2040 hasta 1.03 mA, es decir, teóricamente, con 3 baterías AAA, el tiempo de trabajo es inferior a un mes, incluso con RP2040 desnudo ... Esto no es bueno para un sensor LoRaWAN.

Por cierto, como no hay libs para módulos externos, igual que en MicroPython & Arduino, para la interacción PWM generating/AHT10, tengo que escribirlos nosotros mismos en Pico C / C ++ SDK, lo que lleva mucho tiempo.

Para 2022/11/18, todavía no obtengo un mejor resultado. Personalmente, creo que tal vez el RP2040 no sea una buena opción que necesite menor potencia y falta de soporte en Arduino & MicorPython.

Estoy considerando volver a Atmega328P, con el que estoy mucho más familiarizado y el actual menos de 1 uA (modo de suspensión), el 0,1% de eso para RP2040. La buena noticia es que, su precio es de aproximadamente $ 2 ahora, y tal vez incluso más bajo en el futuro cercano, ya que la escasez de IC termina.

Manténgase atento...

Mira este video:

Si tiene más preguntas sobre el sensor de humedad del suelo LoraWAN, no dude en ponerse en contacto conservice@makerfabs.com.guiño

Contáctenos