-
Notifications
You must be signed in to change notification settings - Fork 9
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Detect if filter has diverged #25
base: hydro-devel
Are you sure you want to change the base?
Detect if filter has diverged #25
Conversation
} | ||
} | ||
|
||
ROS_ERROR_STREAM(errmsg.str()); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
does it make sense to use a throttled message here? once you have diverged, this will spam the console quite badly I would think
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It does spam the console rather a lot. I'll switch it to a throttled message or a once-only message.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would suggest throttle over once-only so that if you remotely open rqt_console or similar after the filter has diverged, you will still see the message.
Should this also be added to the other filters? (velocity & attitude) |
I updated the error message to only print every 5 seconds. I'll look into adding this to the other filters as well. |
I've added divergence check of the velocity and attitude filters. Let me know if you'd like me to squash these commits down before they're merged. |
Sorry for the long delay -- this looks good, if you want to squash it, we can merge it |
My particular configuration was diverging frequently due to poor configuration, so I added a check for it and some debugging output about the last set of messages the the filter received before it diverged.
This is generally quite useful for spotting bad input data or bad covariances.