(57)【要約】【課題】複数の物品が近接している状態でも、目標物品を取り出せる。【解決手段】ロボットシステム１００は、物品ＷＮの形状を検出するセンサ５０と、検出された物品ＷＮを把持可能な把持装置１５が装着されたロボット１０と、ロボット１０を制御する制御装置２０とを備え、制御装置２０が、物品ＷＮ毎に物品を把持する際に把持装置１５が配置される把持領域ＧＮを設定する把持領域設定部と、把持領域ＧＮと他の物品ＷＮとの干渉を判定する判定部と、検出された各物品ＷＮに対応づけて、判定部によって判定された干渉の有無に関する判定結果を記憶する記憶部と、把持領域ＧＮに他の物品ＷＮが干渉していない物品ＷＮを把持装置１５により取り出させるロボット制御部と、把持装置１５により物品ＷＮが取り出される都度に、記憶部に記憶された判定結果を更新する更新部とを備える。【選択図】図１
2019209459.tif 000002
【特許請求の範囲】
【請求項１】
搬送される物品の形状を検出するセンサと、検出された物品を把持可能な把持装置が装着されたロボットと、該ロボットを制御する制御装置とを備え、
該制御装置が、検出された物品毎に該物品を把持する際に前記把持装置が配置される把持領域を設定する把持領域設定部と、
設定された前記把持領域と他の物品との干渉を判定する判定部と、検出された各物品に対応づけて、前記判定部によって判定された前記干渉の有無に関する判定結果を記憶する記憶部と、
前記ロボットを制御して、前記把持領域に他の物品が干渉していない物品を前記把持装置により取り出させるロボット制御部と、
前記把持装置により物品が取り出される都度に、前記記憶部に記憶された前記判定結果を更新する更新部とを備えるロボットシステム。
【請求項２】
前記記憶部が、各一の物品の識別情報と当該一の物品に設定された前記把持領域に干渉している他の物品の識別情報とを対応づけた第１干渉物品情報を記憶する請求項１に記載のロボットシステム。
【請求項３】
前記記憶部が、前記一の物品が干渉している前記把持領域を有する前記他の物品の識別情報を、前記一の物品の識別情報に対応づけた第２干渉物品情報を記憶する請求項２に記載のロボットシステム。
【請求項４】
前記第１干渉物品情報において、２つの物品の識別情報が互いに対応づけられている場合に、２つの物品を前記更新部による更新の対象から除外する請求項２または請求項３に記載のロボットシステム。
【請求項５】
前記把持領域設定部が、前記センサによって検出された物品の種類に応じて異なる前記把持領域を設定する請求項１から請求項４のいずれかに記載のロボットシステム。
【請求項６】
搬送される物品の形状を検出する検出ステップと、
検出された物品毎に該物品を把持装置に把持させる際に該把持装置が配置される把持領域を設定する把持領域設定ステップと、
設定された前記把持領域と他の物品との干渉を判定する判定ステップと、
判定された前記干渉の有無に関する判定結果を、検出された各物品に対応づけて記憶部に記憶させる記憶ステップと、
ロボットを制御して、前記把持領域に他の物品が干渉していない物品を前記把持装置により取り出させる制御ステップと、
前記把持装置により物品が取り出される都度に、前記記憶部に記憶された前記判定結果を更新する更新ステップとを含むロボットシステムの制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットシステムおよびロボットシステムの制御方法に関する。
【背景技術】
【０００２】
コンベヤ上にバラバラに置かれた状態で流れてくる複数の物品を視覚センサによって検出し、検出された物品の形状および姿勢に基づいて、ロボットが把持装置によって対象物を取り出すロボットシステムが知られている（例えば、特許文献１参照。）。特許文献１に記載されたロボットシステムでは、取り出す目標物品と他の物品との距離が近い場合に、把持装置と他の物品との干渉を防ぐために、目標物品を取り出す際のロボットの経路が補正されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１６−１８５５７３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１に記載のロボットシステムを用いると、目標物品の周りに複数の他の物品が近接していて、他の物品との干渉を回避して目標物品を取り出すための経路を作成できない場合に、把持装置が目標物品を取り出すことができない。
本発明は、複数の物品が近接している状態でも、目標物品を取り出すことができるロボットシステムおよびロボットシステムの制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００５】
上記目的を達成するため、本発明は以下の手段を提供する。
本発明の一態様は、搬送される物品の形状を検出するセンサと、検出された物品を把持可能な把持装置が装着されたロボットと、該ロボットを制御する制御装置とを備え、該制御装置が、検出された物品毎に該物品を把持する際に前記把持装置が配置される把持領域を設定する把持領域設定部と、設定された前記把持領域と他の物品との干渉を判定する判定部と、検出された各物品に対応づけて、前記判定部によって判定された前記干渉の有無に関する判定結果を記憶する記憶部と、前記ロボットを制御して、前記把持領域に他の物品が干渉していない物品を前記把持装置により取り出させるロボット制御部と、前記把持装置により物品が取り出される都度に、前記記憶部に記憶された前記判定結果を更新する更新部とを備えるロボットシステムを提供する。
【０００６】
本態様によれば、搬送されている物品がセンサにより検出されると、把持領域設定部により、検出された物品毎に把持領域が設定される。設定された把持領域と他の物品との干渉の有無が判定され、判定結果が記憶部に記憶される。一の物品の把持領域に他の物品が存在せずに干渉がない場合には、ロボット制御部によりロボットが制御されて、把持装置が一の物品の把持領域に配置され、把持装置により一の物品が把持されるので、他の物品との干渉を生じさせずに、物品を取り出すことができる。
【０００７】
ロボットによって一の物品が取り出されると、取り出された状態における物品間の干渉の有無が判定部によって判定され、更新部は、新たな判定結果に基づいて記憶部に記憶された判定結果を更新する。これにより、一の物品が取り出された結果、取り出された物品が他の物品の把持領域に干渉していた場合には、他の物品の把持領域における一の物品による干渉がなくなる。ここで、他の物品の把持領域に別の異なる物品が干渉していない場合には、一の物品が取り出される前に取り出し不可能であった他の物品は、一の物品が取り出された後に、把持装置によって取り出し可能な物品となる。このように、物品の検出時に、把持領域に複数の物品が干渉していた物品であっても、干渉している物品が取り出された後には、把持装置によって取り出し可能な物品となる。
【０００８】
上記態様において、前記記憶部が、各一の物品の識別情報と当該一の物品に設定された前記把持領域に干渉している他の物品の識別情報とを対応づけた第１干渉物品情報を記憶してもよい。
【０００９】
この構成により、第１干渉物品情報において、他のいずれの物品の識別情報も対応づけられていない物品は、把持装置によって取り出し可能である。これにより、ロボット制御部は、第１干渉物品情報のみを参照することによって、把持装置によって次に取り出し可能な物品を判断して、物品の取り出しを実行できる。
【００１０】
上記態様において、前記記憶部が、前記一の物品が干渉している前記把持領域を有する前記他の物品の識別情報を、前記一の物品の識別情報に対応づけた第２干渉物品情報を記憶していてもよい。
【００１１】
この構成により、一の物品が把持装置によって取り出された場合に、第２干渉物品情報において、一の物品の識別情報に対応づけられている他の物品の識別情報に対応する第１干渉物品情報を更新することにより、把持装置によって次に取り出し可能な物品の判断を容易にすることができる。
【００１２】
上記態様において、前記第１干渉物品情報において、２つの物品の識別情報が互いに対応づけられている場合に、２つの物品を前記更新部による更新の対象から除外してもよい。
【００１３】
この構成により、互いに把持領域に干渉し合っている複数の物品は、把持装置によって異なる別の物品の取り出しによる判定結果の更新にかかわらず取り出し不可能な物品として第１干渉物品情報に示されている。これにより、異なる別の物品が取り出されても、互いに把持領域を干渉し合っている一の物品および他の物品の判定結果が更新されなくても済む。
【００１４】
上記態様において、前記把持領域設定部が、前記センサによって検出された物品の種類に応じて異なる前記把持領域を設定してもよい。
この構成により、物品の形状等に応じて把持領域が設定されているため、把持装置は、物品を安定した姿勢で把持できる。
【００１５】
本発明の他の態様は、搬送される物品の形状を検出する検出ステップと、検出された物品毎に該物品を把持装置に把持させる際に該把持装置が配置される把持領域を設定する把持領域設定ステップと、設定された前記把持領域と他の物品との干渉を判定する判定ステップと、判定された前記干渉の有無に関する判定結果を、検出された各物品に対応づけて記憶部に記憶させる記憶ステップと、ロボットを制御して、前記把持領域に他の物品が干渉していない物品を前記把持装置により取り出させる制御ステップと、前記把持装置により物品が取り出される都度に、前記記憶部に記憶された前記判定結果を更新する更新ステップとを含むロボットシステムの制御方法を提供する。
【００１６】
本態様によれば、検出された物品毎に把持領域が設定され、設定された把持領域と他の物品との判定結果が記憶部に記憶される。一の物品の把持領域に他の物品が干渉していない場合には、制御された把持装置が、一の物品の把持領域を把持して、他の物品との干渉を生じさせずに一の物品を取り出すことができる。一の物品が取り出されると、記憶部に記憶された判定結果が更新される。これにより、検出時に物品の把持領域に他の物品が干渉していても、判定結果の更新および物品の取出が繰り返されることによって、他の物品が取出可能になる場合がある。
【発明の効果】
【００１７】
本発明に係るロボットシステムおよびロボットシステムの制御方法によれば、複数の物品が近接している状態でも、目標物品を取り出すことができるという効果を奏する。
【図面の簡単な説明】
【００１８】
【図１】本発明のロボットシステムの概略上面図である。
【図２】ロボットシステムのブロック図である。
【図３】物品に設定された把持領域および干渉情報の説明図であって、（ａ）センサの撮影範囲の上面図、（ｂ）物品ステータスＤＢに記憶された各物品の干渉情報を示す図である。
【図４】図３に示される状態から新たな物品が検出された場合の把持領域および干渉情報の説明図であって、（ａ）センサの撮影範囲の上面図、（ｂ）物品ステータスＤＢに記憶された各物品の干渉情報を示す図である。
【図５】物品に設定された把持領域および干渉情報の説明図であって、（ａ）ハンドの作業範囲の上面図、（ｂ）物品ステータスＤＢに記憶された各物品の干渉情報を示す図である。
【図６】図５に示される状態から物品が取り出された場合の把持領域および干渉情報の説明図であって、（ａ）ハンドの作業範囲の上面図、（ｂ）物品ステータスＤＢに記憶された各物品の干渉情報を示す図である。
【図７】物品検出時にロボットシステムによって行われる処理のフローチャートである。
【図８】物品取り出し時にロボットシステムによって行われる処理のフローチャートである。
【発明を実施するための形態】
【００１９】
本発明の実施形態にロボットシステム１００について、図面を参照しながら以下に説明する。
本実施形態に係るロボットシステム１００は、図１に示されるように、複数の物品ＷＮ（Ｎ＝１，２，・・・）を搬送するコンベヤ８０と、コンベヤ８０上を搬送される物品ＷＮを検出するセンサ５０と、物品ＷＮを把持するハンド（把持装置）１５を備えるロボット１０と、ロボット１０を制御する制御装置２０とを備えている。
【００２０】
センサ５０は、物品ＷＮの３次元形状を取得可能な３次元カメラであり、コンベヤ８０上の撮影範囲ＲＩを撮影する。ロボット１０は、例えば、６個の関節を有する垂直多関節型ロボットであり、制御装置２０によって各関節の回転角度が制御されることによって動作する。ロボット１０の先端に取り付けられたハンド１５は、コンベヤ８０上を搬送される物品ＷＮに対して把持作業を行う。ハンド１５がコンベヤ８０上で作業可能な範囲は、図１に示されるように、センサ５０の撮影範囲ＲＩよりも下流側に位置する作業範囲ＲＷである。
【００２１】
コンベヤ８０は、図１の矢印で示される搬送方向に一定の速さで物品ＷＮを搬送する。コンベヤ８０には、コンベヤ８０の搬送速度を検出するためのエンコーダ（不図示）が設けられている。エンコーダの検出値が制御装置２０に送信されることによって、制御装置２０は、コンベヤ８０の搬送速度を算出する。
【００２２】
制御装置２０は、所定のプログラムに従ってロボット１０の動作を制御することにより、コンベヤ８０上を搬送される物品ＷＮに対して取り出し等の各種作業を行う。なお、本実施形態の制御装置２０は、ロボット１０に内蔵されているが、他の実施形態の制御装置は、ロボット１０と別体で構成されていてもよい。
【００２３】
図２は、ロボットシステム１００のブロック図である。図２に示されるように、制御装置２０は、センサ５０によって検出された物品ＷＮの姿勢および位置に応じてロボット１０の動作を制御する制御部２１と、物品ＷＮの３次元形状などを記憶している記憶部２６とを備えている。
【００２４】
記憶部２６は、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、あるいはＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）などの記憶媒体で構成されている。記憶部２６は、ロボット１０の作業対象である複数の物品ＷＮの３次元形状を記憶している物品形状ＤＢと、センサ５０によって検出された物品とその他の物品とにおける干渉の有無に関する干渉情報について記憶する物品ステータスＤＢとを備えている。
【００２５】
物品形状ＤＢは、複数の物品ＷＮの３次元形状のそれぞれについて、図１に示されるような３次元形状に対応づけられた把持領域ＧＮを記憶している。把持領域ＧＮは、検出された物品ＷＮがハンド１５によって把持される際に、ハンド１５が配置される領域として記憶されている。
【００２６】
物品ステータスＤＢが記憶する各物品に対応づけられた干渉情報について、図３を用いて説明する。図３（ａ）には、コンベヤ８０上を搬送される２つの物品Ｗ１，Ｗ２が検出されている状態の撮影範囲ＲＩの上面図が示されている。センサ５０によって物品Ｗ１，Ｗ２が検出されると、後述する把持領域設定部２３は、物品形状ＤＢに記憶された複数の物品の３次元形状を用いたパターンマッチングによって、検出された物品Ｗ１，Ｗ２が記憶されたいずれの物品であるかを特定する。その後、把持領域設定部２３は、物品Ｗ１，Ｗ２のそれぞれについて、把持領域Ｇ１，Ｇ２を設定する。
【００２７】
物品ステータスＤＢは、物品Ｗ１，Ｗ２のそれぞれの干渉情報として、把持領域Ｇ１，Ｇ２における他の物品の干渉について、図３（ｂ）に示される物品Ｗ１，Ｗ２のそれぞれの物品名（識別情報）毎の干渉の有無を記憶する。この干渉情報は、検出された物品Ｗ１，Ｗ２の重心を表す検出位置と、物品Ｗ１，Ｗ２の姿勢を表すための基準姿勢からの傾きを示す角度と、ハンド１５によって取り出し可能の可否を表すステータスと、自分の把持領域に入っている他の物品についての情報（第１物品干渉情報）と、把持領域に自分が入っている他の物品についての情報（第２物品干渉情報）とを含んでいる。
【００２８】
物品Ｗ１，Ｗ２の検出位置および角度は、物品形状ＤＢに記憶された各物品の３次元形状に対応づけられた基準姿勢と、センサ５０によって検出された撮影画像とが用いられることによって特定される。
【００２９】
例えば、物品Ｗ１の干渉情報について説明すると、図３（ａ）に示されるように、物品Ｗ１の把持領域Ｇ１には他の物品が干渉していない。そのため、図３（ｂ）に示されるように、後述の判定部２４は、初めに、物品Ｗ１の「ステータス」を「取り出し可」と判定して設定する。また、判定部２４は、物品Ｗ１の「自分の把持領域に入っている他の物品」を「なし」と設定する。物品Ｗ１は、他の物品の把持領域に干渉していないため、判定部２４は、物品Ｗ１の「把持領域に自分が入っている他の物品」を「なし」と設定する。
【００３０】
図２に示される制御部２１は、図示されていないＣＰＵと、ＲＯＭと、ＲＡＭとで構成されている。制御部２１は、ＲＯＭまたは記憶部２６に格納されたプログラムを読み込んで、ＲＡＭに一時的に読出および格納を行い、ＣＰＵにより各種プログラムに対応する機能を実行する。
【００３１】
制御部２１は、ロボット１０の動作を制御する駆動制御部（ロボット制御部）２２と、センサ５０によって検出された物品Ｗ１，Ｗ２（図３（ａ））に対して把持領域Ｇ１，Ｇ２を設定する把持領域設定部２３と、設定された把持領域Ｇ１，Ｇ２における他の物品Ｗ１，Ｗ２の干渉の有無を判定する判定部２４と、ハンド１５によってコンベヤ８０によって搬送される物品が取り出される度に物品ステータスＤＢに記憶された干渉情報を更新する更新部２５とを備えている。
【００３２】
図４は、図３に示される状態から、さらに新たな物品Ｗ３がセンサ５０によって検出された状態を示している。物品Ｗ３がセンサ５０によって検出されると、図４（ｂ）に示さるように、判定部２４は、物品Ｗ３の干渉情報を物品ステータスＤＢに追加する。物品Ｗ３が新たに検出されることによって、図４（ａ）に示されるように、物品Ｗ１の把持領域Ｇ１に物品Ｗ３が干渉している。そのため、判定部２４は、図４（ｂ）に示されるように、物品Ｗ１の「自分の把持領域に入っている他の物品」に「Ｗ３」を追加する。これは、ハンド１５が物品Ｗ１を取り出す際に物品Ｗ３と干渉することを表している。これにより、判定部２４は、図４（ｂ）に示される物品Ｗ１の「ステータス」を「取り出し不可」に変更する。
【００３３】
図５および図６は、物品がハンド１５によって取り出される前後の物品間の位置関係および物品ステータスＤＢに含まれる各物品の干渉情報について説明する図である。図５（ａ）には、物品Ｗ５がハンド１５によって取り出される前のハンド１５の作業範囲ＲＷの上面図が示されている。作業範囲ＲＷと撮影範囲ＲＩとの位置関係は予め設定されているため、駆動制御部２２は、作業範囲ＲＷにおける物品の位置および姿勢を、物品ステータスＤＢに記憶された各物品の干渉情報における検出位置および角度から算出できる。そのため、駆動制御部２２は、センサ５０の検出結果を用いて、作業範囲ＲＷに含まれる物品を特定できる。
【００３４】
図５（ａ）に示されるように、把持領域設定部２３によって、センサ５０によって検出された物品Ｗ４〜Ｗ７のそれぞれには、把持領域Ｇ４〜Ｇ７が設定されている。図５（ｂ）に示されるように、物品ステータスＤＢには、物品Ｗ４〜Ｗ７のそれぞれについての干渉情報が記憶されている。
【００３５】
図５（ａ）に示されるように、物品Ｗ４，Ｗ６，Ｗ７のそれぞれの把持領域Ｇ４，Ｇ６，Ｇ７には他の物品が干渉し、物品Ｗ５の把持領域Ｇ５にはいずれの物品も干渉していない。そのため、図５（ｂ）の物品ステータスＤＢに示されるように、物品Ｗ５の「ステータス」だけが、「取り出し可」として設定されている。この場合、駆動制御部２２は、物品ステータスＤＢに記憶されたそれぞれの物品Ｗ４〜Ｗ７の内、「ステータス」が「取り出し可」である物品Ｗ５に対して取り出し作業を実行する。なお、「ステータス」が「取り出し可」である物品が複数ある場合には、下流側の物品から取り出し作業が実行される。
【００３６】
図５（ａ）に示されるように、物品Ｗ６と物品Ｗ７とは、互いにそれぞれの把持領域Ｇ６，Ｇ７を干渉し合っている。本実施形態では、別の物品の取り出し作業にかかわらず、更新部２５は、このような物品Ｗ６，Ｗ７の「ステータス」を「取り出し不可」に設定し、物品Ｗ６，Ｗ７の干渉情報を更新しない。
【００３７】
図６（ａ）には、図５（ａ）に示された状態から、物品Ｗ５が取り出された後の作業範囲ＲＷの上面図が示されている。物品Ｗ５が取り出されると、図６（ｂ）に示されるように、更新部２５は、物品ステータスＤＢにおける物品Ｗ５の「ステータス」を「取り出し済」に更新する。物品Ｗ５の「ステータス」が更新されると、判定部２４は、更新後の物品ステータスＤＢに基づいて、各物品に設定された把持領域における他の物品の干渉の有無を再度判定する。
【００３８】
判定部２４は、取り出された物品Ｗ５の「把持領域に自分が入っている他の物品」に設定されている物品Ｗ４，物品Ｗ６の干渉の有無を再度判定する。例えば、物品Ｗ４の干渉情報において、物品Ｗ５が取り出される前では図５（ｂ）に示されるように、「自分の把持領域に入っている他の物品」として物品Ｗ５が設定されていた。更新後に物品Ｗ５が取り出されると、図６（ｂ）に示されるように、判定部２４は、物品Ｗ４の「自分の把持領域に入っている他の物品」を「なし」に変更する。これに伴い、物品Ｗ４の「ステータス」は、「取り出し可」に変化している。
【００３９】
また、判定部２４は、物品Ｗ６における「自分の把持領域に入っている他の物品」を、「Ｗ５，Ｗ７（図５（ｂ）」から「Ｗ７（図６（ｂ））に変更する。一方で、「把持領域に自分が入っている他の物品」に物品Ｗ５が設定されていない物品Ｗ７の干渉情報は変化していない。図６に示される状態では、物品Ｗ４，Ｗ６，Ｗ７における「ステータス」の内、「取り出し可」である物品Ｗ４が、ハンド１５によって次に取り出される。
【００４０】
本実施形態に係るロボットシステム１００が物品検出時に行う処理について、図４に示される物品Ｗ３が検出された例を挙げて、図７に示されるフローチャートに沿って説明する。初めに、センサ５０が、コンベヤ８０上を搬送される物品Ｗ３を検出する検出ステップを行う（ステップＳ１）。検出された物品Ｗ３の検出位置Ｘ３，Ｙ３および角度Ｒ３は、把持領域設定部２３によって特定され、物品ステータスＤＢに登録される（ステップＳ２）。
【００４１】
把持領域設定部２３は、検出された物品Ｗ３に対して、把持領域Ｇ３を設定する把持領域設定ステップを行う（ステップＳ３）。判定部２４は、設定された把持領域Ｇ３に他の物品が干渉しているか否かを判定する判定ステップを行う（ステップＳ４）。把持領域Ｇ３に他の物品が干渉していないと判定された場合には（ステップＳ４：ＮＯ）、後述するステップＳ８の処理が実行される。
【００４２】
ステップＳ４の処理において、判定部２４は、把持領域Ｇ３に他の物品Ｗ２が干渉していると判定すると（ステップＳ４：ＹＥＳ）、物品ステータスＤＢにおける物品Ｗ３の「ステータス」を「取り出し不可」に設定する（ステップＳ５）。
【００４３】
判定部２４は、物品Ｗ３の「自分の把持可能領域に入っている他の物品」に、把持領域Ｇ３に干渉している物品Ｗ２を追加する（ステップＳ６）。次に、判定部２４は、物品Ｗ３が他の物品Ｗ１の把持領域Ｇ１に入っているため、物品Ｗ３の「把持可能領域に自分が入っている他の物品」に、物品Ｗ１を追加する（ステップＳ７）。
【００４４】
判定部２４は、他の物品の把持領域に検出された物品Ｗ３（以降では、「検出物品Ｗ３」ともいう）が干渉しているか否かを判定する（ステップＳ８）。他の物品の把持領域に検出物品Ｗ３が干渉していないと判定された場合には（ステップＳ８：ＮＯ）、ロボットシステム１００の物品検出時に行われる処理が終了する。
【００４５】
ステップＳ８の処理において、物品Ｗ１の把持領域Ｇ１に検出物品Ｗ３が干渉しているため（ステップＳ８：ＹＥＳ）、判定部２４は、他の物品である物品Ｗ１の「ステータス」を「取り出し不可」に設定する（ステップＳ９）。判定部２４は、物品Ｗ１の「自分の把持可能領域に入っている他の物品」に、検出物品Ｗ３を追加する（ステップＳ１０）。
【００４６】
次に、判定部２４は、他の物品である物品Ｗ２の「把持領域に自分が入っている他の物品」に、検出物品Ｗ３を追加する（ステップＳ１１）。なお、ステップＳ５〜Ｓ７およびステップＳ９〜ステップＳ１１は、記憶ステップに相当する。
ステップＳ１１の処理が実行されると、図７に示されるロボットシステム１００が物品検出時に行う処理が終了する。
【００４７】
次に、本実施形態に係るロボットシステム１００が物品取り出し時に行う処理について、図５に示される状態から物品Ｗ５が取り出されて図６に示される状態に変化した例を挙げて、図８に示されるフローチャートに沿って説明する。
【００４８】
初めに、駆動制御部２２は、ハンド１５の作業範囲ＲＷに物品があるか否かを判定する（ステップＳ２１）。作業範囲ＲＷに物品がないと判定された場合には（ステップＳ２１：ＮＯ）、物品取り出し時に行われる処理が終了する。
【００４９】
ステップＳ２１の処理において、駆動制御部２２は、作業範囲ＲＷに物品があると判定すると（ステップＳ２１：ＹＥＳ）、作業範囲ＲＷにある物品Ｗ４〜Ｗ７の「ステータス」が「取り出し可」であるか否かを判定する（ステップＳ２２）。作業範囲ＲＷにある全ての物品の「ステータス」が「取り出し不可」である場合には（ステップＳ２２：ＮＯ）、物品取り出し時に行われる処理が終了する。
【００５０】
ステップＳ２２の処理において、駆動制御部２２は、図５（ｂ）に示されるように、作業範囲ＲＷに「ステータス」が「取り出し可」である物品Ｗ５がある場合には（図８のステップＳ２２：ＹＥＳ）、ハンド１５を制御して物品Ｗ５を取り出す制御ステップを行う（ステップＳ２３）。
【００５１】
物品Ｗ５が取り出されると、更新部２５は、図６（ｂ）に示されるように、物品ステータスＤＢに記憶されている取り出した物品Ｗ５の「ステータス」を「取り出し済」に更新する（図８のステップＳ２４）。なお、他の実施形態では、取り出された物品の干渉情報が物品ステータスＤＢから削除されてもよい。
【００５２】
次に、判定部２４は、物品Ｗ５が取り出された後の物品ステータスＤＢに基づいて、再度、物品間の干渉の有無について判定する。判定部２４は、取り出された物品Ｗ５（以降では、「取り出し物品Ｗ５」ともいう）の「把持領域に自分が入っている他の物品」に、設定されている物品があるか否かを判定する（ステップＳ２５）。設定された物品がない場合には（ステップＳ２５：ＮＯ）、物品取り出し時に行われる処理が終了する。
【００５３】
ステップＳ２５の処理において、取り出し物品Ｗ５の「把持領域に自分が入っている他の物品」に設定されている物品Ｗ４，Ｗ６があるため（ステップＳ２５：ＹＥＳ）、更新部２５は、図５（ｂ）に示される物品Ｗ４，Ｗ６のそれぞれの「自分の把持領域に入っている他の物品」から、取り出し物品Ｗ５を削除する（ステップＳ２６）。
【００５４】
その後、判定部２４は、物品Ｗ４，Ｗ６の干渉の有無を再度判定した後に、作業範囲ＲＷにいる物品の物品ステータスＤＢにおいて、「自分の把持領域に入っている物品」に他の物品が入っていない物品があるか否かを判定する（ステップＳ２７）。「自分の把持領域に入っている物品」に他の物品が入っていない物品が１つも無いと判定された場合には（ステップＳ２７：ＮＯ）、物品取り出し時に行われる処理が終了する。
【００５５】
ステップＳ２７において、図６（ｂ）に示されるように、物品Ｗ４の物品ステータスＤＢにおける「自分の把持領域に入っている物品」には他の物品が入っていないため（ステップＳ２７：ＹＥＳ）、判定部２４は、物品Ｗ４の「ステータス」を「取り出し可」に更新する更新ステップを行う（ステップＳ２８）。その後、物品Ｗ５についての物品取り出し時に行われる処理が終了し、作業範囲ＲＷに含まれる取り出し可能な物品について同様の物品取り出し処理が実行される。
【００５６】
このように構成された本実施形態に係るロボットシステム１００の作用について以下に説明する。
搬送されている物品Ｗ５（図５）がセンサ５０によって検出されると、物品Ｗ５に設定された把持領域Ｇ５における他の物品の干渉の有無が判定部２４によって判定され、判定結果が物品ステータスＤＢに記憶される。物品Ｗ５の把持領域Ｇ５に他の物品が干渉していない場合には、ハンド１５および物品Ｗ５と、他の物品との干渉が生じずに、ハンド１５によって把持領域Ｇ５が把持され物品Ｗ５が取り出される。物品Ｗ５が取り出されると、更新部２５および判定部２４によって、物品ステータスＤＢに記憶された物品Ｗ４，Ｗ６，Ｗ７の判定結果が更新される。更新された結果、物品検出時に取り出し不可能と判定されていた物品Ｗ４であっても、物品Ｗ５が取り出されることによって、ハンド１５による取り出しが可能な物品となる。
【００５７】
上記実施形態におけるロボットシステム１００において、各物品Ｗ４〜Ｗ７の把持領域Ｇ４〜Ｇ７に干渉している他の物品は、物品ステータスＤＢの各物品Ｗ４〜Ｗ７における「自分の把持領域に入っている他の物品」に対応づけられて記憶されている。そのため、駆動制御部２２は、物品ステータスＤＢの「自分の把持領域に入っている他の物品」のみを参照することによって、把持領域に他の物品が干渉していない物品を、次に取り出す物品として選択できる。
【００５８】
上記実施形態におけるロボットシステム１００において、各物品Ｗ４〜Ｗ７が他の物品の把持領域を干渉している場合に、各物品Ｗ４〜Ｗ７の干渉情報として、物品ステータスＤＢに「把持領域に自分が入っている他の物品」が記憶されている。そのため、ハンド１５によって物品Ｗ５が取り出された場合に、物品Ｗ５の「把持領域に自分が入っている他の物品」に設定されている物品Ｗ４，Ｗ６のみの干渉情報が更新されれば、次に取り出される物品が選択可能になる。
【００５９】
上記実施形態におけるロボットシステム１００において、互いにそれぞれの把持領域Ｇ６，Ｇ７を干渉し合っている物品Ｗ６，Ｗ７における「ステータス」は、他の物品の取り出しにかかわらず、「取り出し不可」に設定され、物品Ｗ６，Ｗ７の干渉情報は更新されない。これにより、物品Ｗ６，Ｗ７の干渉情報を更新するための処理が軽減される。
【００６０】
上記実施形態のロボットシステム１００は、一例であり、種々変形可能である。例えば、物品ステータスＤＢは、各物品に設定された把持領域と、把持領域に干渉する他の物品との干渉の有無について記憶していればよい。そのため、物品ステータスＤＢは、必ずしも、図３（ｂ）に示される物品Ｗ１，Ｗ２における「ステータス」や「把持領域に自分が入っている他の物品」などの情報を含んでいなくてもよい。また、本実施形態では、図５（ｂ）に示される互いの把持領域Ｇ６，Ｇ７を干渉し合っている物品Ｗ６，Ｗ７の干渉情報が更新されなかったが、他の実施形態では、干渉の有無に関係なく、別の物品が取り出される度に全ての物品の干渉情報が更新されてもよい。
【００６１】
上記実施形態のロボット１０は、垂直多関節型ロボットであったが、コンベヤ８０上を搬送される物品ＷＮを取り出せるロボットの範囲で種々変形可能である。また、物品ＷＮを搬送する搬送装置としてコンベヤ８０を例に挙げたが、コンベヤ８０以外の搬送装置であってもよい。また、ロボットシステム１００にコンベヤ８０が含まれていなくてもよい。コンベヤ８０上に搬送される物品は、上記実施形態の物品Ｗ１〜Ｗ７のように同じ種類の物品でなくてもよく、複数の種類の物品が搬送されてハンド１５によって取り出されてもよい。
【００６２】
搬送される物品ＷＮを検出するセンサ５０は、３次元カメラ以外のセンサ、例えば、２次元カメラであってもよいし、光電センサであってもよいし、マルチアレイセンサであってもよい。マルチアレイセンサが用いられると、二次元平面にマトリックス状に配置した複数のセンサにより垂直方向の距離を同時計測されて、物体の立体像を得ることができる。
【符号の説明】
【００６３】
１０  ロボット
１５  ハンド（把持装置）
２０  制御装置
２２  駆動制御部（ロボット制御部）
２３  把持領域設定部
２４  判定部
２５  更新部
２６  記憶部
５０  センサ
１００  ロボットシステム
Ｇ１〜Ｇ７，ＧＷ  把持領域
Ｗ１〜Ｗ７，ＷＮ  物品
Ｓ１  検出ステップ
Ｓ３  把持領域設定ステップ
Ｓ４  判定ステップ
Ｓ５〜Ｓ７，Ｓ９〜Ｓ１１  記憶ステップ
Ｓ２３  制御ステップ
Ｓ２８  更新ステップ
【図１】
2019209459.tif 000003
【図２】
2019209459.tif 000004
【図３】
2019209459.tif 000005
【図４】
2019209459.tif 000006
【図５】
2019209459.tif 000007
【図６】
2019209459.tif 000008
【図７】
2019209459.tif 000009
【図８】
2019209459.tif 000010