Inhoudsopgave:

Internet of Things: LoRa-weerstation: 7 stappen (met afbeeldingen)
Internet of Things: LoRa-weerstation: 7 stappen (met afbeeldingen)

Video: Internet of Things: LoRa-weerstation: 7 stappen (met afbeeldingen)

Video: Internet of Things: LoRa-weerstation: 7 stappen (met afbeeldingen)
Video: Бен Сандерс: Зачем выходить из дома? 2024, November
Anonim
Internet of Things: LoRa-weerstation
Internet of Things: LoRa-weerstation
Internet of Things: LoRa-weerstation
Internet of Things: LoRa-weerstation
Internet of Things: LoRa-weerstation
Internet of Things: LoRa-weerstation

Dit is een voorbeeld van een mooi LoRa-project. Het weerstation bevat een temperatuursensor, luchtdruksensor en vochtigheidssensor. De gegevens worden uitgelezen en verzonden naar Cayenne Mydevices en Weather Underground met behulp van LoRa en The Things Network.

Check of er LoRa Gateway van The Things Network bij jou in de buurt is!

Stap 1: De hardware

de hardware
de hardware
de hardware
de hardware
de hardware
de hardware
de hardware
de hardware

Voor dit project heb ik de volgende hardware gebruikt:

  • 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 -transceiver-module-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)

Totale kosten minder dan 10 dollar.

Stap 2: De bedrading

de bedrading
de bedrading
de bedrading
de bedrading
de bedrading
de bedrading

Het is verstandig om de sensoren eerst op een breadboard te testen. Zo weet je zeker dat de sensoren werken. Je kunt het stroomverbruik ook meten met een multimeter. (Gebruik de Low-Power lib om het minimum te meten)

Soldeer eerst draden aan de RFM95W-module en soldeer ze vervolgens aan de Arduino Pro Mini. Voeg vervolgens de sensoren toe. Bekijk de afbeeldingen en het schema!

Stap 3: De behuizing

de behuizing
de behuizing
de behuizing
de behuizing
de behuizing
de behuizing
de behuizing
de behuizing

Om het weerstation ergens neer te zetten, tekende ik een hoesje en printte het uit met de 3D-printer.

De modellen zijn te vinden op Thingiverse. Je kunt natuurlijk je eigen variant maken.

Stap 4: De software

De software
De software

De code die ik heb gebruikt is te vinden op GitHub:

Ik heb Atom met PlatformIO gebruikt om dit project te realiseren, dus dit is een PlatformIO-project. Ik heb de volgende bibliotheken gebruikt:

  • LoraMAC-in-C voor Arduino met dank aan Thomas Telkamp en Matthijs Kooijman (https://github.com/matthijskooijman/arduino-lmic)
  • CayenneLPP van The Things Network Arduino Library (https://github.com/TheThingsNetwork/arduino-device-lib)
  • Adafruit DHT-vochtigheids- en temperatuuruniforme sensorbibliotheek (https://github.com/adafruit/DHT-sensor-library)
  • Low-Power: lichtgewicht low-power bibliotheek voor Arduino (https://github.com/adafruit/DHT-sensor-library)

Stap 5: Cayenne MyDevices

Cayenne MyDevices
Cayenne MyDevices

U kunt uw applicatie in The Things Network integreren met Cayenne myDevices

Om de integratie toe te voegen:

  • Ga naar de applicatieconsole op de website van The Things Network;
  • Selecteer integraties in het menu rechtsboven;
  • Selecteer Cayenne;
  • Volg de instructies

Stap 6: Weer ondergronds

Ondergronds weer
Ondergronds weer

Maak een HTTP-integratie om gegevens naar Weather underground te sturen. De gegevens worden met een POST of een GET naar de URL gestuurd. Het volgende script legt de gegevens vast en stuurt deze naar Weather Underground. Registreer uw eigen persoonlijke weerstation op

<?php

?php echo tijd();

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

$json = file_get_contents('php://input'); $data = json_decode($json);

// haal de gegevens uit de json

$temperature_1 = $data->payload_fields->temperature_1; $barometric_pressure_2 = $data->payload_fields->barometric_pressure_2; $relative_humidity_3 = $data->payload_fields->relative_humidity_3;

// tempc naar tempf

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

// druk

$druk = $barometrische_druk_2/33.863886666667;

if(isset($druk) && !empty($druk) && isset($tempf) && !empty($tempf) && isset($relative_humidity_3) && !empty($relative_humidity_3)){ file_get_contents("https://rtupdate.wunderground.com/weatherstation/updateweatherstation.php?ID=XXXXXXX&PASSWORD=XXXXXXXX&dateutc=now&tempf=". $tempf. "&humidity=". $relative_humidity_3. "&baromin=". $pressure);

}

?>

?>

Stap 7: Geniet van je weerstation

Geniet van je weerstation
Geniet van je weerstation
Geniet van je weerstation
Geniet van je weerstation

Geniet van je weerstation

In Cayenne myDevices kunt u een projectdashboard delen. Deel de jouwe in de reacties!

Dit is van mij:

Aanbevolen: