mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-11-05 01:21:35 +08:00
MCAttitudeController: remove reset of yaw_sp when landed
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
This commit is contained in:
@@ -52,7 +52,6 @@
|
|||||||
#include <uORB/topics/vehicle_control_mode.h>
|
#include <uORB/topics/vehicle_control_mode.h>
|
||||||
#include <uORB/topics/vehicle_rates_setpoint.h>
|
#include <uORB/topics/vehicle_rates_setpoint.h>
|
||||||
#include <uORB/topics/vehicle_status.h>
|
#include <uORB/topics/vehicle_status.h>
|
||||||
#include <uORB/topics/vehicle_land_detected.h>
|
|
||||||
#include <lib/mathlib/math/filter/AlphaFilter.hpp>
|
#include <lib/mathlib/math/filter/AlphaFilter.hpp>
|
||||||
|
|
||||||
#include <AttitudeControl.hpp>
|
#include <AttitudeControl.hpp>
|
||||||
@@ -101,7 +100,6 @@ private:
|
|||||||
uORB::Subscription _vehicle_attitude_setpoint_sub{ORB_ID(vehicle_attitude_setpoint)}; /**< vehicle attitude setpoint subscription */
|
uORB::Subscription _vehicle_attitude_setpoint_sub{ORB_ID(vehicle_attitude_setpoint)}; /**< vehicle attitude setpoint subscription */
|
||||||
uORB::Subscription _vehicle_control_mode_sub{ORB_ID(vehicle_control_mode)}; /**< vehicle control mode subscription */
|
uORB::Subscription _vehicle_control_mode_sub{ORB_ID(vehicle_control_mode)}; /**< vehicle control mode subscription */
|
||||||
uORB::Subscription _vehicle_status_sub{ORB_ID(vehicle_status)}; /**< vehicle status subscription */
|
uORB::Subscription _vehicle_status_sub{ORB_ID(vehicle_status)}; /**< vehicle status subscription */
|
||||||
uORB::Subscription _vehicle_land_detected_sub{ORB_ID(vehicle_land_detected)}; /**< vehicle land detected subscription */
|
|
||||||
|
|
||||||
uORB::SubscriptionCallbackWorkItem _vehicle_attitude_sub{this, ORB_ID(vehicle_attitude)};
|
uORB::SubscriptionCallbackWorkItem _vehicle_attitude_sub{this, ORB_ID(vehicle_attitude)};
|
||||||
|
|
||||||
@@ -124,7 +122,6 @@ private:
|
|||||||
hrt_abstime _last_run{0};
|
hrt_abstime _last_run{0};
|
||||||
hrt_abstime _last_attitude_setpoint{0};
|
hrt_abstime _last_attitude_setpoint{0};
|
||||||
|
|
||||||
bool _landed{true};
|
|
||||||
bool _reset_yaw_sp{true};
|
bool _reset_yaw_sp{true};
|
||||||
bool _vehicle_type_rotary_wing{true};
|
bool _vehicle_type_rotary_wing{true};
|
||||||
bool _vtol{false};
|
bool _vtol{false};
|
||||||
|
|||||||
@@ -272,14 +272,6 @@ MulticopterAttitudeControl::Run()
|
|||||||
_manual_control_setpoint_sub.update(&_manual_control_setpoint);
|
_manual_control_setpoint_sub.update(&_manual_control_setpoint);
|
||||||
_vehicle_control_mode_sub.update(&_vehicle_control_mode);
|
_vehicle_control_mode_sub.update(&_vehicle_control_mode);
|
||||||
|
|
||||||
if (_vehicle_land_detected_sub.updated()) {
|
|
||||||
vehicle_land_detected_s vehicle_land_detected;
|
|
||||||
|
|
||||||
if (_vehicle_land_detected_sub.copy(&vehicle_land_detected)) {
|
|
||||||
_landed = vehicle_land_detected.landed;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (_vehicle_status_sub.updated()) {
|
if (_vehicle_status_sub.updated()) {
|
||||||
vehicle_status_s vehicle_status;
|
vehicle_status_s vehicle_status;
|
||||||
|
|
||||||
@@ -345,7 +337,7 @@ MulticopterAttitudeControl::Run()
|
|||||||
|
|
||||||
// reset yaw setpoint during transitions, tailsitter.cpp generates
|
// reset yaw setpoint during transitions, tailsitter.cpp generates
|
||||||
// attitude setpoint for the transition
|
// attitude setpoint for the transition
|
||||||
_reset_yaw_sp = !attitude_setpoint_generated || _landed || (_vtol && _vtol_in_transition_mode);
|
_reset_yaw_sp = !attitude_setpoint_generated || (_vtol && _vtol_in_transition_mode);
|
||||||
}
|
}
|
||||||
|
|
||||||
perf_end(_loop_perf);
|
perf_end(_loop_perf);
|
||||||
|
|||||||
Reference in New Issue
Block a user