7.2.ロボットアームのハイブリッド制御2
−位置制御型ドライバーを持つロボットのハイブリッド制御− 2007−1−22
著書「詳説ロボット運動学」第6.2節
本homepage「詳説ロボットの運動学:その補足説明」
本homepage「3-7-1robhybridcntrl1」参照
ソースファイル hybridctrl2Source.zip 実行ファイル
hybridctrl2exe
・2次元ロボットの位置と力のハイブリッド制御を行う.
・ロボットは作業空間での位置を入力とし,ほとんど時間遅れなくロボット先端位置の応答が得られるとする.(ステップ入力には近似的に一定速度で目標に向かう応答をする)
・入力速度には限界があるとする.限界以上の入力値は限界値に押さえられる.
・力制御にはハンドに取り付けたばねの撓み制御(位置制御)によって行う.
・物体の設置位置には誤差があると仮定する.
・ハイブリッド制御の7種の手法を本Homepage補足説明で述べた.
・このシミュレーションではその中の下記の場合を扱う.
Hybrid7 :(1)輪郭既知で作業座標系で位置と力を分離してフィードバック制御する場合
Hybrid8 :(2)輪郭未知で力制御のみ行う場合
[ハイブリッド制御シミュレーションにおける前提]
・ロボットタイプ:
2自由度ロボット2種(円筒座標ロボット,SCARAロボット)についてシミュレーションする.
・メカニズム:
下記のパラメータは2種ロボットについて変更しない.
アーム長・ワーク質量・慣性モーメント・アーム質量
モータパワー・モータ慣性モーメント・許容最大トルク
減速比・順方向伝達効率・逆方向伝達効率
減速機の伝達効率を考慮した動力学計算をしている(本ホームページ補足説明参照).
・物体輪郭
直線・円・正弦波曲線の3種の輪郭をなぞり、法線方向の力制御する.
その位置などは変更できる.
物体の設置誤差を仮定している.この誤差は運動初期に力誤差となる.
既知輪郭上で台形速度則による時間関数の指令値としている.
物体の位置形状未知でハイブリッド制御する場合にも上記3種の輪郭を使う.
このとき輪郭上の移動は一定速度とする.
・重力:ここでは重力作用がないと仮定する.
・制御系:
作業空間において輪郭に沿う位置制御と法線力のハイブリッド制御を下記の2種についてシミュレーションする.
(1)輪郭既知で輪郭接線方向誤差フィードバックした位置制御と,法線力誤差をフィードバックした力制御(2変数による2状態制御)
(2)未知輪郭に沿う方向(力成分が0の方向)の位置制御と法線方向力制御(2変数による2状態制御)
制御系の特性(固有振動数など)を設定してフィードバックゲインを決めるようにしている.
・変更できるパラメータ
ロボットタイプ,アーム長,ハンドの力センサ用ばねの剛性
物体輪郭,その位置,設置誤差
ハイブリッド制御方法,ゲイン
指令法線力
[ハイブリッド制御シミュレータの使い方]
(1)使用ファイル名(ワークスペース名)
・使用file名:robhybridctrl2(program名:robhybridctrl2.c, graph2d.h, robot41.dat, robot42.dat)
データファイルrobot51.dat, robot52.dat, ....など
・データファイルも一緒の上記ファイルに入れる.
・データファイルを自分で作るときは既存のデータファイル参照のこと.
(2)文字画面でのキー操作
・(0)スタート → (1)ロボットタイプ選択・アーム長設定 → (2)ハンドばね定数設定
→ (3)制御法・ゲイン設定 → (4)対象物体選択・位置大きさ・設置誤差設定
→ (5)接触力設定 → (計算)→ 描画画面へ
または (0)スタート → データファイルから全データを読み込み →(計算)→ 描画画面へ
(3)描画画面におけるキー操作
・描画画面表示
画面には左:(1)ロボットの運動
右:(2)(X,Y)位置・輪郭接線方向誤差の推移グラフ (3)法線力・誤差グラフ
(4)モータ駆動トルク変動グラフ
が描画される.
・画面表示の操作
‘s’:時間経過による運動の推移
‘0’:初期状態に戻る
‘w’, ‘W’:ロボット運動画面の縮小拡大
・パラメータ変更の操作 描画画面でキー操作後,文字画面へ
‘r’:データファイルから全パラメータを読み込むために(0)へ
‘a’ or ‘b’:ロボットを選択し(2)へ
‘k’:ハンドのばね定数変更のために(2)へ
‘h’:ハイブリッド制御法変更のために(3)へ
‘g’:ゲイン変更のために(3)へ
‘L’, ‘C’, ‘S’:物体輪郭変更のために(4)へ
‘e’:物体設置誤差変更のために(4)へ
‘f’:法線力変更のために(5)へ
ESC:終了
[註]1.ゲイン設定は第1,2関節制御系毎に系の固有振動数ωn[Hz]、第2時定数の逆数α[1/s]を入力する.ゲインはこれらの値から計算する.
2.軌道上の点で逆運動学の解がないときは文字画面で警告を出し全て終了
3.ロボットの機構パラメータ等は変更しない.
4.輪郭に沿う移動量を指令値とする.
5.物体の設置位置誤差は初期の法線力誤差となる.時間の推移と共に設置誤差の影響はなくなる.
6.Hybrid7を選択すれば対象物体は既知,Hybrid8を選択すれば対象物体は未知である.
7.1項目変更しても他はそのまま保たれる.2項目以上変更したいときはその項目毎に変更する.
・運動推移グラフにはX,Y方向変位と輪郭に沿う移動誤差が表示される.
[ハイブリッド制御一般の特徴]
・作業空間における移動量のFB制御とばね撓み量のFB制御であり,ロボットは速度・加速度や力に関係なく忠実に指令通りの位置を出すことを前提としているので,これは典型的な線形制御問題である.ロボットの特殊性はない.
・対象物が既知でも未知でも位置力のハイブリッド制御は全く同じ制御性が得られている.
・対象物が既知の場合は移動方向が分かっているのに対し,未知の場合は力成分が0の方向(移動方向)をばね撓みからリアルタイムに計算しているだけの違いであり,制御性には関係ない.
・位置制御型ロボットによるハイブリッド制御はトルク制御型ロボットに較べて格段に容易である.
[位置制御型ロボットによるハイブリッド制御の再説明と特徴]
(1)ハイブリッド制御7
−輪郭既知で作業座標系で位置と力を分離してフィ−ドバック制御する場合−
・作業座標系で輪郭に沿う方向に運動制御(位置制御)し,法線方向には力(撓み)制御とする.
・指令値は輪郭上の位置にばねの撓みによる位置ずれを加算した値とする.すなわちは撓む前のロボット先端位置を表す.
・t方向位置誤差修正FB量: (7−1)
・センサによって測定した撓みから法線力から計算すると
(7−2)
・指令接触力をとすると力の誤差は
(7−3)
・力の誤差を撓み誤差(法線方向の修正量)に直すと
, (7−4)
・撓み誤差のFB量: (7−5)
・表示のFB量を作業空間量に逆変換: (7−6)
⇒ (7−7)
・制御系の方程式は,ロボットの応答を1(位置指令通りに応答する)として
(7−8)
・各成分は
(7−9)
(7−10)
・系の特性は
(7−11)
(7−12)
で表される.
・以上の式で見る通り,制御にはロボットの特性は全く現れない.単純な線形制御である.
・位置のみに関する制御であるから,力や慣性は考慮する必要がない.
・理論的には,撓みを含む位置情報のみを指令値として与えれば,指令通りの位置と法線力が得られるはずである.すなわち誤差のFBループは必要ない().
・しかし実際には外乱や対象物の設置誤差が避けられず,それに起因する誤差を修正するためにFBが必要であり,誤差を安定かつ速やかになくす系のゲイン設定が望ましい.
・位置指令値に法線力に相当する撓みを加算したが,法線力制御系に積分要素があれば必ずしも加算の必要がない.
・トルク制御型ロボットと異なり,位置制御型ロボットでは法線力の反作用やばね剛性とサーボ剛性の比較の必要がない.
(2)位置制御型ロボットによるハイブリッド制御8
−輪郭既知で位置・力(撓み)制御を各関節に対応させる場合−
・輪郭の形状・位置が未知であるから,ハンドのばね撓みから力が0の方向に移動させる.ロボッ
トアームから見た輪郭接線方向角は
, (8−1)
・ロボット第2アームの傾きをφとすると, (8−2)
・輪郭上で一定速度で移動するを指令値とする.その輪郭接線方向の移動指令値がである.
・制御系とその特性等は(1)ハイブリッド制御7で述べたものと同じである.