Browse Source

fill pressure altitude in global position from estimators

sbg
Andreas Antener 9 years ago
parent
commit
c706c30e83
  1. 3
      src/modules/ekf_att_pos_estimator/ekf_att_pos_estimator_main.cpp
  2. 1
      src/modules/local_position_estimator/BlockLocalPositionEstimator.cpp
  3. 2
      src/modules/position_estimator_inav/position_estimator_inav_main.cpp

3
src/modules/ekf_att_pos_estimator/ekf_att_pos_estimator_main.cpp

@ -1015,6 +1015,9 @@ void AttitudePositionEstimatorEKF::publishGlobalPosition() @@ -1015,6 +1015,9 @@ void AttitudePositionEstimatorEKF::publishGlobalPosition()
_global_pos.terrain_alt_valid = false;
}
/* baro altitude */
_global_pos.pressure_alt = _baro_alt_filt;
_global_pos.yaw = _local_pos.yaw;
const float dtLastGoodGPS = static_cast<float>(hrt_absolute_time() - _previousGPSTimestamp) / 1e6f;

1
src/modules/local_position_estimator/BlockLocalPositionEstimator.cpp

@ -711,6 +711,7 @@ void BlockLocalPositionEstimator::publishGlobalPos() @@ -711,6 +711,7 @@ void BlockLocalPositionEstimator::publishGlobalPos()
_pub_gpos.get().terrain_alt = 0;
_pub_gpos.get().terrain_alt_valid = false;
_pub_gpos.get().dead_reckoning = !_canEstimateXY && !_xyTimeout;
_pub_gpos.get().pressure_alt = _sub_sensor.get().baro_alt_meter[0];
_pub_gpos.update();
}
}

2
src/modules/position_estimator_inav/position_estimator_inav_main.cpp

@ -1336,6 +1336,8 @@ int position_estimator_inav_thread_main(int argc, char *argv[]) @@ -1336,6 +1336,8 @@ int position_estimator_inav_thread_main(int argc, char *argv[])
global_pos.terrain_alt_valid = false;
}
global_pos.pressure_alt = sensor.baro_alt_meter[0];
if (vehicle_global_position_pub == NULL) {
vehicle_global_position_pub = orb_advertise(ORB_ID(vehicle_global_position), &global_pos);

Loading…
Cancel
Save