キャリブレーション結果の確認と分析
キャリブレーション済みの外部パラメータデータを確認し、その精度が要求を満たすかどうかを判断する必要があります。誤差が通常の範囲を超えた場合は、原因を突き止めて問題を解決し、外部パラメータが要求を満たすまでキャリブレーションを再度実行する必要があります。
キャリブレーション結果の確認
点群ビューで誤差点群を確認
外部パラメータを計算 手順でキャリブレーション結果が計算した後、下図のような誤差点群が 点群ビュー パネルに表示されます。誤差点群は、各キャリブレーション位置姿勢におけるキャリブレーションボードの白い円の実際の値と計算値との偏差を示すために使用されます。
誤差点群の色は誤差レベル(0.5mmにつき1つの誤差レベル)を示し、緑から赤にかけて色が濃いほど、その点での誤差が大きくなります。
誤差レベルごとの点を表示するには、 点群ビュー パネルで、英語入力方式で数字キー0-9を押します。ソフトウェアは、点群の誤差レベルに対応する点を強調表示します。キー0は誤差0.5mm以下の点、キー1は誤差0.5mm-1mmの点に対応します。これによって類推します。
下図では、誤差が0.5mm以下のポイントを示しています(数字キー0を押す)。
下図では、誤差が2.0-2.5 mmのポイントを示しています(数字キー4を押す)。
シーンビューでロボットの点群とロボットモデルとの重なりを確認(ETH場合のみ)
カメラの外部パラメータを計算した後、シーンビューでロボットの点群とロボットモデルの重なりを確認することで、キャリブレーション結果を大まかに判断することができます。詳細は以下の通りです。
-
ロボットアームをカメラの視野範囲内に移動させます。
-
外部パラメータを計算 手順で 外部パラメータを再計算 をクリックします。クリックすると、カメラが撮影を行います。
-
シーンビュー に切り替え、ロボットの点群とロボットモデルの重なりを確認します。
ロボットの点群がロボットモデルとほぼ一致すれば、キャリブレーション結果が使用可能です。
-
ただし、ロボットモデルはロボット実機の外観と完全に一致しない場合があり、外部パラメータの微調整の基準とすることができないことに注意してください。
-
シーンビュー に加え、Mech-Vizでロボットの点群とロボットモデルとの重なりを確認できます。
-
シーンビューで固定点に対するキャリブレーションボード点群のずれを確認(EIHの場合のみ)
カメラの外部パラメータを計算した後、シーンビューで固定点に対するキャリブレーションボードの点群(キリブレーションボードの白い円の十字中心)のずれを確認することで、キャリブレーション結果を大まかに判断することができます。詳細は以下の通りです。
-
キャリブレーションボードを固定位置に配置します。
-
Mech-Vizを起動し、固定点を追加し、それをキャリブレーションボードの白い円の1つの十字の中心に合わせます。
-
ステップライブラリから「移動」ステップを選択して、それをプロジェクト編集エリアにドラッグします。
-
このステップをクリックして選択し、ステップパラメータで目標点タイプを「ツール位置姿勢」に設定します。それがキャリブレーションボードの白い円のいずれかの十字中心と一致するように、位置姿勢のX/Y/Z座標値を調整します。
-
-
ロボットを制御してカメラの位置姿勢を数回変更し、キャリブレーションの 外部パラメータを計算 手順で 外部パラメータを再計算 をクリックします。クリックすると、カメラが撮影を行います。
-
シーンビューで、キャリブレーションボードの点群が固定点に対して大きくなずれがあるかどうかを確認します。
キャリブレーションボードの点群が固定点に対して大きくなずれがない場合、キャリブレーション結果が使用可能であることを示します。
|
キャリブレーション結果の分析
キャリブレーション結果の評価指標
キャリブレーション済みの外部パラメータデータについては、精度の要求を満たすかどうかを判断する必要があります。点群誤差の基準は以下の通りです。
-
一般的なプロジェクトでは、すべてのデータポイントの誤差が3mm未満である必要があります。つまり、誤差が3mm未満のポイントが100%に達する必要があります。
-
高精度が求められるシーンでは、すべてのデータポイントの誤差が2mm未満である必要があります。つまり、誤差が2mm未満のポイントが100%に達する必要があります。
-
パレタイジングのシーンでは、すべてのデータポイントの誤差が5mm未満である必要があります。つまり、誤差が5mm未満のポイントが100%に達する必要があります。
上記は基準値であり、具体的には作業現場の工程精度の要求に従うものとします。
外部パラメータのキャリブレーションレポートを表示
六軸ロボットの自動キャリブレーションおよび標準キャリブレーション法を使用する手動キャリブレーションに対して、Mech-Visionのキャリブレーションツールは「外部パラメータのキャリブレーションレポート」機能を提供しています。
キャリブレーションレポートは、キャリブレーションの 外部パラメータを計算 手順での 外部パラメータを計算 をクリックし、 外部パラメータのキャリブレーションレポートを表示 をクリックして確認できます。
Mech-Visionのキャリブレーションツールは、取得されたキャリブレーションデータに基づいて外部キャリブレーションの結果をチェックし、外部パラメータのキャリブレーションレポートを生成します。
このレポートは以下の項目のチェック結果と最適化アドバイスを表示します。
-
キャリブレーションデータのオイラー角のタイプをチェック
-
カメラ精度をチェック
-
ロボットの絶対精度をチェック
外部パラメータのキャリブレーションレポートに表示されるカメラの精度が要件を満たさない場合、推奨事項を参考にして、カメラ精度の誤差の原因を特定してください。
外部パラメータの精度を向上
精度要件を満たさないキャリブレーション済みの外部パラメータデータに対しては、エラーの原因を特定する必要があります。
外部パラメータの誤差分析ツールで誤差をチェック
Mech-Visionは外部パラメータの誤差分析ツールを提供しています。このツールは、カメラ取り付け方式がEye to Hand(ETH)およびEye in Hand(EIH)の両方に対応可能で、外部パラメータのキャリブレーション誤差とロボットの絶対精度の誤差の両方を包括的に分析します。
ツールの指示に従って分析レポートを生成し、推奨事項に基づいて最適化を行います。
外部パラメータの誤差分析ツールを開くには、以下のいずれかの方法を使用します。
-
メニューバーの
を選択します。 -
キャリブレーションの 外部パラメータを計算 手順で、 補助ツール の下の 外部パラメータの精度 をクリックします。
詳細については、 外部パラメータの誤差をチェック をご参照ください。
キャリブレーションデータに問題がないか確認
問題の原因を特定するために、キャリブレーションデータを以下の順番で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方式で取り付けられている場合、自動キャリブレーションを実行する際にはキャリブレーションボードがロボットフランジにしっかりと固定されていません。キャリブレーション中にロボット動作が速すぎるため、カメラ撮影時にキャリブレーションボードが揺れ、点群に大きな変動が発生します。 解決策:ロボットの移動速度を下げ、キャリブレーションボードをしっかり取り付け、カメラ撮影の待ち時間を長くします。
補正パラメータを再計算
補正パラメータとは、キャリブレーション領域に対してブロック分割によって計算したパラメータ値を指します。通常は、工場出荷時にカメラの実際の最大稼働範囲に合わせた値を表示します。
実際の作業現場のキャリブレーション条件がカメラ出荷時と一致しない可能性もあるため、工場出荷時の補正パラメータが適用しない可能性があります。 |
上記の順序で一つずつキャリブレーションデータを確認し、正しいことを確認しても、まだ予期通りの結果が得られない場合は、補正パラメータを再計算することができます。
|