Bezdrátový půdní senzor
Tento návod vás provede projektem Bezdrátový půdní senzor. Vlhkost půdy a teplotu budete zobrazovat, ukládat a analyzovat v prostředí Node-RED a ve vizualizačním nástroji Grafana.

Videonávod
Přehrání načte video ze služby YouTube (Google).
Blokové schéma
Požadavky
-
Buď Sada Soil Sensor, nebo jednotlivé komponenty:
- 1x Soil Sensor
- 1x Sensor Module
- 1x Core Module
- 1x Battery Module
- 1x Radio Dongle
-
Budete potřebovat Raspberry Pi s nainstalovanou distribucí HARDWARIO Raspbian. Postup najdete v dokumentu Instalace na Raspberry Pi.
Naměřená data se budou ukládat a zobrazovat v Grafaně na Raspberry Pi. Můžete použít i svůj počítač, stačí postupovat podle dokumentu Instalace aplikace HARDWARIO Playground.
Připojení k Raspberry Pi
Konfiguraci, služby i nahrávání firmwaru budete dělat na Raspberry Pi. Počítač vám poslouží jen k připojení k SSH serveru Raspberry Pi a k webovému rozhraní Grafana.
Postupujte podle dokumentu Přihlášení k Raspberry Pi, kde najdete návod, jak v síti zjistit IP adresu Raspberry Pi a připojit se k SSH serveru.
Nahrání firmwaru
Firmware nahrajete do modulu Core Module nástrojem HARDWARIO Firmware Tool. Modul připojíte k Raspberry Pi a firmware nahrajete z něj.
Teď nahrajte firmware do modulu Core Module.
Krok 1: Připojte modul Core Module kabelem Micro USB k Raspberry Pi
Krok 2: Nahrajte firmware do modulu Core Module:
Pokud od instalace systému uplynula delší doba, možná budete chtít aktualizovat dostupné firmwary příkazem bcf update.
Nahrávání firmwaru do Core Module R1 a R2 Rozdíly v nahrávání firmwaru do staršího Core Module 1 a novějšího Core Module 2 popisuje srovnání Core Module R1 a R2 v sekci Hardware.
Na Raspberry Pi nahrajte firmware nástrojem HARDWARIO Firmware Tool:
bcf flash hardwario/twr-radio-soil-sensor:latest
Krok 3: Odpojte kabel Micro USB od modulu Core Module a od Raspberry Pi
Firmware je úspěšně nahraný.
Sestavení hardwaru
Krok 1: Začněte modulem Battery Module
Zkontrolujte, že v modulu Battery Module nejsou vložené baterie.
Krok 2: Nasaďte Core Module na Battery Module
Krok 3: Nasaďte Sensor Module na Core Module
Krok 4: Zapojte konektor senzoru Soil Sensor do modulu Sensor Module
Rádiové párování
V této části navážeme rádiové spojení mezi Radio Dongle a sestavou Radio Soil Sensor.
V prostředí Node-RED postupujte takto:
Krok 1: Klikněte na tlačítko Start node pairing
Zkontrolujte, že se po stisknutí tlačítka Start node pairing na záložce debug vpravo zobrazí dvě zprávy: první je příkaz, druhá se slovem „start“ je odpověď donglu Radio Dongle.

Krok 2: Zapněte sestavu
Vložte baterie do sestavy Radio Soil Sensor, čímž odešlete požadavek na párování (červená LED na modulu Core Module by se také měla asi na 2 sekundy rozsvítit).
Na záložce debug v Node-RED se zobrazí zpráva s názvem a verzí firmwaru nově spárovaného modulu.

Krok 3: Klikněte na tlačítko Stop node pairing

Teď máte navázané rádiové spojení mezi uzlem (Radio Soil Sensor) a bránou (Radio Dongle).
Test komunikace
V prostředí Node-RED postupujte takto:
Krok 1: Přepněte se na záložku debug vpravo
Krok 2: Otestujte přenos
Dýchněte na teplotní čidlo senzoru Soil Sensor. Změna teploty spustí rádiový přenos.
Pak byste měli vidět podobné zprávy:

Teď máte ověřenou rádiovou komunikaci.
Krabička
Pokud máte vhodnou krabičku, můžete do ní sestavu vložit.
Krabičky pro sestavy TOWER najdete v e-shopu v kategorii Krabičky.
Integrace s Grafanou
Sada je sestavená, takže můžeme začít se základním propojením s Grafanou.
Krok 1: Nainstalujte závislosti
Na Raspberry Pi nainstalujte Grafanu a databázi InfluxDB. Postup podrobně popisuje dokument Vizualizace v Grafaně.
Krok 2: Upravte konfiguraci
Do konfiguračního souboru /etc/bigclown/mqtt2influxdb.yml, který jste vytvořili v návodu Vizualizace v Grafaně, přidejte tyto řádky. Tím doplníte podporu nových topiců, které posílá senzor Soil Sensor.
Text upravujeme v editoru nano. Změny uložíte klávesovou zkratkou Ctrl + O, editor ukončíte zkratkou Ctrl + X.
Otevřete konfiguraci mqtt2influxdb v editoru nano.
sudo nano /etc/bigclown/mqtt2influxdb.yml
Na konec souboru přidejte tyto řádky:
- measurement: moisture
topic: node/+/soil-sensor/+/moisture
fields:
value: $.payload
tags:
id: $.topic[1]
channel: $.topic[3]
- measurement: temperature
topic: node/+/soil-sensor/+/temperature
fields:
value: $.payload
tags:
id: $.topic[1]
channel: $.topic[3]
Krok 3: Ověřte, že je konfigurace platná. Pokud ne, je v souboru YAML chyba ve formátování
mqtt2influxdb -c /etc/bigclown/mqtt2influxdb.yml --test
Krok 4: Restartujte službu MQTT2InfluxDB, aby načetla změněnou konfiguraci
pm2 restart mqtt2influxdb
Krok 5: Otevřete Grafanu, která běží na Raspberry Pi na portu 3000
Krok 6: Graf
Dole teď vidíte teplotu a napětí baterie. Chybí ještě graf vlhkosti. Protože jsme do konfiguračního souboru přidali řádek - measurement: moisture, je potřeba existující graf zduplikovat a změnit jeho zdroj dat (measurement) na moisture.
Pak v duplikovaném grafu klikněte na Edit.
Na záložce Metrics změňte u položky FROM hodnotu temperature na moisture.

Krok 7: Uložte
Nakonec v Grafaně klikněte na tlačítko Save, aby nastavení zůstalo zachované i při dalším otevření stránky.
