S novim firmwareom 2.3.1(150), sada se također mogu integrirati LoRaWan, NB-IOT i drugi vanjski senzori.
Međutim, preduvjet je da svoje podatke senzora predaju MQTT brokeru, OpenSprinkler zatim se mogu pretplatiti na ovo kao podatke senzora.
Senzor je integriran sa svojom "temom" i tekstualnim/JSON filtrom. Regulator navodnjavanja tada može koristiti ovu vrijednost.
Kako funkcionira:
- LoRa WAN senzori se postavljaju unutar radijusa LoRa WAN čvorišta, ovisno o verziji, s dometom do 10 km. Sami upravljate LoRa WAN čvorištem, koje se naziva i pristupnik, i povezujete ga sa svojom mrežom
- NB-IoT senzori integrirani su putem portala pružatelja usluga. Budući da NB-IoT radi preko mobilne mreže, senzor se može smjestiti bilo gdje - pod uvjetom da postoji prijem.
- Na portalu pristupnika ili pružatelja usluga aktivirajte funkciju MQTT i upotrijebite je za izvoz podataka senzora. Ovisno o verziji, možda će biti potrebna daljnja implementacija s alatom za upravljanje IoT-om kao što je ChirpStack, koji pretvara "gole" podatke senzora u podatke koji se mogu procijeniti.
- In OpenSprinkler povežite to putem MQTT opcija i zatim kreirajte novi senzor tipa "MQTT pretplata".
- Unesite podatke o pretplati i filter podataka u senzor.
- Završeno! Čim se podaci prime, vrijednosti se prikazuju i spremaju.
Detaljna konfiguracija senzora
Dva MQTT senzora označena su crvenom bojom. Ostali senzori integrirani su preko analogne senzorske ploče
Uredi senzor
Klikom na “Dodaj senzor” ili na naziv postojećeg senzora dobivate sljedeći editor:
Ovaj primjer pokazuje CHIRPSTACK integraciju MQTT podataka. Struktura je definirana na sljedeći način:
aplikacija/ /uređaj/ /događaj/up
Najbolje je pogledati moguće vrijednosti pomoću alata kao što je MQTT Explorer. Često je zbunjujuće, posebno za početnike, da se ništa ne prikazuje u MQTT Exploreru. Budući da podaci senzora stižu samo svakih 10 minuta (ovisno o konfiguraciji), jednostavno morate neko vrijeme ostaviti MQTT Explorer.
Za polje MQTT Filter unesite naziv polja koje treba pročitati. U CHIRPSTACK-u možete vidjeti pročitana polja pod “Profili uređaja” / “Mjerenja”. Ako se ovdje ništa ne pojavi, najprije morate spremiti skriptu u karticu "CODEC"; ovdje vam mogu pomoći predlošci ili možete pitati proizvođača senzora.
Zašto LoRaWAN ili NB-IoT, a ne Wi-Fi ili Bluetooth?
Najveći problem sa senzorima je što im je potrebno napajanje. Ako možete položiti kabel za napajanje, obično možete položiti i podatkovni kabel. Ali ako to nije moguće, kako spojiti te senzore?
Kako bismo odgovorili na ovo pitanje, napravili smo neke pokuse i ovdje predstavljamo rezultate.
- Bluetooth ne radi, domet je jednostavno prekratak (osim naravno ako su biljke unutar 10m. vidi ovdje)
- WiFi se može koristiti, ali je potrošnja energije tolika da ili morate mijenjati baterije svaka 4 tjedna ili su vam potrebne ogromne baterije. To se također može poboljšati s fotonaponskim uređajima, ali tada već imate visoke investicijske troškove po senzoru. Osim toga, postoji određeni rizik od oštećenja imovine prilikom postavljanja na otvorenom.
- LoRaWAN je tu prikladniji jer su baterije dugotrajne i često traju i do 10 godina. Vanjski domet može biti do 10 km (otvoreno polje, urbana područja cca. 2 km). Budući da se LoRaWAN-om može upravljati bez licence, postoje samo jednokratni troškovi.
- NB-IoT je također vrlo prikladan ako postoji odgovarajuća pokrivenost mobilnom telefonijom. To znači da je raspon gotovo "beskonačan" jer se podaci senzora dostavljaju usluzi u oblaku. Međutim, postoje stalni troškovi
Realizacija i testiranje
Za naš test koristili smo Milesight UG65-868M kao LoRaWAN gateway, kao i senzore vlažnosti tla Dragino LSE01 i Milesight EM-500 SMTC. Budući da UG65 također može aktivirati MQTT brokera s najnovijim ažuriranjem (ChirpStack-common mora biti aktiviran), može se povezati kao neovisni MQTT poslužitelj.
Oba senzora mogu mjeriti ne samo vlažnost tla, već i temperaturu tla i dielektričnu vodljivost (permitivnost). Posljednja vrijednost posebno je vrlo važna za poljoprivredni sektor, jer se također može koristiti za određivanje sadržaja gnojiva u tlu.
Milesight UG65 ima priključke za napajanje straga i njime se može upravljati preko POE. Također ima WiFi i može poslužiti čak i kao pristupna točka. Ostale antene i LTE modul također su dostupni kao opcija.
Milesight EM-500 SMTC je više od običnog senzora vlage u tlu. Može mjeriti temperaturu i permitivnost tla. Sastoji se od dvije komponente koje su povezane kablom. Iznad zemlje je odašiljač, podzemlje je stvarni senzor. Uključen je držač za jarbol.
Dragino LSE01 sličan je EM500, također može mjeriti vlažnost tla, temperaturu i permitivnost. Čini se da su svi Dragino senzori slični, svi proizvodi imaju isti transmiter.
ChirpStack
Prilikom postavljanja Chirpstacka, važno je prvo postaviti profile za senzore ("Profili uređaja"). Ovdje bilježite senzore s njihovim općim podacima o uređaju. Zadane postavke možete odabrati pomoću funkcije "Odaberi predložak profila uređaja". Cijela ova konfiguracija je neophodna kako bi se binarni podaci senzora mogli pretvoriti u čitljive vrijednosti. Stoga je funkcija "Codec" također najvažnija funkcija ovdje.
Međutim, trebalo mi je neko vrijeme da shvatim da su te specifikacije kodeka zastarjele. Trenutni kodeci mogu se pronaći ovdje:
Milesight: https://github.com/Milesight-IoT/SensorDecoders
Dragino: https://github.com/dragino/dragino-end-node-decoder
Da biste to učinili, jednostavno odaberite odgovarajući senzor, preuzmite datoteku za ChirpStack, otvorite je pomoću editora i zalijepite u polje kodeka.
Zatim izradite "Aplikaciju" i unesite senzore pod "Uređaji". Također je važno znati JOIN podatke senzora; oni su obično otisnuti na uređajima, na natpisnoj pločici, u samom uređaju ili u popratnim dokumentima.
Sada kada je sve postavljeno, morate pokrenuti JOIN na senzorima. Ovaj proces prvo povezuje senzor s vašim pristupnikom - inače bi svi mogli kontrolirati vaše senzore. To možete učiniti pomoću APLIKACIJE (Milesight ima APLIKACIJU “Toolbox”) ili otvorite uređaj i pritisnite posebnu tipku JOIN. Ponekad samo trebate nakratko izvaditi bateriju i priključiti je, a zatim se pokreće JOIN proces.
Podaci bi sada trebali stići u ChirpStack. Ali budite strpljivi, senzori šalju signal samo svakih 10 minuta, tako da ovo može potrajati.
MQTT
Chirpstack ima svog vlastitog MQTT brokera, ali možete koristiti i svoj vlastiti MQTT. Da bi primao podatke od Chirpstack MQTT brokera, postavio sam MQTT most i sve proslijedio. Potreban program za to se zove "Mosquitto"
Forwarder.conf u mapi /etc/mosquitto/conf.d meni izgleda ovako:
connection bridge-01
address 192.168.0.50:1884
topic # out 0
topic # in 0
gdje je 192.168.0.50:1884 IP i port Chirpstack MQTT brokera
Nakon što je sve postavljeno, vrijednosti bi se trebale pojaviti automatski kao što je prikazano gore OpenSprinkler pojaviti se. Sada konfigurirajte prilagodbu programa za ovaj senzor, na primjer ovako:
To održava vlažnost tla između 10% i 20% navodnjavanja. Podešavanje navodnjavanja je od 0 do 200%
Nažalost, s firmverom 2.3.1 (164) kada je odabrana "MQTT pretplata", nedostaju polja MQTT tema/MQTT filter/jedinica 🙁
Čak ni promjena preglednika nije ništa promijenila. Je li ovo poznata pogreška?
Da, to se događa ako koristite “originalnu” web stranicu proizvođača, koja nažalost kasni u razvoju. Stoga prilagodite u skladu s tim kako je opisano u uputama /su.
Zatim pritisnite Ctrl+F5 nekoliko puta u pregledniku (ili ponovno učitajte) kako bi se stranica ažurirala. Evo opet linka:
Hvala! Radi odlično i moguće je integrirati moju Ecowitt meteorološku stanicu preko Homeassistant => Mosquitto.
Pozdrav,
to zvuči izuzetno zanimljivo. Zanima me treba li ti relativno skupi Milesight UG65-868M ili radi nešto jednostavnije?
Naravno, ovo također funkcionira s drugim LoRaWAN pristupnicima. Budući da se integracija odvija putem MQTT-a, može se koristiti bilo koji kompatibilni uređaj.