(57)【特許請求の範囲】
【請求項１】
多数個の部品がばら積み状態に収容された部品収容箱が設置される部品供給部と、前記部品が最終確定姿勢とされて載置される部品載置位置と、先端に手先部を有しＸ軸、Ｙ軸及びＺ軸方向へ自在に移動するロボットと、前記部品収容箱内の部品を上方から撮影する部品位置検出用の視覚装置と、前記ロボットを制御する制御装置とを備え、前記ロボットにより、前記部品収容箱内の部品をピックアップして、前記部品載置位置に最終確定姿勢で載置する作業を繰返し実行するビンピッキングシステムであって、
前記部品供給部と前記部品載置位置との間には、前記部品を載置可能な仮置き領域が設けられ、
前記制御装置は、
前記部品の最終確定姿勢の情報、及び、前記ロボットの前記手先部を用いた動作により前記部品を前記最終確定姿勢に変位させることが可能な該部品の予め設定された複数の仮姿勢の情報を記憶した記憶手段と、
前記視覚装置の撮影情報に基づいて、前記部品収容箱内のピックアップすべき１個の部品を決定すると共に、当該部品の一つの面を前記手先部でピックアップする位置及び姿勢を演算し、さらに、前記手先部により当該部品を保持した状態で前記部品収容箱内での当初姿勢から変更可能ないずれかの仮姿勢を求める第１演算手段と、
前記仮置き領域にいずれかの仮姿勢で載置された部品を、前記ロボットの前記手先部を用いた動作により最終確定姿勢とすることができるように当該部品の把持すべき位置及び姿勢を演算する第２演算手段とを備え、
前記第１の演算手段で仮姿勢を求めるのに先立って、前記視覚装置の撮影情報、及び前記記憶手段に記憶されている前記部品の画像の照合モデルのデータに基づいて、撮影された画像に一致度が予め設定されたしきい値以上の面があるか否かを判断し、前記一致度が前記しきい値以上の面が存在していないとき、前記部品収納箱に収容されている前記部品の姿勢を変化させる処理を行うと共に、
前記第１の演算手段及び第２の演算手段の演算に基づいて、前記ロボットを制御し、前記部品収容箱内の１個の部品を、前記手先部でピックアップし、前記第１の演算手段の演算により求められたいずれかの仮姿勢となるように前記仮置き領域に載置し、前記仮置き領域に仮姿勢で載置されている部品を、前記手先部により把持して最終確定姿勢となるように前記部品載置位置に載置する作業を実行させることを特徴とするビンピッキングシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、多数個の部品がばら積み状態に収容された部品収容箱から、ロボットにより、部品をピックアップして部品載置位置に最終確定姿勢で載置する作業を繰返し実行するビンピッキングシステムに関する。
【背景技術】
【０００２】
例えば自動車用部品の製造等のメカニカルな組立作業を行う生産ラインにおいて、産業用ロボットを用いて実行される作業として、部品収容箱内にランダムに積み重ねられた多数個の部品を、視覚装置によって認識し、ロボットアーム（ハンド）を用いて１個ずつ把持して搬送し、所定の部品供給箇所に特定の姿勢として載置する、いわゆるビンピッキングの作業が知られている（例えば特許文献１参照）。
【０００３】
ところで、このようなビンピッキングのシステムにおいては、山積みされた部品の当初姿勢がランダムであるため、掴もうとする部品が他の部品と重なったり接触していたりするため、ロボットのハンドによりうまく掴むことが難しい事情がある。そのため、良好な作業を行うためには、個々の部品の位置や姿勢を高精度で検出できるような大掛かりな視覚装置や画像解析装置、更には実際に部品を掴むための高い自由度を持つロボット、即ち６軸型のロボットが必要となり、きわめて高価となる問題がある。
そこで、そのような問題を解決して良好なビンピッキングの作業を行うために、上記特許文献１では、山積みされた部品から、複数個の部品をロボットハンドで一度に掴み出し、作業台上にそれら部品をばら撒いて部品同士の重複をなくすようにする。次いで、ばら撒かれた個々の部品を視覚装置で検出しながらハンドで掴み、所定の姿勢に修正しながら部品供給箇所に供給するようにしている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平６−１２７６９８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、上記のようなビンピッキング作業を行う設備（システム）においては、設備の小型化が求められる。しかしながら、上記特許文献１のシステム構成では、複数個の部品を重複の無いようにばら撒くためには、その分、作業台上に、ばら撒きのための広いスペースが必要となる。
本発明は上記事情に鑑みてなされたもので、その目的は、ロボットによるビンピッキング作業を良好に行うことができながらも、設備全体の大型化を抑制して小型化の要求に応えることができるビンピッキングシステムを提供するにある。
【課題を解決するための手段】
【０００６】
上記目的を達成するために、本発明のビンピッキングシステムは、多数個の部品がばらみ状態に収容された部品収容箱が設置される部品供給部と、前記部品が最終確定姿勢とされて載置される部品載置位置と、先端に手先部を有しＸ軸、Ｙ軸及びＺ軸方向へ自在に移動するロボットと、前記部品収容箱内の部品を上方から撮影する部品位置検出用の視覚装置と、前記ロボットを制御する制御装置とを備え、前記ロボットにより、前記部品収容箱内の部品をピックアップして、前記部品載置位置に最終確定姿勢で載置する作業を繰返し実行するビンピッキングシステムであって、前記部品供給部と前記部品載置位置との間には、前記部品を載置可能な仮置き領域が設けられ、前記制御装置は、前記部品の最終確定姿勢の情報、及び、前記ロボットの前記手先部を用いた動作により前記部品を前記最終確定姿勢に変位させることが可能な該部品の予め設定された複数の仮姿勢の情報を記憶した記憶手段と、前記視覚装置の撮影情報に基づいて、前記部品収容箱内のピックアップすべき１個の部品を決定すると共に、当該部品の一つの面を前記手先部でピックアップする位置及び姿勢を演算し、さらに、前記手先部により当該部品を保持した状態で前期部品収容箱内での当初姿勢から変更可能ないずれかの仮姿勢を求める第１演算手段と、前記仮置き領域にいずれかの仮姿勢で載置された部品を、前記ロボットの前記手先部を用いた動作により最終確定姿勢とすることができるように当該部品の把持すべき位置及び姿勢を演算する第２演算手段とを備え、前記第１の演算手段で仮姿勢を求めるのに先立って、前記視覚装置の撮影情報、及び前記記憶手段に記憶されている前記部品の画像の照合モデルのデータに基づいて、撮影された画像に一致度が予め設定されたしきい値以上の面があるか否かを判断し、前記一致度が前記しきい値以上の面が存在していないとき、前記部品収納箱に収容されている前記部品の姿勢を変化させる処理を行うと共に、前記第１の演算手段及び第２の演算手段の演算に基づいて、前記ロボットを制御し、前記部品収容箱内の１個の部品を、前記手先部でピックアップし、前記第１の演算手段の演算により求められたいずれかの仮姿勢となるように前記仮置き領域に載置し、前記仮置き領域に仮姿勢で載置されている部品を、前記手先部により把持して最終確定姿勢となるように前記部品載置位置に載置する作業を実行させるところに特徴を有する（請求項１の発明）。
【図面の簡単な説明】
【０００７】
【図１】本発明の第１の実施例を示すもので、ビンピッキングシステムの全体構成を概略的に示す斜視図
【図２】吸着ノズル及びチャックの開き角度がθの場合の複合ハンドツール部分の正面図であって、吸着ノズルが真下を向いた状態（ａ）及び４５度傾いた状態（ｂ）
【図３】吸着ノズル及びチャックの開き角度が９０度の場合の図２相当図
【図４】吸着ノズル及びチャックの開き角度が１３５度の場合の図２相当図
【図５】ビンピッキングの作業時に制御装置が実行する処理の手順を示すフローチャート（その１）
【図６】ビンピッキングの作業時に制御装置が実行する処理の手順を示フローチャート（その２）
【図７】本発明の第２の実施例を示す図１相当図
【図８】本発明の第３の実施例を示すロボットの斜視図
【発明を実施するための形態】
【０００８】
（１）第１の実施例
以下、本発明の第１の実施例について、図１ないし図６を参照しながら説明する。図１は、本実施例に係るビンピッキングシステム１の全体構成を概略的に示しており、このシステム１は、作業台２上に、例えば直角座標ロボットからなる４軸型のロボット３を備えて構成されている。前記作業台２は、ロボット３が作業を行う領域であり、その上面がＸ軸方向（左右方向）及びＹ軸方向（前後方向）に広がる水平な台状をなし、この場合Ｘ軸方向にやや横長に構成されている。
【０００９】
前記作業台２上には、図で右端側に位置して、部品収容箱４が設置される部品供給部５が設けられている。前記部品供給箱４内には、多数個の部品Ｗがばら積み状態に収容されている。本実施例では、前記部品Ｗとして、直方体（六面体）形状を基本とし、その一面にピン状の凸を有した形態のものを例示している。また、前記部品供給部５の上方には、前記部品収容箱４内の部品Ｗを上方から撮影する視覚装置として、例えばＣＣＤカメラからなるカメラ６が固定的に設けられている。
【００１０】
前記作業台２には、図で左端側に位置して、前記部品Ｗを最終確定姿勢で整列させた状態で、次の作業設備に向けて搬送するためのコンベア装置７が設けられており、このコンベア装置７の基端部（図で右端部）が、部品Ｗが１個ずつ最終確定姿勢とされて載置される部品載置位置７ａとされている。そして、本実施例では、前記部品供給部５と、前記部品載置位置７ａとの間には、後述するように、部品Ｗが仮姿勢で載置される仮置き領域８が設けられている。
【００１１】
ここで、前記ロボット３について述べる。このロボット３は、Ｘ軸移動ユニット９、Ｙ軸移動ユニット１０、Ｚ軸ユニット（作業ヘッド）１１を備えて構成される。そのうちＸ軸移動ユニット９は、前記作業台２の後辺部の上部をＸ軸方向（左右方向）に延びる矩形箱状（フレーム状）のベース１２に沿って、移動体１３を直線方向（Ｘ軸方向）に自在に移動させるように構成されている。また、図示はしないが、前記ベース１２には、移動体１３をＸ軸方向に自在に移動させるためのＸ軸駆動用モータやボールねじ機構等が設けられている。
【００１２】
前記Ｙ軸移動ユニット１０は、前記移動体１３に、Ｘ軸移動ユニット９と直交するように（Ｙ軸方向に延びるように）接続されたトラバース（ベース）１４を備えると共に、前記Ｚ軸ユニット１１の移動体１５をＹ軸方向に自在に移動させるためのＹ軸駆動用モータ及びボールねじ機構（いずれも図示せず）などを備えて構成されている。
前記Ｚ軸ユニット１１は、前記移動体１５を備えると共に、その移動体１２に対し、Ｚ軸方向（上下方向）に移動可能であり、且つ、垂直軸（Ｔ軸）を中心に回転可能に設けられた手首部（手先部）１６を有して構成されている。これと共に、図示はしないが、前記手首部１６をＺ軸方向に自在に移動させるためのＺ軸駆動用モータ、前記手首部１６を自在に回転させるＴ軸駆動用モータ等が組込まれている。
そして、図２に示すように、この手首部（手先部）１６の図２で前面（側面）には、水平方向（図２で前後方向）に延びる軸（回動中心Ｏ）を中心に回動するプレート１７が設けられ、このプレート１７に、作業用の複合ハンドツール１８が取付けられている。手首部１６内には、前記プレート１７を自在に回転駆動する図示しない回動モータが設けられている。
【００１３】
図２に示すように、前記複合ハンドツール１８は、前記部品Ｗの複数の面（例えば６面）に関しそれらのいずれかの面を吸着して保持可能な吸着ノズル１９と、２本又は３本の指（爪）で前記部品Ｗを把持する例えばエア駆動式のチャック２０とを一体的に備えている。この場合、それら吸着ノズル１９及びチャック２０は、前記プレート１７に回動中心Ｏを中心に放射方向にＶ字状に開いて延びる形態に設けられている。そして、それら吸着ノズル１９とチャック２０との開き角度が、９０度〜１３５度の範囲内である角度θ（例えば１０５度）とされている。この角度θに関しては、後の作用説明で述べる。
【００１４】
上記した構成のロボット３は、図１に示すように、コンピュータを含んで構成される制御装置（コントローラ）２１に接続され、この制御装置２１により、各モータや吸着ノズル１９及びチャック２０等が制御されるようになっている。このとき、ロボット３には、吸引源（真空ポンプ）からのエアチューブ及び圧縮エア供給源からのエアチューブが接続され、例えば電磁弁等の制御によって吸着ノズル１９及びチャック２０が動作されるようになっている。また、前記カメラ６による撮影情報（画像データ）が制御装置２１に入力され、制御装置２１は、その画像データの処理を実行するようになっている。
【００１５】
さて、前記制御装置２１は、そのソフトウエア構成（ビンピッキングプログラムの実行）により、ロボット３を制御して、部品収容箱４内にランダムに積み重ねられた多数個の部品Ｗを、カメラ６によって認識し、複合ハンドツール１８を用いて１個ずつピックアップして搬送し、部品載置位置７ａに特定の最終確定姿勢にして載置するビンピッキングの作業を繰返し実行させるようになっている。
【００１６】
このとき、本実施例では、制御装置２１のメモリ（図示せず）には、前記部品Ｗの最終確定姿勢の情報、及び、前記ロボット３のチャック２０を用いた動作により前記部品Ｗを前記最終確定姿勢に変位させることが可能な該部品Ｗの複数の仮姿勢の情報が予め記憶されている。さらに、制御装置２１のメモリには、前記カメラ６の撮影画像データから部品Ｗの位置及び姿勢（吸着可能な面の位置及び姿勢）を求めるためのマッチング用のデータ（照合モデルのデータ）等も記憶されている。
【００１７】
ここで、最終確定姿勢とは、部品Ｗの特定の一面を底面（載置面）とし、且つ、所定の向き（垂直軸を中心とした所定の回動位置）にある状態をいう。これに対し、仮姿勢とは、部品Ｗが例えば六面体（直方体）の場合には、上記特定の一面（載置面）が上面に来る以外（他の５面のいずれかが上面に来る）の状態で、夫々決められた特定の向きにある状態をいう。従って、部品Ｗが六面体の場合、仮姿勢は、少なくとも５種類が存在する。上記最終確定姿勢も、仮姿勢のうちの一つに含まれる。
【００１８】
そして、次の作用説明（フローチャート説明）でも述べるように、制御装置２１は、上記ビンピッキングの作業を実行させるにあたり、前記カメラ６の撮影情報に基づいて、前記部品収容箱４内のピックアップすべき１個の部品Ｗを決定すると共に、当該部品Ｗの一つの面を前記吸着ノズル１９で吸着するロボット３の位置及び姿勢（吸着ノズル１９をどの角度とし、どの方向から吸着しに行くか）を演算し、さらに、前記吸着ノズル１９により当該部品Ｗを吸着した状態で当初姿勢（部品収容箱４内での姿勢）から変更可能ないずれかの仮姿勢を求めるようになっている。
これと共に、前記仮置き領域にいずれかの仮姿勢で載置された部品Ｗを、前記チャック２０を用いた動作により最終確定姿勢とすることができるように当該部品Ｗの把持すべき位置及び姿勢（チャック２０をどの角度としてどの方向から掴みに行くか）を演算するようになっている。
【００１９】
さらに、制御装置２１は、上記した各演算に基づいて、前記ロボット３を制御し、前記部品収容箱４内の１個の部品Ｗを、前記吸着ノズル１９で吸着してピックアップし、演算により求められたいずれかの仮姿勢となるように前記仮置き領域８に載置し、前記仮置き領域８に仮姿勢で載置されている部品Ｗを、前記チャック２０により把持して最終確定姿勢となるように前記部品載置位置７ａに載置する作業を実行させるようになっている。従って、制御装置２１が、記憶手段、第１演算手段、第２演算手段としての機能を備えている。
【００２０】
次に、上記ビンピッキングシステム１の作用について、図３ないし図６も参照して述べる。図５及び図６のフローチャートは、ロボット３によりビンピッキングの作業を実行させる際に、制御装置２１が実行する処理（制御）の手順を概略的に示している。尚、これら図５及び図６は、本来連続した一つのフローチャートであるが、図示のスペースの関係上、２つに分割して示している。
即ち、まずステップＳ１では、カメラ６による部品Ｗ全体の上方からの撮影を阻害しない退避位置にロボット３を移動させることが行われる。次のステップＳ２では、カメラ６により部品収容箱４内の山積み部品Ｗ全体を撮像することが行われる。ステップＳ３では、カメラ６による撮影画像のデータと、登録（記憶）されている部品Ｗの吸着面画像の照合モデルのデータとのマッチングを行い、マッチング度合（一致度）が算出される。そして、ステップＳ４では、一致度がしきい値以上の吸着面があるかどうかが判断される。
【００２１】
ここで、一致度がしきい値以上の吸着面が存在しなかった場合には（ステップＳ４にてＮｏ）、ステップＳ５にて、部品収容箱４内の山積み部品Ｗの姿勢を変化させる処理が行われ、その後、ステップＳ２に戻る。ステップＳ５の部品Ｗの姿勢を変化させる方法としては、例えば、ロボット３のチャック２０を部品収容箱４内に入れて一定のかき混ぜ動作を行う、ロボット３のチャック２０で部品収容箱４の縁部を掴み傾けて戻す動作を行う、部品供給部５に設けた揺動機構により部品収容箱４を揺動（振動）させる、部品供給部５に設けた突き上げ機構により部品収容箱４の底面を突き上げる、といった様々な方法が考えられる。
【００２２】
上記ステップＳ４にて、一致度がしきい値以上の吸着面が存在した場合には（ステップＳ４にてＹｅｓ）、ステップＳ６にて、最も一致度の高い部品Ｗの吸着面の位置（Ｘ，Ｙ方向の位置、回転、傾き）が求められる。この場合、部品収容箱４内の山積み部品Ｗのうち、他の部品Ｗが上に重なって（接触して）おらず上部に位置しており、吸着ノズル１９で吸着可能な面が上向き（水平面に対して４５度以下の傾き）となっている１個の部品Ｗが選択決定され、その部品Ｗの吸着面の位置及び姿勢が求められるようになる。
【００２３】
次に、ステップＳ７では、ロボット３の吸着ノズル１９の先端を、上記ステップＳ６で求められた吸着面の位置及び姿勢に合せるように、ロボット３を、Ｘ，Ｙ方向移動、及び、手首部１６のＴ軸回転、複合ハンドツール１８の回動中心Ｏを中心とした回動に関して動作させることが行われる。そして、その状態から、ステップＳ８にて、吸着ノズル１９の吸引を開始し、これと共に、ステップＳ９にて、吸着ノズル１９（手首部１６）を下降させていくことが行われる。
【００２４】
ステップＳ１０では、吸着ノズル１９により部品Ｗを吸着したかどうかが判断される。この判断は、図示はしないが、例えば吸着ノズル１９に接続された吸引用の管路に圧力センサを設け、その圧力センサの検出圧力の変化を検出することに基づいて行われる。吸着ノズル１９により部品Ｗを吸着するまでは（ステップＳ１０にてＮｏ）、吸着ノズル１９の下降が継続され（ステップＳ９）、吸着ノズル１９が部品Ｗを吸着したところで（ステップＳ１０にてＹｅｓ）、吸着ノズル１９の下降が停止される（ステップＳ１１）。
【００２５】
次のステップＳ１２では、上記吸着ノズル１９により部品Ｗを吸着した状態（当初姿勢）から、ロボット３の動作によって変換（変更）可能ないずれかの仮姿勢を、複数の求める仮姿勢のなかから選択する処理が実行される。いずれかの仮姿勢が求められると、ステップＳ１３にて、ロボット３を動作させて、吸着ノズル１９により吸着している部品Ｗを、選択された仮姿勢に変換した上で仮置き領域８上まで移動させることが行われ、ステップＳ１４にて、吸着ノズル１９の吸引を停止して、部品Ｗを仮置き領域８に仮姿勢で載置することが行われる。
【００２６】
ステップＳ１５では、仮姿勢で仮置き領域８に載置された部品Ｗを、チャック２０を用いたロボット３の動作により最終確定姿勢に変換することができるように、部品Ｗの把持位置及び姿勢を求めることが行われる。そして、ステップＳ１６では、求められた把持位置にロボット３を移動する動作が、複合ハンドツール１８の回動中心Ｏを中心とした回動動作を含んで行われる。
【００２７】
ステップＳ１７では、決定した部品Ｗの把持位置をチャック２０により把持することが行われ、ステップＳ１８では、ロボット３を動作させて、チャック２０により把持している部品Ｗを、最終確定姿勢に変換させながら部品載置位置７ａ上まで移動させることが行われる。ステップＳ１９では、部品Ｗを部品載置位置７ａ上に最終確定姿勢で載置することが行われ、１回のビンピッキングの作業が終了する。この後は、ステップＳ１からの処理が繰返し実行される。
【００２８】
以上の処理により、部品収容箱４内に不規則に並んで収容されている多数個の部品Ｗは、ランダムな方向を向くと共に他の部品Ｗと重なったり接触していたりするのであるが、そのうち最も高い位置にある部品Ｗについては、三次元体なので全ての面が下向きになることはなく、少なくとも一つの面は、斜めではあるかもしれないが上向きとなる。カメラ６の撮影画像に基づいて、高い位置にあり且つ少なくとも上向き（斜め上向き）の吸着面が存在する１個の部品Ｗを、吸着ノズル１９を用いてピックアップすべき部品Ｗとして決定することができる。
【００２９】
このとき、ロボット３が有する吸着ノズル１９（複合ハンドツール１８）は、水平軸Ｏを中心に自在に回動させることができるので、吸着ノズル１９を、ピックアップすべき部品Ｗの吸着面の傾きに対応した角度（姿勢）として該当する部品Ｗ上まで移動させ、部品Ｗを容易に吸着することが可能となる。そして、吸着ノズル１９を用いて１個の部品Ｗの上向き（斜め上向き）の面を吸着してピックアップし、仮置き領域８に、その状態から一番整え易い仮姿勢で載置することができる。これと共に、仮置き領域８に載置された仮姿勢の部品Ｗを、ロボット３が有するチャック２０を用いて、正確に（高い位置精度で）把持して、最終確定姿勢に変位させて部品載置位置７ａに載置することができる。
【００３０】
この場合、部品Ｗの当初姿勢から仮姿勢への姿勢変更、及び、仮姿勢から最終確定姿勢への姿勢変更、の２回の姿勢変更で当初姿勢から最終確定姿勢にすれば良いので、６軸構成から２軸分足りない４軸型のロボット３でも、その軸数の不足分を、姿勢変更を２回行うことで十分にカバーすることが可能となったのである。例えば、当初姿勢が、最終確定姿勢から１８０度上下反転している（裏返っている）ような場合には、６軸型のロボットを用いても、最終確定姿勢にすることが困難な場合がある。ところが、本実施例では、そのような場合でも、当初姿勢から９０度回転させて仮姿勢とし、その仮姿勢から更に９０度回転させて最終確定姿勢にするといったことも可能となる。
【００３１】
ところで、本実施例では図２に示すように、吸着ノズル１９及びチャック２０を放射方向にＶ字状に開いて一体的に有する複合ハンドツール１８を採用し、その開き角度θを、９０度以上、１３５度以下の範囲内（例えば１０５度）に構成した。この構成によれば、プレート１７の回動により、吸着ノズル１９及びチャック２０を選択的に使用することができると共に、部品Ｗの吸着面の傾斜角度や、部品Ｗの把持すべき姿勢に応じて、それら吸着ノズル１９及びチャック２０の水平方向に対する傾斜角度を自在に変更（首振り）することができる。このとき、角度θを９０度〜１３５度の範囲内としたことの適正について、図３、図４も参照して述べる。
【００３２】
今、図２〜図４に示すように、部品収容箱４に収容されている部品Ｗが直方体形状であると仮定すると、その部品Ｗの上向きのいずれかの面を吸着ノズル１９により吸着する際には、部品Ｗの吸着可能な面は、水平から４５度までの間に必ず一面は存在する。つまり、吸着ノズル１９により吸着する部品Ｗの吸着面の、水平方向に対する傾き角度は、最良の場合は０度、最悪の場合でも４５度であると考えられる。
【００３３】
図３は、吸着ノズル１９及びチャック２０の開き角度が９０度の場合を例示している。ここで、図３（ａ）に示すように、部品Ｗの吸着面が水平（０度）の場合、チャック２０が吸着ノズル１９に対して９０度開いていれば邪魔になることはない。一方、図３（ｂ）に示すように、部品Ｗの吸着面が水平方向に対し４５度傾いていて、吸着ノズル１９を真下向きから４５度傾けた場合には、チャック２０の先端が吸着ノズル１９の先端とほぼ同じ高さまで下降した状態となる。吸着ノズル１９及びチャック２０の開き角度が９０度よりも小さいと、部品収容箱４内にピックアップすべき部品Ｗとほぼ同じ高さに別の部品Ｗが存在した場合には、チャック２０がその部品Ｗに干渉する虞があり、そのような干渉防止の観点からは、吸着ノズル１９及びチャック２０の開き角度を９０度以上とすることが望ましい。
【００３４】
他方、図４は、吸着ノズル１９及びチャック２０の開き角度が１３５度の場合を例示している。この場合には、図４（ｂ）に示すように、吸着ノズル１９を４５度傾けた場合でも、チャック２０は高い位置（水平状態）にあって邪魔にならず、上記した干渉の虞はない。干渉防止に関しては、１３５度から１８０度までは、１３５度と同じ機能である。ところが、開き角度が１３５度を越えてしまうと、図４（ａ）からも理解できるように、吸着ノズル１９を真下に向けた際に、チャック２０が高い位置に至り、ロボット３のアーム（例えばＺ軸ユニット１１やトラバース１５等）に干渉する虞がある。或いはその干渉を避けるために、ロボット３の手首部１６が上下方向に大型化する虞がある。従って、大型化防止の観点からは、吸着ノズル１９とチャック２０との開き角度を、より小さく（１３５度以下に）することが望ましい。
【００３５】
本実施例では、図２に示すように、吸着ノズル１９及びチャック２０の開き角度θを、９０度〜１３５度の範囲内であって、吸着ノズル１９を４５度傾けた場合に、チャック２０の先端が、吸着ノズル１９よりも高さ寸法Ａ（図２（ｂ）参照）だけ上方に位置する角度（例えば１０５度）としている。前記高さ寸法Ａは、部品Ｗの長辺の長さ寸法Ｓ（図２（ａ）参照）に対し、Ａ≧Ｓ／（２√２）となる値である（√２は、「ルート２」と読む。以下も同じ）。尚、チャック２０の長さ寸法はＬである。
【００３６】
即ち、図２（ｂ）に想像線で示すように、吸着ノズル１９により、吸着面が４５度傾いた部品Ｗの最も長い辺の中央部を吸着する場合に、部品Ｗの上方への突出寸法は、Ｓ／（２√２）となる。このとき、チャック２０の先端の、吸着ノズル１９の先端からの高さ寸法Ａが、Ｓ／（２√２）以上であれば、チャック２０が部品Ｗに干渉する虞はない。従って、適切な角度θは、部品Ｗの大きさ（寸法Ｓ）及びチャック２０の長さ寸法Ｌから、θ＝４５度＋ｃｏｓ−１（１／√２−Ａ／Ｌ）      但し０＜Ａ＜Ｌ／√２
の式で求めることができる（ｃｏｓ−１は、「コサインインバース」と読む）。例えば、Ａ＝３０ｍｍ、Ｌ＝１５０ｍｍであるとすると、角度θの値は約１０５度となる。
【００３７】
この開き角度θによれば、図２（ａ）に示すように、吸着ノズル１９を真下に向けた場合でも、チャック２０がそれほど高い位置まで至ることはない。また、図２（ｂ）に示すように、吸着ノズル１９を４５度傾けた場合には、チャック２０の先端は、吸着ノズル１９よりも高さ寸法Ａだけ上方に位置しており、吸着動作の邪魔になることはない。
【００３８】
このように本実施例のビンピッキングシステム１によれば、ビンピッキングの作業を行うにあたり、従来の６軸型ロボットを採用するものと異なり、同スケールの６軸型ロボットに比べて小型な４軸型のロボット３を採用しても良好に作業を行うことができ、ロボット３自体を、構成が簡単で且つ小型なもので済ませることができる。これと共に、従来のような部品を重なりがなくなるようにばら撒くものと異なり、部品Ｗをばら撒くため大きなスペースも必要なく、仮置き領域８として、１個の部品Ｗを載置できる程度のスペースがあれば済むので、設備全体としての小型化を図ることができる。
【００３９】
（２）第２、第３の実施例、その他の実施例
図７は、本発明の第２の実施例に係るビンピッキングシステム３１の構成を概略的に示している。このビンピッキングシステム３１においては、作業台２上に設けられる部品供給部５（部品収容箱４）、コンベア装置７（部品載置位置７ａ）、仮置き領域８については、上記第１の実施例と共通している。また、前記部品供給部５の上方には、部品収容箱４内の部品Ｗを上方から撮影する視覚装置たるカメラ６が固定的に設けられている。
【００４０】
この実施例が上記第１の実施例と異なるところは、４軸型のロボットの構成にあり、ここでは、共にＸＲ型ロボットからなる、第１のロボット３２と第２のロボット３３とを備えている。即ち、作業台２の上方の所定の高さ位置には、Ｘ軸方向（左右方向）に水平に延びて直線移動レール３４が架設されている。前記第１のロボット３２は、この直線移動レール３４の右側の下面側に吊下げられた状態で、該直線移動レール１３に沿ってＸ軸方向に移動可能に設けられ、前記第２のロボット３３は、直線移動レール３４の左側の下面側に吊下げられた状態で、やはり該直線移動レール１３に沿ってＸ軸方向に移動可能に設けられている。
【００４１】
そのうち第１のロボット３２は、周知のように、直線移動レール３４に沿って移動されるベース３５、このベース３５の下面側に設けられ垂直軸（Ｒ軸）を中心に回動（旋回）される旋回アーム３６、この旋回アーム３６の先端（図で前面）に設けられ上下動される直動アーム３７、この直動アーム３７の下面に設けられ垂直軸（Ｔ軸）を中心に同軸回転される手首部３８、この手首部３８に設けられ水平軸を中心に回動（角度変更）される吸着ノズル３９を備えて構成されている。また、図示はしないが、この第１のロボット３２には、各軸を駆動するためのモータや駆動機構等が組込まれている。
【００４２】
また、第２のロボット３３は、同様に、直線移動レール３４に沿って移動されるベース３５、このベース３５の下面側に設けられ垂直軸（Ｒ軸）を中心に回動（旋回）される旋回アーム３６、この旋回アーム３６の先端に設けられ上下動される直動アーム３７、この直動アーム３７の下面に設けられ垂直軸（Ｔ軸）を中心に同軸回転される手首部３８を備えると共に、その手首部３８に、水平軸を中心に回動（角度変更）されるエア駆動式のチャック４０を備えて構成されている。また、図示はしないが、この第２のロボット３３には、各軸を駆動するためのモータや駆動機構等が組込まれている。更に、この第２のロボット３３の直動アーム３７には、仮置き領域８に仮姿勢で載置された部品Ｗを撮影する第２のカメラ４１が設けられている。
上記第１のロボット３２及び第２のロボット３３は、制御装置４２により制御され、ビンピッキングの作業を実行する。また、制御装置４２には、カメラ６及び第２のカメラ４１の撮影画像のデータが入力される。
【００４３】
このとき、制御装置４２は、上記第１の実施例と同様に、前記カメラ６の撮影情報に基づいて、前記部品収容箱４内のピックアップすべき１個の部品Ｗを決定すると共に、当該部品Ｗの一つの面を第１のロボット３２の有する吸着ノズル３９を用いて吸着する第１のロボット３２の位置及び姿勢を演算し、さらに、吸着ノズル３９により当該部品Ｗを吸着した状態で当初姿勢から変更可能ないずれかの仮姿勢を求めるようになっている。そして、制御装置４２は、その演算に基づいて、第１のロボット３２を制御し、前記部品収容箱４内の１個の部品Ｗを、前記吸着ノズル３９で吸着してピックアップし、いずれかの仮姿勢となるように前記仮置き領域８に載置する作業を実行させる。
【００４４】
制御装置４２は、これと共に、仮置き領域８にいずれかの仮姿勢で載置された部品Ｗを、第２のロボット３３に設けられた第２のカメラ４１で撮影し、その画像データから、前記チャック４０を用いた動作により最終確定姿勢とすることができるように当該部品Ｗの把持すべき位置及び姿勢を演算するようになっている。そして、前記仮置き領域８に仮姿勢で載置されている部品Ｗを、前記チャック４０により把持して最終確定姿勢となるように前記部品載置位置７ａに載置する作業を実行させるようになっている。
【００４５】
これにより、前記部品収容箱４内の１個の部品Ｗをピックアップして前記仮置き領域（にいずれかの仮姿勢となるように載置する作業と、前記仮置き領域８に仮姿勢で載置されている部品Ｗを把持して前記部品載置位置７ａに最終確定姿勢で載置する作業とが、それら第１のロボット３２及び第２のロボット３３により分担して実行されるのである。つまり、第１のロボット３２は、吸着ノズル３９を用いて、部品収容箱４から仮置き領域８に１個の部品Ｗを搬送する作業を繰返し、第２のロボット３３は、チャック４０を用いて、仮置き領域８の部品Ｗを部品載置位置７ａに最終確定姿勢で載置する作業を繰返し行うのである。このとき、２台のロボット３２、３３が互いに干渉することのないように制御されることは勿論である。
【００４６】
このような第２の実施例によれば、第１の実施例と同様に、４軸型のロボット３２，３３を採用しても良好に作業を行うことができ、ロボット３２，３３自体を、構成が簡単で且つ小型なもので済ませることができると共に、部品Ｗをばら撒くため大きなスペースも必要なく、仮置き領域８として、１個の部品Ｗを載置できる程度のスペースがあれば済むので、設備全体としての小型化を図ることができる。
【００４７】
特に本実施例では、２台の４軸型のロボット３２，３３を用いることによって、１台のロボット３で使用すべきツールを吸着ノズル１９からチャック２０へ切替えるといった動作も不要となり、ビンピッキングの作業を効率的に行うことが可能となる。更に、特に本実施例では、仮置き領域８にいずれかの仮姿勢で載置された部品Ｗを、第２のカメラ４１で撮影し、その画像データから、チャック４０を用いた動作により最終確定姿勢とすることができるように当該部品Ｗの把持すべき位置及び姿勢を演算するようになっているので、仮姿勢の部品Ｗのより一層正確な位置及び姿勢を求めて、より高精度な作業を行うことができる。
【００４８】
図８は、本発明の第３の実施例を示すもので、上記第１の実施例と異なる点は、４軸型のロボットとして、直角座標型のロボット３に代えて、スカラ型（水平多関節型）のロボット５１を採用した点にある。このロボット５１は以下のように構成されている。即ち、作業台２上の後部側に設置されるベース５２上に、水平方向に延びる第１アーム５３の基端部が、直軸Ｊ１を中心に回動（旋回）するように連結され、この第１アーム５３の先端上面部に、水平方向に延びる第２アーム５４の基端部が、垂直軸Ｊ２を中心に回動（旋回）するように連結されている。
【００４９】
前記第２アーム５４の先端部には、上下に延びるシャフト状をなす上下アーム５５が、上下動及びＴ軸を中心に回転可能に設けられ、その上下アーム５５の先端（下端）には、水平方向に延びる回動軸Ｏを中心に図示しない回動モータにより回動されるプレート（フランジ部）５６が設けられている。そして、このプレート５６には、上記第１の実施例と同様に、吸着ノズル１９とチャック２０とをＶ字状に開いた形態（開き角度θが、９０度〜１３５度の範囲内）で一体的に有する複合ハンドツール１８が取付けられている。
【００５０】
このような構成のロボット５１を採用した場合でも、同スケールの６軸型ロボットに比べて小型に済ませることができ、上記第１の実施例等と同様に、４軸型のロボット５１により良好なビンピッキングの作業を行うことができ、ロボット５１自体を、構成が簡単で且つ小型なもので済ませることができる。これと共に、部品Ｗを重なりの無いようにばら撒くため大きなスペースも必要なく、仮置き領域８として、１個の部品Ｗを載置できる程度のスペースがあれば済むので、設備全体としての小型化を図ることができる。
【００５１】
尚、上記第１の実施例では、視覚装置としてのカメラ６を、部品供給部５（部品収容箱４）の上方に固定的に設けるようにしたが、同様のカメラをロボット３のアーム（Ｚ軸ユニット１１）に下向きに取付け、ロボット３によりカメラを部品収容箱４の上方に移動させて撮影するように構成しても良い。この場合、ロボット３に取付けられたカメラによって、仮置き領域８に仮姿勢で載置された部品Ｗについても撮影し、その撮影画像データから部品Ｗの位置及び姿勢を検出するようにすれば、チャック２０による把持ひいては最終確定姿勢への変換を、より高精度で行うことが可能となる。固定的に設けられたカメラと、ロボットに取付けられたカメラとの双方を用いる構成としても良い。さらには、設備に固定的に設けられた２台のカメラによって、部品収容箱４内の部品Ｗ、及び、仮置き領域８に仮姿勢で載置された部品Ｗを夫々撮影する構成としても良い。
【００５２】
また、例えば部品Ｗの形状としても、直方体を基本としたものに限らず、円筒状や薄板上のものなど、様々な形状の部品について、本発明を適用することができる。さらには、チャックとしても、エア駆動方式のものに限らず、電動式のものであっても良い。その他、複合ハンドツールの開き角度θ、ロボットの全体構成、作業台上の各位置のレイアウト等についても様々な変更が可能であるなど、本発明は要旨を逸脱しない範囲内で適宜変更して実施し得るものである。
【符号の説明】
【００５３】
図面中、１，３１はビンピッキングシステム、２は作業台、３，３２，３３，４１はロボット、４は部品収容箱、５は部品供給部、６はカメラ（視覚装置）、７ａは部品載置位置、８は仮置き領域、１６，３８は手首部、１７，５６はプレート、１８は複合ハンドツール、１９，３９は吸着ノズル、２０，４０はチャック、２１，４２は制御装置、４１は第２のカメラ、Ｗは部品を示す。
【図１】
0005522298.tif 000002
【図２】
0005522298.tif 000003
【図３】
0005522298.tif 000004
【図４】
0005522298.tif 000005
【図５】
0005522298.tif 000006
【図６】
0005522298.tif 000007
【図７】
0005522298.tif 000008
【図８】
0005522298.tif 000009