センサ位置姿勢計測方法
【課題】主センサ手段と補助センサ手段を用いて作業対象物に対する正確な計測を行う。
【解決手段】マニピュレータ2によりオンハンドカメラ3を移動し、オンハンドカメラ3より得られた画像情報を用いてグローバルカメラ6の三次元位置及び姿勢を計測するように構成し、作業対象物Wに対する作業を行うのに先立ち、オンハンドカメラ3によりグローバルカメラ6の位置及び姿勢を計測する。
【解決手段】マニピュレータ2によりオンハンドカメラ3を移動し、オンハンドカメラ3より得られた画像情報を用いてグローバルカメラ6の三次元位置及び姿勢を計測するように構成し、作業対象物Wに対する作業を行うのに先立ち、オンハンドカメラ3によりグローバルカメラ6の位置及び姿勢を計測する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、複数の移動可能なセンサから得られる画像情報を基に作業を遂行するシステムで用いられるセンサ位置姿勢計測方法に関するものである。
【背景技術】
【0002】
高品質の製品を安定して生産を行うため、また危険な作業や疲労を伴う検査等から人間を解放するためといった様々な目的のために、産業用ロボットは生産現場に導入されてきている。そして、自動車産業を始めとする多くの分野では、既に不可欠な存在となっている。
【0003】
従来からロボットのマニピュレータやそこに取り付けられた作業用工具を、予め定まった道筋に沿って移動、動作させることにより、単純作業を繰り返し行うことがされてきている。更に、マニピュレータに作業用工具の他に、オンハンドカメラを取り付け、オンハンドカメラによって取得された映像を基に、作業対象や環境を把握し、より高度な作業を行わせることも行われている。このように、ロボットに視覚機能を持たせる分野はロボットビジョンとも呼ばれ、多くの研究がなされている。また、コグネックス株式会社からはビジョンシステム「In−Sightシリーズ」が販売されており、産業用ロボットと組み合わせることで、ロボットに視覚機能を持たせることができる。
【0004】
更にオンハンドカメラの他に、環境内に作業領域全体を俯瞰するグローバルカメラを設置する手法が特許文献1により開示されている。これは、グローバルカメラとオンハンドカメラの両カメラからの映像情報を基に、ロボットの行動を決定する手法である。
【0005】
グローバルカメラとオンハンドカメラの両方を用いるシステムにおいては、それぞれのカメラによって取得される映像情報を基に、算出される作業空間内にある物体の位置や姿勢を一致させる必要がある。これには両カメラの相対位置及び相対姿勢が正確に分かっていることが必要十分な条件となる。
【0006】
オンハンドカメラの位置姿勢は、設置時に校正を行うことが可能である。すると、ロボット設置環境である作業環境を基準にした座標系でのオンハンドカメラの位置姿勢は、マニピュレータの位置姿勢から算出することができる。なお、以降のロボット設置環境を基準にした座標系をグローバル座標系と呼び、特に断りのない限り、物体の位置や姿勢はグローバル座標系における値とする。
【0007】
残る課題はグローバルカメラの位置姿勢を正確に知ることである。これには、作業環境に固定された治具等に、グローバルカメラを確実に固定し、設置時に位置姿勢を計測することで実現できる。
【0008】
ところで、工場での製品の生産は、製品ユーザの嗜好にきめ細かく対応するために大量生産から多品種少量生産へシフトしてきている。更に、高価な産業用ロボットシステムを有効活用するために、多くの作業を同一のロボットシステムでこなすように対応を迫られている。
【0009】
ロボットが行う作業内容によって、最適なグローバルカメラの配置は異なるが、作業内容が変更する度にグローバルカメラの位置姿勢を計測することは、生産ラインを停止させることにもつながり、生産性が低下することになる。そこで、グローバルカメラの位置姿勢計測を短時間で行うことが求められており、その1つの解決手法としては、グローバルカメラとその治具にエンコーダを取り付けることが考えられる。
【0010】
別の手法として、追加ハードウェアを殆ど必要とせずに、グローバルカメラの位置姿勢を計測する手法として、グローバルカメラ自体が環境内の予め校正されたランドマークを撮像する手法がある。これはランドマークがグローバルカメラによる撮像画像と同様に、観測できる位置をグローバルカメラの位置姿勢とする手法である。
【0011】
特許文献2にはこのような手法が開示されている。また、特許文献3には環境そのものをCGデータとして持ち、CG画像と撮像画像を比較するという、いわば環境全体をランドマークとする手法が開示されている。更に特許文献4には、カメラ同士が互いを見合うことで、相対位置を検出する手法が開示されている。
【先行技術文献】
【特許文献】
【0012】
【特許文献1】特開平3−73284号公報
【特許文献2】特開2005−57592号公報
【特許文献3】特開平7−237158号公報
【特許文献4】特開2007−327750号公報
【発明の概要】
【発明が解決しようとする課題】
【0013】
しかし、グローバルカメラとその治具にエンコーダを取り付ける手法では、治具の工作精度、治具を固定するフレーム等の支持体の剛性が求められ、更にエンコーダやその値を受信するインタフェースが必要となり、コストアップにつながるという課題がある。
【0014】
また特許文献2の手法は、グローバルカメラからランドマークが観測可能でなければならず、間に障害物があってはならない。そのため、作業対象によってランドマークが隠されてしまう状況や、ランドマークの設置が困難な環境では実施困難であるという課題がある。また、グローバルカメラの位置姿勢算出手法に三角測量の原理を用いている場合に、高精度の位置姿勢計測には複数のランドマーク、又は大きな形状のランドマークが観測できなければならない。この制約は特許文献2の手法の実施を、更に困難にしてしまうという問題がある。
【0015】
特許文献3の手法は、環境の全てをCGデータ化しなければならず、実施困難な場合も多いという問題がある。更に現場環境を変更する度にCGデータも変更しなければならず、メンテナンスコストが増大してしまうという課題がある。また、作業空間が不透明な仕切りによって囲まれていない場合に、作業空間の向こう側の映像をマスクするような仕組みを実装しなければならず、システムのコストアップにつながるという課題がある。
【0016】
特許文献4の手法は、背景差分によりカメラの位置を算出しているが、差分により違いが出るようなカメラ自体の首降りの仕組みを用意しなければならない課題がある。また、特許文献2と同様に、カメラ間に障害物があってはならないという課題がある。
【0017】
また、グローバルカメラを視覚補助装置と捉えれば、撮像装置である必要はなく、照明でもよいし、ビーム光、スリット光を出すグローバル照明であってもよい。この場合に、視覚補助装置の位置姿勢を計測するためには、別途に視覚補助装置と一体化したカメラが必要となり、システムのコストアップを招いてしまうという課題がある。
【0018】
本発明の目的は、上述の問題点を解消し、主センサ手段と補助センサ手段を用いて作業対象物の姿勢に対する正確な計測を行い得るセンサ位置姿勢計測方法を提供することにある。
【課題を解決するための手段】
【0019】
上記目的を達成するための本発明に係るセンサ位置姿勢計測方法は、作業対象物が存在し得る対象領域の画像情報を取得又は取得のための補助をする位置及び姿勢が定められた補助センサ手段と、前記作業対象物の少なくとも一部の画像情報又は位置姿勢情報を取得するため高精度に位置及び姿勢の移動指示が可能な主センサ移動手段を備えた主センサ手段とを備え、前記補助センサ手段及び前記主センサ手段によって取得した画像情報を基に、前記主センサ手段が移動すべき位置及び姿勢又は作業内容又はその双方を決定し、前記主センサ手段より得られた画像情報を用いて作業対象物に対する作業を遂行するシステムにおいて、前記主センサ移動手段により前記主センサ手段を移動し、前記主センサ手段より得られた画像情報を用いて前記補助センサ手段の三次元位置及び姿勢を計測するように構成し、前記作業対象物に対する作業を行うことに先立ち、前記主センサ手段により前記補助センサ手段の位置及び姿勢を計測することを特徴とする。
【発明の効果】
【0020】
本発明に係るセンサ位置姿勢計測方法によれば、治具の工作精度、治具が固定されているフレーム等の支持体の剛性が求められたり、エンコーダやその値を受信するインタフェースが必要となるコストアップが抑えられる。
【0021】
また、主センサは作業空間内を移動するので、作業対象によってランドマークが隠されてしまう状況が少ないという効果がある。また、作業環境内にランドマークを設置する必要がなく、ランドマークの設置が困難であるという状況を回避できる。
【図面の簡単な説明】
【0022】
【図1】実施例1のセンサ位置姿勢計測方法のシステムの構成図である。
【図2】コントローラの構成図である。
【図3】作業内容・位置姿勢対応表の例である。
【図4】アプリケーションコントローラの動作フローチャート図である。
【図5】三角測量の原理の説明図である。
【図6】実施例2のシステムの構成図である。
【図7】コントローラの構成図である。
【図8】コントローラの動作フローチャート図である。
【図9】実施例3のシステムの構成図である。
【図10】システムの構成図である。
【図11】コントローラの構成図である。
【図12】アプリケーションコントローラの動作フローチャート図である。
【図13】実施例4のコントローラの構成図である。
【図14】コントローラの動作フローチャート図である。
【発明を実施するための形態】
【0023】
本発明を図示の実施例に基づいて詳細に説明する。
【実施例1】
【0024】
図1は本実施例のセンサ位置姿勢計測方法を適用した物体追跡撮像システムの構成図である。ロボット1には可動腕であるマニピュレータ2が設けられており、またマニピュレータ2の先端には主センサ手段であるオンハンドカメラ3と、作業内容に適した作業用工具4が取り付けられている。マニピュレータ2、オンハンドカメラ3、作業用工具4の動作は、アプリケーションコントローラ5によって制御可能とされている。なお、外観検査等の作業用工具が不要な作業のみを行う場合に、作業用工具4は省略してもよい。
【0025】
コントローラ5には補助センサ手段であるグローバルカメラ6、グローバル照明手段7が接続されている。グローバルカメラ6は補助センサ移動手段である例えば直線状のレール8に沿って移動し、グローバル照明手段7は同様の補助センサ移動手段である例えば曲線状のレール9に沿って移動するようにされている。
【0026】
この場合の作業内容は、例えば山積みされている作業対象物Wを作業用工具4によって1つずつ摘み上げ、部品箱の所定の場所に整列するものである。この際に、山積みされている多くの作業対象物Wのうち、最も摘み上げ易いものを検出するために、グローバルカメラ6が撮像した画像情報の一部を用い、個々の作業対象物Wの精密な位置姿勢情報を得るためにロボット1のオンハンドカメラ3を用いる。
【0027】
このような構成では、例えばグローバルカメラ6は作業範囲全体が見渡せるように広範囲を撮像し、オンハンドカメラ3は作業対象物Wを作業用工具4によって確実に掴めるように、作業用工具4の付近の狭い対象領域を撮像する。
【0028】
このように、両カメラ6、3は協調して作業を遂行してゆくが、これらの制御はコントローラ5によって行われる。各カメラ6、3が取得した画像から、摘み上げる作業対象物Wを特定し、作業対象物Wの位置姿勢を計測し、マニピュレータ2を移動し摘み上げる、といった制御の具体的内容は本発明の範囲外であるので詳細な説明は省略する。
【0029】
ここで重要なことは、作業対象物Wの位置姿勢は、グローバルカメラ6によって撮像した画像から算出したものと、オンハンドカメラ3によって撮像した画像から算出されたものとで、等しくなければならないということである。これにはオンハンドカメラ3の位置姿勢と、グローバルカメラ6の位置姿勢とが正確に分かっていることが必要十分条件である。
【0030】
なお、グローバルカメラ6で山積みとなっている作業対象物Wの三次元形状を取得するために、スリット光やパターン光を投光するグローバル照明手段7を必要に応じて設置してもよい。この場合には、更にグローバル照明手段7の位置姿勢を正確に知る必要がある。
【0031】
作業内容によっては、グローバルカメラ6やグローバル照明手段7の最適な配置が異なる。例えば、摘み上げるべき作業対象物Wがばらばらに積み上げられているような状況では、個々の作業対象物Wの特徴的な頂点、エッジ等の個所が良く観測できるように、作業対象物Wの斜め上方にグローバルカメラ6を設置することが好ましい。また、作業対象物Wが整列されて山積みされている状況では、作業対象物Wを真横から撮影するような位置にグローバルカメラ6を設置すると、山の高さを認識し易い。このように、作業内容の変更に応じて、グローバルカメラ6やグローバル照明手段7を最適に配置することにより、作業対象物Wの認識精度が向上することが期待できる。
【0032】
グローバルカメラ6やグローバル照明手段7はそれぞれ1個に限られるものではなく、また位置姿勢の算出法も同様であるので、以降では特に断りがない限り、これらをまとめてグローバル機器と呼ぶ。補助センサ手段として機能するグローバル機器は一方又は双方を同時に使用してもよい。
【0033】
主センサ手段であるオンハンドカメラ3の主センサ移動手段による位置姿勢は、設置時に計測可能である。何故なら、ロボット1が作業環境に対してどのように設置されているかさえ分かれば、ロボット1の基台に対するマニピュレータ2の位置姿勢は、コントローラ5により取得・制御可能である。更に、マニピュレータ2に対するオンハンドカメラ3の位置姿勢もマニピュレータ2にオンハンドカメラ3を固定する際に計測可能である。
【0034】
グローバル機器の位置姿勢を算出する測定原理は、本計測方法の範囲外であるが、例えば三角測量の原理を用いることができる。この場合に、グローバル機器上の異なる3点の三次元位置が計測できれば、グローバル機器の位置姿勢が算出できる。
【0035】
図2はコントローラ5の内部構成図である。コントローラ5内のグローバル機器位置姿勢算出部5aの出力は、マニピュレータ移動指示部5bを介してロボット1に接続されていると共に、作業遂行部5cに接続されている。また、グローバル機器位置姿勢算出部5aには外部の作業内容指示手段10の出力が接続され、またオンハンドカメラ3の出力がオンハンドカメラ画像取得部5dを介して接続されている。更に、グローバル機器位置姿勢算出部5aは図3に示す作業内容・位置姿勢対応表を有している。
【0036】
図4は実施例1の動作フローチャート図であり、先ずグローバル機器として、グローバルカメラ6が1台だけの場合を考える。作業内容に応じてグローバルカメラ6を移動させた後に、作業内容を押しボタン等の作業内容指示手段10によって指示する。グローバル機器位置姿勢算出部5aは作業内容の指示を受信すると(ステップS11)、グローバルカメラ6を撮影するためのオンハンドカメラ3の位置姿勢1及び位置姿勢2を図3の作業内容・位置姿勢対応表を参照して求める(ステップS12)。
【0037】
作業内容・位置姿勢対応表は作業内容に対応するグローバルカメラ6の位置姿勢1、及びそれを撮影するオンハンドカメラ3の位置姿勢2が記録されており、図3はその例を示している。なお、これらの位置姿勢1、2の決め方については後述する。
【0038】
位置姿勢1、2を取得した後に、グローバル機器位置姿勢算出部5aはマニピュレータ移動指示部5bに対してオンハンドカメラ3を位置姿勢1に移動するような指示を行う(ステップS13)。マニピュレータ移動指示部5bはロボット1に対して指示された位置姿勢にオンハンドカメラ3を移動する。なお、本来はロボット1への移動指示はマニピュレータ2に対するものであるが、オンハンドカメラ3はマニピュレータ2に固定されているため、オンハンドカメラ3への移動指示は、マニピュレータ2への移動指示に1対1に変換できる。なお、以後は特に断りのない限り、オンハンドカメラ3への移動指示として説明する。
【0039】
オンハンドカメラ3を位置姿勢1に移動させた後に、オンハンドカメラ3でグローバルカメラ6を画像1として撮影する(ステップS14)。同様に、オンハンドカメラ3を位置姿勢2に移動させ(ステップS15)、オンハンドカメラ3でグローバルカメラ6を画像2として撮影する(ステップS16)。画像1、2はオンハンドカメラ画像取得部5dを通してグローバル機器位置姿勢算出部5aに渡される。
【0040】
グローバル機器位置姿勢算出部5aでは、三角測量の原理により画像1及び画像2から、グローバルカメラ6の位置姿勢を算出する(ステップS17)。なお、位置姿勢1と位置姿勢2は三角測量の原理における2個所の観測位置姿勢のことであり、計測点が撮像画像に含まれるような位置姿勢である。より具体的には、グローバルカメラ6上の異なる3点の全てが、画像1に含まれるようなオンハンドカメラ3の位置姿勢を位置姿勢1、画像2に含まれるような位置姿勢を位置姿勢2とする。
【0041】
図5は三角測量による説明図である。位置姿勢1の位置をP1、位置姿勢2の位置をP2、グローバルカメラ6上の位置計測をしようとしている位置をP3とする。また、位置P1から位置P3を見る方向が位置姿勢1の姿勢、位置P2から位置P3を見る方向が位置姿勢2の姿勢である。図5は位置P1、P2、P3を通る平面における各点の関係を示し、位置P3を同定することは、距離L21及びL22を求めることと同値である。
【0042】
先ず、位置P1及びP2から距離L1を算出し、また角度θ1は画像1から取得でき、角度θ2は画像2から取得できる。正弦定理を用いて、次のように距離L21及びL22が求められる。
L21=L1・(sinθ1・sinθ2)/sin(θ1+θ2)…(1)
L22=L1・(cosθ1・sinθ2)/sin(θ1+θ2)…(2)
【0043】
グローバルカメラ6が或る程度離れているという仮定、つまり距離L21がL1に比べて或る程度大きければ、式(1)及び(2)から、安定して値を算出するには下記の条件1、2を満たすようにすればよい。
【0044】
(条件1)距離L1を大きくする。
(条件2)角度θ1とθ2を近い値とする。
【0045】
これらの2条件をなるべく満たすように、位置姿勢1、2を決定するが、位置姿勢1、2はグローバルカメラ6の概略の位置姿勢が定まれば決定が可能である。そのため、作業内容に応じて予めグローバルカメラ6の位置と対応する位置姿勢1、2を作業内容・位置姿勢対応表にしておくことができ、グローバル機器位置姿勢算出部5aはこれを参照して位置姿勢1、2を算出する。
【0046】
作業内容・位置姿勢対応表の作業IDは、コントローラ5で処理を行い易くするために付された作業内容を区別する一意的な番号である。作業内容に応じたグローバルカメラ6の大まかな位置姿勢を予め計測しておき、その値を作業内容・位置姿勢対応表に書き込んである。また、その位置姿勢にあるグローバルカメラ6の位置姿勢を最も安定して計測できるように、条件1、2を満たす位置姿勢1、2を予め算出しておき、作業内容・位置姿勢対応表に書き込んである。なお、位置姿勢1、2は条件1、2を満たすように実行時に算出してもよく、その場合は作業内容・位置姿勢対応表に値を書き込んでおく必要はない。
【0047】
このようにして、グローバルカメラ6の位置姿勢が算出できるが、グローバル照明手段7を備える場合は、グローバル照明手段7用の作業内容・位置姿勢対応表を予め作成しておく。そして、グローバルカメラ6に対するものと同様の処理を、グローバル照明手段7に対しても行い、グローバル照明手段7の位置姿勢の算出も行う。
【0048】
このように、全てのグローバル機器に対して作業内容・位置姿勢対応表を作成しておくことにより、全てのグローバル機器について位置姿勢を算出することができる。算出したグローバル機器の位置姿勢は作業遂行部5cに渡され、以降はグローバル機器とオンハンドカメラ3が協調しながら指示した作業を遂行してゆく。
【0049】
また、算出したグローバル機器の位置姿勢の精度は、オンハンドカメラ3の位置姿勢の精度による。しかし、ロボット1から得られるマニピュレータ2の位置姿勢の値の精度が十分に高いと考えられる場合に、各グローバル機器に取り付けるエンコーダ等のハードウェアの追加なしに高精度な計測が可能となる。
【0050】
なお、グローバル機器はレール8、9のような移動に限られるものではなく、二次元或いは三次元上を動くようにしても支障はない。
【実施例2】
【0051】
図6はグローバルカメラ6をレール8上で移動させたり、姿勢を変えたりするグローバルカメラ移動手段11、グローバル照明手段7をレール9上で移動させたり、姿勢を変えたりするグローバル照明移動手段12を備えたシステムの構成図である。また、以後、グローバルカメラ移動手段11、グローバル照明移動手段12についてはグローバル機器移動手段と呼ぶ。
【0052】
図7はコントローラ5の構成図であり、図2の構成図において、グローバル機器位置姿勢算出部5aの出力は、グローバル機器移動指示部5eを介してグローバル機器移動手段11、12に接続されている。
【0053】
図8は実施例2の動作フローチャート図である。作業内容の変更があった際に、作業開始に先立って作業内容指示手段10により、グローバル機器位置姿勢算出部5aに作業内容の変更が伝えられると(ステップS21)、全グローバル機器の位置姿勢の算出は完了しているかを判定する(ステップS22)。算出が完了していなければ、作業内容に適したグローバル機器の移動先位置姿勢を算出し(ステップS23)、更にグローバル機器を撮影するオンハンドカメラ3の撮影位置姿勢の位置姿勢1、位置姿勢2を算出する(ステップS24)。ここで、ステップS23やステップS24で算出する位置姿勢は、実施例1と同様に予め用意した作業内容・位置姿勢対応表を参照して導出する。
【0054】
次いで、グローバル機器移動指示部5eに指示を出し、グローバル機器をステップS23で算出された移動先位置姿勢に移動する(ステップS25)。この後に、オンハンドカメラ3を用いてグローバル機器の位置姿勢を計測するが、この処理は図4のステップS13〜S17と同様である。以上のステップS23以降の処理を、全グローバル機器に対して行う。
【実施例3】
【0055】
実施例2では、作業内容の変更は作業内容指示手段10によって指示を出していたが、作業内容識別部5fを設けることにより、人手を介さずにグローバル機器の位置姿勢を計測することも可能である。
【0056】
図9及び図10は実施例3のシステムの構成図であり、作業対象物Wは作業パレット13内に入れられており、作業パレット13には作業内容を表す指標Iが付されている。図9では作業パレット13内に山積みに置かれているばらばらの作業対象物Wを1個ずつ摘み上げ、図示しない部品箱の所定の場所に整列しておくという作業内容を想定している。この場合に、作業対象物Wの頂点、エッジ等の画像特徴が良好に得られるように、グローバルカメラ6を水平よりも僅かに上方の斜め上方の角度からグローバル照明手段7を配置している。
【0057】
図10においては、何本かのタワー状に積み上げられている円盤状の作業対象物Wを1個ずつ摘み上げ、不図示の部品箱の所定の場所に整列しておくという作業内容を想定している。この場合に、積み上げられた作業対象物Wの高さが良く分かるように、グローバルカメラ6は作業対象物Wをほぼ真横から観測できる位置に、グローバル照明手段7は稍々上方に配置されている。
【0058】
なお、ここでは2つの作業内容を例として挙げたが、2つである必要はなく、更に多くの作業内容を想定してもよい。また、作業内容は例示したものでなくとも支障はない。作業内容により最適なグローバル機器の配置が異なる状況があり、本実施例はそれに対処できることを示すために例として挙げたものである。
【0059】
図11は本実施例が適用されるコントローラ5の構成図である。オンハンドカメラ画像取得部5dからの出力を受け、グローバル機器位置姿勢算出部5a、マニピュレータ移動指示部5bに出力する作業内容識別部5fが設けられている。
【0060】
図12は実施例3の動作フローチャート図であり、図8と比べて作業内容変更指示を受信するステップS21の代りに、ステップS31〜S33を処理する。これは作業内容識別部5fによって行われ、作業内容の識別を行う部分であり、
先ず、オンハンドカメラ3が指標Iが良く観察できる位置に移動するように、マニピュレータ移動指示部5bに対して指示を出力する(ステップS31)。作業パレット13や指標Iの位置を全作業で共通化しておけば、この位置は既知のものとなる。指標Iは作業内容を表し、例えばバーコードを用いることにより、作業内容をコード化することができる。
【0061】
次に、オンハンドカメラ画像取得部5dを通してオンハンドカメラ3が撮像した指標Iの画像を取得し(ステップS32)、作業内容識別部5fはこの画像を基に作業内容を識別する(ステップS33)。バーコードを撮像した画像からコード内容を認識する処理は一般的な技術であり、本発明の範囲外であるのでその説明は省略する。識別した作業内容は、グローバル機器位置姿勢算出部5aに送られ、実施例2と同様の処理が行われる。
【0062】
なお、指標Iの識別を行うために、オンハンドカメラ3から得られる画像を用いたが、専用のカメラやバーコードスキャナを用いてもよい。また、指標Iはバーコードに限られるものではなく、RFID等を用いてもよい。更に、指標Iは作業パレット13に標示されているが、作業内容と同期していれば作業パレット13に標示しなくともよい。例えば、ベルトコンベアによって作業対象物Wが流れてくる場合に、指標Iの後に対応する作業対象物Wを流すようにしてもよい。
【実施例4】
【0063】
図13は実施例4のコントローラ5の構成図である。外部のグローバル機器6、7の出力はグローバル機器情報取得部5gをグローバル機器特徴抽出部5hを介してグローバル機器微小移動指示生成部5iに接続されている。また、グローバル機器微小移動指示生成部5iの出力はグローバル機器移動指示部5eに接続され、更に作業内容識別部5fの出力が接続されている。
【0064】
実施例3では、グローバルカメラ6、グローバル照明手段7を移動した後に、その位置姿勢を計測しているが、作業遂行に当っては、より高い品質の情報が得られる位置にグローバル機器を設置した方が好ましい。より高い品質とは、例えば山積みされた作業対象物Wを撮像した画像から頂点特徴を抽出し、それを基にして、作業対象物Wの位置姿勢等の作業に必要な情報を取得する。例えば、頂点特徴がより確実に取得できるように、「明度のコントラストが高い」や、「作業対象物W以外の物体や照明が撮像画像内に存在しない」、また「作業対象物W自体が他の物体によって隠されない」ようにする。
【0065】
実際に頂点特徴を検出した上で、得られた頂点特徴の個数が多いものほど高品質であるとしてもよい。このような高い品質の情報が得られるグローバル機器の配置は、個々のケースにおいて作業対象物Wの配置状況や、システムが動作している環境によって多少変化する。
【0066】
そこで、先ずグローバル機器を作業内容・位置姿勢対応表を参照して得られる作業内容に適した位置に移動した後に、グローバル機器の位置姿勢を微小量移動させながら、最も高い品質の出力が得られる位置姿勢で停止させる。その後に、グローバル機器の位置姿勢を計測する。
【0067】
図14は実施例4の動作フローチャート図である。最初にグローバル機器を移動させると、ステップS31〜S25までは図12と同様であり、その次から説明する。先ず、全てのグローバル機器を作業内容に適した位置姿勢に移動させる。そして、各グローバル機器について以下の処理を行う。
【0068】
前記グローバル機器の位置姿勢を算出したかを判断する(ステップS41)。算出が完了していなければ、グローバル機器情報取得部5gでグローバル機器に対応したグローバル機器から情報を得る(ステップS42)。例えば、設置調整対象のグローバル機器がグローバルカメラ6であれば、グローバルカメラ6から画像を取得する。また投光器の場合には、投光器に対応したグローバルカメラ6から画像を取得する。
【0069】
得られた情報からグローバル機器特徴抽出部5hによって特徴抽出を行う(ステップS43)。この特徴は前述したように作業内容によって異なるが、例えば得られた画像から頂点特徴を抽出しその個数を数える。ここで得られた特徴が高品質のものであると判断できた場合は(ステップS44)、図4のステップS13〜S17の処理と同様にグローバル機器の位置姿勢を計測する。
【0070】
もし高品質のものではない場合は、現在のグローバル機器の位置姿勢を中心として微小移動を行うように、グローバル機器微小移動指示生成部5iで微小移動指示を生成し(ステップS45)、グローバル機器を移動させる(ステップS46)。
【0071】
グローバル機器から得られた特徴が高品質のものかどうかは、抽出された頂点特徴の個数がグローバル機器の位置姿勢を微小移動させた範囲内で、極大(又は最大)となる位置姿勢を最高品質が得られる位置姿勢とすればよい。また、特徴としてグローバルカメラ6から得られた撮像画像の明度コントラストを用いることもできる。この場合は、グローバル機器の位置姿勢を微小移動させた範囲内で明度コントラストが極大(又は最大)となる位置姿勢を最高品質が得られる位置姿勢とすればよい。
【0072】
更に、これらの特徴を複合的に用いて品質評価を行ってもよい。複合評価の手法は本実施例の範囲外であるが、例えば各特徴からスコアを出し、それらの重み付き平均を求める。重み付き平均の値がグローバル機器の位置姿勢を微小移動させた範囲内で極大(又は最大)となる位置姿勢を、最高品質が得られる位置姿勢とすればよい。
【0073】
グローバル機器を微小量移動させた場合は、ステップS42からの処理を繰り返す。このような処理により、各グローバル機器を作業内容により適した位置姿勢にした上で、位置姿勢の計測を行うことができる。
【産業上の利用可能性】
【0074】
本発明は位置姿勢計測手法に関し、特に作業空間内に設置され作業中は固定されている視覚補助装置と、ロボットのマニピュレータに取り付けられたカメラの両者を用いて、作業を遂行してゆくロボットシステムに用いると好適である。また、主センサはカメラ、補助センサはカメラ、照明手段、を用いたが、他の例えば物体検知センサであってもよい。
【符号の説明】
【0075】
1 ロボット
2 マニピュレータ
3 オンハンドカメラ
4 作業用工具
5 アプリケーションコントローラ
5a グローバル機器位置姿勢算出部
5b マニピュレータ移動指示部
5c 作業遂行部
5d オンハンドカメラ画像取得部
5e グローバル機器移動指示部
5f 作業内容識別部
5g グローバル機器情報取得部
5h グローバル機器特徴抽出部
5i グローバル機器微小移動指示生成部
6 グローバルカメラ
7 グローバル照明手段
8、9 レール
10 作業内容指示手段
11 グローバルカメラ移動手段
12 グローバル照明移動手段
W 作業対象物
【技術分野】
【0001】
本発明は、複数の移動可能なセンサから得られる画像情報を基に作業を遂行するシステムで用いられるセンサ位置姿勢計測方法に関するものである。
【背景技術】
【0002】
高品質の製品を安定して生産を行うため、また危険な作業や疲労を伴う検査等から人間を解放するためといった様々な目的のために、産業用ロボットは生産現場に導入されてきている。そして、自動車産業を始めとする多くの分野では、既に不可欠な存在となっている。
【0003】
従来からロボットのマニピュレータやそこに取り付けられた作業用工具を、予め定まった道筋に沿って移動、動作させることにより、単純作業を繰り返し行うことがされてきている。更に、マニピュレータに作業用工具の他に、オンハンドカメラを取り付け、オンハンドカメラによって取得された映像を基に、作業対象や環境を把握し、より高度な作業を行わせることも行われている。このように、ロボットに視覚機能を持たせる分野はロボットビジョンとも呼ばれ、多くの研究がなされている。また、コグネックス株式会社からはビジョンシステム「In−Sightシリーズ」が販売されており、産業用ロボットと組み合わせることで、ロボットに視覚機能を持たせることができる。
【0004】
更にオンハンドカメラの他に、環境内に作業領域全体を俯瞰するグローバルカメラを設置する手法が特許文献1により開示されている。これは、グローバルカメラとオンハンドカメラの両カメラからの映像情報を基に、ロボットの行動を決定する手法である。
【0005】
グローバルカメラとオンハンドカメラの両方を用いるシステムにおいては、それぞれのカメラによって取得される映像情報を基に、算出される作業空間内にある物体の位置や姿勢を一致させる必要がある。これには両カメラの相対位置及び相対姿勢が正確に分かっていることが必要十分な条件となる。
【0006】
オンハンドカメラの位置姿勢は、設置時に校正を行うことが可能である。すると、ロボット設置環境である作業環境を基準にした座標系でのオンハンドカメラの位置姿勢は、マニピュレータの位置姿勢から算出することができる。なお、以降のロボット設置環境を基準にした座標系をグローバル座標系と呼び、特に断りのない限り、物体の位置や姿勢はグローバル座標系における値とする。
【0007】
残る課題はグローバルカメラの位置姿勢を正確に知ることである。これには、作業環境に固定された治具等に、グローバルカメラを確実に固定し、設置時に位置姿勢を計測することで実現できる。
【0008】
ところで、工場での製品の生産は、製品ユーザの嗜好にきめ細かく対応するために大量生産から多品種少量生産へシフトしてきている。更に、高価な産業用ロボットシステムを有効活用するために、多くの作業を同一のロボットシステムでこなすように対応を迫られている。
【0009】
ロボットが行う作業内容によって、最適なグローバルカメラの配置は異なるが、作業内容が変更する度にグローバルカメラの位置姿勢を計測することは、生産ラインを停止させることにもつながり、生産性が低下することになる。そこで、グローバルカメラの位置姿勢計測を短時間で行うことが求められており、その1つの解決手法としては、グローバルカメラとその治具にエンコーダを取り付けることが考えられる。
【0010】
別の手法として、追加ハードウェアを殆ど必要とせずに、グローバルカメラの位置姿勢を計測する手法として、グローバルカメラ自体が環境内の予め校正されたランドマークを撮像する手法がある。これはランドマークがグローバルカメラによる撮像画像と同様に、観測できる位置をグローバルカメラの位置姿勢とする手法である。
【0011】
特許文献2にはこのような手法が開示されている。また、特許文献3には環境そのものをCGデータとして持ち、CG画像と撮像画像を比較するという、いわば環境全体をランドマークとする手法が開示されている。更に特許文献4には、カメラ同士が互いを見合うことで、相対位置を検出する手法が開示されている。
【先行技術文献】
【特許文献】
【0012】
【特許文献1】特開平3−73284号公報
【特許文献2】特開2005−57592号公報
【特許文献3】特開平7−237158号公報
【特許文献4】特開2007−327750号公報
【発明の概要】
【発明が解決しようとする課題】
【0013】
しかし、グローバルカメラとその治具にエンコーダを取り付ける手法では、治具の工作精度、治具を固定するフレーム等の支持体の剛性が求められ、更にエンコーダやその値を受信するインタフェースが必要となり、コストアップにつながるという課題がある。
【0014】
また特許文献2の手法は、グローバルカメラからランドマークが観測可能でなければならず、間に障害物があってはならない。そのため、作業対象によってランドマークが隠されてしまう状況や、ランドマークの設置が困難な環境では実施困難であるという課題がある。また、グローバルカメラの位置姿勢算出手法に三角測量の原理を用いている場合に、高精度の位置姿勢計測には複数のランドマーク、又は大きな形状のランドマークが観測できなければならない。この制約は特許文献2の手法の実施を、更に困難にしてしまうという問題がある。
【0015】
特許文献3の手法は、環境の全てをCGデータ化しなければならず、実施困難な場合も多いという問題がある。更に現場環境を変更する度にCGデータも変更しなければならず、メンテナンスコストが増大してしまうという課題がある。また、作業空間が不透明な仕切りによって囲まれていない場合に、作業空間の向こう側の映像をマスクするような仕組みを実装しなければならず、システムのコストアップにつながるという課題がある。
【0016】
特許文献4の手法は、背景差分によりカメラの位置を算出しているが、差分により違いが出るようなカメラ自体の首降りの仕組みを用意しなければならない課題がある。また、特許文献2と同様に、カメラ間に障害物があってはならないという課題がある。
【0017】
また、グローバルカメラを視覚補助装置と捉えれば、撮像装置である必要はなく、照明でもよいし、ビーム光、スリット光を出すグローバル照明であってもよい。この場合に、視覚補助装置の位置姿勢を計測するためには、別途に視覚補助装置と一体化したカメラが必要となり、システムのコストアップを招いてしまうという課題がある。
【0018】
本発明の目的は、上述の問題点を解消し、主センサ手段と補助センサ手段を用いて作業対象物の姿勢に対する正確な計測を行い得るセンサ位置姿勢計測方法を提供することにある。
【課題を解決するための手段】
【0019】
上記目的を達成するための本発明に係るセンサ位置姿勢計測方法は、作業対象物が存在し得る対象領域の画像情報を取得又は取得のための補助をする位置及び姿勢が定められた補助センサ手段と、前記作業対象物の少なくとも一部の画像情報又は位置姿勢情報を取得するため高精度に位置及び姿勢の移動指示が可能な主センサ移動手段を備えた主センサ手段とを備え、前記補助センサ手段及び前記主センサ手段によって取得した画像情報を基に、前記主センサ手段が移動すべき位置及び姿勢又は作業内容又はその双方を決定し、前記主センサ手段より得られた画像情報を用いて作業対象物に対する作業を遂行するシステムにおいて、前記主センサ移動手段により前記主センサ手段を移動し、前記主センサ手段より得られた画像情報を用いて前記補助センサ手段の三次元位置及び姿勢を計測するように構成し、前記作業対象物に対する作業を行うことに先立ち、前記主センサ手段により前記補助センサ手段の位置及び姿勢を計測することを特徴とする。
【発明の効果】
【0020】
本発明に係るセンサ位置姿勢計測方法によれば、治具の工作精度、治具が固定されているフレーム等の支持体の剛性が求められたり、エンコーダやその値を受信するインタフェースが必要となるコストアップが抑えられる。
【0021】
また、主センサは作業空間内を移動するので、作業対象によってランドマークが隠されてしまう状況が少ないという効果がある。また、作業環境内にランドマークを設置する必要がなく、ランドマークの設置が困難であるという状況を回避できる。
【図面の簡単な説明】
【0022】
【図1】実施例1のセンサ位置姿勢計測方法のシステムの構成図である。
【図2】コントローラの構成図である。
【図3】作業内容・位置姿勢対応表の例である。
【図4】アプリケーションコントローラの動作フローチャート図である。
【図5】三角測量の原理の説明図である。
【図6】実施例2のシステムの構成図である。
【図7】コントローラの構成図である。
【図8】コントローラの動作フローチャート図である。
【図9】実施例3のシステムの構成図である。
【図10】システムの構成図である。
【図11】コントローラの構成図である。
【図12】アプリケーションコントローラの動作フローチャート図である。
【図13】実施例4のコントローラの構成図である。
【図14】コントローラの動作フローチャート図である。
【発明を実施するための形態】
【0023】
本発明を図示の実施例に基づいて詳細に説明する。
【実施例1】
【0024】
図1は本実施例のセンサ位置姿勢計測方法を適用した物体追跡撮像システムの構成図である。ロボット1には可動腕であるマニピュレータ2が設けられており、またマニピュレータ2の先端には主センサ手段であるオンハンドカメラ3と、作業内容に適した作業用工具4が取り付けられている。マニピュレータ2、オンハンドカメラ3、作業用工具4の動作は、アプリケーションコントローラ5によって制御可能とされている。なお、外観検査等の作業用工具が不要な作業のみを行う場合に、作業用工具4は省略してもよい。
【0025】
コントローラ5には補助センサ手段であるグローバルカメラ6、グローバル照明手段7が接続されている。グローバルカメラ6は補助センサ移動手段である例えば直線状のレール8に沿って移動し、グローバル照明手段7は同様の補助センサ移動手段である例えば曲線状のレール9に沿って移動するようにされている。
【0026】
この場合の作業内容は、例えば山積みされている作業対象物Wを作業用工具4によって1つずつ摘み上げ、部品箱の所定の場所に整列するものである。この際に、山積みされている多くの作業対象物Wのうち、最も摘み上げ易いものを検出するために、グローバルカメラ6が撮像した画像情報の一部を用い、個々の作業対象物Wの精密な位置姿勢情報を得るためにロボット1のオンハンドカメラ3を用いる。
【0027】
このような構成では、例えばグローバルカメラ6は作業範囲全体が見渡せるように広範囲を撮像し、オンハンドカメラ3は作業対象物Wを作業用工具4によって確実に掴めるように、作業用工具4の付近の狭い対象領域を撮像する。
【0028】
このように、両カメラ6、3は協調して作業を遂行してゆくが、これらの制御はコントローラ5によって行われる。各カメラ6、3が取得した画像から、摘み上げる作業対象物Wを特定し、作業対象物Wの位置姿勢を計測し、マニピュレータ2を移動し摘み上げる、といった制御の具体的内容は本発明の範囲外であるので詳細な説明は省略する。
【0029】
ここで重要なことは、作業対象物Wの位置姿勢は、グローバルカメラ6によって撮像した画像から算出したものと、オンハンドカメラ3によって撮像した画像から算出されたものとで、等しくなければならないということである。これにはオンハンドカメラ3の位置姿勢と、グローバルカメラ6の位置姿勢とが正確に分かっていることが必要十分条件である。
【0030】
なお、グローバルカメラ6で山積みとなっている作業対象物Wの三次元形状を取得するために、スリット光やパターン光を投光するグローバル照明手段7を必要に応じて設置してもよい。この場合には、更にグローバル照明手段7の位置姿勢を正確に知る必要がある。
【0031】
作業内容によっては、グローバルカメラ6やグローバル照明手段7の最適な配置が異なる。例えば、摘み上げるべき作業対象物Wがばらばらに積み上げられているような状況では、個々の作業対象物Wの特徴的な頂点、エッジ等の個所が良く観測できるように、作業対象物Wの斜め上方にグローバルカメラ6を設置することが好ましい。また、作業対象物Wが整列されて山積みされている状況では、作業対象物Wを真横から撮影するような位置にグローバルカメラ6を設置すると、山の高さを認識し易い。このように、作業内容の変更に応じて、グローバルカメラ6やグローバル照明手段7を最適に配置することにより、作業対象物Wの認識精度が向上することが期待できる。
【0032】
グローバルカメラ6やグローバル照明手段7はそれぞれ1個に限られるものではなく、また位置姿勢の算出法も同様であるので、以降では特に断りがない限り、これらをまとめてグローバル機器と呼ぶ。補助センサ手段として機能するグローバル機器は一方又は双方を同時に使用してもよい。
【0033】
主センサ手段であるオンハンドカメラ3の主センサ移動手段による位置姿勢は、設置時に計測可能である。何故なら、ロボット1が作業環境に対してどのように設置されているかさえ分かれば、ロボット1の基台に対するマニピュレータ2の位置姿勢は、コントローラ5により取得・制御可能である。更に、マニピュレータ2に対するオンハンドカメラ3の位置姿勢もマニピュレータ2にオンハンドカメラ3を固定する際に計測可能である。
【0034】
グローバル機器の位置姿勢を算出する測定原理は、本計測方法の範囲外であるが、例えば三角測量の原理を用いることができる。この場合に、グローバル機器上の異なる3点の三次元位置が計測できれば、グローバル機器の位置姿勢が算出できる。
【0035】
図2はコントローラ5の内部構成図である。コントローラ5内のグローバル機器位置姿勢算出部5aの出力は、マニピュレータ移動指示部5bを介してロボット1に接続されていると共に、作業遂行部5cに接続されている。また、グローバル機器位置姿勢算出部5aには外部の作業内容指示手段10の出力が接続され、またオンハンドカメラ3の出力がオンハンドカメラ画像取得部5dを介して接続されている。更に、グローバル機器位置姿勢算出部5aは図3に示す作業内容・位置姿勢対応表を有している。
【0036】
図4は実施例1の動作フローチャート図であり、先ずグローバル機器として、グローバルカメラ6が1台だけの場合を考える。作業内容に応じてグローバルカメラ6を移動させた後に、作業内容を押しボタン等の作業内容指示手段10によって指示する。グローバル機器位置姿勢算出部5aは作業内容の指示を受信すると(ステップS11)、グローバルカメラ6を撮影するためのオンハンドカメラ3の位置姿勢1及び位置姿勢2を図3の作業内容・位置姿勢対応表を参照して求める(ステップS12)。
【0037】
作業内容・位置姿勢対応表は作業内容に対応するグローバルカメラ6の位置姿勢1、及びそれを撮影するオンハンドカメラ3の位置姿勢2が記録されており、図3はその例を示している。なお、これらの位置姿勢1、2の決め方については後述する。
【0038】
位置姿勢1、2を取得した後に、グローバル機器位置姿勢算出部5aはマニピュレータ移動指示部5bに対してオンハンドカメラ3を位置姿勢1に移動するような指示を行う(ステップS13)。マニピュレータ移動指示部5bはロボット1に対して指示された位置姿勢にオンハンドカメラ3を移動する。なお、本来はロボット1への移動指示はマニピュレータ2に対するものであるが、オンハンドカメラ3はマニピュレータ2に固定されているため、オンハンドカメラ3への移動指示は、マニピュレータ2への移動指示に1対1に変換できる。なお、以後は特に断りのない限り、オンハンドカメラ3への移動指示として説明する。
【0039】
オンハンドカメラ3を位置姿勢1に移動させた後に、オンハンドカメラ3でグローバルカメラ6を画像1として撮影する(ステップS14)。同様に、オンハンドカメラ3を位置姿勢2に移動させ(ステップS15)、オンハンドカメラ3でグローバルカメラ6を画像2として撮影する(ステップS16)。画像1、2はオンハンドカメラ画像取得部5dを通してグローバル機器位置姿勢算出部5aに渡される。
【0040】
グローバル機器位置姿勢算出部5aでは、三角測量の原理により画像1及び画像2から、グローバルカメラ6の位置姿勢を算出する(ステップS17)。なお、位置姿勢1と位置姿勢2は三角測量の原理における2個所の観測位置姿勢のことであり、計測点が撮像画像に含まれるような位置姿勢である。より具体的には、グローバルカメラ6上の異なる3点の全てが、画像1に含まれるようなオンハンドカメラ3の位置姿勢を位置姿勢1、画像2に含まれるような位置姿勢を位置姿勢2とする。
【0041】
図5は三角測量による説明図である。位置姿勢1の位置をP1、位置姿勢2の位置をP2、グローバルカメラ6上の位置計測をしようとしている位置をP3とする。また、位置P1から位置P3を見る方向が位置姿勢1の姿勢、位置P2から位置P3を見る方向が位置姿勢2の姿勢である。図5は位置P1、P2、P3を通る平面における各点の関係を示し、位置P3を同定することは、距離L21及びL22を求めることと同値である。
【0042】
先ず、位置P1及びP2から距離L1を算出し、また角度θ1は画像1から取得でき、角度θ2は画像2から取得できる。正弦定理を用いて、次のように距離L21及びL22が求められる。
L21=L1・(sinθ1・sinθ2)/sin(θ1+θ2)…(1)
L22=L1・(cosθ1・sinθ2)/sin(θ1+θ2)…(2)
【0043】
グローバルカメラ6が或る程度離れているという仮定、つまり距離L21がL1に比べて或る程度大きければ、式(1)及び(2)から、安定して値を算出するには下記の条件1、2を満たすようにすればよい。
【0044】
(条件1)距離L1を大きくする。
(条件2)角度θ1とθ2を近い値とする。
【0045】
これらの2条件をなるべく満たすように、位置姿勢1、2を決定するが、位置姿勢1、2はグローバルカメラ6の概略の位置姿勢が定まれば決定が可能である。そのため、作業内容に応じて予めグローバルカメラ6の位置と対応する位置姿勢1、2を作業内容・位置姿勢対応表にしておくことができ、グローバル機器位置姿勢算出部5aはこれを参照して位置姿勢1、2を算出する。
【0046】
作業内容・位置姿勢対応表の作業IDは、コントローラ5で処理を行い易くするために付された作業内容を区別する一意的な番号である。作業内容に応じたグローバルカメラ6の大まかな位置姿勢を予め計測しておき、その値を作業内容・位置姿勢対応表に書き込んである。また、その位置姿勢にあるグローバルカメラ6の位置姿勢を最も安定して計測できるように、条件1、2を満たす位置姿勢1、2を予め算出しておき、作業内容・位置姿勢対応表に書き込んである。なお、位置姿勢1、2は条件1、2を満たすように実行時に算出してもよく、その場合は作業内容・位置姿勢対応表に値を書き込んでおく必要はない。
【0047】
このようにして、グローバルカメラ6の位置姿勢が算出できるが、グローバル照明手段7を備える場合は、グローバル照明手段7用の作業内容・位置姿勢対応表を予め作成しておく。そして、グローバルカメラ6に対するものと同様の処理を、グローバル照明手段7に対しても行い、グローバル照明手段7の位置姿勢の算出も行う。
【0048】
このように、全てのグローバル機器に対して作業内容・位置姿勢対応表を作成しておくことにより、全てのグローバル機器について位置姿勢を算出することができる。算出したグローバル機器の位置姿勢は作業遂行部5cに渡され、以降はグローバル機器とオンハンドカメラ3が協調しながら指示した作業を遂行してゆく。
【0049】
また、算出したグローバル機器の位置姿勢の精度は、オンハンドカメラ3の位置姿勢の精度による。しかし、ロボット1から得られるマニピュレータ2の位置姿勢の値の精度が十分に高いと考えられる場合に、各グローバル機器に取り付けるエンコーダ等のハードウェアの追加なしに高精度な計測が可能となる。
【0050】
なお、グローバル機器はレール8、9のような移動に限られるものではなく、二次元或いは三次元上を動くようにしても支障はない。
【実施例2】
【0051】
図6はグローバルカメラ6をレール8上で移動させたり、姿勢を変えたりするグローバルカメラ移動手段11、グローバル照明手段7をレール9上で移動させたり、姿勢を変えたりするグローバル照明移動手段12を備えたシステムの構成図である。また、以後、グローバルカメラ移動手段11、グローバル照明移動手段12についてはグローバル機器移動手段と呼ぶ。
【0052】
図7はコントローラ5の構成図であり、図2の構成図において、グローバル機器位置姿勢算出部5aの出力は、グローバル機器移動指示部5eを介してグローバル機器移動手段11、12に接続されている。
【0053】
図8は実施例2の動作フローチャート図である。作業内容の変更があった際に、作業開始に先立って作業内容指示手段10により、グローバル機器位置姿勢算出部5aに作業内容の変更が伝えられると(ステップS21)、全グローバル機器の位置姿勢の算出は完了しているかを判定する(ステップS22)。算出が完了していなければ、作業内容に適したグローバル機器の移動先位置姿勢を算出し(ステップS23)、更にグローバル機器を撮影するオンハンドカメラ3の撮影位置姿勢の位置姿勢1、位置姿勢2を算出する(ステップS24)。ここで、ステップS23やステップS24で算出する位置姿勢は、実施例1と同様に予め用意した作業内容・位置姿勢対応表を参照して導出する。
【0054】
次いで、グローバル機器移動指示部5eに指示を出し、グローバル機器をステップS23で算出された移動先位置姿勢に移動する(ステップS25)。この後に、オンハンドカメラ3を用いてグローバル機器の位置姿勢を計測するが、この処理は図4のステップS13〜S17と同様である。以上のステップS23以降の処理を、全グローバル機器に対して行う。
【実施例3】
【0055】
実施例2では、作業内容の変更は作業内容指示手段10によって指示を出していたが、作業内容識別部5fを設けることにより、人手を介さずにグローバル機器の位置姿勢を計測することも可能である。
【0056】
図9及び図10は実施例3のシステムの構成図であり、作業対象物Wは作業パレット13内に入れられており、作業パレット13には作業内容を表す指標Iが付されている。図9では作業パレット13内に山積みに置かれているばらばらの作業対象物Wを1個ずつ摘み上げ、図示しない部品箱の所定の場所に整列しておくという作業内容を想定している。この場合に、作業対象物Wの頂点、エッジ等の画像特徴が良好に得られるように、グローバルカメラ6を水平よりも僅かに上方の斜め上方の角度からグローバル照明手段7を配置している。
【0057】
図10においては、何本かのタワー状に積み上げられている円盤状の作業対象物Wを1個ずつ摘み上げ、不図示の部品箱の所定の場所に整列しておくという作業内容を想定している。この場合に、積み上げられた作業対象物Wの高さが良く分かるように、グローバルカメラ6は作業対象物Wをほぼ真横から観測できる位置に、グローバル照明手段7は稍々上方に配置されている。
【0058】
なお、ここでは2つの作業内容を例として挙げたが、2つである必要はなく、更に多くの作業内容を想定してもよい。また、作業内容は例示したものでなくとも支障はない。作業内容により最適なグローバル機器の配置が異なる状況があり、本実施例はそれに対処できることを示すために例として挙げたものである。
【0059】
図11は本実施例が適用されるコントローラ5の構成図である。オンハンドカメラ画像取得部5dからの出力を受け、グローバル機器位置姿勢算出部5a、マニピュレータ移動指示部5bに出力する作業内容識別部5fが設けられている。
【0060】
図12は実施例3の動作フローチャート図であり、図8と比べて作業内容変更指示を受信するステップS21の代りに、ステップS31〜S33を処理する。これは作業内容識別部5fによって行われ、作業内容の識別を行う部分であり、
先ず、オンハンドカメラ3が指標Iが良く観察できる位置に移動するように、マニピュレータ移動指示部5bに対して指示を出力する(ステップS31)。作業パレット13や指標Iの位置を全作業で共通化しておけば、この位置は既知のものとなる。指標Iは作業内容を表し、例えばバーコードを用いることにより、作業内容をコード化することができる。
【0061】
次に、オンハンドカメラ画像取得部5dを通してオンハンドカメラ3が撮像した指標Iの画像を取得し(ステップS32)、作業内容識別部5fはこの画像を基に作業内容を識別する(ステップS33)。バーコードを撮像した画像からコード内容を認識する処理は一般的な技術であり、本発明の範囲外であるのでその説明は省略する。識別した作業内容は、グローバル機器位置姿勢算出部5aに送られ、実施例2と同様の処理が行われる。
【0062】
なお、指標Iの識別を行うために、オンハンドカメラ3から得られる画像を用いたが、専用のカメラやバーコードスキャナを用いてもよい。また、指標Iはバーコードに限られるものではなく、RFID等を用いてもよい。更に、指標Iは作業パレット13に標示されているが、作業内容と同期していれば作業パレット13に標示しなくともよい。例えば、ベルトコンベアによって作業対象物Wが流れてくる場合に、指標Iの後に対応する作業対象物Wを流すようにしてもよい。
【実施例4】
【0063】
図13は実施例4のコントローラ5の構成図である。外部のグローバル機器6、7の出力はグローバル機器情報取得部5gをグローバル機器特徴抽出部5hを介してグローバル機器微小移動指示生成部5iに接続されている。また、グローバル機器微小移動指示生成部5iの出力はグローバル機器移動指示部5eに接続され、更に作業内容識別部5fの出力が接続されている。
【0064】
実施例3では、グローバルカメラ6、グローバル照明手段7を移動した後に、その位置姿勢を計測しているが、作業遂行に当っては、より高い品質の情報が得られる位置にグローバル機器を設置した方が好ましい。より高い品質とは、例えば山積みされた作業対象物Wを撮像した画像から頂点特徴を抽出し、それを基にして、作業対象物Wの位置姿勢等の作業に必要な情報を取得する。例えば、頂点特徴がより確実に取得できるように、「明度のコントラストが高い」や、「作業対象物W以外の物体や照明が撮像画像内に存在しない」、また「作業対象物W自体が他の物体によって隠されない」ようにする。
【0065】
実際に頂点特徴を検出した上で、得られた頂点特徴の個数が多いものほど高品質であるとしてもよい。このような高い品質の情報が得られるグローバル機器の配置は、個々のケースにおいて作業対象物Wの配置状況や、システムが動作している環境によって多少変化する。
【0066】
そこで、先ずグローバル機器を作業内容・位置姿勢対応表を参照して得られる作業内容に適した位置に移動した後に、グローバル機器の位置姿勢を微小量移動させながら、最も高い品質の出力が得られる位置姿勢で停止させる。その後に、グローバル機器の位置姿勢を計測する。
【0067】
図14は実施例4の動作フローチャート図である。最初にグローバル機器を移動させると、ステップS31〜S25までは図12と同様であり、その次から説明する。先ず、全てのグローバル機器を作業内容に適した位置姿勢に移動させる。そして、各グローバル機器について以下の処理を行う。
【0068】
前記グローバル機器の位置姿勢を算出したかを判断する(ステップS41)。算出が完了していなければ、グローバル機器情報取得部5gでグローバル機器に対応したグローバル機器から情報を得る(ステップS42)。例えば、設置調整対象のグローバル機器がグローバルカメラ6であれば、グローバルカメラ6から画像を取得する。また投光器の場合には、投光器に対応したグローバルカメラ6から画像を取得する。
【0069】
得られた情報からグローバル機器特徴抽出部5hによって特徴抽出を行う(ステップS43)。この特徴は前述したように作業内容によって異なるが、例えば得られた画像から頂点特徴を抽出しその個数を数える。ここで得られた特徴が高品質のものであると判断できた場合は(ステップS44)、図4のステップS13〜S17の処理と同様にグローバル機器の位置姿勢を計測する。
【0070】
もし高品質のものではない場合は、現在のグローバル機器の位置姿勢を中心として微小移動を行うように、グローバル機器微小移動指示生成部5iで微小移動指示を生成し(ステップS45)、グローバル機器を移動させる(ステップS46)。
【0071】
グローバル機器から得られた特徴が高品質のものかどうかは、抽出された頂点特徴の個数がグローバル機器の位置姿勢を微小移動させた範囲内で、極大(又は最大)となる位置姿勢を最高品質が得られる位置姿勢とすればよい。また、特徴としてグローバルカメラ6から得られた撮像画像の明度コントラストを用いることもできる。この場合は、グローバル機器の位置姿勢を微小移動させた範囲内で明度コントラストが極大(又は最大)となる位置姿勢を最高品質が得られる位置姿勢とすればよい。
【0072】
更に、これらの特徴を複合的に用いて品質評価を行ってもよい。複合評価の手法は本実施例の範囲外であるが、例えば各特徴からスコアを出し、それらの重み付き平均を求める。重み付き平均の値がグローバル機器の位置姿勢を微小移動させた範囲内で極大(又は最大)となる位置姿勢を、最高品質が得られる位置姿勢とすればよい。
【0073】
グローバル機器を微小量移動させた場合は、ステップS42からの処理を繰り返す。このような処理により、各グローバル機器を作業内容により適した位置姿勢にした上で、位置姿勢の計測を行うことができる。
【産業上の利用可能性】
【0074】
本発明は位置姿勢計測手法に関し、特に作業空間内に設置され作業中は固定されている視覚補助装置と、ロボットのマニピュレータに取り付けられたカメラの両者を用いて、作業を遂行してゆくロボットシステムに用いると好適である。また、主センサはカメラ、補助センサはカメラ、照明手段、を用いたが、他の例えば物体検知センサであってもよい。
【符号の説明】
【0075】
1 ロボット
2 マニピュレータ
3 オンハンドカメラ
4 作業用工具
5 アプリケーションコントローラ
5a グローバル機器位置姿勢算出部
5b マニピュレータ移動指示部
5c 作業遂行部
5d オンハンドカメラ画像取得部
5e グローバル機器移動指示部
5f 作業内容識別部
5g グローバル機器情報取得部
5h グローバル機器特徴抽出部
5i グローバル機器微小移動指示生成部
6 グローバルカメラ
7 グローバル照明手段
8、9 レール
10 作業内容指示手段
11 グローバルカメラ移動手段
12 グローバル照明移動手段
W 作業対象物
【特許請求の範囲】
【請求項1】
作業対象物が存在し得る対象領域の画像情報を取得又は取得のための補助をする位置及び姿勢が定められた補助センサ手段と、前記作業対象物の少なくとも一部の画像情報又は位置姿勢情報を取得するため高精度に位置及び姿勢の移動指示が可能な主センサ移動手段を備えた主センサ手段とを備え、前記補助センサ手段及び前記主センサ手段によって取得した画像情報を基に、前記主センサ手段が移動すべき位置及び姿勢又は作業内容又はその双方を決定し、前記主センサ手段より得られた画像情報を用いて作業対象物に対する作業を遂行するシステムにおいて、前記主センサ移動手段により前記主センサ手段を移動し、前記主センサ手段より得られた画像情報を用いて前記補助センサ手段の三次元位置及び姿勢を計測するように構成し、前記作業対象物に対する作業を行うことに先立ち、前記主センサ手段により前記補助センサ手段の位置及び姿勢を計測することを特徴とするセンサ位置姿勢計測方法。
【請求項2】
前記補助センサ手段は投光手段及び撮像手段の何れか一方、又は双方を含み、前記主センサ手段は前記投光手段及び撮像手段の位置及び姿勢を計測することを特徴とする請求項1に記載のセンサ位置姿勢計測方法。
【請求項3】
前記補助センサ手段は補助センサ移動手段により、位置及び姿勢の何れか一方又は双方を移動できるように構成し、前記作業対象物に対する作業を行うのに先立ち、前記補助センサ手段は前記補助センサ移動手段により前記作業に適した予め定められた位置及び姿勢に移動した後に、前記補助センサ手段の位置及び姿勢を計測することを特徴とする請求項1又は2に記載のセンサ位置姿勢計測方法。
【請求項4】
作業内容識別手段を備え、作業内容が変更された際に前記作業内容識別手段により前記作業内容を識別し、前記識別した作業内容を遂行するために適した前記補助センサ手段の位置及び姿勢を算出し、前記補助センサ移動手段により前記補助センサ手段で算出した位置及び姿勢に移動した後に、前記補助センサ手段の位置及び姿勢を計測することを特徴とする請求項3に記載のセンサ位置姿勢計測方法。
【請求項5】
前記補助センサ手段を前記算出した位置及び姿勢に移動した後に、前記補助センサ手段による出力の精度を高めるために、前記補助センサ移動手段により前記補助センサ手段を更に微小量移動させ、前記補助センサ手段の位置及び姿勢を計測することを特徴とする請求項3又は4に記載のセンサ位置姿勢計測方法。
【請求項1】
作業対象物が存在し得る対象領域の画像情報を取得又は取得のための補助をする位置及び姿勢が定められた補助センサ手段と、前記作業対象物の少なくとも一部の画像情報又は位置姿勢情報を取得するため高精度に位置及び姿勢の移動指示が可能な主センサ移動手段を備えた主センサ手段とを備え、前記補助センサ手段及び前記主センサ手段によって取得した画像情報を基に、前記主センサ手段が移動すべき位置及び姿勢又は作業内容又はその双方を決定し、前記主センサ手段より得られた画像情報を用いて作業対象物に対する作業を遂行するシステムにおいて、前記主センサ移動手段により前記主センサ手段を移動し、前記主センサ手段より得られた画像情報を用いて前記補助センサ手段の三次元位置及び姿勢を計測するように構成し、前記作業対象物に対する作業を行うことに先立ち、前記主センサ手段により前記補助センサ手段の位置及び姿勢を計測することを特徴とするセンサ位置姿勢計測方法。
【請求項2】
前記補助センサ手段は投光手段及び撮像手段の何れか一方、又は双方を含み、前記主センサ手段は前記投光手段及び撮像手段の位置及び姿勢を計測することを特徴とする請求項1に記載のセンサ位置姿勢計測方法。
【請求項3】
前記補助センサ手段は補助センサ移動手段により、位置及び姿勢の何れか一方又は双方を移動できるように構成し、前記作業対象物に対する作業を行うのに先立ち、前記補助センサ手段は前記補助センサ移動手段により前記作業に適した予め定められた位置及び姿勢に移動した後に、前記補助センサ手段の位置及び姿勢を計測することを特徴とする請求項1又は2に記載のセンサ位置姿勢計測方法。
【請求項4】
作業内容識別手段を備え、作業内容が変更された際に前記作業内容識別手段により前記作業内容を識別し、前記識別した作業内容を遂行するために適した前記補助センサ手段の位置及び姿勢を算出し、前記補助センサ移動手段により前記補助センサ手段で算出した位置及び姿勢に移動した後に、前記補助センサ手段の位置及び姿勢を計測することを特徴とする請求項3に記載のセンサ位置姿勢計測方法。
【請求項5】
前記補助センサ手段を前記算出した位置及び姿勢に移動した後に、前記補助センサ手段による出力の精度を高めるために、前記補助センサ移動手段により前記補助センサ手段を更に微小量移動させ、前記補助センサ手段の位置及び姿勢を計測することを特徴とする請求項3又は4に記載のセンサ位置姿勢計測方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【公開番号】特開2011−133313(P2011−133313A)
【公開日】平成23年7月7日(2011.7.7)
【国際特許分類】
【出願番号】特願2009−292367(P2009−292367)
【出願日】平成21年12月24日(2009.12.24)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
【公開日】平成23年7月7日(2011.7.7)
【国際特許分類】
【出願日】平成21年12月24日(2009.12.24)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
[ Back to top ]