ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange

# Does the covariance is related to the velocity and acceleration?

As I accelerate, I find that the covariance is related to my acceleration and my velocity. I check the code found this:

double dFx_dP = (xCoeff * xVel + yCoeff * yVel + zCoeff * zVel) * delta +
(xCoeff * xAcc + yCoeff * yAcc + zCoeff * zAcc) * oneHalfATSquared;

double dFR_dP = (cpi * cpi * sr * pitchVel + cpi * cpi * cr * yawVel) * delta;

transferFunctionJacobian_(StateMemberX, StateMemberPitch) = dFx_dP;

dynamic_process_noise_covariance: false

It's say that the Jacobian matrix is related to the velocity and acceleration. When the velocity increases, the covariance of the entire EKF will increase, not only related to the time? If I set a threshold of covariance, when I go too fast, I'm going to report an error very quickly.

edit retag close merge delete

Sort by ยป oldest newest most voted

Can you maybe clarify what your issue is? I'm not sure I understand, apologies. What do you expect from the filter's behaviour that you're not seeing? The Jacobian matrix is a matrix of partial derivatives from the transfer function. In this case, the equation for the X dimension in the transfer function includes the pitch dimension, so that partial derivative needs to be computed. That partial derivative include the time delta directly (delta) as well as the oneHalfATSquared term, which is computed as 0.5 * delta * delta.

more