[RobotVisionKit] キャリブレーション方法

1. はじめに


DOBOT RobotVisionKitにて認識した座標データはカメラの座標系であるため、そのままMG400, M1 Proに送信しても使用する事ができません。その為、座標データを送信する前に、DobotVisionStudioにてカメラ座標系からロボットアーム(MG400, M1 Pro)座標系に変換する処理が必要になります。それをDobotVisionStudioにおけるキャリブレーションといいます。本稿では、キャリブレーションに必要なXMLファイル(.xml)の生成の方法と、生成したXMLファイルを用いたキャリブレーションの方法をご案内します。

[注意]この記事は、DobotRobotVisionKitのセットアップが完了した状態を前提としています。セットアップがまだの方は、先に[RobotVisionKit] セットアップ方法の記事をご覧ください。

 

処理の大まかな流れ

①DobotVisionStudioでキャリブレーション用のプログラム(.sol)を作成し、その中でキャリブレーションファイル(.xml)を生成する。

②メインプログラムにおいて、キャリブレーションを行いたい座標データに対しキャリブレーションファイル(.xml)を適用して、変換を行う。

 

2. 環境


以下の環境にて、この手順が有効であることを確認しています。

OS: Windows 10(64bit)

MG400: DobotStudioPro v2.3.1, ファームウェア v1.5.7.0

RobotVisionKit: dobotVisionStudio v4.1.2

 

3. 手順


3-1. キャリブレーション用プログラムの概要

キャリブレーション用プログラムは以下のフローとなっています。それぞれのブロックにおける設定を次の項から説明します。

 

3-2. カメラからのフレーム取得

step1

フレーム取得機能を持つImage Sourceブロックをドラッグアンドドロップします。

step2

Image Sourceブロックをダブルクリックします。新たにImage Sourceのウィンドウが表示されます。

②今回はカメラからフレームを取得するのでBasic Params→Image SourceにてCameraを指定します。

③カメラのマークをクリックすると、新たに接続するカメラの設定を行うためのCamera Setのウィンドウが表示されます。

Device List+マークをクリックして、新規のカメラの設定を開きます。

step3

Common ParamsタブのCamera Connect→Choose Cameraにて接続したカメラを指定します。

[備考] プルダウンの項目にカメラが表示されない場合は、一度DobotVisionStudioを閉じ、カメラのUSBを接続しなおして再度お試しください。

step4

Trigger SettingタブのTrigger Settings→Trigger SourceにてSoftwareを指定します。その後、Confirmをクリックして、Camera Setのウィンドウを閉じます。

step5

Image Sourceのウィンドウに戻ります。Basic Params→Relate Cameraにて先ほど保存した設定が表示されますので、指定します。その後、×マークをクリックしてImage Sourceのウィンドウを閉じます。

step6

フロッピーディスクのマークをクリックしてプログラムを保存します。

step7

再生のマークをクリックしてプログラムを実行します。画像右側のように、カメラのフレームが表示されれば認識は成功です。確認の際に連続再生を行った場合は、再度クリックして実行を停止してください。

 

3-3. フレーム内のキャリブレーションボード認識

step1

以下画像のように、フレームで表示される位置に付属のキャリブレーションボードをテープなどで固定して設置してください。

step2

①キャリブレーションボード認識機能を持つCalibBoard Calibブロックをドラッグアンドドロップします

Image Sourceブロックから、CalibBoard Calibブロックの方向にドラッグアンドドロップをして結線します。

step3

CalibBoard Calibブロックをダブルクリックします。新たにCalibBoard Calibのウィンドウが表示されます。

Basic ParamsタブのImage Input→Image SourceにてImage Source.ImageDataを指定します。

③Confirmをクリックして、CalibBoard Calibのウィンドウを閉じます。

step4

プログラムを保存し連続実行します。連続実行中にCalibBoard Calibブロックをクリックすると、以下画像のフレームのように、黄緑の表記が追加されます。この表記がされていればキャリブレーションボードの認識は成功です。確認の後は実行を停止してください。

 

3-4. キャリブレーションファイルの生成

step1

①キャリブレーションファイル生成機能を持つN-point Calibrationブロックをドラッグアンドドロップします

CalibBoard Calibブロックから、N-point Calibrationブロックの方向にドラッグアンドドロップをして結線します。

step2

N-point Calibrationブロックをダブルクリックします。新たにN-point Calibrationのウィンドウが表示されます。

Executeをクリックします。

以下画像のフレームのように黄緑の表記が更に追加されます。これにより、フレーム内の9つの黄緑の+マークの位置のカメラ座標系の座標情報が取得されます。

step3

step2の状態のまま、MG400, M1 ProをLANケーブルでPCに接続して電源を入れます。

①MG400, M1 Proの起動が完了した後に、ロボットのマークをクリックします。新たにDobotPanelのウィンドウが表示されます。

プルダウンの項目からMG400/M1 Proを選択します。

Connectをクリックします。この処理によりMG400, M1 ProがDobotVisionStudioに接続されます。

step4

Basic ParamsタブのTranslation Number9であることを確認します。ペンのマークをクリックすると、新たにEdit Calibration pointsのウィンドウが開きます。

step5

①取得したカメラ座標系の9つの座標がIDと共に表示されます。IDと座標の位置関係は以下画像の通りです。

②MG400, M1 Proの座標を入力する欄です。それぞれの位置にMG400, M1 Proの手先を実際に移動させ、マップピンのマークをクリックします。この処理により、カメラ座標系とロボット座標系の対応をとります。

③CinfirmをクリックしてEdit Calibration pointsウィンドウを閉じます。

step6

Create Calibration Fileをクリックして、キャリブレーションファイル(.xml)を保存します。

 

3-5. キャリブレーションファイルの適用

step1

①メインプログラムにおいて、キャリブレーションファイルによるキャリブレーション機能を持つCalibration Transformationブロックをドラッグアンドドロップします

②キャリブレーションを行いたい座標データを出力するブロック(例:High Precision Matchブロック)より後の位置に、Calibration Transformationブロック結線します。

step2

Calibration Transformationブロックをダブルクリックします。新たにCalibration Transformationのウィンドウが表示されます。

Basic ParamsタブImage Input→Input Sourceにて、キャリブレーションを行いたい座標データを出力するブロックで用いたフレームの形式を指定します。

Basic ParamsタブCoord Input→Input Modeにて、By Coordinateを指定します。

Basic ParamsタブCoord Input→Coordinate X, Coordinate Yにて、それぞれキャリブレーションを行いたい座標データの出力を指定します。

Basic ParamsタブCoord Input→Coord Typeにて、Image Coordを指定します。

step3

①下にスクロールして、Basic ParamsタブAlign File→Load Calibration Fileにて、生成したキャリブレーションファイルを指定します。

Confirmをクリックして、Calibration Transformationのウィンドウを閉じます。

step4

プログラムを保存し連続実行します。連続実行中にCalibration Transformationブロックをクリックします。フレーム下部にキャリブレーションファイル適用後のデータであるTransPointX, TransPointYとそれらの値の表記がされていれば、キャリブレーションファイルの適用は成功です。TransPointX, TransPointYの座標データは、整形やTCP/IP通信によるロボットへの送信が可能です。

ご不明点等ございましたら、お気軽にdobot@techshare.co.jpまでお問い合わせください。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です