外部パラメータの精度を向上・検証
以下では、外部パラメータの精度を向上し、検証する方法について説明します。
外部パラメータの精度を向上
ハンド・アイ・キャリブレーションを行う際には、外部パラメータ(キャリブレーション結果)の精度を向上させるために、以下のような対策を採用することができます。
キャリブレーション前:
-
ロボット架台がしっかりと取り付けられていることを確認します。
-
カメラの内部パラメータが高精度であることを確認します。異なる位置や異なる高さでキャリブレーションボードを使用して内部パラメータをチェックすることを推奨します。
-
ロボットの絶対精度がチェックされ、プロジェクトの要件を満たしていることを確認します。
-
キャリブレーションの前に、カメラを30分以上予熱してください。高精度が求められるアプリケーションでは、45分以上の予熱を推奨します。予熱のプロセスは、カメラに電源を入れるか、連続的に画像を撮影することで行うことができます。
キャリブレーション中:
-
「標準キャリブレーション法」でETHのキャリブレーションを実行する場合は、キャリブレーションボードがしっかりと取り付けられていることを確認します。
-
ロボットが重いハンドを搭載し把持する場合、ロボットでプリロード補償を有効にし、ハンドを搭載した状態で外部パラメータをキャリブレーションすることを推奨します。
-
カメラのワーキングディスタンスが1.5m以上である場合、キャリブレーションに使用する「calib」パラメータグループで 表面平滑化 機能を有効にする必要があります。
-
ロボットの速度を下げ、待機時間を長く設定し、キャリブレーションデータを取得する際にロボットが明らかに揺れないようにします。
-
ハンド・アイ・キャリブレーションの手順に厳密に従って操作します。
外部パラメータのキャリブレーション結果を表示
外部パラメータのキャリブレーションレポートを表示
「標準キャリブレーション法」でキャリブレーションを実行する場合は、外部パラメータを計算した後、外部パラメータのキャリブレーションレポートを表示 ボタンをクリックします。外部パラメータのキャリブレーションレポートが生成されると、自動的に表示されます。
キャリブレーションレポートには、オイラー角タイプのチェック結果、カメラ精度のチェック結果、およびロボットの絶対精度のチェック結果がすべて「合格」(または明らかな誤差がない)であれば、外部パラメータのキャリブレーションは成功し、外部パラメータが使用可能です。
いずれかのチェック結果が合格しない場合、レポートに記載されたアドバイスに従って処理し、再度キャリブレーションを行い、チェック結果が合格するまで繰り返します。
点群ビューで誤差点群を確認
「TCPタッチ法」でキャリブレーションを実行する場合、点群ビューで誤差点群を確認することでキャリブレーション結果を使用できるかを検証できます。
外部パラメータを計算した後、右側の 点群ビュー パネルで誤差点群を表示します。誤差点群は、各キャリブレーション位置姿勢でキャリブレーションボードの白い円の実際の値と計算値との偏差を示すために使用されます。
点群誤差の基準は以下の通りです。
-
一般的なプロジェクトでは、すべてのデータポイントの誤差が3mm未満である必要があります。つまり、<3mmの誤差を持つポイントが100%である必要があります。
-
高精度が求められるシーンでは、すべてのデータポイントの誤差が2mm未満である必要があります。つまり、<2mmの誤差を持つポイントが100%である必要があります。
-
パレタイジングのシーンでは、すべてのデータポイントの誤差が5mm未満である必要があります。つまり、<5mmの誤差を持つポイントが100%である必要があります。
上記の基準は参考のみであり、実際の生産におけるプロジェクト精度要件に従います。
外部パラメータの精度を検証
キャリブレーション結果を検証(ETH)
外部パラメータを計算した後、「外部パラメータ誤差分析ツール」を使用して、キャリブレーション結果が使用可能かどうかを評価できます。
詳細な手順は以下の通りです。
-
外部パラメータを計算 手順の 補助ツール で 外部パラメータの精度 をクリックし、表示される 誤差分析 画面で 外部パラメータ誤差を分析(ETHの場合) を選択します。
-
キャリブレーションボードの位置姿勢を取得するためのプロジェクトを新規作成します。今回作成したプロジェクトは下図のような流れで処理を行います。
-
ロボット実機の位置姿勢を同期させ、キャリブレーションボードの点群を含むシーンの点群を取得します。
-
プロジェクト内の 経路計画 ステップを選択し、ステップパラメータ パネルで エディタを開く をクリックして仮想空間に入ります。
-
「経路計画」ステップのツールにロボット実機の位置姿勢を同期させ、仮想ロボットとロボット実機の位置姿勢が同じであることを確認します。
-
シミュレート ボタンをクリックし、キャリブレーションボードを含むシーンの点群を可視化します(シミュレート をクリックした後のエラーメッセージは無視できます)。
-
-
キャリブレーションボードの仮想TCPを作成します。
-
「経路計画設定ツール」のリソースにロボットハンドを追加します。
-
仮想空間でロボットハンドの表示を確認し、TCPがキャリブレーションボードの白い円の中心と一致するようにパラメータを調整します(位置姿勢のX軸とY軸は円の中心の十字と一致し、XOY平面はキャリブレーションボードの平面と一致する必要があります)。
-
名前を入力し、「OK」をクリックして仮想TCPの作成を完了します。
-
-
稼働空間内の他の位置で外部パラメータを検証します。
-
ロボット実機を稼働空間の他の位置に移動させます。
-
「経路計画」ステップのツールにロボット実機の位置姿勢を同期させ、仮想ロボットとロボット実機の位置姿勢が同じであることを確認します。
-
シミュレート ボタンをクリックして、新しいキャリブレーションボードとシーンの点群を取得します。
-
前の手順で追加した仮想TCPがキャリブレーションボード上の白い円の中心と一致しているか確認します。
-
一致している場合、キャリブレーション結果は使用可能です。
キャリブレーション結果を検証(EIH)
外部パラメータを計算した後、「外部パラメータ誤差分析ツール」を使用して、キャリブレーション結果が使用可能かどうかを評価できます。
詳細な手順は以下の通りです。
-
外部パラメータを計算 手順の 補助ツール で 外部パラメータの精度 をクリックし、表示される 误差分析 画面で 外部パラメータ誤差を分析(EIHの場合) を選択します。
-
関連する操作方法を確認したら、次へ をクリックします。
-
+ をクリックし、複数のキャリブレーションボードの位置姿勢データを追加します。
-
誤差を分析 をクリックし、分析結果を確認します。
誤差値がプロジェクトの精度要件を満たしている場合、キャリブレーション結果は使用可能です。