Struct mavlink::common::BATTERY_STATUS_DATA
source · 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,
}
common
only.Expand description
id: 147 Battery information. Updates GCS with flight controller battery status. Smart batteries also use this message, but may additionally send SMART_BATTERY_INFO..
Fields§
§current_consumed: i32
Consumed charge, -1: autopilot does not provide consumption estimate.
energy_consumed: i32
Consumed energy, -1: autopilot does not provide energy consumption estimate.
temperature: i16
Temperature 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: i16
Battery current, -1: autopilot does not measure the current.
id: u8
Battery ID.
battery_function: MavBatteryFunction
Function of the battery.
mavtype: MavBatteryType
Type (chemistry) of the battery.
battery_remaining: i8
Remaining battery energy. Values: [0-100], -1: autopilot does not estimate the remaining battery..
time_remaining: i32
Remaining battery time, 0: autopilot does not provide remaining battery time estimate.
charge_state: MavBatteryChargeState
State 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: MavBatteryMode
Battery mode. Default (0) is that battery mode reporting is not supported or battery is in normal-use mode..
fault_bitmask: MavBatteryFault
Fault/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§
source§impl BATTERY_STATUS_DATA
impl BATTERY_STATUS_DATA
pub const ENCODED_LEN: usize = 54usize
pub const DEFAULT: Self = _
Trait Implementations§
source§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
const ID: u32 = 147u32
const NAME: &'static str = "BATTERY_STATUS"
const EXTRA_CRC: u8 = 154u8
const ENCODED_LEN: usize = 54usize
type Message = MavMessage
fn deser(_version: MavlinkVersion, __input: &[u8]) -> Result<Self, ParserError>
fn ser(&self, version: MavlinkVersion, bytes: &mut [u8]) -> usize
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
impl StructuralPartialEq for BATTERY_STATUS_DATA
Auto Trait Implementations§
impl Freeze for BATTERY_STATUS_DATA
impl RefUnwindSafe for BATTERY_STATUS_DATA
impl Send for BATTERY_STATUS_DATA
impl Sync for BATTERY_STATUS_DATA
impl Unpin for BATTERY_STATUS_DATA
impl UnwindSafe for BATTERY_STATUS_DATA
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)