Hackster Inc.
Avtor: Tomas Urbanavičius
Napredna postaja za spremljanje okolja in padavin uporablja LoRa komunikacijo.
Ustvariti popolnoma avtonomno, sončno napajano postajo, ki ne le beleži, kdaj dežuje, ampak tudi meri ključne atmosferske razmere pred, med in po dežju. To nam omogoča, da vidimo, kako padavine vplivajo na lokalno okolje in kakovost zraka.
Kako deluje
Oba senzorja delujeta skupaj in ustvarjata celovito sliko:
RAK12030 (senzor za dež): deluje kot glavni sprožilec dogodka. Natančno določi začetek in konec dežja, kar nam omogoča merjenje trajanja padavin.
RAK1906 (senzor za okolje BME680): zagotavlja kontekst. Neprestano meri, na primer vsake 5 minut:
Ta vsebina je samo za naročnike
Temperatura in vlažnost: omogoča nam, da vidimo, kako vlažnost zraka doseže 100 % in kako temperatura pade, ko se približuje deževna fronta.
Atmosferski tlak: to je klasično orodje za napovedovanje vremena. Nenaden padec tlaka je pogosto znak, da se približuje nevihta ali dež.
Kakovost zraka (VOC): BME680 meri količino hlapnih organskih spojin v zraku. To je še posebej zanimiv »zeleni« del, saj dež dobesedno » opere« zrak, v katerem se nahajajo neželene snovi. Videli boste, kako se kazalniki kakovosti zraka izboljšajo po dežju.



Zgodovina zajetih podatkov
Na vaši podatkovni platformi (npr. Datacake ali Thingspeak) bi morali videti naslednji grafikon:
Pred dežjem: Atmosferski tlak začne padati, vlažnost zraka pa se poveča.
Začetek dežja: RAK12030 pošlje signal »dežuje«. Vlažnost doseže 100 %.
Po dežju: RAK12030 pošlje signal »ne dežuje«. Tlak se spet začne dvigovati in indikator kakovosti zraka (VOC) se znatno izboljša – zrak postane čistejši.
„Zelene“ prednosti: Spremljanje kakovosti zraka: Projekt postane pravo orodje, ki prikazuje prednosti naravnih procesov (dežja) za čistočo zraka. Je odlično izobraževalno orodje.
Hiperlokalni podatki o vremenu: Zberete izredno natančne podatke o mikroklimi vašega dvorišča, vrta ali okrožja, ki so veliko bolj dragoceni kot splošne vremenske napovedi.
Preprosta vremenska napoved: z opazovanjem trendov padanja tlaka lahko sami napoveste prihajajoči dež.
Razumevanje vodnega kroga: vizualno vidite, kako so med seboj povezani tlak, temperatura, vlažnost in padavine.
Kaj potrebujemo za izvedbo projekta
Komponente:
WisBlock Base Board 2nd Gen RAK19007 × 1
RAKwireless – RAK11300 × 1
PCB Antena za LoRa 863-870MHz × 1
RAK7268V2 WisGate Edge Lite 2 × 1
Senzor za podatke okolja BOSCH BME680 RAK1906 × 1
Senzor za dež Microchip MCP606 RAK12005+RAK12030 × 1
Programska oprema in spletne storitve:
Arduino IDE
The Things Industries: The Things Stack
Ročno orodje in stroji za izdelavo:
Večnamensko orodje, izvijač
- korak Prehod: nastavitev in konfiguracija
Da ne bi poškodovali prehoda, pred vklopom najprej priključite anteno! Ta korak je podrobno razložen v priročniku – Izobraževalni komplet IoT – Nastavitev prehoda RAK7268V2 –, ki ga najdete na [1] - korak: Namestitev WisBlock komponent
Mikroprocesor (RAK11300) vstavite v namensko režo na matični plošči, pri čemer pazite, da so priključki in luknje pravilno poravnani. Lahko pritisnite, dokler ne zaslišite klik, nato pa ga pritrdite z vijaki in izvijačem iz kompleta. Previdno priključite anteno LoRa 863-870 MHz na določeno mesto. Sestavite modul RAK12030 (senzor dežja) in RAK1906 (senzor okolja BME680) tako, da ju namestite na matično ploščo. - korak: Nastavitev razvojnega okolja
Namestite Arduino IDE/PlatformIO in podporo za ploščo RAK4631. Namestite potrebne knjižnice za senzorje. Vstavite kodo [2] in napišite kodo za inicializacijo in branje podatkov iz senzorjev:
function decodeUplink(input) {
var bytes = input.bytes;
// Temperature
var temperature = new DataView(new
Uint8Array(bytes.slice(0,4)).buffer).getFloat32(0,true);
// Humidity
var humidity = new DataView(new
Uint8Array(bytes.slice(4,8)).buffer).getFloat32(0,true);
// Pressure
var pressure = new DataView(new
Uint8Array(bytes.slice(8,12)).buffer).getFloat32(0,true);
// Air Quality
var airQualityEnum = bytes[12];
var airQuality = »Unknown«;
if(airQualityEnum === 0) airQuality = »Good«;
else if(airQualityEnum === 1) airQuality = »Moderate«;
else if(airQualityEnum === 2) airQuality = »Poor«;
// Rain
var raining = bytes[13] === 1;
// Round floats
temperature = Math.round(temperature100)/100; humidity = Math.round(humidity100)/100;
pressure = Math.round(pressure*100)/100;
return {
data: {
temperature: temperature,
humidity: humidity,
pressure: pressure,
airQuality: airQuality,
raining: raining
}
};
}
Na sliki 3 vidimo dekodirano sporočilo. Celoten program najdete na povezavi [3].
Viri:
1: https://www.hackster.io/520073/iot-education-kit-setup-the-gateway-rak7268v2-6b222f
2: https://www.hackster.io/tomasurbanavicius/advanced-environmental-and-precipitation-monitoring-station-b3912e
3: https://www.hackster.io/code_files/672322/download
