警告

あなたはこのドキュメントの古いバージョンを読んでいます。 最新の情報を知りたい場合は、以下を参照してください 5.0 .

ハンドアイキャリブレーション - 良好な結果

ロボット座標(RCF)

ロボット座標系はどこにあっても、ハンドアイキャリブレーションの性能は変わりません。ただし、次を満足するようにしてください:

  • ロボット座標をAsycubeと同一平面に配置: ロボット座標のZ=0をAsycubeプレートと同一平面に配置してください。

    • ロボットアプリケーションにおいては単純に、部品をピックする時のロボットの座標は、EYE+ \((x,y)\) にピッキング位置の高さ \(z\) を加えた座標値となります。

    • AsycubeプレートにRCFを配置することで、手動で追加した \(z\) の有効性が保証されます。代わりにワールド座標系を使用した場合、Asycubeプレートはロボットのベースと完全に平行ではない可能性があります。これは、 \(z\) 座標に依存する可能性があることを意味します。

  • ロボット座標の原点がAsycubeの4つのコーナー内のひとつにある場合: 原点がコーナーにあると、EYE+ で送られてくる座標が可視化されやすくなります( 図 221)。

ツールセンターポイント(TCP)

ロボットが空間内を移動するために座標系を利用します。ロボットに工具やグリッパーがない場合は、アームの先端を運動制御の基準点として使用します(ロボットの最後の関節にあるTCP)。

コントローラは、ロボットの各々の関節を同時に回転させて、基準点を要求された位置に空間的に移動させることができます。ロボットアームにツールやグリッパを追加した場合、ツールのためのオフセットにより、基準点を変更する必要があります。必要なオフセットを作成するには、ツールセンターポイント(TCP)を使用します。これにより、コントローラはアームの端ではなくツールが追従するように座標系内を移動させることができます。

../../_images/TCP_description.png

図 220 左:最後のロボット関節位置によるTCP;右:ツールオフセットを反映したTCP

ツール座標系(TCF:Tool coordinate frame)

ツール座標系は ツールセンターポイント(TCP) に配置されます。通常、TCFのZベクトルはロボットの最終関節とは反対か、ロボットツールとは反対の方向を向いています。TCPの位置は、部品を掴みたい位置です。

いくつかのTCPの例:

  • フィンガーグリッパー:グリッパーが部品をつかむTCPの位置( 図 221)。

  • バキュームグリッパー:グリッパーの先端のTCPの位置。

../../_images/frame_good_practice.png

図 221 RCFとTCFの位置。緑色の座標系:TCF;赤の座標系:RCF

RZ角度補正

EYE+ は TCF の x 軸を、ハンドアイキャリブレーションに使われた座標系(通常は RCF)の x 軸に合わせます。そのため、RZ角度は TCF とハンドアイキャリブレーションで使われた座標系との間のオフセットを考慮して補正されます。

例えば、 RCFTCF の方向が一致していない場合には、追加のオフセットが必要になる場合があります

../../_images/rz_angle_RCF.png

図 222 EYE+ から送られるrz角度

固定のエラーがある場合、RZの角度を補正するには?

EYE+ は、ハンドアイキャリブレーションに使用された座標系(通常 RCF)と TCF の座標系との間のオフセットに対応できません。そのため、固定のオフセットが必要になる場合があります。次の図はこの状況を示しています。 RCFTCF は同じ向きではありません。

TCF を正しい方向に移動させるか、EYE+ で角度を得る度に固定のエラーを修正するかのどちらかです。

固定の補正値を得るため、以下の手順で行います:

  1. グリッパーを使ってAsycubeの上に部品を配置します(向きは問いません)。

  2. 部品が正しく配置されている場合は、ロボットが与えたRZ角度に注意してください。

  3. 部品を動かさずにロボットを視野外に移動させ、EYE+ から TCPターミナルget_part コマンドを送信して、EYE+ から送られてきた角度を確認します。

    やり方がわからない場合は、 TCPプログラミングガイド を参照してください。

  4. ロボット側では、ロボットと EYE+ とで角度が同じになるように静的な補正を行います。

  5. 部品を別の向きに移動させて補正を確認します。ロボットと EYE+ は同じ値を示す必要があります。

../../_images/rz_angle_RCF_static_error.png

図 223 EYE+ からTCFで送ったrz角度は、期待される値と90°ずれています

ハンドアイキャリブレーションの精度を高めるには?

ハンドアイキャリブレーションに使われた部品の使用

  • グリッパーをガイドする部品: 図 224 は、グリッパーの先端を特定の位置にガイドする部品の例です。こうすることで、グリッパーより正確に位置決めすることができます。

    ../../_images/handeye_calibration_part.png

    図 224 グリッパーをガイドする部品の例

  • 基本的な形状を持っている部品: 基本的な形状をしているため、レシピ内に記述されるピック位置の座標値が特定されます。

  • 高さが低い部品: 高さが低い部品の場合、ピック位置に視差補正が考慮されません。これにより、位置決め誤差を最小限に抑えることができます。

グリッパーの先端をピッキングの位置と同じ位置になるように位置決めしてください。

もし TCP がグリッパーの先端にない場合は、グリッパーの向きをできるだけ垂直にしてください。

ハンドアイキャリブレーションを行うためだけに特定の部品を使う場合は、レシピを最後まで仕上げる必要はありません。ピッキング位置のステップの後でレシピの編集をやめることができます。

重要

ハンドアイキャリブレーションを行う際に、自動運転時と同じグリッパーを使用しない場合は、それらの異なる TCP を考慮するようにしてください。

部品の位置決め

プレート上での位置決め 4つの部品をAsycubeの端に触れないようにし、互いにできるだけ離れた位置に配置してください。4つの最適な位置は、Asycubeの各コーナーにあります。4つの座標が違えば違うほど、キャリブレーションに適しています。

相対位置: ロボット座標取得とビジョン座標取得の間に部品を動かしてはいけません。