Autonomni sustav za precizno vinogradarstvo
Ovaj tehnički dokument opisuje arhitekturu i implementaciju AIAgro 2025 sustava. Projekt integrira distribuirane senzorske mreže (STM32/LoRaWAN), autonomne letjelice (Pixhawk/ArduPilot) i rubno računarstvo (Edge AI) u jedinstveni ekosustav za rano otkrivanje biljnih patogena (npr. Plamenjače) i optimizaciju resursa.
Točnost Detekcije (AI)
Ušteda Pesticida
ROI Period
01 Senzorske Točke: STM32 & LoRaWAN
Srce senzorskog čvora je mikrokontroler STM32L4 (Ultra-Low Power) povezan s RFM95W LoRa primopredajnikom putem SPI sučelja. Za razliku od WiFi modula (ESP32) koji troše >100mA, ova kombinacija u Deep Sleep modu troši manje od 10µA, omogućujući autonomiju od 2+ godine na Li-Ion 18650 bateriji.
STM32 <-> RFM95W (SPI Konfiguracija)
- NSS (CS) PA4
- SCK PA5
- MISO PA6
- MOSI PA7
- DIO0 (IRQ) PB0
- Frekvencija 868.1 MHz (EU868)
Optimizacija Payloada: Binarno vs JSON
Hover over bits
Koristimo bit-packing umjesto JSON-a. JSON string {"t":24.5}
zauzima 9 bajtova. Binarni zapis temperature (int16) zauzima samo 2 bajta. Manji paket = kraće
vrijeme emitiranja (Airtime) = manja potrošnja.
Unit: #161
8-bit Integer
Value: 2450
(24.5 °C * 100)
Value: 60%
8-bit Unsigned
Value: 3700mV
16-bit Unsigned
02 Autonomna Zračna Platforma (UAV)
Hardverska "Build" Lista
- Kontroler leta: Pixhawk 2.4.8 (FMUv3 arhitektura, 32-bit STM32F427 Cortex-M4F).
- GPS: M8N s kompasom (Preciznost ~2.5m, za preciznije rani koristi se RTK).
- ESC: 30A SimonK Firmware (brzi odaziv za stabilizaciju).
- Propulzija: 920kV motori + 1045 propeleri (optimizirano za "hover" vrijeme).
- Telemetrija: 433MHz SiK Radio za vezu s Mission Plannerom.
Misija: Grid Survey
U softveru Mission Planner konfigurira se "Survey (Grid)" opcija. Ključno je sinkronizirati brzinu leta i okidanje kamere (CAM_TRIGG_DIST parametar u ArduPilotu).
Performanse AIAgro Drona vs Komercijalni Entry-Level
03 Serverska Infrastruktura & Python Obrada
Sustav se vrti u Docker kontejnerima na Raspberry Pi 5. MQTT Broker (Mosquitto) prima binarne pakete, Python skripta ih dekodira koristeći struct biblioteku i bit-shifting operacije, te šalje vremenske serije u InfluxDB. OpenHAB služi za vizualizaciju.
import paho.mqtt.client as mqtt
import struct
import influxdb_client
from influxdb_client.client.write_api import SYNCHRONOUS
# MQTT Konfiguracija
BROKER = "localhost"
TOPIC = "aiagro/sensors/uplink"
# Funkcija za dekodiranje binarnog payloada (Little Endian)
def decode_payload(payload):
# Format: 1B (ID) + 2B (Temp*100) + 1B (Hum) + 2B (Volt)
# struct format '
04 Edge AI & Računalni Vid
Arhitektura & Optimizacija
Koristimo Nvidia Jetson Nano (4GB). Zbog ograničenih resursa, standardni TensorFlow modeli su preteški.
- Model: MobileNetV2-SSD (Single Shot Detector) treniran na custom datasetu "Plamenjača" (2000 slika).
- Optimizacija: Konverzija u TensorRT format (.engine). Ovo spaja slojeve mreže i koristi FP16 preciznost umjesto FP32.
- Rezultat: FPS skok s 4 FPS (TensorFlow) na 18 FPS (TensorRT).
Inferencija u Realnom Vremenu
Skripta koristi OpenCV CUDA podršku.
05 Energetski Sustav & EMI Zaštita
Buck-Boost Stabilizacija
LiFePO4 baterija (4S) ima napon od 14.4V (puna) do 10V (prazna). Motori stvaraju nagle padove napona. Jetson Nano zahtijeva stabilnih 5V/4A. Koristimo XL6009 Buck-Boost konverter koji održava 12V za periferiju i dodatni 5V regulator.
EMI Filtriranje
DC motori stvaraju snažne elektromagnetske smetnje koje ruše I2C sabirnicu. Rješenje uključuje:
- Flyback diode (1N5819) paralelno s motorima.
- Feritni prstenovi na kabelima napajanja Jetsona.
- 100nF keramički kondenzatori lemljeni izravno na terminale motora.
LiFePO4 Krivulja Pražnjenja
LiFePO4 održava stabilan napon duže od olovnih (Lead-Acid) baterija.
06 Pedagogija & ROI Analiza
Problem-Based Learning (PBL) u AIAgro 2025: Inženjerski Izazovi
Mentor Lovro Šverko koristi PBL metodu kako bi potaknuo učenike na razvoj kritičkog razmišljanja i poduzetničkih kompetencija. Ispod su navedeni ključni primjeri "problema" postavljenih pred tim.
"Baterija traje samo 3 dana, a treba trajati 2 godine."
Problem: Senzorski čvor u vinogradu mora raditi autonomno cijelu sezonu, ali inicijalni prototip troši previše energije jer je mikrokontroler stalno aktivan.
Istraživanje učenika: Analiza potrošnje energije u različitim modovima rada (Run vs. Sleep). Proučavanje datasheetova za STM32L4. Kako hardverski potpuno isključiti senzor (npr. SHT31) dok se ne vrši mjerenje?
Inženjerski ishod: Implementacija Deep Sleep ciklusa s RTC alarmom za buđenje. Korištenje P-kanalnog MOSFET-a kao sklopke za napajanje perifernih senzora. Smanjenje prosječne struje s 20mA na 15µA.
"AI model je prespor za dron u letu."
Problem: Trenirani model za detekciju plamenjače radi brzinom od 2 sličice u sekundi (FPS) na Jetson Nano modulu. Dron leti brzinom od 3 m/s, što znači da AI "propusti" veći dio vinograda.
Istraživanje učenika: Što usporava neuronsku mrežu? Razlika između FP32 i FP16 preciznosti. Što je to TensorRT i kako on optimizira slojeve mreže?
Inženjerski ishod: Konverzija modela u .engine format koristeći TensorRT. Optimizacija kroz Layer Fusion i Quantization. Postizanje brzine od 22 FPS, što omogućuje pouzdanu detekciju pri letu.
"Električni šum ruši komunikaciju."
Problem: Svaki put kada se pokrenu motori drona ili robotske platforme, senzori na I2C sabirnici prestaju raditi ili šalju nasumične podatke.
Istraživanje učenika: Što je to EMI (elektromagnetska interferencija)? Kako motori utječu na napone na sabirnicama? Uloga pull-up otpornika i kondenzatora za filtriranje.
Inženjerski ishod: Implementacija feritnih prstenova na kablovima napajanja. Dodavanje Flyback dioda na motore. Korištenje oklopljenih (shielded) kablova za I2C komunikaciju i decoupling kondenzatora na svakom senzoru.
"Kako poljoprivredniku objasniti da mu treba robot od 1500€?"
Problem: Tehničko rješenje je izvrsno, ali poljoprivrednik ga doživljava kao trošak, a ne kao investiciju.
Istraživanje učenika: Koliko košta jedan tretman pesticidima po hektaru? Koliko košta radna snaga za vizualni pregled vinograda? Izračun ROI (Return on Investment) faktora.
Inženjerski/Poduzetnički ishod: Izrada ROI kalkulatora. Dokazivanje da smanjenje upotrebe kemikalija za 25% isplaćuje sustav u dvije sezone. Prezentacija tehničkih podataka kroz poslovne termine (ušteda, optimizacija, profit).
Demonstracija: Kalkulator Uštede
Financijska Projekcija (5 Godina)
"LoRa paket se gubi u gustoj vegetaciji."
Problem: Na otvorenom prostoru domet je 2km, ali unutar vinograda signal nestaje nakon 200 metara.
Istraživanje učenika: Kako frekvencija 868MHz reagira na prepreke i vlagu u lišću? Što je Fresnelova zona? Razlika između omnidirekcijskih i usmjerenih antena.
Inženjerski ishod: Repozicioniranje gateway antene na višu točku (topografska analiza). Promjena Spreading Factora (SF) s SF7 na SF10 kako bi se povećala robusnost signala na uštrb brzine prijenosa, što je prihvatljivo za senzorske podatke.
"Strogo povjerljivi podaci vs. javna mreža."
Problem: Podaci o stanju vinograda su poslovna tajna. Kako osigurati da susjed ne "prisluškuje" stanje vašeg uroda preko LoRa signala?
Istraživanje učenika: AES-128 enkripcija unutar LoRaWAN protokola. Razlika između ABP i OTAA aktivacije uređaja. Kako upravljati ključevima (AppKey, DevEUI)?
Inženjerski ishod: Implementacija OTAA (Over-The-Air Activation) procedure koja dinamički mijenja sesijske ključeve. Osiguravanje MQTT brokera korisničkim imenom i lozinkom uz SSL certifikat.