DRAFT 2024-2025 Airside system software architecture
- 1 Overview
- 2 System
- 2.1 Workers
- 2.1.1 General
- 2.1.2 Selection of landing location
- 2.1.3 Autonomous landing
- 2.1 Workers
This is a controlled document.
Only the following members may edit:
Autonomy leads
Airside project manager
Xierumeng (I’m leaving the team :surebud:)
If changes are required, contact one of these members on Discord.
Overview
Audience: All members.
The airside system is an autonomous perception-decision-control system that runs on the drone. The airside system implements the multiprocessing worker model: https://uwarg-docs.atlassian.net/wiki/spaces/CV/pages/2589983327
All worker use the local space coordinate system except for Flight interface worker: https://uwarg-docs.atlassian.net/wiki/spaces/CV/pages/2529034495
More information on autonomous systems in general: https://uwarg-docs.atlassian.net/wiki/spaces/CV/pages/2315288675
Additional resources
System
The airside system implements multiprocessing: https://uwarg-docs.atlassian.net/wiki/spaces/CV/pages/2589983327
There are 2 dataflow paths:
A: Selection of landing location
B: Autonomous landing
Key:
Red: Perception
Orange: Tracking
White: Planning
Green: Control (also perception from drone telemetry)
Blue: Not the responsibility of the system
Workers
General
Worker | Description | Task |
---|---|---|
Flight interface worker | Interfaces with the flight controller. The output of the worker is used for perception and decision making; the input is used for controlling the drone. | Task:
|
Video input worker | Interfaces with the camera device. | Task:
|
Detect target worker | Detects objects (if any) in images. | Task:
|
Decision worker | Builds a model of the world and takes action. | Input list is sorted in descending order of confidence (i.e. index 0 is best, 1 is next best, etc.). Task:
TODO CREATE DECISION WORKER DOCUMENT |
Selection of landing location
Worker | Description | Task |
---|---|---|
Data merge worker | Synchronizes telemetry and detected objects. | Task:
|
Geolocation worker | Finds out where the detected object is in the world. | Task:
|
Cluster estimation worker | Estimates the location of objects in the world based on groups of detections. | Input list length is the number of simultaneous detections in a single frame. Task:
|
Autonomous landing
Worker | Description | Task |
---|---|---|
Autonomous landing worker | Lands on selected landing pad. | Task:
|
Â