JP3754340B2 - Position detection device - Google Patents

Position detection device Download PDF

Info

Publication number
JP3754340B2
JP3754340B2 JP2001316749A JP2001316749A JP3754340B2 JP 3754340 B2 JP3754340 B2 JP 3754340B2 JP 2001316749 A JP2001316749 A JP 2001316749A JP 2001316749 A JP2001316749 A JP 2001316749A JP 3754340 B2 JP3754340 B2 JP 3754340B2
Authority
JP
Japan
Prior art keywords
marker
center
position detection
robot
circle
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.)
Expired - Fee Related
Application number
JP2001316749A
Other languages
Japanese (ja)
Other versions
JP2003121112A (en
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.)
Denso Wave Inc
Toyota Central R&D Labs Inc
Original Assignee
Denso Wave Inc
Toyota Central R&D Labs Inc
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 Denso Wave Inc, Toyota Central R&D Labs Inc filed Critical Denso Wave Inc
Priority to JP2001316749A priority Critical patent/JP3754340B2/en
Publication of JP2003121112A publication Critical patent/JP2003121112A/en
Application granted granted Critical
Publication of JP3754340B2 publication Critical patent/JP3754340B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、例えばロボット等の位置検出対象に設けられたマーカを、傾斜した方向から撮像した場合でも、その中心位置を正確に検出することを可能とした位置検出装置に関する。
【0002】
【発明が解決しようとする課題】
産業用ロボット例えば組立用の多関節(6軸)型ロボットを用いたシステムにおいては、ロボットアームの位置が、重力等の影響を受けることによって、理論上(計算機環境上)の位置から若干の位置ずれを生ずる場合がある。そこで、その位置ずれの補正のため、ロボットアームに例えば円形のマーカを設けると共に、固定設備側に、そのマーカ部分を撮像してマーカ位置を検出する視覚認識装置を設けることが考えられている。この場合、前記視覚認識装置は、CCDカメラによりマーカ部分を撮像し、その画像データを画像処理装置により処理して、前記マーカ画像の重心位置を算出することにより、マーカの中心位置を検出するようになっている。
【0003】
ところで、上記のように視覚認識によりマーカ位置を検出する場合、CCDカメラとマーカとが正対して位置する(マーカ表示面がCCDカメラの光軸に垂直となっている)ときには、マーカ画像の重心位置によりマーカの中心位置を高精度で検出することができるが、実際には、マーカ表示面がCCDカメラに対して傾斜していることも多く、この場合斜めに投影された画像を撮像してしまうことになる。このため、撮影したマーカ画像が真円ではなく歪みを有した状態となり、その重心を求めても、マーカの真の中心位置に一致しない不都合が生ずる。
【0004】
本発明は上記事情に鑑みてなされたもので、その目的は、撮像手段によりマーカを撮像することに基づいて位置検出を行うにものにあって、マーカを傾斜した方向から撮像した場合でも、その中心位置を正確に検出することを可能とした位置検出装置を提供するにある。
【0005】
【課題を解決するための手段】
本発明者らは、円形のマーカを傾斜方向から撮像した場合におけるマーカ画像の重心位置の真の中心位置からのずれ量は、その傾斜角度と、撮像視点から投影面までの距離と、マーカの半径とによってほぼ決まることに着目し、マーカを、半径の異なる少なくとも2つの同心円を有したものとし、それら同心円の半径が異なることに起因して各円の画像の重心が異なってくることを利用して、マーカの真の中心位置を求めることが可能であることを確認し、本発明を成し遂げたのである。
【0006】
即ち、本発明の請求項1の位置検出装置によれば、位置検出対象に設けられるマーカを、半径の異なる2以上の同心円を同一の平面上に表示して構成し、撮像手段のマーカを撮像した画像データに基づいてマーカの中心位置を算出する算出手段を、各同心円画像の重心位置を夫々算出し、それら複数の重心位置からマーカの中心位置を求めるように構成したので、マーカを傾斜した方向から撮像した場合でも、そのマーカの中心位置を正確に算出することが可能となる。
【0007】
より具体的には、本発明者らの研究によれば、半径r1 の外円及び半径mr1 (0<m<1)の内円の2つの同心円について夫々重心位置φ1 及びφ2 を算出することにより、マーカの真の中心位置φを、
【数2】

