6軸ロボットの自動キャリブレーション(Eye to Hand)
以下では、カメラがEye to Hand(ETH)方式で取り付けられている場合に6軸ロボットの自動キャリブレーションを実行する方法について説明します。
事前準備
以下は、ハンド・アイ・キャリブレーションを実行する前に必要な事前準備です。
ビジョンシステムを構築
ビジョンシステムのハードウェア設置 を参照してMech-Mindビジョンシステムの構築を完了させてください。
ハンド・アイ・キャリブレーションを実行するには、Mech-Eye Viewer、Mech-VisionおよびMech-Vizの使用が必要です。これらのソフトウェアがインストールされ、最新バージョンにアップグレードされていることを確認してください。
ロボット通信設定を実行
ロボットは標準インターフェース方式でビジョンシステムと通信する場合、ロボットの標準インターフェースの通信設定を完了させてください。詳細については、標準インターフェース通信 をご参照ください。
ロボットはVizティーチング方式でビジョンシステムと通信する場合、ロボットのVizティーチングの通信設定を完了させてください。詳細については、Vizティーチング通信 をご参照ください。
キャリブレーションに必要なものを準備
カメラがEye to Hand方式で取り付けられている場合、自動キャリブレーションを実行するにはキャリブレーションボードの使用が必要です。
キャリブレーションボードについては、以下の要件があります。
-
キャリブレーションボードの白い円がはっきりと見えること、破損や曲げ変形がないことを確認してください。
-
キャリブレーションボードのコネクタをロボット先端のフランジに取り付け、そのコネクタにキャリブレーションボードを取り付けます。キャリブレーションボードがしっかりと取り付けられていること、ロボット先端のXY平面と平行であることを確認してください。
ロボットフランジに取り外しができないハンドがある場合、キャリブレーションボードをハンドに直接固定します。
キャリブレーションボードの点群品質をチェック(オプション)
キャリブレーションボードの点群品質は、キャリブレーション結果の精度に影響を与えます。キャリブレーション結果の正確性と信頼性を確保するために、キャリブレーションボードの点群品質を確認する必要があります。キャリブレーション手順には、キャリブレーションボードの点群品質を確認する操作が含まれています。また、キャリブレーション前にキャリブレーションボードの点群品質を事前に確認することで、キャリブレーションの時間を短縮できます。 |
-
キャリブレーションボードをカメラ視野内の作業平面の中心に配置します。
-
Mech-Eye Viewerを起動し、プロジェクトで使用するカメラを選択して、カメラのパラメータを調整 します。
-
2Dパラメータを調整して、2D画像内でキャリブレーションボード全体の明るさが暗すぎず、各キャリブレーション円がはっきり見えるようにします。
-
3Dパラメータを調整し、キャリブレーションボード上の各キャリブレーション円が完全に見えるようにします。
現場では、環境光が複雑な場合、2D画像や点群への影響を軽減するために、遮光・補光することを推奨します。
-
上記の手順を完了することで、キャリブレーションボードの点群の品質が要件を満たしていることを確認します。
正常 露出過度 露出不足 2D画像
点群
キャリブレーション前の確認作業を完了
キャリブレーション前の確認作業 を参照して、以下のことを完了させてください。
-
ロボット台座がしっかりと取り付けられていることを確認します。
-
カメラとそのブラケットがしっかりと取り付けられていることを確認します。
-
キャリブレーションボードがロボット先端にしっかりと取り付けられていることを確認(ETHの場合)します。
-
ロボットの絶対精度が使用要件を満たしていることを確認します。
-
ロボットモデルパラメータの正確性を検証します。
-
カメラの予熱が実行されたことを確認します。
キャリブレーション前の設定
-
Mech-Visionを起動し、ツールバーの カメラキャリブレーション をクリックします。すると、キャリブレーション前の設定 画面が表示されます。
-
キャリブレーション前の確認作業が完了したこと を確認し、確認完了 ボタンをクリックし、次へ ボタンをクリックします。
-
キャリブレーションの実行方法を選択 画面で、新なキャリブレーションを開始 を選択し、次へ をクリックします。
-
キャリブレーションのタスクを選択 画面で、ドロップダウンリストから 適応可能なロボットのハンド・アイ・キャリブレーション を選択し、ロボット型番を選択 をクリックして型番を選択してから、次へ をクリックします。
-
カメラの取り付け方式を選択 画面で、 Eye to hand を選択して 次へ をクリックします。
-
実行モードとロボットの制御方式を選択 画面で、自動キャリブレーション と標準インターフェース を選択してから、実行をクリックします。すると、キャリブレーション(Eye to Hand) 画面が表示されます。
Vizティーチング通信の場合、自動キャリブレーション と Vizティーチング を選択します。
これで、キャリブレーションの事前設定が完了しました。
キャリブレーションの実行手順
カメラに接続
-
カメラに接続 手順で、カメラ一覧 から接続するカメラを選択して をクリックするか、ダブルクリックして接続します。
-
カメラ接続後、一回キャプチャ または 連続キャプチャ をクリックします。
-
画像ビュー パネルで、カメラが画像を正常に取得できることを確認した上で 次へ をクリックします。
キャリブレーションボードを取り付けて内部パラメータをチェック
-
キャリブレーションボードを取り付けて内部パラメータをチェック 手順で、使用されているキャリブレーションボードに貼られているラベルに従って、キャリブレーションボードを選択 の下の 標準キャリブレーションボード型番 を選択します。
-
キャリブレーションボードの位置と点群品質を確認 で、チェック基準を確認してから、連続キャプチャ をクリックします。すると、連続キャプチャ が キャプチャを停止して位置を検出 に変わります。
-
ロボットを制御してキャリブレーションボードを適切な位置に移動させ、キャリブレーションボードが赤い枠内に完全に収まるようにしてください。また、キャリブレーションボードとカメラの距離ができるだけ推奨値に近いことを確認してください。
キャリブレーションで標準インターフェース通信方式を使用する場合は、キャリブレーションプログラム内でキャリブレーションの開始位置を変更してください。 -
キャリブレーションボードの2D画像と深度画像がチェック基準を満たしていることを確認してから、キャプチャを停止して位置を検出 をクリックします。
取得した画像がチェック基準を満たしていない場合、Mech-Eye Viewerを起動 をクリックしてMech-Eye Viewerを起動し、カメラの2Dと3D露出パラメータを調整 してから画像を再度取得します。パラメータを調整する前に、必ず パラメータグループ を「calib」に切り替えてください。
-
カメラの内部パラメータをチェック の下の 内部パラメータをチェック をクリックします。
-
内部パラメータのチェック結果を確認します。
-
カメラの内部パラメータのチェックが合格している場合は、表示される画面で OK をクリックし、下の 次へ をクリックします。
-
カメラの内部パラメータのチェックが合格していない場合、補助円を描画するか、キャリブレーションボードの白い円の検出パラメータを手動で調整してから、内部パラメータを再チェック をクリックします。
-
補助円を描画
-
補助円を描画する場合、補助円を描画をクリックします。
-
右側の 画像ビュー パネルで、キャリブレーションボードの画像を右クリックし、ウィンドウに合わせる のチェックを外します。その後、Ctrlキーを押しながらスクロールホイールをドラッグして画像のサイズを適切な大きさに変更します。
-
キャリブレーションボードの白い円の十字型の中心にマウスポインタを合わせて、マウスの左ボタンを押し、補助円をキャリブレーションボードの白い円に完全に含ませてから離します。
-
内部パラメータを再チェック をクリックし、カメラ内部パラメータのチェックが合格しているかどうかを確認します。
検出パラメータを手動で調整
検出パラメータを手動で調整する場合、キャリブレーションボードの白い円の検出パラメータ(詳細設定) をクリックして展開し、検出パラメータの値を変更します。その後、内部パラメータを再チェック をクリックし、カメラの内部パラメータのチェックが合格しているかどうかを確認します。
それでもキャリブレーションボードの白い円が検出されない場合、現場の環境に応じてカメラの関連パラメータを調整する必要があります。カメラパラメータの調整については、 パラメータ調整 をご参照ください。
ロボットを接続
キャリブレーションで標準インターフェース通信を使用する場合は、ロボットを接続(標準インターフェース通信の場合) をご参照ください。
キャリブレーションでVizティーチング通信方式を使用する場合は、ロボットを接続(Vizティーチング通信の場合) をご参照ください。
ロボットを接続(標準インターフェース通信の場合)
-
(オプション)ロボットを接続 手順で インターフェースサービスを起動 をクリックします。すると、このボタンが ロボットの接続を待機中… に変わります。ツールバーの ロボット通信設定 がすでに有効になっている場合は、この操作は不要です。
-
ティーチペンダントで 自動キャリブレーションのプログラムを選択し、キャリブレーションの開始位置を設定してキャリブレーションプログラムを実行します。様々なロボットに対応するキャリブレーション手順については、標準インターフェース通信 をご参照ください。キャリブレーションプログラムが正常に起動されると、ログに「キャリブレーションプロセスに入ります。Mech-Visionでキャリブレーションを実行してください。」が表示されます。
-
Mech-Visionに戻り、ロボットを接続 の下に「接続済み」が表示されることを確認してから、下の 次へ をクリックします。
ロボットを接続(Vizティーチング通信の場合)
-
ティーチペンダントで Vizとの通信プログラムを選択して実行します 。様々なロボットに対応する実行方法については、Vizティーチング通信 をご参照ください。
-
Mech-Visionに戻り、ロボットを接続 手順で ロボットのIPアドレス を設定します。
-
ロボットを接続 の下の ロボットを接続 をクリックします。すると、このボタンが ロボットの接続を待機中… に変わります。
-
ロボットを接続 の下に「接続済み」が表示されることを確認してから、下の 次へ をクリックします。
動作経路を設定
-
動作経路を設定 手順で、キャリブレーション範囲を設定 の下の 高さ範囲 パラメータを設定します。
高さ範囲 は、カメラの推奨ワーキングディスタンスとロボットの作業空間に応じて設定する必要があります。
-
自動生成 をクリックし、ポップアップする ロボット経路をカメラ座標系に自動的に合わせる 画面で 確認 をクリックします。
この操作では、ロボットをわずかに移動させ、画像を取得します。全体のプロセスは10から15秒かかります。動作経路が安全であることを確認してください。緊急時にロボットティーチペンダントの非常停止ボタンを押してください。 -
ポップアップする キャリブレーション 画面で 確認 をクリックします。
-
右側の シーンビュー パネルで、各経路点の位置が正確で、周囲の環境との衝突が発生しないことを確認してください。
-
パラメータに基づいて経路を生成 をクリックし、下の 次へ をクリックします。
画像と位置姿勢を取得
ロボットがVizティーチング方式でビジョンシステムと通信している場合、ロボット実機から位置姿勢を取得 はデフォルトでチェックが入っています(推奨)。必要に応じて ロボットの位置姿勢タイプ パラメータを調整してください。ロボット実機と同期する必要がない場合は、このボックスのチェックを外してください。 |
-
画像と位置姿勢を取得 手順で キャリブレーションを実行 をクリックします。
-
ポップアップウィンドウに表示されるロボット動作の安全に関する注意事項をよく読み、OK をクリックします。
-
ロボットが設定された経路に沿って各キャリブレーションポイントに移動し、各キャリブレーションポイントで画像を撮影するのを待ちます。ポップアップウィンドウにキャリブレーションポイントへの移動進捗状況が表示されます。
ロボット動作中に、ロボットの動作範囲に近づかないようにしてください。 -
「すべてのキャリブレーションポイントに正常に到達し、キャリブレーションが完了しました」と表示されたら、OK をクリックします。
-
取得されたキャリブレーションデータが要件を満たしていることを確認してから、下の 次へ をクリックします。
要件を満たしていない場合、ロボットを手動で移動した後(ティーチペンダントまたはMech-Vizも使用可能)、補助ツール で 画像を手動で追加 にチェックを入れ、画像を追加してフランジ位置姿勢を記録 をクリックし、キャリブレーションボードの画像を追加してロボットのフランジ位置姿勢を入力する必要があります。
キャリブレーション結果の確認
以下では、キャリブレーション結果を迅速に検証する方法について説明します。
点群ビューで誤差点群を確認
カメラの外部パラメータを計算した後、以下の操作を行います。
-
キャリブレーション結果が計算されたら、外部パラメータを計算 手順の 点群ビュー パネルに誤差点群を確認します。
誤差点群は、各キャリブレーション位置姿勢でキャリブレーション円の実際の値と計算値との偏差を示すために使用されます。詳細については、誤差点群の説明 をご参照ください。 -
キャリブレーション精度がプロジェクト要件を満たしていることを確認します。キャリブレーション精度は、100%を占める誤差の値を求めることで、おおよそ判断することができます。
例えば、下図のキャリブレーション精度は±2.5mm以内です(標準キャリブレーション法を使用してデータを取得した場合)。
シーンビューでロボットの点群とロボットモデルとの重なり具合を確認
カメラの外部パラメータを計算した後、以下の操作を行います。
-
ロボットアームをカメラの視野範囲内に移動させます。
-
外部パラメータを計算 手順で、補助ツール の下の カメラによる取得 をクリックします。クリックすると、カメラが撮影を行います。
-
右側の シーンビュー で、ロボット実機の点群とロボットモデルの重なり具合を目視で確認します。
ロボットの点群がロボットモデルとほぼ一致すれば、キャリブレーション結果が使用可能です。
外部パラメータ精度検証ツールによる外部パラメータの検証
精度要求が高いシーン(±2mm以内)の場合は、この方法を用いて外部パラメータを全面的に検証する必要があります。
キャリブレーションの 外部パラメータを計算 手順で、外部パラメータの精度チェック をクリックすると、このツールを開くことができます。ツールの操作ガイドに従って外部パラメータの精度を検証し、最終的な評価レポートを生成してください。
キャリブレーション精度が要求を満たさない場合は、外部パラメータのキャリブレーションレポートを表示 ボタンをクリックして、キャリブレーションデータのオイラー角タイプチェック、カメラ精度チェック、ロボットの絶対精度チェックの結果を確認できます。
|
外部パラメータファイルの切替え
Mech-Visionプロジェクトがカメラの外部パラメータファイルを使用している場合、キャリブレーションが完了したら、Mech-Visionプロジェクトに使用されている外部パラメータファイルを新しいものに切り替える必要があります。
-
カメラから画像を取得 ステップを選択します。
-
ステップパラメータ から キャリブレーションパラメータグループ の をクリックし、表示される画面で新しい外部パラメータファイルを選択します。
キャリブレーションに関するステータスコード
ハンド・アイ・キャリブレーションを行う際、ロボットとビジョンシステムが標準インタフェースを使用して通信している場合、ビジョンシステムからのデータにはコマンドの実行状態を示すステータスコードが含まれます。このステータスコードには正常な実行完了および異常なアラートが含まれ、ステータスコードに基づいてエラー処理を行うことができます。