Calibration Wizard Readme ○はじめに このツールはRC8にインストールされているOpenCVプロバイダを用いて、カメラ-ロボットキャリブレーションを行う支援ツールです。 キャリブレーションを行う為には、RC8に接続可能なカメラと専用のチェスボードが必要です。 ○事前準備 ・ロボットの教示とワーク位置撮影 ロボットでワークをつかむ位置と、そのワークだけを撮影した画像を5セット準備してください。 ワークをつかむ位置はコントローラのP11〜P15に、ワークだけを撮影した画像はOpenCVプロバイダのID11〜15に保存してください。 位置はカメラ中央とカメラの視野4隅に納まるように教示してください。 ・チェスボードの印刷 チェスボードは「chessboard.pdf」を印刷してお使いください。 ○キャリブレーション手順 0. ライセンスの登録 Calibration Wizard用のライセンスを登録してください。 ライセンスは弊社営業にお問い合わせください。 1-1. 接続先のRC8コントローラのIPAddress指定 アプリケーションを立ち上げたPCとコントローラをEthernetケーブルで接続し、コントローラのIPAdressを入力してください。 1-2. カメラの設定 RC8コントローラに接続しているカメラのタイプを指定してください。 次にキャリブレーションデータを格納するOpenCVのIDを指定してください。 次に印刷したチェスボードのタイプを指定してください。 「Next」ボタンで2.に進みます。 2. カメラの詳細設定 2-2で指定したカメラの詳細設定を行います。 「Next」ボタンで3.に進みます。 3. カメラキャリブレーション カメラのキャリブレーションを行います。 チェスボード全体が写るようにチェスボードを配置し、Addボタンを押して撮影を行います。 チェスボードの交点が認識できている場合、交点が虹色にマーキングされます。 チェスボードを動かしながら、5枚以上撮影してください。 「Next」ボタンで4.に進みます。 4. カメラキャリブレーションの確認 カメラキャリブレーションの結果が確認できます。 PictureWindownにはキャリブレーション結果で得られた原点が描画されています。 原点がチェスボードの原点とずれている、または結果誤差が大きすぎる場合ははじめからやり直してください。 「Next」ボタンで5.に進みます。 5. ロボットの位置とワーク撮影画像の取り込み Getボタンを押すと、ロボットの位置と画像をコントローラから取得します。 「Next」ボタンで6.に進みます。 6. ワーク検出の為のテンプレート登録 ワーク画像を登録します。 PictureWindowを左クリックすることで、ワークを囲い登録する領域を選択します。 SetTemplateボタンを押すことでワーク画像を登録できます。 ワークを検出する為方法はTemplateMathcかBlobを選択してください。 「Next」ボタンで7.に進みます。 7. ワーク画像の検出とロボット位置の合わせこみ ワークをつかみにいく為の画像座標をロボット座標をペアで登録することで、カメラ-ロボットキャリブレーション用のデータを作成します。 6. で指定したアルゴリズムでワークが検出されていた場合、カメラ座標のx,yに検出した位置が登録されています。 大きなずれが無いか各セルをクリックすることで、検出位置の確認と修正ができます。 「Next」ボタンで8.に進みます。 8. カメラ-ロボットキャリブレーション結果の確認 カメラ座標を指定することで、キャリブレーション結果からロボット座標に変換することができます。 searchボタンを押すことで6.で登録したワークを検出することができます。 Transボタンを押すことで、カメラ座標をロボット座標に変換することができます。 Putボタンを押すことで、ロボットのP変数に計算したロボット座標を書き込むことができます。 ロボットの姿勢は現在の姿勢を書き込みますので、注意してください。 ○キャリブレーション結果の利用 OepnCVプロバイダのGetRobPosFromCam関数を利用して、カメラ座標をロボット座標に変換することができます。 は1.で指定したIDを指定してください。 姿勢情報は計算されませんので、適宜必要な姿勢を指定してください。