Агуулгын хүснэгт:

Юмсын интернет: LoRa цаг уурын станц: 7 алхам (зурагтай)
Юмсын интернет: LoRa цаг уурын станц: 7 алхам (зурагтай)

Видео: Юмсын интернет: LoRa цаг уурын станц: 7 алхам (зурагтай)

Видео: Юмсын интернет: LoRa цаг уурын станц: 7 алхам (зурагтай)
Видео: A delightful way to teach kids about computers | Linda Liukas 2024, Долдугаар сарын
Anonim
Юмсын интернет: LoRa цаг уурын станц
Юмсын интернет: LoRa цаг уурын станц
Юмсын интернет: LoRa цаг уурын станц
Юмсын интернет: LoRa цаг уурын станц
Юмсын интернет: LoRa цаг уурын станц
Юмсын интернет: LoRa цаг уурын станц

Энэ бол сайхан LoRa төслийн жишээ юм. Цаг уурын станц нь температур мэдрэгч, агаарын даралт мэдрэгч, чийгшил мэдрэгчийг агуулдаг. Өгөгдлийг уншиж, LoRa болон The Things Network ашиглан Cayenne Mydevices and Weather Underground руу илгээдэг.

Танай нутагт Things Network of LoRa Gateway байгаа эсэхийг шалгаарай!

Алхам 1: Тоног төхөөрөмж

Тоног төхөөрөмж
Тоног төхөөрөмж
Тоног төхөөрөмж
Тоног төхөөрөмж
Тоног төхөөрөмж
Тоног төхөөрөмж
Тоног төхөөрөмж
Тоног төхөөрөмж

Энэ төслийн хувьд би дараах тоног төхөөрөмжийг ашигласан.

  • 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 -дамжуулагч-модуль-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)

Нийт өртөг нь 10 доллараас бага байдаг.

Алхам 2: Цахилгааны утас

Утас
Утас
Утас
Утас
Утас
Утас

Мэдрэгчийг эхлээд талхны самбар дээр туршиж үзэх нь ухаалаг хэрэг юм. Тиймээс мэдрэгчүүд ажилладаг гэдэгт та итгэлтэй байж болно. Та мөн эрчим хүчний хэрэглээг мултиметрээр хэмжих боломжтой. (Бага хүчийг ашиглана уу.

Эхлээд RFM95W модульд утас гагнах, дараа нь Arduino Pro Mini руу гагнах. Дараа нь мэдрэгчийг нэмнэ үү. Зураг, диаграмыг үзнэ үү!

Алхам 3: Бүрхүүл

Бүрхүүл
Бүрхүүл
Бүрхүүл
Бүрхүүл
Бүрхүүл
Бүрхүүл
Бүрхүүл
Бүрхүүл

Цаг агаарын станцыг хаа нэг газар байрлуулахын тулд би хайрцаг зураад 3d принтерээр хэвлэв.

Загваруудыг Thingiverse дээрээс олж болно. Мэдээжийн хэрэг та өөрийн хувилбарыг хийх боломжтой.

Алхам 4: Програм хангамж

Програм хангамж
Програм хангамж

Миний ашигласан кодыг GitHub дээрээс олж болно:

Би энэ төслийг хэрэгжүүлэхийн тулд PlatformIO -тай хамт Atom -ийг ашигласан тул энэ бол PlatformIO төсөл юм. Би дараах libarys -ийг ашигласан.

  • LoraMAC-in-C нь Arduino-д Томас Телкамп, Маттижс Койжман нарт талархал илэрхийлэв (https://github.com/matthijskooijman/arduino-lmic)
  • The Things Network Arduino номын сангийн CayenneLPP (https://github.com/TheThingsNetwork/arduino-device-lib)
  • Adafruit DHT чийгшил ба температурын нэгдсэн мэдрэгчийн номын сан (https://github.com/adafruit/DHT-sensor-library)
  • Бага хүчдэл: Arduino-д зориулсан бага хүчдэлийн номын сан (https://github.com/adafruit/DHT-sensor-library)

Алхам 5: Cayenne MyDevices

Cayenne MyDevices
Cayenne MyDevices

Та өргөдлөө Cayenne myDevices -тэй Things Network -т нэгтгэх боломжтой

Интеграцийг нэмэхийн тулд:

  • The Things Network вэбсайт дээрх програмын консол руу очно уу;
  • Баруун дээд цэснээс интеграцийг сонгох;
  • Cayenne сонгоно уу;
  • Зааврыг дагана уу

Алхам 6: Газар доорх цаг агаар

Газар доорх цаг агаар
Газар доорх цаг агаар

Weather Underground руу өгөгдөл илгээх бол HTTP интеграцийг үүсгэнэ үү. Өгөгдлийг POST эсвэл GET ашиглан URL руу илгээх болно. Дараах скрипт нь өгөгдлийг цуглуулж, Weather Underground руу илгээдэг. Https://www.wunderground.com/personal-weather-station/signup дээр хувийн цаг уурын станцаа бүртгүүлнэ үү.

<? php

? php echo time ();

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

$ json = file_get_contents ('php: // input'); $ өгөгдөл = json_decode ($ json);

// өгөгдлийг json -аас гаргаж авах

$ temperature_1 = $ data-> payload_fields-> temperature_1; $ barometric_pressure_2 = $ data-> payload_fields-> barometric_pressure_2; $ relat_humidity_3 = $ data-> payload_fields-> nisbiy_ чийгшил_3;

// tempc to tempf

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

// даралт

$ даралт = $ barometric_pressure_2/33.863886666667;

if (isset ($ даралт) &&! хоосон ($ даралт) && isset ($ tempf) &&! хоосон ($ tempf) && isset ($ харьцангуй_ чийгшил_3) &&! хоосон ($ relat_humidity_3)) {file_get_contents ("https:// rtupdate.wunderground.com/weatherstation/updateweatherstation.php? ID = XXXXXXX & PASSWORD = XXXXXXXX & dateutc = now & tempf = ". $ tempf." & чийглэг = ". $ relat_humidity_3." & baromin = ". $ даралт);

}

?>

?>

Алхам 7: Цаг агаарын станцаа сайхан өнгөрүүлээрэй

Цаг агаарын станцаа сайхан өнгөрүүлээрэй
Цаг агаарын станцаа сайхан өнгөрүүлээрэй
Цаг агаарын станцаа сайхан өнгөрүүлээрэй
Цаг агаарын станцаа сайхан өнгөрүүлээрэй

Цаг агаарын станцаа сайхан өнгөрүүлээрэй

Cayenne myDevices дээр та хяналтын самбарын төслийг хуваалцах боломжтой. Сэтгэгдлүүд дээр сэтгэгдлээ хуваалцаарай!

Энэ бол минийх:

Зөвлөмж болгож буй: