前回まではルンバでSLAMを行い環境地図を作成し、その環境地図からGazebo Worldを作成しました。
今回は作成したGazebo Worldの上でシミュレーションしてみます。

ルンバのROSパッケージは以下のものを使用しています。
作成したworldモデルでgmapping-SLAMを行う
1.map2worldで生成されたWorldモデルをgazebo環境にコピーする。
1
2
| cp -p ~/catkin_ws/src/map2gazebo/worlds/map.sdf ~/catkin_ws/src/create_autonomy/ca_gazebo/worlds/map.world
cp -rp ~/catkin_ws/src/map2gazebo/models/map ~/catkin_ws/src/create_gazebo_models/models/
|
2.launchファイルを作成する。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
| cd ~/catkin_ws/src/create_autonomy/ca_gazebo/launch
vi create_otafab1.launch
|
3.SLAMモードでgazeboを起動する。
1
2
3
4
5
| export LOCALIZATION=slam
export RVIZ=true
export NUM_ROBOTS=1
export LASER=rplidar
roslaunch ca_gazebo create_otafab1.launch
|
これで取り込んだWorldモデルでSLAMができる状態になります。
SLAM実行中のrqt_graphです。

作成したworldモデルでNavigation(自律走行)を行う
1. Navigationを行う場合は以下のディレクトリにmap.pgm、map.yamlをコピーします。
1
| ~/catkin_ws/src/create_autonomy/navigaton/ca_move_base/maps/
|
2. Navigationモードでgazeboを起動します。
1
2
3
4
| export LOCALIZATION=amcl
export RVIZ=true
export LASER=rplidar
roslaunch ca_gazebo create_otafab1.launch
|
Navigationの様子
Navigationを行っている様子をYouTubeにアップしておきました。
Navigation実行中のrqt_graphです。

次はルンバ実機で試してみます。