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

Laser_ortho_projector transformation problem

asked 2015-02-06 12:36:23 -0600

crzx5 gravatar image

I'm currently using ROS Hydro. I've been trying without success to run laser_ortho_projector without a base/world tf. According to the wiki ( ), this is fine so long as an IMU topic is provided, since the node can determine the attitude of the laser frame relative to the fixed frame.

(Note that while the wiki article referenced is for Fuerte, I used the Hydro package: )

Currently, I have a laser topic (/scan) and IMU topic (/imu/data) successfully publishing. Also, I have a laser > base_link static transformation being broadcast (included in launch file below).

I continue to get the following error:

[ WARN] [ros timestamp]: Skipping scan Could not find a connection between 'world' and 'base_link' because they are not part of the same tree.Tf has two or more unconnected trees.

Here is my launch file:


<!-- Static TF Publication -->
<node pkg="tf" type="static_transform_publisher" name="base_to_laser" 
        args="0 0 0 0 0 0 /base_link /laser 40" />

<!-- Laser Ortho Projector-->
<node pkg="laser_ortho_projector" type="laser_ortho_projector_node" name="laser_ortho_projector" output="screen">

<param name="use_imu" type="bool" value="true"/>
<param name="use_pose" type="bool" value="false"/>
<param name="publish_tf" type="bool" value="true"/>
<remap from= "cloud_ortho" to="cloud"/>



Thanks for any assistance!

edit retag flag offensive close merge delete


I'm dealing with the same problem! Any help here would be appreciated.

locustcox gravatar image locustcox  ( 2015-02-06 13:36:54 -0600 )edit

2 Answers

Sort by » oldest newest most voted

answered 2016-04-26 20:46:30 -0600

updated 2016-04-26 20:47:28 -0600

Instead I recommend you to work "pose mode" instead on "imu mode". You can use the demo.launch file provided in the package. You will have to generate your base_frame using the imu data you already have. The may help you in this task.

If you still want to continue working in the imu mode you will need to provide another extra transformation that defines the position of the base_frame in the world.

Some thoughts about the imu-mode

I agree that this is counter-intuitive: You have to provide the orientation of the link twice (in the imu message and in the transform). Why? IMHO it is not needed, just implementation reasons. For the imu-mode the ortho_frame transform could have been directly broadcasted as child of base_frame (ignoring the yaw field). However the implementation broadcasts the ortho_frame as child of world.

edit flag offensive delete link more

answered 2015-04-06 15:58:22 -0600

lkjewq gravatar image

Hi there,

The following link shows you how to resolve this issue:

Next time try using the search function better!

edit flag offensive delete link more


Age of Empires screen cast? @lkjewq is that what you meant to link to?

tfoote gravatar image tfoote  ( 2015-04-06 23:56:28 -0600 )edit

Question Tools

1 follower


Asked: 2015-02-06 12:36:23 -0600

Seen: 363 times

Last updated: Apr 26 '16