4軸ロボットの自動キャリブレーション(Eye in Hand)

プレリリース版のマニュアルを表示しています。安定リリース版(星マーク付き)のマニュアルを表示するには、ページの右上隅にあるバージョン番号をクリックして切り替えてください。

以下では、カメラがEye in Hand(EIH)方式で取り付けられている場合に4軸ロボットの自動キャリブレーションを実行する方法について説明します。

事前準備

以下は、ハンド・アイ・キャリブレーションを実行する前に必要な事前準備です。

  • Mech-Mindビジョンシステムを構築します。

  • キャリブレーションに必要なものを準備します。

  • キャリブレーションボードの点群画像生成を調整します。

  • ロボット通信設定を行います。

ビジョンシステムを構築

ビジョンシステムのハードウェア設置 を参照してMech-Mindビジョンシステムの構築を完了させてください。

ハンド・アイ・キャリブレーションを実行するには、Mech-Eye Viewer、Mech-VisionおよびMech-Vizの使用が必要です。これらのソフトウェアがインストールされ、最新バージョンにアップグレードされていることを確認してください。

キャリブレーションに必要なものを準備

カメラがEye in Hand方式で取り付けられている場合、自動キャリブレーションを実行するにはキャリブレーションボードの使用が必要です。

キャリブレーションボードについては、以下の要件があります。

  • キャリブレーションボードの白い円がはっきりと見えること、破損や曲げ変形がないことを確認してください。

  • キャリブレーションボードを作業平面の中心に配置してください。

また、キャリブレーションを実行する前に、ロボットをキャリブレーションの開始位置に移動させてください。カメラがEye in Hand方式で取り付けられている場合、キャリブレーションの開始位置はカメラの稼働位置となります。ロボットは、カメラを移動させて下から上にキャリブレーションを実行します。

キャリブレーションボードの点群画像生成を調整

  1. Mech-Eye Viewerを起動し、カメラパラメータを調整します。

  2. 2D画像内のキャリブレーションボードがはっきり見え、露出過度や露出不足がないように、2Dパラメータを調整します。

  3. 3Dパラメータを調整して、キャリブレーションボードの白い円の点群が完全に見られるようにします。点群の変動範囲を小さくするために、点群後処理の中の表面平滑化ノイズ除去Normalに設定することを推奨します。

    現場では、環境光が複雑な場合、2D画像や点群への影響を軽減するために、遮光・補光することを推奨します。

  4. 上記の手順を完了することで、キャリブレーションボードの点群の画像品質が要件を満たしていることを確認します。

    正常 露出過度 露出不足

    2D画像

    normal-2d

    overexposure-2d

    underexposure-2d

    点群

    normal-3d

    overexposure-3d

    underexposure-3d

ロボット通信設定を実行

ロボットは標準インターフェース方式でビジョンシステムと通信する場合、ロボットの標準インターフェースの通信設定を完了させてください。詳細については、 標準インターフェース通信 をご参照ください。

ロボットはVizティーチング方式でビジョンシステムと通信する場合、ロボットのVizティーチングの通信設定を完了させてください。詳細については、 Vizティーチング通信 をご参照ください。

キャリブレーション前の設定

ロボットは標準インターフェース方式でビジョンシステムと通信する場合、 キャリブレーション前の設定(標準インターフェース) を完了させてください。

ロボット側はVizティーチング方式でビジョンシステムと通信する場合、 キャリブレーション前の設定(Vizティーチング) を完了してください。

キャリブレーション前の設定(標準インターフェース)

