Transparentan FAO-56 / CROPWAT model bilansa vode u zemljištu, obogaćen prognozom vremena, satelitskim indeksima i fenološkim stadijumom useva za praktične preporuke na nivou parcele.
Agromind koristi FAO-56 / CROPWAT matematiku za bilans vode u zoni korena kao transparentnu osnovu. Dodaje sloj satelitskih indeksa (NDVI, NDMI), prognozu vremena (Open-Meteo), profil zemljišta (SoilGrids) i fenologiju useva kako bi pretvorio brojeve u praktičnu preporuku po parceli.
ETc = Kc × ET₀
Koliko vode usev troši zavisno od stadijuma i prognoze.Dr (mm) trenutno + projekcija na 7 dana
Koliko nedostaje do polja-kapaciteta (FC) sada i na kraju nedelje.Indeks 0–100 + doza (mm)
Kada navodnjavati, koliko mm i u kojoj fazi nivo postaje kritičan.Composite 0–100 sa 5 komponenti
Zemljište + VPD + dani bez kiše + toplotni stres + verovatnoća padavina.Četiri spoljna izvora + interna baza, sve keširano na backend strani da bi browser/mobilni klijent ne udarali eksterne servise direktno.
| Izvor | Šta uzima | Frekvencija | Kesiranje |
|---|---|---|---|
| Open-Meteo open-meteo.com |
Tmax/Tmin, padavine, vlažnost, vetar, ET₀ (FAO Penman-Monteith), solarno zračenje, vlažnost zemljišta po 5 dubina (0–1, 1–3, 3–9, 9–27, 27–81 cm), temperatura zemljišta po 4 dubine (0, 6, 18, 54 cm). Prošlih 7 dana + 7 dana prognoze. | Po zahtevu | 1 sat (response cache) |
| ISRIC SoilGrids 2.0 rest.isric.org |
Polje-kapacitet (FC, wv0033), tačka venenja (WP, wv1500), tekstura (glina/pesak/prah), pH, organski ugljenik, azot, bulk density, CEC. Po 5 dubinskih horizonata (0–5, 5–15, 15–30, 30–60, 60–100 cm). | Po lokaciji parcele | 30 dana (zemljište se ne menja brzo) |
| Sentinel Hub Copernicus / S-2 |
NDVI (vitalnost), NDMI (vlažnost lista), kompoziti za vizuelni pregled na mapi. | Svakih 3–5 dana (S-2 prolazak) | Per-pixel; kratko (latencija pristupa) |
| Interna baza (Prisma) | Geometrija parcele (koordinate poligona), kultura (16 podržanih ključeva), datum setve, sorta, beleške. | Trenutno (CRUD) | — |
(lat3dec, lng3dec) što odgovara prirodnoj 250 m rezoluciji SoilGrids grida. Susedne parcele dele isti unos.
Kako jedan zahtev sa portala („koliko da navodnjavam ovu parcelu?“) prolazi kroz sistem.
Sve formule su iz FAO Irrigation & Drainage Paper 56 (Allen et al. 1998). Ovo nije „crna kutija“ — svaki korak može da se proveri ručno.
ET₀ (mm/dan) je koliko bi referentna travnata površina trošila u datim uslovima. Konzumiramo direktno iz Open-Meteo (računa FAO-56 Penman-Monteith, jednačina 6). Inputi: solarno zračenje, vetar (korigovan na 2 m visine, FAO Eq. 47), Tmax/Tmin, RH.
Kc (crop coefficient) zavisi od kulture i fenološkog stadijuma. Tabele iz FAO-56 Tables 12, 17, 22. Pšenica u fazi cvetanja Kc ≈ 1.15, pri klijanju Kc ≈ 0.3.
Gde je Dr = trenutna iscrpljenost zone korena, TAW = ukupna dostupna voda, RAW = lako dostupna voda. Stvarna ET je ETa = Ks · ETc — manja kad zemljište presuši.
FC i WP iz SoilGrids (volumetrijska vlažnost u m³/m³). MAD (Management Allowed Depletion) je dozvoljeni gubitak pre nego što biljka oseti stres — FAO-56 Table 22; za pšenicu 0.55, za suncokret 0.45.
Na kraju prozora dobijamo projectedDepletionMm — koliko zemljište neće biti od FC. Indeks navodnjavanja je min(100, Dr/RAW × 100).
| Odnos Dr/RAW | Status | Boja UI | Doza |
|---|---|---|---|
| < 0.5 | comfortable | zelena | 0 mm |
| 0.5 – 1.0 | borderline | žuta | 0 mm (osmotriti) |
| ≥ 1.0 | critical | crvena | min(50, projectedDepletionMm) mm |
Doza je ograničena na 50 mm po prolazu (praktični maksimum za površinsko/sistemsko navodnjavanje — Brouwer/Prins/Heibloem 1989). Veći deficit se rešava ponovnim prolazima.
Kalibrisano za 5 kultura (pšenica, ječam, kukuruz, soja, suncokret). Ostale kulture trenutno koriste generičke parametre (Kc=1.0, dubina=0.6 m, MAD=0.5) — pogledati „sledeće korake“.
Od datuma setve sabiramo dnevne GDD. Pragovi po stadijumu (npr. pšenica: 0/150/400/700/950/1150/1350/1550/1800/2100 GDD) određuju trenutni BBCH (germination, leaf, tillering, stem, booting, heading, flowering, fruit, ripening, senescence).
Ovo je nedavno ispravljeno. Ranije se zrela maksimalna dubina (npr. 1.5 m za pšenicu) koristila u svim fazama, što je nadimavalo iscrpljenost u fazi klijanja oko 10×.
| BBCH stadijum | Frakcija max dubine | Pšenica (max 1.5 m) |
|---|---|---|
| germination | 0.10 (pod 0.10 m) | 0.15 m |
| leaf | 0.20 | 0.30 m |
| tillering | 0.40 | 0.60 m |
| stem | 0.70 | 1.05 m |
| booting | 0.95 | 1.43 m |
| heading i kasnije | 1.00 (max) | 1.50 m |
Sva ostala matematika (TAW, depletion, horizont vlažnosti) koristi ovu efektivnu dubinu, ne maksimalnu.
U fazi klijanja i lista, temperatura se očitava na dubini setve (~3 cm), ne u zoni mature korena. Inače bi pšenica u klijanju prikazivala 54 cm dubinu, što nema agronomsko značenje za nicanje.
Composite 0–100 sa težinski raspoređenim doprinosima. Korisniku se prikazuje rezultat i raščlanjeni doprinosi za transparentnost.
| Komponenta | Težina | Šta meri | Formula |
|---|---|---|---|
| Iscrpljenost zemljišta | 0.40 | Najvažnija — direktan deficit u zoni korena. | clamp(0..1, projectedDepletion / TAW) · 100 |
| VPD (vapor pressure deficit) | 0.25 | Atmosferski „suvi pritisak“ koji vuče vodu iz biljke. | clamp(0..1, meanVPD / 3 kPa) · 100 VPD = es(Tmax) − es(Tmax)·RH/100 |
| Suvi periodi | 0.15 | Najduži niz uzastopnih dana sa P<1 mm. | min(maxRun/7, 1) · 100 |
| Toplotni stres | 0.10 | Broj dana sa Tmax ≥ 30 °C u prozoru. | min(heatDays/7, 1) · 100 |
| Verovatnoća bez kiše | 0.10 | Prosečna prognozirana verovatnoća padavina, invertovana. | (100 − meanPp) // „Bez kiše X%“ |
Mapiranje backend brojeva na elemente „Zemljište“ taba u portalu.
| UI element | Backend polje | Šta znači |
|---|---|---|
| Indeks navodnjavanja (0–100, badge) | irrigation.index + waterStatus |
Brzi pokazatelj. ≥100 = mora se navodnjavati. |
| Preporučena doza | irrigation.recommendedDoseMm |
0 mm ako ne treba; inače min(50, projectedDepletion). |
| „Trenutni deficit“ | water.currentDepletionMm |
Sada: koliko mm fali do FC u zoni korena. |
| „Prognoza deficita 7d“ | water.deficitMm |
Kumulativno: ETc − Pᵉff za sledećih 7 dana. |
| Sparkline grafik dnevnog Dr | water.dailyBalance[].drEndMm |
Evolucija zone korena dan-po-dan. |
| Vlažnost zemljišta (chip) | moisture.fillPctOfPaw NOVO |
% napunjenosti dostupne vode (100% = FC, 0% = WP). Mnogo razumljivije od sirovog θ. |
| Vlažnost po dubini | moisture.byDepth[] |
Profil 0–81 cm u 5 traka. |
| Temperatura zemljišta + zona | soilTemp.valueC + zone |
Frost / tooCold / marginal / optimal / warm / heatStress. |
| Bedž stadijuma BBCH | cropParams.stage |
Germinacija / list / bokorenje / klasanje / cvetanje / … |
| Composite suše + 5 komponenti | drought.composite + components[] |
Sa raščlanjenim doprinosima radi transparentnosti. |
Transparentnost o tome šta model ne radi:
Težine drought composite-a, prag toplote 30 °C, sush-prag P<1 mm — sve su konvencije bez kalibracije na lokalne uslove Vojvodine/Šumadije.
Pšenica, ječam, kukuruz, soja, suncokret imaju per-stage Kc/dubinu. Šećerna repa, krompir, vinograd, voćnjak — generički fallback (Kc=1.0). Treba ih dodati.
Za nepravilne (L-oblik) parcele tačka može pasti van poligona. Prihvatljivo pri 250 m SoilGrids rezoluciji, ali ne za uzorkovanje unutar parcele.
Vlažnost je modelovana iz Open-Meteo, ne merena. Sa TDR sondom (METER TEROS-12) bismo dobili kalibraciju i confidence interval.
FAO-56 zvanično koristi mesečni USDA SCS metod. Naša dnevna varijanta gubi tačnost na višednevnim olujama.
Nema SPI/SPEI indeksa jer nemamo dugu istoriju po parceli. Drought composite je trenutno „forward-looking“ samo na 7 dana prognoze.
Prioritizovani backlog. Stavke V1–V12 vode se u docs/future-plans/parcel-irrigation-status-validation.md.
VITE_USE_BACKEND_AGRO=true kao default-a.lru-cache). 24h soak test → memorija mora stabilna.FEATURE_KEYS.IRRIGATION_STATUS da bismo per-org mogli ugasiti tokom pilot perioda.currentDepletionMm. Ovo je jedini način da znamo koliko je model tačan na terenu.heatThresholdC po kulturi (Sánchez et al. 2014 pregled).TtlCache, fetchJson, parseAreaCoordinates u src/common/utils/. Trenutno svaki modul ima svoju varijantu — drift rizik.sliceForecast u shared helpersrc/weather/utils/forecast.ts.POST /parcels/irrigation-status/bulk za dashboard pregled portfolija.recommendations engine-om — pretvaranje brojeva u tekstualne preporuke („navodnjavati u sredu pred zoru“) sa kulturno-specifičnim savetima.irrigation.waterStatus = critical, push obaveštenje + e-mail.