# Transform from [robot_name]/base_footprint to map

I have a problem configuring and running navigation stack on a turtlebot 2 kobuki base. In general, I try to make a system of multiple turtlebots which navigate using one map. That is why I have one map frame and multiple turtlebots' frames which have a map as common parent. When I run my launch file for each turtlebot I get the following error:

Waiting on transform from pinky/base_footprint to map to become available before running costmap, tf error:

As I understood there is no transform between pinky/base_footprint and map. However, it works when don't specify tf_prefix and group name. Therefore, I am not sure where is the problem. I checked all the launch files and changed global paths (e.g. /base_footprint to /pinky/base_footprint). Does it mean that I have to specify the transformation manually? (e.g. static_transform_publisher 0.0 0.0 0.0 0.0 0.0 0.0 1.0 /map /pinky/odom 100). When I specify the transformation between pinky/odom and map frames using this command rosrun tf static_transform_publisher 0.0 0.0 0.0 0.0 0.0 0.0 1.0 /map /pinky/odom 100 It says everything is ok and the tree looks normal but when I try to send goal to my turtlebot "pinky" I get warning: MessageFilter [target=map ]: Dropped 100.00% of messages so far. Please turn the [ros.costmap_2d.message_notifier] rosconsole logger to DEBUG for more information. Here is the code for my launch file:

<launch>
<group ns="pinky">
<param name="tf_prefix" value="pinky" />
<include file="$(find turtlebot_bringup)/launch/3dsensor.launch"> <arg name="rgb_processing" value="false" /> <arg name="depth_registration" value="false" /> <arg name="depth_processing" value="false" /> <!-- We must specify an absolute topic name because if not it will be prefixed by "$(arg camera)".
Probably is a bug in the nodelet manager: https://github.com/ros/nodelet_core/issues/7 -->
<arg name="scan_topic" value="/pinky/scan" />
</include>

<arg name="initial_pose_x" default="0.0"/> <!-- Use 17.0 for willow's map in simulation -->
<arg name="initial_pose_y" default="0.0"/> <!-- Use 17.0 for willow's map in simulation -->
<arg name="initial_pose_a" default="0.0"/>

<include file="$(find turtlebot_navigation)/launch/includes/DG_amcl.launch.xml"> <arg name="initial_pose_x" value="$(arg initial_pose_x)"/>
<arg name="initial_pose_y" value="$(arg initial_pose_y)"/> <arg name="initial_pose_a" value="$(arg initial_pose_a)"/>
</include>

<include file="$(find turtlebot_navigation)/launch/includes/move_base.launch.xml"/> </group> </launch>  In the move_base.launch.xml file I also remapped topic map to /map (because I want to make map shareable between all the turtlebots). In addition I have changed robot_base_frame global and local cotmap params. It looks to me that the problem in the DG_amcl.launch.xml file. Here is this file: <launch> <arg name="use_map_topic" default="false"/> <arg name="scan_topic" default="scan"/> <arg name="initial_pose_x" default="0.0"/> <arg name="initial_pose_y" default="0.0"/> <arg name="initial_pose_a" default="0.0"/> <node pkg="amcl" type="amcl" name="amcl"> <param name="use_map_topic" value="$(arg use_map_topic)"/>
<!-- Publish scans from best pose at a max of 10 Hz ...
edit retag close merge delete