nobleo / full_coverage_path_planner

Full coverage path planning provides a move_base_flex plugin that can plan a path that will fully cover a given area
Apache License 2.0
547 stars 156 forks source link

Building on Humble with Colcon #44

Open beshankulapala opened 1 year ago

beshankulapala commented 1 year ago

Is there a port or guide to build this package on humble ? On humble catkin is having all sorts of issues, and lots of forums point to Colcon as the tool to build. Appreciate your help. Newbie here, sorry if this is not the right place to ask this question. Thanks !

Timple commented 1 year ago

This package is not yet ROS2 compatible. Some effort has been made on the galactic branch.

Can you try that branch to see if it works?

joeldushouyu commented 1 year ago

It did compile with Galactic !

joeldushouyu commented 1 year ago

I am wondering if this has a ros2 version documentation.

I am willing to help testing this package in the ros2 environment if needed.

Timple commented 1 year ago

We have discussed this internally and we'll make an effort to support ros2 humble as well. I'll keep you posted!

mikolodz commented 1 year ago

Hi @Timple ! What's the current status of the ROS2 branch? Should I consider using it in my simulation or is it highly unlikely that it's going to be usable in the nearest future? Thank you a lot!

Timple commented 1 year ago

It should be operational for Humble. Please go ahead and try it out!

edit: documentation etc are not up to date yet.

mikolodz commented 1 year ago

It should be operational for Humble. Please go ahead and try it out!

edit: documentation etc are not up to date yet.

Hi Timple!

I've successfully build the project with your full_coverage_path_planner package and all the dependencies (at least the ones I'm aware of). But I'm not sure how to run the test examples.

I have copied the launch files into the ./install/full_coverage_path_planner/share/full_coverage_path_planner/ folder.

When I try to run the launch file example I'm getting the error:

$ ros2 launch full_coverage_path_planner test_full_coverage_path_planner.launch 
[INFO] [launch]: All log files can be found below /home/administrator/.ros/log/2023-06-16-15-08-37-447741-administrator-VirtualBox-118378
[INFO] [launch]: Default logging verbosity is set to INFO
[ERROR] [launch]: Caught exception in launch (see debug for traceback): Caught exception when trying to load file of format [launch]: Error trying to process rule "substitution":

Unknown substitution: find

Maybe you could give me some hints how to launch the examples? I've read your documentation in this repo, but it seems not to apply to the ros2 branch. Thank you!

edit: I replaced the substitutions "find" with "find-pkg-share" within the launch file and the error changed to:

ros2 launch full_coverage_path_planner test_full_coverage_path_planner.launch
[INFO] [launch]: All log files can be found below /home/administrator/.ros/log/2023-06-16-16-18-30-170012-administrator-VirtualBox-119430
[INFO] [launch]: Default logging verbosity is set to INFO
[ERROR] [launch]: Caught exception in launch (see debug for traceback): Caught exception when trying to load file of format [launch]: Attribute exec of type <class 'str'> not found in Entity node

It's the first time I'm trying to fix a launch file, so I'm not sure what I'm doing.. rotfl

edit 2: Migration process for launch files is described here: Migrating launch files from ROS 1 to ROS 2

I tried to apply most of the changes, but the error message is still the same which doesn't help with debugging. Also, when using --debug param in the launch command is not helping, because I'm getting no trace about which particular line in the xml launch file causes the error.

ros2 launch full_coverage_path_planner test_full_coverage_path_planner.launch --debug

I assume that you must have some testing script that you've beed using during the migration process to Ros2. Could you consider sharing it here or in the repo? Even if it's just a simple dirty snippet, it would help a lot! I would really appreciate that!

mikolodz commented 1 year ago

Hi @Timple, By any chance could you give me some hints on how should I proceed? It's been two weeks since I'm stuck and I'd really love to take a chance and test your module.

Thank you so much!