Make all battery sensor drivers report their sample interval

To make use of the time abstraction in the leaky integrator.
This commit is contained in:
Matthias Grob
2020-05-25 11:04:24 +02:00
parent 4dc9ca69ab
commit 88c21337fa
14 changed files with 48 additions and 22 deletions
+3 -1
View File
@@ -38,7 +38,7 @@ using namespace time_literals;
EscBattery::EscBattery() :
ModuleParams(nullptr),
WorkItem(MODULE_NAME, px4::wq_configurations::lp_default),
_battery(1, this)
_battery(1, this, ESC_BATTERY_INTERVAL_US)
{
}
@@ -50,6 +50,8 @@ EscBattery::init()
return false;
}
_esc_status_sub.set_interval_us(ESC_BATTERY_INTERVAL_US);
return true;
}
+3
View File
@@ -47,6 +47,8 @@
#include <uORB/topics/actuator_controls.h>
#include <battery/battery.h>
using namespace time_literals;
class EscBattery : public ModuleBase<EscBattery>, public ModuleParams, public px4::WorkItem
{
public:
@@ -73,5 +75,6 @@ private:
uORB::Subscription _actuator_ctrl_0_sub{ORB_ID(actuator_controls_0)};
uORB::SubscriptionCallbackWorkItem _esc_status_sub{this, ORB_ID(esc_status)};
static constexpr uint32_t ESC_BATTERY_INTERVAL_US = 20_ms; // assume higher frequency esc feedback than 50Hz
Battery _battery;
};