Avionics
Core avionics package for CURE flight computers
Loading...
Searching...
No Matches
FastLaunchDetector.h
Go to the documentation of this file.
1
#ifndef FAST_LAUNCH_DETECTOR_H
2
#define FAST_LAUNCH_DETECTOR_H
3
// need to figure out how to impliment checking for launch from LaunchDetector
4
#include "
data_handling/CircularArray.h
"
5
#include "
data_handling/DataPoint.h
"
6
#include "
state_estimation/StateEstimationTypes.h
"
7
8
// Potential returns from the update function
9
// Positive values are errors
10
// Negative values are warnings
11
enum
FastLaunchDetectorStatus
{
12
FLD_LAUNCH_DETECTED
= 0,
13
FLD_ALREADY_LAUNCHED
= -1,
14
FLD_ACL_TOO_LOW
= -2,
// The acceleration is too low for launch
15
FLD_DEFAULT_FAIL
= 2,
16
};
17
18
19
class
FastLaunchDetector
20
{
21
public
:
27
FastLaunchDetector
(
float
accelerationThreshold, uint32_t confirmationWindow_ms = 500);
28
29
int
update
(
AccelerationTriplet
accel);
30
31
bool
hasLaunched
()
const
{
return
launched; }
32
uint32_t
getLaunchedTime
()
const
{
return
launchedTime_ms; }
33
uint32_t
getConfirmationWindow
()
const
{
return
confirmationWindow_ms; }
34
void
reset
();
35
36
private
:
37
float
accelerationThresholdSq_ms2;
38
39
bool
launched;
40
uint32_t launchedTime_ms;
41
uint32_t confirmationWindow_ms;
42
};
43
44
45
#endif
CircularArray.h
DataPoint.h
FastLaunchDetectorStatus
FastLaunchDetectorStatus
Definition
FastLaunchDetector.h:11
FLD_ACL_TOO_LOW
@ FLD_ACL_TOO_LOW
Definition
FastLaunchDetector.h:14
FLD_LAUNCH_DETECTED
@ FLD_LAUNCH_DETECTED
Definition
FastLaunchDetector.h:12
FLD_ALREADY_LAUNCHED
@ FLD_ALREADY_LAUNCHED
Definition
FastLaunchDetector.h:13
FLD_DEFAULT_FAIL
@ FLD_DEFAULT_FAIL
Definition
FastLaunchDetector.h:15
StateEstimationTypes.h
FastLaunchDetector::update
int update(AccelerationTriplet accel)
Definition
FastLaunchDetector.cpp:15
FastLaunchDetector::reset
void reset()
Definition
FastLaunchDetector.cpp:50
FastLaunchDetector::getLaunchedTime
uint32_t getLaunchedTime() const
Definition
FastLaunchDetector.h:32
FastLaunchDetector::hasLaunched
bool hasLaunched() const
Definition
FastLaunchDetector.h:31
FastLaunchDetector::getConfirmationWindow
uint32_t getConfirmationWindow() const
Definition
FastLaunchDetector.h:33
FastLaunchDetector::FastLaunchDetector
FastLaunchDetector(float accelerationThreshold, uint32_t confirmationWindow_ms=500)
Definition
FastLaunchDetector.cpp:8
AccelerationTriplet
Definition
StateEstimationTypes.h:6
include
state_estimation
FastLaunchDetector.h
Generated by
1.16.1