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

Can't send goal to move_base

asked 2020-12-15 04:59:24 -0500

hiep127 gravatar image


I'm using move_base to drive a robot but i'm facing a problem that the move_base/current_goal does not the same as which i send to it

Each time i run the move_base_client node it will result in a different goal but none of them is the same as the goal i want to publish

This is the code i use to publish the goal

#include <ros/ros.h>
#include <move_base_msgs/MoveBaseAction.h>
#include <actionlib/client/simple_action_client.h>

typedef actionlib::SimpleActionClient<move_base_msgs::MoveBaseAction> MoveBaseClient;

int main(int argc, char** argv){
  ros::init(argc, argv, "simple_navigation_goals");

  //tell the action client that we want to spin a thread by default
  MoveBaseClient ac("move_base", true);

  //wait for the action server to come up
    ROS_INFO("Waiting for the move_base action server to come up");
  move_base_msgs::MoveBaseGoal goal;

  //we'll send a goal to the robot to move 1 meter forward
  goal.target_pose.header.frame_id = "map";
  goal.target_pose.header.stamp = ros::Time::now();

  goal.target_pose.pose.position.x =  1.0;
  goal.target_pose.pose.position.y =  1.0;
  goal.target_pose.pose.position.z =  0.0;
  goal.target_pose.pose.orientation.x = 0.0;
  goal.target_pose.pose.orientation.y = 0.0;
  goal.target_pose.pose.orientation.z = 0.0;
  goal.target_pose.pose.orientation.w = 1.0;

  ROS_INFO("Sending goal");


  if(ac.getState() == actionlib::SimpleClientGoalState::SUCCEEDED)
    ROS_INFO("Hooray, the base moved 1 meter forward");
    ROS_INFO("The base failed to move forward 1 meter for some reason");

  return 0;

And this is the result when i echo to move_base/current_goal topic image description

And my rviz screen :

image description This is my move_base parameter :

# Move base node parameters. For full documentation of the parameters in this file, please see
shutdown_costmaps: false

controller_frequency: 5.0
controller_patience: 3.0

planner_frequency: 1.0
planner_patience: 5.0

oscillation_timeout: 10.0
oscillation_distance: 0.2

# local planner - default is trajectory rollout
base_local_planner: "dwa_local_planner/DWAPlannerROS"

base_global_planner: "navfn/NavfnROS" #alternatives: global_planner/GlobalPlanner, carrot_planner/CarrotPlanner

#We plan to integrate recovery behaviors for turtlebot but currently those belong to gopher and still have to be adapted.
## recovery behaviors; we avoid spinning, but we need a fall-back replanning
#recovery_behavior_enabled: true

  #- name: 'super_conservative_reset1'
    #type: 'clear_costmap_recovery/ClearCostmapRecovery'
  #- name: 'conservative_reset1'
    #type: 'clear_costmap_recovery/ClearCostmapRecovery'
  #- name: 'aggressive_reset1'
    #type: 'clear_costmap_recovery/ClearCostmapRecovery'
  #- name: 'clearing_rotation1'
    #type: 'rotate_recovery/RotateRecovery'
  #- name: 'super_conservative_reset2'
    #type: 'clear_costmap_recovery/ClearCostmapRecovery'
  #- name: 'conservative_reset2'
    #type: 'clear_costmap_recovery/ClearCostmapRecovery'
  #- name: 'aggressive_reset2'
    #type: 'clear_costmap_recovery/ClearCostmapRecovery'
  #- name: 'clearing_rotation2'
    #type: 'rotate_recovery/RotateRecovery'

  #reset_distance: 3.0
  #reset_distance: 1.5
  #reset_distance: 0.0
  #reset_distance: 3.0
  #reset_distance: 1.5
  #reset_distance: 0.0

Anyone know what wrong with my code and how to fix it @@!

I appreciate any help :3

Tell me if u need more information

edit retag flag offensive close merge delete


@hiep127 for any text please don't use images as the text in images can't be copy and pasted. Please see the support page

jayess gravatar image jayess  ( 2020-12-15 21:03:13 -0500 )edit

1 Answer

Sort by ยป oldest newest most voted

answered 2020-12-30 04:48:01 -0500

miura gravatar image

It is possible that the global_frame of global_costmap or local_costmap is not set to "map".

Adding the following to the move_base parameter may solve the problem.

  global_frame: map

  global_frame: map
edit flag offensive delete link more

Question Tools

1 follower


Asked: 2020-12-15 04:59:24 -0500

Seen: 720 times

Last updated: Dec 30 '20