Issues with Goal Pose Setting using SLAM in Nav2 Stack for GPS-based Navigation

asked 2023-08-10 17:09:37 -0500

Vini71 gravatar image

updated 2023-08-10 17:10:30 -0500

Hi,

I am currently working on a GPS-based navigation solution to send latitude and longitude (converted to odom local coordinate system by navsat_transform_node) as a goal pose and use the Nav2 stack to avoid obstacles. However, I face some challenges when setting a goal pose using SLAM.

Problem: When I set a goal pose for my Ackerman-steered vehicle, it only steers and does not move forward.

A) I ran without using SLAM (Normal behavior without using SLAM): pre-mapped goal pose

B) This behavior can be checked in this video: slam goal pose

C) If I use an opened world (without obstacles), slam also does not work with goal pose (neither slam-toolbox initializes the mapping process), and the steering wheels behavior is repeated as can be checked here: slam empty world. In this launch file, I've commented on the robot localization and navsat nodes (to let slam work exclusively without amcl or other sensors data that might interfere with this functionality), and the result was the same...

Details:

  • /cmd_vel Output:

    linear: x: 0.0 y: 0.0 z: 0.0 angular: x: 0.0 y: 0.0 z: 1.0

  • /goal_pose Output:

header: stamp: sec: 0 nanosec: 0 frame_id: map pose: position: x: -93.0 y: -1.39 z: 3.35 orientation: x: 0.0 y: 0.0 z: 0.0 w: 1.0

Questions:

1) What configurations or parameters should we know when using SLAM with the Nav2 stack for goal pose setting? I've checked something related here: slam_toolbox enabled, however, my launch file is quite similar, just modified the robot type (Ackerman) and added some robot localization nodes (fused odometry + Imu + gps using navsat)

2) How can I debug the path planner to understand why it's not generating a path? The output of my /plan topic is empty!

ros2 topic echo /plan

3) Are there any known issues or incompatibilities between SLAM and the Nav2 stack's Ackerman-based path planner that might be causing this behavior??

4) Has the community developed a ros2 GPS integration tutorial with nav2? I know this one for ros1-nav1: https://www.youtube.com/watch?v=cmOpl.... I would be glad to receive a link tutorial!

Any guidance or suggestions would be greatly appreciated. Thank you!

edit retag flag offensive close merge delete