High Level Architecture
At a high level, the behavior of the OBC can be described as a state machine. Each of these states defines what the plane should be doing at any given moment. We call each of these states a Tick, because a Tick is defined by a tick function: a piece of code that executes at a configurable interval (a tick). By creating a graph of Ticks we can define the precise ways that the mission can proceed which is both easy to modularize, conceptualize, and extend to future competition changes. The following image shows the graph in its entirety.
Here is a key for the various colors used in the diagram:
- Red: "Setup" Ticks.
- Green: "Mission" Ticks.
- Yellow: "Conclusion" Ticks.
- Dark Blue: Parameters for specific states to change their behavior.
Ticks
To understand how to create your own tick, you can read this page. To read about a specific tick, check the corresponding page below:
- Mission Prep
- Path Gen
- Path Validate
- Mav Upload
- (NOT YET IMPLEMENTED) Takeoff
- (NOT YET IMPLEMENTED) Fly Waypoints
- (NOT YET IMPLEMENTED) Fly Search
- (NOT YET IMPLEMENTED) CV Loiter
- (NOT YET IMPLEMENTED) Airdrop Prep
- (NOT YET IMPLEMENTED) Airdrop Approach
- (NOT YET IMPLEMENTED) Manual Landing
- (NOT YET IMPLEMENTED) Auto Landing
- (NOT YET IMPLEMENTED) Mission Done