Zpět na domů

Kompensace dat senzoru půdy na ESP32: vědecké modely a agrorekomendace

Článek popisuje open-source firmware pro mikrokontrolér ESP32, která zajišťuje vědeckou kompenzaci dat multifunkčního senzoru půdy JXCT. Jsou zváženy modely korekce, systém agrorekomendací pro 24 kultur a integrace s populárními IoT-platformami

Přesný agromonitoring: vědecká kompenzace senzoru půdy na ESP32
Advertisement 728x90

Vědecká kompenzace dat IoT senzoru půdy na ESP32: od surových hodnot k přesným agrodoporučením

Všestranný senzor půdy JXCT 7-v-1 poskytuje surová data přes Modbus RTU, ale bez teplotní a vlhkostní kompenzace jsou údaje o elektrické vodivosti (EC), pH a obsahu NPK výrazně zkreslené. Open-source firmware pro ESP32 implementuje vědecky podložené algoritmy korekce, integraci s oblíbenými IoT platformami a systém doporučení pro 24 zemědělských plodin.

Architektura systému a připojení

Systém je postaven na mikrokontroléru ESP32, který komunikuje se senzorem přes rozhraní RS485 s využitím transceiveru SP3485E. Senzor vyžaduje samostatný zdroj napájení 12–24 V, zatímco ESP32 a SP3485E pracují na 3.3 V.

Klíčové komponenty připojení:

Google AdInline article slot
  • ESP32 GPIO16 (RX) a GPIO17 (TX) pro sériovou komunikaci.
  • GPIO4 a GPIO5 pro řízení vysílače/přijímače (DE/RE) transceiveru SP3485E.
  • Povinné spojení zemních linek (GND) ESP32, SP3485E a napájecího bloku senzoru.
  • Dodržování polarity linek RS485 (A+/B-) a instalace terminátoru 120 Ohm na dlouhých kabelech.

Vědecké základy kompenzace měření

Firmware implementuje dvoustupňové zpracování dat. První stupeň — základní SensorCorrection s aplikací multiplikátoru a posunu. Druhý, volitelný stupeň — SensorCompensationService, využívající publikované vědecké modely.

Realizované modely kompenzace:

  • Elektrická vodivost (EC): Model Rhoades et al. (1989). Nárůst EC přibližně o 2.1% na každý stupeň Celsia nad 25°C.

EC_comp = EC_raw × (1 + 0.021 × (T - 25))

Google AdInline article slot
  • Kyselost (pH): Rovnice Nernsta podle dat Ross et al. (2008). Snížení pH o 0.003 jednotky na každý stupeň nad 25°C.

pH_comp = pH_raw - 0.003 × (T - 25)

  • Obsah NPK: Model Delgado et al. (2020) s ohledem na teplotu, vlhkost a typ půdy (13 variant, od písku po rašelinu).

N_comp = N_raw × e^(δ_N(T-20)) × (1 + ε_N(θ-30))

Dodatečná služba NutrientInteractionService bere v úvahu antagonistické (N↔K, P↔Zn) a synergické (N+S, Ca+B) interakce živin.

Google AdInline article slot

Doporučující systém pro zemědělství

CropRecommendationEngine obsahuje profily pro 24 plodin, včetně zeleniny (rajče, okurka), bobulovin (jahoda, malina), ovocných stromů (jabloň, réva) a polních plodin (pšenice, sója). Pro každou plodinu jsou definovány optimální rozsahy pro sedm parametrů senzoru.

Faktory ovlivňující doporučení:

  • Typ půdy (13 klasifikací).
  • Sezóna (jaro, léto, podzim, zima).
  • Typ prostředí pěstování (otevřený terén, skleník, vnitřní prostor).

Systém poskytuje barevnou indikaci stavu: normální, pozor, varování, kritické.

Kalibrace a správa

Kalibrace podporuje dva přístupy: laboratorní, přes nahrání CSV souboru s páry hodnot (surová/opravená), a programová, přes REST API.

Hlavní koncové body API pro kalibraci:

  • POST /api/calibration/{parameter} — přidání kalibračního bodu pro konkrétní parametr.
  • GET /api/calibration/export & POST /api/calibration/import — export a import kalibračních tabulek.
  • GET /api/correction/factors — správa základních korekčních faktorů (slope/offset).

Integrace s IoT ekosystémy

Systém nabízí několik kanálů pro výstup dat a správu.

Podporované platformy a protokoly:

  • Webové rozhraní: Vestavěný server s adaptivním designem pro nastavení WiFi, MQTT, prohlížení údajů v reálném čase a nahrávání aktualizací.
  • REST API (v1): Programový přístup k datům senzoru (/api/v1/sensor), diagnostice systému a správě konfigurace.
  • MQTT: Publikace dat do zadaných témat. Realizován delta-filtr pro publikaci pouze při významných změnách. Podpora automatického objevení (Auto-Discovery) pro Home Assistant.
  • ThingSpeak: Odesílání dat na pole platformy s nastavitelným intervalem a vestavěnou validací.

Další funkce a nasazení

Firmware zahrnuje rozšířené funkce pro spolehlivý provoz: detektor události zálivky podle náhlé změny vlhkosti, sezónní úpravy založené na geolokaci, filtraci dat (Kalmanův filtr, mediánový), watchdog-timer a OTA-aktualizace přes vzduch s kontrolou integrity přes SHA256.

Rychlý start pro vývojáře:

  • Naklonovat repozitář: git clone https://github.com/Gfermoto/soil-sensor-7in1.git
  • Nainstalovat závislosti: pip install -r requirements.txt
  • Zkompilovat a nahrát firmware pomocí PlatformIO: pio run -t upload
  • Nahrát souborový systém: pio run -t uploadfs
  • Připojit se k přístupovému bodu ESP32 pro počáteční nastavení sítě.

Technologický stack: C++17, PlatformIO, Arduino framework, Modbus RTU. Projekt je distribuován pod licencí AGPL-3.0.

Co je důležité

  • Surová data senzoru půdy vyžadují teplotní a vlhkostní kompenzaci pro přesnost EC, pH a NPK.
  • Firmware realizuje vědecké modely kompenzace (Rhoades, Nernst, Delgado) a bere v úvahu interakce živin.
  • Systém nabízí doporučení pro 24 plodin s ohledem na typ půdy, sezónu a podmínky pěstování.
  • Hotová integrace s Home Assistant, MQTT, ThingSpeak a REST API zjednodušuje začlenění do stávajících IoT systémů.
  • Open-source kód a detailní dokumentace umožňují přizpůsobit řešení specifickým úkolům.

— Editorial Team

Advertisement 728x90

Číst dál