0
$\begingroup$

Rosanswers logo

Hello,

I am trying to use a quadrotor with ROS moveit! The driver node of the quadrotor publishes a tf tree, which contains odom, base, frontcam and bottomcam, where odom is the parent frame of base and base is the parent frame of frontcam and bottom cam. Besides this diver I am running a Slam algorithm, which publishes another tf tree, which contains two frames, map and sensor.

When setting up moveit with a urdf model, I create a virtual link between the map frame from the slam algorithm and the base link of the quadrotor. When I launch the resulting demo.launch I get the following warn messages:

[ WARN] [1448659454.360465559]: Unable to transform object from frame 'ardrone_base_frontcam' to planning frame 'Map' (Could not find a connection between 'Map' and 'ardrone_base_frontcam' because they are not part of the same tree.Tf has two or more unconnected trees.) 
[ WARN] [1448659454.360597000]: Unable to transform object from frame 'ardrone_base_link' to planning frame 'Map' (Could not find a connection between 'Map' and 'ardrone_base_link' because they are not part of the same tree.Tf has two or more unconnected trees.) 
[ WARN] [1448659454.360687375]: Unable to transform object from frame 'ardrone_base_bottomcam' to planning frame 'Map' (Could not find a connection between 'Map' and 'ardrone_base_bottomcam' because they are not part of the same tree.Tf has two or more unconnected trees.) 
[ WARN] [1448659454.360741781]: No transform available between frame 'odom' and planning frame 'Map' (Could not find a connection between 'Map' and 'odom' because they are not part of the same tree.Tf has two or more unconnected trees.)

Apparently I need to publish transforms to connect the trees and have only one. I see the following problem: on one tree odometry is being published from the IMU. I am not interested in this data, I only wish to represent the pose of the urdf model in rviz with the data from the Slam algorithm. I would like the base of the quadrotor to share the pose output from the sensor frame.

Any help is appreciated. Thanks

EDIT1: I cannot provide the tf frames right now because I do not have the quadrotor with me, for now, I can give a brief explanation of this. I am using visual slam Ptam so in one tree I have map and sensor, where map is the fixed frame. In the other tf tree I have odom followed by base and the two children of base are frontcam and bottomcam. In this post ( [http://answers.ros.org/question/216826/robot_localization-tf-tree-structure/] I read that there would have to be a static transform between world and odom. I have found no files for parameter configuration.


Originally posted by Lolita390 on ROS Answers with karma: 31 on 2015-11-27

Post score: 0


Original comments

Comment by paul3333 on 2021-03-04:
@Lolita390 where you able to solve your problem? Im facing the exact same issue right now.

Would be great if you could share your solution!

Comment by jayess on 2021-03-06:
Please don't use an answer to leave a comment. This isn't a forum

Comment by paul3333 on 2021-03-08:
Sorry about that.

Comment by jayess on 2021-03-09:
No worries

$\endgroup$

1 Answer 1

0
$\begingroup$

Rosanswers logo

In fact, your slam node should broadcast transformation from map to odom. It seems missing.

It may be helpful if you can post the screenshot of rosrun tf view_frames output and your content of launch files with any relevant parameter (or .yaml) files.


Originally posted by Akif with karma: 3561 on 2015-11-28

This answer was ACCEPTED on the original site

Post score: 1


Original comments

Comment by Lolita390 on 2015-11-28:
I replied in EDIT1.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.