![]() |
Paparazzi UAS v7.0_unstable
Paparazzi is a free software Unmanned Aircraft System.
|
Power sensors on the uavcan bus. More...
#include "power_uavcan.h"
#include "uavcan/uavcan.h"
#include "modules/energy/electrical.h"
#include "math/pprz_random.h"
#include "uavcan.equipment.power.BatteryInfo.h"
#include "uavcan.equipment.power.CircuitStatus.h"
#include "modules/datalink/telemetry.h"
Go to the source code of this file.
Data Structures | |
struct | battery_info |
struct | circuit_status |
struct | uavcan_circuit_battery_t |
Macros | |
#define | POWER_UAVCAN_BATTERIES_MAX 3 |
#define | POWER_UAVCAN_CIRCUITS_MAX 15 |
#define | POWER_UAVCAN_BATTERY_CIRCUITS {} |
Functions | |
static void | power_uavcan_send_power_device (struct transport_tx *trans, struct link_device *dev) |
static void | power_uavcan_battery_cb (struct uavcan_iface_t *iface, CanardRxTransfer *transfer) |
static void | power_uavcan_circuit_cb (struct uavcan_iface_t *iface, CanardRxTransfer *transfer) |
void | power_uavcan_init (void) |
Variables | |
static uavcan_event | power_uavcan_ev |
static uavcan_event | circuit_uavcan_ev |
static struct battery_info | batteries [POWER_UAVCAN_BATTERIES_MAX] = {0} |
static struct circuit_status | circuits [POWER_UAVCAN_CIRCUITS_MAX] = {0} |
static struct uavcan_circuit_battery_t | battery_circuits [] = POWER_UAVCAN_BATTERY_CIRCUITS |
Power sensors on the uavcan bus.
Definition in file power_uavcan.c.
struct battery_info |
Definition at line 53 of file power_uavcan.c.
Data Fields | ||
---|---|---|
struct uavcan_equipment_power_BatteryInfo | info | |
uint8_t | node_id | |
bool | set |
struct circuit_status |
Definition at line 61 of file power_uavcan.c.
Data Fields | ||
---|---|---|
bool | is_battery | |
uint8_t | node_id | |
bool | set | |
struct uavcan_equipment_power_CircuitStatus | status |
struct uavcan_circuit_battery_t |
Definition at line 73 of file power_uavcan.c.
Data Fields | ||
---|---|---|
uint16_t | circuit_id | |
uint8_t | node_id |
#define POWER_UAVCAN_BATTERIES_MAX 3 |
Definition at line 36 of file power_uavcan.c.
#define POWER_UAVCAN_BATTERY_CIRCUITS {} |
Definition at line 46 of file power_uavcan.c.
#define POWER_UAVCAN_CIRCUITS_MAX 15 |
Definition at line 41 of file power_uavcan.c.
|
static |
Definition at line 102 of file power_uavcan.c.
References batteries, Electrical::current, electrical, foo, battery_info::info, msg, battery_info::node_id, POWER_UAVCAN_BATTERIES_MAX, battery_info::set, transfer(), and Electrical::vsupply.
Referenced by power_uavcan_init().
|
static |
Definition at line 146 of file power_uavcan.c.
References circuits, Electrical::current, electrical, foo, circuit_status::is_battery, msg, circuit_status::node_id, POWER_UAVCAN_CIRCUITS_MAX, circuit_status::set, circuit_status::status, transfer(), and Electrical::vsupply.
Referenced by power_uavcan_init().
Definition at line 190 of file power_uavcan.c.
References battery_circuits, uavcan_circuit_battery_t::circuit_id, circuit_uavcan_ev, circuits, DefaultPeriodic, foo, init_random(), circuit_status::is_battery, circuit_status::node_id, uavcan_circuit_battery_t::node_id, power_uavcan_battery_cb(), power_uavcan_circuit_cb(), power_uavcan_ev, power_uavcan_send_power_device(), register_periodic_telemetry(), circuit_status::set, circuit_status::status, and uavcan_bind().
|
static |
Definition at line 82 of file power_uavcan.c.
References circuits, dev, foo, idx, uavcan_circuit_battery_t::node_id, POWER_UAVCAN_CIRCUITS_MAX, rand_uniform(), status, and circuit_status::status.
Referenced by power_uavcan_init().
|
static |
Definition at line 69 of file power_uavcan.c.
Referenced by power_uavcan_battery_cb().
|
static |
Definition at line 77 of file power_uavcan.c.
Referenced by power_uavcan_init().
|
static |
Definition at line 51 of file power_uavcan.c.
Referenced by power_uavcan_init().
|
static |
Definition at line 70 of file power_uavcan.c.
Referenced by power_uavcan_circuit_cb(), power_uavcan_init(), and power_uavcan_send_power_device().
|
static |
Definition at line 50 of file power_uavcan.c.
Referenced by power_uavcan_init().