🏤

unreal engine 5 の自作した屋内環境でROS2のnavigationを行う方法

2023/07/30に公開

PCの環境構築方法

こちらをごらんください。
今回は自作した屋内環境でturtolbotを動かす方法を説明します。

屋内環境

とりあえず屋内環境は

https://www.unrealengine.com/marketplace/ja/product/office

https://www.unrealengine.com/marketplace/ja/product/office-scene

これらなどを利用して作成します。

家などを作成するときに注意があります。


このような環境を作成します。

blueprintの変更

次にblueprintの変更を変更します。
次にtutlebot3-UEにあるlevel blue printを開いてください。
ここから開けます。

そして下のように赤枠に部分を自分のprojectにlevel blue printコピペしてください。

そのさいこの紫色の部分が変数に昇格されていないので自分で変数に昇格してください。

昇格されるとこのようになります。
そして詳細設定からデフォルト値にburgerとwaffleを追加し

このように設定しましょう。

Pluginsの追加

tutlebot3-UEの中にある

Pluginsを自分のprojectの中にPlugINをコピペしてください。

OccupancyGridMapの追加

その次に
移動させたいマップ内に

赤枠で囲んだオブジェックとを置きましょう。
これを設定から

自分が動かしたい建物の床を指定することで

このようなものが生成されます。
屋根があると高さで屋根を地図に取得するため
https://rapyutasimulationplugins.readthedocs.io/en/latest/doxygen_generated/html/d2/dde/class_a_occupancy_map_generator.html#a4984d0bdf4e3c5347a20f3dbf1c03522

ここに記載されているように高さを変更します。

turtlebotを追加して実行

ここから屋内にburgerとwaffleを置きます。

plugINが出ない場合があるので設定からプラグインコンテンツの表示ができます。

burgerとwaffleここにあります。

実行をしましょう。
pgnの確認はお願いします。

つぎにROS2の設定をします。別のターミナルから

sudo apt install ros-foxy-navigation2 ros-foxy-gazebo-ros ros-foxy-turtlebot3*

mkdir -p ~/nav2_ws/src
cd ~/nav2_ws/src

git clone https://github.com/ros-planning/navigation2.git --branch foxy-devel

cd ~/nav2_ws
rosdep install -y -r -q --from-paths src --ignore-src --rosdistro foxy

colcon build --symlink-install

このように設定します。
https://github.com/ros-planning/navigation2
詳しい説明が見たい方はここから

実行が終わってから

source /opt/ros/foxy/setup.bash
cd turtlebot3-UE && source fastdds_setup.sh
ros2 launch nav2_bringup tb3_simulation_launch.py use_simulator:=False map:=<path to turtlebot3-UE>/Content/<自分の生成した>.yaml 

これを行うと


このようになります。

Discussion