[−][src]Struct mai400_api::RotatingTelemetry
Structure to contain all possible variables which can be returned
by the standard telemetry message's rotating_variable
fields
Fields
b_field_igrf: [f32; 3]
IGRF magnetic fields (X, Y, Z) (Tesla)
sun_vec_eph: [f32; 3]
ECI Sun Vector from Ephemeris (X, Y, Z) (Unit)
sc_pos_eci: [f32; 3]
ECI Spacecraft Position (X, Y, Z) (km)
sc_vel_eci: [f32; 3]
ECI Spacecraft Velocity (X, Y, Z) (km)
kepler_elem: KeplerElem
Keplerian elements
k_bdot: [f32; 3]
Bdot Gain Acquisition Mode (X, Y, Z)
kp: [f32; 3]
Proportional Gain Normal Mode (X, Y, Z)
kd: [f32; 3]
Derivative Gain Normal Mode (X, Y, Z)
k_unload: [f32; 3]
Unloading Gain Normal Mode (X, Y, Z)
css_bias: [i16; 6]
CSS{n} Bias (1, 2, 3, 4, 5, 6)
mag_bias: [i16; 3]
MAG Bias (X, Y, Z)
rws_volt: i16
RWS Bus Voltage (0.00483516483 v/lsb)
rws_press: i16
Reserved
att_det_mode: u8
Attitude Determination Mode
rws_reset_cntr: [u8; 3]
RWS Reset Counter (X, Y, Z)
sun_mag_aligned: u8
Sun and Mag Field are aligned
minor_version: u8
Software Minor Version
mai_sn: u8
Software Unit Serial Number
orbit_prop_mode: u8
Orbit Propagation Mode
acs_op_mode: u8
ACS Mode in Operation
proc_reset_cntr: u8
ADACS Processor Reset Counter
major_version: u8
Software Major Version
ads_op_mode: u8
ADS Mode in Operation
css_gain: [f32; 6]
CSS{n} Gain (1, 2, 3, 4, 5, 6)
mag_gain: [f32; 3]
Mag Gain (X, Y, Z)
orbit_epoch: u32
Epoch of Current Orbit (GPS sec)
true_anomoly_epoch: f32
True Anomaly at Epoch – Kepler (deg)
orbit_epoch_next: u32
Epoch of Next Updated RV (GPS sec)
sc_pos_eci_epoch: [f32; 3]
ECI Position at Next Epoch (X, Y, Z) (km)
sc_vel_eci_epoch: [f32; 3]
ECI Velocity at Next Epoch (X, Y, Z) (km/sec)
qb_x_wheel_speed: i16
QbX Wheel Speed Command (rpm)
qb_x_filter_gain: f32
QbX Filter Gain
qb_x_dipole_gain: f32
QbX Dipole Gain
dipole_gain: [f32; 3]
Dipole Gain (X, Y, Z)
wheel_speed_bias: [i16; 3]
Wheel Speed Bias (X, Y, Z) (rpm)
cos_sun_mag_align_thresh: f32
Cosine of Sun/Mag Align Threshold Angle
unload_ang_thresh: f32
Max AngleToGo for Unloading (rad)
q_sat: f32
Quaternion feedback saturation.
rwa_trq_max: f32
Maximum RWA Torque (mNm)
rws_motor_current: [u16; 3]
Reaction Wheel Motor Current (X, Y, Z) (A) (0.0003663003663 A/lsb)
rws_motor_temp: i16
RWS Motor Temperature (Temperature oC = rwsMotorTemp * 0.0402930 - 50)
Methods
impl RotatingTelemetry
[src]
impl RotatingTelemetry
pub fn update(&mut self, msg: &StandardTelemetry)
[src]
pub fn update(&mut self, msg: &StandardTelemetry)
Extract the self variables from a standard telemetry message and update
the appropriate corresponding fields in a selfTelemetry
structure
Arguments
- msg - Standard telemetry message to extract variables from
- self - self variables structure to copy extracted data into
Errors
If errors are encountered, the structure will not be updated
Examples
let mai = MAI400::new("/dev/ttyS5")?; let mut rotating = RotatingTelemetry::default(); let (std, _imu, _irehs) = mai.get_message()?; if std.is_some() { rotating.update(&std.unwrap()); }
Trait Implementations
impl Default for RotatingTelemetry
[src]
impl Default for RotatingTelemetry
fn default() -> RotatingTelemetry
[src]
fn default() -> RotatingTelemetry
impl PartialEq<RotatingTelemetry> for RotatingTelemetry
[src]
impl PartialEq<RotatingTelemetry> for RotatingTelemetry
fn eq(&self, other: &RotatingTelemetry) -> bool
[src]
fn eq(&self, other: &RotatingTelemetry) -> bool
fn ne(&self, other: &RotatingTelemetry) -> bool
[src]
fn ne(&self, other: &RotatingTelemetry) -> bool
impl Clone for RotatingTelemetry
[src]
impl Clone for RotatingTelemetry
fn clone(&self) -> RotatingTelemetry
[src]
fn clone(&self) -> RotatingTelemetry
fn clone_from(&mut self, source: &Self)
1.0.0[src]
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
impl Debug for RotatingTelemetry
[src]
impl Debug for RotatingTelemetry
Auto Trait Implementations
impl Send for RotatingTelemetry
impl Send for RotatingTelemetry
impl Sync for RotatingTelemetry
impl Sync for RotatingTelemetry
Blanket Implementations
impl<T, U> Into for T where
U: From<T>,
[src]
impl<T, U> Into for T where
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
impl<T> ToOwned for T where
T: Clone,
impl<T> From for T
[src]
impl<T> From for T
impl<T, U> TryFrom for T where
T: From<U>,
[src]
impl<T, U> TryFrom for T where
T: From<U>,
type Error = !
try_from
)The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
impl<T> Borrow for T where
T: ?Sized,
[src]
impl<T> Borrow for T where
T: ?Sized,
impl<T> Any for T where
T: 'static + ?Sized,
[src]
impl<T> Any for T where
T: 'static + ?Sized,
fn get_type_id(&self) -> TypeId
[src]
fn get_type_id(&self) -> TypeId
impl<T, U> TryInto for T where
U: TryFrom<T>,
[src]
impl<T, U> TryInto for T where
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
try_from
)The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
impl<T> BorrowMut for T where
T: ?Sized,
[src]
impl<T> BorrowMut for T where
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
fn borrow_mut(&mut self) -> &mut T