2
3
4
5
6
7
8
9
10
11
12
13
14
15
17
18
19
20
22#ifndef MODELS_SENSORS_STAR_TRACKER_H
23#define MODELS_SENSORS_STAR_TRACKER_H
25#include "core/macros.h"
26#include "simulation/Model.h"
27#include "six_dof_dynamics/Euler321.hpp"
28#include "six_dof_dynamics/Quaternion.hpp"
29#include "six_dof_dynamics/DCM.hpp"
30#include "six_dof_dynamics/Frame.hpp"
31#include "models/support/BiasNoiseModel.h"
32#include "monitors/RateMonitor.h"
37
38
39
40
41
42
43
44
45
52
53
56
59
60
63
68
69
72
88
89
92
93
109 StarTracker(
Model &pnt,
const std::string &m_name=
"star_tracker");
111 StarTracker(
Model &pnt,
int schedule_slot,
const std::string &m_name=
"star_tracker");
112 StarTracker(
SimulationExecutive &e,
int schedule_slot,
const std::string &m_name=
"star_tracker");
113 virtual ~StarTracker() {}
Class for inter-object communication.
Definition DataIO.hpp:46
DataIO(GraphTreeObject *data_parent, std::string data_name, T initial_value)
Constructor for the DataIO object.
Definition DataIO.hpp:134
Bias and noise model.
Definition BiasNoiseModel.h:39
Base model class for derived implementation.
Definition Model.h:56
Monitor to trigger at a particular rate.
Definition RateMonitor.h:42
Implementation of the executive class for simulation.
Definition SimulationExecutive.h:63
Star Tracker Model.
Definition StarTracker.h:46
clockwerk::DataIO< clockwerk::Frame< double > * > sensor_frame
Accessor for the sensor's frame.
Definition StarTracker.h:98
RateMonitor _rate_monitor
Rate monitor to control the rate at which the sensor runs.
Definition StarTracker.h:128
modelspace::RateMonitor * rateMonitor()
Accessor for the internal rate monitor model.
Definition StarTracker.h:106
int start()
Function to perform task startup activities (step once after creation)
Definition StarTracker.cpp:67
modelspace::BiasNoiseModel * biasNoiseModel()
Accessor for the internal bias and noise model.
Definition StarTracker.h:102
clockwerk::Frame< double > _sensor_frame
The sensor frame in which all measurements will be taken.
Definition StarTracker.h:122
BiasNoiseModel _sensor_bias_noise
The bias and noise model for sensor output.
Definition StarTracker.h:125
int execute()
Function to execute the task. All math and calculations should be here.
Definition StarTracker.cpp:101
void _configureInternal()
Function to configure sensor – runs in all constructors.
Definition StarTracker.cpp:53
#define SIGNAL(NAME, TYPE, INITIAL_VALUE)
Definition macros.h:87
#define START_PARAMS
Definition macros.h:96
#define CartesianVector3D
Definition macros.h:54
#define END_OUTPUTS
Definition macros.h:90
#define END_PARAMS
Definition macros.h:98
#define DCMD
Definition macros.h:70
#define Euler321D
Definition macros.h:72
#define QuaternionD
Definition macros.h:78
#define START_OUTPUTS
Definition macros.h:88
#define FrameD
Definition macros.h:64
#define END_INPUTS
Definition macros.h:94
#define START_INPUTS
Definition macros.h:92
Class to propagate CR3BP dynamics in characteristic units.
Definition ConfigurationWriter.cpp:18
clockwerk::DataIO< clockwerk::Quaternion< double > > perfect_quat_sf_ref
Definition StarTracker.h:94
clockwerk::DataIO< clockwerk::Quaternion< double > > meas_quat_sf_ref
Definition StarTracker.h:90
clockwerk::DataIO< clockwerk::Frame< double > * > reference_frame
Definition StarTracker.h:70
clockwerk::DataIO< clockwerk::Euler321< double > > gaussian_noise
Definition StarTracker.h:57
clockwerk::DataIO< clockwerk::Euler321< double > > bias
Definition StarTracker.h:54
clockwerk::DataIO< int > rate_hz
Definition StarTracker.h:73
clockwerk::DataIO< int > seed_value
Definition StarTracker.h:75
clockwerk::DataIO< clockwerk::Quaternion< double > > mount_alignment_mf
Definition StarTracker.h:66
clockwerk::DataIO< clockwerk::CartesianVector< double, 3 > > mount_position__mf
Definition StarTracker.h:64
clockwerk::DataIO< clockwerk::Frame< double > * > mount_frame
Definition StarTracker.h:61