JPH08272414A - ロボットとハンドカメラを用いた視覚センサのキャリブレーション方法 - Google Patents
ロボットとハンドカメラを用いた視覚センサのキャリブレーション方法Info
- Publication number
- JPH08272414A JPH08272414A JP9414295A JP9414295A JPH08272414A JP H08272414 A JPH08272414 A JP H08272414A JP 9414295 A JP9414295 A JP 9414295A JP 9414295 A JP9414295 A JP 9414295A JP H08272414 A JPH08272414 A JP H08272414A
- Authority
- JP
- Japan
- Prior art keywords
- robot
- visual sensor
- hand camera
- coordinate system
- parameters
- 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.)
- Pending
Links
Landscapes
- Length Measuring Devices By Optical Means (AREA)
- Numerical Control (AREA)
- Manipulator (AREA)
Abstract
(57)【要約】
【目的】 ロボット並びにハンドカメラを含む視覚セン
サのキャリブレーションを同時に行なうこと。 【構成】 ロボットコントローラ1で制御されるロボッ
ト20を移動させ、治具50の上面51上に用意された
基準点P1 〜Pm の計測に適した位置に位置決めする。
P1 〜Pm のロボットの基準座標系上での座標値は既知
とする。ロボット20と視覚センサに関して定められる
パラメータをQ1 〜Qn とする。P1 〜Pm 点の認識誤
差をΔx1 〜Δxm として、b=[Δx1t,Δx2t・・
・Δxmt]、並びに、D=[C1t,C2t・・・Cmt]
(C1t,C2t・・・Cmtは、点P1 〜Pm のロボット座
標系上の位置を表わすQ1 〜Qn の関数fのQ1 〜Qn
に関するヤコビアンを要素とする行列の転置行列のx=
x1 ,x=x2 ・・・x=xm に対応した値)を計算す
る。そして、σ=(Q1 〜Qn )とその微小変化量Δσ
を用いて、繰り返し計算σ(k) =σ(k-1) +Δσ(k-1)
[k=1,2,3・・・]を、σが収束するまで実行す
る。
サのキャリブレーションを同時に行なうこと。 【構成】 ロボットコントローラ1で制御されるロボッ
ト20を移動させ、治具50の上面51上に用意された
基準点P1 〜Pm の計測に適した位置に位置決めする。
P1 〜Pm のロボットの基準座標系上での座標値は既知
とする。ロボット20と視覚センサに関して定められる
パラメータをQ1 〜Qn とする。P1 〜Pm 点の認識誤
差をΔx1 〜Δxm として、b=[Δx1t,Δx2t・・
・Δxmt]、並びに、D=[C1t,C2t・・・Cmt]
(C1t,C2t・・・Cmtは、点P1 〜Pm のロボット座
標系上の位置を表わすQ1 〜Qn の関数fのQ1 〜Qn
に関するヤコビアンを要素とする行列の転置行列のx=
x1 ,x=x2 ・・・x=xm に対応した値)を計算す
る。そして、σ=(Q1 〜Qn )とその微小変化量Δσ
を用いて、繰り返し計算σ(k) =σ(k-1) +Δσ(k-1)
[k=1,2,3・・・]を、σが収束するまで実行す
る。
Description
【0001】
【産業上の利用分野】本願発明は、産業用ロボット(以
下、単に「ロボット」と言う。)と該ロボットの手先に
取り付けられたカメラ(以下、「ハンドカメラ」あるい
は単に「カメラ」と言う。)を含むビジョンシステムの
キャリブレーション方法に関する。
下、単に「ロボット」と言う。)と該ロボットの手先に
取り付けられたカメラ(以下、「ハンドカメラ」あるい
は単に「カメラ」と言う。)を含むビジョンシステムの
キャリブレーション方法に関する。
【0002】
【従来の技術】ロボットを正しく動作させる為には、各
ロボット軸の角度変数とロボットの手先の位置・姿勢
(ハンド基準点、例えばフェイスプレートに設定された
フェイスプレート座標系の位置・姿勢)の関係を規定す
る諸パラメータの値を知る必要がある。これらパラメー
タの最適値を推定し、決定する手続きは一般にキャリブ
レーションと呼ばれている。キャリブレーションで定め
られるパラメータには、内部パラメータと外部パラメー
タがある。
ロボット軸の角度変数とロボットの手先の位置・姿勢
(ハンド基準点、例えばフェイスプレートに設定された
フェイスプレート座標系の位置・姿勢)の関係を規定す
る諸パラメータの値を知る必要がある。これらパラメー
タの最適値を推定し、決定する手続きは一般にキャリブ
レーションと呼ばれている。キャリブレーションで定め
られるパラメータには、内部パラメータと外部パラメー
タがある。
【0003】前者の代表的な例としては、リンク長、隣
接リンク間の位置ずれ(オフセット)とねじれ、各ロボ
ット軸の角度変数を検出するエンコーダのオフセット値
(マスタリング姿勢時のカウンタ値)、各リンクの撓み
などがある。後者は、ワールド座標系からみたロボット
座標系(内部パラメータと角度変数値からハンド基準点
の位置・姿勢を計算する時の基準となる、ロボットに固
定された座標系。以下、同じ。)の位置・姿勢を表わす
パラメータである。外部パラメータを決定するキャリブ
レーションについては別途考慮するものとし、以下、内
部パラメータを定めるキャリブレーションのみを考え
る。
接リンク間の位置ずれ(オフセット)とねじれ、各ロボ
ット軸の角度変数を検出するエンコーダのオフセット値
(マスタリング姿勢時のカウンタ値)、各リンクの撓み
などがある。後者は、ワールド座標系からみたロボット
座標系(内部パラメータと角度変数値からハンド基準点
の位置・姿勢を計算する時の基準となる、ロボットに固
定された座標系。以下、同じ。)の位置・姿勢を表わす
パラメータである。外部パラメータを決定するキャリブ
レーションについては別途考慮するものとし、以下、内
部パラメータを定めるキャリブレーションのみを考え
る。
【0004】内部パラメータは対象とするロボットを表
現する適当なロボット機構モデルに関連して定義され
る。一般に、ロボットの内部パラメータを定めるキャリ
ブレーションを実行する為には、複数のロボット姿勢に
ついて、ハンド基準点の位置を計測する必要がある。
現する適当なロボット機構モデルに関連して定義され
る。一般に、ロボットの内部パラメータを定めるキャリ
ブレーションを実行する為には、複数のロボット姿勢に
ついて、ハンド基準点の位置を計測する必要がある。
【0005】そこで、ハンドカメラを使用した視覚セン
サを含むビジョンシステムにおけるロボットのキャリブ
レーションを行なう場合には、その視覚センサ自身を利
用することが考えられる。その場合には、ロボットにい
くつかの姿勢をとらせた状態で、ワールド座標系上での
位置が既知である点に関する視覚センサの出力からハン
ド基準点の位置を計算することになる。しかし、その為
には、視覚センサの出力を記述するセンサ座標系とハン
ド基準点(フェイスプレート座標系)との関係が判って
いなければならない。即ち、視覚センサのキャリブレー
ションが前もって行なわれている必要がある。
サを含むビジョンシステムにおけるロボットのキャリブ
レーションを行なう場合には、その視覚センサ自身を利
用することが考えられる。その場合には、ロボットにい
くつかの姿勢をとらせた状態で、ワールド座標系上での
位置が既知である点に関する視覚センサの出力からハン
ド基準点の位置を計算することになる。しかし、その為
には、視覚センサの出力を記述するセンサ座標系とハン
ド基準点(フェイスプレート座標系)との関係が判って
いなければならない。即ち、視覚センサのキャリブレー
ションが前もって行なわれている必要がある。
【0006】しかし、ロボットのキャリブレーションが
完了していない時点では、ハンドカメラを用いた視覚セ
ンサのキャリブレーションに、ロボット自身の位置決め
機能を利用することが出来ない。従って、従来は、ロボ
ットのキャリブレーションとハンドカメラを含む視覚セ
ンサのキャリブレーションを別々に行なう必要があっ
た。
完了していない時点では、ハンドカメラを用いた視覚セ
ンサのキャリブレーションに、ロボット自身の位置決め
機能を利用することが出来ない。従って、従来は、ロボ
ットのキャリブレーションとハンドカメラを含む視覚セ
ンサのキャリブレーションを別々に行なう必要があっ
た。
【0007】即ち、ロボットのキャリブレーションをそ
のビジョンシステムとは別の手段を用いて行い、然る後
にハンドカメラを含む視覚センサのキャリブレーション
を行なう方法が採用されていた。また、場合によって
は、ロボットのキャリブレーションを行なわずに視覚セ
ンサのキャリブレーションを行なっていた。しかし、前
者の方法は作業が煩雑であり、後者の方法では高い精度
が得られなかった。
のビジョンシステムとは別の手段を用いて行い、然る後
にハンドカメラを含む視覚センサのキャリブレーション
を行なう方法が採用されていた。また、場合によって
は、ロボットのキャリブレーションを行なわずに視覚セ
ンサのキャリブレーションを行なっていた。しかし、前
者の方法は作業が煩雑であり、後者の方法では高い精度
が得られなかった。
【0008】
【発明が解決しようとする課題】そこで本願発明の目的
は、上記従来技術の欠点を克服し、ビジョンシステムを
構成するロボット並びにハンドカメラを含む視覚センサ
のキャリブレーションを一括して同時に行なう方法を提
供することにある。また、本願発明は、そのことを通し
て、ビジョンシステムのキャリブレーションを精度を犠
牲にすることなく簡便に行えるようにしようとするもの
である。
は、上記従来技術の欠点を克服し、ビジョンシステムを
構成するロボット並びにハンドカメラを含む視覚センサ
のキャリブレーションを一括して同時に行なう方法を提
供することにある。また、本願発明は、そのことを通し
て、ビジョンシステムのキャリブレーションを精度を犠
牲にすることなく簡便に行えるようにしようとするもの
である。
【0009】
【課題を解決するための手段】本願発明は、ビジョンシ
ステムを構成するロボットを記述する内部パラメータ
と、ハンドカメラを含む視覚センサを記述する内部パラ
メータを統括的に取り扱い、両者のキャリブレーション
を同時に行なうことによって、上記課題を解決したもの
である。
ステムを構成するロボットを記述する内部パラメータ
と、ハンドカメラを含む視覚センサを記述する内部パラ
メータを統括的に取り扱い、両者のキャリブレーション
を同時に行なうことによって、上記課題を解決したもの
である。
【0010】本願発明では、これらパラメータと視覚セ
ンサによって認識される3次元位置の間の関係として、
関数fで与えられる非線形方程式で表わされる関係を想
定し、m通り(但し、mはn及び非線形方程式の形に応
じて決まる2より大きな正整数を下回らない正整数)の
点に関する前記視覚センサによる認識位置の微小変化量
と、関数fの各パラメータに関するヤコビアンを要素と
する行列とから計算される各パラメータの微小変化量の
関係から、パラメータの値を逐次近似計算によって求め
る。視覚センサで認識されるm通りの点は、ロボット座
標系上に座標値が既知のm個の点として用意することが
出来る。また、m個の点に関する微小変化量は、それら
の点に関する認識誤差として与えられる。
ンサによって認識される3次元位置の間の関係として、
関数fで与えられる非線形方程式で表わされる関係を想
定し、m通り(但し、mはn及び非線形方程式の形に応
じて決まる2より大きな正整数を下回らない正整数)の
点に関する前記視覚センサによる認識位置の微小変化量
と、関数fの各パラメータに関するヤコビアンを要素と
する行列とから計算される各パラメータの微小変化量の
関係から、パラメータの値を逐次近似計算によって求め
る。視覚センサで認識されるm通りの点は、ロボット座
標系上に座標値が既知のm個の点として用意することが
出来る。また、m個の点に関する微小変化量は、それら
の点に関する認識誤差として与えられる。
【0011】
【作用】本願発明の骨格をなす原理は次の通りである。
キャリブレーションで定められるべきロボットの内部パ
ラメータ(リンク長、ロボット軸間オフセット等)とハ
ンドカメラを含む視覚センサの内部パラメータ(センサ
出力からロボット座標系上のデータを計算する為のパラ
メータ)を適当な順に並べたものをQ1 ,Q2 ・・・Q
n とする。本願発明では、これらパラメータが以下の考
え方に従って求める。
キャリブレーションで定められるべきロボットの内部パ
ラメータ(リンク長、ロボット軸間オフセット等)とハ
ンドカメラを含む視覚センサの内部パラメータ(センサ
出力からロボット座標系上のデータを計算する為のパラ
メータ)を適当な順に並べたものをQ1 ,Q2 ・・・Q
n とする。本願発明では、これらパラメータが以下の考
え方に従って求める。
【0012】これらパラメータQ1 ,Q2 ・・・Qn と
視覚センサによって認識される3次元位置x(ベクトル
量;以下、単に「認識位置」とも言う。)の間の関係
は、一般に、次の(1)式のような非線形方程式で表わ
される。 x=f(Q1 ,Q2 ・・・Qn )=f(σ) ・・・(1) ここで、σ=(Q1 ,Q2 ・・・Qn )である。
視覚センサによって認識される3次元位置x(ベクトル
量;以下、単に「認識位置」とも言う。)の間の関係
は、一般に、次の(1)式のような非線形方程式で表わ
される。 x=f(Q1 ,Q2 ・・・Qn )=f(σ) ・・・(1) ここで、σ=(Q1 ,Q2 ・・・Qn )である。
【0013】パラメータσの微小変化量をΔσ=(ΔQ
1 ,ΔQ2 ・・・ΔQn )とすれば、これに対応した認
識位置xの変化量Δxは、次式(2)で表わされる。
1 ,ΔQ2 ・・・ΔQn )とすれば、これに対応した認
識位置xの変化量Δxは、次式(2)で表わされる。
【0014】
【数1】 ロボット座標系上の座標値が既知となるように、m通り
の点(但し、m≧Mで、Mはn及び関数fの形に応じて
決まる正整数)を用意する。用意された各点の座標値を
x1tr ,x2tr ・・・xmtr とする。また、これらの点
について行なわれた計測の認識位置をx1 ,x2 ・・・
xm とする。そして、各点についてのxの微小変化量Δ
xとして、Δxj =xjtr −xj (j=1,2・・・
m)を採用する。
の点(但し、m≧Mで、Mはn及び関数fの形に応じて
決まる正整数)を用意する。用意された各点の座標値を
x1tr ,x2tr ・・・xmtr とする。また、これらの点
について行なわれた計測の認識位置をx1 ,x2 ・・・
xm とする。そして、各点についてのxの微小変化量Δ
xとして、Δxj =xjtr −xj (j=1,2・・・
m)を採用する。
【0015】このΔxj を用いて、次の式(3),
(4)で表わされるb及びDが得られる。
(4)で表わされるb及びDが得られる。
【0016】 b=[Δx1t,Δx2t・・・Δxmt] ・・・(3) D=[C1t,C2t・・・Cmt] (t;転置行列) ・・・(4) b,D,Δσの間には、次の関係式(5)が成立する。 b=D・Δσ ・・・(5) 上記(3)式をΔσに関する方程式とみた時、最小二乗
解はDの疑似逆行列であり、次式(6)で与えられる。
(6)式の右辺は、上記(3)式、(4)式から計算さ
れる。
解はDの疑似逆行列であり、次式(6)で与えられる。
(6)式の右辺は、上記(3)式、(4)式から計算さ
れる。
【0017】 Δσ=(Dt D)-1Dt ・b (t;転置行列) ・・・(6) パラメータσは、次式(7)で表わされる繰り返し計算
によって求められる。
によって求められる。
【0018】 σ(k) =σ(k-1) +Δσ(k-1) ・・・(7) 但し、kは繰り返し計算の指標で、k=1,2・・・で
ある。先ず、k=1におけるσとして適当なσ0 (真の
σに近いと考えられる値、例えば設計値)を設定し、m
通りの点に関する計測結果、ロボット機構モデル並びに
ハンドカメラを含む視覚センサの機構モデルを使って上
式(3),(4)を計算し、σ0 に対するΔσ0 を上式
(6)に従って求める。
ある。先ず、k=1におけるσとして適当なσ0 (真の
σに近いと考えられる値、例えば設計値)を設定し、m
通りの点に関する計測結果、ロボット機構モデル並びに
ハンドカメラを含む視覚センサの機構モデルを使って上
式(3),(4)を計算し、σ0 に対するΔσ0 を上式
(6)に従って求める。
【0019】これを(7)式にk=1として、σ0 とと
もに代入すれば、σ(1) が求められる。以下、同様の手
順をk=2,3・・・として繰り返すことで、σ(k) は
一定値に収束する。実際の計算処理においては、Δσ
(k) が予め設定された0レベルに近いしきいレベルεを
下回った段階で計算を終了し、最終段階で計算されたΔ
σ(k)をσの最適値として採用すれば良い。
もに代入すれば、σ(1) が求められる。以下、同様の手
順をk=2,3・・・として繰り返すことで、σ(k) は
一定値に収束する。実際の計算処理においては、Δσ
(k) が予め設定された0レベルに近いしきいレベルεを
下回った段階で計算を終了し、最終段階で計算されたΔ
σ(k)をσの最適値として採用すれば良い。
【0020】
【実施例】図1は、本願発明の方法を適用する際の配置
の概要を例示した要部ブロック図である。配置されるシ
ステム全体は、ロボットコントローラ1、画像処理装
2、ハンドカメラ10、ロボット20、並びに治具5か
ら構成されている。ロボットコントローラ1にはロボッ
ト20と画像処理装2が接続されている。画像処理装置
2には、ハンドカメラ10が接続されている。ロボット
コントローラ1から画像処理装置2にセンシング指令が
出されると、画像処理装置2からハンドカメラセンサ1
0にカメラインターフェイスを介して撮影指令が送られ
る。ハンドカメラ10で撮影された画像は、カメライン
ターフェイスを介して画像処理装置2に取り込まれ、画
像解析が行なわれる。
の概要を例示した要部ブロック図である。配置されるシ
ステム全体は、ロボットコントローラ1、画像処理装
2、ハンドカメラ10、ロボット20、並びに治具5か
ら構成されている。ロボットコントローラ1にはロボッ
ト20と画像処理装2が接続されている。画像処理装置
2には、ハンドカメラ10が接続されている。ロボット
コントローラ1から画像処理装置2にセンシング指令が
出されると、画像処理装置2からハンドカメラセンサ1
0にカメラインターフェイスを介して撮影指令が送られ
る。ハンドカメラ10で撮影された画像は、カメライン
ターフェイスを介して画像処理装置2に取り込まれ、画
像解析が行なわれる。
【0021】ロボットコントローラ1は通常使用されて
いる型のもので、マイクロプロセッサからなる中央演算
処理装置(以下、「CPU」と言う。)と、CPUにバ
ス結合されたROMメモリ、RAMメモリ、教示操作
盤、ロボットの軸制御器、汎用信号インターフェイス等
を備えている。
いる型のもので、マイクロプロセッサからなる中央演算
処理装置(以下、「CPU」と言う。)と、CPUにバ
ス結合されたROMメモリ、RAMメモリ、教示操作
盤、ロボットの軸制御器、汎用信号インターフェイス等
を備えている。
【0022】ROMメモリには、システム全体を制御す
るプログラムが格納される。RAMメモリには、ロボッ
ト動作や画像処理装置への指令送信、画像処理装置から
の画像解析結果の受信等を制御するプログラム、関連設
定値等が格納され、また、CPUによる演算実行時の一
時記憶用のメモリや必要に応じて設定されるレジスタ領
域としても使用される。軸制御器は、ロボット20の各
軸をサーボ回路を介して制御する。汎用信号インターフ
ェイスは、画像処理装置2やオフラインプログラミング
装置、製造ラインの制御部等に対する入出力装置の役割
を果たす。これら個別要素の図示及び詳しい説明は省略
する。
るプログラムが格納される。RAMメモリには、ロボッ
ト動作や画像処理装置への指令送信、画像処理装置から
の画像解析結果の受信等を制御するプログラム、関連設
定値等が格納され、また、CPUによる演算実行時の一
時記憶用のメモリや必要に応じて設定されるレジスタ領
域としても使用される。軸制御器は、ロボット20の各
軸をサーボ回路を介して制御する。汎用信号インターフ
ェイスは、画像処理装置2やオフラインプログラミング
装置、製造ラインの制御部等に対する入出力装置の役割
を果たす。これら個別要素の図示及び詳しい説明は省略
する。
【0023】ロボット20の動作は、ロボットコントロ
ーラ1のメモリに格納された動作プログラムによって制
御される。ロボット20は、関節6軸ロボットで、その
先端にハンドカメラ10とハンドHが装着されている。
ーラ1のメモリに格納された動作プログラムによって制
御される。ロボット20は、関節6軸ロボットで、その
先端にハンドカメラ10とハンドHが装着されている。
【0024】符号5は正確に工作されたキャリブレーシ
ョン用の治具で、基部50の上面51には複数の基準点
P1 ,P2 ,P3 ・・・(3個のみ図示)が描かれてい
る。各基準点P1 ,P2 ,P3 ・・・の位置は、設計デ
ータで与えられているロボット20のベースの基準点近
傍を原点として設定されたロボット座標系上で、既知デ
ータ(x1tr ,x2tr ・・・xmtr )で与えられている
ものとする。
ョン用の治具で、基部50の上面51には複数の基準点
P1 ,P2 ,P3 ・・・(3個のみ図示)が描かれてい
る。各基準点P1 ,P2 ,P3 ・・・の位置は、設計デ
ータで与えられているロボット20のベースの基準点近
傍を原点として設定されたロボット座標系上で、既知デ
ータ(x1tr ,x2tr ・・・xmtr )で与えられている
ものとする。
【0025】キャリブレーションによって定めるパラメ
ータについては、以下の通りする。
ータについては、以下の通りする。
【0026】1.ロボットの内部パラメータとしては、
DHパラメータを採用する。DHパラメータによるロボ
ット機構の表現方法は、周知であるから詳細説明は省略
し、図2を参照して定義のみを簡単に記す。
DHパラメータを採用する。DHパラメータによるロボ
ット機構の表現方法は、周知であるから詳細説明は省略
し、図2を参照して定義のみを簡単に記す。
【0027】θi ;リンクiの回転軸における回転角
(回転関節の場合、これが軸iの変位量になる。 di ;リンクiのリンク長 ai ;リンクiとリンクi−1に関する2本の共通垂線
間の距離(直動関節の場合、これが軸iの変位量にな
る。 αi ;軸i上に設定された座標系Zi と軸i−1上に設
定された座標系Zi-1の間のねじれ 2.視覚センサについては、ハンドカメラ10の画像面
における点像位置(u,v)とその点像を与える点のロ
ボット座標系上の位置(x,y,z)の位置との関係
が、次式(8),(9)で与えられる場合を考える。な
お、この関係は、ハンドカメラ10にピンホールカメラ
のモデルを適用した時に成立する関係として周知であ
る。
(回転関節の場合、これが軸iの変位量になる。 di ;リンクiのリンク長 ai ;リンクiとリンクi−1に関する2本の共通垂線
間の距離(直動関節の場合、これが軸iの変位量にな
る。 αi ;軸i上に設定された座標系Zi と軸i−1上に設
定された座標系Zi-1の間のねじれ 2.視覚センサについては、ハンドカメラ10の画像面
における点像位置(u,v)とその点像を与える点のロ
ボット座標系上の位置(x,y,z)の位置との関係
が、次式(8),(9)で与えられる場合を考える。な
お、この関係は、ハンドカメラ10にピンホールカメラ
のモデルを適用した時に成立する関係として周知であ
る。
【0028】
【数2】 内部パラメータとしては上式に含まれるパラメータ、u
0 ,v0 ;ηu ,ηv;a11,a12・・・・a33;c1
,c2 ,c3 を考える。各パラメータの意味は次の通
りである。 u0 ,v0 ;ハンドカメラ10の光軸と画像面の交点位
置 ηu ,ηv ;画像メモリ上の座標系軸と画像面(撮像
面)上の座標軸とを関係付ける2軸(u軸とv軸)の換
算比 c1 〜c3 ;ハンドカメラ10のレンズの主点位置 a11〜a33;ハンドカメラ10の光軸方位=カメラ座標
系のロボット座標系の座標軸周りの回転角(α,φ,
β)を用いて、次式(10)で計算される行列要素 L;光軸長=画面距離=ハンドカメラ10のレンズから
画像面(撮像面)までの距離
0 ,v0 ;ηu ,ηv;a11,a12・・・・a33;c1
,c2 ,c3 を考える。各パラメータの意味は次の通
りである。 u0 ,v0 ;ハンドカメラ10の光軸と画像面の交点位
置 ηu ,ηv ;画像メモリ上の座標系軸と画像面(撮像
面)上の座標軸とを関係付ける2軸(u軸とv軸)の換
算比 c1 〜c3 ;ハンドカメラ10のレンズの主点位置 a11〜a33;ハンドカメラ10の光軸方位=カメラ座標
系のロボット座標系の座標軸周りの回転角(α,φ,
β)を用いて、次式(10)で計算される行列要素 L;光軸長=画面距離=ハンドカメラ10のレンズから
画像面(撮像面)までの距離
【0029】
【数3】 以上の内部パラメータをまとめたもの(θi ;di ;a
i ;αi ;u0 ,v0;ηu ,ηv ;a11,a12・・・
・a33;c1 ,c2 ,c3 )を適当な順番に並べたもの
を(Q1 ,Q2 ・・・Qn )とする(nはパラメータ総
数)。
i ;αi ;u0 ,v0;ηu ,ηv ;a11,a12・・・
・a33;c1 ,c2 ,c3 )を適当な順番に並べたもの
を(Q1 ,Q2 ・・・Qn )とする(nはパラメータ総
数)。
【0030】以上の事を前提に、キャリブレーションの
手順と処理について説明する。
手順と処理について説明する。
【0031】処理は、繰り返し計算の指標kをk=1と
して開始される。先ず、未キャリブレーションのロボッ
ト20を治具5の上面51上に用意された基準点P1 〜
Pmの計測が可能な位置に移動させる(ステップS
1)。そして、ハンドカメラ10を含む視覚センサで、
基準点P1 〜Pm の位置を認識する(ステップS2)。
但し、視覚センサが二次元視覚センサであれば、ロボッ
ト座標系でみてX,Y,Z成分のうちの一成分について
は、基準点の座標値を用いる。
して開始される。先ず、未キャリブレーションのロボッ
ト20を治具5の上面51上に用意された基準点P1 〜
Pmの計測が可能な位置に移動させる(ステップS
1)。そして、ハンドカメラ10を含む視覚センサで、
基準点P1 〜Pm の位置を認識する(ステップS2)。
但し、視覚センサが二次元視覚センサであれば、ロボッ
ト座標系でみてX,Y,Z成分のうちの一成分について
は、基準点の座標値を用いる。
【0032】次に、視覚センサの認識誤差として、Δx
j =xjtr −xj (j=1,2・・・m)を計算する
(ステップS3)。そして、これを用いて、前述の式
(3),(4)から、b及びDを計算する(ステップS
4)。パラメータQ1 〜Qn に関するヤコビアンを計算
しなければならないが、視覚センサのパラメータに関す
るヤコビアンは、前述の式(8),(9)から計算され
る。また、ロボットのパラメータ(DHパラメータ)に
関するヤコビアンは、DHパラメータを使ってハンド基
準点(フェイスプレート座標系の原点)の位置を表わす
一般的な式から計算される。この式はロボットの型に依
存して決まるもので、周知であるから、ここでは詳細は
省略する。
j =xjtr −xj (j=1,2・・・m)を計算する
(ステップS3)。そして、これを用いて、前述の式
(3),(4)から、b及びDを計算する(ステップS
4)。パラメータQ1 〜Qn に関するヤコビアンを計算
しなければならないが、視覚センサのパラメータに関す
るヤコビアンは、前述の式(8),(9)から計算され
る。また、ロボットのパラメータ(DHパラメータ)に
関するヤコビアンは、DHパラメータを使ってハンド基
準点(フェイスプレート座標系の原点)の位置を表わす
一般的な式から計算される。この式はロボットの型に依
存して決まるもので、周知であるから、ここでは詳細は
省略する。
【0033】次いで、パラメータの誤差を表わす量とし
て、(Dt D)-1Dt ・bを前述の式(6)に従って計
算し、Δσ(k-1) とする(ステップS5)。そして、こ
のΔσ(k-1) を使い、前述の式(6)に従ってσ(k) =
σ(k-1) +Δσ(k-1) を計算する(ステップS6)。但
し、k=1の場合のσ(k-1) については、設計値から計
算された初期値Δσ0 を用いる。
て、(Dt D)-1Dt ・bを前述の式(6)に従って計
算し、Δσ(k-1) とする(ステップS5)。そして、こ
のΔσ(k-1) を使い、前述の式(6)に従ってσ(k) =
σ(k-1) +Δσ(k-1) を計算する(ステップS6)。但
し、k=1の場合のσ(k-1) については、設計値から計
算された初期値Δσ0 を用いる。
【0034】続いて、Δσの収束状態を知る為に、Δσ
(k-1) が0レベルに到達しているか否かをチェックする
(ステップS7)。このチェックは、Δσ(k-1) を、そ
れを構成するパラメータ成分(n個)からなるベクトル
と見た時のノルム|Δσ(k-1) |を0に近い正の設定値
εと比較することによって行なわれる。
(k-1) が0レベルに到達しているか否かをチェックする
(ステップS7)。このチェックは、Δσ(k-1) を、そ
れを構成するパラメータ成分(n個)からなるベクトル
と見た時のノルム|Δσ(k-1) |を0に近い正の設定値
εと比較することによって行なわれる。
【0035】もし、|Δσ(k-1) |<εであれば、ステ
ップS6で計算されたσ(k) をσの成分(Q1 ,Q2 ・
・・Qn )=(θi ;di ;ai ;αi ;u0 ,v0 ;
ηu,ηv ;a11,a12・・・・a33;c1 ,c2 ,c3
)を最適のパラメータとして記憶し(ステップS
8)、処理を終了する。
ップS6で計算されたσ(k) をσの成分(Q1 ,Q2 ・
・・Qn )=(θi ;di ;ai ;αi ;u0 ,v0 ;
ηu,ηv ;a11,a12・・・・a33;c1 ,c2 ,c3
)を最適のパラメータとして記憶し(ステップS
8)、処理を終了する。
【0036】もし、|Δσ(k-1) |≧εであれば、指標
kを1アップして、ステップS4へ戻り、新しいσ(k-
1) 、Δσ(k-1) の下で、ステップS4〜ステップS7
の処理を繰り返す。ステップS7で、σの収束が確認さ
れたら、ステップS8を経て処理を完了する。確認され
なければ、再度ステップS4へ戻る。以下、同様に、ス
テップS7でσの収束が確認されるまでステップS4〜
ステップS7の処理を繰り返す。何度目かのサイクル
で、ステップS7でσの収束が確認されたならば、ステ
ップS8を経て処理を完了する。以上の手順に従った処
理によって、ロボットと視覚センサのパラメータ(θ
i;di ;ai ;αi ;u0 ,v0 ;ηu ,ηv ;a1
1,a12・・・・a33;c1,c2 ,c3 )の最適値がロ
ボットコントローラ1内のメモリに格納され、キャリブ
レーションが完了する。
kを1アップして、ステップS4へ戻り、新しいσ(k-
1) 、Δσ(k-1) の下で、ステップS4〜ステップS7
の処理を繰り返す。ステップS7で、σの収束が確認さ
れたら、ステップS8を経て処理を完了する。確認され
なければ、再度ステップS4へ戻る。以下、同様に、ス
テップS7でσの収束が確認されるまでステップS4〜
ステップS7の処理を繰り返す。何度目かのサイクル
で、ステップS7でσの収束が確認されたならば、ステ
ップS8を経て処理を完了する。以上の手順に従った処
理によって、ロボットと視覚センサのパラメータ(θ
i;di ;ai ;αi ;u0 ,v0 ;ηu ,ηv ;a1
1,a12・・・・a33;c1,c2 ,c3 )の最適値がロ
ボットコントローラ1内のメモリに格納され、キャリブ
レーションが完了する。
【0037】
【発明の効果】本願発明によれば、ビジョンシステムを
構成するロボット並びにハンドカメラを含む視覚センサ
のキャリブレーションを一括して同時に行なうことが出
来る。
構成するロボット並びにハンドカメラを含む視覚センサ
のキャリブレーションを一括して同時に行なうことが出
来る。
【0038】従って、視覚センサを利用してロボットの
キャリブレーションを行なうことが出来る。また、視覚
センサのキャリブレーションに先だってロボットのキャ
リブレーションを行なう必要がない。
キャリブレーションを行なうことが出来る。また、視覚
センサのキャリブレーションに先だってロボットのキャ
リブレーションを行なう必要がない。
【0039】即ち、本願発明により、ビジョンシステム
を構成するロボット並びにハンドカメラを含む視覚セン
サのキャリブレーションが、精度を犠牲にすることなく
簡便に行えるようになった。
を構成するロボット並びにハンドカメラを含む視覚セン
サのキャリブレーションが、精度を犠牲にすることなく
簡便に行えるようになった。
【図1】本願発明の方法を適用する際の配置の概要を例
示した要部ブロック図である。
示した要部ブロック図である。
【図2】DHパラメータについて説明する図である。
【図3】本実施例におけるキャリブレーションの手順と
処理の概要を説明するフローチャートである。
処理の概要を説明するフローチャートである。
【符号の説明】 1 ロボットコントローラ 2 画像処理装置 5 キャリブレーション用治具 10 ハンドカメラ 20 ロボット 50 キャリブレーション用治具の基部 51 キャリブレーション用治具の上面 H ハンド P1 ,P2 ,P3 ・・・基準点
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.6 識別記号 庁内整理番号 FI 技術表示箇所 G05B 19/18 G05B 19/18 A
Claims (2)
- 【請求項1】 ロボットを記述する内部パラメータと、
該ロボットに取り付けられたハンドカメラを含む視覚セ
ンサを記述する内部パラメータからなる計n個のパラメ
ータを統括的に定めるようにした、ロボットとハンドカ
メラを用いた視覚センサのキャリブレーション方法であ
って、 (a)前記n個のパラメータをQ1 ,Q2 ・・・Qn と
し、 (b)空間内の任意の点について前記視覚センサによっ
て認識される3次元位置x(ベクトル量)とこれらパラ
メータの関係が、σ=(Q1 ,Q2 ・・・Qn)に関す
る非線形方程式x=f(σ)で表現されるものとした場
合に、 (c)前記パラメータσの微小変化量をΔσ=(ΔQ1
,ΔQ2 ・・・ΔQn)とし、 (d)m通り(m≧M、但し、Mはn及び関数fの形に
応じて決まる正整数)の、前記ロボットの基準座標系上
での座標値x1tr ,x2tr ・・・xmtr が与えられた点
に関する前記視覚センサによる認識位置をx1 ,x2 ・
・・xm とし、 (e)Δxj =xjtr −xj (j=1,2・・・m)と
して、 b=[Δx1t,Δx2t・・・Δxmt](t;転置行列を
表わす記号)、並びに、D=[C1t,C2t・・・Cmt]
(但し、C1t,C2t・・・Cmtは、関数fのQ1 ,Q2
・・・Qn に関するヤコビアンを要素とする行列の転置
行列のx=x1 ,x=x2 ・・・x=xm に対応した
値)を計算し、 (f)σに関する初期値σ0 とそれに対応した微小変化
量Δσ0 から出発して、Δσ=(Dt D)-1Dt ・bの
関係式に基づき、 σ(k) =σ(k-1) +Δσ(k-1) [k=1,2,3・・
・]で定義される繰り返し計算をσ(k) が収束するまで
実行する前記ロボットとハンドカメラを用いた視覚セン
サのキャリブレーション方法。 - 【請求項2】 前記ロボットの基準座標系の原点は、前
記ロボットの設置位置付近に設定されており、 前記m通りの点は、空間内の所定位置に配置された治具
上に前記ハンドカメラを含む視覚センサによる認識が可
能であり、且つ、前記ロボットの基準座標系上における
座標値が既知な点として用意され、 前記xjtr (j=1,2・・・m)の値として、前記既
知の座標値が使用される、請求項1に記載されたロボッ
トとハンドカメラを用いた視覚センサのキャリブレーシ
ョン方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP9414295A JPH08272414A (ja) | 1995-03-29 | 1995-03-29 | ロボットとハンドカメラを用いた視覚センサのキャリブレーション方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP9414295A JPH08272414A (ja) | 1995-03-29 | 1995-03-29 | ロボットとハンドカメラを用いた視覚センサのキャリブレーション方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH08272414A true JPH08272414A (ja) | 1996-10-18 |
Family
ID=14102143
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP9414295A Pending JPH08272414A (ja) | 1995-03-29 | 1995-03-29 | ロボットとハンドカメラを用いた視覚センサのキャリブレーション方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH08272414A (ja) |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003050107A (ja) * | 2001-08-07 | 2003-02-21 | Matsushita Electric Ind Co Ltd | カメラ校正装置 |
KR100468857B1 (ko) * | 2002-11-21 | 2005-01-29 | 삼성전자주식회사 | 2차원 형상에 대한 투사 불변형 표현자를 이용한핸드/아이 캘리브레이션 방법 |
EP1555508A1 (en) * | 2004-01-16 | 2005-07-20 | Fanuc Ltd | Measuring system |
US6993450B2 (en) | 2002-01-31 | 2006-01-31 | Canon Kabushiki Kaisha | Position and orientation determination method and apparatus and storage medium |
EP1621297A1 (en) | 2004-07-28 | 2006-02-01 | Fanuc Ltd | Method of and device for re-calibrating three-dimensional visual sensor in robot system |
CN100338433C (zh) * | 2005-03-10 | 2007-09-19 | 新奥博为技术有限公司 | 激光扫描器与机器人的相对位置的标定方法 |
EP2033747A2 (en) | 2007-05-31 | 2009-03-11 | Fanuc Ltd | Robot simulation apparatus |
CN101915562A (zh) * | 2010-07-20 | 2010-12-15 | 中国航空工业集团公司西安飞机设计研究所 | 一种倾角传感器校准装置 |
JP2011235400A (ja) * | 2010-05-11 | 2011-11-24 | Daihen Corp | マニピュレータのキャリブレーション方法及びロボット制御システム |
CN104808490A (zh) * | 2015-03-10 | 2015-07-29 | 浙江工业大学 | 一种面向模具保护的基于回声状态网络估计图像雅克比矩阵的无标定视觉伺服控制方法 |
CN105451461A (zh) * | 2015-11-25 | 2016-03-30 | 四川长虹电器股份有限公司 | 基于scara机器人的pcb板定位方法 |
CN108519055A (zh) * | 2018-04-26 | 2018-09-11 | 华中科技大学 | 一种基于视觉的双机器人相对位姿在线标定方法 |
CN108655898A (zh) * | 2018-04-18 | 2018-10-16 | 上海发那科机器人有限公司 | 一种水龙头打磨程序的自动校正与生成方法 |
CN109129465A (zh) * | 2018-07-25 | 2019-01-04 | 广东奥普特科技股份有限公司 | 一种机器人手眼标定***及其工作流程 |
CN109341718A (zh) * | 2018-09-27 | 2019-02-15 | 北京伟景智能科技有限公司 | 基于多目视觉的标定方法和装置 |
CN110636923A (zh) * | 2017-05-17 | 2019-12-31 | 深圳配天智能技术研究院有限公司 | 一种机器人的运动控制方法、机器人及控制器 |
US10953540B2 (en) | 2017-01-17 | 2021-03-23 | Fanuc Corporation | Robot control device |
CN113733088A (zh) * | 2021-09-07 | 2021-12-03 | 河南大学 | 一种基于双目视觉的机械臂运动学自标定方法 |
WO2022091179A1 (ja) * | 2020-10-26 | 2022-05-05 | 株式会社Fuji | アームロボット |
-
1995
- 1995-03-29 JP JP9414295A patent/JPH08272414A/ja active Pending
Cited By (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003050107A (ja) * | 2001-08-07 | 2003-02-21 | Matsushita Electric Ind Co Ltd | カメラ校正装置 |
US6993450B2 (en) | 2002-01-31 | 2006-01-31 | Canon Kabushiki Kaisha | Position and orientation determination method and apparatus and storage medium |
KR100468857B1 (ko) * | 2002-11-21 | 2005-01-29 | 삼성전자주식회사 | 2차원 형상에 대한 투사 불변형 표현자를 이용한핸드/아이 캘리브레이션 방법 |
US7532949B2 (en) | 2004-01-16 | 2009-05-12 | Fanuc Ltd | Measuring system |
EP1555508A1 (en) * | 2004-01-16 | 2005-07-20 | Fanuc Ltd | Measuring system |
US7359817B2 (en) | 2004-07-28 | 2008-04-15 | Fanuc Ltd | Method of and device for re-calibrating three-dimensional visual sensor in robot system |
EP1621297A1 (en) | 2004-07-28 | 2006-02-01 | Fanuc Ltd | Method of and device for re-calibrating three-dimensional visual sensor in robot system |
CN100338433C (zh) * | 2005-03-10 | 2007-09-19 | 新奥博为技术有限公司 | 激光扫描器与机器人的相对位置的标定方法 |
EP2033747A2 (en) | 2007-05-31 | 2009-03-11 | Fanuc Ltd | Robot simulation apparatus |
JP2011235400A (ja) * | 2010-05-11 | 2011-11-24 | Daihen Corp | マニピュレータのキャリブレーション方法及びロボット制御システム |
CN101915562A (zh) * | 2010-07-20 | 2010-12-15 | 中国航空工业集团公司西安飞机设计研究所 | 一种倾角传感器校准装置 |
CN104808490B (zh) * | 2015-03-10 | 2017-04-19 | 浙江工业大学 | 一种面向模具保护的无标定视觉伺服控制方法 |
CN104808490A (zh) * | 2015-03-10 | 2015-07-29 | 浙江工业大学 | 一种面向模具保护的基于回声状态网络估计图像雅克比矩阵的无标定视觉伺服控制方法 |
CN105451461A (zh) * | 2015-11-25 | 2016-03-30 | 四川长虹电器股份有限公司 | 基于scara机器人的pcb板定位方法 |
US10953540B2 (en) | 2017-01-17 | 2021-03-23 | Fanuc Corporation | Robot control device |
CN110636923A (zh) * | 2017-05-17 | 2019-12-31 | 深圳配天智能技术研究院有限公司 | 一种机器人的运动控制方法、机器人及控制器 |
CN108655898A (zh) * | 2018-04-18 | 2018-10-16 | 上海发那科机器人有限公司 | 一种水龙头打磨程序的自动校正与生成方法 |
CN108655898B (zh) * | 2018-04-18 | 2020-11-03 | 上海发那科机器人有限公司 | 一种水龙头打磨程序的自动校正与生成方法 |
CN108519055A (zh) * | 2018-04-26 | 2018-09-11 | 华中科技大学 | 一种基于视觉的双机器人相对位姿在线标定方法 |
CN109129465A (zh) * | 2018-07-25 | 2019-01-04 | 广东奥普特科技股份有限公司 | 一种机器人手眼标定***及其工作流程 |
CN109129465B (zh) * | 2018-07-25 | 2021-12-14 | 广东奥普特科技股份有限公司 | 一种机器人手眼标定***及其工作流程 |
CN109341718A (zh) * | 2018-09-27 | 2019-02-15 | 北京伟景智能科技有限公司 | 基于多目视觉的标定方法和装置 |
CN109341718B (zh) * | 2018-09-27 | 2020-12-29 | 北京伟景智能科技有限公司 | 基于多目视觉的标定方法和装置 |
WO2022091179A1 (ja) * | 2020-10-26 | 2022-05-05 | 株式会社Fuji | アームロボット |
CN113733088A (zh) * | 2021-09-07 | 2021-12-03 | 河南大学 | 一种基于双目视觉的机械臂运动学自标定方法 |
CN113733088B (zh) * | 2021-09-07 | 2024-05-14 | 河南大学 | 一种基于双目视觉的机械臂运动学自标定方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH08272414A (ja) | ロボットとハンドカメラを用いた視覚センサのキャリブレーション方法 | |
CN101239469B (zh) | 机器人机构的校准装置及方法 | |
EP1936458B1 (en) | Device, method, program and recording medium for robot offline programming | |
EP1809446B1 (en) | Method and system to provide imporved accuracies in multi-jointed robots through kinematic robot model parameters determination | |
US7532949B2 (en) | Measuring system | |
Zhuang et al. | Simultaneous calibration of a robot and a hand-mounted camera | |
CN101100061B (zh) | 测量装置以及校准方法 | |
EP0358765B1 (en) | Automatic setting of tool tip point | |
JP4191080B2 (ja) | 計測装置 | |
Wang et al. | Calibration method of robot base frame using unit quaternion form | |
Angelidis et al. | Prediction and compensation of relative position error along industrial robot end-effector paths | |
EP0151417A1 (en) | Method for correcting systems of coordinates in a robot having visual sensor device and apparatus therefor | |
Driels et al. | Automated partial pose measurement system for manipulator calibration experiments | |
KR20080088165A (ko) | 로봇 캘리브레이션 방법 | |
Zhuang et al. | A linear solution to the kinematic parameter identification of robot manipulators | |
US10569418B2 (en) | Robot controller for executing calibration, measurement system and calibration method | |
RU2719207C1 (ru) | Способ калибровки кинематических параметров многостепенных манипуляторов | |
Zhuang | A self-calibration approach to extrinsic parameter estimation of stereo cameras | |
JPH06304893A (ja) | 位置決め機構のキャリブレーション方式 | |
JPH06230812A (ja) | 機械運動制御装置及び制御方法 | |
Scaria et al. | Cost Effective Real Time Vision Interface for Off Line Simulation of Fanuc Robots | |
JPH0774964B2 (ja) | ロボットの位置決め誤差補正方法 | |
Zhong et al. | Neuro-accuracy compensator for industrial robots | |
JPH012104A (ja) | ロボットの位置決め誤差補正方法 | |
JP3224687B2 (ja) | 3次元輪郭位置補正方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Effective date: 20040217 Free format text: JAPANESE INTERMEDIATE CODE: A131 |
|
A521 | Written amendment |
Effective date: 20040419 Free format text: JAPANESE INTERMEDIATE CODE: A523 |
|
A02 | Decision of refusal |
Effective date: 20040608 Free format text: JAPANESE INTERMEDIATE CODE: A02 |