(57)【要約】【課題】ワークと撮像装置との相対位置を変化させながら撮像するときにも、ブレの少ない画像を生成する方法を提供する。【解決手段】撮像装置を用いてワークを撮像する撮像方法にかかわる。ロボット３を用いて撮像装置２０を移動する撮像装置移動工程と、撮像装置移動工程と並行して行われ部品５を撮像する撮像工程と、撮像装置２０と部品５とが相対移動する移動軌跡を演算する軌跡算出工程と、移動軌跡の情報を用いて撮像した画像を補正する補正工程と、を有し、撮像装置移動工程ではロボット３の姿勢を検出し、軌跡算出工程ではロボット３における姿勢情報を用いて部品５に対する撮像装置２０の移動軌跡を算出する。【選択図】図４
2010161686.tif 000002
【特許請求の範囲】
【請求項１】
撮像装置を用いてワークを撮像する撮像方法であって、
変形する可動部を用いて前記撮像装置と前記ワークとのうち少なくとも一方を移動する移動工程と、
前記移動工程と並行して行われ前記ワークを撮像する撮像工程と、
前記撮像装置と前記ワークとが相対移動する移動軌跡を演算する軌跡算出工程と、
前記移動軌跡の情報を用いて撮像した画像を補正する補正工程と、を有し、
前記移動工程では前記可動部の姿勢を検出し、前記軌跡算出工程では可動部における前記姿勢の情報である姿勢情報を用いて前記ワークに対する前記撮像装置の前記移動軌跡を算出することを特徴とする撮像方法。
【請求項２】
請求項１に記載の撮像方法であって、
前記移動工程では前記姿勢情報を記憶部に記憶し、
前記軌跡算出工程では前記記憶部に記憶した前記姿勢情報を再生して前記撮像装置の移動軌跡を演算することを特徴とする撮像方法。
【請求項３】
請求項２に記載の撮像方法であって、
前記移動工程において前記撮像装置が撮像するとき、前記撮像装置の光軸方向と直交する方向に前記可動部は前記撮像装置を移動させることを特徴とする撮像方法。
【請求項４】
請求項３に記載の撮像方法であって、
前記補正工程では前記ワークに対する前記撮像装置の前記移動軌跡の情報を用いて点像分布関数を演算し、前記点像分布関数を用いて復元フィルタを演算し、前記復元フィルタを用いて前記画像を補正することを特徴とする撮像方法。
【請求項５】
請求項１〜４のいずれか一項に記載の撮像方法を用いたピッキング方法であって、
前記補正工程にて補正した補正画像を用いて前記ワークの場所を検出する位置認識工程と、
前記ワークを把持して移動するワーク移動工程と、を有することを特徴とするピッキング方法。
【請求項６】
ワークを把持して移動するピッキング装置であって、
前記ワークを把持する把持部と、
前記ワークを撮像する撮像装置と、
前記ワーク及び前記撮像装置のうち少なくとも一方を移動する可動部と、
前記可動部の姿勢を検出して前記可動部の姿勢を示す姿勢情報を出力する可動部姿勢検出部と、
前記姿勢情報を用いて前記撮像装置と前記ワークとが相対移動する移動軌跡を演算する軌跡演算部と、
前記移動軌跡の情報を用いて前記撮像装置が画像を補正した補正画像を形成する補正部と、
前記補正画像を用いて前記ワークの場所を検出する位置検出部と、を有し、
前記軌跡演算部は前記姿勢情報を用いて前記移動軌跡を算出することを特徴とするピッキング装置。
【請求項７】
請求項６に記載のピッキング装置であって、
前記可動部姿勢検出部が検出する前記姿勢情報を記憶する記憶部を有し、
前記軌跡演算部は前記姿勢情報を再生して入力することを特徴とするピッキング装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、撮像方法、ピッキング方法及びピッキング装置にかかわり、特に、撮像した画像を補正する方法に関するものである。
【背景技術】
【０００２】
ワークを把持するときや加工するときに、視覚センサ等を用いてワークの位置を認識することがある。その後、ワークを把持または加工する。このとき、ワークと視覚センサとを停止して撮像して静止画像を生成する。次に、静止画像を分析することによりワークの位置や姿勢を精度良く検出する方法が一般的に行われている。生産性良く撮像する方法が特許文献１に開示されている。それによると、ワークに対して視覚センサ（以後、撮像装置と称す）を移動して接近させる。そして、撮像装置を停止せずにワークを撮影して、画像を生成する。次に、撮像装置の角度と画像とを分析することによりワークの位置を検出していた。
【０００３】
撮像装置がワークを撮像するときに、撮像する間にワークが移動するとワークの画像の輪郭が曖昧になるブレが形成される。そして、ブレを補正して輪郭を明確にする方法が特許文献２に開示されている。それによると、撮影した画像からブレの方向や大きさを示す点広がり関数（ＰｏｉｎｔＳｐｒｅａｄＦｕｎｃｔｉｏｎ、ＰＳＦともいわれ、以後、点像分布関数と称す）を算出した後、点像分布関数を用いて画像復元フィルタを生成する。そして、画像復元フィルタを撮像した画像に適用することにより画像のブレを補正していた。
【０００４】
撮影した画像からブレを小さくするには、点像分布関数を精度良く検出することが有効であることが知られている。そして、点像分布関数を精度良く検出する方法が特許文献３に開示されている。それによると、撮像装置に角速度センサを配置して、撮像装置が移動するときの角速度を検出している。そして、撮像装置における角速度の推移を用いて点像分布関数を検出していた。
【０００５】
【特許文献１】特開平６−９９３８１号公報
【特許文献２】特開２００７−１８３８４２号公報
【特許文献３】特開２００８−１１４２４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
ワークと撮像装置との相対位置を変化させながら撮像するとき、撮像した画像にブレが生ずる。このとき、ワークの形状、姿勢、位置等の情報を正確に検出することが難しかった。そこで、ワークと撮像装置との相対位置を変化させながら撮像するときにも、ブレの少ない画像を生成する方法が望まれていた。
【課題を解決するための手段】
【０００７】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態または適用例として実現することが可能である。
【０００８】
［適用例１］
本適用例にかかる撮像方法は、撮像装置を用いてワークを撮像する撮像方法であって、変形する可動部を用いて前記撮像装置と前記ワークとのうち少なくとも一方を移動する移動工程と、前記移動工程と並行して行われ前記ワークを撮像する撮像工程と、前記撮像装置と前記ワークとが相対移動する移動軌跡を演算する軌跡算出工程と、前記移動軌跡の情報を用いて撮像した画像を補正する補正工程と、を有し、前記移動工程では前記可動部の姿勢を検出し、前記軌跡算出工程では可動部における前記姿勢の情報である姿勢情報を用いて前記ワークに対する前記撮像装置の前記移動軌跡を算出することを特徴とする。
【０００９】
この撮像方法によれば、ワークと撮像装置とのうち少なくとも一方を移動しながらワークを撮像する。このとき、撮像する画像にはブレが生成され易くなっている。移動工程では可動部の姿勢を検出する。そして、軌跡算出工程では可動部の姿勢が変化する情報を用いてワークに対する撮像装置の移動軌跡を算出している。そして、補正工程では移動軌跡の情報を用いることにより撮像した画像の補正を行っている。従って、ワークの位置と撮像装置の位置とを直接検出しなくても撮像した画像を補正することができる。
【００１０】
［適用例２］
上記適用例にかかる撮像方法において、前記移動工程では前記姿勢情報を記憶部に記憶し、前記軌跡算出工程では前記記憶部に記憶した前記姿勢情報を再生して前記撮像装置の移動軌跡を演算することを特徴とする。
【００１１】
この撮像方法によれば、移動工程では可動部の姿勢の情報を記憶部に記憶している。そして、軌跡算出工程では可動部の姿勢の情報を再生している。従って、移動工程と軌跡算出工程とは並行せずに行うことができる。軌跡算出工程における演算速度に影響されることなく、移動工程では撮像装置とワークとのうち少なくとも一方を移動することができる。
【００１２】
［適用例３］
上記適用例にかかる撮像方法において、前記移動工程において前記撮像装置が撮像するとき、前記撮像装置の光軸方向と直交する方向に前記可動部は前記撮像装置を移動させることを特徴とする。
【００１３】
この撮像方法によれば、撮像装置とワークとの距離の変動を小さくして撮像することができる。従って、撮像する画像はピンぼけの少ない画像にすることができる。このピンぼけは撮像装置が撮像するときに焦点が合わないことによりぼけることを示す。
【００１４】
［適用例４］
上記適用例にかかる撮像方法において、前記補正工程では前記ワークに対する前記撮像装置の前記移動軌跡の情報を用いて点像分布関数を演算し、前記点像分布関数を用いて復元フィルタを演算し、前記復元フィルタを用いて前記画像を補正することを特徴とする。
【００１５】
この撮像方法によれば、ワークに対する撮像装置の移動軌跡を用いて点像分布関数を演算する為、精度良く点像分布関数を算出することができる。その結果、精度良く画像を補正することができる。
【００１６】
［適用例５］
上記適用例にかかる撮像方法を用いたピッキング方法において、前記補正工程にて補正した補正画像を用いて前記ワークの場所を検出する位置認識工程と、前記ワークを把持して移動するワーク移動工程と、を有することを特徴とする。
【００１７】
このピッキング方法によれば、精度良く補正された画像を用いてワークの場所を検出している。従って、ワークの位置を精度良く認識することができる。
【００１８】
［適用例６］
本適用例にかかるピッキング装置は、ワークを把持して移動するピッキング装置であって、前記ワークを把持する把持部と、前記ワークを撮像する撮像装置と、前記ワーク及び前記撮像装置のうち少なくとも一方を移動する可動部と、前記可動部の姿勢を検出して前記可動部の姿勢を示す姿勢情報を出力する可動部姿勢検出部と、前記姿勢情報を用いて前記撮像装置と前記ワークとが相対移動する移動軌跡を演算する軌跡演算部と、前記移動軌跡の情報を用いて前記撮像装置が画像を補正した補正画像を形成する補正部と、前記補正画像を用いて前記ワークの場所を検出する位置検出部と、を有し、前記軌跡演算部は前記姿勢情報を用いて前記移動軌跡を算出することを特徴とする。
【００１９】
このピッキング装置によれば、可動部がワーク及び撮像装置のうち少なくとも一方を移動しながら、撮像装置がワークを撮像することができる。そして、可動部姿勢検出部が可動部の姿勢を検出した後、軌跡演算部がワークに対する撮像装置の移動軌跡の情報を算出する。そして、補正部は移動軌跡の情報を用いて撮像した画像を補正する。位置検出部は補正した画像を用いてワークの場所を検出し、把持部はワークを把持して移動することができる。
【００２０】
［適用例７］
上記適用例にかかるピッキング装置において、前記可動部姿勢検出部が検出する前記姿勢情報を記憶する記憶部を有し、前記軌跡演算部は前記姿勢情報を再生して入力することを特徴とする。
【００２１】
このピッキング装置によれば、記憶部は姿勢情報を記憶し、軌跡演算部は可動部の姿勢情報を再生している。従って、ワーク及び撮像装置のうち少なくとも一方の移動と移動軌跡の演算とは並行せずに行うことができる。移動軌跡の演算速度に影響されることなく、可動部はワーク及び撮像装置のうち少なくとも一方を移動することができる。
【００２２】
［適用例８］
上記適用例にかかる撮像方法において、前記可動部は可動する複数の可動要素を有し、前記移動工程において前記撮像装置が撮像するとき、前記可動部は複数の前記可動要素のうち１つの前記可動要素を移動して変形し、前記撮像装置の光軸方向と直交する方向に前記撮像装置を移動させることを特徴とする。
【００２３】
この撮像方法によれば、可動部は１つの可動要素を移動するので複数の可動要素を移動する場合に比べて、姿勢を簡便に検出することができる。
【発明を実施するための最良の形態】
【００２４】
以下、実施形態について図面に従って説明する。尚、各図面における各部材は、各図面上で認識可能な程度の大きさとするため、各部材毎に縮尺を異ならせて図示している。
（実施形態）
本実施形態における特徴的な撮像方法と撮像したワークをピッキングする方法とについて図１〜図６に従って説明する。ピッキングはワークを把持して移動して離すことにより、ワーク移動させる動作を示す。
【００２５】
図１は、ピッキング装置の構成を示す概略斜視図である。図１に示すように、ピッキング装置１は主にワーク供給装置２、可動部としてのロボット３及びワーク収納装置４から構成されている。ワーク供給装置２はワークとしての部品５を供給する装置である。部品５の形状や材質は特に限定されない、例えば、実施形態において部品５は金属製の直方体となっている。
【００２６】
ワーク供給装置２は部品整列装置６と搬送装置７とを備えている。部品整列装置６は円錐状の皿部６ａ及び皿部６ａを支持する支持台６ｂ等から構成されている。そして、皿部６ａと支持台６ｂの間には図示しない振動装置が配置されている。皿部６ａの内側には螺旋状の段差が形成されている。段差は所定の幅の平坦部を有し、平坦部は部品５が通過する通路になっている。平坦部は皿部６ａの底から上部まで連続して形成されている。そして、振動装置が皿部６ａを振動させるとき部品５が平坦部に沿って移動するようになっている。平坦部の幅は部品５が１個に限って通過可能な幅に形成されているので、部品５が通路を通過することにより部品５は１列に配列する。
【００２７】
搬送装置７の上側にはベルトコンベア７ａが配置されている。ベルトコンベア７ａは１方向に長く延在して配置されている。この方向をＹ方向とする。そして水平方向においてＹ方向と直交する方向をＸ方向とし、鉛直方向をＺ方向とする。搬送装置７は内部にステップモータ及びプーリーを備え、ベルトコンベア７ａを移動及び停止することができる。ベルトコンベア７ａの一端は部品整列装置６の上部と接続されている。皿部６ａの上部まで移動した部品５はベルトコンベア７ａの上に移動する。そして、部品５はベルトコンベア７ａにより順次図中右側へ移動し、所定の場所に停止するようになっている。従って、ベルトコンベア７ａ上には部品５が配列して配置される。
【００２８】
ワーク供給装置２の図中右側にはロボット３が配置されている。ロボット３は基台８を備え、基台８上には回転台９が配置されている。回転台９は固定台９ａと回転軸９ｂとを備えている。回転台９は内部にサーボモータと減速機構とを備え、回転軸９ｂを角度精度良く回転及び停止することができる。サーボモータは回転軸９ｂの回転角度を検出するエンコーダを備えている。そして、エンコーダの出力を用いて固定台９ａに対する回転軸９ｂの相対角度を検出することが可能になっている。
【００２９】
回転台９の回転軸９ｂと接続して第１関節１０が配置され、第１関節１０と接続して第１腕１１が配置されている。第１腕１１と接続して第２関節１２が配置され、第２関節１２と接続して第２腕１３が配置されている。第２腕１３は固定軸１３ａと回転軸１３ｂとを備え、第２腕１３は第２腕１３の長手方向を軸にして回転軸１３ｂを回転することができる。第２腕１３の回転軸１３ｂと接続して第３関節１４が配置され、第３関節１４と接続して第３腕１５が配置されている。第３腕１５は固定軸１５ａと回転軸１５ｂとを備え、第３腕１５は第３腕１５の長手方向を回転軸にして回転軸１５ｂを回転することができる。第３腕１５の回転軸１５ｂと接続して可動要素及び把持部としての手部１６が配置され、手部１６には一対の指部１６ａが配置されている。手部１６にはサーボモータとサーボモータにより駆動される直動機構を備えている。そして、この直動機構により指部１６ａの間隔を変更可能になっている。
【００３０】
回転軸１３ｂと接続して第１支持腕１７が配置されている。第１支持腕１７は第２腕１３の上側に突出して配置されている。第１支持腕１７と接続して支持部関節１８が配置され、支持部関節１８と接続して第２支持腕１９が配置されている。第２支持腕１９には撮像装置２０が配置されている。ロボット３に配置された各関節、腕、支持部が可動要素となっている。
【００３１】
第１関節１０、第２関節１２、第２腕１３、第３関節１４、第３腕１５、支持部関節１８は内部にサーボモータ及び減速機構等からなる回転機構を備えている。そして、第１関節１０、第２関節１２、第２腕１３、第３関節１４、第３腕１５、支持部関節１８は角度精度良く回転及び停止することができる。各サーボモータは回転軸の回転角度を検出するエンコーダを備えている。そして、エンコーダの出力を用いて回転台９に対する第１腕１１の相対角度及び第１腕１１に対する第２腕１３の相対角度が検出可能になっている。同様に、第２腕１３における固定軸１３ａに対する回転軸１３ｂの相対角度及び第１支持腕１７に対する第２支持腕１９の相対角度が検出可能になっている。さらに、第２腕１３に対する第３腕１５の相対角度及び第３腕１５における固定軸１５ａに対する回転軸１５ｂの相対角度を検出することが可能になっている。上述のようにロボット３は多くの関節と回転機構を備えている。そして、これらの各腕及び回転軸の位置や角度を検出することによりロボット３の姿勢を検出することが可能になっている。
【００３２】
また、これらの関節及び回転機構に加えて指部１６ａを制御することによりワークを把持することが可能になっている。同様に、第２腕１３の角度と対応して第２支持腕１９の角度を制御することにより、撮像装置２０における光軸の方向をＺ方向にすることができる。
【００３３】
ロボット３の図中右上にはワーク収納装置４が配置されている。ワーク収納装置４の上面は載置面４ａとなっている。そして、載置面４ａにおいてロボット３は部品５を並べて配置する。ワーク収納装置４は内部に昇降装置を備え、載置面４ａを下降させることができる。そして、ワーク収納装置４は内部に部品５を積層して収納することが可能になっている。
【００３４】
ロボット３の図中左下側には制御装置２２が配置されている。制御装置２２はワーク供給装置２、ロボット３、ワーク収納装置４等を含むピッキング装置１を制御する装置である。
【００３５】
図２は、ピッキング装置の電気制御ブロック図である。図２において、ピッキング装置１の制御部としての制御装置２２はプロセッサとして各種の演算処理を行うＣＰＵ（演算処理装置）２５と各種情報を記憶する記憶部としてのメモリ２６とを有する。
【００３６】
ロボット駆動装置２７、撮像装置２０、ワーク供給装置２、ワーク収納装置４は、入出力インターフェース２８及びデータバス２９を介してＣＰＵ２５に接続されている。さらに、入力装置３０、表示装置３１も入出力インターフェース２８及びデータバス２９を介してＣＰＵ２５に接続されている。
【００３７】
ロボット駆動装置２７は、ロボット３と接続されロボット３の動作を制御する装置である。ロボット駆動装置２７は、ロボット３の姿勢に関する情報をＣＰＵ２５に出力することができる。そして、ＣＰＵ２５が指示する場所にロボット駆動装置２７は撮像装置２０を移動することにより、撮像装置２０は所望の場所を撮像することができる。さらに、ＣＰＵ２５が指示する場所にロボット駆動装置２７は手部１６を移動した後、指部１６ａを動作することによりロボット３はワークを把持することが可能になっている。
【００３８】
撮像装置２０は部品５を撮像する装置である。ＣＰＵ２５の指示する信号に従って撮像した後、撮像した画像のデータをメモリ２６に出力する。
【００３９】
ワーク供給装置２はＣＰＵ２５の指示により部品整列装置６及び搬送装置７を駆動する。そして、ロボット３の手部１６が到達可能な範囲に部品５を供給する。ワーク収納装置４はＣＰＵ２５の指示により昇降装置を駆動する。そして、ロボット３が部品５を置く高さを制御する。
【００４０】
入力装置３０は部品５の位置認識をする条件やピッキング動作の動作条件等の諸情報を入力する装置である。例えば、部品５の形状を示す座標を図示しない外部装置から受信し、入力する装置である。表示装置３１は部品５やロボット３に関するデータや作業状況を表示する装置である。表示装置３１に表示される情報を基に入力装置３０を用いて操作者が入力操作を行う。
【００４１】
メモリ２６は、ＲＡＭ、ＲＯＭ等といった半導体メモリや、ハードディスク、ＤＶＤ−ＲＯＭといった外部記憶装置を含む概念である。機能的には、ピッキング装置１における動作の制御手順が記述されたプログラムソフト３２を記憶する記憶領域がメモリ２６に設定される。さらに、部品５の形状や手部１６が把持する場所等の情報であるワーク関連データ３３を記憶するための記憶領域もメモリ２６に設定される。さらに、ロボット３を構成する要素の情報や、ワーク供給装置２及びワーク収納装置４とロボット３との相対位置等の情報であるロボット関連データ３４を記憶するための記憶領域もメモリ２６に設定される。さらに、ロボット３が撮像装置２０を移動するときにおける各腕部等の姿勢を示す情報であるロボット姿勢データ３５を記憶するための記憶領域もメモリ２６に設定される。さらに、撮像装置２０が撮像した画像のデータや補正後の画像のデータである画像データ３６を記憶するための記憶領域もメモリ２６に設定される。他にも、ＣＰＵ２５のためのワークエリアやテンポラリファイル等として機能する記憶領域やその他各種の記憶領域がメモリ２６に設定される。
【００４２】
ＣＰＵ２５はメモリ２６内に記憶されたプログラムソフト３２に従って、部品５の位置及び姿勢を検出した後、部品５を移動させるための制御を行うものである。具体的な機能実現部として、ロボット３を駆動して部品５や撮像装置２０を移動させるための制御を行うロボット制御部３７を有する。ロボット３の各サーボモータが備えるエンコーダ、ロボット駆動装置２７、ロボット制御部３７等により可動部姿勢検出部が構成されている。ロボット制御部３７は撮像装置２０を駆動する制御も行う。他にも、ロボット３の各腕部の場所や姿勢の情報を入力して撮像装置２０の場所を演算する姿勢演算部３８を有する。さらに、撮像装置２０の軌跡を演算する軌跡演算部３９を有する。さらに、撮像装置２０の軌跡の情報を用いて撮像した画像のブレを補正する画像補正演算部４０を有する。さらに、補正した画像を用いて部品５の位置を演算するワーク位置演算部４１を有する。他にも、ロボット３の動作と連携してワーク供給装置２及びワーク収納装置４の動作を制御する除給材制御部４２等を有する。
【００４３】
（撮像方法及びピッキング方法）
次に、上述したピッキング装置１を用いて部品５を移動する作業における撮像方法及びピッキング方法について図３〜図６にて説明する。図３は、部品のピッキング工程を示すフローチャートである。図４〜図６は、ピッキング作業の作業方法を説明するための模式図である。
【００４４】
図３に示すフローチャートにおいて、ステップＳ１は、部品供給工程に相当する。除給材制御部がワーク供給装置を駆動してベルトコンベア上に部品を配置させる工程である。ステップＳ２とステップＳ３〜ステップＳ６とが並行して行われる。ステップＳ２は、移動工程としての撮像装置移動工程に相当し、ロボット制御部がロボットを駆動して撮像装置を部品に向かって移動させる工程である。次にステップＳ７に移行する。ステップＳ３は、撮像工程に相当し、撮像装置が部品を撮像する工程である。次に、ステップＳ４に移行する。ステップＳ４は、軌跡算出工程に相当し、撮像装置が部品の撮像に要した時間内に撮像装置が移動した軌跡を演算する工程である。次にステップＳ５に移行する。ステップＳ５は、補正工程に相当し、撮像装置が撮像した画像のブレを補正する工程である。次にステップＳ６に移行する。ステップＳ６は、位置認識工程に相当し、ワークの位置を算出する工程である。次にステップＳ７に移行する。ステップＳ７は、ワーク移動工程に相当し、ロボットが部品をワーク収納装置まで移動する工程である。次にステップＳ８に移行する。ステップＳ８は、終了判断工程に相当し、ピッキング作業を終了するか否かを判断する工程である。ピッキング作業を継続するとき、ステップＳ１に移行する。ピッキング作業を終了するとき、部品のピッキング工程を終了する。
【００４５】
次に、図４〜図６を用いて、図３に示したステップと対応させて、ピッキング工程における撮像方法及びピッキング方法を詳細に説明する。図４はステップＳ１の部品供給工程及びステップＳ２の撮像装置移動工程に対応する図である。図４（ａ）に示すように、ステップＳ１において、ベルトコンベア７ａ上に部品５が載置される。そして、ベルトコンベア７ａが部品５を移動させる。その結果、部品５は予め設定された撮像場所としての把持予定場所４５に位置する。
【００４６】
ステップＳ２において、ロボット制御部３７はロボット３を駆動する。そして、ロボット制御部３７は移動前場所４６から把持予定場所４５と対応する場所に向かって撮像装置２０を移動させる。移動前場所４６は特定の場所では無く、前工程の作業が終了したときに撮像装置２０が位置した場所である。ロボット３はベルトコンベア７ａにおいて部品５が載置されている面と平行に撮像装置２０を移動させる。従って、撮像装置２０の光軸と直交する方向に撮像装置２０は移動させられる。そして、撮像装置２０が部品５と対向する場所を通過するとき、撮像装置２０の焦点距離を殆ど調整することなく撮像することができる。
【００４７】
図４（ｂ）は各関節及び腕に配置されたエンコーダの出力の推移を示すタイムチャートである。図４（ｂ）において、横軸は時間の経過を示し、時間は左から右へ移行する。縦軸には、撮像装置２０が移動するときの回転台９、第１関節１０、第２関節１２、第２腕１３、支持部関節１８におけるエンコーダ出力値が配置されている。エンコーダ出力値は図中上側が時計周りの角度を示している。第１エンコーダ出力線４７は回転台９におけるエンコーダの出力の推移を示している。第２エンコーダ出力線４８は第１関節１０の回転によるエンコーダの出力の推移を示している。第３エンコーダ出力線４９は第２関節１２の回転によるエンコーダの出力の推移を示している。第４エンコーダ出力線５０は第２腕１３の回転軸１３ｂの回転によるエンコーダの出力の推移を示している。第５エンコーダ出力線５１は支持部関節１８の回転によるエンコーダの出力の推移を示している。第１エンコーダ出力線４７〜第５エンコーダ出力線５１が姿勢情報となっている。
【００４８】
時間軸上の撮像開始時５２ａは撮像装置２０が撮像を開始する時を示している。撮像終了時５２ｂは撮像装置２０が撮像を終了する時を示している。撮像時間５２ｃは撮像装置２０が撮像している間の時間を示す。記憶開始時５３ａは、ロボット制御部３７がエンコーダ出力値をメモリ２６に記憶することを開始する時を示す。記憶終了時５３ｂは、ロボット制御部３７がエンコーダ出力値をメモリ２６に記憶することを終了する時を示す。記憶時間５３ｃは、ロボット制御部３７がエンコーダ出力値をメモリ２６に記憶している間の時間を示す。把持時５４は、ロボット３が部品５を把持する時を示している。
【００４９】
記憶開始時５３ａは撮像開始時５２ａより早く設定され、記憶終了時５３ｂは撮像終了時５２ｂより遅く設定されている。従って、撮像時間５２ｃに加えて撮像前後の時間における各エンコーダの出力値がメモリ２６にロボット姿勢データ３５として記憶される。
【００５０】
第１エンコーダ出力線４７が示すように、撮像装置２０が移動前場所４６から把持予定場所４５と対向する場所に移動するとき、第１エンコーダ出力線４７は下降する。つまり、回転軸９ｂは反時計周りに移動する。そして、撮像時間５２ｃの間も第１エンコーダ出力線４７が下降する。つまり、撮像装置２０が移動している間に撮像が行われる。
【００５１】
第２エンコーダ出力線４８、第３エンコーダ出力線４９、第５エンコーダ出力線５１は撮像開始時５２ａの図中左側にて変化している。そして、撮像時間５２ｃの間では第２エンコーダ出力線４８、第３エンコーダ出力線４９、第５エンコーダ出力線５１は変化していない。つまり、第１関節１０、第２関節１２、支持部関節１８は撮像開始時５２ａに至る前に移動が終了している。第４エンコーダ出力線５０は変化していないので、第２腕１３は回転していない。従って、撮像時間５２ｃの間は回転台９のみが回転している。
【００５２】
撮像終了時５２ｂから把持時５４の間で第３エンコーダ出力線４９及び第５エンコーダ出力線５１が変化する。このとき、ロボット制御部３７は、第２関節１２、第３関節１４、手部１６、支持部関節１８を駆動する。
【００５３】
図５（ａ）はステップＳ３の撮像工程に対応する図である。図５（ａ）に示すように、ステップＳ３において、撮影画像５５に部品５の画像５６が撮像される。ロボット制御部３７が撮像装置２０を移動させながら撮像するので、画像５６にはブレが生じる。その結果、撮影画像５５における画像５６の辺５６ａが太く観察される。
【００５４】
図５（ｂ）はステップＳ４の軌跡算出工程に対応する図である。ステップＳ４において、姿勢演算部３８はメモリ２６からエンコーダの出力データを再生する。そして、第１エンコーダ出力線４７〜第５エンコーダ出力線５１のデータを用いて撮像装置２０の場所を演算する。このときロボット３に設定された座標軸上における撮像装置２０の座標値を演算する。
【００５５】
具体的には、まず回転台９の回転軸９ｂの回転角度データを用いて第１関節１０を中心に第１腕１１が移動可能な方向を算出する。次に、第１関節１０の回転角度データを用いて第２関節１２の位置を算出する。続いて、第２関節１２の回転角度データを用いて支持部関節１８の位置を算出する。次に、支持部関節１８の回転角度データを用いて撮像装置２０の位置を算出する。この手順を用いて姿勢演算部３８が撮像開始時５２ａにおける撮像装置２０の場所を算出する。
【００５６】
次に、撮像時間５２ｃの間における撮像装置２０の位置を順次算出する。そして、軌跡演算部３９が撮像装置２０の推移を演算する。その結果、図５（ｂ）に示すように、点像分布関数５７を示す曲線が算出される。本実施形態においては、撮像時間５２ｃの間に回転台９のみ駆動されている。従って、点像分布関数５７は回転軸９ｂを中心とした円弧となる。軌跡演算部３９は回転軸９ｂの回転中心の座標と撮像開始時５２ａにおける撮像装置２０の座標とを用いて点像分布関数５７を算出する。点像分布関数５７は撮像装置２０の光軸が移動するときの軌跡となっている。
【００５７】
図５（ｃ）はステップＳ５の補正工程に対応する図である。ステップＳ５において、撮影画像５５と点像分布関数５７とを用いて撮影画像５５を補正する。補正方法は特に限定されず、公知の方法を用いることができる。例えば、特開２００６−２７９８０７号公報に開示されている一般逆フィルタ関数や、特開平１１−２７５７４号公報に開示されているウィーナフィルタ、特開２００７−１８３８４２号公報に開示されているパラメトリックウイーナフィルタ、制限付最小二乗フィルタ、射影フィルタ等の復元方法を用いることができる。
【００５８】
復元方法の一例における概要を説明する。まず、点像分布関数５７をフーリエ変換することにより、ＸＹ平面上の空間周波数分布関数を算出する。算出した分布関数は複素関数であり、この関数を点像空間周波数分布関数とする。次に、１つの点からなる画像をフーリエ変換した空間周波数分布関数を算出し、算出した分布を単点空間周波数分布関数とする。そして、単点空間周波数分布関数を点像空間周波数分布関数にて複素除算し、算出した関数を復元フィルタ関数とする。続いて、撮影画像５５をフーリエ変換することにより、ＸＹ平面上の空間周波数分布関数を算出する。算出した分布を撮像空間周波数分布関数とする。次に、撮像空間周波数分布関数と復元フィルタ関数とを複素積算し、積算した分布を補正像空間周波数分布関数とする。続いて、補正像空間周波数分布関数を逆フーリエ変換することにより補正画像を算出する。
【００５９】
その結果、図５（ｃ）に示すような復元画像５８が算出される。復元画像５８における部品５の補正画像５９の辺５９ａは細くなり、ブレが小さくなる。そして、補正画像５９の場所を算出し易くなる為、部品５の位置を精度良く認識することができる。
【００６０】
ステップＳ６において、ワーク位置演算部４１は復元画像５８を用いて部品５の場所を算出する。まず、ワーク位置演算部４１は復元画像５８における補正画像５９の場所を演算する。次に、ワーク位置演算部４１は撮像時間５２ｃにおける撮像装置２０の場所を演算する。続いて、ワーク位置演算部４１は補正画像５９の場所のデータ及び撮像装置２０の場所のデータを用いて部品５の場所を演算する。
【００６１】
図６はステップＳ７のワーク移動工程に対応する図である。図６（ａ）に示すように、ワーク位置演算部４１が部品５の場所を算出した後、ロボット制御部３７がロボット３を駆動して部品５を把持する。続いて、ロボット３は部品５を把持したままワーク収納装置４に移動することにより、部品５を移動する。その結果、図６（ｂ）に示すように、ワーク収納装置４に部品５が載置される。続いて、手部１６は指部１６ａを広げて部品５を離して、次に作業する場所へ移動して、部品のピッキング工程を終了する。
【００６２】
上述したように、本実施形態によれば、以下の効果を有する。
（１）本実施形態によれば、ステップＳ３の撮像工程において、ロボット３が撮像装置２０を移動しながら、撮像装置２０が部品５を撮像している。このとき、撮像する画像５６にはブレが形成され易くなっている。ステップＳ２の撮像装置移動工程ではエンコーダ出力値を用いて姿勢演算部３８がロボット３の姿勢を検出している。そして、ステップＳ４の軌跡算出工程ではロボット３の姿勢が変化する情報を用いて軌跡演算部３９が部品５に対する撮像装置２０の移動軌跡を算出している。ステップＳ５の補正工程では移動軌跡から算出した点像分布関数５７を用いることにより撮像した画像５６の補正を行っている。従って、センサ等により撮像装置２０の位置を直接検出しなくてもサーボモータのエンコーダ出力値を用いて画像５６を補正することができる。
【００６３】
（２）本実施形態によれば、ステップＳ２の撮像装置移動工程において、回転台９、第１関節１０、第２関節１２、第２腕１３、支持部関節１８の各エンコーダ出力値をメモリ２６に記憶している。そして、ステップＳ４の軌跡算出工程では各エンコーダ出力値を再生している。従って、撮像装置移動工程と軌跡算出工程とは並行せずに行うことができる。従って、軌跡算出工程におけるＣＰＵ２５の演算速度に影響されることなく、撮像装置移動工程ではロボット制御部３７が撮像装置２０を移動することができる。
【００６４】
（３）本実施形態によれば、撮像時間５２ｃの間においてロボット３は回転台９のみ移動するので複数の腕や関節を移動する場合に比べて、撮像装置２０が移動する軌跡を簡便に算出することができる。
【００６５】
（４）本実施形態によれば、部品５に対する撮像装置２０の移動軌跡を用いて点像分布関数５７を演算する為、精度良く点像分布関数５７を算出することができる。その結果、精度良く画像５６を補正することができる。
【００６６】
（５）本実施形態によれば、ワーク位置演算部４１は、精度良く補正された補正画像５９を用いて部品５の場所を検出している。従って、ワーク位置演算部４１は部品５の場所を精度良く認識することができる。
【００６７】
（６）本実施形態によれば、ワーク位置演算部４１が部品５の場所を精度良く認識するので、ロボット３は部品５を品質良く把持して移動することができる。
【００６８】
（７）本実施形態によれば、ロボット３が撮像装置２０を移動している間に撮像装置２０が撮像を行っている。従って、ロボット３が撮像装置２０を停止してから撮像装置２０が撮像する方法に比べて、短い時間で撮像装置２０の移動と撮像とを行うことができる。その結果、生産性良く部品５の場所を検出することができる。
【００６９】
（８）本実施形態によれば、記憶開始時５３ａは撮像開始時５２ａより早く設定され、記憶時間５３ｃは撮像時間５２ｃより長く設定されている。従って、撮像開始時５２ａ及び撮像終了時５２ｂが変動するときにも撮像時間５２ｃのエンコーダ出力値を確実に記憶することができる。
【００７０】
尚、本実施形態は上述した実施形態に限定されるものではなく、種々の変更や改良を加えることも可能である。変形例を以下に述べる。
（変形例１）
前記実施形態では部品５がベルトコンベア７ａ上に静止していた。そしてロボット３が撮像装置２０を移動して、撮像装置２０が部品５を撮像した。部品５と撮像装置２０とを相対移動する方法はこれに限らない。例えば、ロボット３と別の第２ロボットを用意する。そして、撮像装置２０が静止した状態で第２ロボットが部品５を移動しても良い。撮像装置２０の撮像範囲に第２ロボットが部品５を移動する。このとき、第２ロボットの姿勢を検出して、部品５の移動軌跡を算出する。そして、部品５の移動軌跡を用いて点像分布関数を演算し、点像分布関数を用いて画像のブレを補正することができる。
【００７１】
（変形例２）
前記実施形態ではステップＳ３の撮像工程においてロボット制御部３７がエンコーダ出力値をメモリ２６に記憶して、ステップＳ４の軌跡算出工程において姿勢演算部３８がメモリ２６から再生した。ＣＰＵ２５の演算速度が速い場合には、メモリ２６に記憶して再生せずに、直接撮像装置２０の移動軌跡を演算しても良い。記憶と再生とのステップを省略できるので、生産性良く移動軌跡を算出することができる。
【００７２】
（変形例３）
前記実施形態ではロボット３に垂直多関節ロボットを採用したが、他の種類のロボットを採用しても良い。例えば、ロボット３に水平多関節ロボット、直交ロボット、パラレルリンクロボット等各種の形態のロボットを採用することができる。
【００７３】
（変形例４）
前記実施形態ではステップＳ４の軌跡算出工程、ステップＳ５の補正工程、ステップＳ６の位置認識工程はステップＳ２の撮像装置移動工程と並行して行われた。ステップＳ４、ステップＳ５、ステップＳ６はステップＳ２の後に行われても良い。ステップＳ２で手部１６が移動する距離や移動にかかる時間に合わせて設定しても良い。
【００７４】
（変形例５）
前記実施形態では撮像時間５２ｃの間に回転台９のみ作動させたが、他の関節や腕等を作動させても良い。撮像装置２０の移動軌跡が算出可能であれば、点像分布関数を演算することができる。
【００７５】
（変形例６）
前記実施形態ではロボット３の腕や関節に配置されたサーボモータのエンコーダを用いてロボット３の姿勢を検出したが、ロボット３の姿勢を検出する方法はこれに限定されない。例えば、サーボモータの代りにステップモータを配置しても良い。そして、ステップモータを制御する制御信号を用いてロボット３の姿勢を演算しても良い。また、ステップモータとエンコーダとを用いても良い。ロボット３を制御するために腕や関節に位置検出センサまたは角度検出センサを配置しても良い。
【００７６】
（変形例７）
前記実施形態では撮像時間５２ｃの間に回転台９を作動させたが、作動するロボットの種類に合わせて作動パターンを変えても良い。例えば、直交ロボットでは１軸のみ駆動しても良い。他にも、１方向に伸縮可能な腕を備えるロボットの場合には、その腕を伸縮させて撮像装置を移動させても良い。
【図面の簡単な説明】
【００７７】
【図１】ピッキング装置の構成を示す概略斜視図。
【図２】ピッキング装置の電気制御ブロック図。
【図３】部品のピッキング工程を示すフローチャート。
【図４】ピッキング作業の作業方法を説明するための模式図。
【図５】ピッキング作業の作業方法を説明するための模式図。
【図６】ピッキング作業の作業方法を説明するための模式図。
【符号の説明】
【００７８】
３…可動部としてのロボット、５…ワークとしての部品、９…可動要素としての回転台、１０…可動要素としての第１関節、１１…可動要素としての第１腕、１２…可動要素としての第２関節、１３…可動要素としての第２腕、１４…可動要素としての第３関節、１５…可動要素としての第３腕、１６…可動要素及び把持部としての手部、１７…可動要素としての第１支持腕、１８…可動要素としての支持部関節、１９…可動要素としての第２支持腕、２０…撮像装置、２６…記憶部としてのメモリ、３８…可動部姿勢検出部としての姿勢演算部、３９…軌跡演算部、４０…補正部としての画像補正演算部、４１…位置検出部としてのワーク位置演算部、５６…画像、５７…点像分布関数、５９…補正画像。
【図１】
2010161686.tif 000003
【図２】
2010161686.tif 000004
【図３】
2010161686.tif 000005
【図４】
2010161686.tif 000006
【図５】
2010161686.tif 000007
【図６】
2010161686.tif 000008