直行ロボットのハンド・アイ・キャリブレーション
以下では、直行ロボットのハンド・アイ・キャリブレーションを実行する方法について説明します。
直行ロボットのハンド・アイ・キャリブレーションの概念や外部パラメータファイルの使用については、直行ロボットのハンド・アイ・キャリブレーションの説明 をご参照ください。 |
事前準備
以下は、ハンド・アイ・キャリブレーションを実行する前に必要な事前準備です。
ビジョンシステムを構築
ビジョンシステムのハードウェア設置 を参照してMech-Mindビジョンシステムの構築を完了させてください。
ハンド・アイ・キャリブレーションを実行するには、Mech-Eye Viewer、Mech-VisionおよびMech-Vizの使用が必要です。これらのソフトウェアがインストールされ、最新バージョンにアップグレードされていることを確認してください。
キャリブレーションに必要なものを準備
以下のものが必要です。
-
キャリブレーションボード
-
TCP先端
-
巻尺
キャリブレーションボードは以下の要件を満たす必要があります。
-
キャリブレーションボードの白い円がはっきりと見えること、破損や曲げ変形がないことを確認してください。
-
直行ロボットのハンド・アイ・キャリブレーションでは、キャリブレーションボードを作業平面の中心に平らに配置してください。
-
TCP先端は直行ロボットのハンドに取り付ける必要があります。巻尺を使用して、TCP先端からフランジの中心までのX、Y、Z方向のオフセットを測定します。
キャリブレーションボードの点群品質をチェック(オプション)
キャリブレーションボードの点群品質は、キャリブレーション結果の精度に影響を与えます。キャリブレーション結果の正確性と信頼性を確保するために、キャリブレーションボードの点群品質を確認する必要があります。キャリブレーション手順には、キャリブレーションボードの点群品質を確認する操作が含まれています。また、キャリブレーション前にキャリブレーションボードの点群品質を事前に確認することで、キャリブレーションの時間を短縮できます。 |
-
キャリブレーションボードをカメラ視野内の作業平面の中心に配置します。
-
Mech-Eye Viewerを起動し、プロジェクトで使用するカメラを選択して、カメラのパラメータを調整 します。
-
2Dパラメータを調整して、2D画像内でキャリブレーションボード全体の明るさが暗すぎず、各キャリブレーション円がはっきり見えるようにします。
-
3Dパラメータを調整し、キャリブレーションボード上の各キャリブレーション円が完全に見えるようにします。
現場では、環境光が複雑な場合、2D画像や点群への影響を軽減するために、遮光・補光することを推奨します。
-
上記の手順を完了することで、キャリブレーションボードの点群の品質が要件を満たしていることを確認します。
正常 露出過度 露出不足 2D画像
点群
キャリブレーション前の確認作業を完了
キャリブレーション前の確認作業 を参照して、以下のことを完了させてください。
-
ロボット台座がしっかりと取り付けられていることを確認します。
-
カメラとそのブラケットがしっかりと取り付けられていることを確認します。
-
キャリブレーションボードがロボット先端にしっかりと取り付けられていることを確認(ETHの場合)します。
-
ロボットの絶対精度が使用要件を満たしていることを確認します。
-
ロボットモデルパラメータの正確性を検証します。
-
カメラの予熱が実行されたことを確認します。
キャリブレーション前の設定
-
Mech-Visionを起動し、ツールバーの カメラキャリブレーション をクリックします。すると、キャリブレーション前の設定 画面が表示されます。
-
キャリブレーション前の確認作業が完了したこと を確認し、確認完了 ボタンをクリックし、次へ ボタンをクリックします。
-
キャリブレーションの実行方法を選択 画面で、新なキャリブレーションを開始 を選択し、次へ をクリックします。
-
キャリブレーションのタスクを選択 画面で、ドロップダウンリストから その他のロボットのハンド・アイ・キャリブレーション を選択し、必要に応じて ロボットのオイラー角のタイプ を指定し、ロボットの座標系を選択してから 次へ をクリックします。
-
ロボットの座標系タイプは、左/右手系 を参照して確認できます。直行ロボットが左手系を使用している場合は、ここで左手系を選択してください。
-
ロボットと通信する際、通信モジュールは送受信したロボットの位置姿勢を自動的に右手系に変換します。ロボット側からのロボット位置姿勢を受信した場合、左手座標系の位置姿勢を自動的に右手座標系の位置姿勢に変換します。ソフトウェアから出力された位置姿勢をロボット側に送信する前に、右手座標系の位置姿勢を左手座標系の位置姿勢に変換します。
-
キャリブレーション中にロボットのフランジ位置姿勢を手動で入力する場合、Y軸の値を反転させる必要があります。
-
-
キャリブレーションするためのロボットを選択 画面で、直行ロボット(最大6自由度に対応、XYZABC) を選択してから 次へ をクリックします。
-
カメラ位置に影響を与える直行ロボットの動きを選択 画面で、実際の状況に応じて(X軸に沿って並進/X軸を中心に回転、Y軸に沿って並進/Y軸を中心に回転、Z軸に沿って並進/Z軸を中心に回転、カメラ位置に影響を与える動きがない)選択してから 実行 をクリックします。
これで、キャリブレーション前の設定が完了しました。
キャリブレーションの実行手順
カメラに接続
-
カメラに接続 手順で、カメラ一覧 から接続するカメラを選択して をクリックするか、ダブルクリックして接続します。
-
カメラ接続後、一回キャプチャ または 連続キャプチャ をクリックします。
-
画像ビュー パネルで、カメラが画像を正常に取得できることを確認した上で 次へ をクリックします。
キャリブレーションボードを取り付けて内部パラメータをチェック
-
キャリブレーションボードを取り付けて内部パラメータをチェック 手順で、使用されているキャリブレーションボードに貼られているラベルに従って、キャリブレーションボードを選択 の下の 標準キャリブレーションボード型番 を選択します。
-
キャリブレーションボードの位置と点群品質を確認 で、チェック基準を確認してから、連続キャプチャ をクリックします。すると、連続キャプチャ が キャプチャを停止して位置を検出 に変わります。
-
ロボットを制御してキャリブレーションボードを適切な位置に移動させ、キャリブレーションボードが赤い枠内に完全に収まるようにしてください。また、キャリブレーションボードとカメラの距離ができるだけ推奨値に近いことを確認してください。
キャリブレーションで標準インターフェース通信方式を使用する場合は、キャリブレーションプログラム内でキャリブレーションの開始位置を変更してください。 -
キャリブレーションボードの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の をクリックし、表示される ロボットのフランジ位置姿勢を入力 画面でロボットのフランジ位置姿勢を入力してから、OK をクリックします。
左手系を使用する直行ロボットの場合、ロボットのフランジ位置姿勢を入力する前にY軸の値を反転させる必要があります。
-
上記の手順を繰り返して、TCP先端がポイント2とポイント3での十字型の中心にタッチし、ロボットのフランジ位置姿勢を入力します。
-
キャリブレーションボードの をクリックしてキャリブレーションボードの画像を取得します。表示される ロボットのフランジ位置姿勢を入力 画面で、キャリブレーションボードの画像を取得するときのロボットのフランジ位置姿勢を入力してから、OK をクリックします。
-
データを更新 をクリックし、下の 次へ をクリックします。
-
キャリブレーションでは、外部パラメータを計算するために、少なくとも3つの共線でないポイントをタッチする必要があります。
-
直行ロボットがある方向の自由度を持たない場合、複数のキャリブレーションボードの位置姿勢を追加することができます。以下では、Y軸の自由度を持たないことを例として説明します。まず、TCP先端がキャリブレーションボード上の2つのポイントをタッチできるようにキャリブレーションボードの方向を調整し、ロボットのフランジ位置姿勢を入力してキャリブレーションボードの画像を取得します。次に、キャリブレーションボードの位置をZ方向に上に移動(または下に移動)し、X方向に沿ってキャリブレーションボード上のポイントをタッチし、ロボットのフランジ位置姿勢を入力してキャリブレーションボードの画像を取得します。移動されたキャリブレーションボードの位置が、前の位置と大きく異なっていることを確認してください。
-
キャリブレーション結果の確認
以下では、キャリブレーション結果を迅速に検証する方法について説明します。
点群ビューで誤差点群を確認
カメラの外部パラメータを計算した後、以下の操作を行います。
-
キャリブレーション結果が計算されたら、外部パラメータを計算 手順の 点群ビュー パネルに誤差点群を確認します。
誤差点群は、各キャリブレーション位置姿勢でキャリブレーション円の実際の値と計算値との偏差を示すために使用されます。詳細については、誤差点群の説明 をご参照ください。 -
キャリブレーション精度がプロジェクト要件を満たしていることを確認します。キャリブレーション精度は、100%を占める誤差の値を求めることで、おおよそ判断することができます。
キャリブレーションの 外部パラメータを計算 手順で、外部パラメータの精度チェック をクリックすると、このツールを開くことができます。ツールの操作ガイドに従って外部パラメータの精度を検証し、最終的な評価レポートを生成してください。