Avionics
Core avionics package for CURE flight computers
Loading...
Searching...
No Matches
BurnoutStateMachine.h
Go to the documentation of this file.
1#ifndef BASM_STATE_MACHINE_H
2#define BASM_STATE_MACHINE_H
3
6
12
19 public:
28 BurnoutStateMachine(IDataSaver* dataSaver, LaunchDetector* launchDetector, ApogeeDetector* apogeeDetector,
29 VerticalVelocityEstimator* verticalVelocityEstimator);
30
38 int update(const AccelerationTriplet& accel, const DataPoint& alt) override;
39
40 private:
41 IDataSaver* dataSaver_;
42 LaunchDetector* launchDetector_;
43 ApogeeDetector* apogeeDetector_;
44 VerticalVelocityEstimator* verticalVelocityEstimator_;
45};
46
47
48#endif
Detects the apogee (peak altitude) of a rocket flight using estimated altitude and vertical velocity.
BaseStateMachine(FlightState initialState=STATE_UNARMED)
int update(const AccelerationTriplet &accel, const DataPoint &alt) override
Update machine with new sensor inputs and transition on burnout cues.
BurnoutStateMachine(IDataSaver *dataSaver, LaunchDetector *launchDetector, ApogeeDetector *apogeeDetector, VerticalVelocityEstimator *verticalVelocityEstimator)
Construct with logging and detector dependencies.
Timestamped float measurement container.
Definition DataPoint.h:11
Abstract interface for persisting timestamped data points.
Definition DataSaver.h:13
Sliding-window launch detector based on acceleration magnitude.
1D Kalman filter fusing altimeter and accelerometer data.