Figure 0003754340
の式で簡単に算出することができる(請求項2の発明)。尚、マーカの中心位置φの算出方法としては、これ以外にも、複数の同心円の各円の重心と面積とから最小自乗法により求めるなど、様々な方法がある。
【0008】
また、このとき、算出手段を、撮像手段の光軸に垂直な面に対するマーカの表示面の傾斜角度を併せて算出するように構成することができ(請求項3の発明)、これにより、マーカの位置だけでなくマーカ表示面つまり位置検出対象の撮像手段に対する傾斜角度をも検出することが可能となる。さらには、本発明の位置検出装置は、ロボットの位置検出に適用し、算出手段により算出されたマーカの中心位置に基づいてロボットの位置補正を行うことができ(請求項4の発明)、これにより、比較的簡単で安価な構成で、ロボットの位置補正を正確に行うことができるようになる。
【0009】
【発明の実施の形態】
以下、本発明を例えば組立用の垂直多関節(6軸)型ロボットの位置補正に適用した一実施例について、図面を参照しながら説明する。図1は、本実施例に係る位置検出装置の位置検出対象となるロボット本体1が、組立作業設備の設置面(作業台)2上に設置されている様子(外観)を概略的に示しており、まず、このロボット本体1の全体構成について簡単に述べる。
【0010】
このロボット本体1は、前記設置面2上に固定設置されたベース3上に、第1アーム4が垂直軸を中心に回動(旋回)可能に設けられ、その第1アーム4の先端に、第2アーム5が水平軸を中心に回動可能に設けられ、その第2アーム5の先端に、第3アーム6が水平軸を中心に回動可能に設けられている。さらに、その第3アーム6の先端面部に、第4アーム7が同軸回転可能に設けられ、第4アーム7の先端には、第5アーム8が回転可能に設けられ、第5アーム8の先端面に第6アーム9が同軸回転可能に設けられて構成されている。そして、前記第6アーム9の先端面は、図示しないハンド等のエンドエフェクタが着脱(交換)自在に取付けられるエンドエフェクタ取付面10とされている。
【0011】
また、上記したロボット本体1の各アーム4〜9は、エンコーダ付きのサーボモータ(図示せず)によりそれぞれ駆動されるようになっており、それら各サーボモータは、ロボット制御装置(コントローラ)11(図2にのみ図示)によりフィードバック制御されるようになっている。このロボット制御装置11は、マイコンを主体として構成され、図2に示すように、前記ロボット本体1を制御する制御部12や、作業プログラムや作業位置データ等が記憶される記憶部13を備えて構成されている。これにて、ロボット制御装置11は、記憶部13に記憶された作業プログラムに従い、作業位置データに基づいてロボット本体1を制御し、以て部品の組立作業等を自動的に実行させるようになっている。
【0012】
さて、上記ロボット本体1の位置(この場合、エンドエフェクタ取付面10の位置及び姿勢)を検出するための、本実施例に係る位置検出装置14の構成について、以下述べる。ここで、まず図1に示すように、前記エンドエフェクタ取付面10の中心部には、ターゲットとなるマーカMが設けられるようになっている。本実施例では、このマーカMは、エンドエフェクタ取付面10の中心を中心とした半径の異なる2つの同心円、即ち外円C1 及び内円C2 を平面S(図3,図4参照)上に表示して構成されている。位置検出装置14は、例えばロボット本体1が作業開始前(あるいは教示前)において原点位置に位置している状態で、エンドエフェクタ取付面10に設けられたマーカM(同心円C1 ,C2 )の3次元の中心位置φ及び前記平面Sの傾斜角度θを検出するようになっている。
【0013】
前記位置検出装置14は、図2に示すように、前記マーカM部分を撮像する撮像手段たるCCDカメラ15や、マイコンを主体してなり前記CCDカメラ15からの画像データを処理する視覚認識装置16等から構成される。前記CCDカメラ15は、図1に示すように、設備の設置面2上に、前記ロボット本体1に対向して前記エンドエフェクタ取付面10のマーカMを撮像可能な位置(且つ作業の邪魔にならない位置)に設けられる。
【0014】
このとき、本実施例では、このCCDカメラ15は、ロボット本体1に向って左右に2個が設けられており、詳しい説明は省略するが、これら2台のCCDカメラ15を用いることにより、CCDカメラ15からマーカM(投影面)までの距離Lをも高精度に検出できるようになっている。さらに、各CCDカメラ15は、垂直軸を中心に回動(旋回)可能に設けられると共に、水平軸を中心に上下方向に回動(角度変更)可能に設けられており、カメラ駆動装置17によって、前記マーカMを視野のほぼ中央部にて撮像できる向き(理論的に正対する位置)となるように移動されるようになっている。
【0015】
前記視覚認識装置16は、図2に示すように、前記CCDカメラ15により撮像されたマーカM部分の画像データを記憶する画像記憶部18や、その画像データを処理する演算処理部19等を備えて構成される。また、前記演算処理部19は、前記カメラ駆動装置17の駆動制御をも行うようになっており、この際、各CCDカメラ15の位置(三次元的な撮影角度)を自ら認識できることは勿論である。
【0016】
そして、詳しくは後の作用説明にて述べるように、この視覚認識装置16(演算処理部19)は、そのソフトウエア構成(処理プログラムの実行)により、前記CCDカメラ15によりマーカM部分を撮像し、その画像データを処理して、同心円C1 ,C2 の画像上の重心位置φ1 ,φ2 を夫々算出し、それら重心位置φ1 ,φ2 から前記マーカMの中心位置φを求めるようになっている。従って、演算処理部19が算出手段として機能するようになっている。
【0017】
このとき、より具体的には、演算処理部19には、前記マーカMの外円C1 の半径r1 や、内円C2 の半径r2 等の予め必要なデータが入力されており、内円C2 の半径r2 をr2 =mr1 (0<m<1)とすると、算出された重心位置φ1 及びφ2 から、マーカMの真の中心位置φを、
【数3】
Figure 0003754340
の式で算出するようになっている。
【0018】
さらに、本実施例では、演算処理部19は、中心位置φと例えば外円C1 の重心位置φ1 との間のずれ量Δφ、並びに、CCDカメラ15からマーカMの投影面間での距離L、及び外円C1 の半径r1 から、前記CCDカメラ15の光軸に垂直な面に対する前記マーカMの表示面Sの傾斜角度θを併せて算出するように構成されている。そして、検出されたマーカMの中心位置φ及びマーカMの表示面Sの傾斜角度θは、ロボット制御装置11に送られ、ロボット本体1の位置補正(記憶部13に記憶されている作業位置データの補正)に用いられるようになっている。
【0019】
次に、上記構成の作用について、図3及び図4も参照して述べる。上述のように、ロボット本体1にあっては、アーム4〜9の位置が、重力等の影響を受けることによって、理論上(計算機環境上)の位置から若干の位置ずれを生ずる場合がある。そこで、その位置ずれの補正のため、組立作業を行う前(あるいは教示作業前)に、位置検出装置14により、アーム先端のエンドエフェクタ取付面10のマーカMの位置を検出し、位置ずれ補正を行う。
【0020】
ここで、円形のマーカの位置を検出する場合、CCDカメラ15とマーカMとが正対して位置する(マーカMの表示面SがCCDカメラ15の光軸に垂直となっている)ときには、マーカ画像の重心位置の検出によりマーカMの中心位置を求めることができる。ところが、実際には、マーカMの表示面SがCCDカメラ15に対して傾斜していることも多く、この場合、斜めに投影された画像を撮像してしまい、マーカMの画像が真円ではなく歪みを有した状態となり、その重心を求めても、マーカMの真の中心位置φに一致しない不都合が生ずる。
【0021】
今、図3に示すように、半径rの円Cが表示面Sに表示され、これを撮像するCCDカメラ15の光軸lに垂直な面に対してその表示面Sが角度θ傾斜している場合、円Cの真の中心位置に対する画像の重心位置の誤差の角度成分Δφは、以下ようにして求めることができる。但し、ここでは、CCDカメラ15の視点Vを原点とし、視点Vと円Cの中心とを結ぶ線(光軸l)をz軸に一致させ、表示面Sがx軸方向に対して角度θ傾いているものとし、視点V(原点)から投影面までの距離をLとしている。
【0022】
即ち、円Cを含む球の方程式は、
【数4】
Figure 0003754340
で表され、面Sの方程式は、
xsinθ+(z−L)cosθ=0
z−L=−xtanθ …(2)
(2)式を(1)式に代入すると、
【数5】
Figure 0003754340
となる。
【0023】
これにて、円Cの円周の座標は、
【数6】
Figure 0003754340
となり、これから、光軸lに垂直な平面(z=L)に投影された座標は、
【数7】
Figure 0003754340
となる。ここで、a(L−xtanθ)=Lより、a=L/(L−xtanθ)であるから、上記座標は、
【数8】
Figure 0003754340
となる。
【0024】
X=Lx/(L−xtanθ)とおくと、x=LX/(L+Xtanθ)より、上記座標は、
【数9】
Figure 0003754340
で表される。この式から、重心を求めるときの積分範囲は、
【数10】
Figure 0003754340
となる。
【0025】
さらに、距離Lで規格化するために、t=X/L、α=r/Lとおくと、X=Ltより、
【数11】
Figure 0003754340
この式より、重心を求めるときの積分範囲は、
【数12】
Figure 0003754340
となる。
【0026】
数値計算の結果、重心位置の誤差(傾きθに起因した真の中心からのずれ)の角度成分Δφは、次式で近似される。
【0027】
【数13】
Figure 0003754340
【0028】
さて、本実施例においては、図4に示すように、マーカMが、半径r1 の外円C1 と、半径r2 の内円C2 (但しr2 =mr1 (0<m<1))とからなる同心円から構成される、そして、位置検出装置14は、前記マーカM部分をCCDカメラ15により撮像し、視覚認識装置16(演算処理部19)により、その画像データに基づいて、各円C1 ,C2 の重心位置φ1 ,φ2 を夫々算出し、それらから次のようにしてマーカMの真の中心位置φを算出することができる。
【0029】
即ち、上記(3)式で示されるように、半径rの円Cに関しては,傾きθに起因した重心位置の誤差の角度成分Δφは、
【数14】
Figure 0003754340
で表すことができ、Δφが十分に小さいときには、
【数15】
Figure 0003754340
で近似できる。但し、α=r/L、k(θ)=0.539sin2θである。
【0030】
マーカM(円C1 ,C2 )の真の中心位置をφとし、外円C1 の重心位置φ1 の誤差をΔφ1 、内円C2 の重心位置φ2 の誤差をΔφ2 とすると、
φ=φ1 −Δφ1
φ=φ2 −Δφ2
であるから、α1 =r1 /L、α2 =r2 /Lとすると、上記(4)式から、
【数16】
Figure 0003754340
が成立つ。
【0031】
上記(5)式にα2 の二乗を乗算したものから、(6)式にα1 の二乗を乗算したものを減算すると、
【数17】
Figure 0003754340
となる。これに、α1 =r1 /L、α2 =mr1 /Lを代入すると、
【数18】
Figure 0003754340
が得られる。
【0032】
従って、この(7)式に、算出されたφ1 ,φ2 、及び、既知のmを代入することにより、真の中心位置φを容易に算出することができるのである。尚、表示面Sに傾斜がない、つまりθ=0の場合には、各円C1 ,C2 の重心位置φ1 ,φ2 が一致し、且つ誤差成分Δφが0となるので、それら重心位置φ1 ,φ2 が中心位置φに一致することは勿論であり、この場合にも上記(7)式が成立つ。つまり、表示面Sの傾斜の有無に関係なく、上記(7)式を用いて中心位置φを算出できるのである。
【0033】
また、詳しい説明は省略するが、距離Lが高精度で検出できるので、例えば上記(3)式等から明らかなように、このLの値や半径r、誤差成分Δφを用いて、表示面Sの傾斜角度θを容易に算出することが可能である。そして、算出されたマーカMの正しい中心位置φ及び表示面Sの傾斜角度θに基づいて、ロボット本体1の高精度の位置ずれ補正を行うことができ、ひいては、ロボット本体1による高精度の組立作業を実行することができるのである。
【0034】
このように本実施例によれば、CCDカメラ15によりマーカMを撮像することに基づいて位置検出を行うにものにあって、マーカMを同心円C1 ,C2 から構成し、それら各円C1 ,C2 の重心を算出することに基づいて、上記(7)式を用いて簡単に正しい中心位置φを算出することができる。従って、マーカMを傾斜した方向から撮像した場合でも、その中心位置φを正確に検出することができるという優れた効果を得ることができる。また、本実施例では、マーカMの中心位置φに加えて、マーカMの表示面Sの傾斜角度θをも併せて算出するようにしたので、比較的簡単で安価な構成で、ロボット本体1の位置補正を正確に行うことができ、ひいては高精度の作業を行うことができるようになる。
【0035】
尚、上記した実施例では、マーカMに半径の異なる2つの同心円C1 ,C2 を設けて上記(7)式により中心位置φを算出する構成としたが、マーカの中心位置φの算出方法としては、先に計算した上記(4)式を利用した下記のような方法も考えられる。これらの場合、マーカに3個以上の同心円を設けても良いことは勿論である。
【0036】
▲1▼複数の同心円の各円の重心と面積とを算出し、それらから最小二乗法により求める。
▲2▼円の半径を等比級数で決めた複数の同心円からマーカを構成し、その比率と、算出された各円の重心と面積とから、最小二乗法により求める。
▲3▼円の大きさにより重心を算出する際の量子化ばらつきが異なるので、それを考慮し重み付け最小二乗法により求める。このとき、円の半径に比例した重み付けを行うことができる。
【0037】
その他、上記実施例では、撮像手段(CCDカメラ15)を移動(向き変更)可能に設けるようにしたが、撮像手段を固定して設けても良く、また、撮像手段は1個のみでも実施可能である。マーカMを設ける位置としても、エンドエフェクタ取付面10に限らず、ロボット本体1の位置検出したいところに設ければ良く、この場合、マーカMを複数箇所に設けることも可能である。上記のようにロボットに適用する際に、ロボット側に撮像手段を設け、固定設備側にマーカを設けるようにしても、同様に実施することができる。自走ロボットにも適用することができる。さらには、ロボットの位置決め以外にも、本発明は、視覚により三次元の位置検出を行うもの全般に適用することができるなど、要旨を逸脱しない範囲内で適宜変更して実施し得るものである。
【図面の簡単な説明】
【図1】本発明の一実施例を示すもので、ロボット本体及びCCDカメラの設置状態を示す斜視図
【図2】システムの電気的構成を概略的に示すブロック図
【図3】表示面の傾きに起因した重心位置の誤差の算出方法を説明するための図
【図4】同心円を用いた中心位置の算出方法を説明するための図
【符号の説明】
図面中、1はロボット本体、10はエンドエフェクタ取付面、11はロボット制御装置、14は位置検出装置、15はCCDカメラ(撮像手段)、16は視覚認識装置、17はカメラ駆動装置、18は画像記憶部、19は演算処理部(算出手段)、Mはマーカ、C1 は外円、C2 は内円、Sは表示面を示す。[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a position detection device capable of accurately detecting the center position of a marker provided on a position detection target such as a robot even when the marker is imaged from an inclined direction.
[0002]
[Problems to be solved by the invention]
In a system using an industrial robot, for example, a multi-joint (6-axis) robot for assembly, the position of the robot arm is affected by gravity or the like, so that the position is slightly different from the theoretical position (on the computer environment). Deviation may occur. Therefore, in order to correct the displacement, for example, a circular marker is provided on the robot arm, and a visual recognition device that detects the marker position by imaging the marker portion on the fixed equipment side is considered. In this case, the visual recognition device detects the center position of the marker by imaging the marker portion with the CCD camera, processing the image data with the image processing device, and calculating the center of gravity of the marker image. It has become.
[0003]
By the way, when the marker position is detected by visual recognition as described above, when the CCD camera and the marker are located facing each other (the marker display surface is perpendicular to the optical axis of the CCD camera), the center of gravity of the marker image Although the center position of the marker can be detected with high accuracy depending on the position, in reality, the marker display surface is often inclined with respect to the CCD camera. In this case, an image projected obliquely is captured. Will end up. For this reason, the photographed marker image is not in a perfect circle but in a distorted state, and even if the center of gravity is obtained, there is a disadvantage that it does not coincide with the true center position of the marker.
[0004]
The present invention has been made in view of the above circumstances, and its purpose is to perform position detection based on imaging a marker by an imaging means, and even when the marker is imaged from an inclined direction, It is an object of the present invention to provide a position detection device that can accurately detect the center position.
[0005]
[Means for Solving the Problems]
When the circular marker is imaged from the tilt direction, the inventors have determined that the amount of deviation of the center of gravity of the marker image from the true center position is the tilt angle, the distance from the imaging viewpoint to the projection plane, Focusing on the fact that it is almost determined by the radius, it is assumed that the marker has at least two concentric circles with different radii, and the center of gravity of the image of each circle is different due to the different radii of the concentric circles. Thus, it was confirmed that the true center position of the marker could be obtained, and the present invention was accomplished.
[0006]
That is, according to the position detection apparatus of the first aspect of the present invention, the marker provided in the position detection target is configured by displaying two or more concentric circles having different radii on the same plane, and images the marker of the imaging means. Since the calculation means for calculating the center position of the marker based on the image data obtained is configured to calculate the center position of each concentric image and to obtain the center position of the marker from the plurality of center positions, the marker is inclined. Even when the image is taken from the direction, the center position of the marker can be accurately calculated.
[0007]
More specifically, according to the study by the present inventors, the center-of-gravity positions φ1 and φ2 are calculated for two concentric circles of an outer circle with a radius r1 and an inner circle with a radius mr1 (0 <m <1), respectively. , The true center position φ of the marker,
[Expression 2]
Figure 0003754340
It can be easily calculated by the following formula (invention of claim 2). In addition to this, there are various methods for calculating the marker center position φ, such as obtaining by the least square method from the center of gravity and the area of each of a plurality of concentric circles.
[0008]
Further, at this time, the calculating means can be configured to calculate the inclination angle of the display surface of the marker with respect to the surface perpendicular to the optical axis of the imaging means (invention of claim 3). It is possible to detect not only the position but also the tilt angle with respect to the marker display surface, that is, the position detection target imaging means. Furthermore, the position detection device of the present invention can be applied to the position detection of the robot and can correct the position of the robot based on the center position of the marker calculated by the calculation means (the invention of claim 4). Accordingly, the robot position can be accurately corrected with a relatively simple and inexpensive configuration.
[0009]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, an embodiment in which the present invention is applied to position correction of a vertical articulated (6-axis) robot for assembly, for example, will be described with reference to the drawings. FIG. 1 schematically shows a state (appearance) in which a robot body 1 that is a position detection target of a position detection apparatus according to the present embodiment is installed on an installation surface (workbench) 2 of an assembly work facility. First, the overall configuration of the robot body 1 will be briefly described.
[0010]
The robot body 1 is provided on a base 3 fixedly installed on the installation surface 2 such that a first arm 4 can be rotated (turned) about a vertical axis, and at the tip of the first arm 4, The second arm 5 is provided to be rotatable about a horizontal axis, and the third arm 6 is provided at the tip of the second arm 5 to be rotatable about the horizontal axis. Further, a fourth arm 7 is provided on the tip surface portion of the third arm 6 so as to be coaxially rotatable. A fifth arm 8 is provided on the tip of the fourth arm 7 so as to be rotatable, and the tip of the fifth arm 8 is provided. A sixth arm 9 is provided on the surface so as to be coaxially rotatable. The distal end surface of the sixth arm 9 is an end effector mounting surface 10 on which an end effector such as a hand (not shown) can be detachably (replaced).
[0011]
Each of the arms 4 to 9 of the robot body 1 is driven by a servomotor (not shown) with an encoder, and each servomotor is connected to a robot control device (controller) 11 ( The feedback control is performed according to FIG. The robot control device 11 is mainly composed of a microcomputer, and as shown in FIG. 2, includes a control unit 12 for controlling the robot body 1 and a storage unit 13 for storing work programs, work position data, and the like. It is configured. As a result, the robot controller 11 controls the robot body 1 based on the work position data in accordance with the work program stored in the storage unit 13 to automatically execute the parts assembling work and the like. ing.
[0012]
Now, the configuration of the position detection device 14 according to the present embodiment for detecting the position of the robot body 1 (in this case, the position and orientation of the end effector mounting surface 10) will be described below. First, as shown in FIG. 1, a marker M serving as a target is provided at the center of the end effector mounting surface 10. In this embodiment, the marker M displays two concentric circles having different radii around the center of the end effector mounting surface 10, that is, an outer circle C1 and an inner circle C2, on a plane S (see FIGS. 3 and 4). Configured. The position detection device 14 is a three-dimensional marker M (concentric circles C1, C2) provided on the end effector mounting surface 10 in a state where the robot main body 1 is located at the origin position before starting work (or before teaching), for example. And the inclination angle θ of the plane S are detected.
[0013]
As shown in FIG. 2, the position detection device 14 includes a CCD camera 15 that is an imaging means for imaging the marker M portion, and a visual recognition device 16 that mainly processes a microcomputer and processes image data from the CCD camera 15. Etc. As shown in FIG. 1, the CCD camera 15 is located on the installation surface 2 of the equipment so as to face the robot body 1 and can image the marker M of the end effector mounting surface 10 (and does not interfere with the work). Position).
[0014]
At this time, in this embodiment, two CCD cameras 15 are provided on the left and right sides of the robot main body 1, and detailed description thereof is omitted. However, by using these two CCD cameras 15, The distance L from the camera 15 to the marker M (projection plane) can also be detected with high accuracy. Further, each CCD camera 15 is provided so as to be able to turn (turn) around a vertical axis, and can be turned up and down (changed in angle) around a horizontal axis. The marker M is moved so as to be in a direction (theoretically facing the position) at which the marker M can be imaged at substantially the center of the field of view.
[0015]
As shown in FIG. 2, the visual recognition device 16 includes an image storage unit 18 that stores image data of a marker M portion captured by the CCD camera 15, an arithmetic processing unit 19 that processes the image data, and the like. Configured. The arithmetic processing unit 19 also controls the drive of the camera driving device 17 and, of course, can recognize the position (three-dimensional shooting angle) of each CCD camera 15 by itself. is there.
[0016]
As will be described in detail later, the visual recognition device 16 (arithmetic processing unit 19) images the marker M portion by the CCD camera 15 by the software configuration (execution of the processing program). Then, the image data is processed to calculate the center positions φ1 and φ2 of the concentric circles C1 and C2 on the image, and the center position φ of the marker M is obtained from the center positions φ1 and φ2. Therefore, the arithmetic processing unit 19 functions as a calculation unit.
[0017]
More specifically, necessary data such as the radius r1 of the outer circle C1 and the radius r2 of the inner circle C2 of the marker M is input to the arithmetic processing unit 19 in advance. Assuming that the radius r2 is r2 = mr1 (0 <m <1), the true center position φ of the marker M is calculated from the calculated barycentric positions φ1 and φ2.
[Equation 3]
Figure 0003754340
It is calculated by the following formula.
[0018]
Furthermore, in the present embodiment, the arithmetic processing unit 19 includes a deviation amount Δφ between the center position φ and, for example, the center of gravity position φ1 of the outer circle C1, and a distance L between the CCD camera 15 and the projection surface of the marker M, Further, the inclination angle θ of the display surface S of the marker M with respect to the surface perpendicular to the optical axis of the CCD camera 15 is also calculated from the radius r1 of the outer circle C1. Then, the detected center position φ of the marker M and the inclination angle θ of the display surface S of the marker M are sent to the robot controller 11 to correct the position of the robot body 1 (work position data stored in the storage unit 13). Correction).
[0019]
Next, the operation of the above configuration will be described with reference to FIGS. As described above, in the robot main body 1, the positions of the arms 4 to 9 may be slightly displaced from the theoretical (computer environment) position due to the influence of gravity or the like. Therefore, before the assembly work (or before the teaching work), the position detection device 14 detects the position of the marker M on the end effector mounting surface 10 at the tip of the arm in order to correct the positional deviation, thereby correcting the positional deviation. Do.
[0020]
Here, when detecting the position of the circular marker, when the CCD camera 15 and the marker M are positioned facing each other (the display surface S of the marker M is perpendicular to the optical axis of the CCD camera 15), the marker The center position of the marker M can be obtained by detecting the position of the center of gravity of the image. However, in practice, the display surface S of the marker M is often inclined with respect to the CCD camera 15. In this case, an image projected obliquely is captured, and the image of the marker M is a perfect circle. Therefore, even if the center of gravity of the marker M is obtained, there is a disadvantage that it does not coincide with the true center position φ of the marker M.
[0021]
Now, as shown in FIG. 3, a circle C having a radius r is displayed on the display surface S, and the display surface S is inclined at an angle θ with respect to a surface perpendicular to the optical axis l of the CCD camera 15 that images the circle C. If there is, the angle component Δφ of the error of the center of gravity position of the image with respect to the true center position of the circle C can be obtained as follows. However, here, the viewpoint V of the CCD camera 15 is the origin, the line (optical axis l) connecting the viewpoint V and the center of the circle C is made to coincide with the z axis, and the display surface S is at an angle θ with respect to the x axis direction. The distance from the viewpoint V (origin) to the projection plane is L.
[0022]
That is, the equation of the sphere containing the circle C is
[Expression 4]
Figure 0003754340
And the equation for the surface S is
xsin θ + (z−L) cos θ = 0
z−L = −xtan θ (2)
Substituting equation (2) into equation (1),
[Equation 5]
Figure 0003754340
It becomes.
[0023]
Now the coordinates of the circumference of the circle C are
[Expression 6]
Figure 0003754340
From this, the coordinates projected on a plane perpendicular to the optical axis l (z = L) are
[Expression 7]
Figure 0003754340
It becomes. Here, since a = L / (L-xtanθ) from a (L-xtanθ) = L, the coordinates are
[Equation 8]
Figure 0003754340
It becomes.
[0024]
If X = Lx / (L−xtanθ), then x = LX / (L + Xtanθ), the coordinates are
[Equation 9]
Figure 0003754340
It is represented by From this equation, the integration range when calculating the center of gravity is
[Expression 10]
Figure 0003754340
It becomes.
[0025]
Furthermore, in order to normalize with the distance L, if t = X / L and α = r / L, then X = Lt,
## EQU11 ##
Figure 0003754340
From this equation, the integration range when calculating the center of gravity is
[Expression 12]
Figure 0003754340
It becomes.
[0026]
As a result of the numerical calculation, the angular component Δφ of the error of the center of gravity position (deviation from the true center due to the inclination θ) is approximated by the following equation.
[0027]
[Formula 13]
Figure 0003754340
[0028]
In this embodiment, as shown in FIG. 4, the marker M is a concentric circle composed of an outer circle C1 having a radius r1 and an inner circle C2 having a radius r2 (where r2 = mr1 (0 <m <1)). Then, the position detection device 14 takes an image of the marker M portion with the CCD camera 15, and the visual recognition device 16 (arithmetic processing unit 19) determines each of the circles C1 and C2 based on the image data. The center of gravity positions φ1 and φ2 are calculated, and the true center position φ of the marker M can be calculated therefrom as follows.
[0029]
That is, as shown in the above equation (3), for the circle C having the radius r, the angle component Δφ of the error in the center of gravity due to the inclination θ is
[Expression 14]
Figure 0003754340
When Δφ is sufficiently small,
[Expression 15]
Figure 0003754340
Can be approximated by However, α = r / L and k (θ) = 0.539 sin 2θ.
[0030]
If the true center position of the marker M (circles C1, C2) is φ, the error of the center of gravity position φ1 of the outer circle C1 is Δφ1, and the error of the center of gravity position φ2 of the inner circle C2 is Δφ2.
φ = φ1 −Δφ1
φ = φ2 −Δφ2
Therefore, when α1 = r1 / L and α2 = r2 / L, from the above equation (4),
[Expression 16]
Figure 0003754340
Is established.
[0031]
Subtracting the formula (5) multiplied by the square of α2 from the formula (6) multiplied by the square of α1 gives
[Expression 17]
Figure 0003754340
It becomes. Substituting α1 = r1 / L and α2 = mr1 / L into this,
[Formula 18]
Figure 0003754340
Is obtained.
[0032]
Therefore, the true center position φ can be easily calculated by substituting the calculated φ1, φ2 and the known m into the equation (7). When the display surface S is not inclined, that is, when θ = 0, the centroid positions φ1 and φ2 of the circles C1 and C2 coincide with each other and the error component Δφ becomes 0. Therefore, the centroid positions φ1 and φ2 Of course coincides with the center position φ, and in this case, the above equation (7) is established. That is, the center position φ can be calculated using the above equation (7) regardless of whether the display surface S is inclined or not.
[0033]
Although the detailed description is omitted, since the distance L can be detected with high accuracy, the display surface S is obtained by using the value of L, the radius r, and the error component Δφ, as is apparent from, for example, the above equation (3). Can be easily calculated. Then, based on the calculated correct center position φ of the marker M and the tilt angle θ of the display surface S, it is possible to correct the displacement of the robot body 1 with high accuracy. The work can be performed.
[0034]
As described above, according to the present embodiment, the position detection is performed based on the imaging of the marker M by the CCD camera 15, and the marker M is composed of concentric circles C1 and C2, and each of these circles C1 and C2. Based on calculating the center of gravity, the correct center position φ can be easily calculated using the above equation (7). Therefore, even when the marker M is imaged from an inclined direction, an excellent effect that the center position φ can be accurately detected can be obtained. In the present embodiment, since the inclination angle θ of the display surface S of the marker M is calculated in addition to the center position φ of the marker M, the robot body 1 has a relatively simple and inexpensive configuration. Thus, the position correction can be performed accurately, and as a result, highly accurate work can be performed.
[0035]
In the above-described embodiment, the marker M is provided with two concentric circles C1 and C2 having different radii, and the center position φ is calculated according to the above equation (7). The following method using the above-described equation (4) is also conceivable. In these cases, of course, three or more concentric circles may be provided on the marker.
[0036]
(1) The center of gravity and area of each circle of a plurality of concentric circles are calculated, and determined from them by the method of least squares.
{Circle around (2)} A marker is formed from a plurality of concentric circles in which the radius of the circle is determined by a geometric series, and is obtained by the least square method from the ratio and the calculated center of gravity and area of each circle.
(3) The quantization variation in calculating the center of gravity differs depending on the size of the circle. At this time, weighting proportional to the radius of the circle can be performed.
[0037]
In addition, in the above embodiment, the image pickup means (CCD camera 15) is provided so as to be movable (change in orientation). However, the image pickup means may be fixed and provided, and only one image pickup means may be provided. It is. The position where the marker M is provided is not limited to the end effector mounting surface 10, and may be provided where the position of the robot body 1 is desired to be detected. In this case, the marker M may be provided at a plurality of locations. When applying to a robot as described above, the same can be implemented even if an imaging means is provided on the robot side and a marker is provided on the fixed equipment side. It can also be applied to a self-propelled robot. Furthermore, besides the positioning of the robot, the present invention can be applied to any device that performs three-dimensional position detection visually, and can be implemented with appropriate modifications within a range not departing from the gist. .
[Brief description of the drawings]
FIG. 1 is a perspective view showing an installation state of a robot body and a CCD camera according to an embodiment of the present invention. FIG. 2 is a block diagram schematically showing an electrical configuration of a system. FIG. 4 is a diagram for explaining a method of calculating an error in the center of gravity due to the inclination. FIG. 4 is a diagram for explaining a method of calculating the center position using concentric circles.
In the drawings, 1 is a robot body, 10 is an end effector mounting surface, 11 is a robot control device, 14 is a position detection device, 15 is a CCD camera (imaging means), 16 is a visual recognition device, 17 is a camera drive device, 18 is An image storage unit, 19 is an arithmetic processing unit (calculation means), M is a marker, C1 is an outer circle, C2 is an inner circle, and S is a display surface.

