FIELD STATION · mobile autonomous drone base · engineering dashboard

Energy model — hourly simulation

7-day hourly loop (ADR-0002: Python, not OpenModelica): solar half-sine by peak-sun-hours, battery SoC with 20 % reserve floor, drone-pack charge queue through the 4-slot rack, genset dispatch. 6 gates in tests/energy/.

Throughput & cost (identical both scenarios — throughput is drone-limited, not energy-limited)

180 ha/day
spray throughput
floor 150 · target band 150–250
72 swaps/day
battery swaps (6 drones × 12)
spec §5.1 cycle math
0.73 kWh/ha
energy per hectare
104 + 28 kWh/day
charge + aux demand

Worst month (PSH 4.6)

7.83 h/day
genset runtime
37.3 L/day
0.21 L/ha
genset fuel per hectare
bound ≤ 0.5 L/ha · PASS
cleared daily
charge queue
no overnight backlog
dayspray hmin SoC kWhend SoC kWhgenset hqueue end
0638.338.30.00 (cleared)
1621.825.67.00 (cleared)
2621.824.48.00 (cleared)
3622.224.28.00 (cleared)
4621.923.98.00 (cleared)
5621.723.78.00 (cleared)
6621.723.48.00 (cleared)

Best month (PSH 6.4)

4.5 h/day
genset runtime
21.4 L/day
0.12 L/ha
genset fuel per hectare
cleared daily
charge queue
dayspray hmin SoC kWhend SoC kWhgenset hqueue end
0665.365.30.00 (cleared)
1622.722.70.00 (cleared)
2621.923.95.00 (cleared)
3621.726.66.00 (cleared)
4622.125.95.00 (cleared)
5621.923.85.00 (cleared)
6622.326.56.00 (cleared)

Design finding — genset is co-primary

The original "solar primary, genset backup" framing is false on campaign days: 18 kWp (≈ the physical area cap for roof + wings) yields ~66 kWh worst-month day vs ~132 kWh demand at 180 ha/day. The genset was resized 12→14 kW to cover the 12.2 kW peak concurrent load, and the acceptance bound switched from runtime-hours to fuel per hectare (≤ 0.5 L/ha; actual 0.21). Solar fully carries standby/aux days. Recorded in ADR-0002 amendment.
source: simulation/energy/energy_report.json · parameters/energy.yaml