TF_NAN_INPUT errors from use of ekf_localization_node [closed]
UPDATE: I have verified that simply setting odom0_differential to false also solves the problem. It is in fact probably not a problem with the ARM system I'm using, as I eventually got the same error on a x86_64 laptop that I mounted on the robot. It seems as though it works fine for a while, and then the error shows up continuously after a while. Is there maybe some sort of caching applied which keeps erronous values and is reset by changing the settings in the launch file?
ORIGINAL QUESTION:
Whenever I use ekf_localization_node in my project, I get this error:
Error: TF_NAN_INPUT: Ignoring transform for child_frame_id "base_footprint" from authority "unknown_publisher" because of a nan value in the transform (-nan -nan -nan) (-nan -nan -nan -nan) at line 240 in /tmp/buildd/ros-indigo-tf2-0.5.11-0trusty-20150522-1835/src/buffer_core.cppI don't get it when I put all values of the (currently only) input of the node to false, but as soon as I put a 'true' at the position for (e.g.) the x input, it shows up again. I am using wheel odometry of a Kobuki for this input. Here is a sample odometry message:
header: seq: 20227 stamp: secs: 1435652980 nsecs: 60858344 frame_id: odom child_frame_id: base_footprint pose: pose: position: x: 0.0 y: 0.0 z: 0.0 orientation: x: 0.0 y: 0.0 z: 0.0 w: 1.0 covariance: [0.1, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.7976931348623157e+308, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.7976931348623157e+308, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.7976931348623157e+308, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.05] twist: twist: linear: x: 0.0 y: 0.0 z: 0.0 angular: x: 0.0 y: 0.0 z: 0.0 covariance: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0] ---
This is the launchfile I am currently trying to use for the ekf_localization_node: http://pastebin.com/SPrXDD53
Can you please post a sample odometry input message? Also, please let me know which version of
robot_localization
you're using. I see you're using Indigo, but did you install the package from the package manager or build it from source?Update: I tried to use a different bag file with your launch file, and I could not reproduce your issue. You'll have to post a sample odometry message.
Hey, sorry for the delay. After a bit of testing I noticed that this only happens on one unit, which is the one I was testing it on first. It runs an ARM-based embedded system, so that might have something to do with it. On all x86 based platforms this issue does not exist, and in fact (cont.)
(cont.) I can run the package fine when I "outsource" it to one of our x86-based workstations instead of running it directly on the robot.
Which ARM board are you using? Did you build from scratch or use the package manager?
Any update on this?
Yes, sorry. Vacation and other stuff kept me from posting updates. I will update the question to reflect the changed circumstances I have encountered.