Claims (4)

位置検出対象に設けられたマーカを撮像する撮像手段と、この撮像手段の画像データに基づいて、前記マーカの中心位置を算出する算出手段とを備える位置検出装置であって、
前記マーカは、半径の異なる2以上の同心円を同一の平面上に表示して構成され、
前記算出手段は、前記各同心円画像の重心位置を夫々算出し、それら複数の重心位置から前記マーカの中心位置を求めることを特徴とする位置検出装置。
A position detection apparatus comprising: an imaging unit that images a marker provided in a position detection target; and a calculation unit that calculates a center position of the marker based on image data of the imaging unit;
The marker is configured by displaying two or more concentric circles having different radii on the same plane,
The position detecting device characterized in that the calculating means calculates a centroid position of each concentric circle image, and obtains a center position of the marker from the plurality of centroid positions.
前記算出手段は、半径r1 の外円及び半径mr1 (0<m<1)の内円の2つの同心円について夫々重心位置φ1 及びφ2 を算出し、さらに、次式により中心位置φを算出することを特徴とする請求項1記載の位置検出装置。
Figure 0003754340
The calculating means calculates centroid positions φ1 and φ2 for two concentric circles of an outer circle having a radius r1 and an inner circle having a radius mr1 (0 <m <1), and further calculating a center position φ by the following equation: The position detection device according to claim 1.
Figure 0003754340
前記算出手段は、前記撮像手段の光軸に垂直な面に対する前記マーカの表示面の傾斜角度を併せて算出するように構成されていることを特徴とする請求項1又は2記載の位置検出装置。The position detecting device according to claim 1, wherein the calculating unit is configured to calculate an inclination angle of the display surface of the marker with respect to a surface perpendicular to the optical axis of the imaging unit. . 前記位置検出対象はロボットであり、前記算出手段により算出された前記マーカの中心位置が、該ロボットの位置補正に用いられることを特徴とする請求項1ないし3のいずれかに記載の位置検出装置。The position detection apparatus according to claim 1, wherein the position detection target is a robot, and the center position of the marker calculated by the calculation unit is used for position correction of the robot. .
JP2001316749A 2001-10-15 2001-10-15 Position detection device Expired - Fee Related JP3754340B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001316749A JP3754340B2 (en) 2001-10-15 2001-10-15 Position detection device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001316749A JP3754340B2 (en) 2001-10-15 2001-10-15 Position detection device

