前回Jetson Nano (Jetpack 4.6) + ROS1 (Melodic) で Hector_SLAM を使ってみた(1)の続きです。
Hector_SLAMとmove_baseを使った自律走行に向けた前段です。
この方のサンプルを使わせていただきます。
こんなことをやってみます。前回つくったJetson NanoとRPLiDAR、Hector_SLAMのシステムが地図上でどこにいるのか表示してみます。
こういう部屋の中を移動します。
Jetson Nano と RPLiDAR が部屋の中のどこにいるのか表示します。
セットアップ
依存パッケージをインストールしておきます。使わないのもあるかもしれませんが、気にしません。
前回でmap-serverをお試し済みならros-melodic-map-serverはインストール不要です。
catkin_ws へ移動してサンプルをビルドします。
5つのファイルを編集します。
① move_base.launch
以下のタグをコメントアウト
<!–<node pkg=”roomba_500_series” type=”roomba500_light_node” respawn=”false” name=”roomba500_light_node” output=”screen”/>–>
② hector_hokuyo.launch
1:以下のタグをコメントアウト
<!–<node pkg=”hokuyo_node” type=”hokuyo_node” name=”hokuyo_node”/>–>
2:修正
<include file=”$(find hector_geotiff)/launch/geotiff_mapper.launch”>
↓
<include file=”$(find hector_geotiff_launch)/launch/geotiff_mapper.launch”>
③ global_costmap_params.yaml
‘/’を削除
global_frame: map
robot_base_frame: scanmatcher_frame
④ local_costmap_params.yaml
‘/’を削除
global_frame: map
robot_base_frame: scanmatcher_frame
⑤ default_mapping.launch
2か所修正
1:
<arg name=”base_frame” default=”base_footprint”/>
<arg name=”odom_frame” default=”nav”/>
↓
<arg name=”base_frame” default=”laser”/>
<arg name=”odom_frame” default=”laser”/>
2:
<!–<node pkg=”tf” type=”static_transform_publisher” name=”map_nav_broadcaster” args=”0 0 0 0 0 0 map nav 100″/>–>
↓
<!–<node pkg=”tf” type=”static_transform_publisher” name=”base_to_laser_broadcaster” args=”0 0 0 0 0 0 base_link laser 100″/>–>
move_baseのlaunchを起動
例えば、RvizのFixed Frameをmap から laserに変更してみます。
別ターミナルでRPLiDARを起動
Jetson と RPLiDAR を持ってうろうろしてみます。
矢印が原点(初期位置)からの移動方向を示しています。
Next
以下のような構成でやってみます。
シングルボードコンピュータ + ROS1 (Melodic) でノード間通信をやってみる
Leave a Reply