Spaceshot Flight Software
The Illinois Space Society's Homemade Rocket Firmware
|
Public Member Functions | |
HistoryBufferFSM50 (pointers *) | |
Constructor for HistoryBufferFSM50 class. More... | |
virtual void | tickFSM () override |
HistoryBufferFSM50 tick function. More... | |
Public Member Functions inherited from RocketFSM | |
FSM_State | getFSMState () const |
Additional Inherited Members | |
Public Types inherited from RocketFSM | |
enum class | FSM_State { STATE_INIT , STATE_IDLE , STATE_LAUNCH_DETECT , STATE_BOOST , STATE_BURNOUT_DETECT , STATE_COAST_PREGNC , STATE_COAST_GNC , STATE_APOGEE_DETECT , STATE_APOGEE , STATE_DROGUE_DETECT , STATE_DROGUE , STATE_MAIN_DETECT , STATE_MAIN , STATE_LANDED_DETECT , STATE_LANDED , STATE_ABORT } |
Labels for each FSM state. Contains intermediary states (eg: Launch Detect) along with actual states (eg: Boost) | |
Protected Attributes inherited from RocketFSM | |
FSM_State | rocket_state_ = FSM_State::STATE_INIT |
HistoryBufferFSM50::HistoryBufferFSM50 | ( | pointers * | ptr | ) |
Constructor for HistoryBufferFSM50 class.
pointers | Taking the pointer struct as an input, we define member variables that point to different data members of pointer struct. This improves readability while also allowing the rocketFSM class to modify values in the global pointer struct. |
|
overridevirtual |
HistoryBufferFSM50 tick function.
Uses a combination of linear acceleration and timers to govern FSM state changes for each timestep of the rocket's flight.
Implements RocketFSM.