Publications (2)

Publication Number Publication Date
JP2003121112A JP2003121112A (en) 2003-04-23
JP3754340B2 true JP3754340B2 (en) 2006-03-08

Family

ID=19134708

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001316749A Expired - Fee Related JP3754340B2 (en) 2001-10-15 2001-10-15 Position detection device

Country Status (1)

Country Link
JP (1) JP3754340B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109129525A (en) * 2017-06-15 2019-01-04 电装波动株式会社 The load position of centre of gravity estimating device and load position of centre of gravity of robot estimate method

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4728021B2 (en) * 2005-03-17 2011-07-20 日本碍子株式会社 Heat uniformity evaluation method and heat uniformity evaluation apparatus
JP2011102767A (en) * 2009-11-11 2011-05-26 Nec Corp Non-contact type position/attitude measuring method, non-contact type position/attitude measuring device, and semiconductor mounting device equipped with the non-contact type position/attitude measuring device
CZ306033B6 (en) * 2012-02-13 2016-07-07 ÄŚVUT v Praze, Fakulta strojnĂ­ Method of setting position of transfer arms on a supporting frame and transfer arms for gripping technological or measuring means
JP5962587B2 (en) * 2013-05-24 2016-08-03 株式会社デンソー Detection apparatus and detection method
CN107336240A (en) * 2017-07-14 2017-11-10 苏州工业园区凯艺精密科技有限公司 A kind of bottom illuminated vision system of manipulator
CN109895121A (en) * 2017-12-07 2019-06-18 泰科电子(上海)有限公司 Mechanical arm control system and method
CN111325802B (en) * 2020-02-11 2023-04-25 中国空气动力研究与发展中心低速空气动力研究所 Circular mark point identification and matching method in helicopter wind tunnel test

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109129525A (en) * 2017-06-15 2019-01-04 电装波动株式会社 The load position of centre of gravity estimating device and load position of centre of gravity of robot estimate method
CN109129525B (en) * 2017-06-15 2022-02-08 电装波动株式会社 Load center-of-gravity position estimation device and load center-of-gravity position estimation method for robot

