49#ifndef MODELS_ACTUATORS_REACTION_WHEEL_MODEL_H
50#define MODELS_ACTUATORS_REACTION_WHEEL_MODEL_H
74 MODEL(ReactionWheelModel)
86 SIGNAL(quat_wheel_body, clockwerk::Quaternion, clockwerk::Quaternion({1.0, 0.0, 0.0, 0.0}))
88 SIGNAL(torque_bias,
double, 0.0)
91 SIGNAL(torque_noise_std,
double, 0.0)
97 SIGNAL(mom_inertia,
double, 0.0)
99 SIGNAL(rad_tolerance,
double, 0.0)
101 SIGNAL(peak_torque,
double, 0.0)
103 SIGNAL(momentum_cap,
double, 0.0)
105 SIGNAL(power,
double, 0.0)
107 SIGNAL(operational,
bool, true)
114 SIGNAL(torque_com,
double, 0.0)
121 SIGNAL(momentum,
double, 0.0)
123 SIGNAL(saturated,
bool, false)
125 SIGNAL(wheel_speed,
double, 0.0)
127 SIGNAL(power_draw,
double, 0.0)
129 SIGNAL(applied_torque,
double, 0.0)
133 int16
start() override;
#define SIGNAL(NAME, TYPE, INITIAL_VALUE)
Definition appmacros.h:27
#define START_PARAMS
Definition appmacros.h:42
#define END_OUTPUTS
Definition appmacros.h:33
#define END_PARAMS
Definition appmacros.h:47
#define START_OUTPUTS
Definition appmacros.h:28
#define END_INPUTS
Definition appmacros.h:40
#define START_INPUTS
Definition appmacros.h:35
Class to define a body as a frame with mass and inertia.
Definition Body.h:44
Node class to apply forces and moments to frames.
Definition Node.h:44
#define CartesianVector3
Definition mathmacros.h:43
#define Matrix3
Definition mathmacros.h:29
Class to propagate CR3BP dynamics in characteristic units.
Definition statistics.hpp:22
int16 start() override
Class to execute logging.
SIGNAL(_mu, double, warpos::earth_wgs84.mu)
double _total_torque
Value to hold total torque calculation.
Definition ReactionWheelModel.h:149
BiasNoiseModel _torque_bias_noise
The bias and noise model for torque output.
Definition ReactionWheelModel.h:137
double _torque_perturbation
Value to hold perturbation to torque.
Definition ReactionWheelModel.h:146
Matrix3 _mom_inertia_tensor
Matrix to hold the moment of inertia tensor of the wheel.
Definition ReactionWheelModel.h:143
@ MODEL
Simplified dynamics model representing motion in the circular restricted 3 body problem.
Definition ImNode.h:31
double _rps_to_rpm
Conversion between radians per second and revolutions per minute.
Definition ReactionWheelModel.h:152
Node _wheel_node
The reaction wheel node.
Definition ReactionWheelModel.h:140
int16 execute() override
Function to check monitor input conditions and set trigger flag accordingly. Should be implemented in...
bool _prev_com
Boolean to store the previous operational state.
Definition ReactionWheelModel.h:155
const floating_point M_PI
Definition unitutils.h:32