力制御とコンプライアンス制御は、ロボットの力を制御する機能である。また、モーションコマンドを追加することで、モーションが行われると同時に力を制御することができる。コンプライアンス統制と強制統制には以下のような違いがある。
-
コンプライアンス管理
-
コンプライアンス・コントロールの場合、ロボットはロボットの終端TCPで外力に適合し、外力が除去されると、ロボットを本来あるべき位置に戻すための力が発生する。
-
このアプローチは、ロボットがでこぼこの表面を直線で移動しているときに、ロボット自身や表面に損傷を与えずに移動することを保証したい場合に利用できる。これはまた、ワークの近くで予期しない衝突を防ぐために利用することができる。
-
-
強制制御
-
力制御の場合は、ロボットの終端でTCPに力が適用される。力が発生した方向に加速度が発生し、ロボットは動きの方向に加えて力の方向にも同時に移動する。
-
ロボットが物体に接触すると、設定された力と物体の反発力が平衡になるまで、物体に力が加えられる
-
このアプローチは、ロボットがでこぼこの表面上を直線で移動しており、サーフェスに一定の力が適用されるようにしたい場合に利用できる。これは、ロボットが一定の力で押す必要がある作業、すなわち研磨作業にも利用できる。
-
注意
コンプライアンス/力制御は特異点の影響を受け、振動を引き起こす可能性がある。注意し、特異点の近くでの使用は避けてください。
注釈
コンプライアンスコマンドと強制コマンドは現在の座標に基づいて実行される。タスクのデフォルト座標はベース座標であり、座標はSetコマンドで変更できる。
-
図 1は、ベース座標に+Z方向の力/コンプライアンス制御が適用されたときの動作方向。
-
図 2は、工具座標に+Z方向の力/コンプライアンス制御が適用されたときの動作方向。
コンプライアンス管理
コンプライアンス制御はロボット端部のTCOPに力を加えたときに設定した剛性に応じて外力に対応する機能である。目標点で力のバランスをとり、バランス点から離れて変位が生じた場合に反発力を発生させる制御方法である。コンプライアンス制御中、ロボットエンドはバネのように跳ね返る。
-
モーションコントロールのみを使用しているときに衝突が発生すると、衝突した物体が損傷する可能性がある。
-
斗山ロボティクスのロボットは、衝突が発生すると安全に停止するが、 安全限界>衝突感度などのユーザー設定によっては、以下のような状況が発生する可能性がある。
-
-
モーションコントロール中にコンプライアンス・コントロールがONに設定されている場合、ロボットは衝突したオブジェクトに合わせて移動する。
Fが外力、Kが剛性、Xが距離であれば、次の式が成り立つ。
-
F = K * X
-
K = F/X
-
X = F/K
上記の式から、コンプライアンス制御の剛性を1000N/mに設定し、ロボットが1mm移動すると、発生する外力は1Nとなる。
-
F = 1000 N/m * 0.001 m = 1 N(0.001 m = 1 mm)
注釈
コンプライアンスコマンドのプロパティで、次の値を設定できる。
-
モード
-
オン:コンプライアンス管理が可能
-
変更:コンプライアンスモードがオンに設定されている場合、剛性に変更される
-
オフ:コンプライアンス制御を無効にする
-
-
剛性範囲
-
M/Hシリーズ:平行移動(0 ~ 20000N/m)、回転移動(0 ~ 1000Nm/rad)
-
Aシリーズ:平行移動(0 ~ 10000N/m)、回転移動(0 ~ 300Nm/rad)
-
剛性の値が低いと外力により穏やかに反応し、目標点に戻るまでに時間がかかる
-
-
時刻を設定する
-
現在の剛性値が設定された剛性値に達するまでに必要な時間(0 ~ 1秒)
-
注意
-
工具重量とTCP(工具中心点)が正確に設定されていること。工具重量が不正確な場合、ロボットは工具重量を外力として検出し、[コンプライアンス(Compliance)]コマンドをオンに設定すると位置エラーが生成される。
-
ドレスパックの張力は、ロボットに外部トルクを発生させる可能性がある。したがって、ドレスパックを取り付けるときは注意を払う。
-
非同期モーションまたはブレンドモーションの実行中は、コンプライアンスのオン/オフを切り替えることができない。
-
コンプライアンスコマンドのオン時に、線形動作のみが許可される。MoveJやMoveSJのような関節運動は許されない。
-
コンプライアンスコマンドのオン時に、ツールウェイトまたはTCPを変更できない。
-
コンプライアンスコマンドオン時に、モーション実行中に生成されるトルクのコンプライアンスのために、ターゲット点に正確に到達できない可能性がある。したがって、目標点付近でコンプライアンス制御をオンにすることを推奨する。あるいは、剛性値を大きく設定することで位置誤差を最小化することができる。
フォースコントロール
力制御は、設定された力と反発力のバランスが取れるまで力制御方向に力を加える機能
-
ロボットを設定された力の方向に移動し、物体と接触すると入力された力(N)を維持する
-
一定の力を加えながら、力の方向とは異なる方向への運動制御が可能
-
最小設定は+/-10Nで、0.2Nの解像度で微調整可能
-
特異点ゾーンで強制制御を使用できない
-
n一般的に、コンプライアンス制御は力制御と組み合わせて使用され、力制御が外力に適合するようにする
注釈
Force Commandのプロパティから、以下の値を設定できる。
-
モード
-
オン:強制制御を有効にする
-
オフ:強制制御を無効にする
-
-
希望する力の範囲
-
X、Y、Z:10 -(各ロボットの最大)N
-
A、B、C:5-(各ロボットの最大)Nm
-
最大力の詳細については、 安全パラメータの上限/下限しきい値範囲とデフォルト値.
-
-
ターゲットの方向
-
各方向の選択された目標値に移動する。
-
複数の選択が可能。
-
強制制御は、強制設定後の方向設定でのみ実行可能である。
-
選択された複数の方向のいずれかが目標力に達した場合、他の方向の目標値に達するまで動き続ける。
-
-
相対モード
-
このモードを有効にすると、ロボットに加えられた外力を0に較正し、力制御精度を向上させる。
-
相対モードを無効にした場合、目標にかかる実際の力は、設定力と外力の和に等しい。
-
相対モードを有効にすると、ターゲットにかかる実際の力は設定された力と等しくなる。
-
-
力制御中にポーズや外力によって偏差が生じることがある。
-
力制御の間、正確な目標点に到達しないことが可能である。したがって,目標点付近での力制御を可能にすることが推奨される。
-
-
時刻を設定する
-
現在の力値が設定力値に達するまでに必要な時間(0-1s)
-
[ねじ山]コマンド
スレッドはタスクエディタで作成・実行できる。
注釈
ねじ切りの制約は次のとおりである。
-
スレッド名の先頭に数字を付けることはできず、小文字、数字、アンダースコアのみを含めることができる。名前は30文字を超えてはならず、別のスレッド名と重複してはならない。
-
タスクエディター画面で、[スレッド]コマンドをクリックすると、[スレッド]コマンドと[スレッドの終了]コマンドの両方がタスクリストパネルに追加される。タスクごとに最大4つのスレッドが許可される。
-
次のコマンドは単独で設定することはできず、条件文内に実装する必要がある。
-
移動、L移動、J移動、SX移動、SJ移動、C移動、 B移動、スパイラル移動、周期移動、JX移動
-
定義、セット、サブ、ねじ切り、分断、 重量の測定
-
強制制御コマンド(コンプライアンス、強制)
-
シグナルコマンド(シグナルの追加、シグナルの設定、シグナルの取得、シグナルの削除)
-
高度なコマンド(ハンドガイド、ナッジ)
-
ユーザーコマンド
-