Also Published As

Publication number Publication date
JP2003121112A (en) 2003-04-23

Similar Documents

Publication Publication Date Title
JP6966582B2 (en) Systems and methods for automatic hand-eye calibration of vision systems for robot motion
US8812257B2 (en) Method for determining a virtual tool center point
US9519736B2 (en) Data generation device for vision sensor and detection simulation system
US11565427B2 (en) Robot system
US9197810B2 (en) Systems and methods for tracking location of movable target object
EP1215017B1 (en) Robot teaching apparatus
JP4191080B2 (en) Measuring device
JP5290324B2 (en) Method and system for accurately positioning at least one object in a final pose in space
JP4844453B2 (en) Robot teaching apparatus and teaching method
JP7153085B2 (en) ROBOT CALIBRATION SYSTEM AND ROBOT CALIBRATION METHOD
JP2003117861A (en) Position correcting system of robot
JP6897396B2 (en) Control devices, robot systems and control methods
JP3754340B2 (en) Position detection device
KR100622541B1 (en) Boom positioning device for high-position working
JP2001158599A5 (en)
JPH0755439A (en) Three-dimensional shape measuring equipment
JP3511551B2 (en) Robot arm state detection method and detection system
JP6923688B2 (en) Robots and robot systems
JPH1011146A (en) Device for correcting stop posture of mobile object
JPH0820207B2 (en) Optical 3D position measurement method
JPH0283183A (en) Setting method for position of articulated robot
JPH04269194A (en) Plane measuring method
JP3562096B2 (en) Position detection method
WO2023012894A1 (en) Robot system, control device, diagnosis method, and diagnosis program
JPH03281182A (en) Coordinate correcting method for moving robot

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040413

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050714

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050816

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20050824

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051017

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: 20051206

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20051215

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 3754340

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081222

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091222

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20091207

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101222

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20091208

A072 Dismissal of procedure [no reply to invitation to correct request for examination]

Free format text: JAPANESE INTERMEDIATE CODE: A072

Effective date: 20100601

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111222

Year of fee payment: 6

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313117

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111222

Year of fee payment: 6

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111222

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121222

Year of fee payment: 7

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121222

Year of fee payment: 7

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121222

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121222

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131222

Year of fee payment: 8

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

LAPS Cancellation because of no payment of annual fees