pseudowire

調べたことを書き残す

Open-RMFを使って群制御をやってみる

Env

  • Ubuntu 22.04
  • Docker Desktop 4.21.1 (
  • Ubuntu on Docker 20.04
  • ROS2 Foxy

Troubleshooting_1

root@5901057b3d24:~/ff_ros2_ws# rosdep install --from-paths src --ignore-src -y --rosdistro foxy
ERROR: the following packages/stacks could not have their rosdep keys resolved
to system dependencies:
ff_examples_ros2: Cannot locate rosdep definition for [turtlebot3_navigation2]
ff_examples_ros1: Cannot locate rosdep definition for [catkin]
free_fleet_client_ros1: Cannot locate rosdep definition for [move_base_msgs]
free_fleet_client_ros2: Cannot locate rosdep definition for [nav2_msgs]
free_fleet: Cannot locate rosdep definition for [cyclonedds]
ff_rviz_plugins_ros1: Cannot locate rosdep definition for [roscpp]
root@5901057b3d24:~/ff_ros2_ws# colcon build
Starting >>> free_fleet
Starting >>> rmf_fleet_msgs               
--- stderr: free_fleet                                                                     
CMake Error at CMakeLists.txt:15 (find_package):
  By not providing "FindCycloneDDS.cmake" in CMAKE_MODULE_PATH this project
  has asked CMake to find a package configuration file provided by
  "CycloneDDS", but CMake did not find one.

  Could not find a package configuration file provided by "CycloneDDS" with
  any of the following names:

    CycloneDDSConfig.cmake
    cyclonedds-config.cmake

  Add the installation prefix of "CycloneDDS" to CMAKE_PREFIX_PATH or set
  "CycloneDDS_DIR" to a directory containing one of the above files.  If
  "CycloneDDS" provides a separate development package or SDK, be sure it has
  been installed.
---
Failed   <<< free_fleet [8.85s, exited with code 1]
Aborted  <<< rmf_fleet_msgs [16.7s]                

これで解決。

sudo apt install ros-foxy-rmw-cyclonedds-cpp

Troubleshooting_2

EOLのROSの依存関係をアップデートする場合のコマンド。

rosdep update --include-eol-distros

Troubleshooting_3

root@5901057b3d24:~/ff_ros2_ws# colcon build

Starting >>> free_fleet_client_ros2
--- stderr: free_fleet_client_ros2                                                                                    
CMake Error at CMakeLists.txt:34 (find_package):
  By not providing "Findnav2_util.cmake" in CMAKE_MODULE_PATH this project
  has asked CMake to find a package configuration file provided by
  "nav2_util", but CMake did not find one.

  Could not find a package configuration file provided by "nav2_util" with
  any of the following names:

    nav2_utilConfig.cmake
    nav2_util-config.cmake

  Add the installation prefix of "nav2_util" to CMAKE_PREFIX_PATH or set
  "nav2_util_DIR" to a directory containing one of the above files.  If
  "nav2_util" provides a separate development package or SDK, be sure it has
  been installed.

---
Failed   <<< free_fleet_client_ros2 [23.0s, exited with code 1]
Aborted  <<< rmf_door_msgs [2min 25s]                                         

これで解決。

 sudo apt install ros-foxy-navigation2

Troubleshooting_4

サーバ機能のみ使いたいので、不要なものは削除。

root@5901057b3d24:~/ff_ros2_ws/src# rm -rf ./free_fleet/free_fleet_client_ros1
root@5901057b3d24:~/ff_ros2_ws/src# rm -rf ./free_fleet/free_fleet_client_ros2

Ref

github.com

qiita.com