JP5523392B2 - キャリブレーション装置及びキャリブレーション方法 - Google Patents

キャリブレーション装置及びキャリブレーション方法 Download PDF

Info

Publication number
JP5523392B2
JP5523392B2 JP2011114870A JP2011114870A JP5523392B2 JP 5523392 B2 JP5523392 B2 JP 5523392B2 JP 2011114870 A JP2011114870 A JP 2011114870A JP 2011114870 A JP2011114870 A JP 2011114870A JP 5523392 B2 JP5523392 B2 JP 5523392B2
Authority
JP
Japan
Prior art keywords
dimensional
robot
coordinate system
unit
calibration
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2011114870A
Other languages
English (en)
Other versions
JP2012240174A (ja
Inventor
靖雄 北明
幸康 堂前
晴久 奥田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2011114870A priority Critical patent/JP5523392B2/ja
Publication of JP2012240174A publication Critical patent/JP2012240174A/ja
Application granted granted Critical
Publication of JP5523392B2 publication Critical patent/JP5523392B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、キャリブレーション装置及びキャリブレーション方法に関する。
ビジョンセンサの情報からロボットが作業するためには、ビジョンセンサの座標系をロボット座標系に変換する必要があり、この変換行列を求めることをキャリブレーションと呼ぶ。
システムを立ち上げた時や、立ち上げ後に衝突などで位置ずれが発生した時には、キャリブレーションを実施する必要がある。ロボットによる作業に対して要求される精度が高くなるほど、キャリブレーションに対して要求される精度も高くなる。そのため、熟練作業者が時間をかけて作業を行っていたが、手間と時間とがかかり手戻りも多く、キャリブレーションが必要なビジョンセンサを用いたシステムの保全性が低下する傾向にある。
それに対して、特許文献1には、ロボットアーム装置のアーム先端部に指し棒を把持させ、ステレオ画像計測装置の画像内にアーム先端部の指し棒が映し出された状態で指し棒が長方形を描くようにロボットアームを動作させ、このときの位置データを基に、ステレオ画像計測装置の座標系からロボットアーム装置の座標系への座標変換データを計算することが記載されている。これにより、特許文献1によれば、キャリブレーション作業を自動化できるとされている。
また、特許文献2には、ロボットビジョンシステムにおいて、ロボットのアームの先端にチェッカーボードを固定し、機構的に既知な位置に固定された指示ピンがチェッカーボード上の交点と同一点となるようにアームを動かし、ロボット座標系におけるチェッカーボード上の各マーカーの3次元座標を求めることが記載されている。また、右カメラの撮影画像及び左カメラの撮影画像をそれぞれ画像解析して、ステレオカメラ座標系におけるチェッカーボード上の各マーカーの3次元座標を求め、ロボット座標系におけるマーカーの3次元座標とステレオカメラ座標系におけるマーカーの3次元座標とを対応付けることにより、ステレオカメラ座標系からロボット座標系への剛体変換行列を求めるとされている。これにより、特許文献2によれば、キャリブレーション作業を自動で行うことができるとされている。
特許第3402021号公報 特開2010−172986号公報
特許文献1、2に記載の技術は、いずれも、キャリブレーションを行う際にロボットのアーム先端にマーカーとなるものを把持又は固定させることが必要である。このため、システム立ち上げ後、ロボットへの所定の物体の衝突などにより既にキャリブレーション済みであるロボットの座標系とビジョンセンサの座標系との間に位置ずれが発生した際にも、システム立ち上げ時と同じキャリブレーション作業を行う必要がある。このため、システム立ち上げ後のキャリブレーションにおいて、システム立ち上げ時と同じ手間及び時間が必要になる。
例えば、実際の生産ラインでロボットの座標系とビジョンセンサの座標系との相対的な位置関係にずれが生じた際、生産ラインの中へ人が立ち入り、ロボットのアーム先端に指し棒を把持させる必要がある。あるいは、ロボットのアーム先端から作業用のエンドエフェクタを取り外し、ロボットのアーム先端にチェッカーボードを取り付ける必要がある。
本発明は、上記に鑑みてなされたものであって、システム立ち上げ後におけるキャリブレーションの手間及び時間をシステム立ち上げ時より低減できるキャリブレーション装置及びキャリブレーション方法を得ることを目的とする。
上述した課題を解決し、目的を達成するために、本発明の1つの側面にかかるキャリブレーション装置は、ロボットを有するシステムのキャリブレーションを行うキャリブレーション装置であって、前記ロボットの手先により作業が行われる作業エリア周辺の2次元画像を取得する2次元計測手段と、前記作業エリア周辺の3次元位置を取得する3次元計測手段と、前記3次元計測手段の座標系に対する前記ロボットの座標系の相対的な位置関係を記述する関連情報を記憶する第1の記憶手段と、前記2次元計測手段によりシステム立ち上げ時に取得された2次元画像と前記3次元計測手段によりシステム立ち上げ時に取得された3次元位置とを記憶する第2の記憶手段と、前記第2の記憶手段に記憶された3次元位置と前記3次元計測手段によりシステム立ち上げ後に取得された3次元位置とに基づいて、前記3次元計測手段の座標系に対する前記ロボットの座標系の相対的な位置関係のずれ量を推定する推定手段と、前記推定手段により推定されたずれ量を用いて、前記第2の記憶手段に記憶された2次元画像と前記2次元計測手段によりシステム立ち上げ後に取得された2次元画像との一致度を計算する計算手段と、前記計算手段により計算された一致度が閾値より小さい場合、前記推定手段により推定されたずれ量を用いて、前記第1の記憶手段に記憶された関連情報を補正する補正手段とを備えたことを特徴とする。
本発明によれば、システム運用時に3次元計測手段の座標系に対するロボットの座標系の相対的な位置関係のずれが発生した際、2次元計測手段及び3次元計測手段の計測データを用いてずれの補正を行うので、キャリブレーション用の専用の計測対象物の設置が必要なく、ロボットの作業エリアに作業者が入る必要がない。これにより、システム立ち上げ後におけるキャリブレーションの手間及び時間をシステム立ち上げ時より低減できる。
図1は、実施の形態に係るキャリブレーション装置の構成を示す図である。 図2は、実施の形態に係るキャリブレーション装置の構成を示す図である。 図3は、システム立ち上げ時におけるキャリブレーション装置の動作を示すフローチャートである。 図4は、5箇所の観測位置の位置と姿勢を表す概念図である。 図5は、各観測位置におけるマーカーの観測画像である。 図6は、システム立ち上げ後におけるキャリブレーション装置の動作を示すフローチャートである。 図7は、実施の形態の変形例に係るキャリブレーション装置の構成を示す図である。
以下に、本発明にかかるキャリブレーション装置の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
実施の形態.
実施の形態にかかるキャリブレーション装置100について説明する。
キャリブレーション装置100は、図1に示すように、ロボットRB及び3Dセンサ21を有するロボットシステムRSのキャリブレーションを行う。キャリブレーションとは、例えば、3Dセンサ21の座標系(x,y,z)からロボットRBの座標系(X,Y,Z)への座標変換を行うための変換行列を求めることである。
まず、キャリブレーション装置100がキャリブレーションを行う対象であるロボットシステムRSについて説明する。
ロボットRBは、例えば、6自由度の多関節ロボットであり、ロボットアームの先端には、フランジRB2が設けられている。このフランジRB2には作業用のツールとして例えばロボットハンドRB1等が装着される。そして、このフランジRB2には、ロボットハンドRB1等のツールと並んで3Dセンサ21及び2Dセンサ11が取り付けられている。これにより、ロボットRBは、作業エリアWAの作業台WT上に配置された所定の対象物に対して組み付けや加工等の作業を行う。
ロボット座標系(X,Y,Z)の原点は、例えばロボットRBの基部の底面にあり、Z軸を垂直方向にとって定義される。図1ではこのロボット座標系(X,Y,Z)を便宜上少しずらして描いている。フランジ座標系(X,Y,Z)は、ロボットRBの手先のフランジRB2に定義された座標系で、同様に図1では便宜上少しずらして描いている。フランジ座標系(X,Y,Z)の位置と姿勢はロボットコントローラRCが制御している。
3Dセンサ21を用いて対象物の位置を計測し、それに基づいてロボットRBを動作させるために、3Dセンサ21によって得られる対象物の位置データをロボットRBが動作する座標系上のデータに変換する。つまり、3Dセンサ21の座標系(x,y,z)と、ロボット30が動作する座標系(X,Y,Z)の間の関係を予め求める。ロボットアーム先端のフランジRB2に定義されているフランジ座標系(X,Y,Z)をロボット座標系(X,Y,Z)に変換するパラメータが、ロボットコントローラRCの記憶部RC3にあらかじめ記憶されている。そして、このフランジRB2に3Dセンサ21が取付けられているので、センサ座標系(x,y,z)をフランジ座標系(X,Y,Z)に変換するパラメータ(回転行列と並進ベクトル)をキャリブレーションすればよい。これにより、3Dセンサ21で検出したセンサ座標系における対象物の座標をフランジ座標系における座標に変換し、さらにそれをロボット座標系における座標に変換することができる。
ロボットコントローラRCは、マイクロプロセッサからなる中央演算処理装置(CPU)と、CPUにバス結合されたROMメモリ、RAMメモリ、不揮発性メモリ、ロボットの軸制御のためのディジタルサーボ回路と、サーボアンプ、外部信号の入出力装置、画像処理装置と結ばれた通信インターフェイス等を備えている。これら電子部品は、機能的に制御部RC1、演算部RC2、記憶部RC3を構成している。
記憶部RC3を構成するメモリのうち、ROMメモリにはシステムを制御するシステムプログラムが格納され、RAMメモリはCPUが行なう処理のためのデータの一時記憶等に使用される。また、不揮発性メモリには、動作プログラムのデータや、システムの動作に必要な各種設定値が格納される。この各種設定値には、ロボットRBのフランジRB2に定義されているフランジ座標系(X,Y,Z)をロボット座標系(X,Y,Z)に変換するパラメータ、すなわち、フランジ座標系(X,Y,Z)とセンサ座標系(x,y,z)の相対的な関係を記述する関連情報(例えば、回転行列や並進ベクトルなどのパラメータ)も含まれている。ロボットコントローラRCは、フランジRB2の位置姿勢を制御すると同時にそのデータをリアルタイムでアップデートしており、出力することができる。なお、本実施の形態の記憶部RC3は、ロボットコントローラRCの内部に設けられているが、外部に設けられた記憶装置であってもよい。
手動操作パネルPAは、ロボットRBの手動操作をするためのパネルであり、このパネル上に設けられたボタン、ジョイスティックなどを操作することにより、ロボットRBを手動操作できるようになっている。
次に、キャリブレーション装置100の構成について図2を用いて説明する。図2は、キャリブレーション装置100の構成を示すブロック図である。
キャリブレーション装置100は、制御部90、2次元計測部10、3次元計測部20、第1の記憶部30、第2の記憶部40、推定部50、計算部60、比較部65、補正部70、及び表示部80を備える。
制御部90は、キャリブレーション装置100における各部を全体的に制御する。
2次元計測部10は、作業エリアWA周辺の2次元画像を取得する。作業エリアWAは、ロボットRBのロボットハンドRB1等により作業が行われるためのエリアである。2次元計測部10は、例えば、作業エリアWA周辺における複数の計測位置のそれぞれで2次元画像を取得する。
具体的には、2次元計測部10は、2Dセンサ11及び信号処理部12を有し、2Dセンサ11により複数の計測位置のそれぞれの2次元画像を撮像し、2Dセンサ11により撮像された複数の2次元画像の画像信号に対して信号処理部12により所定の信号処理(アナログ信号処理等)を行う。
2次元計測部10は、システム立ち上げ時に、取得した例えば複数の計測位置の2次元画像を制御部90経由で第2の記憶部40へ供給する。2次元計測部10は、システム立ち上げ後に、取得した例えば複数の計測位置の2次元画像を制御部90経由で計算部60へ供給する。
3次元計測部20は、作業エリアWA周辺の3次元位置を取得する。3次元計測部20は、例えば、作業エリアWA周辺における複数の計測位置のそれぞれで3次元位置を取得する。3次元計測部20は、取得した例えば複数の計測位置の3次元位置を制御部90経由で第2の記憶部40又は推定部50へ供給する。
具体的には、3次元計測部20は、3Dセンサ21、信号処理部22、及び演算部23を有し、3Dセンサ21は、右センサ211及び左センサ212を有する。右センサ211により複数の計測位置のそれぞれの2次元画像を撮像し、左センサ212により複数の計測位置のそれぞれの2次元画像を撮像し、右センサ211及び左センサ212により撮像された複数の2次元画像の画像信号に対して信号処理部22により所定の信号処理(アナログ信号処理等)を行って3次元画像信号を生成し、生成された3次元画像信号から演算部23は複数の計測位置の3次元位置を求める。
3次元計測部20は、システム立ち上げ時に、取得した例えば複数の計測位置の3次元位置を制御部90経由で第2の記憶部40へ供給する。3次元計測部20は、システム立ち上げ後に、取得した例えば複数の計測位置の3次元位置を制御部90経由で推定部50へ供給する。
第1の記憶部30は、例えば、上述したロボットコントローラRCの記憶部RC3に含まれており、関連情報31を記憶している。関連情報31は、3次元計測部20の座標系すなわちセンサ座標系(x,y,z)に対するロボットの座標系(X,Y,Z)の相対的な位置関係を記述する情報である。関連情報31は、例えば、センサ座標系(x,y,z)をフランジ座標系(X,Y,Z)に変換するパラメータ(例えば、回転行列Rや並進ベクトルTなどのパラメータ)や、フランジ座標系(X,Y,Z)をロボット座標系(X,Y,Z)に変換するパラメータ(例えば、回転行列Rや並進ベクトルTなどのパラメータ)などを含む。
例えば、センサ座標系(x,y,z)は、次の数式(1)でフランジ座標系(X,Y,Z)に変換される。
Figure 0005523392
また、例えば、フランジ座標系(X,Y,Z)は、次の数式(2)でロボット座標系(X,Y,Z)に変換される。
Figure 0005523392
数式(1)、数式(2)を結合すると、次の数式(3)になる。
Figure 0005523392
すなわち、この式がセンサ座標系(x,y,z)をロボット座標系(X,Y,Z)に変換する式である。
第2の記憶部40は、システム立ち上げ時に取得された2次元画像を2次元計測部10から制御部90経由で受けて記憶する。例えば、第2の記憶部40は、複数の計測位置の2次元画像を2次元画像群41として記憶する。2次元画像群41では、計測位置と2次元画像とが複数の計測位置のそれぞれについて対応付けられている。
また、第2の記憶部40は、システム立ち上げ時に取得された3次元位置を3次元計測部20から制御部90経由で受けて記憶する。例えば、第2の記憶部40は、複数の計測位置の3次元位置を3次元位置群42として記憶する。3次元位置群42では、計測位置と3次元位置とが複数の計測位置のそれぞれについて対応付けられている。
推定部50は、システム立ち上げ後に取得された3次元位置を3次元計測部20から制御部90経由で受ける。これに応じて、推定部50は、制御部90経由で第2の記憶部40にアクセスし、システム立ち上げ時に取得された3次元位置を第2の記憶部40から制御部90経由で読み出す。そして、推定部50は、システム立ち上げ時に取得された3次元位置とシステム立ち上げ後に取得された3次元位置とに基づいて、3次元計測部20の座標系(x,y,z)に対するロボットRBの座標系(X,Y,Z)の相対的な位置関係のずれ量を推定する。推定部50は、推定されたずれ量を制御部90経由で計算部60へ供給する。
計算部60は、推定されたずれ量を推定部50から制御部90経由で受ける。また、計算部60は、システム立ち上げ後に取得された2次元画像を2次元計測部10から制御部90経由で受ける。これに応じて、計算部60は、制御部90経由で第2の記憶部40にアクセスし、システム立ち上げ時に取得された2次元画像を第2の記憶部40から制御部90経由で読み出す。そして、計算部60は、推定部50により推定されたずれ量を用いて、システム立ち上げ時に取得された2次元画像とシステム立ち上げ後に取得された2次元画像との一致度を計算する。例えば、計算部60は、システム立ち上げ時に取得された2次元画像とシステム立ち上げ後に取得された2次元画像との個別の一致度を複数の計測位置のそれぞれについて計算し、複数の計測位置について計算された個別の一致度の総和を求め、その総和を上記の一致度として計算する。計算部60は、計算された一致度を制御部90経由で比較部65へ供給する。
比較部65は、計算された一致度を計算部60から制御部90経由で受ける。比較部65は、計算された一致度を閾値と比較し、比較結果を制御部90経由で補正部70及び表示部80へ供給する。
補正部70は、比較結果を比較部65から制御部90経由で受ける。補正部70は、計算部60により計算された一致度が閾値より小さいことが比較結果により示されていた場合、推定部50により推定されたずれ量を用いて、第1の記憶部30に記憶された関連情報31を補正する。
表示部80は、比較結果を比較部65から制御部90経由で受ける。表示部80は、計算部60により計算された一致度が閾値以上であることが比較結果により示されていた場合、推定部50により推定されたずれ量に応じた補正すべき方向を示すオブジェクトをロボットRBに関する画像に重ねて表示する。具体的には、表示部80は、ディスプレイ81及び表示制御部82を有し、例えば2次元計測部10によりシステム立ち上げ後に取得された2次元画像に例えば、図1に示す補正すべき方向を示す矢印のオブジェクトを重ね合わせた表示データを表示制御部82により生成し、その表示データに応じた図1に示すような画像をディスプレイ81により表示する。
次に、ロボットシステムRSのシステム立ち上げ時におけるキャリブレーション装置100の動作について図3を用いて説明する。図3は、システム立ち上げ時におけるキャリブレーション装置100の動作を示すフローチャートである。
ステップS1では、キャリブレーション装置100が、図4に示すようなマーカーMKを用いたキャリブレーション(フルキャリブレーション)を実施する。
具体的には、マーカーMKが作業台WT(図1参照)上に配置される。作業者は、ロボットRBの手動操作パネルPAを操作して、順次ロボットRBの手先の位置と姿勢を制御しながら、3次元計測部20によるマーカーMKの検出を例えば5回実行し、各回のロボットRBの姿勢データR、TとマーカーMKのセンサ座標系上の座標とを対応付けて記録する。このときに姿勢を変えずに位置だけ手先を移動させた第1から第3の観測箇所(例えば、図4に示す観測1、観測2、観測3)にてマーカーMKの(例えば、白、黒交互に塗り分けたパターンにおける対角線の交点の)観測を行い、次いで手先の位置も姿勢も変化させた第4および第5の観測箇所(例えば、図4に示す観測4、観測5)でマーカーMKの観測を実行する(図5参照)。
各観測毎に、ロボットコントローラRCから出力されるフランジ座標系(X,Y,Z)の位置、姿勢を表す回転行列Rfと並進ベクトルTfとが、画像処理装置から出力される観測されたマーカーMKのセンサ座標系(x,y,z)と対応づけられて記録される。
第1から第3の観測箇所から並進ベクトルを含まない方程式が得られて、回転行列が容易に求まり、第1、第4及び第5の観測箇所からは回転行列、並進ベクトルを含む一般形の方程式が得られるが、回転行列がわかっていると並進ベクトルだけの方程式となり、容易に並進ベクトルが求まる。
例えば、フランジRB2の姿勢をRfcに固定して、つまり3Dセンサ21の姿勢を同じに保ったまま、2つの位置Tf1およびTf2に移動してマーカーMKを観測したときのマーカーMKのセンサ座標系上の座標値をそれぞれ(x,y,z)、(x,y,z)とすると、ロボット座標系におけるマーカーMKの座標は同じであるから次の数式(4)が成り立つ。
Figure 0005523392
数式(4)を変形すると、次の数式(5)が得られる。
Figure 0005523392
同様にして、3Dセンサ21の姿勢を同じに保ったまま第3の位置Tf3に移動して、同じマーカーMKを観測すると、次の数式(6)が得られる。
Figure 0005523392
数式(5)、数式(6)において未知数はRである。Rは3×3の行列で9要素からなるが、回転行列であることから、各列(各行)の要素の2乗和が1になるという制約条件があり、(x,y,z)、(x,y,z)、(x,y,z)が互いに異なっていれば、数式(5)、数式(6)からなる連立方程式を解いてRをユニークに決定できる。
このようにして、システム立ち上げ時のキャリブレーション(ステップS1)の実施後に、ステップS2〜ステップS7の処理を、システム立ち上げ後の再キャリブレーションの事前準備として行う。
ステップS2では、作業者は、ロボットRBの手動操作パネルPAを操作して、作業エリアWA周辺で計測位置P(i)(i=1,2,…,N)をN個登録し、ロボットコントローラRC或いは計算機のメモリに保存する。そして、キャリブレーション装置100は、計測位置を識別するためのパラメータiに初期値0を設定する。
ステップS3では、キャリブレーション装置100が、計測位置を識別するためのパラメータiをインクリメントする。例えば、初回であれば、キャリブレーション装置100は、i=1とする。
ステップS4では、キャリブレーション装置100が、ロボットRBを計測位置P(i)へ移動させる。例えば、初回であれば、キャリブレーション装置100は、ロボットRBを計測位置P(1)へ移動させる。
ステップS5では、キャリブレーション装置100が、計測位置P(i)の3次元位置として3D点群データbPnt(i)を取得する。例えば、初回であれば、キャリブレーション装置100は、計測位置P(1)の3D点群データbPnt(1)を取得して第2の記憶部40に保存する。
ステップS6では、キャリブレーション装置100が、計測位置P(i)の2次元画像として2D画像bImg(i)を取得する。例えば、初回であれば、キャリブレーション装置100は、計測位置P(1)の2D画像bImg(1)を取得して第2の記憶部40に保存する。
ステップS7では、キャリブレーション装置100が、計測位置を識別するためのパラメータiが上限値Nより小さいか否かを判断する。キャリブレーション装置100は、パラメータiが上限値Nより小さい場合(ステップS7でYes)、まだ未計測の計測位置があるものとして、処理をステップS3へ戻し、パラメータiが上限値N以上である場合(ステップS7でNo)、全ての計測位置の計測を完了したものとして、処理を終了する。
このようにして、各計測位置P(i)(i=1,2,…,N)で、2D画像bImg(i)と3次元点群データbPnt(i)とをそれぞれ計測し、第2の記憶部40に保存しておく。
次に、ロボットシステムRSのシステム立ち上げ後におけるキャリブレーション装置100の動作について図6を用いて説明する。図6は、システム立ち上げ後におけるキャリブレーション装置100の動作を示すフローチャートである。
キャリブレーション装置100は、センサ座標系(x,y,z)に対するロボット座標系(X,Y,Z)の相対的な位置関係にずれが発生したことを所定のセンサ(図示せず)により検知すると、ステップS11以降の簡易キャリブレーション補正処理を開始する。
ステップS11では、キャリブレーション装置100が、計測位置を識別するためのパラメータiに初期値0を設定する。
ステップS12では、キャリブレーション装置100が、計測位置を識別するためのパラメータiをインクリメントする。例えば、初回であれば、キャリブレーション装置100は、i=1とする。
ステップS13では、キャリブレーション装置100が、ロボットRBを計測位置P(i)へ移動させる。例えば、初回であれば、キャリブレーション装置100は、ロボットRBを計測位置P(1)へ移動させる。
ステップS14では、キャリブレーション装置100が、計測位置P(i)の3次元位置として3D点群データaPnt(i)を取得する。例えば、初回であれば、キャリブレーション装置100は、計測位置P(1)の3D点群データaPnt(1)を取得する。
ステップS15では、キャリブレーション装置100が、計測位置を識別するためのパラメータiが上限値Nより小さいか否かを判断する。キャリブレーション装置100は、パラメータiが上限値Nより小さい場合(ステップS15でYes)、まだ未計測の計測位置があるものとして、処理をステップS12へ戻し、パラメータiが上限値N以上である場合(ステップS15でNo)、全ての計測位置の計測を完了したものとして、処理をステップS16へ進める。
このようにして、各計測位置P(i)(i=1,2,…,N)で、3D点群データaPnt(i)を計測する。
ステップS16では、キャリブレーション装置100が、センサ座標系(x,y,z)に対するロボット座標系(X,Y,Z)の相対的な位置関係のずれ量を推定する。具体的には、キャリブレーション装置100は、次の数式(7)の値を最小にする回転行列(回転成分)R、並進ベクトル(並進成分)Tを推定する。

Σ{bPnt(i)−(R・aPnt(i)+T)} ・・・(7)
i=1
推定方法は特定の方法に限定されず、どんな手法を使っても良い。例えば、ICP(Iterative Closest Point)法と呼ばれる手法で、回転行列R、並進ベクトルTを求めることができる。
ステップS17では、キャリブレーション装置100が、計測位置を識別するためのパラメータiに初期値0を設定する。
ステップS18では、キャリブレーション装置100が、計測位置を識別するためのパラメータiをインクリメントする。例えば、初回であれば、キャリブレーション装置100は、i=1とする。
ステップS19では、キャリブレーション装置100が、ステップS16で推定されたずれ量(例えば、回転行列R、並進ベクトルT)を用いて計測位置を修正する。例えば、キャリブレーション装置100は、次の数式(8)を用いて修正後のP’(i)を計算する。
P’(i)=R・P(i)+T ・・・(8)
ステップS20では、キャリブレーション装置100が、ロボットRBを計測位置P’(i)へ移動させる。例えば、初回であれば、キャリブレーション装置100は、ロボットRBを計測位置P’(1)へ移動させる。
ステップS21では、キャリブレーション装置100が、計測位置P’(i)の2次元画像として2D画像aImg(i)を取得する。例えば、初回であれば、キャリブレーション装置100は、計測位置P’(1)の2D画像aImg(1)を取得する。
ステップS22では、キャリブレーション装置100が、システム立ち上げ時に取得された2D画像bImg(i)とシステム立ち上げ後に取得された2D画像aImg(i)との一致度である個別の一致度E(i)を計算する。例えば、初回であれば、キャリブレーション装置100は、システム立ち上げ時に取得された2D画像bImg(1)とシステム立ち上げ後に取得された2D画像aImg(1)との一致度である個別の一致度E(1)を計算する。一致度の定義は例えば、画像の背景差分を用いて評価することが考えられる。
ステップS23では、キャリブレーション装置100が、計測位置を識別するためのパラメータiが上限値Nより小さいか否かを判断する。キャリブレーション装置100は、パラメータiが上限値Nより小さい場合(ステップS23でYes)、まだ未計測の計測位置があるものとして、処理をステップS18へ戻し、パラメータiが上限値N以上である場合(ステップS23でNo)、全ての計測位置の計測を完了したものとして、処理をステップS24へ進める。
このようにして、各計測位置P’(i)(i=1,2,…,N)で2D画像aImg(i)を計測するとともに、対応する各計測位置P(i)及びP’(i)(i=1,2,…,N)について個別の一致度E(i)を計算する。
ステップS24では、キャリブレーション装置100が、個別の一致度E(i)の総和が閾値Tより大きいか否かを判断する。すなわち、キャリブレーション装置100は、次の数式(9)が成り立つか否かを判断する。

ΣE(i)>T ・・・(9)
i=1
キャリブレーション装置100は、数式(9)が成り立たない場合(ステップS24でNo)、センサ座標系(x,y,z)に対するロボット座標系(X,Y,Z)の相対的な位置関係のずれ量が補正可能な範囲内にあるものとして、処理をステップS25へ進める。あるいは、キャリブレーション装置100は、数式(9)が成り立つ場合(ステップS24でYes)、センサ座標系(x,y,z)に対するロボット座標系(X,Y,Z)の相対的な位置関係のずれ量が補正可能な範囲を超えているものとして、処理をステップS26へ進める。
ステップS25では、キャリブレーション装置100が、システム立ち上げ時に計算した変換行列に、ステップS16で推定されたずれ量(例えば、回転行列R、並進ベクトルT)を反映させて補正する。例えば、キャリブレーション装置100は、数式(1)における回転行列R、並進ベクトルTに対して、それぞれ、回転行列R、並進ベクトルTを加算したものを新たに回転行列R、並進ベクトルTとする補正を行う。
ステップS26では、キャリブレーション装置100が、フルキャリブレーションを行う。
ここで、最初からフルキャリブレーションを行う場合、ステップS1と全く同じ処理を行うのであれば、キャリブレーション用のマーカーMKや冶具の計測位置姿勢を2Dセンサ、3Dセンサのそれぞれで試行錯誤しながら変更しなくてはならない。
それに対して、本実施の形態では、キャリブレーション装置100が、推定されたずれ量に応じた補正すべき方向を示すオブジェクトをロボットRBに関する画像に重ねて表示する。例えば2次元計測部10によりシステム立ち上げ後に取得された2次元画像に例えば、図1に示す補正すべき方向を示す矢印のオブジェクトを重ね合わせた表示データを表示制御部82により生成し、その表示データに応じた図1に示すような画像をディスプレイ81により表示する。これにより、どちらの方向に移動すればキャリブレーションの補正を行うために次に必要な情報が得られるかの方向性を示すことができる。すなわち、フルキャリブレーションをステップS1よりも簡易に行うことができる。
例えば、位置ずれ前及び位置ずれ後の3次元点群データbPnt(i)及びaPnt(i)(i=1,2,…,N)を用いて、bPnt(i)をどう動かせばaPnt(i)との一致度が高くなるかについて、数式(7)を最小化するような回転行列R、並進ベクトルTを計算する。そして、回転行列R、並進ベクトルTでキャリブレーション用の各計測位置を変換後、作業者がライブ画像を見ながら矢印のオブジェクトに従って微修正する。微修正後にキャリブレーション用のプログラムを走らせて位置ずれ後の再立上げが完了する。
以上のように、実施の形態では、キャリブレーション装置100が、システム立上げ完了時点で、事前に作業エリア周辺の2次元画像及び3次元位置を取得しておく。センサ座標系とロボット座標系との相対関係が衝突により変化したときや、3Dセンサをセンサ自体の調整や修理などの目的で取り外して再度取り付けたりして変化したときに、再度作業エリア周辺の2次元画像及び3次元位置を取得する。位置ずれ発生前後の3次元点群データ間の位置ずれ量を計算することでキャリブレーションデータの補正パラメータを計算するとともに、位置ずれ発生前後の2次元画像間の一致度を計算し閾値と比較することで位置ずれ量が補正可能な範囲内か否かを判断する。これにより、ロボットとビジョンセンサの相対関係が衝突や取り付け直しでずれが発生した際、ずれ量が補正可能な範囲内であれば自動で位置ずれ量を補正して復旧することができる。
したがって、システム運用時に位置ずれが発生した際、ゼロベースのフルキャリブレーションを行う必要がなく、作業エリア周辺の環境を撮影した2次元及び3次元の計測データを用いるので2Dセンサや3Dセンサの固定さえできれば、キャリブレーション用の専用の計測対象物の設置が必要なく、ロボットの作業エリアに作業者が入る必要がない。このため、再キャリブレーションの手間と時間を短縮できる。すなわち、システム立ち上げ後におけるキャリブレーションの手間及び時間をシステム立ち上げ時より低減できる。
また、実施の形態では、キャリブレーション装置100が、推定されたずれ量に応じた補正すべき方向を示すオブジェクトをロボットRBに関する画像に重ねて表示する。これにより、補正すべき方向性が示されるので、ずれ量が補正可能な範囲を超えても、その後やり直すキャリブレーションの教示作業を支援してシステムの迅速な復旧を行うことができる。
なお、キャリブレーション装置100iの表示部80iは、ディスプレイ81に代えて、又は、ディスプレイ81に加えて、図7に示すようなAR(Augmented Reality)ツール81iを有していても良い。すなわち、作業者WPにARツール81iを持たせ、表示部80iの表示制御部82(図2参照)は、ARツール81iと例えば無線通信回線で通信を行い、表示すべきデータをARツール81iへ送信する。これにより、ARツール81iのディスプレイにロボットを動かすべき方向を示すことで、計測位置の修正を容易にするような支援を行ってもよい。
以上のように、本発明にかかるキャリブレーション装置は、ロボットを有するシステムのキャリブレーションに有用である。
10 2次元計測部
20 3次元計測部
30 第1の記憶部
40 第2の記憶部
50 推定部
60 計算部
80、80i 表示部
100、100i キャリブレーション装置

Claims (4)

  1. ロボットを有するシステムのキャリブレーションを行うキャリブレーション装置であって、
    前記ロボットの手先により作業が行われる作業エリア周辺の2次元画像を取得する2次元計測手段と、
    前記作業エリア周辺の3次元位置を取得する3次元計測手段と、
    前記3次元計測手段の座標系に対する前記ロボットの座標系の相対的な位置関係を記述する関連情報を記憶する第1の記憶手段と、
    前記2次元計測手段によりシステム立ち上げ時に取得された2次元画像と前記3次元計測手段によりシステム立ち上げ時に取得された3次元位置とを記憶する第2の記憶手段と、
    前記第2の記憶手段に記憶された3次元位置と前記3次元計測手段によりシステム立ち上げ後に取得された3次元位置とに基づいて、前記3次元計測手段の座標系に対する前記ロボットの座標系の相対的な位置関係のずれ量を推定する推定手段と、
    前記推定手段により推定されたずれ量を用いて、前記第2の記憶手段に記憶された2次元画像と前記2次元計測手段によりシステム立ち上げ後に取得された2次元画像との一致度を計算する計算手段と、
    前記計算手段により計算された一致度が閾値より小さい場合、前記推定手段により推定されたずれ量を用いて、前記第1の記憶手段に記憶された関連情報を補正する補正手段と、
    を備えたことを特徴とするキャリブレーション装置。
  2. 前記計算手段により計算された一致度が前記閾値以上である場合、前記推定手段により推定されたずれ量に応じた補正すべき方向を示すオブジェクトを前記ロボットに関する画像に重ねて表示する表示手段をさらに備えた
    ことを特徴とする請求項1に記載のキャリブレーション装置。
  3. ロボットを有するシステムのキャリブレーションを行うキャリブレーション方法であって、
    システム立ち上げ時に、前記ロボットの手先により作業が行われる作業エリア周辺の2次元画像を取得する第1の2次元計測ステップと、
    システム立ち上げ時に、3次元計測手段により前記作業エリア周辺の3次元位置を取得する第1の3次元計測ステップと、
    前記3次元計測手段の座標系に対する前記ロボットの座標系の相対的な位置関係を記述する関連情報を記憶する第1の記憶ステップと、
    前記第1の2次元計測手段で取得された2次元画像と前記第1の3次元計測ステップで取得された3次元位置とを記憶する第2の記憶ステップと、
    システム立ち上げ後に、前記作業エリア周辺の2次元画像を取得する第2の2次元計測ステップと、
    システム立ち上げ後に、前記作業エリア周辺の3次元位置を取得する第2の3次元計測ステップと、
    前記第2の記憶ステップで記憶された3次元位置と前記第2の3次元計測ステップで取得された3次元位置とに基づいて、前記3次元計測手段の座標系に対する前記ロボットの座標系の相対的な位置関係のずれ量を推定する推定ステップと、
    前記推定ステップで推定されたずれ量を用いて、前記第2の記憶ステップで記憶された2次元画像と前記第2の2次元計測ステップで取得された2次元画像との一致度を計算する計算ステップと、
    前記計算ステップで計算された一致度が閾値より小さい場合、前記推定ステップで推定されたずれ量を用いて、前記第1の記憶ステップで記憶された関連情報を補正する補正ステップと、
    を備えたことを特徴とするキャリブレーション方法。
  4. 前記計算ステップで計算された一致度が前記閾値以上である場合、前記推定ステップで推定されたずれ量に応じた補正すべき方向を示すオブジェクトを前記ロボットに関する画像に重ねて表示する表示ステップをさらに備えた
    ことを特徴とする請求項3に記載のキャリブレーション方法。
JP2011114870A 2011-05-23 2011-05-23 キャリブレーション装置及びキャリブレーション方法 Active JP5523392B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011114870A JP5523392B2 (ja) 2011-05-23 2011-05-23 キャリブレーション装置及びキャリブレーション方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011114870A JP5523392B2 (ja) 2011-05-23 2011-05-23 キャリブレーション装置及びキャリブレーション方法

Publications (2)

Publication Number Publication Date
JP2012240174A JP2012240174A (ja) 2012-12-10
JP5523392B2 true JP5523392B2 (ja) 2014-06-18

Family

ID=47462401

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011114870A Active JP5523392B2 (ja) 2011-05-23 2011-05-23 キャリブレーション装置及びキャリブレーション方法

Country Status (1)

Country Link
JP (1) JP5523392B2 (ja)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101465652B1 (ko) * 2013-04-12 2014-11-28 성균관대학교산학협력단 로봇 핸드와 로봇 핸드에 부착된 카메라의 캘리브레이션 방법 및 장치
JP6503163B2 (ja) * 2014-07-17 2019-04-17 株式会社アマダホールディングス ロボットハンド位置修正方法及びプレスブレーキシステム
KR101610508B1 (ko) 2014-09-19 2016-04-20 현대자동차주식회사 Avm 자동 보정 시스템 및 방법
WO2017033247A1 (ja) * 2015-08-21 2017-03-02 株式会社安川電機 処理システム及びロボットの制御方法
JP6566037B2 (ja) 2015-09-11 2019-08-28 株式会社安川電機 処理システム及びロボットの制御方法
JP6860843B2 (ja) 2017-02-20 2021-04-21 株式会社安川電機 ロボットシステム、ロボット制御装置、及びロボット制御方法
US11230015B2 (en) 2017-03-23 2022-01-25 Fuji Corporation Robot system
US11865730B2 (en) 2018-06-05 2024-01-09 Hitachi, Ltd. Camera position/attitude calibration device, camera position/attitude calibration method, and robot
US11940456B2 (en) 2018-09-11 2024-03-26 Becton Dickinson And Company Robotic sample preparation system for diagnostic testing with automated position learning
JP7337495B2 (ja) * 2018-11-26 2023-09-04 キヤノン株式会社 画像処理装置およびその制御方法、プログラム
JP2020108909A (ja) * 2019-01-07 2020-07-16 トヨタ自動車株式会社 状態判定装置
JP6796899B1 (ja) * 2020-08-07 2020-12-09 リンクウィズ株式会社 情報処理方法、情報処理システム、プログラム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3665353B2 (ja) * 1993-09-14 2005-06-29 ファナック株式会社 ロボットの教示位置データの3次元位置補正量取得方法及びロボットシステム
JP3402021B2 (ja) * 1995-11-07 2003-04-28 株式会社明電舎 ロボット装置の相対位置姿勢検出方法
JP4967858B2 (ja) * 2007-06-29 2012-07-04 日産自動車株式会社 カメラとロボット間のキャリブレーション方法及びその装置
JP5365218B2 (ja) * 2009-01-28 2013-12-11 富士電機株式会社 ロボットビジョンシステムおよび自動キャリブレーション方法
JP5312261B2 (ja) * 2009-08-18 2013-10-09 本田技研工業株式会社 ロボットの制御方法

Also Published As

Publication number Publication date
JP2012240174A (ja) 2012-12-10

Similar Documents

Publication Publication Date Title
JP5523392B2 (ja) キャリブレーション装置及びキャリブレーション方法
KR102532072B1 (ko) 로봇 모션 용 비전 시스템의 자동 핸드-아이 캘리브레이션을 위한 시스템 및 방법
JP3733364B2 (ja) 教示位置修正方法
JP4763074B2 (ja) ロボットのツール先端点の位置の計測装置および計測方法
TWI672206B (zh) 機械手臂非接觸式工具中心點校正裝置及其方法以及具有校正功能的機械手臂系統
JP5670416B2 (ja) ロボットシステム表示装置
JP4021413B2 (ja) 計測装置
JP5850962B2 (ja) ビジュアルフィードバックを利用したロボットシステム
US10618166B2 (en) Teaching position correction device and teaching position correction method
JP5815761B2 (ja) 視覚センサのデータ作成システム及び検出シミュレーションシステム
JP4191080B2 (ja) 計測装置
JP4267005B2 (ja) 計測装置及びキャリブレーション方法
JP6025386B2 (ja) 画像計測装置、画像計測方法及び画像計測プログラム
JP6235664B2 (ja) ロボットの機構パラメータを校正するために使用される計測装置
JP6489776B2 (ja) 座標系校正方法、ロボットシステム、プログラム及び記録媒体
JP2010172986A (ja) ロボットビジョンシステムおよび自動キャリブレーション方法
KR101465652B1 (ko) 로봇 핸드와 로봇 핸드에 부착된 카메라의 캘리브레이션 방법 및 장치
JP2019098409A (ja) ロボットシステムおよびキャリブレーション方法
JP6568172B2 (ja) キャリブレーションを行うロボット制御装置、計測システム及びキャリブレーション方法
JP6912529B2 (ja) 視覚誘導ロボットアームの補正方法
JP6578671B2 (ja) ロボット、ロボットの制御方法、及びロボットの制御装置
JP7389237B2 (ja) 座標系設定システム及び位置姿勢計測システム
WO2024062535A1 (ja) ロボット制御装置
WO2023053395A1 (ja) 位置姿勢計測システム
CN117132658A (zh) 使相机的校准状态可视化的方法、系统、以及存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130607

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140311

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140408

R150 Certificate of patent or registration of utility model

Ref document number: 5523392

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250