標準インターフェース通信の場合、以下の手順に従ってキャリブレーション前の設定を行います。

  1. Mech-Visionを起動し、ツールバーの カメラキャリブレーション(標準モード) をクリックします。すると、キャリブレーション前の設定 画面が表示されます。

  2. キャリブレーションの実行方法を選択 画面で、 新なキャリブレーションを開始 を選択し、 次へ をクリックします。

    eih calib auto preset new
  3. キャリブレーションのタスクを選択 画面で、ドロップダウンリストから 適応可能なロボットのハンド・アイ・キャリブレーション を選択し、 ロボット型番を選択 をクリックして型番を選択してから、 次へ をクリックします。

    eih calib auto preset select robot
  4. カメラ取り付け方式を選択 画面で、 Eye in hand にチェックを入れ、次へをクリックします。

    eih calib auto preset eih
  5. 実行モードとロボットの制御方式を選択 画面で、 自動キャリブレーション標準インターフェース を選択してから、次へをクリックします。

    eih calib auto preset standard interface
  6. 表示される画面で 通信プロトコルホストIPアドレス を設定してから、 インターフェースサービスを起動 をクリックします。すると、このボタンが ロボットの接続を待機中… に変わります。

    eih calib auto preset start standard interface
    • 上図では、 TCP SeverHex(Little-endian) はABBロボットのプロトコル設定の例です。他のロボットのプロトコル設定は異なる場合があります。ソフトウェアは自動的にロボットの初期設定を追加しますので、初期設定を使用してください。

    • デフォルトでは、 ホストIPアドレス のポート番号は 50000 となります。50000といったポート番号を使用しない場合は、実際の状況に応じて変更してください。

  7. ティーチペンダントで 自動キャリブレーションのプログラムを選択し、キャリブレーションの開始位置を設定してキャリブレーションプログラムを実行します 。様々なロボットに対応するキャリブレーション手順については、標準インターフェース通信 をご参照ください。キャリブレーションプログラムが正常に起動されると、ログに「キャリブレーションプロセスに入ります。Mech-Visionでキャリブレーションを実行してください。」が表示されます。

  8. Mech-Visionに戻り、 ロボットを接続 の下で「接続済み」が表示されることを確認してから 実行 をクリックします。すると、キャリブレーション(Eye in Hand) 画面が表示されます。

キャリブレーション前の設定(Vizティーチング)

Vizティーチング通信の場合、以下の手順に従ってキャリブレーション前の設定を行います。

  1. Mech-Visionを起動し、ツールバーの カメラキャリブレーション(標準モード) をクリックします。すると、キャリブレーション前の設定 画面が表示されます。

  2. キャリブレーションの実行方法を選択 画面で、 新なキャリブレーションを開始 を選択し、 次へ をクリックします。

    eih calib auto preset new
  3. キャリブレーションのタスクを選択 画面で、ドロップダウンリストから 適応可能なロボットのハンド・アイ・キャリブレーション を選択し、 ロボット型番を選択 をクリックして型番を選択してから、 次へ をクリックします。

    eih calib auto preset select robot
  4. カメラ取り付け方式を選択 画面で、 Eye in hand にチェックを入れ、次へをクリックします。

    eih calib auto preset eih
  5. 実行モードとロボットの制御方式を選択 画面で、 自動キャリブレーションVizティーチング を選択して 次へ をクリックします。

    eih calib auto preset master control
  6. 表示される画面で ロボットIPアドレス を設定します。

    eih calib auto preset master control robotip
  7. ティーチペンダントで Vizとの通信プログラムを選択して実行します 。様々なロボットに対応する実行方法については、 Vizティーチング通信 をご参照ください。

  8. Mech-Visionに戻り、 ロボットを接続 エリアの下に ロボットを接続 をクリックします。すると、このボタンが ロボットの接続を待機中… に変わります。

    eih calib auto preset master control connect robot
  9. ロボットを接続 の下で「接続済み」が表示されることを確認してから 実行 をクリックします。すると、キャリブレーション(Eye in Hand) 画面が表示されます。

これで、キャリブレーション前の設定が完了し、キャリブレーションに進むことになります。

キャリブレーションの実行手順

カメラ接続

  1. カメラに接続 手順で、カメラ一覧から接続するカメラを選択して connect camera icon をクリックするか、ダブルクリックして接続します。

    eih calib auto connect camera
  2. カメラ接続後、 一回キャプチャ または 連続キャプチャ をクリックします。

    eih calib auto image capture
  3. 画像ビュー パネルでは、カメラが取得した2D画像と深度画像が要件を満たしていることを確認した上で 次へ をクリックします。

キャリブレーションボードを取り付けて内部パラメータをチェック

  1. キャリブレーションボードを取り付けて内部パラメータをチェック 手順で、使用されているキャリブレーションボードに貼られているラベルに従って、 キャリブレーションボードを選択 の下の 標準キャリブレーションボード型番 を選択します。

    eih calib auto select calib board
  2. キャリブレーションボードの位置と点群品質を確認 で、チェック基準を確認してから、連続キャプチャ をクリックします。すると、連続キャプチャキャプチャを停止して位置を検出 に変わります。

  3. 手動でキャリブレーションボードを適切な位置に移動し、キャリブレーションボードの2D画像と深度画像がチェック基準を満たしていることを確認してから、 キャプチャを停止して位置を検出 をクリックします。

    eih calib auto install calib board

    取得した画像がチェック基準を満たしていない場合、 Mech-Eye Viewerを起動 をクリックしてMech-Eye Viewerを起動し、 カメラの2Dと3D露出パラメータを調整 してから画像を再取得します。パラメータを調整する前に、必ず パラメータグループ を「calib」に切り替えてください。

  4. カメラの内部パラメータをチェック の下の 内部パラメータをチェック をクリックします。

  5. 内部パラメータのチェック結果を確認します。

    • カメラの内部パラメータのチェックが合格している場合は、表示される画面で OK をクリックし、下の 次へ をクリックします。

      eih calib auto check intri pass
    • カメラの内部パラメータのチェックが合格していない場合、補助円を描画するか、キャリブレーションボードの白い円の検出パラメータを手動で調整してから、 内部パラメータを再チェック をクリックします。

