Class AngularSpeedTriadStaticIntervalDetector
java.lang.Object
com.irurueta.navigation.inertial.calibration.intervals.TriadStaticIntervalDetector<com.irurueta.units.AngularSpeedUnit,com.irurueta.units.AngularSpeed,AngularSpeedTriad,AngularSpeedTriadStaticIntervalDetector,AngularSpeedTriadStaticIntervalDetectorListener>
com.irurueta.navigation.inertial.calibration.intervals.AngularSpeedTriadStaticIntervalDetector
- All Implemented Interfaces:
GyroscopeNoiseRootPsdSource
public class AngularSpeedTriadStaticIntervalDetector
extends TriadStaticIntervalDetector<com.irurueta.units.AngularSpeedUnit,com.irurueta.units.AngularSpeed,AngularSpeedTriad,AngularSpeedTriadStaticIntervalDetector,AngularSpeedTriadStaticIntervalDetectorListener>
implements GyroscopeNoiseRootPsdSource
This detector is in charge of determining when a static period of
angular speed measurements starts and finishes.
Static periods are periods of time where the device is considered
to remain static (no movement applied to it).
-
Nested Class Summary
Nested classes/interfaces inherited from class com.irurueta.navigation.inertial.calibration.intervals.TriadStaticIntervalDetector
TriadStaticIntervalDetector.ErrorReason, TriadStaticIntervalDetector.Status -
Field Summary
Fields inherited from class com.irurueta.navigation.inertial.calibration.intervals.TriadStaticIntervalDetector
DEFAULT_BASE_NOISE_LEVEL_ABSOLUTE_THRESHOLD, DEFAULT_INITIAL_STATIC_SAMPLES, DEFAULT_INSTANTANEOUS_NOISE_LEVEL_FACTOR, DEFAULT_THRESHOLD_FACTOR, DEFAULT_WINDOW_SIZE, MINIMUM_INITIAL_STATIC_SAMPLES -
Constructor Summary
ConstructorsConstructorDescriptionConstructor.Constructor. -
Method Summary
Modifier and TypeMethodDescriptionprotected doubleconvertMeasurement(double value, com.irurueta.units.AngularSpeedUnit unit) Converts provided angular speed value expressed in provided unit to radians per second (rad/s).protected com.irurueta.units.AngularSpeedcreateMeasurement(double value, com.irurueta.units.AngularSpeedUnit unit) Creates an angular speed instance using provided value and unit.protected AngularSpeedTriadcreateTriad(double valueX, double valueY, double valueZ, com.irurueta.units.AngularSpeedUnit unit) Creates an angular speed triad.protected com.irurueta.units.AngularSpeedUnitGets default unit for angular speed, which is radians per second (rad/s).doubleGets gyroscope base noise level root PSD (Power Spectral Density) expressed in (rad * s^-0.5)Methods inherited from class com.irurueta.navigation.inertial.calibration.intervals.TriadStaticIntervalDetector
convertMeasurement, getAccumulatedAvgTriad, getAccumulatedAvgTriad, getAccumulatedAvgX, getAccumulatedAvgXAsMeasurement, getAccumulatedAvgXAsMeasurement, getAccumulatedAvgY, getAccumulatedAvgYAsMeasurement, getAccumulatedAvgYAsMeasurement, getAccumulatedAvgZ, getAccumulatedAvgZAsMeasurement, getAccumulatedAvgZAsMeasurement, getAccumulatedStdTriad, getAccumulatedStdTriad, getAccumulatedStdX, getAccumulatedStdXAsMeasurement, getAccumulatedStdXAsMeasurement, getAccumulatedStdY, getAccumulatedStdYAsMeasurement, getAccumulatedStdYAsMeasurement, getAccumulatedStdZ, getAccumulatedStdZAsMeasurement, getAccumulatedStdZAsMeasurement, getBaseNoiseLevel, getBaseNoiseLevelAbsoluteThreshold, getBaseNoiseLevelAbsoluteThresholdAsMeasurement, getBaseNoiseLevelAbsoluteThresholdAsMeasurement, getBaseNoiseLevelAsMeasurement, getBaseNoiseLevelAsMeasurement, getBaseNoiseLevelPsd, getBaseNoiseLevelRootPsd, getInitialStaticSamples, getInstantaneousAvgTriad, getInstantaneousAvgTriad, getInstantaneousAvgX, getInstantaneousAvgXAsMeasurement, getInstantaneousAvgXAsMeasurement, getInstantaneousAvgY, getInstantaneousAvgYAsMeasurement, getInstantaneousAvgYAsMeasurement, getInstantaneousAvgZ, getInstantaneousAvgZAsMeasurement, getInstantaneousAvgZAsMeasurement, getInstantaneousNoiseLevelFactor, getInstantaneousStdTriad, getInstantaneousStdTriad, getInstantaneousStdX, getInstantaneousStdXAsMeasurement, getInstantaneousStdXAsMeasurement, getInstantaneousStdY, getInstantaneousStdYAsMeasurement, getInstantaneousStdYAsMeasurement, getInstantaneousStdZ, getInstantaneousStdZAsMeasurement, getInstantaneousStdZAsMeasurement, getListener, getProcessedSamples, getStatus, getThreshold, getThresholdAsMeasurement, getThresholdAsMeasurement, getThresholdFactor, getTimeInterval, getTimeIntervalAsTime, getTimeIntervalAsTime, getWindowSize, isRunning, process, process, process, reset, setBaseNoiseLevelAbsoluteThreshold, setBaseNoiseLevelAbsoluteThreshold, setInitialStaticSamples, setInstantaneousNoiseLevelFactor, setListener, setThresholdFactor, setTimeInterval, setTimeInterval, setWindowSize
-
Constructor Details
-
AngularSpeedTriadStaticIntervalDetector
public AngularSpeedTriadStaticIntervalDetector()Constructor.
-
-
Method Details
-
convertMeasurement
protected double convertMeasurement(double value, com.irurueta.units.AngularSpeedUnit unit) Converts provided angular speed value expressed in provided unit to radians per second (rad/s).- Specified by:
convertMeasurementin classTriadStaticIntervalDetector<com.irurueta.units.AngularSpeedUnit,com.irurueta.units.AngularSpeed, AngularSpeedTriad, AngularSpeedTriadStaticIntervalDetector, AngularSpeedTriadStaticIntervalDetectorListener> - Parameters:
value- value to be converted.unit- unit of value to be converted.- Returns:
- converted value.
-
createMeasurement
protected com.irurueta.units.AngularSpeed createMeasurement(double value, com.irurueta.units.AngularSpeedUnit unit) Creates an angular speed instance using provided value and unit.- Specified by:
createMeasurementin classTriadStaticIntervalDetector<com.irurueta.units.AngularSpeedUnit,com.irurueta.units.AngularSpeed, AngularSpeedTriad, AngularSpeedTriadStaticIntervalDetector, AngularSpeedTriadStaticIntervalDetectorListener> - Parameters:
value- value of measurement.unit- unit of value.- Returns:
- created angular speed.
-
getDefaultUnit
protected com.irurueta.units.AngularSpeedUnit getDefaultUnit()Gets default unit for angular speed, which is radians per second (rad/s).- Specified by:
getDefaultUnitin classTriadStaticIntervalDetector<com.irurueta.units.AngularSpeedUnit,com.irurueta.units.AngularSpeed, AngularSpeedTriad, AngularSpeedTriadStaticIntervalDetector, AngularSpeedTriadStaticIntervalDetectorListener> - Returns:
- default unit for angular speed
-
createTriad
protected AngularSpeedTriad createTriad(double valueX, double valueY, double valueZ, com.irurueta.units.AngularSpeedUnit unit) Creates an angular speed triad.- Specified by:
createTriadin classTriadStaticIntervalDetector<com.irurueta.units.AngularSpeedUnit,com.irurueta.units.AngularSpeed, AngularSpeedTriad, AngularSpeedTriadStaticIntervalDetector, AngularSpeedTriadStaticIntervalDetectorListener> - Parameters:
valueX- x-coordinate value.valueY- y-coordinate value.valueZ- z-coordinate value.unit- unit of values.- Returns:
- created triad.
-
getGyroscopeBaseNoiseLevelRootPsd
public double getGyroscopeBaseNoiseLevelRootPsd()Gets gyroscope base noise level root PSD (Power Spectral Density) expressed in (rad * s^-0.5)- Specified by:
getGyroscopeBaseNoiseLevelRootPsdin interfaceGyroscopeNoiseRootPsdSource- Returns:
- gyroscope base noise level root PSD.
-