# Any method to solve navigation initial state pose estimation?

**URL:** <https://get-help.theconstruct.ai/t/any-method-to-solve-navigation-initial-state-pose-estimation/18706>\
**Category:** Open Discussions\
**Tags:** autonomous\_navigatio\
**Created:** [August 13, 2022, 1:09am UTC](https://get-help.theconstruct.ai/t/any-method-to-solve-navigation-initial-state-pose-estimation/18706 "2022-08-13T01:09:06Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![zlwnge](https://get-help.theconstruct.ai/user_avatar/get-help.theconstruct.ai/zlwnge/32/10616_2.png) [@zlwnge](https://get-help.theconstruct.ai/u/zlwnge)\
**Post date:** [August 13, 2022, 1:09am UTC](https://get-help.theconstruct.ai/t/any-method-to-solve-navigation-initial-state-pose-estimation/18706/1 "2022-08-13T01:09:06Z")

</div>

Dear [@staff](https://get-help.theconstruct.ai/groups/staff) and ros player,

I have been experimenting with a live car after taking the ros navigation course and have found a problem that I would like to ask you about.

Every time I finish building a map and prepare to start navigation, I have to manually put the cart back to the starting point of the build, otherwise, the cart cannot accurately estimate its initial position during navigation. So, my question is: Is there any way to eliminate the “manually put the cart back to the starting point” step, after all, it seems a bit redundant.

I look forward to hearing you!

Thank you,  
Bests.

---

<div class="post-metadata">

**Author:** ![ralves](https://get-help.theconstruct.ai/user_avatar/get-help.theconstruct.ai/ralves/32/7039_2.png) [@ralves](https://get-help.theconstruct.ai/u/ralves)\
**Post date:** [August 15, 2022, 12:38pm UTC](https://get-help.theconstruct.ai/t/any-method-to-solve-navigation-initial-state-pose-estimation/18706/2 "2022-08-15T12:38:48Z")

</div>

Hi @zlwnge,

You definitely **shouldn’t have to put the car back to the initial position** each time you start the **Navigation** system.

When you open RViz, just by clicking the **2D Pose Estimate** and setting the location and orientation on the map should be enough:

 ![2d-pose-estimate](https://get-help.robotigniteacademy.com/uploads/default/original/2X/b/b86bc85d0558819bef0af66f5b8fc32a84a50f3c.png)

After clicking **2D Pose Estimate** , you click on the map just in the same way as you do when setting a **2D Nav Goal**.

Please let me know if I misunderstand your question.

---

<div class="post-metadata">

**Author:** ![zlwnge](https://get-help.theconstruct.ai/user_avatar/get-help.theconstruct.ai/zlwnge/32/10616_2.png) [@zlwnge](https://get-help.theconstruct.ai/u/zlwnge)\
**Post date:** [August 16, 2022, 10:05am UTC](https://get-help.theconstruct.ai/t/any-method-to-solve-navigation-initial-state-pose-estimation/18706/3 "2022-08-16T10:05:34Z")

</div>

Mr. @ralves ,

**Thank you for your reply, first.**  
And Maybe I haven’t expressed my meaning clear in the above.  
What I want to express is that I would like to know if is there a way to let the car **initialize the navigation position by itself** with the data obtained from its own sensors. **Instead of** manually or through the rviz tool putting it back.

Thank you,  
Best.

---

<div class="post-metadata">

**Author:** ![rtellez](https://get-help.theconstruct.ai/user_avatar/get-help.theconstruct.ai/rtellez/32/9813_2.png) [@rtellez](https://get-help.theconstruct.ai/u/rtellez)\
**Post date:** [August 17, 2022, 7:45am UTC](https://get-help.theconstruct.ai/t/any-method-to-solve-navigation-initial-state-pose-estimation/18706/4 "2022-08-17T07:45:52Z")

</div>

You can localize your robot programmatically. For that you have two options (for ROS1):

1. Call the `global_localization` service. If you call that service, the particles will be distributed over the whole map and then, as the robot moves, it may localize at the proper location. This option is used when you need to localize the robot but you have no idea where it is (every time that the robot starts, it is in a different location and your program cannot identify where it will be)
2. Publish a position in the `initalpose` topic. If you know where the robot starts every time you switch it on (like for example, it starts at the charging station), you can publish that position on that topic and the AMCL will localize at that position. This is used when you know where the robot starts.

Usually, the `global_localization` works quite well (if the environment is not very large or very symmetrical).

We explain both methods on the [ROS Navigation in 5 days course](https://app.theconstructsim.com/Course/57) (for ROS1), and on the [ROS2 Navigation (Galactic) course](https://app.theconstructsim.com/Course/109) (for ROS2).

Also, check t[he AMCL documentation](http://wiki.ros.org/amcl) for more details.

---

<div class="post-metadata">

**Author:** ![zlwnge](https://get-help.theconstruct.ai/user_avatar/get-help.theconstruct.ai/zlwnge/32/10616_2.png) [@zlwnge](https://get-help.theconstruct.ai/u/zlwnge)\
**Post date:** [August 19, 2022, 12:21am UTC](https://get-help.theconstruct.ai/t/any-method-to-solve-navigation-initial-state-pose-estimation/18706/5 "2022-08-19T00:21:03Z")

</div>

Thank you for your help. I’ll try it later.

---

<div class="post-metadata">

**Author:** ![system](https://get-help.theconstruct.ai/uploads/default/original/2X/9/9d3ce8305cc0d0d9b6e07d15767a6f245c526f1b.jpeg) [@system](https://get-help.theconstruct.ai/u/system)\
**Post date:** [August 20, 2022, 1:09am UTC](https://get-help.theconstruct.ai/t/any-method-to-solve-navigation-initial-state-pose-estimation/18706/6 "2022-08-20T01:09:58Z")

</div>

This topic was automatically closed after 7 days. New replies are no longer allowed.
