...

The entirety of the autopilot consists of 3 threads that each manage a state machine and many other threads that manage sensor data acquisition. The 3 state machines are the Attitude manager; responsible for putting and keeping the aircraft in some desired attitude (roll and pitch) at some desired airspeed, the Path manager; responsible for navigation of the airplane by constantly instructing Attitude manager to achieve certain attitudes and airspeeds, and the Telemetry manager; responsible for all communication with the ground station. At the same time, there will be a thread for each sensor, ensuring data is collected at well timed intervals. The diagram below depicts these threads as well as the communication between them (Black arrows depict inter thread communication while the ticc white arrows depict communication with an external piece of hardware.



Each of these components along with their sub components has an associated architecture page, listed as children of this page. Here is the hierarchy.

Child pages (Children Display)
alltrue
depth100

RTOS

The autopilot software is built on FreeRTOS, an open-source Real-Time Operating System. FreeRTOS gives us the ability to run multiple concurrent threads on a single processor at strict time intervals.

Architecture of all components of autopilot

toc