補助円を描画

  1. 補助円を描画する場合、補助円を描画をクリックします。

  2. 右側の 画像ビュー パネルで、キャリブレーションボードの画像を右クリックし、 ウィンドウに合わせる のチェックを外します。その後、Ctrlキーを押しながらスクロールホイールをドラッグして画像のサイズを適切な大きさに変更します。

  3. キャリブレーションボードの白い円の十字型の中心にマウスポインタを合わせて、マウスの左ボタンを押し、補助円をキャリブレーションボードの白い円に完全に含ませてから離します。

    eih calib auto adjust blob
  4. 内部パラメータを再チェック をクリックし、カメラ内部パラメータのチェックが合格しているかどうかを確認します。

検出パラメータを手動で調整

検出パラメータを手動で調整する場合、 キャリブレーションボードの白い円の検出パラメータ(詳細設定) をクリックして展開し、検出パラメータの値を変更します。その後、 内部パラメータを再チェック をクリックし、カメラの内部パラメータのチェックが合格しているかどうかを確認します。

それでもキャリブレーションボードの白い円が検出されない場合、現場の環境に応じてカメラの関連パラメータを調整する必要があります。カメラパラメータの調整については、 パラメータ調整 をご参照ください。

動作経路を設定

  1. 動作経路を設定 手順で、 キャリブレーション範囲 の下の 高さ範囲 パラメータを設定します。

    eih calib auto set robot path

    高さ範囲 は、カメラの推奨稼働範囲とロボットの稼働空間に応じて設定する必要があります。

  2. 経路パラメータを生成 をクリックし、ポップアップする ロボット経路をカメラ座標系に自動的に合わせる 画面で 確認 をクリックします。

    eih calib auto confirm path parameters
    この操作では、ロボットをわずかに移動させ、画像を取得します。全体のプロセスは10から15秒かかります。動作経路が安全であることを確認してください。緊急時にロボットティーチペンダントの非常停止ボタンを押してください。
  3. ポップアップする キャリブレーション 画面で 確認 をクリックします。

    eih calib auto confirm pose
  4. 右側の「シーンビュー」パネルで、各経路点の位置が正確で、周囲の環境との衝突が発生しないことを確認してください。

    eih calib auto view path
  5. パラメータに基づいて経路を生成 をクリックし、下の 次へ をクリックします。

キャリブレーションボードの画像とフランジ位置姿勢を取得

  1. キャリブレーションボードの画像とフランジ位置姿勢を取得 手順で、 画像を保存 にチェックを入れます。

    eih calib auto add image pose
  2. ロボットがVizティーチング方式でビジョンシステムと通信する場合、デフォルトで ロボット実機と同期 にチェックを入れ(推奨)、 詳細情報 をクリックして展開し、表示されるロボットの関節角度および位置姿勢データがティーチペンダントに表示されるデータと一致していることを確認します。ロボット実機と同期する必要がない場合は、このボックスのチェックを外してください。

  3. 経路に沿ってロボットを自動で移動させ、画像を撮影 をクリックし、ポップアップウィンドウに表示されるロボットの動作に関するヒントを注意深く読み、その後 OK ボタンをクリックします。

    eih calib auto safety tips
  4. ロボットが設定した経路に沿って移動し、カメラが各経路点で画像取得を完了するのを待ちます。右側の 画像ビュー パネルで取得された画像が表示されます。

    • ロボット動作中に、ロボットの動作範囲に近づかないようにしてください。

    • 「ロボットを停止」ボタンをクリックするとキャリブレーションを終了しますが、ロボットはすぐには停止せず、現在の経路点に達するまで停止します。緊急時にロボットティーチペンダントの非常停止ボタンを押してください。非常停止を押した後、ロボットに再接続する必要があります。

  5. 画像が取得した後、表示される画面で OK をクリックします。

    eih calib auto capture finished
  6. 取得されたキャリブレーションデータが要件を満たしていることを確認してから、下の 次へ をクリックします。

    eih calib auto data requirements

    要件を満たしていない場合、ロボットを手動で移動した後(ティーチペンダントでもMech-Vizでも選択可能)、 画像を手動で追加 にチェックを入れ、 画像を追加してフランジ位置姿勢を記録 をクリックし、キャリブレーションボードの画像を追加してロボットのフランジ位置姿勢を入力する必要があります。

