[waypoint navigation husky]

Hey!

I’m playing around with your 3D SLAM and Waypoint Navigation software (1.0.0) on our Husky Clearpath: it’s running ROS melodic.
But unfortunately I’ve been running into some problems with the outdoor waypoint navigation that uses GPS.
The planner can’t do its job and is aborting because the current goal is outside of the global costmap. The warning I’m getting is: “The goal sent to the global planner is off the global costmap. Planning will always fail to this goal.”

I’ve narrowed the problem down to a conversion problem between GPS coordinates and Poses in the map frame.
I found about it by looking into the /move_base/current_goal topic and finding a goal which is about x: -200000, y: 200000, z:52 with frame_id: “map”. I believe the z is not taken into account. But clearly those values are too big to fit into a gobal costmap of about 40mx40m. Thus my hypothesis that it’s a conversion problem.

The file in charge of that process is “follow_waypoints.so” I think but since it’s a shared library file I can’t really do anything about it. Is it possible to get the source .py files that those .so files came from to have a look? If not, please consider that our Husky is running ROS melodic, so Python3 does not work here.

Have you encountered with problem before? I might have missed a software update, not sure.

Thanks!

Dear @HuskyOwner,

The planner can’t do its job and is aborting because the current goal is outside of the global costmap. The warning I’m getting is: “The goal sent to the global planner is off the global costmap. Planning will always fail to this goal.”

The issue can be resolved in one of two ways. The first method is inserting a larger map for the navigation. The second method is to run SLAM to create the map on the fly.

Have you encountered with problem before? I might have missed a software update, not sure.

Yes, this problem/limitation is due to the configuration of our old ROS navigation package, specifically the map server. We solved this by using SLAM, while alternatively sometimes using a very large map. We can send you an updated Nav package which should work independently of python2/3, but for that, we need to know the specific hardware of your Husky i.e. which IMU it has as well as which GPS?

The file in charge of that process is “follow_waypoints.so” I think but since it’s a shared library file I can’t really do anything about it. Is it possible to get the source .py files that those .so files came from to have a look?

The follow_waypoints.so is independent of this issue. Basically, it takes information from the GPS, IMU, and odometry and produces the correct coordinates in the map frame. Technically, if you were to use a custom/self-made ROS navigation stack that adheres to the convention, it should also be able to work with that.

For solutions, I can recommend several alternatives.

  1. Insert a very large empty map onto the map server.
  2. Run SLAM that makes the map on the fly.
  3. We provide an updated ROS navigation stack for the Husky. (Risk it might break the existing nav stack features)

Hope that helps. Wishing you a good day.

1 Like

Dear @Sohail,

Thank you for your answer. I will look into solutions 1 and 2 and ask for the new Nav package in case 1 and 2 don’t work.
For the updated ROS navigation stack: our IMU is a phidget IMU and our GPS is an emlid reach rs2. Please send the package to this email: robotikklabben-Forde@hvl.no

Thank you again for your answer, have a nice day!

Dear @Sohail,

Happy new year! :slight_smile:
I haven’t hear from you since last message and I’m still waiting for this updated ROS navigation stack.

Have a nice day!

1 Like

@HuskyOwner Please provide your email in a private message or send a mail to salman.sohail@mybotshop.de. I will send the package.

Happy new year to you too :slightly_smiling_face:

Pardon, I just saw the mail address will send it over now!