MobilePlannerプラグイン

MobilePlannerはロボットの移動経路計画Pluginです。
OpenHRPの経路計画をChoreonoidに適用したものです。
インターフェースが不十分なため少々扱いにくいです。

基本情報

  • プラグイン名: MobilePlanner
  • 依存プラグイン:Grasp

プランナーバー

「=MobilePlanner=」というタイトルを持つプランナーバーを使って、経路計画を行います。
Graspプラグインのプランナーバー「=Planner=」によって登録されたロボット(SetRobot)、把持対象物(SetObject)、障害物(SetEnv)を対象に計画を行います。
対象物や障害物を避けるロボットの移動経路を求めることができます。
把持計画は行いませんが把持対象物を設定しないとエラーにより動作しませんので注意してください。

各種ボタンの役割は以下のとおり
 setStart:始点設定
 setGoal:終点設定
 calcPath:経路計画

始点、終点設定ではボタンを押した時点でのロボットの位置、向きを始点、終点として設定します。
始点、終点の設定を終えたらcalcPathにより経路計画を行います。
始点設定→終点設定→経路計画の順で実行してください。

各種設定

インターフェースは製作していませんので、計画の対象範囲やロボットの移動方法、計画に使用する手法の設定などは直接ソースコードを変更してください。

~計画の対象範囲~
経路計画を行う対象範囲の設定です。
「PathPlannerSVC_impl.cpp」中のOpenHRP_PathPlannerSVC_impl()で行っています。
boundsでx、yの対象範囲を指定してください。

~ロボットの移動方法~
直進とその場回転によって移動する”TurnGoTurn”か、全方位移動の”OmniWheel”から選択してください。
「MobilePlannerController.cpp」、calcPathstart()中のsetMobilityName()で行っています。

~計画に使用する手法~
PRM法とRRT法から選択してください。
「MobilePlannerController.cpp」、setStart()中のsetAlgorithmName()で行っています。
各手法の追加設定はそれぞれの手法のソースファイルで変更してください。