Class CoarseSunSensor
- Namespace
- NominalSystems.Classes
- Assembly
- NominalSystems.Classes.dll
[Nominal] Defines a sensor that is able to detect the orientation of the Sun in reference to the body that implements such a sensor.
public class CoarseSunSensor : Sensor
- Inheritance
-
CoarseSunSensor
Constructors
CoarseSunSensor()
Default constructor
protected CoarseSunSensor()
Fields
In_AlbedoMsg
A reference to the albedo message which will be connected via the albedo model.
public AlbedoMessage? In_AlbedoMsg
Field Value
In_EclipseMsg
A reference to the eclipse message which is for the state of visibility with the sun.
public EclipseMessage? In_EclipseMsg
Field Value
In_SunSpicePlanetStateMsg
Input message for sun data
public SpicePlanetStateMessage? In_SunSpicePlanetStateMsg
Field Value
Out_CSSConfigMsg
Output message for CSS configuration log data
public CSSConfigMessage? Out_CSSConfigMsg
Field Value
Out_CSSDataMsg
Output message for CSS output data
public CSSDataMessage? Out_CSSDataMsg
Field Value
SunDirection_B
Unit vector to sun in body frame components
[Unit(UnitType.NONE)]
[ReadOnly]
[Metadata(IsAdvanced = true)]
public Vector3 SunDirection_B
Field Value
Properties
Bias
Sensor bias value
[Unit(UnitType.NONE)]
[Range(0, 1.7976931348623157E+308)]
[Metadata(IsAdvanced = true, ContainedIn = "Out_CSSConfigMsg")]
public double Bias { get; set; }
Property Value
Direction_B
CSS unit direction vector in body frame components
[Unit(UnitType.NONE)]
[ReadOnly]
[Metadata(IsAdvanced = true)]
public Vector3 Direction_B { get; }
Property Value
FOV
Field of view half angle
[Unit(UnitType.DEGREE)]
[Range(0, 360)]
[Metadata(ContainedIn = "Out_CSSConfigMsg")]
public double FOV { get; set; }
Property Value
KellyCurveFit
Kelly curve fit for output cosine curve
[Unit(UnitType.NONE)]
[Range(0, 1.7976931348623157E+308)]
[Metadata(IsAdvanced = true, ContainedIn = "Out_CSSConfigMsg")]
public double KellyCurveFit { get; set; }
Property Value
MaxSignal
Maximum output (ceiling) for saturation application
[Unit(UnitType.NONE)]
[Range(0, 1.7976931348623157E+308)]
[Metadata(ContainedIn = "Out_CSSConfigMsg")]
public double MaxSignal { get; set; }
Property Value
MinSignal
Minimum output (floor) for saturation application
[Unit(UnitType.NONE)]
[Range(0, 1.7976931348623157E+308)]
[Metadata(ContainedIn = "Out_CSSConfigMsg")]
public double MinSignal { get; set; }
Property Value
NoiseStd
Sensor noise value
[Unit(UnitType.NONE)]
[Range(0, 1.7976931348623157E+308)]
[Metadata(IsAdvanced = true, ContainedIn = "Out_CSSConfigMsg")]
public double NoiseStd { get; set; }
Property Value
ScaleFactor
Scale factor applied to sensor (common + individual multipliers)
[Unit(UnitType.NONE)]
[Range(0, 1.7976931348623157E+308)]
[Metadata(IsAdvanced = true, ContainedIn = "Out_CSSConfigMsg")]
public double ScaleFactor { get; set; }
Property Value
SensedValue
Total measurement including perturbations
[Unit(UnitType.NONE)]
[ReadOnly]
[Metadata(ContainedIn = "Out_CSSDataMsg", ContainedName = "Sensed")]
public double SensedValue { get; }
Property Value
Methods
OnBegin(double)
Called when the object is beginning ticking for the first time. This is when the simulation calls the very first tick and will run before the update call.
protected override void OnBegin(double time)
Parameters
time
double[s] Current time of the simulation before the tick
OnCreate()
Called when the 'Component' is created from the controller.
protected override void OnCreate()
OnLoad(double)
Called after all of the data has been loaded from a save state on this object. This enables any post-load operations to be performed and extra data to be loaded from the metadata.
protected override void OnLoad(double time)
Parameters
time
double[s] The current clock time of the simulation
OnUpdate(double, double)
Called when the object should update from the simulation tick. This will take in a time and a step, where the time is the time of the clock before updating the object.
protected override void OnUpdate(double time, double step)