move_base action server doesn't come up with a real robot
Hello !
I try to run the move_base node on a real robot. When I run it in simulation (with another robot), it works successfully.
But, when I try to bring up the navigation stack on a real robot, the move_base action server doesn't come up.
Indeed, when I launch the move_base node, I get continuously the unexpected following warning:
[ WARN] [1466504490.216963462]: Costmap2DROS transform timeout. Current time: 1466504490.2169, global_pose stamp: 1466504032.8989, tolerance: 0.3000
Moreover, when I run my own C++ node in order to send a goal command, the program stays blocked inside the waitForServer loop, this loop is as follows:
while(!ac.waitForServer(ros::Duration(5.0)))
{
ROS_INFO("Waiting for the move_base action server to come up");
}
I don't understand why it doesn't work and why when I run the move_base node the move_base action server doesn't come up.
If anyone can help me, I would be very grateful,
lfr
update 1
Here the result of the roswtf command:
WARNING: Package "ompl" does not follow the version conventions. It should not contain leading zeros (unless the number is 0).
Loaded plugin tf.tfwtf
No package or stack in context
================================================================================
Static checks summary:
No errors or warnings
================================================================================
Beginning tests of your ROS graph. These may take awhile...
analyzing graph...
... done analyzing graph
running graph rules...
... done running graph rules
running tf checks, this will take a second...
... tf checks complete
Online checks summary:
Found 3 warning(s).
Warnings are things that may be just fine, but are sometimes at fault
WARNING The following node subscriptions are unconnected:
* /teleop:
* /torso_controller/state
WARNING The following nodes are unexpectedly connected:
* /mugiro_node->/rqt_gui_py_node_4590 (/tf)
WARNING Received out-of-date/future transforms:
* receiving transform from [/sickS3000_publisher] that differed from ROS time by -460.430734051s
* receiving transform from [/Publish_odom_TF] that differed from ROS time by -460.43225327s
You can find the tf tree below:
And the graph here:
Look to your tf (
rosrun rqt_tf_tree rqt_tf_tree
) and node graph (rosrun rqt_graph rqt_graph
). Which topics/nodes are unconnected? What's the differences between simulation's graph and real robot's graph? Also you can useroswtf
command for looking whats going on.I updated the question, thanks for your help
I think there is a problem with your pose estimation node, In a simulation, gazebo publishes odometry and transformation between
odom
andbase_link
. I think your problem is in yourPublissh_odom_TF
node (ormugiro_node
).Ok, could you tell me what kind of problem may appear with these nodes because I still don't understand why it doesn't work.
It may be message type(stamped or not stamped) or publishing with wrong frame. Your screenshots are from real robot. Compare them with simulation's graph and tf tree. I think you should publish odom transformation from
/mugiro_node
directly. Why you using/Publish_odom_TF
?Ah ok, thanks. But didn't write these nodes, I got the robot and these nodes from other ones. My task is to bring up the navigation stack in order to do some tests with the planner (that I have chosen). I will see about tf, I think this is the problem too. Thank you for your help.
You're welcome.