stage_simulator_01 - KMiyawaki/tokuron GitHub Wiki
Stage Simulator
2次元平面上を動くロボットのシミュレーション
Stage のサンプルを実行する
-
ターミナルを全て閉じて開き直し、以下のコマンドを実行。
roslaunch turtlebot_stage turtlebot_in_stage.launch
画面の説明
- Stage が生成したシミュレーションの世界
- RViz (重要)
- ROS のシステムで頻繁に使用する可視化ソフト。
- 今回のサンプルではあらかじめ取得されている地図上にロボットが置かれている様子が表示されている。
- Joint State Publisher
- GUI 上でロボットの関節角を設定するソフト。特に使用しない。
ロボットのナビゲーション
- ロボット用語としてのナビゲーションは、任意の位置にロボットを自律移動させることを指す。次の 2 つのステップから成る。
- 自己位置推定
- 障害物回避しながら目標位置への移動
自己位置推定
- あらかじめ取得された地図の形と、ロボット搭載の LRF から得られたデータを比較することでロボットが現在地図上のどこにいるかを推定する。
- RViz 上で
2D Pose Estimate
ボタンをクリックし、地図上のロボットがいるであろう場所から向いている方向に向かって左ドラッグして離す。 - LRFのデータ(赤い細い線で示されている)が地図の壁とおおよそ一致すればOK。
- 注意
- このシミュレーションではもともとロボットの自己位置推定が完了した状態で始まっているので、推定の効果が分かりにくいかもしれない。
- しかし、実際のロボットは電源投入時に地図のどこに置かれたかはわからないため、自己位置推定は必須である。
ナビゲーションゴールの指定
- RViz 上で
2D Nav Goal
ボタンをクリックし、ゴール地点でロボットを向かせたい方向に向けて左ドラッグして離す。
- 経路が計算され、ナビゲーションが始まる。ゴールに到着し、指定された方向を向くと終了する。