mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-05-23 12:47:35 +08:00
ekf2: synchronize z_valid and v_z_valid
mc_pos_control doesn't handle all the cases at the moment
This commit is contained in:
@@ -1096,11 +1096,12 @@ void EKF2::PublishLocalPosition(const hrt_abstime ×tamp)
|
||||
lpos.ay = vel_deriv(1);
|
||||
lpos.az = vel_deriv(2);
|
||||
|
||||
// TODO: better status reporting
|
||||
lpos.xy_valid = _ekf.local_position_is_valid();
|
||||
lpos.z_valid = _ekf.isLocalVerticalPositionValid();
|
||||
lpos.v_xy_valid = _ekf.local_position_is_valid();
|
||||
lpos.v_z_valid = _ekf.isLocalVerticalVelocityValid();
|
||||
|
||||
// TODO: some modules (e.g.: mc_pos_control) don't handle v_z_valid != z_valid properly
|
||||
lpos.z_valid = _ekf.isLocalVerticalPositionValid() || _ekf.isLocalVerticalVelocityValid();
|
||||
lpos.v_z_valid = _ekf.isLocalVerticalVelocityValid() || _ekf.isLocalVerticalPositionValid();
|
||||
|
||||
// Position of local NED origin in GPS / WGS84 frame
|
||||
if (_ekf.global_origin_valid()) {
|
||||
|
||||
Reference in New Issue
Block a user