経路の生成¶
ここでは、IKプランナを使った経路の生成の仕方を説明します。
依存パッケージのインストール¶
Ubuntuの場合、”hairo-world-plugin/misc/script” 以下にある “install-ompl.sh” というスクリプトを用いることにより、OMPL(https://ompl.kavrakilab.org/)を簡単にインストールすることができます。例えば Ubuntu 18.04 であれば
misc/script/install-ompl.sh
を実行すると、sudoのパスワードが求められるので入力してください。すると、OMPLが自動でインストールされます。
CMake によるビルド設定¶
まず、cmakeコマンドを使ってMakefileを更新します。Choreonoidのビルドディレクトリ上で
cmake ..
を実行すると、必要なライブラリをチェックしMakefileを更新します。(cmakeコマンドのあとのピリオドに注意してください。)
次にOMPLPluginとIKPlannerPluginを有効にします。Choreonoidのビルドディレクトリ上でccmakeコマンドを
ccmake ..
と実行し、 BUILD_OMPL_PLUGIN と BUILD_IKPLANNER_PLUGIN を “ON” にします。
IKプランナアイテムの作成と設定¶
メインメニューの「ファイル」-「新規」-「IKプランナ」を選択して生成してください。生成したIKプランナアイテムは、任意のボディアイテムの子アイテムとして配置します。アイテムツリービューで、生成したIKプランナアイテムにチェックを入れると、経路の候補点を生成する範囲(バウンディングボックス)を表示できます。
IKプランナアイテムのパラメータは以下の通りです。
パラメータ |
デフォルト値 |
単位 |
意味 |
---|---|---|---|
幾何学プランナ |
RRT |
- |
幾何学プランナを指定します。 |
BB下限 |
-5 -5 -5 |
m m m |
経路の候補点を生成する範囲の下限をx, y, zの順で指定します。 |
BB上限 |
5 5 5 |
m m m |
経路の候補点を生成する範囲の上限をx, y, zの順で指定します。 |
始点 |
0 0 0 |
m m m |
経路の始点を指定します。 |
終点 |
0 0 0 |
m m m |
経路の終点を指定します。 |
計算時間 |
1.0 |
s |
経路を生成するための計算時間を指定します。 |
ベースリンク |
- |
- |
IK(逆運動学)計算の基点リンクを指定します。 |
エンドリンク |
- |
- |
IK計算の終端リンクを指定します。 |
時間長 |
1.0 |
s |
アニメーションの時間長を指定します。 |
始点・終点の設定と経路の生成¶
始点と終点の設定¶
アイテムツリーで任意のIKプランナアイテムを選択・右クリックし、ポップアップメニューを表示してください。ポップアップメニューから「IKプランナ」-「始点を設定」または「終点を設定」を選択してください。選択すると、プロパティで指定した終端リンクの座標が、始点または終点に設定されます。
経路の生成¶
アイテムツリーで任意のIKプランナアイテムを選択・右クリックし、ポップアップメニューを表示してください。ポップアップメニューから「IKプランナ」-「経路を生成」を選択すると、経路の生成を試行します。結果は、メッセージビューに表示されます。
経路が生成されると、IKプランナアイテムの子アイテムとして、経路の候補点を記録した「StatePointSet」と、経路を記録した「SolvedPointSet」が生成されます。アイテムツリービューで、各子アイテムにチェックを入れると、それぞれのアイテムに記録された点が表示されます。
アニメーションの再生¶
経路の生成が成功すると、アニメーションとして動作を確認できます。タイムバーの「再生開始」を押すと、アニメーションが再生されます。
※このIKプランナは試験的に実装したものです。経路の生成は、ランダムな点を生成して計算されるため、計算毎に結果が異なります。