mirror of
https://github.com/PX4/PX4-Autopilot.git
synced 2026-06-02 03:49:12 +08:00
vtol_att_control: apply multicopter takeoff hotfix also for vtol (#12250)
Please see reference: https://github.com/PX4/Firmware/issues/12171
This commit is contained in:
committed by
Daniel Agar
parent
ea48cd4970
commit
0c110a4443
@@ -521,7 +521,7 @@ MulticopterAttitudeControl::control_attitude()
|
|||||||
{
|
{
|
||||||
vehicle_attitude_setpoint_poll();
|
vehicle_attitude_setpoint_poll();
|
||||||
|
|
||||||
// reinitialize the setpoint while not armed to make sure no value from the last flight is still kept
|
// reinitialize the setpoint while not armed to make sure no value from the last mode or flight is still kept
|
||||||
if (!_v_control_mode.flag_armed) {
|
if (!_v_control_mode.flag_armed) {
|
||||||
Quatf().copyTo(_v_att_sp.q_d);
|
Quatf().copyTo(_v_att_sp.q_d);
|
||||||
Vector3f().copyTo(_v_att_sp.thrust_body);
|
Vector3f().copyTo(_v_att_sp.thrust_body);
|
||||||
|
|||||||
@@ -48,6 +48,9 @@
|
|||||||
*/
|
*/
|
||||||
#include "vtol_att_control_main.h"
|
#include "vtol_att_control_main.h"
|
||||||
#include <systemlib/mavlink_log.h>
|
#include <systemlib/mavlink_log.h>
|
||||||
|
#include <matrix/matrix/math.hpp>
|
||||||
|
|
||||||
|
using namespace matrix;
|
||||||
|
|
||||||
namespace VTOL_att_control
|
namespace VTOL_att_control
|
||||||
{
|
{
|
||||||
@@ -701,6 +704,14 @@ void VtolAttitudeControl::task_main()
|
|||||||
_vtol_type->fill_actuator_outputs();
|
_vtol_type->fill_actuator_outputs();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// reinitialize the setpoint while not armed to make sure no value from the last mode or flight is still kept
|
||||||
|
if (!_v_control_mode.flag_armed) {
|
||||||
|
Quatf().copyTo(_mc_virtual_att_sp.q_d);
|
||||||
|
Vector3f().copyTo(_mc_virtual_att_sp.thrust_body);
|
||||||
|
Quatf().copyTo(_v_att_sp.q_d);
|
||||||
|
Vector3f().copyTo(_v_att_sp.thrust_body);
|
||||||
|
}
|
||||||
|
|
||||||
/* Only publish if the proper mode(s) are enabled */
|
/* Only publish if the proper mode(s) are enabled */
|
||||||
if (_v_control_mode.flag_control_attitude_enabled ||
|
if (_v_control_mode.flag_control_attitude_enabled ||
|
||||||
_v_control_mode.flag_control_rates_enabled ||
|
_v_control_mode.flag_control_rates_enabled ||
|
||||||
|
|||||||
Reference in New Issue
Block a user