mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-10-21 12:13:34 +08:00
Remove euler angles from attitude setpoint (#23482)
* Remove euler angles from attitude setpoint message * Remove usage of euler angles in attitude setpoint messages This commit removes the usage of euler angles in the vehicle_attitude_setpoint messages * Fix standard vtol
This commit is contained in:
@@ -1626,11 +1626,6 @@ MavlinkReceiver::handle_message_set_attitude_target(mavlink_message_t *msg)
|
||||
const matrix::Quatf q{attitude_target.q};
|
||||
q.copyTo(attitude_setpoint.q_d);
|
||||
|
||||
matrix::Eulerf euler{q};
|
||||
attitude_setpoint.roll_body = euler.phi();
|
||||
attitude_setpoint.pitch_body = euler.theta();
|
||||
attitude_setpoint.yaw_body = euler.psi();
|
||||
|
||||
// TODO: review use case
|
||||
attitude_setpoint.yaw_sp_move_rate = (type_mask & ATTITUDE_TARGET_TYPEMASK_BODY_YAW_RATE_IGNORE) ?
|
||||
(float)NAN : attitude_target.body_yaw_rate;
|
||||
|
||||
@@ -264,7 +264,9 @@ private:
|
||||
vehicle_attitude_setpoint_s attitude_sp;
|
||||
|
||||
if (_attitude_sp_sub.update(&attitude_sp)) {
|
||||
msg->target_heading = static_cast<uint8_t>(math::degrees(matrix::wrap_2pi(attitude_sp.yaw_body)) * 0.5f);
|
||||
|
||||
msg->target_heading = static_cast<uint8_t>(math::degrees(matrix::wrap_2pi(matrix::Eulerf(matrix::Quatf(
|
||||
attitude_sp.q_d)).psi())) * 0.5f);
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user