ロボットハンド・アイ・キャリブレーション
本ガイドを読むことで、自動ハンド・アイ・キャリブレーション(Eye to Hand)の実行方法を習得できます。
ハンド・アイ・キャリブレーションとは、カメラ座標系とロボット座標系との対応関係(外部パラメータ)を求めることです。ビジョンシステムにより取得した対象物の位置姿勢をロボット座標系に変換し、ロボットが対象物の把持を完了させるように制御します。 |
動画:ハンド・アイ・キャリブレーション(標準インターフェース通信)
|
事前準備
以下では、ロボットキャリブレーションプログラムの修正、キャリブレーションボードの取り付け、カメラパラメータの調整、キャリブレーション前の設定を行う必要があります。
ロボットキャリブレーションプログラム(MM_AUTO_CALIB)の修正
キャリブレーションするためのプログラムを選択
-
ティーチモードでは、ティーチペンダントで
を選択します。カーソルを MM_AUTO_CALIB に移動して、ティーチペンダントの SELECT を押します。 -
プログラムを選択した後、以下のような画面が表示されます。
標準インターフェース通信をテスト の節でIPCのIPアドレスとポートを変更しました。したがって、ここではキャリブレーションの初期位置を設定する必要があります。 |
キャリブレーションの初期位置を設定
キャリブレーション中、ロボットがMech-Visionに送信された位置姿勢はフランジ位置姿勢である必要があります。したがって、キャリブレーションの初期位置を設定する前に、ツールIDをすべてのツールのオフセット値(ToolOffset)が0のツールID(通常は00)に切り替える必要があります。ツール00のTCPはロボットのフランジにあります。 |
-
ロボットを手動でキャリブレーションの初期位置に移動させます。カーソルを MOVJ P099 VJ=5 に移動させ、ティーチペンダントの DIRECT OPEN キーを押します。
-
ティーチペンダントの SERVO ON READY を押した後、ティーチペンダントの背面の イネーブルスイッチ を押しながら、MODIFY を押して ENTER を押します。位置変数 P099 を現在の位置に変更し、「TOOL」が 00 であることを確認します。
-
ティーチペンダントの DIRECT OPEN キーをもう一度押すと、JOB の画面に戻ります。
これで、Yaskawaロボットの自動キャリブレーションを実行するためのプログラムの修正が完了しました。
キャリブレーションボードの取り付け
Eye to Handモードでは、キャリブレーションボードはロボット先端のフランジに取り付ける必要があります。 |
取り付け手順は以下の通りです。
-
カメラ梱包箱からキャリブレーションボードとフランジを取り出します。
-
ネジ、スペーサー、ナットを使って、フランジをロボット先端に固定します。
-
ネジ、スペーサー、ナットを使って、キャリブレーションボードをフランジに固定します。キャリブレーションボードがロボット先端のXY平面と平行であることを確認してください。
-
取り付け後、ロボットをキャリブレーションの開始位置(作業エリア内で最も下の層のワークの上面であり、かつカメラの視野中心に位置する位置)に移動させます。そして、ロボットはキャリブレーションボードを搭載して下から上にキャリブレーションします。
カメラパラメータの調整
-
Mech-Eye Viewerを使用してカメラに接続し、パラメータグループ から calib を選択します。
-
2D画像内のキャリブレーションボードがはっきり見え、露出過度や露出不足がないように、2Dパラメータを調整します。
正常 露出過度 露出不足 -
キャリブレーションボード上の白い円の点群が完全なものになるように、3Dパラメータを調整します。点群の変動範囲を減らすために、点群後処理の表面平滑化と外れ値除去をNormalに変更することをお勧めします。
完全な点群 不完全な点群 不完全な点群
キャリブレーション前の設定
-
Mech-Visionのツールバーから カメラキャリブレーション(標準モード) をクリックします。すると、 キャリブレーション前の設定 画面が表示されます。
-
キャリブレーションの実行方法を選択画面で、新なキャリブレーションを開始を選択し、次へをクリックします。
-
キャリブレーションのタスクを選択画面で、ドロップダウンリストボックスから適応可能なロボットのハンド・アイ・キャリブレーションを選択し、ロボット型番を選択をクリックします。
-
ロボットブランド のドロップダウンリストボックスから YASKAWA を選択し、右側で YASKAWA_GP8 を選択して 選択 をクリックし、次へ をクリックします。
-
カメラの取り付け方式を選択画面で、Eye to Handを選択して次へをクリックします。
-
実行モードとロボットの制御方式を選択 画面で、 自動キャリブレーション と標準インターフェース を選択してから、次へをクリックします。
-
通信設定 画面で 通信プロトコル の初期値を使用します。ロボットを接続 の下に インターフェースサービスを起動 が表示されている場合は、それをクリックすると、ボタンが ロボットとの接続を待機中… に変わります。
-
本ガイドでは、ビジョンシステムはTCPサーバーとし、ホストIPアドレスをIPCのIPアドレスとポートに設定する必要があります。IPCのIPアドレスはローカルIPアドレスで、設定する必要はありません。すべてのソフトウェアは「0.0.0.0」を使用します。
-
IPCは、デフォルトでポート50000を使用してインターフェースサービスを提供します。必要に応じて変更することができます。このポートを変更した場合、ロボット側とビジョンシステムとの通信を確立する際に正しいポート番号を使用してください。
-
キャリブレーションプログラムを実行
-
まずはカーソルをキャリブレーションプログラムの1行目に移動させます。ティーチペンダントのキーを「PLAY(中央位置)」に合わせると、ロボットが 再現モード になります。その後、ティーチペンダントの SERVO ON READY キーを押します。
-
低い速度で動作する必要がある場合、ティーチペンダントパネルの
を選択して、SPEED LIMIT を VALID に変更します。 -
ティーチペンダント上部の緑色のスタートボタンを押します。スタートボタンのランプが点灯すると、ロボットが動作を開始しています。
もし実行中に異常が発生した場合は、すぐに 停止 または 緊急停止 ボタンを押してください。 -
Mech-Visionの キャリブレーション前の設定 画面では、ロボットを接続 の下に「接続済み」の状態が表示され、ボタンが ロボットとの接続を待機中… から 接続を切断 に変わったら、実行 をクリックします。すると、「キャリブレーション(Eye to Hand)」画面が表示されます。
また、Mech-Visionのログバーの コンソール タブに関連メッセージが表示されます。
キャリブレーションの実行手順
カメラの接続
-
カメラに接続手順で、検出されたカメラから接続するカメラを選択して をクリックするか、ダブルクリックして接続します。
-
カメラ接続後、一回キャプチャまたは連続キャプチャをクリックします。
-
画像ビュー では、取得した2D画像と点群が要件を満たしていることを確認した上で 次へ をクリックします。
取得した画像が要件を満たしていない場合、Mech-Eye Viewerを起動し、カメラの2Dと3D露光パラメータを調整 して再取得する必要があります。 |
キャリブレーションボードを取り付けて内部パラメータをチェック
-
キャリブレーションボードを取り付けて内部パラメータをチェック 手順で、使用されているキャリブレーションボードに貼られているラベルに従って、キャリブレーションボードを選択 の下の 標準キャリブレーションボード型番 を選択します。
-
キャリブレーションボードの位置と点群品質を確認 で、チェック基準を確認してから、連続キャプチャ をクリックします。すると、連続キャプチャ が キャプチャを停止して位置を検出 に変わります。
-
キャリブレーションボードを適切な位置までロボットを移動させ、キャリブレーションボードの2D画像と深度画像がチェック基準を満たしていることを確認してから、キャプチャを停止して位置を検出 をクリックします。
-
カメラの内部パラメータをチェック で 内部パラメータをチェック をクリックします。
-
内部パラメータのチェック結果を確認します。
-
カメラの内部パラメータのチェックが合格している場合は、表示される画面で OK をクリックし、下の 次へ をクリックします。
-
内部パラメータのチェックが合格していない場合は、補助円を描画 するか、検出パラメータを修正 することによってキャリブレーションボード上の円の検出パラメータを編集し、内部パラメータを再チェック ボタンをクリックします。
-
上記の方法でも解決できない場合、カメラ自体の内部パラメータに問題がある可能性がありますので、内部パラメータを補正 するか、Mech-Mind株式会社にお問い合わせください。 |
動作経路を設定
-
動作経路を設定 手順で、キャリブレーション範囲を設定 の下の 高さ範囲 パラメータを設定します。
高さ範囲 は、カメラの推奨稼働範囲とロボットの稼働空間に応じて設定する必要があります。
-
経路パラメータを生成 をクリックし、ポップアップする ロボット経路をカメラ座標系に自動的に合わせる 画面で 確認 をクリックします。
この操作では、ロボットをわずかに移動させ、画像を取得します。全体のプロセスは10から15秒かかります。動作経路が安全であることを確認してください。緊急時にロボットティーチペンダントの非常停止ボタンを押してください。 -
ポップアップする キャリブレーション 画面で 確認 をクリックします。
-
右側の シーンビュー パネルで、各経路点の位置が正確で、周囲の環境との衝突が発生しないことを確認してください。
-
パラメータに基づいて経路を生成 をクリックし、下の 次へ をクリックします。
キャリブレーションボードの画像とフランジ位置姿勢を取得
-
キャリブレーションボードの画像とフランジ位置姿勢を取得 手順で、画像を保存 にチェックを入れます。
-
経路に沿ってロボットを自動で移動させ、画像を撮影をクリックします。
-
ロボット動作の安全に関する説明をよく読んでから、OKをクリックします。
-
ロボットが設定した経路に沿って移動し、カメラが各経路点で画像取得を完了するのを待ちます。右側の画像と位置姿勢一覧には、取得した画像が表示されます。
-
ロボット動作中に、ロボットの動作範囲に近づかないようにしてください。
-
ロボットを停止 をクリックするとキャリブレーションを終了しますが、ロボットはすぐには停止せず、現在の経路点に達するまで停止します。緊急時にロボットティーチペンダントの非常停止ボタンを押してください。非常停止を押した後、ロボットに再接続する必要があります。
-
-
画像の自動取得が完了した後、表示される画面で OK をクリックします。
-
取得されたキャリブレーションデータが要件を満たしていることを確認してから、下の 次へ をクリックします。
要件を満たしていない場合、ロボットを手動で移動した後(ティーチペンダントまたはMech-Vizを使用可能)、画像を手動で追加 にチェックを入れ、画像を追加してフランジ位置姿勢を記録 をクリックし、キャリブレーションボードの画像を追加してロボットのフランジ位置姿勢を入力する必要があります。
外部パラメータを計算
-
外部パラメータを計算 手順で、外部パラメータを計算 をクリックします。
-
キャリブレーションが正常に実行されたことを示すダイアログで、OKをクリックします。
-
外部パラメータのキャリブレーションレポートを表示 をクリックします。外部パラメータのキャリブレーションレポートが生成されると、自動的に表示されます。
外部パラメータのキャリブレーションレポートには、オイラー角のタイプのチェック結果、カメラ精度のチェック結果、ロボットの絶対精度のチェック結果などが表示されます。 -
外部パラメータのキャリブレーションレポートに表示されるオイラー角のタイプのチェック結果、カメラ精度のチェック結果、ロボットの絶対精度のチェック結果に問題がないことを確認した後、閉じる をクリックします。
-
外部パラメータのキャリブレーションレポートに表示されるカメラの精度が要件を満たさない場合、推奨事項を参考にして、カメラ精度の誤差の原因を特定してください。キャリブレーション精度を向上させるには、キャリブレーション結果の分析 をご参照ください。
-
ロボット精度と計算された外部パラメータの精度を評価するには、外部パラメータを計算 手順の画面で ロボットの精度 および 外部パラメータの精度 をクリックし、精度誤差分析ツールを使用して ロボットの絶対精度をチェック し、外部パラメータの誤差(ETHの場合)を評価 します。
-
-
下部にある 保存 をクリックし、ポップアップする キャリブレーションファイルを保存 画面で OK をクリックします。すると、カメラのキャリブレーション結果は、プロジェクトの「calibration」ディレクトリに自動的に保存されます。
これで、自動ハンド・アイ・キャリブレーション(Eye to Hand)の実行方法の説明が完了しました。