キャリブレーション結果の確認と分析
キャリブレーション済みの外部パラメータデータを確認し、その精度が要求を満たしているかどうかを判断する必要があります。誤差が通常の範囲を超えた場合は、原因を突き止めて問題を解決し、外部パラメータが要求を満たすまでキャリブレーションを再度実行する必要があります。
キャリブレーション結果の確認
以下では、キャリブレーション結果を迅速に検証する方法について説明します。
検証方法 | 精度要求が低い場合 | 精度要求が高い場合 | 説明 |
---|---|---|---|
必要 |
必要 |
大まかな検証 |
|
必要 |
必要 |
大まかな検証 |
|
必要 |
必要 |
大まかな検証(EIHシーンではカメラでロボット台座を撮影できない) |
|
不要 |
必要 |
高精度かつ定量評価 |
点群ビューで誤差点群を確認
カメラの外部パラメータを計算した後、以下の操作を行います。
-
キャリブレーション結果が計算されたら、外部パラメータを計算 手順の 点群ビュー パネルに誤差点群を確認します。
誤差点群は、各キャリブレーション位置姿勢でキャリブレーション円の実際の値と計算値との偏差を示すために使用されます。詳細については、誤差点群の説明 をご参照ください。 -
キャリブレーション精度がプロジェクト要件を満たしていることを確認します。キャリブレーション精度は、100%を占める誤差の値を求めることで、おおよそ判断することができます。
例えば、下図のキャリブレーション精度は±2.5mm以内です(標準キャリブレーション法を使用してデータを取得した場合)。
例えば、下図のキャリブレーション精度は±1 mm以内です(TCPタッチ法を使用してデータを取得した場合)。
点群誤差の基準は以下の通りです。
-
一般的なプロジェクトでは、すべてのデータポイントの誤差が±3 mm以内であることが求められます。つまり、誤差が3 mm未満のポイントが100%であることが条件です。
-
高精度が求められるシーンでは、すべてのデータポイントの誤差が±2 mm以内であることが求められます。つまり、誤差が2 mm未満のポイントが100%であることが条件です。
-
パレタイジングのシーンでは、すべてのデータポイントの誤差が±5 mm以内であることが求められます。つまり、誤差が5 mm未満のポイントが100%であることが条件です。
上記の基準値は参考用であり、具体的な要件は実際のプロジェクトの精度要件に準じます。
シーンビューでロボットの点群とロボットモデルとの重なり具合を確認
このキャリブレーション結果の検証方法は、ETHおよびEIHシーンでのキャリブレーションに適用されます。ETHシーンのキャリブレーションでは、カメラはロボットアームの点群を取得する必要があります。EIHシーンのキャリブレーションでは、カメラはロボット台座の点群を取得する必要があります。EIHシーンでは、ロボットの自由度と作業空間が、ロボット先端が台座の近くに到達できることを保証する必要があります。これにより、カメラが台座を撮影できるようになります。 |
キャリブレーション(ETH):
カメラの外部パラメータを計算した後、以下の操作を行います。
-
ロボットアームをカメラの視野範囲内に移動させます。
-
外部パラメータを計算 手順で、補助ツール の下の カメラによる取得 をクリックします。クリックすると、カメラが撮影を行います。
-
右側の シーンビュー で、ロボット実機の点群とロボットモデルの重なり具合を目視で確認します。
ロボットの点群がロボットモデルとほぼ一致すれば、キャリブレーション結果が使用可能です。
キャリブレーション(EIH):
カメラの外部パラメータを計算した後、以下の操作を行います。
-
ロボット先端を、カメラが台座を撮影できる位置まで移動させます。
-
外部パラメータを計算 手順で、補助ツール の下の カメラによる取得 をクリックします。クリックすると、カメラが撮影を行います。
-
右側の シーンビュー で、ロボット実機の点群とロボットモデルの重なり具合を目視で確認します。
ロボットの点群がロボットモデルとほぼ一致すれば、キャリブレーション結果が使用可能です。
|
シーンビューで固定点に対するキャリブレーションボードの点群ずれを確認
EIHシーンでは、ロボットの自由度と作業空間の制約により、カメラが台座を撮影できない場合、この方法を用いてキャリブレーション結果を大まかに検証することができます。 |
カメラの外部パラメータを計算した後、以下の操作を実行します。
-
キャリブレーションボードを固定位置に配置します。
-
Mech-Vizを起動し、固定点を追加し、それをキャリブレーションボードの任意の白い円の中心に合わせます。
-
ステップライブラリから「移動」ステップを選択して、プロジェクト編集エリアにドラッグします。
-
このステップをクリックして選択し、ステップパラメータで 目標点タイプ を「ワークの位置姿勢」に設定し、X/Y/Z座標値を調整して、その位置姿勢をキャリブレーションボードの任意の白い円の十字中心と一致させます。
-
-
ロボットを制御してカメラの位置姿勢を複数回変更し、外部パラメータを計算 手順で カメラによる取得 をクリックします。すると、カメラが撮影を行います。
-
シーンビュー で、キャリブレーションボードの点群が固定点に対して明らかなずれがあるかどうかを確認します。
キャリブレーションボードの点群が固定点に対して明らかなずれがない場合、キャリブレーション結果は使用可能であることを示します。
|
外部パラメータ精度検証ツールによる外部パラメータの検証
Mech-Visionでは、外部パラメータの誤差分析ツールを提供しています。このツールは、カメラ取り付け方式がEye to Hand(ETH)およびEye in Hand(EIH)の両方に対応可能で、外部パラメータのキャリブレーション誤差とロボットの絶対精度の誤差の両方を包括的に分析します。
キャリブレーションの 外部パラメータを計算 手順で、外部パラメータの精度チェック をクリックすると、このツールを開くことができます。ツールの操作ガイドに従って外部パラメータの精度を検証し、最終的な評価レポートを生成してください。
メニューバーの
を選択します。詳細については、外部パラメータの誤差をチェック をご参照ください。
キャリブレーション結果の分析
外部パラメータのキャリブレーションレポートを表示
六軸ロボットの自動キャリブレーションおよび標準キャリブレーション法を使用する手動キャリブレーションに対して、Mech-Visionのキャリブレーションツールは「外部パラメータのキャリブレーションレポート」機能を提供しています。
キャリブレーションレポートは、キャリブレーションの 外部パラメータを計算 手順での 外部パラメータを計算 をクリックし、 外部パラメータのキャリブレーションレポートを表示 をクリックして確認できます。
Mech-Visionのキャリブレーションツールは、取得されたキャリブレーションデータに基づいて外部キャリブレーションの結果をチェックし、外部パラメータのキャリブレーションレポートを生成します。
このレポートは以下の項目のチェック結果と最適化アドバイスを表示します。
-
キャリブレーションデータのオイラー角のタイプをチェック
-
カメラ精度をチェック
-
ロボットの絶対精度をチェック
外部パラメータのキャリブレーションレポートに表示されるカメラの精度が要件を満たさない場合、推奨事項を参考にして、カメラ精度の誤差の原因を特定してください。
外部パラメータの精度を向上
精度要件を満たさないキャリブレーション済みの外部パラメータデータに対しては、エラーの原因を特定する必要があります。
キャリブレーションデータに問題がないか確認
問題の原因を特定するために、キャリブレーションデータを以下の順番で1つずつ確認してください。
キャリブレーションデータとは、キャリブレーション時に生成される キャリブレーションポイント のデータのことを指します。それは、カメラIDフォルダの下のcalib_data.jsonファイルに格納されています。このファイルには、キャリブレーションポイントのフランジ位置姿勢、キャリブレーション円 のデータなどが含まれています。
キャリブレーションポイントのデータを確認するには、以下の手順を実行します。
-
Mech-Visionを起動し、ツールバーの カメラキャリブレーション をクリックします。すると、キャリブレーション前の設定 画面が表示されます。
-
キャリブレーションの実行方法を選択 画面で、既存のキャリブレーションパラメータを使用 を選択し、キャリブレーションのパラメータファイルを選択してから 次へ をクリックします。
-
パラメータの使用法を選択 画面で、現在読み込んでいるカメラをキャリブレーション を選択してから 次へ をクリックします。
-
キャリブレーションのタスクを選択 画面で、外部パラメータを再計算 を選択し、キャリブレーションデータを読み込む にチェックを入れてから 実行 をクリックします。
-
外部パラメータを計算 手順で、画像と位置姿勢一覧 からキャリブレーションポイント(pose_000など)を1つ選択し、キャリブレーションボードの白い円の情報 パネルでキャリブレーションポイントのフランジ位置姿勢とキャリブレーションボードの白い円のデータを確認します。
下図では、X(pixel)とY(pixel)列は、キャリブレーションボードが現在のキャリブレーションボード経路点での2D画像におけるキャリブレーションボードの白い円の中心ピクセル座標を示します。Camera frame: X(m)/Y(m)/Z(m)列は、キャリブレーションボードが現在のキャリブレーションボード経路点での深度画像におけるキャリブレーションボードの白い円の中心がカメラ座標系での座標を示します。 |
キャリブレーションポイントのデータは、3つの方法で確認します。
-
ピラミッド型の経路のキャリブレーションポイントのフランジ位置姿勢において、前後のオイラー角の変化を確認
ピラミッド型の経路のキャリブレーションポイントのみが含まれ、回転のキャリブレーションポイントは含まれないことに注意してください。このチェックは、標準キャリブレーション法でキャリブレーションデータを取得する場合にのみ適しています。 画像と位置姿勢一覧 からキャリブレーションポイント(pose_000など)を1つ選択し、 キャリブレーションボードの白い円の情報 パネルでキャリブレーションポイントのフランジ位置姿勢を確認します。ピラミッド型の経路に沿って移動する際、ロボットは自身のベース座標系またはフランジ座標系に沿って移動し、回転はしないので、オイラー角は基本的に変わりません。
ロボットの精度によっては、位置姿勢が上下に変動することがあります。変動が1度以上の場合、ロボット自体の原点が失われたり、ロボットの精度が低下することがあります。
解決策:この場合には、ハンド・アイ・キャリブレーションは使用できません。ロボットの原点をチェック(再位置決め)して、問題を解決しなければ、続いてキャリブレーションすることはできません。
-
キャリブレーションポイントの「キャリブレーションボードの白い円の中心距離の測定値の平均誤差」が標準値を超えたかどうかを確認
画像と位置姿勢一覧 パネルからキャリブレーションポイントを選択し、画面の下部でキャリブレーションボードの白い円の中心距離の測定値の平均誤差を確認します。
誤差が上限を超えると、キャリブレーションポイントが黄色に変わり、警告が表示されます。キャリブレーションボードの白い円の中心距離の測定値の平均誤差 は、内部パラメータのチェック結果の一部として、現在のカメラ内部パラメータの誤差値を部分的に反映させるために使用されます。
解決策:高精度が求められない場合では、標準値からわずかに外れた内部パラメータでも使用することができます。しかし、高い精度が求められるや大きな誤差がある場合は、カメラの内部パラメータを再キャリブレーションするか、メーカーに返送して交換することを推奨しています。
内部パラメータの誤差はキャリブレーションの結果に影響を与えますが、誤差が基準値以内であれば、一般的には問題ありません。
-
キャリブレーションポイントの「キャリブレーションボードの白い円の点群変動」が3mmを超えるかどうかを確認
画像と位置姿勢一覧 パネルからキャリブレーションポイントを選択し、画面の下部で キャリブレーションボードの白い円の点群変動 を確認します。キャリブレーションボードの白い円の点群変動 は、現在のキャリブレーションポイントですべてのキャリブレーションボードの白い円の中心座標がフィッティングする平面での変動を統計します。その大きさは外部パラメータの精度に直接影響します。
求められる精度が高いほど、点群変動の値は小さくなります。通常、最大値を3mm以上に設定しないでください。3つ以上のキャリブレーションポイントの点群変動の最大値が3mmを超える場合、全体の精度が確保できないことを示しています。この時点に、問題を突き止めて解決したら、キャリブレーションを再度実行する必要があります。
キャリブレーションボードの白い円の点群に変動が発生する原因は以下の通りです。
原因1:カメラの3D露出パラメータが正しく設定されていないため、点群に大きな変動が発生します。表面平滑化 と ノイズ除去 を有効にしないか、カメラゲイン を有効にします。
解決策:表面平滑化 と ノイズ除去 を有効にし、カメラゲイン を無効にし、3D露出パラメータを調整します。調整してもキャリブレーションボードの白い円の点群が抜けている場合、遮光が必要となります。
原因2:カメラがETH方式で取り付けられている場合、自動キャリブレーションを実行する際にはキャリブレーションボードがロボットフランジにしっかりと固定されていません。キャリブレーション中にロボット動作が速すぎるため、カメラ撮影時にキャリブレーションボードが揺れ、点群に大きな変動が発生します。
解決策:ロボットの移動速度を下げ、キャリブレーションボードをしっかり取り付け、カメラ撮影の待ち時間を長くします。
ハンドアイシステムの補正を計算
ETHシーンでは、現在の外部パラメータキャリブレーション結果の誤差がプロジェクトの精度要件を満たしていない場合、この機能を使用して補正パラメータを計算できます。
原理
ロボット先端にキャリブレーションボードを搭載し、作業空間でデータを取得し、ハンドアイシステムの補正を行います。作業空間をいくつかの領域に分割し、精度を領域ごとに補正します。
使用方法
この機能は 開発者モード でのみ使用可能です。 |
-
現場の実際の状況とカメラの撮影視野に応じて、データの取得ポイントを追加します。精度の要件が高いほど、ポイントの密度が高くなります。通常、作業空間のZ方向に10層以上のポイント(推奨は15層)を追加し、各層のポイントは3×3から5×5とします。
-
外部パラメータを計算 手順で ハンドアイシステムの補正を計算 にチェックを入れてから、外部パラメータを再計算 をクリックします。
|
|