2D Pose Estimate can no be used with Multiple robots

asked 2017-01-17 07:27:34 -0500

piliboss gravatar image

When I define multiple robots, namely use tf_prefix, 2d pose estimate function can not be used in rviz. I look in the amcl_node.cpp, fine the reason, the code is following:

else if(tf_->resolve(msg.header.frame_id) != tf_->resolve(global_frame_id_))
  {
    ROS_WARN("Ignoring initial pose in frame \"%s\"; initial poses must be in the global frame, \"%s\"",
             msg.header.frame_id.c_str(),
             global_frame_id_.c_str());
    return;
  }

When i have multiple robots, the tf_->resolve(msg.header.frame_id) will be for example "robot_1/map", but the tf_->resolve(global_frame_id_) is "map". Anyhow, i have to use tf_prefix, otherwise the robots will not know which one is to set to the initial pose.

How can i solve this problem?

edit retag flag offensive close merge delete