外部パラメータを計算

  1. 外部パラメータを計算 手順で、 外部パラメータを計算 をクリックします。

    eih calib auto calculate extri 4 axis
  1. キャリブレーションが正常に実行されたことを示すダイアログで、 OK をクリックします。

    eih calib auto confirm calib result
    ロボット精度と計算された外部パラメータの精度を評価するには、「外部パラメータを計算」手順の画面で ロボットの精度 および 外部パラメータの精度 をクリックし、精度誤差分析ツールを使用して ロボットの絶対精をチェック し、 外部パラメータの誤差(EIHの場合)を評価 します。
  2. 外部パラメータのZ軸並進を計算します。

    キャリブレーションの実行中では、4軸ロボットには 回転自由度 がないため、画像を取得する際は 回転 が不足しています。キャリブレーションが完了したら、外部パラメータのZ軸値を手動で調整する必要があります。
    1. ロボットハンドの適切な位置に先端を取り付け、ツールセンターポイント(TCP)を設定します。

    2. ロボットを移動させて先端をキャリブレーションボードの白い円の十字中心に接触させ、ティーチペンダントに表示されるロボットのツール位置姿勢(X0,Y0,Z0)を読み取ります。

      eih calib auto four axis read tcp
    3. ロボットを画像撮影位置に移動させ、キャリブレーションボードの画像を取得します。 パラメータ調整 の下の パラメータを適用して点群をプレビュー をクリックし、キャリブレーションボードの点群をMech-Vizに送信します。

    4. Mech-Vizに「移動」ステップを追加し、前の手順に記録されたツール位置姿勢(X0,Y0,Z0)をステップに入力します。Z値を調整し、このステップの目標点をキャリブレーションボードの点群表面に移動させ、そのステップのZ値(Z1)を記録します。Z0からZ1を引いて、Z値の誤差ΔZを求めます。

      eih calib auto four axis z differenece
  3. 外部パラメータを計算 手順で、パラメータ調整 の下の Z軸並進 パラメータを誤差値ΔZに変更してから、 パラメータを適用して点群をプレビュー をクリックします。

  4. Mech-Vizの仮想空間で位置姿勢(X0,Y0,Z0)がキャリブレーションボードの点群表面にあることを確認します。

    eih calib auto four axis check board point cloud
  5. 下の 保存 をクリックし、ポップアップする キャリブレーションファイルの保存 画面で OK をクリックします。すると、キャリブレーション結果はプロジェクトの「calibration」ディレクトリに自動的に保存されます。

    eih calib auto save calib result

これで、キャリブレーション手順が完了しました。

外部パラメータファイルの切替え

Mech-Visionプロジェクトがカメラの外部パラメータファイルを使用している場合、ハンド・アイ・キャリブレーションが完了したら、Mech-Visionプロジェクトに使用されている外部パラメータファイルを新しいものに切り替える必要があります。

  1. カメラから画像を取得 ステップを選択します。

    change calibration parameter group
  2. ステップパラメータ から キャリブレーションパラメータグループchange calibration parameter group icon をクリックし、表示される画面で新しい外部パラメータファイルを選択します。

キャリブレーションに関するステータスコード

ハンド・アイ・キャリブレーションを行う際、ロボットとビジョンシステムが標準インタフェースを使用して通信している場合、ビジョンシステムからのデータにはコマンドの実行状態を示すステータスコードが含まれます。このステータスコードには正常な実行完了および異常なアラートが含まれ、ステータスコードに基づいてエラー処理を行うことができます。

キャリブレーションに関するエラーコード

エラーコード 意味

7001

キャリブレーション:パラメータエラーです

7002

キャリブレーション:Mech-Visionはキャリブレーションするためのフランジ位置姿勢を提供していません

7003

キャリブレーション:Mech-Visionはキャリブレーションするための関節角度を提供していません

7004

キャリブレーション:ロボットがキャリブレーションポイントに到達できませんでした

キャリブレーションに関する正常実行完了のコード

正常実行完了のコード 意味

7100

キャリブレーション:ロボットがキャリブレーションポイントに到達しました

7101

キャリブレーション:Mech-Visionから位置姿勢を取得しました

Mech-Mindは、お客様のプライバシーを重視しています

このサイトでは最高の体験を提供するために Cookie を使用しています。サイトの閲覧を続ける場合、Cookie の使用に同意したことになります。「拒否する」を選択すると、このサイトを訪れた際に追跡や記憶が行われないように単独の Cookie が使用されます。