(57)【特許請求の範囲】
【請求項１】
物理的に仕切られた複数の領域の各々に無作為に互いに接触して配置された複数のワークから１つずつワークをロボットアームにより取り出すワーク取出システムであって、
前記複数のワークの配置状態を検出する配置状態検出部を備え、
前記配置状態検出部は、前記複数の領域のうちの１つの領域に配置された前記ワークを取り出すワーク取出動作が前記ロボットアームにより行われている間に、他の領域に配置された前記複数のワークの配置状態を検出するように構成されており、
前記ロボットアームによる前記ワーク取出動作が物理的に仕切られた前記複数の領域に対して順次行われるとともに、前記配置状態検出部による前記複数のワークの配置状態検出結果に基づいて前記複数のワークのうちの１つのワークを選択して前記ロボットアームにより取り出すように構成されている、ワーク取出システム。
【請求項２】
前記配置状態検出部は、前記複数の領域のうちの１つの領域に配置された前記ワークに対して前記ロボットアームによる前記ワーク取出動作が行われている間に、次回以降に前記ロボットアームによる前記ワーク取出動作の対象となる前記他の領域に配置された前記ワークの配置状態を検出するように構成されている、請求項１に記載のワーク取出システム。
【請求項３】
前記複数の領域は、前記ロボットアームによる前記ワーク取出動作の対象となる第１領域と、前記第１領域の次に前記ロボットアームによる前記ワーク取出動作の対象となる第２領域と、前記第２領域の次に前記ロボットアームによる前記ワーク取出動作の対象となる第３領域とを含み、
前記配置状態検出部は、前記第１領域に配置された前記ワークに対して前記ロボットアームによる前記ワーク取出動作が行われている間に、前記第２領域に配置された前記ワークの配置状態を検出するとともに、前記第２領域に配置された前記ワークに対して前記ロボットアームによる前記ワーク取出動作が行われている間に、前記第３領域に配置された前記ワークの配置状態を検出するように構成されている、請求項２に記載のワーク取出システム。
【請求項４】
前記配置状態検出部は、
前記複数の領域を撮像する撮像部と、
前記撮像部により撮像された撮像画像の画像認識処理を行う画像認識部とを含み、
前記複数の領域のうちの１つの領域に配置された前記ワークに対して前記ロボットアームによる前記ワーク取出動作が行われている間に、前記撮像部により撮像された前記他の領域の撮像画像の画像認識処理を前記画像認識部により行うことによって、前記他の領域に配置された前記ワークの配置状態を検出するように構成されている、請求項１〜３のいずれか１項に記載のワーク取出システム。
【請求項５】
前記配置状態検出部は、前記ロボットアームによる前記ワーク取出動作が前記複数の領域に対して順次行われる場合において、前記ロボットアームによる前記ワーク取出動作が前記複数の領域に対して順次行われる前に、前記複数の領域を一括して前記撮像部により同時に撮像するように構成されている、請求項４に記載のワーク取出システム。
【請求項６】
前記配置状態検出部は、前記ロボットアームによる前記ワーク取出動作が前記複数の領域に対して順次行われる一連の取出動作サイクルが繰り返される場合において、前記一連の取出動作サイクルが繰り返される毎に、前記複数の領域全てを一括して前記撮像部により同時に撮像するように構成されている、請求項５に記載のワーク取出システム。
【請求項７】
前記撮像部による撮像は、前記ロボットアームによる前記ワーク取出動作によって取り出された前記ワークを所定の位置まで搬送するワーク搬送動作と並行して行われるように構成されている、請求項５または６に記載のワーク取出システム。
【請求項８】
前記配置状態検出部は、前記ロボットアームによる前記ワーク取出動作によって取り出された前記ワークを所定の位置まで搬送するワーク搬送動作が前記ロボットアームにより行われる場合において、前記複数の領域のうちの１つの領域に配置された前記ワークに対して、前記ロボットアームによる前記ワーク取出動作が行われている間のみならず前記ロボットアームによる前記ワーク搬送動作が行われている間にも、他の領域に配置された前記ワークの配置状態を検出するように構成されている、請求項１〜７のいずれか１項に記載のワーク取出システム。
【請求項９】
前記配置状態検出部は、前記複数の領域に対して固定的に設置されている、請求項１〜８のいずれか１項に記載のワーク取出システム。
【請求項１０】
前記ワークは、複数の容器内に配置されており、
前記配置状態検出部は、前記複数の容器のうちの１つの容器内に配置された前記ワークを取り出す前記ワーク取出動作が前記ロボットアームにより行われている間に、他の容器内に配置された前記ワークの配置状態を検出するように構成されている、請求項１〜９のいずれか１項に記載のワーク取出システム。
【請求項１１】
前記配置状態検出部は、前記ワークまでの間の距離を検出することにより、前記ワークの配置状態を検出するように構成されており、
前記配置状態検出部により検出された前記ワークの配置状態に関する情報に基づいて選択された前記ワークが前記ロボットアームにより取り出されるように構成されている、請求項１〜１０のいずれか１項に記載のワーク取出システム。
【請求項１２】
物理的に仕切られた複数の領域の各々に無作為に互いに接触して配置された複数のワークから１つずつワークを取り出すためのロボットアームと、
前記複数のワークの配置状態を検出する配置状態検出部とを備え、
前記配置状態検出部は、前記複数の領域のうちの１つの領域に配置された前記ワークを取り出すワーク取出動作が前記ロボットアームにより行われている間に、他の領域に配置された前記複数のワークの配置状態を検出するように構成されており、
前記ロボットアームによる前記ワーク取出動作が物理的に仕切られた前記複数の領域に対して順次行われるとともに、前記配置状態検出部による前記複数のワークの配置状態検出結果に基づいて前記複数のワークのうちの１つのワークを選択して前記ロボットアームにより取り出すように構成されている、ロボット装置。
【請求項１３】
前記配置状態検出部は、前記ワークまでの間の距離を検出することにより、前記ワークの配置状態を検出するように構成されており、
前記ロボットアームの制御を行うロボット制御部をさらに備え、
前記ロボット制御部は、前記配置状態検出部により検出された前記ワークの配置状態に関する情報に基づいて選択した前記ワークを前記ロボットアームに取り出させる制御を行うように構成されている、請求項１２に記載のロボット装置。
【請求項１４】
物理的に仕切られた複数の領域の各々に無作為に互いに接触して配置された複数の被加工物から１つずつ被加工物を１つの領域からロボットアームにより取り出すステップと、
前記被加工物を前記ロボットアームにより取り出すステップと並行して、他の領域に配置された前記複数の被加工物の配置状態を配置状態検出部により検出するステップと、
前記ロボットアームにより取り出された前記被加工物に対して所定の処理を施すステップとを備え、
前記被加工物を前記ロボットアームにより取り出すステップは、前記ロボットアームによる前記被加工物の取出動作が物理的に仕切られた前記複数の領域に対して順次行われるステップと、前記配置状態検出部による前記複数の被加工物の配置状態検出結果に基づいて前記複数の被加工物のうちの１つの被加工物を選択して前記ロボットアームにより取り出すステップとを含む、被加工物の製造方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ワーク取出システム、ロボット装置および被加工物の製造方法に関し、特に、ワークをロボットアームにより取り出すワーク取出システム、ロボット装置および被加工物の製造方法に関する。
【背景技術】
【０００２】
従来、ワークをロボットアームにより取り出すワーク取出システムが知られている（たとえば、特許文献１参照）。
【０００３】
上記特許文献１には、ストッカ内に配置された複数のワークをロボットアームにより取り出すワーク取出システムが開示されている。このワーク取出システムでは、ワークが配置されている領域（ストッカの内部の領域）を撮像することによって、ストッカ内における複数のワークの配置状態（配置位置や配置姿勢など）を検出するセンサユニット（配置状態検出部）が設けられている。そして、センサユニットにより検出された配置状態に関する情報に基づいて選択された１つのワークを取り出すように、ロボットアームが駆動される。
【０００４】
ここで、上記特許文献１に開示されたような従来のワーク取出システムでは、ストッカを複数設けて複数のストッカからワークを順次取り出す場合、複数のストッカのうちの１つのストッカからワークを取り出す毎にロボットアームの駆動が停止され、次にワークを取り出す対象となる他のストッカに配置されたワークの配置状態が３次元計測ユニットにより検出されると考えられる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１１−１１５９３０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記したような構成を有する従来のワーク取出システムでは、複数のストッカからワークを順次取り出す場合に、複数のストッカのうちの１つのストッカからワークを取り出す毎にロボットアームの駆動が停止されるため、その分、複数のストッカからワークを順次取り出す一連のワーク取出工程に要する時間（タクトタイム）が長くなる。このため、従来では、複数の領域からワークを順次取り出す一連のワーク取出工程に要する時間を短縮することが望まれている。
【０００７】
この発明は、上記のような課題を解決するためになされたものであり、この発明の１つの目的は、複数の領域からワークを順次取り出す一連のワーク取出工程に要する時間を短縮することが可能なワーク取出システム、ロボット装置および被加工物の製造方法を提供することである。
【課題を解決するための手段および発明の効果】
【０００８】
上記目的を達成するために、この発明の第１の局面によるワーク取出システムは、物理的に仕切られた複数の領域の各々に無作為に互いに接触して配置された複数のワークから１つずつワークをロボットアームにより取り出すワーク取出システムであって、複数のワークの配置状態を検出する配置状態検出部を備え、配置状態検出部は、複数の領域のうちの１つの領域に配置されたワークを取り出すワーク取出動作がロボットアームにより行われている間に、他の領域に配置された複数のワークの配置状態を検出するように構成されており、ロボットアームによるワーク取出動作が物理的に仕切られた複数の領域に対して順次行われるとともに、配置状態検出部による複数のワークの配置状態検出結果に基づいて複数のワークのうちの１つのワークを選択してロボットアームにより取り出すように構成されている。
【０００９】
この発明の第１の局面によるワーク取出システムでは、上記のように、複数の領域のうちの１つの領域に配置されたワークを取り出すワーク取出動作がロボットアームにより行われている間に、他の領域に配置されたワークの配置状態を検出するように配置状態検出部を構成する。これにより、複数の領域からワークを順次取り出す場合に、複数の領域のうちの１つの領域に配置されたワークをロボットアームにより取り出すワーク取出動作と、他の領域に配置されたワークの配置状態を配置状態検出部により検出する処理とを並行して行うことができるので、配置状態検出部によりワークの配置状態が検出されている間にロボットアームの駆動が停止されるのを抑制することができる。その結果、複数の領域からワークを順次取り出す一連のワーク取出工程に要する時間（タクトタイム）を短縮することができる。
【００１０】
この発明の第２の局面によるロボット装置は、物理的に仕切られた複数の領域の各々に無作為に互いに接触して配置された複数のワークから１つずつワークを取り出すためのロボットアームと、複数のワークの配置状態を検出する配置状態検出部とを備え、配置状態検出部は、複数の領域のうちの１つの領域に配置されたワークを取り出すワーク取出動作がロボットアームにより行われている間に、他の領域に配置された複数のワークの配置状態を検出するように構成されており、ロボットアームによるワーク取出動作が物理的に仕切られた複数の領域に対して順次行われるとともに、配置状態検出部による複数のワークの配置状態検出結果に基づいて複数のワークのうちの１つのワークを選択してロボットアームにより取り出すように構成されている。
【００１１】
この発明の第２の局面によるロボット装置では、上記のように、複数の領域のうちの１つの領域に配置されたワークを取り出すワーク取出動作がロボットアームにより行われている間に、他の領域に配置されたワークの配置状態を検出するように配置状態検出部を構成する。これにより、複数の領域からワークを順次取り出す場合に、複数の領域のうちの１つの領域に配置されたワークをロボットアームにより取り出すワーク取出動作と、他の領域に配置されたワークの配置状態を配置状態検出部により検出する処理とを並行して行うことができるので、配置状態検出部によりワークの配置状態が検出されている間にロボットアームの駆動が停止されるのを抑制することができる。その結果、複数の領域からワークを順次取り出す一連のワーク取出工程に要する時間を短縮することが可能なロボット装置を提供することができる。
【００１２】
この発明の第３の局面による被加工物の製造方法は、物理的に仕切られた複数の領域の各々に無作為に互いに接触して配置された複数の被加工物から１つずつ被加工物を１つの領域からロボットアームにより取り出すステップと、被加工物をロボットアームにより取り出すステップと並行して、他の領域に配置された複数の被加工物の配置状態を配置状態検出部により検出するステップと、ロボットアームにより取り出された被加工物に対して所定の処理を施すステップとを備え、被加工物をロボットアームにより取り出すステップは、ロボットアームによる被加工物の取出動作が物理的に仕切られた複数の領域に対して順次行われるステップと、配置状態検出部による複数の被加工物の配置状態検出結果に基づいて複数の被加工物のうちの１つの被加工物を選択してロボットアームにより取り出すステップとを含む、被加工物の製造方法
【００１３】
この発明の第３の局面による被加工物の製造方法では、上記のように、複数の領域のうちの１つの領域に配置されたワークを取り出すワーク取出動作がロボットアームにより行われている間に、他の領域に配置されたワークの配置状態を検出するように配置状態検出部を構成する。これにより、複数の領域からワークを順次取り出す場合に、複数の領域のうちの１つの領域に配置されたワークをロボットアームにより取り出すワーク取出動作と、他の領域に配置されたワークの配置状態を配置状態検出部により検出する処理とを並行して行うことができるので、配置状態検出部によりワークの配置状態が検出されている間にロボットアームの駆動が停止されるのを抑制することができる。その結果、複数の領域からワークを順次取り出す一連のワーク取出工程に要する時間を短縮することが可能な被加工物の製造方法を提供することができる。
【図面の簡単な説明】
【００１４】
【図１】本発明の第１および第２実施形態によるロボットシステムを側方から見た全体図である。
【図２】本発明の第１および第２実施形態によるロボットシステムを上方から見た全体図である。
【図３】本発明の第１および第２実施形態によるロボットシステムの３次元計測ユニットの正面図である。
【図４】本発明の第１および第２実施形態によるロボットシステムのブロック図である。
【図５】本発明の第１実施形態によるロボットシステムにおいてストッカからワークが順次取り出されて搬送される際における３次元計測ユニットおよびロボットアームの動作を説明するためのタイミングチャートである。
【図６】本発明の第２実施形態によるロボットシステムにおいてストッカからワークが順次取り出されて搬送される際における３次元計測ユニットおよびロボットアームの動作を説明するためのタイミングチャートである。
【図７】本発明の第１および第２実施形態の変形例によるロボットシステムを上方から見た全体図である。
【発明を実施するための形態】
【００１５】
以下、本発明の実施形態を図面に基づいて説明する。
【００１６】
（第１実施形態）
まず、図１〜図４を参照して、第１実施形態によるロボットシステム１００の構成について説明する。なお、ロボットシステム１００は、本発明の「ワーク取出システム」の一例であるとともに、本発明の「ロボット装置」の一例である。
【００１７】
図１および図２に示すように、第１実施形態によるロボットシステム１００は、ロボット１と、ロボット１の各部の制御を行うロボットコントローラ２と、ロボットコントローラ２に接続された３次元計測ユニット３とを備えている。なお、ロボットコントローラ２は、本発明の「ロボット制御部」の一例である。また、３次元計測ユニット３は、本発明の「配置状態検出部」の一例である。
【００１８】
また、ロボットシステム１００に隣接するように、上面（矢印Ｚ１方向側の面）に矩形形状の開口を有する箱状の４つのストッカＡ、Ｂ、ＣおよびＤが配置されている。ストッカＡ、Ｂ、ＣおよびＤは、それぞれ、金属や樹脂などから形成されている。また、図２に示すように、ストッカＡ、Ｂ、ＣおよびＤの内部には、それぞれ、複数のワークａ、ｂ、ｃおよびｄが無作為に配置（バラ積み）されている。また、ロボットシステム１００に隣接するように、ストッカＡ〜Ｄ内のワークａ〜ｄに対して所定の処理を施すための次工程の機器２００（たとえば、加工機）が配置されている。なお、ストッカＡ〜Ｄは、本発明の「容器」の一例である。また、ワークａ〜ｄは、本発明の「被加工物」の一例である。
【００１９】
ロボット１は、ロボットアーム１１により構成される多関節ロボットからなる。また、ロボットアーム１１は、基台１２と、複数のアーム部分１３と、各アーム部分１３を接続する複数の関節１４とを有する。また、ロボットアーム１１には、関節１４を駆動するためのサーボモータ（図示せず）が内蔵されており、ロボットアーム１１（サーボモータ）の駆動は、ロボットコントローラ２によって制御されるように構成されている。
【００２０】
また、ロボットアーム１１の先端には、ワークａ〜ｄを把持（保持）するためのハンド部（グリッパ部）１５が設けられている。ハンド部１５には、一対の指部材１５ａが設けられている。一対の指部材１５ａは、アクチュエータ（図示せず）によって互いの間隔を縮めたり、広げたりするように駆動される。また、一対の指部材１５ａの駆動は、ロボットコントローラ２により制御されるように構成されている。
【００２１】
ここで、第１実施形態では、ロボットアーム１１は、４つのストッカＡ〜Ｄのうちの１つからワークａ〜ｄを１つずつ取り出すワーク取出動作と、取り出したワークａ〜ｄを次工程の機器２００の作業台（図示せず）上の所定の位置まで搬送するワーク搬送動作とを行うように構成されている。以下では、ストッカＡ〜Ｄのワークａ〜ｄに対するロボットアーム１１によるワーク取出動作がストッカＡ、Ｂ、ＣおよびＤの順番で順次行われる一連の取出動作サイクルが繰り返される例について説明する。なお、この順番は、任意に設定可能である。
【００２２】
３次元計測ユニット３は、４つのストッカＡ〜Ｄ内にそれぞれ配置された複数のワークａ〜ｄ（図２参照）の配置状態（配置位置や配置姿勢など）を検出するために設けられている。図１に示すように、３次元計測ユニット３は、ストッカＡ〜Ｄに対して上方（矢印Ｚ１方向側）に固定的に設置されている。また、図３および図４に示すように、３次元計測ユニット３は、カメラ３１と、レーザスキャナ３２と、制御部３３と、記憶部３４とを含むように構成されている。なお、カメラ３１は、本発明の「撮像部」の一例である。また、制御部３３は、本発明の「画像認識部」の一例である。
【００２３】
図１および図２に示すように、カメラ３１およびレーザスキャナ３２は、ストッカＡ〜Ｄの上面（矢印Ｚ１方向側）に対向して下方（矢印Ｚ２方向側）を向くように３次元計測ユニット３に設けられている。これにより、カメラ３１は、ストッカＡ〜Ｄを上方（矢印Ｚ１方向側）から撮像することが可能なように構成されている。なお、第１実施形態では、カメラ３１は、ストッカＡ〜Ｄの全てを一括して同時に撮像することが可能な視野を有している。また、レーザスキャナ３２は、スリット光を発生するレーザ光源（図示せず）と、ミラー（図示せず）と、ミラーを駆動するモータ（図示せず）とを含むように構成されている。そして、レーザ光源から照射されたスリット状のレーザ光がミラーに照射され、ミラーがモータにより回転されることにより、ストッカＡ〜Ｄ内に配置されたワークａ〜ｄにスリット状のレーザ光が照射（走査）されるように構成されている。ワークａ〜ｄに照射されたレーザ光の反射光は、カメラ３１によって所定のフレームレートで撮像される。そして、制御部３３により、カメラ３１により撮像された撮像画像の画像認識処理が行われる。この画像認識処理においては、モータの回転角度と、カメラ３１の撮像素子の位置と、レーザ光源、ミラーおよびカメラの位置関係とに基づいて、三角測量の原理により、ストッカＡ〜Ｄ内のワークａ〜ｄまでの距離(ワークａ〜ｄの３次元形状に関する情報)が検出される。
【００２４】
制御部３３は、上記画像認識処理を行うことによって検出したワークａ〜ｄまでの間の距離に基づいて、ストッカＡ〜Ｄ内に配置された複数のワークａ〜ｄの配置状態を検出するように構成されている。具体的には、３次元計測ユニット３の記憶部３４には、ワークａ〜ｄの３次元形状に関する情報が予め記憶されており、予め記憶部３４に記憶されたワークａ〜ｄの３次元形状に関する情報と、検出されたストッカＡ〜Ｄ内のワークａ〜ｄの３次元形状に関する情報とが比較されることにより、個々のワークａ〜ｄの配置状態（配置位置や配置姿勢など）が検出される。ここで、第１実施形態では、ロボットコントローラ２は、３次元計測ユニット３により検出されたワークａ〜ｄの配置状態に関する情報（ストッカａ〜ｄ内のワークａ〜ｄの３次元形状に関する情報）に基づいて、ストッカａ〜ｄ内に配置された複数のワークａ〜ｄのうちの１つ（たとえば、保持しやすい位置にあるワークａ〜ｄ）を選択してロボットアーム１１に取り出させる制御を行うように構成されている。
【００２５】
また、第１実施形態では、３次元計測ユニット３は、ストッカＡ〜Ｄのうちの１つに配置されたワークａ〜ｄを取り出すワーク取出動作がロボットアーム１１により行われている間に、現在ロボットアーム１１によるワーク取出動作の対象となっているストッカＡ〜Ｄ以外の他のストッカＡ〜Ｄに配置されたワークａ〜ｄの配置状態を検出するように構成されている。具体的には、３次元計測ユニット３は、ストッカＡ〜Ｄのうちの１つからワークａ〜ｄを取り出すワーク取出動作がロボットアーム１１により行われている間に、次にロボットアーム１１によるワーク取出動作の対象となるストッカＡ〜Ｄに配置されたワークａ〜ｄの配置状態を検出するように構成されている。
【００２６】
すなわち、第１実施形態では、３次元計測ユニット３は、ストッカＡからワークａを取り出すワーク取出動作がロボットアーム１１により行われている間に、ストッカＢに配置されたワークｂの配置状態を検出するように構成されている。また、３次元計測ユニット３は、ストッカＢからワークｂを取り出すワーク取出動作がロボットアーム１１により行われている間に、ストッカＣに配置されたワークｃの配置状態を検出するように構成されている。また、３次元計測ユニット３は、ストッカＣからワークｃを取り出すワーク取出動作がロボットアーム１１により行われている間に、ストッカＤに配置されたワークｄの配置状態を検出するように構成されている。
【００２７】
なお、３次元計測ユニット３は、上記のようにロボットアーム１１のワーク取出動作がワークＡ、Ｂ、ＣおよびＤの順番で順次行われる場合において、ワーク取出動作が順次行われる前に、ワークａ〜ｄの全てを一括してカメラ３１により撮像するように構成されている。また、３次元計測ユニット３は、上記のようにロボットアーム１１のワーク取出動作がワークＡ、Ｂ、ＣおよびＤの順番で順次行われる一連の取出動作サイクルが繰り返される場合において、一連の取出動作サイクルが繰り返される毎に、ワークａ〜ｄの全てを一括してカメラ３１により撮像するように構成されている。ここで、３次元計測ユニット３は、ワークａ〜ｄに対するワーク取出動作が行われている間は、そのワーク取出動作の対象となっているストッカＡ〜Ｄをカメラ３１に撮像させないようにカメラ３１の撮像動作を制御する構成されている。これにより、撮像動作時のカメラ３１の視界にロボットアーム１１が入るのを抑制することが可能である。
【００２８】
次に、図５を参照して、第１実施形態によるロボットシステム１００においてストッカＡ〜Ｄからワークａ〜ｄが順次取り出されて搬送される際における３次元計測ユニット３（カメラ３１および制御部３３）およびロボットアーム１１の動作について説明する。
【００２９】
まず、図５に示すように、タイミングｔ０において、３次元計測ユニット３のカメラ３１により、ストッカＡ〜Ｄの全てを一括して同時に撮像する撮像動作が開始される。そして、このストッカＡ〜Ｄに対するカメラ３１の撮像動作は、タイミングｔ１において終了される。
【００３０】
次に、タイミングｔ１において、３次元計測ユニット３の制御部３３により、ストッカＡ内に配置されたワークａの配置状態を認識する配置状態認識処理が開始される。具体的には、上記ストッカＡ〜Ｄに対するカメラ３１の撮像動作によって一括して撮像されたストッカＡ〜Ｄの全ての撮像画像のうちのストッカＡに対応する部分に対する画像認識処理（ストッカＡ内のワークａまでの距離を検出する処理）が制御部３３により開始される。このストッカＡに対する制御部３３の画像認識処理は、タイミングｔ２において終了される。これにより、タイミングｔ２において、ストッカＡ内のワークａまでの距離（ストッカＡ内のワークａの３次元形状に関する情報）が制御部３３により検出される。その結果、ストッカＡ内に配置されたワークａの配置状態（配置位置や配置姿勢など）が制御部３３により検出され、取り出し対象となるワークａの配置位置や配置姿勢などに関する情報がロボットコントローラ２に送信される。
【００３１】
次に、タイミングｔ２において、ロボットアーム１１により、上記制御部３３による配置状態認識処理の対象となったストッカＡからワークａを取り出すワーク取出動作が開始される。このワークａに対するワーク取出動作では、ロボットアーム１１は、上記ストッカＡに対する制御部３３の配置状態認識処理の結果検出されたワークａの配置状態に関する情報に基づいてロボットコントローラ２により選択されたワークａ（たとえば、保持しやすい位置にあるワークａ）を取り出すようにロボットコントローラ２により制御される。そして、このワークａに対するロボットアーム１１のワーク取出動作は、タイミングｔ３において終了される。
【００３２】
次に、タイミングｔ３において、ロボットアーム１１により、上記ワーク取出動作によってストッカＡから取り出されたワークａを次工程の機器２００の作業台上の所定の位置まで搬送するワーク搬送動作が開始される。そして、このワークａに対するロボットアーム１１のワーク搬送動作は、タイミングｔ４において終了される。
【００３３】
ここで、上記ストッカＡに対するロボットアーム１１のワーク取出動作の開始タイミングであるタイミングｔ２においては、制御部３３により、ストッカＢ内に配置されたワークｂの配置状態を認識する配置状態認識処理が開始される。具体的には、上記ストッカＡ〜Ｄに対するカメラ３１の撮像動作（タイミングｔ０〜ｔ１参照）によって一括して撮像されたストッカＡ〜Ｄの全ての撮像画像のうちのストッカＢに対応する部分に対する画像認識処理（ストッカＢ内のワークｂまでの距離を検出する処理）が制御部３３により開始される。このストッカＢに対する制御部３３の画像認識処理は、上記ワークａに対するロボットアーム１１のワーク取出動作およびワーク搬送動作と並行して行われる。そして、このストッカＢに対する制御部３３の画像認識処理は、上記ワークａに対するロボットアーム１１のワーク搬送動作の終了タイミングであるタイミングｔ４において終了される。これにより、タイミングｔ４において、ストッカＢ内のワークｂまでの距離（ストッカＢ内のワークｂの３次元形状に関する情報）が制御部３３により検出される。その結果、ストッカＢ内に配置されたワークｂの配置状態（配置位置や配置姿勢など）が制御部３３により検出され、取り出し対象となるワークｂの配置位置や配置姿勢などに関する情報がロボットコントローラ２に送信される。
【００３４】
次に、タイミングｔ４において、ロボットアーム１１により、上記制御部３３による配置状態認識処理の対象となったストッカＢからワークｂを取り出すワーク取出動作が開始される。このワークｂに対するワーク取出動作では、ロボットアーム１１は、上記ストッカＢに対する制御部３３の配置状態認識処理の結果検出されたワークｂの配置状態に関する情報に基づいてロボットコントローラ２により選択されたワークｂ（たとえば、保持しやすい位置にあるワークｂ）を取り出すようにロボットコントローラ２により制御される。そして、このワークｂに対するロボットアーム１１のワーク取出動作は、タイミングｔ５において終了される。
【００３５】
次に、タイミングｔ５において、ロボットアーム１１により、上記ワーク取出動作によってストッカＢから取り出されたワークｂを次工程の機器２００の作業台上の所定の位置まで搬送するワーク搬送動作が開始される。そして、このワークｂに対するロボットアーム１１のワーク搬送動作は、タイミングｔ６において終了される。
【００３６】
ここで、上記ワークｂに対するロボットアーム１１のワーク取出動作の開始タイミングであるタイミングｔ４においては、制御部３３により、ストッカＣ内に配置されたワークｃの配置状態を認識する配置状態認識処理が開始される。具体的には、上記ストッカＡ〜Ｄに対するカメラ３１の撮像動作（タイミングｔ０〜ｔ１参照）によって一括して撮像されたストッカＡ〜Ｄの全ての撮像画像のうちのストッカＣに対応する部分に対する画像認識処理（ストッカＣ内のワークｃまでの距離を検出する処理）が制御部３３により開始される。このストッカＣに対する制御部３３の画像認識処理は、上記ワークｂに対するロボットアーム１１のワーク取出動作およびワーク搬送動作と並行して行われる。そして、このストッカＣに対する制御部３３の画像認識処理は、上記ワークｂに対するロボットアーム１１のワーク搬送動作の終了タイミングであるタイミングｔ６において終了される。これにより、タイミングｔ６において、ストッカＣ内のワークｃまでの距離（ストッカＣ内のワークｃの３次元形状に関する情報）が制御部３３により検出される。その結果、ストッカＣ内に配置されたワークｃの配置状態（配置位置や配置姿勢など）が制御部３３により検出され、取り出し対象となるワークｃの配置位置や配置姿勢などに関する情報がロボットコントローラ２に送信される。
【００３７】
次に、タイミングｔ６において、ロボットアーム１１により、上記制御部３３による配置状態認識処理の対象となったストッカＣからワークｃを取り出すワーク取出動作が開始される。このワークｃに対するワーク取出動作では、ロボットアーム１１は、上記ストッカＣに対する制御部３３の配置状態認識処理の結果検出されたワークｃの配置状態に関する情報に基づいてロボットコントローラ２により選択されたワークｃ（たとえば、保持しやすい位置にあるワークｃ）を取り出すようにロボットコントローラ２により制御される。そして、このワークｃに対するロボットアーム１１のワーク取出動作は、タイミングｔ７において終了される。
【００３８】
次に、タイミングｔ７において、ロボットアーム１１により、上記ワーク取出動作によってストッカＣから取り出されたワークｃを次工程の機器２００の作業台上の所定の位置まで搬送するワーク搬送動作が開始される。そして、このワークｃに対するロボットアーム１１のワーク搬送動作は、タイミングｔ８において終了される。
【００３９】
ここで、上記ワークｃに対するロボットアーム１１のワーク取出動作の開始タイミングであるタイミングｔ６においては、制御部３３により、ストッカＤ内に配置されたワークｄの配置状態を認識する配置状態認識処理が開始される。具体的には、上記ストッカＡ〜Ｄに対するカメラ３１の撮像動作（タイミングｔ０〜ｔ１参照）によって一括して撮像されたストッカＡ〜Ｄの全ての撮像画像のうちのストッカＤに対応する部分に対する画像認識処理（ストッカＤ内のワークｄまでの距離を検出する処理）が制御部３３により開始される。このストッカＤに対する制御部３３の画像認識処理は、上記ワークｃに対するロボットアーム１１のワーク取出動作およびワーク搬送動作と並行して行われる。そして、このストッカＤに対する制御部３３の画像認識処理は、上記ワークｃに対するロボットアーム１１のワーク搬送動作の終了タイミングであるタイミングｔ８において終了される。これにより、タイミングｔ８において、ストッカＤ内のワークｄまでの距離（ストッカＤ内のワークｄの３次元形状に関する情報）が制御部３３により検出される。その結果、ストッカＤ内に配置されたワークｄの配置状態（配置位置や配置姿勢など）が制御部３３により検出され、取り出し対象となるワークｄの配置位置や配置姿勢などに関する情報がロボットコントローラ２に送信される。
【００４０】
上記のように、第１実施形態では、ワークａ〜ｃに対するロボットアーム１１のワーク取出動作およびワーク搬送動作が行われるタイミングｔ２〜ｔ８の期間において、ストッカＢ〜Ｄに対する制御部３３の配置状態認識処理が並行して行われる。
【００４１】
次に、タイミングｔ８において、ロボットアーム１１により、上記制御部３３による配置状態認識処理の対象となったストッカＤからワークｄを取り出すワーク取出動作が開始される。このワークｄに対するワーク取出動作では、ロボットアーム１１は、上記ストッカＤに対する制御部３３の配置状態認識処理の結果検出されたワークｄの配置状態に関する情報に基づいてロボットコントローラ２により選択されたワークｄ（たとえば、保持しやすい位置にあるワークｄ）を取り出すようにロボットコントローラ２により制御される。そして、このワークｄに対するロボットアーム１１のワーク取出動作は、タイミングｔ９において終了される。
【００４２】
次に、タイミングｔ９において、ロボットアーム１１により、上記ワーク取出動作によってストッカＤから取り出されたワークｄを次工程の機器２００の作業台上の所定の位置まで搬送するワーク搬送動作が開始される。そして、このワークｄに対するロボットアーム１１のワーク搬送動作は、タイミングｔ１０において終了される。
【００４３】
ここで、上記ワークｄに対するロボットアーム１１のワーク搬送動作の開始タイミングであるタイミングｔ９においては、カメラ３１により、ストッカＡ〜Ｄの全てを一括して同時に撮像する撮像動作も再度開始される。このストッカＡ〜Ｄに対するカメラ３１の撮像動作は、上記ワークｄに対するロボットアーム１１のワーク搬送動作と並行して行われる。そして、このストッカＡ〜Ｄに対するカメラ３１の撮像動作は、上記ワークｄに対するロボットアーム１１のワーク搬送動作の終了タイミングであるタイミングｔ１０において終了される。
【００４４】
なお、タイミングｔ１０以降については、上記タイミングｔ１〜ｔ１０において行われたカメラ３１の撮像動作（タイミングｔ９〜ｔ１０参照）と、制御部３３の配置状態認識処理（タイミングｔ１〜ｔ８参照）と、ロボットアーム１１のワーク取出動作およびワーク搬送動作（タイミングｔ２〜ｔ１０参照）とが、上記タイミングｔ１〜ｔ１０と同様のタイミングで繰り返される。
【００４５】
第１実施形態では、上記のように、ストッカＡ〜Ｃに配置されたワークａ〜ｃを取り出すワーク取出動作がロボットアーム１１により行われている間に、他のストッカＢ〜Ｄに配置されたワークｂ〜ｄの配置状態を検出するように３次元計測ユニット３を構成する。これにより、図５に示すように、ストッカＡ〜Ｄからワークａ〜ｄを順次取り出す場合に、ストッカＡ〜Ｃに配置されたワークａ〜ｃをロボットアーム１１により取り出すワーク取出動作と、他のストッカＢ〜Ｄに配置されたワークｂ〜ｄの配置状態を３次元計測ユニット３により検出（認識）する処理とを並行して行うことができるので、３次元計測ユニット３によりワークｂ〜ｄの配置状態が検出されている間にロボットアーム１１の駆動が停止されるのを抑制することができる。その結果、ストッカＡ〜Ｄからワークａ〜ｄを順次取り出す一連のワーク取出工程に要する時間（タクトタイム）を短縮することができる。
【００４６】
また、第１実施形態では、上記のように、ストッカＡ〜Ｃに配置されたワークａ〜ｃに対してロボットアーム１１によるワーク取出動作が行われている間に、次にロボットアーム１１によるワーク取出動作の対象となる他のストッカＢ〜Ｄに配置されたワークｂ〜ｄの配置状態を検出するように３次元計測ユニット３を構成する。これにより、ストッカＡ〜Ｃに配置されたワークａ〜ｃに対してワーク取出動作が行われた後、次のワーク取出動作の対象となる他のストッカＢ〜Ｄからワークｂ〜ｄを取り出す際には、既に他のストッカＢ〜Ｄに配置されたワークｂ〜ｄの配置状態が検出されているので、ストッカＡ〜Ｄからワークａ〜ｄを順次取り出す一連のワーク取出工程をスムーズに行うことができる。
【００４７】
また、第１実施形態では、上記のように、ストッカＡ〜Ｄを撮像するカメラ３１と、カメラ３１により撮像された撮像画像の画像認識処理を行う制御部３３とを３次元計測ユニット３に設け、ストッカＡ〜Ｃに配置されたワークａ〜ｃに対してロボットアーム１１によるワーク取出動作が行われている間に、カメラ３１により撮像された他のストッカＢ〜Ｄの撮像画像の画像認識処理を制御部３３により行うことによって、他のストッカＢ〜Ｄに配置されたワークｂ〜ｄの配置状態を検出するように３次元計測ユニット３を構成する。これにより、ストッカＡ〜Ｄからワークａ〜ｄを順次取り出す場合に、容易に、ストッカＡ〜Ｃに配置されたワークａ〜ｃをロボットアーム１１により取り出すワーク取出動作と、他のストッカＢ〜Ｄに配置されたワークｂ〜ｄの配置状態を３次元計測ユニットにより検出する処理とを並行して行うことができる。
【００４８】
また、第１実施形態では、上記のように、ロボットアーム１１によるワーク取出動作がストッカＡ〜Ｄに対して順次行われる前に、ストッカＡ〜Ｄの全てを一括してカメラ３１により同時に撮像するように３次元計測ユニット３を構成する。これにより、ストッカＡ〜Ｄからワークａ〜ｄを順次取り出す場合に、ストッカＡ〜Ｄのうちの１つに配置されたワークａ〜ｄをロボットアーム１１により取り出すワーク取出動作を行う毎に、次にロボットアーム１１によるワーク取出動作の対象となる他のストッカＡ〜Ｄをカメラ３１により撮像する必要がない分、ストッカＡ〜Ｄからワークａ〜ｄを順次取り出す一連のワーク取出工程に要する時間をさらに短縮することができる。
【００４９】
また、第１実施形態では、上記のように、ロボットアーム１１によるワーク取出動作がストッカＡ〜Ｄに対して順次行われる一連の取出動作サイクルが繰り返される毎に、ストッカＡ〜Ｄの全てを一括してカメラ３１により同時に撮像するように３次元計測ユニット３を構成する。これにより、ロボットアーム１１によるワーク取出動作によって変化するワークａ〜ｄの配置状態を一連の取出動作サイクルが繰り返される毎に３次元計測ユニット３により検出することができる。
【００５０】
また、第１実施形態では、上記のように、カメラ３１による２回目以降の撮像動作（たとえば、図５のタイミングｔ９〜ｔ１０参照）を、ロボットアーム１１による前回のワーク取出動作（図５のタイミングｔ９〜ｔ１０参照）によって取り出されたワークｄを次工程の機器２００の作業台上の所定の位置まで搬送するワーク搬送動作と並行して行うように構成する。これにより、ワークｄに対するロボットアーム１１のワーク搬送動作が終了した後、次にロボットアーム１１のワーク取出動作の対象となるストッカＡに配置されたワークａの配置状態を検出（認識）する処理が３次元計測ユニット３により行われる際には、既にストッカＡに配置されたワークａの撮像がカメラ３１により行われているので、ストッカＡ〜Ｄからワークａ〜ｄを順次取り出す一連のワーク取出工程をスムーズに繰り返すことができる。
【００５１】
また、第１実施形態では、上記のように、ストッカＡ〜Ｃに配置されたワークａ〜ｃに対してワーク取出動作がロボットアーム１１により行われている間のみならず、ワーク取出動作によって取り出されたワークａ〜ｃを所定の位置まで搬送するワーク搬送動作がロボットアーム１１により行われている間にも、他のストッカＢ〜Ｄに配置されたワークｂ〜ｄの配置状態を検出するように３次元計測ユニット３を構成する。これにより、ストッカＡ〜Ｃに配置されたワークａ〜ｃに対してワーク取出動作が行われている期間のみならず、そのワーク取出動作により取り出されたワークａ〜ｃに対してワーク搬送動作が行われている期間をも利用して、比較的時間のかかる配置状態の認識処理（ワークｂ〜ｄの３次元形状に関する情報を検出する処理）を確実に行うことができる。
【００５２】
また、第１実施形態では、上記のように、ストッカＡ〜Ｄに対して固定的に３次元計測ユニット３を設置する。これにより、３次元計測ユニット３がたとえばロボットアーム１１に取り付けられている場合と異なり、ロボットアーム１１によってワークａ〜ｄが搬送されている間でも、固定的に設置された３次元計測ユニット３により、容易に、ストッカＡ〜Ｄに配置されたワークａ〜ｄの配置状態を検出することができる。
【００５３】
また、第１実施形態では、上記のように、ワークａ〜ｄまでの間の距離を検出することにより、ワークａ〜ｄの配置状態を検出するように３次元計測ユニット３を構成し、３次元計測ユニット３により検出されたワークａ〜ｄの配置状態に関する情報に基づいて選択したワークａ〜ｄをロボットアーム１１に取り出させるようにロボットコントローラ２を構成する。これにより、３次元計測ユニット３により検出されたワークａ〜ｄの配置状態に関する情報に基づいて、ロボットアーム１１が容易に取り出すことができるワークａ〜ｄを選択することができる。
【００５４】
（第２実施形態）
次に、図１〜図４および図６を参照して、第２実施形態によるロボットシステム１００ａについて説明する。この第２実施形態では、３次元計測ユニット３ａのカメラ３１ａが、上記第１実施形態と同様にストッカＡ〜Ｄの全てを一括して同時に撮像することに加えて、ストッカＡ〜ＤのうちのストッカＡおよびＢ（またはストッカＣおよびＤ）のみを撮像する例について説明する。なお、ロボットシステム１００ａは、本発明の「ワーク取出システム」の一例であるとともに、本発明の「ロボット装置」の一例である。また、３次元計測ユニット３ａは、本発明の「配置状態検出部」の一例である。また、カメラ３１ａは、本発明の「撮像部」の一例である。
【００５５】
図１および図２に示すように、第２実施形態による３次元計測ユニット３ａのカメラ３１（図３および図４参照）は、ストッカＡ〜Ｄの上面（矢印Ｚ１方向側）に対向して下方（矢印Ｚ２方向側）を向くように３次元計測ユニット３ａに設けられている。これにより、カメラ３１ａは、ストッカＡ〜Ｄを上方（矢印Ｚ１方向側）から撮像することが可能なように構成されている。
【００５６】
ここで、第２実施形態では、カメラ３１ａは、ストッカＡ〜ＤのうちのストッカＡおよびＢ（またはストッカＣおよびＤ）のみを撮像することが可能なように構成されている。なお、カメラ３１ａは、ストッカＡ〜Ｄの全てを一括して同時に撮像することも可能なように構成されている。
【００５７】
また、第２実施形態では、３次元計測ユニット３ａの制御部３３ａ（図３および図４参照）は、カメラ３１ａによって撮像されたストッカＡおよびＢ（またはストッカＣおよびＤ）の撮像画像の画像認識処理を行うことによって、ストッカＡおよびＢ内のワークａおよびｂまでの距離（またはストッカＣおよびＤ内のワークｃおよびｄまでの距離）を検出するように構成されている。そして、制御部３３ａは、上記画像認識処理によって検出したワークａ〜ｄまでの間の距離に基づいて、ストッカＡ〜Ｄ内に配置されたワークａ〜ｄの配置状態を検出するように構成されている。
【００５８】
なお、第２実施形態のその他の構成は、上記第１実施形態と同様である。
【００５９】
次に、図６を参照して、第２実施形態によるロボットシステム１００ａにおいてストッカＡ〜Ｄからワークａ〜ｄが順次取り出されて搬送される際における３次元計測ユニット３ａ（カメラ３１ａおよび制御部３３ａ）およびロボットアーム１１の動作について説明する。この第２実施形態では、上記第１実施形態と同様に、ストッカＡ〜Ｄ内のワークａ〜ｄに対するロボットアーム１１によるワーク取出動作がストッカＡ、Ｂ、ＣおよびＤの順番で順次行われる一連の取出動作サイクルが繰り返される例について説明する。
【００６０】
まず、図６に示すように、タイミングｔ２０において、３次元計測ユニット３ａのカメラ３１ａにより、ストッカＡ〜Ｄの全てを一括して同時に撮像する撮像動作が開始される。そして、このストッカＡ〜Ｄに対するカメラ３１ａの撮像動作は、タイミングｔ２１において終了される。
【００６１】
次に、タイミングｔ２１において、３次元計測ユニット３ａの制御部３３ａにより、ストッカＡ内に配置されたワークａの配置状態を認識する配置状態認識処理が開始される。具体的には、上記ストッカＡ〜Ｄに対するカメラ３１ａの撮像動作によって一括して撮像されたストッカＡ〜Ｄの全ての撮像画像のうちのストッカＡに対応する部分に対する画像認識処理（ストッカＡ内のワークａまでの距離を検出する処理）が制御部３３ａにより開始される。このストッカＡに対する制御部３３ａの画像認識処理は、タイミングｔ２２において終了される。これにより、タイミングｔ２２において、ストッカＡ内のワークａまでの距離（ストッカＡ内のワークａの３次元形状に関する情報）が制御部３３ａにより検出される。その結果、ストッカＡ内に配置されたワークａの配置状態が制御部３３ａにより検出される。
【００６２】
次に、タイミングｔ２２において、ロボットアーム１１により、上記制御部３３ａによる配置状態認識処理の対象となったストッカＡからワークａを取り出すワーク取出動作が開始される。このワークａに対するワーク取出動作では、ロボットアーム１１は、上記ストッカＡに対する制御部３３ａの配置状態認識処理の結果検出されたワークａの配置状態に関する情報に基づいてロボットコントローラ２により選択されたワークａ（たとえば、保持しやすい位置にあるワークａ）を取り出すようにロボットコントローラ２により制御される。そして、このワークａに対するロボットアーム１１のワーク取出動作は、タイミングｔ２３において終了される。
【００６３】
次に、タイミングｔ２３において、ロボットアーム１１により、上記ワーク取出動作によってストッカＡから取り出されたワークａを次工程の機器２００の作業台上の所定の位置まで搬送するワーク搬送動作が開始される。そして、このワークａに対するロボットアーム１１のワーク搬送動作は、タイミングｔ２４において終了される。
【００６４】
ここで、上記ワークａに対するロボットアーム１１のワーク取出動作の開始タイミングであるタイミングｔ２２においては、制御部３３ａにより、ストッカＢ内に配置されたワークｂの配置状態を認識する配置状態認識処理が開始される。具体的には、上記ストッカＡ〜Ｄに対するカメラ３１ａの撮像動作（タイミングｔ２０〜ｔ２１参照）によって一括して撮像されたストッカＡ〜Ｄの全ての撮像画像のうちのストッカＢに対応する部分に対する画像認識処理（ストッカＢ内のワークｂまでの距離を検出する処理）が制御部３３ａにより開始される。このストッカＢに対する制御部３３ａの画像認識処理は、上記ワークａに対するロボットアーム１１のワーク取出動作およびワーク搬送動作と並行して行われる。また、このストッカＢに対する制御部３３ａの画像認識処理は、上記ワークａに対するロボットアーム１１のワーク搬送動作の終了タイミングであるタイミングｔ２４において終了される。これにより、タイミングｔ２４において、ストッカＢ内のワークｂまでの距離（ストッカＢ内のワークｂの３次元形状に関する情報）が制御部３３ａにより検出される。その結果、ストッカＢ内に配置されたワークｂの配置状態（配置位置や配置姿勢など）が制御部３３ａにより検出される。
【００６５】
次に、タイミングｔ２４において、ロボットアーム１１により、上記制御部３３ａによる配置状態認識処理の対象となったストッカＢからワークｂを取り出すワーク取出動作が開始される。このワークｂに対するワーク取出動作では、ロボットアーム１１は、上記ストッカＢに対する制御部３３ａの配置状態認識処理の結果検出されたワークｂの配置状態に関する情報に基づいてロボットコントローラ２により選択されたワークｂ（たとえば、保持しやすい位置にあるワークｂ）を取り出すようにロボットコントローラ２により制御される。そして、このワークｂに対するロボットアーム１１のワーク取出動作は、タイミングｔ２５において終了される。
【００６６】
次に、タイミングｔ２５において、ロボットアーム１１により、上記ワーク取出動作によってストッカＢから取り出されたワークｂを次工程の機器２００の作業台上の所定の位置まで搬送するワーク搬送動作が開始される。そして、このワークｂに対するロボットアーム１１のワーク搬送動作は、タイミングｔ２６において終了される。
【００６７】
ここで、上記ワークｂに対するロボットアーム１１のワーク取出動作の開始タイミングであるタイミングｔ２４においては、制御部３３ａにより、ストッカＣ内に配置されたワークｃの配置状態を認識する配置状態認識処理が開始される。具体的には、上記ストッカＡ〜Ｄに対するカメラ３１ａの撮像動作（タイミングｔ２０〜ｔ２１参照）によって一括して撮像されたストッカＡ〜Ｄの全ての撮像画像のうちのストッカＣに対応する部分に対する画像認識処理（ストッカＣ内のワークｃまでの距離を検出する処理）が制御部３３ａにより開始される。このストッカＣに対する制御部３３ａの画像認識処理は、上記ワークｂに対するロボットアーム１１のワーク取出動作およびワーク搬送動作と並行して行われる。そして、このストッカＣに対する制御部３３ａの画像認識処理は、上記ワークｂに対するロボットアーム１１のワーク搬送動作の終了タイミングであるタイミングｔ２６において終了される。これにより、タイミングｔ２６において、ストッカＣ内のワークｃまでの距離（ストッカＣ内のワークｃの３次元形状に関する情報）が制御部３３ａにより検出される。その結果、ストッカＣ内に配置されたワークｃの配置状態（配置位置や配置姿勢など）が制御部３３ａにより検出される。
【００６８】
また、上記ワークｂに対するロボットアーム１１のワーク搬送動作の開始タイミングであるタイミングｔ２５においては、カメラ３１ａにより、ストッカＡ〜ＤのうちのストッカＡおよびＢのみを同時に撮像する撮像動作が開始される。このストッカＡおよびＢに対するカメラ３１ａの撮像動作は、上記ワークｂに対するロボットアーム１１のワーク搬送動作と並行して行われる。そして、このストッカＡおよびＢに対するカメラ３１ａの撮像動作は、上記ワークｂに対するロボットアーム１１のワーク搬送動作の終了タイミングであるタイミングｔ２６において終了される。
【００６９】
次に、タイミングｔ２６において、ロボットアーム１１により、上記制御部３３ａによる配置状態認識処理の対象となったストッカＣからワークｃを取り出すワーク取出動作が開始される。このワークｃに対するワーク取出動作では、ロボットアーム１１は、上記ストッカＣに対する制御部３３ａの配置状態認識処理の結果検出されたワークｃの配置状態に関する情報に基づいてロボットコントローラ２により選択されたワークｃ（たとえば、保持しやすい位置にあるワークｃ）を取り出すようにロボットコントローラ２により制御される。そして、このワークｃに対するロボットアーム１１のワーク取出動作は、タイミングｔ２７において終了される。
【００７０】
次に、タイミングｔ２７において、ロボットアーム１１により、上記ワーク取出動作によってストッカＣから取り出されたワークｃを次工程の機器２００の作業台上の所定の位置まで搬送するワーク搬送動作が開始される。そして、このワークｃに対するロボットアーム１１のワーク搬送動作は、タイミングｔ２８において終了される。
【００７１】
ここで、上記ワークｃに対するロボットアーム１１のワーク取出動作の開始タイミングであるタイミングｔ２６においては、制御部３３ａにより、ストッカＤ内に配置されたワークｄの配置状態を認識する配置状態認識処理が開始される。具体的には、上記ストッカＡ〜Ｄに対するカメラ３１ａの撮像動作（タイミングｔ２０〜ｔ２１参照）によって一括して撮像されたストッカＡ〜Ｄの全ての撮像画像のうちのストッカＤに対応する部分に対する画像認識処理（ストッカＤ内のワークｄまでの距離を検出する処理）が制御部３３ａにより開始される。このストッカＤに対する制御部３３ａの画像認識処理は、上記ワークｃに対するロボットアーム１１のワーク取出動作およびワーク搬送動作と並行して行われる。そして、このストッカＤに対する制御部３３ａの画像認識処理は、上記ワークｃに対するロボットアーム１１のワーク搬送動作の終了タイミングであるタイミングｔ２８において終了される。これにより、タイミングｔ２８において、ストッカＤ内のワークｄまでの距離（ストッカＤ内のワークｄの３次元形状に関する情報）が制御部３３ａにより検出される。その結果、ストッカＤ内に配置されたワークｄの配置状態（配置位置や配置姿勢など）が制御部３３ａにより検出される。
【００７２】
次に、タイミングｔ２８において、ロボットアーム１１により、上記制御部３３ａによる配置状態認識処理の対象となったストッカＤからワークｄを取り出すワーク取出動作が開始される。このワークｄに対するワーク取出動作では、ロボットアーム１１は、上記ストッカＤに対する制御部３３ａの配置状態認識処理の結果検出された配置状態に関する情報に基づいてロボットコントローラ２により選択されたワークｄ（たとえば、保持しやすい位置にあるワークｄ）を取り出すようにロボットコントローラ２により制御される。そして、このワークｄに対するロボットアーム１１のワーク取出動作は、タイミングｔ２９において終了される。
【００７３】
次に、タイミングｔ２９において、ロボットアーム１１により、上記ワーク取出動作によってストッカＤから取り出されたワークｄを次工程の機器２００の作業台上の所定の位置まで搬送するワーク搬送動作が開始される。そして、このワークｄに対するロボットアーム１１のワーク搬送動作は、タイミングｔ３０において終了される。
【００７４】
ここで、上記ワークｄに対するロボットアーム１１のワーク取出動作の開始タイミングであるタイミングｔ２８においては、制御部３３ａにより、ストッカＡ内に配置されたワークａの配置状態を認識する配置状態認識処理が開始される。具体的には、上記ストッカＡおよびＢに対するカメラ３１ａの撮像動作（タイミングｔ２５〜ｔ２６参照）によって撮像されたストッカＡおよびＢの撮像画像のうちのストッカＡに対応する部分に対する画像認識処理（ストッカＡ内のワークａまでの距離を検出する処理）が制御部３３ａにより開始される。このストッカＡに対する制御部３３ａの画像認識処理は、上記ワークｄに対するロボットアーム１１のワーク取出動作およびワーク搬送動作と並行して行われる。そして、このストッカＡに対する制御部３３ａの画像認識処理は、上記ワークｄに対するロボットアーム１１のワーク搬送動作の終了タイミングであるタイミングｔ３０において終了される。これにより、タイミングｔ３０において、ストッカＡ内のワークａまでの距離（ストッカＡ内のワークａの３次元形状に関する情報）が制御部３３ａにより検出される。その結果、ストッカＡ内に配置されたワークａの配置状態（配置位置や配置姿勢など）が制御部３３ａにより検出される。
【００７５】
また、上記ワークｄに対するロボットアーム１１のワーク搬送動作の開始タイミングであるタイミングｔ２９においては、カメラ３１ａにより、ストッカＡ〜ＤのうちのストッカＣおよびＤのみを同時に撮像する撮像動作が開始される。このストッカＣおよびＤに対するカメラ３１ａの撮像動作は、上記ワークｄに対するロボットアーム１１のワーク搬送動作と並行して行われる。そして、このストッカＣおよびＤに対するカメラ３１ａの撮像動作は、上記ワークｄに対するロボットアーム１１のワーク搬送動作の終了タイミングであるタイミングｔ３０において終了される。
【００７６】
なお、タイミングｔ３０以降においては、上記タイミングｔ２２〜ｔ３０において行われたカメラ３１ａの撮像動作（タイミングｔ２５〜ｔ２６、および、タイミングｔ２９〜ｔ３０参照）と、制御部３３ａの配置状態認識処理（タイミングｔ２２〜ｔ３０参照）と、ロボットアーム１１によるワーク取出動作およびワーク搬送動作（タイミングｔ２２〜ｔ３０参照）とが、上記タイミングｔ２２〜ｔ３０と同様のタイミングで繰り返される。
【００７７】
第２実施形態では、ワークａに対するロボットアーム１１のワーク取出動作（たとえば、図６のタイミングｔ２２〜ｔ２３参照）およびワーク搬送動作（図６のタイミングｔ２３〜ｔ２４参照）と、ワークｂに対するワーク取出動作（図６のタイミングｔ２４〜ｔ２５参照）とが終了したタイミング（図６のタイミングｔ２５参照）で、これ以降に行われる制御部３３ａの画像認識処理およびロボットアーム１１の動作と並行して、ストッカＡ〜ＤのうちのストッカＡおよびＢに対するカメラ３３ａの撮像動作（図６のタイミングｔ２５〜ｔ２６参照）を再度行うことが可能である。これにより、２回目以降に行われるストッカＡおよびＢに対する制御部３３ａの画像認識処理の開始タイミング（図６のタイミングｔ２８参照）を上記第１実施形態（図５のタイミングｔ１０参照）よりも早くすることが可能になるので、ロボットアーム１１のワーク取出動作がワークＡ、Ｂ、ＣおよびＤの順番で順次行われる一連の取出動作サイクルが繰り返される場合におけるタクトタイムをより短縮することが可能である。
【００７８】
また、第２実施形態では、２回目以降のストッカＡに対する制御部３３ａの配置状態認識処理（たとえば、図６のタイミングｔ２８〜ｔ３０参照）を、前回のワークｄに対するロボットアーム１１のワーク取出動作（図６のタイミングｔ２８〜ｔ２９参照）およびワーク搬送動作（図６のタイミングｔ２９〜ｔ３０参照）と並行して行うことが可能である。これにより、ロボットアーム１１のワーク取出動作がワークＡ、Ｂ、ＣおよびＤの順番で順次行われる一連の取出動作サイクルが繰り返される場合におけるタクトタイムをさらに短縮することが可能である。
【００７９】
なお、第２実施形態のその他の効果は、上記第１実施形態と同様である。
【００８０】
なお、今回開示された実施形態は、すべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した実施形態の説明ではなく特許請求の範囲によって示され、さらに特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれる。
【００８１】
たとえば、上記第１および第２実施形態では、４つのストッカ（容器）の内部の領域に配置されたワークをロボットアームにより取り出すロボットシステム（ワーク取出システムおよびロボット装置）を示したが、本発明はこれに限らない。本発明では、２つまたは３つの領域に配置されたワークをロボットアームにより取り出すワーク取出システムおよびロボット装置としてもよいし、５つ以上の領域に配置されたワークをロボットアームにより取り出すワーク取出システムおよびロボット装置としてもよい。
【００８２】
また、上記第１および第２実施形態では、４つのストッカ（容器）のうちの１つのストッカの内部の領域に配置されたワークに対してロボットアームによるワーク取出動作が行われている間に、次にロボットアームによるワーク取出動作の対象となる他のストッカに配置されたワークの配置状態を検出するように３次元計測ユニット（配置状態検出部）を構成する例を示したが、本発明はこれに限らない。本発明では、複数の領域のうちの１つの領域に配置されたワークに対してロボットアームによるワーク取出動作が行われている間に、次々回以降にロボットアームによるワーク取出動作の対象となる他の領域に配置されたワークの配置状態を検出するように配置状態検出部を構成してもよい。
【００８３】
また、上記第１および第２実施形態では、３次元計測ユニット（配置状態検出部）が４つのストッカ（容器）の内部の領域に対して固定的に設置されている例を示したが、本発明はこれに限らない。本発明では、配置状態検出部が複数の領域に対して移動可能なように設置されていてもよい。
【００８４】
また、上記第１および第２実施形態では、ワークまでの間の距離を検出することにより、ワークの配置状態を検出するように３次元計測ユニット（配置状態検出部）を構成する例を示したが、本発明はこれに限らない。本発明では、ワークまでの間の距離を検出する以外の手段によってワークの配置状態を検出するように配置状態検出部を構成してもよい。たとえば、ＣＭＯＳセンサやＣＣＤによって２次元の画像を撮像して配置状態を検出してもよい。
【００８５】
また、上記第１および第２実施形態では、４つのストッカ（容器）の内部の領域に配置された複数のワークを１つずつ順次ロボットアームにより取り出すロボットシステム（ワーク取出システムおよびロボット装置）を示したが、本発明はこれに限らない。本発明では、図７に示す変形例のように、４つの領域Ｅ１、Ｅ２、Ｅ３およびＥ４を含むように仮想的に区分けされた１つのストッカＥの内部に配置された複数のワークｅを、領域Ｅ１〜Ｅ４の各々から１つずつ順次ロボットアームにより取り出すようなロボットシステム１００ｂとしてもよい。なお、ストッカＥは、本発明の「容器」の一例である。また、ロボットシステム１００ｂは、本発明の「ワーク取出システム」および「ロボット装置」の一例である。
【００８６】
この図７に示す変形例では、３次元計測ユニット３ｂは、ストッカＥの内部を４つの領域Ｅ１〜Ｅ４に仮想的に区分けして認識することによって、４つの領域Ｅ１〜Ｅ４の各々に配置された複数のワークｅの配置状態を検出するように構成されている。また、３次元計測ユニット３ｂは、領域Ｅ１〜Ｅ４のうちの１つに配置されたワークｅを取り出すワーク取出動作がロボットアーム１１により行われている間に、現在ロボットアーム１１によるワーク取出動作の対象となっている領域Ｅ１〜Ｅ４以外の他の領域Ｅ１〜Ｅ４に配置されたワークｅの配置状態を検出するように構成されている。そして、ロボットコントローラ２ａは、３次元計測ユニット３ｂにより検出された領域Ｅ１〜Ｅ４の各々のワークｅの配置状態に関する情報に基づいて、領域Ｅ１〜Ｅ４内に配置された複数のワークｅのうちの１つ（たとえば、保持しやすい位置にあるワークｅ）を選択してロボットアーム１１に取り出させる制御を行うように構成されている。なお、３次元計測ユニット３ｂは、本発明の「配置状態検出部」の一例である。また、ロボットコントローラ２ａは、本発明の「ロボット制御部」の一例である。
【００８７】
なお、この図７に示す変形例では、ストッカＥの内部が仮想的に区分けされている例を示したが、本発明では、ストッカＥの内部に間仕切りを設けることによって、ストッカＥの内部を物理的に区分けしてもよい。
【符号の説明】
【００８８】
２、２ａ  ロボットコントローラ（ロボット制御部）
３、３ａ、３ｂ  ３次元計測ユニット（配置状態検出部）  
１１  ロボットアーム
３１、３１ａ  カメラ（撮像部）
３３、３３ａ  制御部（画像認識部）
１００、１００ａ、１００ｂ  ロボットシステム（ワーク取出システム、ロボット装置）
Ａ、Ｂ、Ｃ、Ｄ、Ｅ  ストッカ（容器）
ａ、ｂ、ｃ、ｄ、ｅ  ワーク（被加工物）
【図１】
0005582126.tif 000002
【図２】
0005582126.tif 000003
【図３】
0005582126.tif 000004
【図４】
0005582126.tif 000005
【図５】
0005582126.tif 000006
【図６】
0005582126.tif 000007
【図７】
0005582126.tif 000008