(57)【要約】【課題】ワーク位置を高速・高精度で検出し、ロボットで作業を行う生産システムを提供するものである。【解決手段】ワーク1上の複数の特徴点2、3、4をカメラ11、12、13、14により撮像し、前記特徴点の画像平面内での２次元位置に基づいてロボット31、32、33、34によりワーク1に対して作業を行う生産システムにおいて、特徴点4を異なる２方向から撮像して３次元位置を算出する複眼視算出部5と、特徴点2、3を１方向から撮像して３次元位置を算出する単眼視算出部6a、6bと、複眼視で撮像する特徴点4と単眼視で撮像する特徴点2、3との点間距離を設定する特徴点間距離設定部7と、複眼視算出部5と単眼視算出部6a、6bとにより算出される異なる特徴点３点以上の３次元位置に基づいて所定の基準座標系における前記ワークの位置を算出するワーク位置算出部8とを備え、単眼視算出部6a、6bは、特徴点2、3の画像平面内での２次元位置と複眼視算出部5で算出した３次元位置と特徴点間距離に基づいて３次元位置を算出することを特徴とする生産システム。【選択図】図１
2005074617.tif 000002
【特許請求の範囲】
【請求項１】
ワーク上の複数の特徴点をカメラにより撮像し、前記特徴点の画像平面内での２次元位置に基づいてロボットにより前記ワークに対して作業を行う生産システムにおいて、
特徴点を異なる２方向から撮像して３次元位置を算出する複眼視算出部と、
特徴点を１方向から撮像して３次元位置を算出する単眼視算出部と、
前記複眼視で撮像する特徴点と前記単眼視で撮像する特徴点との点間距離を設定する特徴点間距離設定部と、
前記複眼視算出部と前記単眼視算出部とにより算出される異なる特徴点３点以上の３次元位置に基づいて所定の基準座標系における前記ワークの位置を算出するワーク位置算出部とを備え、
前記単眼視算出部は、特徴点の画像平面内での２次元位置と前記複眼視算出部で算出した３次元位置と前記特徴点間距離に基づいて３次元位置を算出することを特徴とする生産システム。
【請求項２】
前記ロボットは、複数台であり、複数のロボット制御装置により制御されており、前記ワーク位置算出部は、前記複数のロボット制御装置に一斉同報通信を行う位置通信部を備えることを特徴とする請求項１記載の生産システム。
【請求項３】
前記複眼視の対象となる特徴点を撮像するカメラは、前記ロボットに取り付けられていることを特徴とする請求項１乃至２記載の生産システム。
【請求項４】
前記所定の基準座標系は、前記複眼視算出部により算出される特徴点を原点とすることを特徴とする請求項１乃至３記載の生産システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットを有する生産システムに関する。
【背景技術】
【０００２】
自動車の車体などの大きなワークに対しては、複数のロボットを用いて所望の作業が行われている。車体などのワークは、高精度な位置決めを行うことが非常に困難であるために、作業を行うために、予めワークの位置を検出し、その検出結果に基づいてロボットが作業を行う技術が提案されている。
【０００３】
従来例を図３に示して説明する。ＴＶカメラ103、104、105がワーク上の同一直線上にない少なくとも３個の特徴点の画像を撮影し、画像処理装置107、108、109がこれらの各特徴点の画像平面内での座標を各々検出し、演算器100はこれらの座標に基づいて各特徴点のワールド座標系における座標および特徴点間の距離を演算する。この際、ＴＶカメラ103、104、105で求めたカメラ座標系上の２次元位置（ｕ，ｖ）の３組をカメラ座標系の３次元位置に変換した位置と、各特徴点間の３つの距離を用いて、３組の方程式を解いて、ワールド座標系でのワークの位置を検出している（例えば特許文献１）。
また、予め設定した３点間の距離と、検出した３点間の距離の差を関数として、その関数の最小値を与える位置をニュートン−ラプソン法を用いて算出するものがある（例えば、特許文献２）。
【特許文献１】特開平６−２１４６２２号公報（第４頁右列第３１行〜左列第３９行）
【特許文献２】特表平３−５０５９２４号公報（第６〜７頁）
【発明の開示】
【発明が解決しようとする課題】
【０００４】
以上に述べた従来の問題点は、基準となる３点間の距離から、検出した３点間の距離の差が最小となるように反復演算を行うために、処理時間が長くなるという問題がある。
【０００５】
本発明は、このような従来の構成が有していた問題を解決しようとするものであり、ワーク位置を高速・高精度で検出し、ロボットで作業を行う生産システムを提供するものである。
【課題を解決するための手段】
【０００６】
本発明の請求項１記載の生産システムは、ワーク上の複数の特徴点をカメラにより撮像し、前記特徴点の画像平面内での２次元位置に基づいてロボットにより前記ワークに対して作業を行う生産システムにおいて、特徴点を異なる２方向から撮像して３次元位置を算出する複眼視算出部と、特徴点を１方向から撮像して３次元位置を算出する単眼視算出部と、前記複眼視で撮像する特徴点と前記単眼視で撮像する特徴点との点間距離を設定する特徴点間距離設定部と、前記複眼視算出部と前記単眼視算出部とにより算出される異なる特徴点３点以上の３次元位置に基づいて所定の基準座標系における前記ワークの位置を算出するワーク位置算出部とを備え、前記単眼視算出部は、特徴点の画像平面内での２次元位置と前記複眼視算出部で算出した３次元位置と前記特徴点間距離に基づいて３次元位置を算出することを特徴とするものである。
【０００７】
本発明の請求項２記載の生産システムは、前記ロボットは、複数台であり、複数のロボット制御装置により制御されており、前記ワーク位置算出部は前記複数のロボット制御装置に一斉同報通信を行う位置通信部を備えることを特徴とするものである。
【０００８】
本発明の請求項３記載の生産システムは、前記複眼視の対象となる特徴点を撮像するカメラは、前記ロボットに取り付けられていることを特徴とするものである。
本発明の請求項４記載の生産システムは、前記所定の基準座標系は、前記複眼視算出部により算出される特徴点を原点とすることを特徴とするものである。
【発明の効果】
【０００９】
請求項１及び４記載の発明によれば、生産システムによれば、反復演算を行う必要がなく、高速かつ高精度でワーク位置を検出できる。
また請求項２記載の発明によれば、複数のロボット制御装置へ一斉同報通信を行うために、生産システムのタクトタイムが短縮できるという効果がある。
また、請求項３記載の発明によれば、カメラの台数を少なくすることが可能であり、低コストでシステムを構築できるという効果がある。
【発明を実施するための最良の形態】
【００１０】
以下、本発明の実施の形態として実施例を図１に基づいて説明する。
【実施例１】
【００１１】
図１において、ワーク1は、自動車ボディである。ワーク1に対する作業は、１つのロボットの動作範囲によりカバーできない。そのため、複数のロボットが必要となる。このワーク1は、通常、コンベアなどにより、作業位置まで搬送される。搬送されて、所定の位置に位置決めされた場合でも、ワーク1は大きいいため、数mm〜数10mmの位置決め誤差が生じている。ワーク1が位置決めされ、搬送による振動が無くなった時点で、カメラ11、12、13、14の４つの撮像装置により、ワーク1の特徴点2、3、4が撮像される。
カメラ11、12は、特徴点4を異なる方向から検出する。この検出方法は、256階調のグレースケールを用いた位置検出である。この位置検出方法は、パターンマッチングなどの画像処理方法を用いる。カメラ11とカメラ12の特徴点4の画像は、複眼視算出部5により３次元位置として算出される。
特徴点間距離設定部7には、そのワーク毎の検出する特徴点の点間距離を設定する。自動車ボディでは、車種に応じて検出する特徴点の点間距離が異なるために、その距離を設定しておく。
単眼視算出部6a、6bは、カメラ13、14の撮像装置の画像を画像処理する。各カメラの画像からカメラ座標系の２次元座標値を検出する。この画像処理方法は、カメラ11、12の画像を処理する方法と同一の方法でよい。算出された２次元座標値と特徴点間距離設定部7と複眼視算出部5の３次元位置から特徴点2、3の３次元位置を求める。
【００１２】
複眼視算出部5では、予めキャリブレーションデータを設定しておく。以下にキャリブレーションデータの算出方法について説明する。
３次元空間上の点Ｐ（ｘ，ｙ，ｚ）は、カメラ座標系上の点Ｋ（ｕ，ｖ，０）に射影される。この透視変換の一般式は、同次座標を用いて、４×４の行列式で表現される。
【００１３】
【数１】
2005074617.tif 000003
【００１４】
ここで、カメラ座標系の点では、ｗは使用してないので、３列は、
【００１５】
【数２】
2005074617.tif 000004
【００１６】
とすることができる。つまり、６点のカメラ座標系と６点のロボット座標系の座標値をもとに、変換行列Ｔを求める。  
上述のように変換行列Ｔをカメラ11とカメラ12について求める。
この変換行列Ｔをキャリブレーションデータとして、格納しておく。
【００１７】
つぎに、カメラ11とカメラ12で検出したカメラ座標系の座標値（ｕ，ｖ）について、式（１）と予め求めたキャリブレーションデータの変換行列Ｔとから、３次元位置を求める。カメラ11について、（ｕ，ｖ）が既知、（ｘ，ｙ，ｚ）が未知となり、式（１）を展開して２つの連立方程式が成立する。また、カメラ12についても同じように２つの連立方程式が成立する。ここで、カメラ11とカメラ12の未知数である（ｘ，ｙ，ｚ）は、同一の値であることから、これらの４つの連立方程式を解き、カメラ11とカメラ12が検出している特徴点4の３次元位置を求める。
【００１８】
特徴点間距離設定部7は、ワーク毎の特徴点の点間距離を設定する。この場合、複眼視算出部5で演算される特徴点4からの距離を設定する。
以下に単眼視算出部6aについて、詳細に説明する。単眼視算出部6aは、複眼視算出部5と同じように変換行列Ｔを求めるキャリブレーションを予め実行しておく。カメラ14で検出した特徴点3のカメラ座標系の座標値を（ｕ3，ｖ3）とする。また、特徴点4の複眼時算出部5で算出した３次元位置を（ｘ4,ｙ4, ｚ4）、特徴点間距離設定部7で設定した特徴点4と特徴点3の距離をＬとする。
変換行列Ｔと２次元座標値（ｕ3, ｖ3）とから未知数（ｘ，ｙ，ｚ）について２つの連立方程式が成り立つ。この２つの連立方程式は、２つの平面の方程式となる。また、２つの平面の方程式を整理すると、１つの直線の方程式となる。
次に、求めた直線の方程式と特徴点4からの距離がＬとなる点が、特徴点3の３次元位置として算出される。これは、特徴点4を原点として半径Ｌの球と求めた直線の方程式の交点である。この場合、交点は２つ存在するが、特徴点4、特徴点3及びカメラ14の特徴点4を検出する取り付け角度により、決定することができる。
同様に、特徴点2の３次元位置も単眼視算出部6bにより算出される。
【００１９】
上記の求めた特徴点2、3、4の３次元空間上の位置に基づいて、ワーク位置算出部8でワークの位置を算出する。ワーク位置算出部8では、準備段階では、ワーク座標系Ｍを作成し、実行段階では、ワーク座標系Ｗを作成する。以下に詳細を示す。
準備段階として、予め以下に示す（１）〜（６）を行う。
（１）予め基準となるワーク1を設置する。
（２）複眼視演算部5、単眼視算出部6a、6bにより３次元位置を求めておく。
（３）ロボット31、32、33、34により、ワーク1に対する作業位置を教示する。
（４）（２）で求めた３点によりワーク位置算出部8でワーク座標系Ｍを作成する。ワーク座標系の作成方法は、複眼視算出部5で検出する特徴点4を原点として、特徴点4−特徴点2をＸ軸方向とし、特徴点3をＸＹ平面上の点として定義する。
（５）（３）で教示した作業位置をワーク座標系Ｍ上の点に座標変換する。これらの作業位置（作業プログラム）Ｓを制御装置に格納しておく。
次に、検出時の実行を以下に示す。
（１）ワーク1を設置する。
（２）複眼視演算部5、単眼視算出部6a、6bにより３次元位置を求める。
（３）（２）で求めた３点によりワーク位置算出部8でワーク座標系Ｗを作成する。ワーク座標系の作成方法は、複眼視算出部5で検出する特徴点4を原点として、特徴点4−特徴点2をＸ軸方向とし、特徴点3をＸＹ平面上の点として定義する。
（４）準備段階で求めた作業プログラムＳをワーク座標系Ｗ上へ変換する。
【００２０】
位置通信部9は、ワーク位置算出部8で求めたワーク座標系Ｗをロボット制御装置21,22,23,24に一斉同報通信を行う。一斉同報通信とは、同じデータを複数の装置に同時に送信するものである。このように通信することで、通信に要する時間を大幅に短縮することができる。また、各ロボット制御装置からの応答に対する処理を省略できる。ただし、通信データに対しては、ＣＲＣなどの誤り検出コードを付加しておく。
【実施例２】
【００２１】
実施例２としては、カメラを11をロボットの手首に取り付けた場合を示す。この場合、実施例１と異なるのは、画像撮像タイミングの違いによる処理である。図２にカメラ11の例を示す。カメラ11は、カメラ11Lの位置にある。
まず、カメラ11L、13、14にて画像処理を行う。カメラ座標系の２次元位置を求めておく。次にカメラ11Rの位置にてカメラ座標系の２次元位置を求める。このように、ロボット34の手首部にカメラ11を取り付けることにより、カメラの台数を減少させることが可能となる。また、カメラ13、14をロボットに把持させることも可能である。
また、ワーク1に対して、ロボット31、32、33、34を使用したシステムの説明を行ったが、ロボット31、33に走行軸を使用したシステムを構築することも可能である。このようにすれば、ロボットの動作範囲を広くできるために、ロボット台数を減少できる。
【実施例３】
【００２２】
以上のように実施例１、２では、複眼視算出部5、単眼視算出部6、特徴点間距離設定部7、ワーク位置算出部8をロボット制御装置とは、別の装置として説明したが、図１の例では、ロボット制御装置21に内蔵することも可能である。その場合、ロボット制御装置21から各ロボット制御装置へ、ワーク座標系データを通信路を介して送信することにより、実現することができる。
【産業上の利用可能性】
【００２３】
本発明は、ロボットを有し、ワークの位置ずれを画像処理することで検出する生産システムに利用可能である。
【図面の簡単な説明】
【００２４】
【図１】本発明の実施例１のシステム構成図
【図２】本発明の実施例２のシステム構成図
【図３】従来技術の図
【符号の説明】
【００２５】
1：ワーク
2、3、4：特徴点
5：複眼視算出部
6a、6b：単眼視算出部
7：特徴点間距離設定部
8：ワーク位置算出部
9：位置通信部
11、12、13、14：カメラ
21、22、23、24：ロボット制御装置
31、32、33、34：ロボット
【図１】
2005074617.tif 000005
【図２】
2005074617.tif 000006
【図３】
2005074617.tif 000007