3.10.1 直線回避による位置決め運動 2009−11−9
(「詳説ロボットの運動」第8章8.2.2項参照)
ソースファイル LineAvoidSource 実行ファイル LineAvoidexe
・壁の端や柱などを衝突せずにワークを目標位置へ位置決めする問題である.
・半平面の壁のような場合,一方が開いていると仮定すると,開いた側からアームを伸ばして必ずしも接触せずに目標に位置決めすることができる.
・柱のような単一直線の場合,両側が開いているので,接触しない位置決めの方が自然である.
・このシミュレータでは一方が開いた薄い垂直壁を障害物として,壁の端に接触して位置決めする場合の計算と,接触しないで位置決めする場合があればその計算を示す.
[シミュレーションにおける前提]
・ロボットタイプ:
7自由度ロボット4種((1).RP-RP-RPR, (2)RQ-PP-RPR, (3)QP-RP-RPR, (4)QP-PQ-RPR, )についてシミュレーションする.(P,Q,RはX,Y,Z軸を回転軸とする関節.直動関節は扱わない.オフセットなし)
・直線接触・位置決めする関節
直線接触させる関節は1つ(L),位置決めする関節は3つ(I, J, K)であり,各ロボットタイプによってその関節番号は決まっているとする.タイプ(1),(2)はL=1,(I, J , K)=(2, 3, 4),タイプ(3),(4)ではL=2,(I, J, K)=(1, 3, 4)である.
関節(5, 6, 7)は姿勢決めをする.これらは変更しない.
・ロボットの位置・諸元
ロボットベースは静止座標系の原点とする.アーム長・太さなどは変えない.
・障害物
薄壁がから方向の直線を端とし,-X軸方向に伸びる半平面とする.壁とロボットの間隔hyは変更できる.
・ワークの目標位置姿勢
目標位置は変更できる.姿勢は直方体ワークを上から下向きに置くとする.変更しない.
[シミュレータの使い方]
(1)使用ファイル名(フォルダ名)
・使用file名:3-10-1 lineavoid (program名:LineAvoid.c, LINE.c, POINV2.c funcall.c, graph3d.c)
(2)文字画面でのキー操作
・設定変更で数値を入力する場合以外は全て描画画面で操作する.
(1) スタート → 任意キーで描画画面へ
(2) 文字画面で変更する項目:(G)目標位置数値
(O)壁端の位置数値
(3)描画画面におけるキー操作
・パラメータ変更の操作(キー操作)
‘F’:ロボット選択モード → 1〜4どれかをキーイン → 選択したロボット表示
‘O’:薄壁の位置設定モード → 文字画面へ → Y方向位置hyのみ数値入力 → 描画画面へ
‘G’:ワークの目標位置設定モード → 文字画面へ → 目標位置入力 → 描画画面へ
‘B’:最終壁回避と位置決めの計算モード → ‘a’:位置決め計算 → ‘b’:直線接触計算 → この繰り返し
‘C’:軌道上の運動モード → ‘s’キーで初期ポーズから目標に到るポーズへの運動描画
‘D’:壁に接触すると思われるアーム番号設定:現在は使う必要がない.
ESC:終了
・画面表示の操作
‘s’:時間経過による運動の推移
‘x’, ‘X’, ’y’, ‘Y’, ‘z’,’Z’:X, Y, Z座標正負に移動
‘p’, ‘P’, ‘q’,’Q’, ‘r’,’R’:X,Y,Z軸回りに正負に回転
‘0’:軌道上の運動を初期状態に戻す
[註1]ロボットタイプ・目標位置・壁位置等は仮に設定されている.
[註2]設定変更はどの時点でもできる.但し前の情報は失われる.
[シミュレーションの例]
(1)初期状態(仮の設定) (2)ロボットタイプ選択
ロボットタイプ・壁の位置・目標の位置設定は
初期状態からでも,以下のどの段階でもできる.
(3)目標に向かって計算進行 (4)壁に接触しない位置決め解
‘a’のみ,’b’のみの繰り返しでもよい. これを(6)の運動の目標解としても,次の接触す ‘a’,’b’の両方とも解なしなら’B’で計算の初めに戻る. る位置決め解を目標解としてもよい.
(5)壁に接触した位置決め解 (6)初期ポーズから目標への運動
解が存在するのに得られない場合がある. 目標に向かって関節変位を直線的に変化させる運動.
[半平面の壁を回避する位置決めの特徴]
(1)ロボットタイプと解存在の可能性
・壁の向こう側に腕を伸ばして目標に位置決めする動作には,ロボットタイプによって難易に差がある.
・人間型(初めの4関節がRP-RP)ロボットは他と較べて最も位置決めし易い.
・第1関節がRでないタイプは壁の向こう側に位置決めし難い.
・直線接触用の関節Lより先に早い段階でR関節があれば,位置決めのための動作範囲が広くなり,壁回避位置決めがし易くなる.
(2)直線接触と位置決めの繰り返し計算
・壁に接触しない位置決め解は比較的容易に得られる.
・但し,’a’, ‘b’の繰り返し方によって違ったポーズになる.すなわち,自由空間における7自由度ロボットによる位置姿勢決めの解は不定であるから,経過によって色々な解があり得る.
・壁の端直線に接触する位置決め解は確定的である.複数個の解があり得るが,初期ポーズから少しづつ変化させる手順では大抵の場合1通りである.(最後の3関節による姿勢決めの多重性は除く)
・直線接触する位置決め解は,’a’, ‘b’の繰り返し方によって解が得られたり得られなかったりする.
・すなわち,この解を自動的に得ることは難しい.