# Give move_base goalpoints without orientation edit

Hi,

I would like to know that is it possible to give goalpoints to the move_base (by move_base/goal or move_base_simple/goal) without orientation.

I followed this tutorial: http://www.ros.org/wiki/navigation/Tutorials/SendingSimpleGoals

I've exchanged 'base_link' to 'map' in:

because naturally, I have goalpoints in the map coordinate system.

This works, the robot moves from goalpoint to goalpoint as expected. However, every time it reaches it's destination, it will also turn to the map's x axis (mathematics conventional x axis, so the robot "points to the right"). I suppose this is becuase the tutorial sets an identity quaternion for orientation in the map frame. If I uncomment the line:

goal.target_pose.pose.orientation.w = 1.0;

then the code would not compile.

So basically I want my robot to just arrive to a goalpoint, it's orientation does not matter for me.

edit retag close merge delete

Any update from this? Is there a simple way of passing a goal to the navigation stack without orientation constraint? i.e keeping the same end orientation as the path from which the robot arrive? Setting the yaw_goal_tolearence high in my local planner is causing issues (custom implementation)

( 2016-11-17 03:03:22 -0500 )edit

Sort by » oldest newest most voted

goal expects a input in form of "pose" which is made of position and orientation. So you cannot skip the orientation part. One thing you can do is either give a constant orientation or use the orientation of robot as goal position orientation so that robot orientation remains constant.

more

It depends on the planner you use within move_base. Some, which actually plan using the robot's theta will use that information, some others (like AFAIK navfn_ros) might ignore it. Given the default setup with navfn_ros you'd only need to tune the local planner. If that is TrajectoryPlannerROS, set the parameter to something large:

~<name>/yaw_goal_tolerance (double, default: 0.05)

more
{"extraction_info": {"found_math": true, "script_math_tex": 0, "script_math_asciimath": 0, "math_annotations": 0, "math_alttext": 0, "mathml": 0, "mathjax_tag": 0, "mathjax_inline_tex": 0, "mathjax_display_tex": 0, "mathjax_asciimath": 1, "img_math": 0, "codecogs_latex": 0, "wp_latex": 0, "mimetex.cgi": 0, "/images/math/codecogs": 0, "mathtex.cgi": 0, "katex": 0, "math-container": 0, "wp-katex-eq": 0, "align": 0, "equation": 0, "x-ck12": 0, "texerror": 0, "math_score": 0.1615269035100937, "perplexity": 3778.9582488959763}, "config": {"markdown_headings": true, "markdown_code": true, "boilerplate_config": {"ratio_threshold": 0.3, "absolute_threshold": 10, "end_threshold": 15, "enable": true}, "remove_buttons": true, "remove_image_figures": true, "remove_link_clusters": true, "table_config": {"min_rows": 2, "min_cols": 3, "format": "plain"}, "remove_chinese": true, "remove_edit_buttons": true, "extract_latex": true}, "warc_path": "s3://commoncrawl/crawl-data/CC-MAIN-2019-43/segments/1570986648343.8/warc/CC-MAIN-20191013221144-20191014004144-00135.warc.gz"}