とまとの雑記

TurtleBot3のシュミレータ環境を入れる時のメモ

こんばんは、とまとです。
新しいPCにROS(TurtleBot3のシュミレータ環境)をセットアップしたので、メモを残しておきます。

インストール

ここを見ながら、環境のセットアップをします。
良い感じのインストーラーとかも揃っててよいめですね。

$ cd ~/catkin_ws && catkin_make

で、catkin_make is currently not installed.みたいなことを言われたら、

$ source /opt/ros/your-distro/setup.bash

で解決出来ると思います。

シュミレーション環境(turtlebot3)

ここを見ながらやっていけばいいです。navigationを使用しない場合は。

使用する場合は、なんか躓いたので、解決法のメモを残しておきます。(2018/07/18の情報です)
何かcloneとかをそもそもミスってる可能性もあります。

基本的には、

$ roslaunch turtlebot3_navigation turtlebot3_navigation.launch
$ roslaunch turtlebot3_slam turtlebot3_slam.launch

この2つを追加で立てれば、navigationして地図とかも良い感じに作ってくれます。
自分の落としてきたlaunchファイルがおかしいのか、それぞれを立てるとrvizもたつようになっていたので、それを変更します。

~/catkin_ws/src/turtlebot3/turtlebot3_navigation/launch以下のturtlebot3_navigation.launchですね

<launch>
  <!-- Arguments -->
  <arg name="model" default="$(env TURTLEBOT3_MODEL)" doc="model type [burger, waffle, waffle_pi]"/>
  <arg name="map_file" default="$(find turtlebot3_navigation)/maps/map.yaml"/>
  <arg name="open_rviz" default="false"/>

  <!-- Turtlebot3 -->
  <include file="$(find turtlebot3_bringup)/launch/turtlebot3_remote.launch">
    <arg name="model" value="$(arg model)" />
  </include>

  <!-- Map server -->
  <node pkg="map_server" name="map_server" type="map_server" args="$(arg map_file)"/>

  <!-- AMCL -->
  <include file="$(find turtlebot3_navigation)/launch/amcl.launch"/>

  <!-- move_base -->
  <include file="$(find turtlebot3_navigation)/launch/move_base.launch">
    <arg name="model" value="$(arg model)" />
  </include>

  <!-- rviz -->
  <group if="$(arg open_rviz)">
    <node pkg="rviz" type="rviz" name="rviz" required="true"
          args="-d $(find turtlebot3_navigation)/rviz/turtlebot3_navigation.rviz"/>
  </group>
</launch>

<arg name="open_rviz" default="false"/>の部分をちゃんとfalseにします。slamの方も同じ感じです

また、<node pkg="map_server" name="map_server" type="map_server" args="$(arg map_file)"/>でmapserverを立てていますが、これだと参照しているmapがずれているっぽくて上手くnavigation出来なくなってしまうので、

  • mapserverを立てない
  • 違うpgmを参照する
  • map.yamlを調整する

等の対処が必要そうです(要確認)

`./maps/map.yaml'

image: map.pgm
resolution: 0.050000
origin: [-10.000000, -10.000000, 0.000000]
negate: 0
occupied_thresh: 0.65
free_thresh: 0.196

見た目そんなに悪く無さそうですけどね。分かったらまた追記します。