- This class calculates the magnetic disturbance torque in the
Disturbances
class - This function receives the geomagnetic vector in the body-fixed coordinate system, calculates the cross product with the residual magnetic moment, and returns the residual magnetic torque in the body coordinate system.
magnetic_disturbance.cpp
,magnetic_disturbance.hpp
: Definitions and declarations of the classdisturbance.ini
: Initialization file
- Make an instance of the
MagneticDisturbance
class inInitializeInstances
function indisturbances.cpp
- Create an instance by using the initialization function
InitMagneticDisturbance
- Create an instance by using the initialization function
- Set the parameters in the
disturbance.ini
- Select
ENABLE
forcalculation
andlogging
- Select
This function performs disturbance calculation and torque output simultaneously.
Magnetic disturbance torque is calculated by the following equation.
where
This function calculates the residual magnetic moment(RMM) of the spacecraft. Usually, the RMM is varied by the power state of the components installed in the spacecraft, but this function emulates the variation of the RMM by a random walk process and normal random value.
- implicit inputs
ResidualMagneticMoment
which is the class to manage the following RMM parameters- Standard deviation of the random walk
- Limit of the one-step of the random walk
- Standard deviation of the white noise
- outputs
- (Vector<3>) RMM: the residual magnetic moment in the body-fixed frame [Am2]
The residual magnetic moment is calculated by the following equations.
where
- Check that the magnetic disturbance torque equation is performed correctly.
- PropStepSec: 0.001
- StepTimeSec: 0.1
- EndTimeSec: 300
- Inertia tensor: diag [0.17, 0.1, 0.25]
- Initial Quaternion_i2b: [0,0,0,1]
- Initial torque: [0,0,0]
- Initial angular velocity: [0,0,0]
- Disturbance torque: All Disable except magnetic disturbance torque.
-
RMM = [0.1,0,0]Am2
-
RMM = [0.05,0.05,0.05]Am2
- Check that the RMM equation is performed correctly.
- PropStepSec: 0.001
- StepTimeSec: 0.1
- EndTimeSec: 300
- Inertia tensor: diag [0.17, 0.1, 0.25]
- Initial Quaternion_i2b: [0,0,0,1]
- Initial torque: [0,0,0]
- Initial angular velocity: [0,0,0]
- Disturbance torque: All Disable
- [rmm_random_walk_speed_Am2, rmm_random_walk_limit_Am2, rmm_white_noise_standard_deviation_Am2] = [1E-5,0,0]
- RMM random walk value is much smaller than 1E-5, because random walk limit is 0.
- [rmm_random_walk_speed_Am2, rmm_random_walk_limit_Am2, rmm_white_noise_standard_deviation_Am2] = [1E-5,1E-4,0]
- [rmm_random_walk_speed_Am2, rmm_random_walk_limit_Am2, rmm_white_noise_standard_deviation_Am2] = [0,0,1E-5]
- 姿勢制御研究委員会, 人工衛星の力学と姿勢ハンドブック, 培風館, 2007. (written in Japanese)