TCPタッチ法を使用する4軸/5軸ロボットの手動キャリブレーション(Eye in Hand)
以下では、カメラがEye in Hand(EIH)方式で取り付けられている場合、TCPタッチ法で4軸/5軸ロボットの手動キャリブレーションを実行する方法について説明します。
全体フロー
Eye in Hand(EIH)シーンで、TCPタッチ法を使用する4軸/5軸ロボットの手動キャリブレーションは、下図のようなフローで行います。
-
キャリブレーション前の準備:キャリブレーションを開始する前に、関連する準備作業を完了します。
-
キャリブレーション前の設定:キャリブレーション前に、ロボット型番やカメラの取り付け方式などの設定項目を選択します。
-
キャリブレーションを開始:キャリブレーションを正式に開始します。一連の操作手順を完了し、キャリブレーション結果を取得します。この手順では、ロボット側での操作を行い、ビジョンシステムとロボット間の通信を確立します。
-
キャリブレーション結果を検証:取得したキャリブレーション結果を検証し、結果が要件を満たしているかどうかを確認します。
-
キャリブレーション結果を適用:ビジョンプロジェクトで新しいキャリブレーションパラメータグループを使用します。
以下は、上記フローの詳細な説明です。
事前準備
以下は、ハンド・アイ・キャリブレーションを実行する前に必要な事前準備です。
ビジョンシステムを構築
ビジョンシステムのハードウェア設置 を参照してMech-Mindビジョンシステムの構築を完了させてください。
ハンド・アイ・キャリブレーションを実行するには、Mech-Eye Viewer、Mech-Vision&Mech-Vizの使用が必要です。これらのソフトウェアがインストールされ、最新バージョンにアップグレードされていることを確認してください。
キャリブレーションに必要なものを準備
カメラがEye in Hand方式で取り付けられている場合、TCPタッチ法を使用して手動キャリブレーションを実行するにはキャリブレーションボードとTCP先端の使用が必要です。
キャリブレーションボードとTCP先端は以下の要件を満たす必要があります。
-
キャリブレーションボードの白い円がはっきりと見えること、破損や曲げ変形がないことを確認してください。
-
キャリブレーションボードを作業平面の中心に配置してください。
-
TCP先端をロボットフランジに取り付ける必要があります。ロボットフランジに取り外しができないハンドがある場合、TCP先端をハンドに直接固定します。
また、キャリブレーションを実行する前に、ロボットをキャリブレーションの開始位置に移動させてください。
キャリブレーションボードの点群品質をチェック
キャリブレーションボードの点群品質は、キャリブレーション結果の精度に影響を与えます。キャリブレーション結果の正確性と信頼性を確保するために、キャリブレーションボードの点群品質を確認する必要があります。キャリブレーション手順には、キャリブレーションボードの点群品質を確認する操作が含まれています。また、キャリブレーション前にキャリブレーションボードの点群品質を事前に確認することで、キャリブレーションの時間を短縮できます。 |
-
キャリブレーションボードをカメラ視野内の作業平面の中央に水平に配置します。
-
Mech-Eye Viewerを起動し、プロジェクトに使用するカメラを選択し、「calib」パラメータグループを選択して カメラパラメータを調整 します。
-
2Dパラメータを調整して、2D画像内でキャリブレーションボード全体の明るさが暗すぎず、各キャリブレーション円がはっきり見えるようにします。
-
3Dパラメータを調整し、キャリブレーションボード上の各キャリブレーション円が完全に見えるようにします。
現場では、環境光が複雑な場合、2D画像や点群への影響を軽減するために、遮光・補光することを推奨します。
-
上記の手順を完了することで、キャリブレーションボードの点群の品質が要件を満たしていることを確認します。
正常 露出過度 露出不足 2D画像
点群
キャリブレーション前の確認作業を完了
キャリブレーション前の確認作業 を参照して、以下のことを完了させてください。
-
ロボット台座がしっかりと取り付けられていることを確認します。
-
カメラとそのブラケットがしっかりと取り付けられていることを確認します。
-
ロボットの絶対精度が使用要件を満たしていることを確認します。
-
ロボットモデルパラメータの正確性を検証します。
-
カメラの予熱が実行されたことを確認します。
キャリブレーション前の設定
-
Mech-Visionを起動し、ツールバーの カメラキャリブレーション をクリックします。すると、キャリブレーション前の設定 画面が表示されます。
-
キャリブレーション前の確認作業が完了したこと を確認し、確認完了 ボタンをクリックし、次へ ボタンをクリックします。
-
キャリブレーションの実行方法を選択 画面で、新なキャリブレーションを開始 を選択し、次へ をクリックします。
-
キャリブレーションのタスクを選択 画面で、ドロップダウンリストから その他のロボットのハンド・アイ・キャリブレーション を選択し、必要に応じて ロボットのオイラー角のタイプ を指定し、ロボットの座標系を選択してから 次へ をクリックします。
-
キャリブレーションするためのロボットを選択 画面で、実際の状況に応じて 4軸ロボット(SCARA、Palletizer) を選択してから、次へ をクリックします。
-
カメラ取り付け方式を選択 画面で、 Eye in hand にチェックを入れ、次へ をクリックします。
-
データの取得方法を選択 画面で、TCPタッチ法 を選択してから、実行 をクリックします。すると、キャリブレーション(Eye in Hand) 画面が表示されます。
これで、キャリブレーションの事前設定が完了しました。
キャリブレーションを開始
カメラに接続
-
カメラに接続 手順で、カメラ一覧 から接続するカメラを選択して をクリックするか、ダブルクリックして接続します。
-
カメラ接続後、連続キャプチャ または 一回キャプチャ をクリックします。
-
右側にある 画像ビュー パネルでは、カメラが画像を正常に取得できることを確認した上で 次へ をクリックします。
キャリブレーションボードを取り付けて内部パラメータをチェック
-
キャリブレーションボードを取り付けて内部パラメータをチェック 手順で、キャリブレーションボードを選択 の下の 標準キャリブレーションボード型番 を選択します。
-
キャリブレーションボードの位置と点群品質を確認 で、チェック基準を確認してから、連続キャプチャ をクリックします。すると、連続キャプチャ が キャプチャを停止して位置を検出 に変わります。
-
ロボットを手動で操作し、キャリブレーションボードを適切な位置に移動させてください。キャリブレーションボードが赤枠内に完全に収まり、ボードとカメラの距離がソフトウェア画面に表示されている推奨距離にできるだけ近づくように調整してください。
標準インターフェース通信を使用する場合、画面の指示に従ってキャリブレーションボードとカメラ間の距離を調整した後、その時点でのロボットの位置をキャリブレーションの開始点として使用することができます。 -
キャリブレーションボードの2D画像と深度画像がチェック基準を満たしていることを確認してから、キャプチャを停止して位置を検出 をクリックします。
取得した画像がチェック基準を満たしていない場合、Mech-Eye Viewerを起動 をクリックしてMech-Eye Viewerを起動し、カメラの2Dと3D露出パラメータを調整 してから画像を再度取得します。パラメータを調整する前に、必ず パラメータグループ を「calib」に切り替えてください。
-
カメラの内部パラメータをチェック の下の 内部パラメータをチェック をクリックします。
-
内部パラメータのチェック結果を確認します。
-
カメラの内部パラメータのチェックが合格している場合は、表示される画面で OK をクリックし、下の 次へ をクリックします。
-
内部パラメータのチェックに失敗した場合は、補助円描画機能を使用して内部パラメータをチェックし、その後 内部パラメータを再チェック をクリックしてください。
-
補助円を描画
-
補助円を描画する場合、補助円を描画をクリックします。
-
右側の 画像ビュー パネルで、キャリブレーションボードの画像を右クリックし、ウィンドウに合わせる のチェックを外します。その後、Ctrlキーを押しながらスクロールホイールをドラッグして画像のサイズを適切な大きさに変更します。
-
マウスポインタをキャリブレーション円の十字型の中心に移動させ、マウスの左ボタンを押して補助円がキャリブレーション円を完全に含むように調整した後、マウスの左ボタンを離します。
-
内部パラメータを再チェック をクリックし、カメラ内部パラメータのチェックが合格しているかどうかを確認します。それでもチェックに失敗する場合は、テクニカルサポートにお問い合わせください。
フランジ座標系でTCP値を設定
-
フランジ座標系でTCP値を設定 手順で、既知のTCPを記入 を選択し、TCP値を入力ボックスに記入します。
-
TCP値を確認 をクリックします。
-
問題がないことを確認したら、下の 次へ をクリックします。
TCPが未知の場合、キャリブレーションによるTCP値を取得 を選択して TCPキャリブレーション をクリックします。表示される TCP計算ツール 画面でTCPを計算します。
キャリブレーションボードの画像とフランジ位置姿勢を取得
-
キャリブレーションボードの画像とフランジ位置姿勢を取得 手順で、キャリブレーション情報を取得する際の注意事項を確認します。
-
TCP先端がキャリブレーションボードの白い円1での十字型の中心(点1)にタッチするようにロボットを移動させ、ティーチペンダントに表示されるロボットのフランジ位置姿勢を読み取ります。
-
点1の をクリックし、表示される ロボットのフランジ位置姿勢を入力 画面でロボットのフランジ位置姿勢を入力してから、OK をクリックします。
-
上記の手順を繰り返して、TCP先端が点2と点3での十字型の中心にタッチし、ロボットのフランジ位置姿勢を入力します。
-
キャリブレーションボードの をクリックしてキャリブレーションボードの画像を取得します。表示される ロボットのフランジ位置姿勢を入力 画面で、キャリブレーションボードの画像を取得するときのロボットのフランジ位置姿勢を入力してから、OK をクリックします。
まず、ロボットがカメラを持ってキャリブレーションボード全体を撮影できる位置に移動させてください。
-
データを更新 をクリックし、下の 次へ をクリックします。
キャリブレーションでは、外部パラメータを計算するために、少なくとも3つの共線でない点をタッチする必要があります。
キャリブレーション結果の確認
以下では、キャリブレーション結果を迅速に検証する方法について説明します。
点群ビューで誤差点群を確認
カメラの外部パラメータを計算した後、以下の操作を行います。
-
キャリブレーション結果が計算されたら、外部パラメータを計算 手順の 点群ビュー パネルに誤差点群を確認します。
誤差点群は、各キャリブレーション位置姿勢でキャリブレーション円の実際の値と計算値との偏差を示すために使用されます。詳細については、誤差点群の説明 をご参照ください。 -
キャリブレーション精度誤差がプロジェクト要件を満たしていることを確認します。キャリブレーション精度は、100%を占める誤差の値を求めることで、おおよそ判断することができます。
例えば、下図のキャリブレーション精度は±1 mm以内です(TCPタッチ法を使用してデータを取得した場合)。
シーンビューでロボットの点群とロボットモデルとの重なり具合を確認
カメラの外部パラメータを計算した後、以下の操作を行います。
-
ロボット先端を、カメラが台座を撮影できる位置まで移動させます。
-
外部パラメータを計算 手順で、補助ツール の下の カメラによる取得 をクリックします。クリックすると、カメラが撮影を行います。
-
右側の シーンビュー で、ロボット実機の点群とロボットモデルの重なり具合を目視で確認します。ロボットの点群がロボットモデルとほぼ一致すれば、キャリブレーション結果が使用可能です。
下図のように、カラー部分はロボットモデル、黒い部分はロボットの点群です。図からわかるように、ロボットモデルとロボット点群がほぼ重なっており、キャリブレーション結果が使用可能であることを示しています。
キャリブレーション結果を適用
キャリブレーションパラメータグループには、カメラの内部パラメータおよび外部パラメータファイルが含まれています。以前にMech-Visionプロジェクトでカメラのキャリブレーションパラメータグループを使用する場合、キャリブレーション完了後に新しい外部パラメーターファイルを使用するため、Mech-Visionプロジェクト内でキャリブレーションパラメータグループを再選択する必要があります。
-
カメラから画像を取得 ステップを選択します。
-
ステップパラメータ で キャリブレーションパラメータグループ の をクリックし、表示される画面で新しいキャリブレーションパラメータグループを選択します。