Tabla de contenido:

Internet de las cosas: estación meteorológica LoRa: 7 pasos (con imágenes)
Internet de las cosas: estación meteorológica LoRa: 7 pasos (con imágenes)
Anonim
Internet de las cosas: estación meteorológica LoRa
Internet de las cosas: estación meteorológica LoRa
Internet de las cosas: estación meteorológica LoRa
Internet de las cosas: estación meteorológica LoRa
Internet de las cosas: estación meteorológica LoRa
Internet de las cosas: estación meteorológica LoRa

Este es un ejemplo de un buen proyecto de LoRa. La estación meteorológica contiene un sensor de temperatura, un sensor de presión de aire y un sensor de humedad. Los datos se leen y se envían a Cayenne Mydevices y Weather Underground utilizando LoRa y The Things Network.

¡Compruebe si hay LoRa Gateway de The Things Network en su área!

Paso 1: el hardware

El hardware
El hardware
El hardware
El hardware
El hardware
El hardware
El hardware
El hardware

Para este proyecto utilicé el siguiente hardware:

  • Arduino Pro Mini 328 - 3.3V / 8MHz (https://www.sparkfun.com/products/11114)
  • RFM95W (https://www.hoperf.com/rf_transceiver/lora/RFM95W.html) (https://www.aliexpress.com/item/RFM95W-20dBm-100mW-868Mhz-915Mhz-DSSS-spread-spectrum-wireless -módulo-transceptor-SPI-SMD / 32799536710.html)
  • DHT22 (https://www.aliexpress.com/item/High-Precision-AM2302-DHT22-Digital-Temperature-Humidity-Sensor-Module-For-arduino-Uno-R3/32759158558.html)
  • BME280 (https://www.aliexpress.com/item/I2C-SPI-BMP280-3-3-BMP280-3-3-Digital-Barometric-Pressure-Altitude-Sensor-High-Precision-Atmospheric/32775855945.html)

Costos totales menos de 10 dólares.

Paso 2: el cableado

El cableado
El cableado
El cableado
El cableado
El cableado
El cableado

Es aconsejable probar primero los sensores en una placa de pruebas. Entonces puede estar seguro de que los sensores funcionan. También puede medir el consumo de energía con un multímetro. (Utilice la biblioteca de bajo consumo para medir el mínimo)

Primero suelde los cables al módulo RFM95W y luego suéldelos al Arduino Pro Mini. Luego agregue los sensores. ¡Vea las imágenes y el diagrama!

Paso 3: la carcasa

La carcasa
La carcasa
La carcasa
La carcasa
La carcasa
La carcasa
La carcasa
La carcasa

Para colocar la estación meteorológica en algún lugar, dibujé un estuche y lo imprimí con la impresora 3D.

Los modelos se pueden encontrar en Thingiverse. Por supuesto, por supuesto, puede hacer su propia variante.

Paso 4: el software

El software
El software

El código que he usado se puede encontrar en GitHub:

Usé Atom con PlatformIO para realizar este proyecto, por lo que este es un proyecto de PlatformIO. Usé las siguientes bibliotecas:

  • LoraMAC-in-C para Arduino gracias a Thomas Telkamp y Matthijs Kooijman (https://github.com/matthijskooijman/arduino-lmic)
  • CayenneLPP de la biblioteca Arduino de The Things Network (https://github.com/TheThingsNetwork/arduino-device-lib)
  • Biblioteca de sensores unificados de humedad y temperatura Adafruit DHT (https://github.com/adafruit/DHT-sensor-library)
  • Low-Power: biblioteca ligera de bajo consumo para Arduino (https://github.com/adafruit/DHT-sensor-library)

Paso 5: Cayenne MyDevices

Cayenne MyDevices
Cayenne MyDevices

Puede integrar su aplicación en The Things Network con Cayenne myDevices

Para agregar la integración:

  • Vaya a la consola de la aplicación en el sitio web de The Things Network;
  • Seleccione integraciones en el menú superior derecho;
  • Seleccione Cayenne;
  • Sigue las instrucciones

Paso 6: Clima subterráneo

Clima subterráneo
Clima subterráneo

Para enviar datos a Weather underground, cree una integración HTTP. Los datos se enviarán a la URL con un POST o un GET. El siguiente script captura los datos y los envía a Weather Underground. Registre su propia estación meteorológica personal en

<? php

? php echo time ();

file_put_contents ('json / post'.time ().'. json ', file_get_contents (' php: // entrada '));

$ json = file_get_contents ('php: // entrada'); $ datos = json_decode ($ json);

// saca los datos del json

$ temperature_1 = $ data-> payload_fields-> temperature_1; $ presión_barométrica_2 = $ datos-> campos de carga útil-> presión_barométrica_2; $ humedad_relativa_3 = $ datos-> campos_de_carga útil-> humedad_relativa_3;

// tempc a tempf

$ tempf = ($ temperatura_1 * 9/5) + 32;

// presión

$ presión = $ presión_barométrica_2 / 33.863886666667;

if (isset ($ presión) &&! empty ($ pressure) && isset ($ tempf) &&! empty ($ tempf) && isset ($ relativa_humidity_3) &&! empty ($ relativa_humidity_3)) {file_get_contents ("https:// rtupdate.wunderground.com / weatherstation / updateweatherstation.php? ID = XXXXXXX & PASSWORD = XXXXXXXX & dateutc = ahora & tempf = ". $ tempf." & humedad = ". $ relativa_humedad_3." & baromin = ". $ presión);

}

?>

?>

Paso 7: disfrute de su estación meteorológica

Disfrute de su estación meteorológica
Disfrute de su estación meteorológica
Disfrute de su estación meteorológica
Disfrute de su estación meteorológica

Disfrute de su estación meteorológica

En Cayenne myDevices puede compartir un panel de proyectos. ¡Comparte el tuyo en los comentarios!

Esto es mío:

Recomendado: