pub struct BATTERY_STATUS_DATA {Show 14 fields
pub current_consumed: i32,
pub energy_consumed: i32,
pub temperature: i16,
pub voltages: [u16; 10],
pub current_battery: i16,
pub id: u8,
pub battery_function: MavBatteryFunction,
pub mavtype: MavBatteryType,
pub battery_remaining: i8,
pub time_remaining: i32,
pub charge_state: MavBatteryChargeState,
pub voltages_ext: [u16; 4],
pub mode: MavBatteryMode,
pub fault_bitmask: MavBatteryFault,
}dialect-python_array_test only.Expand description
Battery information. Updates GCS with flight controller battery status. Smart batteries also use this message, but may additionally send BATTERY_INFO.
ID: 147
Fields§
§current_consumed: i32Consumed charge, -1: autopilot does not provide consumption estimate
energy_consumed: i32Consumed energy, -1: autopilot does not provide energy consumption estimate
temperature: i16Temperature of the battery. INT16_MAX for unknown temperature.
voltages: [u16; 10]Battery voltage of cells 1 to 10 (see voltages_ext for cells 11-14). Cells in this field above the valid cell count for this battery should have the UINT16_MAX value. If individual cell voltages are unknown or not measured for this battery, then the overall battery voltage should be filled in cell 0, with all others set to UINT16_MAX. If the voltage of the battery is greater than (UINT16_MAX - 1), then cell 0 should be set to (UINT16_MAX - 1), and cell 1 to the remaining voltage. This can be extended to multiple cells if the total voltage is greater than 2 * (UINT16_MAX - 1).
current_battery: i16Battery current, -1: autopilot does not measure the current
id: u8Battery ID
battery_function: MavBatteryFunctionFunction of the battery
mavtype: MavBatteryTypeType (chemistry) of the battery
battery_remaining: i8Remaining battery energy. Values: [0-100], -1: autopilot does not estimate the remaining battery.
time_remaining: i32Remaining battery time, 0: autopilot does not provide remaining battery time estimate
charge_state: MavBatteryChargeStateState for extent of discharge, provided by autopilot for warning or external reactions
voltages_ext: [u16; 4]Battery voltages for cells 11 to 14. Cells above the valid cell count for this battery should have a value of 0, where zero indicates not supported (note, this is different than for the voltages field and allows empty byte truncation). If the measured value is 0 then 1 should be sent instead.
mode: MavBatteryModeBattery mode. Default (0) is that battery mode reporting is not supported or battery is in normal-use mode.
fault_bitmask: MavBatteryFaultFault/health indications. These should be set when charge_state is MAV_BATTERY_CHARGE_STATE_FAILED or MAV_BATTERY_CHARGE_STATE_UNHEALTHY (if not, fault reporting is not supported).
Implementations§
Trait Implementations§
Source§impl<'arbitrary> Arbitrary<'arbitrary> for BATTERY_STATUS_DATA
impl<'arbitrary> Arbitrary<'arbitrary> for BATTERY_STATUS_DATA
Source§fn arbitrary(u: &mut Unstructured<'arbitrary>) -> Result<Self>
fn arbitrary(u: &mut Unstructured<'arbitrary>) -> Result<Self>
Self from the given unstructured data. Read moreSource§fn arbitrary_take_rest(u: Unstructured<'arbitrary>) -> Result<Self>
fn arbitrary_take_rest(u: Unstructured<'arbitrary>) -> Result<Self>
Self from the entirety of the given
unstructured data. Read moreSource§impl Clone for BATTERY_STATUS_DATA
impl Clone for BATTERY_STATUS_DATA
Source§fn clone(&self) -> BATTERY_STATUS_DATA
fn clone(&self) -> BATTERY_STATUS_DATA
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for BATTERY_STATUS_DATA
impl Debug for BATTERY_STATUS_DATA
Source§impl Default for BATTERY_STATUS_DATA
impl Default for BATTERY_STATUS_DATA
Source§impl<'de> Deserialize<'de> for BATTERY_STATUS_DATA
impl<'de> Deserialize<'de> for BATTERY_STATUS_DATA
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl MessageData for BATTERY_STATUS_DATA
impl MessageData for BATTERY_STATUS_DATA
Source§impl PartialEq for BATTERY_STATUS_DATA
impl PartialEq for BATTERY_STATUS_DATA
Source§impl Serialize for BATTERY_STATUS_DATA
impl Serialize for BATTERY_STATUS_DATA
Source§impl TS for BATTERY_STATUS_DATA
impl TS for BATTERY_STATUS_DATA
Source§type WithoutGenerics = BATTERY_STATUS_DATA
type WithoutGenerics = BATTERY_STATUS_DATA
WithoutGenerics should just be Self.
If the type does have generic parameters, then all generic parameters must be replaced with
a dummy type, e.g ts_rs::Dummy or ().
The only requirement for these dummy types is that EXPORT_TO must be None. Read moreSource§type OptionInnerType = BATTERY_STATUS_DATA
type OptionInnerType = BATTERY_STATUS_DATA
std::option::Option<T>, then this associated type is set to T.
All other implementations of TS should set this type to Self instead.Source§fn docs() -> Option<String>
fn docs() -> Option<String>
TS is derived, docs are
automatically read from your doc comments or #[doc = ".."] attributesSource§fn decl_concrete() -> String
fn decl_concrete() -> String
TS::decl().
If this type is not generic, then this function is equivalent to TS::decl().Source§fn decl() -> String
fn decl() -> String
type User = { user_id: number, ... }.
This function will panic if the type has no declaration. Read moreSource§fn inline() -> String
fn inline() -> String
{ user_id: number }.
This function will panic if the type cannot be inlined.Source§fn inline_flattened() -> String
fn inline_flattened() -> String
This function will panic if the type cannot be flattened.
Source§fn visit_generics(v: &mut impl TypeVisitor)where
Self: 'static,
fn visit_generics(v: &mut impl TypeVisitor)where
Self: 'static,
Source§fn output_path() -> Option<PathBuf>
fn output_path() -> Option<PathBuf>
T should be exported.The returned path does not include the base directory from
TS_RS_EXPORT_DIR. Read moreSource§fn visit_dependencies(v: &mut impl TypeVisitor)where
Self: 'static,
fn visit_dependencies(v: &mut impl TypeVisitor)where
Self: 'static,
§fn dependencies() -> Vec<Dependency>where
Self: 'static,
fn dependencies() -> Vec<Dependency>where
Self: 'static,
§fn export() -> Result<(), ExportError>where
Self: 'static,
fn export() -> Result<(), ExportError>where
Self: 'static,
TS::export_all]. Read more§fn export_all() -> Result<(), ExportError>where
Self: 'static,
fn export_all() -> Result<(), ExportError>where
Self: 'static,
To export only this type, without its dependencies, use [
TS::export]. Read more§fn export_all_to(out_dir: impl AsRef<Path>) -> Result<(), ExportError>where
Self: 'static,
fn export_all_to(out_dir: impl AsRef<Path>) -> Result<(), ExportError>where
Self: 'static,
To export only this type, without its dependencies, use [
TS::export]. Read more§fn export_to_string() -> Result<String, ExportError>where
Self: 'static,
fn export_to_string() -> Result<String, ExportError>where
Self: 'static,
§fn default_output_path() -> Option<PathBuf>
fn default_output_path() -> Option<PathBuf>
T should be exported. Read more