Class IMUSensor
- Namespace
- NominalSystems.Classes
- Assembly
- NominalSystems.Classes.dll
Class for the inertial measurement unit sensor that is able to detect the orientation of the spacecraft.
public class IMUSensor : Sensor
- Inheritance
-
IMUSensor
- Inherited Members
Constructors
IMUSensor()
Default constructor that sets up the sensor
public IMUSensor()
Fields
AccelScale
[-] scale factor for acceleration axes
[EditableVariable("-", false, "", "")]
public Vector3 AccelScale
Field Value
EnableAccelerometer
A flag for enabling / disabling the Accelerometer component
[EditableVariable("-", false, "", "")]
public bool EnableAccelerometer
Field Value
EnableGyroscope
A flag for enabling / disabling the Gyroscope component
[EditableVariable("-", false, "", "")]
public bool EnableGyroscope
Field Value
GyroScale
[-] scale factors for acceleration axes
[EditableVariable("-", false, "", "")]
public Vector3 GyroScale
Field Value
Out_IMUSensorAccelMsg
[-] Output message for IMU accelerometer data
public IMUSensorAccelMessage Out_IMUSensorAccelMsg
Field Value
Out_IMUSensorGyroMsg
[-] Output message for IMU gyroscope data
public IMUSensorGyroMessage Out_IMUSensorGyroMsg
Field Value
PMatrixAccel
[-] Cholesky-decomposition or matrix square root of the covariance matrix to apply errors with
[EditableVariable("-", false, "", "")]
public Matrix3 PMatrixAccel
Field Value
PMatrixGyro
[-] Cholesky-decomposition or matrix square root of the covariance matrix to apply errors with
[EditableVariable("-", false, "", "")]
public Matrix3 PMatrixGyro
Field Value
SensorRotationBias
[r/s] Rotational Sensor bias value
[EditableVariable("rad/s", false, "", "")]
public Vector3 SensorRotationBias
Field Value
SensorRotationMax
[r/s] Gyro saturation value
[EditableVariable("rad/s", false, "", "")]
public double SensorRotationMax
Field Value
SensorTranslationBias
[m/s2] Translational acceleration sensor bias
[EditableVariable("m/s^2", false, "", "")]
public Vector3 SensorTranslationBias
Field Value
SensorTranslationMax
[m/s2] Accelerometer saturation value
[EditableVariable("m/s^2", false, "", "")]
public double SensorTranslationMax
Field Value
WalkBoundsAccel
[-] "3-sigma" errors to permit for states
[EditableVariable("-", false, "", "")]
public Vector3 WalkBoundsAccel
Field Value
WalkBoundsGyro
[-] "3-sigma" errors to permit for states
[EditableVariable("-", false, "", "")]
public Vector3 WalkBoundsGyro
Field Value
Properties
AccelPlatform
[m/s^2] Apparent acceleration of the platform
[EditableVariable("m/s^2", true, "", "")]
public Vector3 AccelPlatform { get; }
Property Value
AngVelPlatform
[rad/s] Angular velocity in platform frame
[EditableVariable("rad/s", true, "", "")]
public Vector3 AngVelPlatform { get; }
Property Value
DRFramePlatform
[rad] Accumulated DRs in platform
[EditableVariable("rad", true, "", "")]
public Vector3 DRFramePlatform { get; }
Property Value
DVFramePlatform
[m/s] Accumulated DVs in platform
[EditableVariable("m/s", true, "", "")]
public Vector3 DVFramePlatform { get; }
Property Value
Methods
OnBegin(double)
Called when the 'Component' is beginning
protected override void OnBegin(double time)
Parameters
time
doublecurrent time (seconds)
OnUpdate(double, double)
Called when the 'Component' should update
protected override void OnUpdate(double time, double step)
Parameters
SetAccelerometerLSB(double)
Updates the LSB values of the discretisations for the Accelerometer
public void SetAccelerometerLSB(double lsb)
Parameters
lsb
doubleThe accelerometer LSB
SetBodyToPlatformDCM(double, double, double)
Set body orientation DCM relative to platform
public void SetBodyToPlatformDCM(double yaw, double pitch, double roll)
Parameters
SetGyroscopeLSB(double)
Updates the LSB values of the discretisations for the Gyroscope
public void SetGyroscopeLSB(double lsb)
Parameters
lsb
doubleThe gyro LSB