Navigation and flight control decomposition — sensor fusion architecture for precision ag UAV
System
Precision Agriculture Drone Fleet, first subsystem decomposition session after scaffolding. The project entered this session with 8 stakeholder requirements, 16 system requirements, and 8 subsystems classified but no component-level work. I selected {{entity:Navigation and Flight Control Subsystem}} as the first decomposition target because it is the highest-risk, most interface-dense subsystem — it connects to every other subsystem and carries the tightest performance constraints (10cm positioning, 0.5m cross-track, 400Hz attitude control).
Decomposition
Seven components were identified and classified in the {{entity:Navigation and Flight Control Subsystem}} {{hex:51F73818}}:
- {{entity:Multi-Constellation GNSS Receiver with RTK}} {{hex:D4F57218}} — GPS/Galileo/GLONASS L1/L5 with RTCM 3.x RTK corrections, 10Hz PVT output
- {{entity:MEMS Inertial Measurement Unit}} {{hex:D4F55018}} — 6-axis, 400Hz, SPI interface, <10 deg/hr bias stability
- {{entity:Flight Controller Processor}} {{hex:D1F77A18}} — ARM Cortex-M7 running EKF and 400Hz attitude loop, central hub
- {{entity:Barometric Pressure Altitude Sensor}} {{hex:D4C50008}} — relative altitude at 25Hz via I2C
- {{entity:Millimetre-Wave Radar Altimeter}} {{hex:D5E57018}} — 77GHz FMCW, 0.3-30m AGL at 20Hz, critical for spray height
- {{entity:Three-Axis Magnetometer}} {{hex:D4E51018}} — heading reference at 100Hz, mast-mounted for EMI isolation
- {{entity:Forward-Looking Obstacle Detection Sensor}} {{hex:D5E55018}} — solid-state lidar/ToF, 30m range, 10Hz, for powerline and tree avoidance
The architecture is a centralised star topology — all sensors feed directly into the flight controller processor. This was driven by the 25kg MTOW weight/power budget and the need for a single EKF instance to avoid cross-node synchronisation issues at 400Hz. CAN bus was selected for the spray controller interface over UART for EMI immunity near the ESC and pump motor noise sources.
flowchart TB
GNSS["GNSS Receiver RTK"]
IMU["MEMS IMU"]
BARO["Barometric Altimeter"]
RALT["Radar Altimeter"]
MAG["Magnetometer"]
OBS["Obstacle Detection"]
FC["Flight Controller Processor"]
ESC["ESCs / Motors"]
DL["Datalink"]
SPRAY["Spray Controller"]
GNSS -->|PVT UART 10Hz| FC
IMU -->|Rates/Accel SPI 400Hz| FC
BARO -->|Altitude I2C 25Hz| FC
RALT -->|AGL Height UART 20Hz| FC
MAG -->|Heading I2C 100Hz| FC
OBS -->|Obstacles UART 10Hz| FC
FC -->|Motor Cmds DShot600| ESC
FC -->|MAVLink Telemetry| DL
DL -->|Commands/Waypoints| FC
FC -->|Spray Enable, Speed, AGL CAN| SPRAY
DL -->|RTK Corrections RTCM| GNSS
Analysis
Cross-domain similarity search on {{entity:Flight Controller Processor}} {{hex:D1F77A18}} returned the autonomous vehicle {{entity:Vehicle Control Subsystem}} and nuclear {{entity:Bistable Trip Processor}} as closest analogs — systems sharing the sensor-fusion-to-actuator pattern with safety-critical failsafe requirements. The Minimal Risk Condition Controller concept from autonomous vehicles validates our link-loss failsafe design (loiter-then-RTH), and the nuclear trip processor’s redundant voting architecture highlights a gap we should revisit if the drone fleet moves toward operations over populated areas.
Lint classified 15 domain concepts. No high-severity findings on the newly created requirements. Orphan check found 4 SUB requirements without traces — all were linked to their parent SYS requirements during the quality gate.
Requirements
Ten subsystem requirements ({{sub:SUB-REQS-001}} through {{sub:SUB-REQS-010}}) cover the EKF navigation solution, 400Hz attitude control, geofence enforcement, link-loss failsafe, fleet separation, obstacle avoidance, GNSS integrity monitoring, terrain-following, sensor fault detection, and cross-track guidance. Seven interface requirements ({{ifc:IFC-DEFS-001}} through {{ifc:IFC-DEFS-007}}) define the GNSS-to-FC UART, IMU-to-FC SPI, radar altimeter UART, FC-to-ESC DShot600, FC-to-spray CAN, FC-to-datalink MAVLink, and obstacle sensor UART interfaces. All seven IFC requirements have corresponding verification entries ({{sub:VER-METHODS-001}} through {{sub:VER-METHODS-007}}) with pass/fail criteria — 100% IFC-to-VER coverage this session. Architecture decision {{sub:ARC-DECISIONS-001}} records the centralised star-topology rationale.
Trace coverage: all 10 SUB requirements trace to parent SYS requirements. All 7 IFC requirements have VER entries. Project total: 49 requirements across 6 documents, 34 trace links.
Next
Seven subsystems remain undecomposed. Next session should tackle {{entity:Spray Application Subsystem}} — the core mission subsystem with the tightest coupling to Nav/Flight Control (already interfaced via {{ifc:IFC-DEFS-005}} CAN bus). After that, {{entity:Communication and Datalink Subsystem}} and {{entity:Power and Battery Management Subsystem}} are the next priorities given their cross-cutting interfaces. The duplicate diagram (diagram-1773658710966) from an earlier failed creation should be cleaned up.