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

hector mapping tf issue: TF_NAN_INPUT and TF_DENORMALIZED_QUATERNION

asked 2020-08-20 13:00:17 -0500

parzival gravatar image

I'm facing very odd issues. While running hector_mapping on my differential 2wd I'm getting the following error on each run after some period of time:

Error:   TF_NAN_INPUT: Ignoring transform for child_frame_id "scanmatcher_frame" from authority "unknown_publisher" because of a nan value in the transform (nan nan 0.000000) (nan nan nan nan)
         at line 244 in /tmp/binarydeb/ros-kinetic-tf2-0.5.20/src/buffer_core.cpp
Error:   TF_DENORMALIZED_QUATERNION: Ignoring transform for child_frame_id "scanmatcher_frame" from authority "unknown_publisher" because of an invalid quaternion in the transform (nan nan nan nan)
         at line 257 in /tmp/binarydeb/ros-kinetic-tf2-0.5.20/src/buffer_core.cpp

This happens randomly, but almost on each run at some point of time.

Another strange issue is somewhere at around 6th minute after starting hector_mapping, the hector_mapping would throw the following error:

lookupTransform base_link to laser timed out. Could not transform laser scan into base_frame.

There are no errors displayed when doing a roswtf and this happens everytime, even though the robot is stationary.

Doing rosrun rqt_tf_tree rqt_tf_tree shows the tree as it should be (of course with the map --> odom link missing, but base-link --> laser is perfect)

How to solve these issues?

Not sure if this is helpful information, but I'm using hector and required packages over raspberry pi with/Kinetic as master and running rViz on my PC. Even after getting these errors, the connection is fine and no issues there

edit retag flag offensive close merge delete

2 Answers

Sort by » oldest newest most voted

answered 2022-03-09 08:33:07 -0500

parzival gravatar image

The problem arised due to a low power board. Raspberry Pi 3B wasn't enough to handle the load of all the scripts we were running. I don't yet know the underlying cause, but it was the limited CPU power.

edit flag offensive delete link more

answered 2022-01-17 10:16:17 -0500

Souvik Basak gravatar image

updated 2022-01-17 10:16:52 -0500

I guess the update rate is not the same as retrieveing rate. To check the rates ros`

rosrun rqt_tf_tree rqt_tf_tree`

and see the information about update rates in the branches of each transform

edit flag offensive delete link more

Question Tools

1 follower


Asked: 2020-08-20 13:00:17 -0500

Seen: 887 times

Last updated: Mar 09 '22