前回の記事
前回はROS2導入までの準備をしました。
VMware上のUbuntu 22.04にROS2を入れてOpen-RMFデモを動かしてみた(ROS2導入編)
今回はOpen-RMFを導入したいと思います。
手順
- ホストOS(Windows11)準備
- ゲストOS(Ubuntu 22.04(LTS))準備
- ROS2導入
- Open-RMF導入 ←今回はここの内容
- デモ操作
思いのほか長くなりそうだったので、いくつかの記事に分割しています。
VMware上のUbuntu 22.04にROS2を入れてOpen-RMFデモを動かしてみた(準備編)
VMware上のUbuntu 22.04にROS2を入れてOpen-RMFデモを動かしてみた(ROS2導入編)
VMware上のUbuntu 22.04にROS2を入れてOpen-RMFデモを動かしてみた(Open-RMF導入編)
VMware上のUbuntu 22.04にROS2を入れてOpen-RMFデモを動かしてみた(デモ操作①)
4.Open-RMF導入
公式を参考にOpen-RMFを導入していきます。
https://github.com/open-rmf/rmf
今回は「Binary installation」の方法でOpen-RMFを導入していきます。
(この方法が推奨されていたので、方法的に一番固いやり方と思っています。)
セットアップ
Open-RMFを導入する前のセットアップを行います。
今回はデモを動かしたいので、「flask-socketio,fastapi,uvicorn」は導入します。
sudo apt update && sudo apt install \
python3-pip \
curl \
python3-colcon-mixin \
ros-dev-tools \
-y
sudo sh -c 'echo "deb http://packages.osrfoundation.org/gazebo/ubuntu-stable `lsb_release -cs` main" > /etc/apt/sources.list.d/gazebo-stable.list'
wget https://packages.osrfoundation.org/gazebo.key -O - | sudo apt-key add -
# These pip packages are only used by rmf_demos which are not released as binaries
python3 -m pip install flask-socketio fastapi uvicorn
rosdepを初期化しておきます。
sudo rosdep init # run if first time using rosdep.
rosdep update
colcon mixinを未導入の場合は実施下記実施しておきます。
colcon mixin add default https://raw.githubusercontent.com/colcon/colcon-mixin-repository/master/index.yaml
colcon mixin update default
Open-RMFの導入
導入の方法は色々紹介されていますが、「Building from source」ではなく、「Binary installation」でインストールしていくこととします。
下記コマンドでインストールします。distroは「humble」とします。
sudo apt update && sudo apt install ros-humble-rmf-dev
ワークスペースを作成し、ビルドします。
mkdir ~/rmf_ws/src -p
cd ~/rmf_ws/src
git clone https://github.com/open-rmf/rmf_demos.git -b 2.0.3
cd ~/rmf_ws
colcon build
ビルドの最後に微妙にwarningが出たりしました。
問題あるかどうかはこの後、デモ動かしながら確認していこうと思います。
ログ(一部抜粋)
・
・
・
---
Finished <<< rmf_demos_maps [29.4s]
Starting >>> rmf_demos
Finished <<< rmf_demos [1.59s]
Starting >>> rmf_demos_gz
Starting >>> rmf_demos_gz_classic
Finished <<< rmf_demos_gz [1.38s]
Finished <<< rmf_demos_gz_classic [1.44s]
Summary: 10 packages finished [33.1s]
1 package had stderr output: rmf_demos_maps
ubuntu@ubuntu2204:~/rmf_ws$
ちなみに、同じ設定の環境で「Building from source」も試しましたが、これより多くのwarningが出たため、「Binary installation」の方が方法としては固いと思っています。
ログ(一部抜粋)
2 warnings generated.
---
Finished <<< rmf_fleet_adapter_python [1min 59s]
Starting >>> rmf_demos_fleet_adapter
Finished <<< rmf_demos_fleet_adapter [1.66s]
Starting >>> rmf_demos
Finished <<< rmf_demos [2.01s]
Starting >>> rmf_demos_gz
Starting >>> rmf_demos_gz_classic
Finished <<< rmf_demos_gz [2.16s]
Finished <<< rmf_demos_gz_classic [2.21s]
Summary: 59 packages finished [2h 7min 52s]
21 packages had stderr output: ament_cmake_catch2 menge_vendor nlohmann_json_schema_validator_vendor rmf_api_msgs rmf_building_sim_common rmf_building_sim_gz_plugins rmf_demos_dashboard_resources rmf_demos_maps rmf_fleet_adapter rmf_fleet_adapter_python rmf_robot_sim_gz_plugins rmf_task rmf_task_ros2 rmf_task_sequence rmf_traffic rmf_traffic_editor rmf_traffic_editor_test_maps rmf_traffic_ros2 rmf_visualization_rviz2_plugins rmf_visualization_schedule rmf_websocket
ubuntu@ubuntu2204:~/rmf_ws$
次の章で実際にデモを動かしてみようと思います。