mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-07-15 06:20:36 +08:00
SpacecraftRateControl: Remove old battery scaling
This commit is contained in:
@@ -204,26 +204,6 @@ void SpacecraftRateControl::updateRateControl()
|
||||
vehicle_torque_setpoint.xyz[1] = PX4_ISFINITE(torque_sp(1)) ? torque_sp(1) : 0.f;
|
||||
vehicle_torque_setpoint.xyz[2] = PX4_ISFINITE(torque_sp(2)) ? torque_sp(2) : 0.f;
|
||||
|
||||
// scale setpoints by battery status if enabled
|
||||
if (_param_sc_bat_scale_en.get()) {
|
||||
if (_battery_status_sub.updated()) {
|
||||
battery_status_s battery_status;
|
||||
|
||||
if (_battery_status_sub.copy(&battery_status) && battery_status.connected && battery_status.scale > 0.f) {
|
||||
_battery_status_scale = battery_status.scale;
|
||||
}
|
||||
}
|
||||
|
||||
if (_battery_status_scale > 0.f) {
|
||||
for (int i = 0; i < 3; i++) {
|
||||
vehicle_thrust_setpoint.xyz[i] =
|
||||
math::constrain(vehicle_thrust_setpoint.xyz[i] * _battery_status_scale, -1.f, 1.f);
|
||||
vehicle_torque_setpoint.xyz[i] =
|
||||
math::constrain(vehicle_torque_setpoint.xyz[i] * _battery_status_scale, -1.f, 1.f);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
vehicle_thrust_setpoint.timestamp_sample = angular_velocity.timestamp_sample;
|
||||
vehicle_thrust_setpoint.timestamp = hrt_absolute_time();
|
||||
_vehicle_thrust_setpoint_pub.publish(vehicle_thrust_setpoint);
|
||||
|
||||
@@ -81,7 +81,6 @@ private:
|
||||
|
||||
RateControl _rate_control; ///< class for rate control calculations
|
||||
|
||||
uORB::Subscription _battery_status_sub{ORB_ID(battery_status)};
|
||||
uORB::Subscription _control_allocator_status_sub{ORB_ID(control_allocator_status)};
|
||||
uORB::Subscription _manual_control_setpoint_sub{ORB_ID(manual_control_setpoint)};
|
||||
uORB::Subscription _vehicle_control_mode_sub{ORB_ID(vehicle_control_mode)};
|
||||
@@ -153,8 +152,6 @@ private:
|
||||
(ParamFloat<px4::params::SC_ACRO_SUPEXPOY>) _param_sc_acro_supexpoy, /**< superexpo stick curve shape (yaw) */
|
||||
|
||||
(ParamFloat<px4::params::SC_MAN_F_MAX>) _param_sc_manual_f_max,
|
||||
(ParamFloat<px4::params::SC_MAN_T_MAX>) _param_sc_manual_t_max,
|
||||
|
||||
(ParamBool<px4::params::SC_BAT_SCALE_EN>) _param_sc_bat_scale_en
|
||||
(ParamFloat<px4::params::SC_MAN_T_MAX>) _param_sc_manual_t_max
|
||||
)
|
||||
};
|
||||
|
||||
@@ -384,20 +384,6 @@ PARAM_DEFINE_FLOAT(SC_ACRO_SUPEXPO, 0.7f);
|
||||
*/
|
||||
PARAM_DEFINE_FLOAT(SC_ACRO_SUPEXPOY, 0.7f);
|
||||
|
||||
/**
|
||||
* Battery power level scaler
|
||||
*
|
||||
* This compensates for voltage drop of the battery over time by attempting to
|
||||
* normalize performance across the operating range of the battery. The copter
|
||||
* should constantly behave as if it was fully charged with reduced max acceleration
|
||||
* at lower battery percentages. i.e. if hover is at 0.5 throttle at 100% battery,
|
||||
* it will still be 0.5 at 60% battery.
|
||||
*
|
||||
* @boolean
|
||||
* @group Spacecraft Rate Control
|
||||
*/
|
||||
PARAM_DEFINE_INT32(SC_BAT_SCALE_EN, 0);
|
||||
|
||||
/**
|
||||
* Manual mode maximum force.
|
||||
*
|
||||
|
||||
Reference in New Issue
Block a user