Browse Source

AP_NavEKF3: Fix bug in wheel odometry timestamp correction

mission-4.1.18
priseborough 8 years ago committed by Randy Mackay
parent
commit
db7c8439c6
  1. 3
      libraries/AP_NavEKF3/AP_NavEKF3_Measurements.cpp

3
libraries/AP_NavEKF3/AP_NavEKF3_Measurements.cpp

@ -144,12 +144,11 @@ void NavEKF3_core::writeWheelOdom(float delAng, float delTime, uint32_t timeStam @@ -144,12 +144,11 @@ void NavEKF3_core::writeWheelOdom(float delAng, float delTime, uint32_t timeStam
wheelOdmDataNew.delAng = delAng;
wheelOdmDataNew.radius = radius;
wheelOdmDataNew.delTime = delTime;
wheelOdmDataNew.time_ms = timeStamp_ms - (uint32_t)(500.0f * delTime);
wheelOdmMeasTime_ms = timeStamp_ms;
// becasue we are currently converting to an equivalent velocity measurement before fusing
// the measurement time is moved back to the middle of the sampling period
wheelOdmDataNew.time_ms -= (uint32_t)(500.0f * delTime);
wheelOdmDataNew.time_ms = timeStamp_ms - (uint32_t)(500.0f * delTime);
storedWheelOdm.push(wheelOdmDataNew);

Loading…
Cancel
Save