特許第6763914号(P6763914)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ファナック株式会社の特許一覧

特許6763914ロボットシステムおよびロボットシステムの制御方法
<>
  • 特許6763914-ロボットシステムおよびロボットシステムの制御方法 図000002
  • 特許6763914-ロボットシステムおよびロボットシステムの制御方法 図000003
  • 特許6763914-ロボットシステムおよびロボットシステムの制御方法 図000004
  • 特許6763914-ロボットシステムおよびロボットシステムの制御方法 図000005
  • 特許6763914-ロボットシステムおよびロボットシステムの制御方法 図000006
  • 特許6763914-ロボットシステムおよびロボットシステムの制御方法 図000007
  • 特許6763914-ロボットシステムおよびロボットシステムの制御方法 図000008
  • 特許6763914-ロボットシステムおよびロボットシステムの制御方法 図000009
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6763914
(24)【登録日】2020年9月14日
(45)【発行日】2020年9月30日
(54)【発明の名称】ロボットシステムおよびロボットシステムの制御方法
(51)【国際特許分類】
   B25J 13/08 20060101AFI20200917BHJP
【FI】
   B25J13/08 A
【請求項の数】6
【全頁数】13
(21)【出願番号】特願2018-110456(P2018-110456)
(22)【出願日】2018年6月8日
(65)【公開番号】特開2019-209459(P2019-209459A)
(43)【公開日】2019年12月12日
【審査請求日】2019年11月12日
【早期審査対象出願】
(73)【特許権者】
【識別番号】390008235
【氏名又は名称】ファナック株式会社
(74)【代理人】
【識別番号】100118913
【弁理士】
【氏名又は名称】上田 邦生
(74)【代理人】
【識別番号】100142789
【弁理士】
【氏名又は名称】柳 順一郎
(74)【代理人】
【識別番号】100163050
【弁理士】
【氏名又は名称】小栗 眞由美
(74)【代理人】
【識別番号】100201466
【弁理士】
【氏名又は名称】竹内 邦彦
(72)【発明者】
【氏名】片桐 太樹
(72)【発明者】
【氏名】古賀 健太郎
【審査官】 石川 薫
(56)【参考文献】
【文献】 特開2018−008343(JP,A)
【文献】 特開2011−073066(JP,A)
【文献】 特開昭61−034675(JP,A)
【文献】 特開2018−051684(JP,A)
【文献】 特開2016−185573(JP,A)
【文献】 米国特許第05040056(US,A)
【文献】 米国特許出願公開第2007/0007924(US,A1)
【文献】 米国特許出願公開第2002/0169522(US,A1)
【文献】 特開2016−186469(JP,A)
【文献】 特開2018−034242(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
B25J 1/00−21/02
(57)【特許請求の範囲】
【請求項1】
搬送される物品の形状を検出するセンサと、検出された物品を把持可能な把持装置が装着されたロボットと、該ロボットを制御する制御装置とを備え、
該制御装置が、検出された物品毎に該物品を把持する際に前記把持装置が配置される把持領域を設定する把持領域設定部と、
設定された前記把持領域と他の物品との干渉を判定する判定部と、検出された各物品に対応づけて、前記判定部によって判定された前記干渉の有無に関する判定結果を記憶する記憶部と、
前記ロボットを制御して、前記把持領域に他の物品が干渉していない物品を前記把持装置により取り出させるロボット制御部と、
前記把持装置により物品が取り出される都度に、前記記憶部に記憶された前記判定結果を更新する更新部とを備えるロボットシステム。
【請求項2】
前記記憶部が、各一の物品の識別情報と当該一の物品に設定された前記把持領域に干渉している他の物品の識別情報とを対応づけた第1干渉物品情報を記憶する請求項1に記載のロボットシステム。
【請求項3】
前記記憶部が、前記一の物品が干渉している前記把持領域を有する前記他の物品の識別情報を、前記一の物品の識別情報に対応づけた第2干渉物品情報を記憶する請求項2に記載のロボットシステム。
【請求項4】
前記第1干渉物品情報において、2つの物品の識別情報が互いに対応づけられている場合に、2つの物品を前記更新部による更新の対象から除外する請求項2または請求項3に記載のロボットシステム。
【請求項5】
前記把持領域設定部が、前記センサによって検出された物品の種類に応じて異なる前記把持領域を設定する請求項1から請求項4のいずれかに記載のロボットシステム。
【請求項6】
搬送される物品の形状を検出する検出ステップと、
検出された物品毎に該物品を把持装置に把持させる際に該把持装置が配置される把持領域を設定する把持領域設定ステップと、
設定された前記把持領域と他の物品との干渉を判定する判定ステップと、
判定された前記干渉の有無に関する判定結果を、検出された各物品に対応づけて記憶部に記憶させる記憶ステップと、
ロボットを制御して、前記把持領域に他の物品が干渉していない物品を前記把持装置により取り出させる制御ステップと、
前記把持装置により物品が取り出される都度に、前記記憶部に記憶された前記判定結果を更新する更新ステップとを含むロボットシステムの制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ロボットシステムおよびロボットシステムの制御方法に関する。
【背景技術】
【0002】
コンベヤ上にバラバラに置かれた状態で流れてくる複数の物品を視覚センサによって検出し、検出された物品の形状および姿勢に基づいて、ロボットが把持装置によって対象物を取り出すロボットシステムが知られている(例えば、特許文献1参照。)。特許文献1に記載されたロボットシステムでは、取り出す目標物品と他の物品との距離が近い場合に、把持装置と他の物品との干渉を防ぐために、目標物品を取り出す際のロボットの経路が補正されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2016−185573号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、特許文献1に記載のロボットシステムを用いると、目標物品の周りに複数の他の物品が近接していて、他の物品との干渉を回避して目標物品を取り出すための経路を作成できない場合に、把持装置が目標物品を取り出すことができない。
本発明は、複数の物品が近接している状態でも、目標物品を取り出すことができるロボットシステムおよびロボットシステムの制御方法を提供することを目的とする。
【課題を解決するための手段】
【0005】
上記目的を達成するため、本発明は以下の手段を提供する。
本発明の一態様は、搬送される物品の形状を検出するセンサと、検出された物品を把持可能な把持装置が装着されたロボットと、該ロボットを制御する制御装置とを備え、該制御装置が、検出された物品毎に該物品を把持する際に前記把持装置が配置される把持領域を設定する把持領域設定部と、設定された前記把持領域と他の物品との干渉を判定する判定部と、検出された各物品に対応づけて、前記判定部によって判定された前記干渉の有無に関する判定結果を記憶する記憶部と、前記ロボットを制御して、前記把持領域に他の物品が干渉していない物品を前記把持装置により取り出させるロボット制御部と、前記把持装置により物品が取り出される都度に、前記記憶部に記憶された前記判定結果を更新する更新部とを備えるロボットシステムを提供する。
【0006】
本態様によれば、搬送されている物品がセンサにより検出されると、把持領域設定部により、検出された物品毎に把持領域が設定される。設定された把持領域と他の物品との干渉の有無が判定され、判定結果が記憶部に記憶される。一の物品の把持領域に他の物品が存在せずに干渉がない場合には、ロボット制御部によりロボットが制御されて、把持装置が一の物品の把持領域に配置され、把持装置により一の物品が把持されるので、他の物品との干渉を生じさせずに、物品を取り出すことができる。
【0007】
ロボットによって一の物品が取り出されると、取り出された状態における物品間の干渉の有無が判定部によって判定され、更新部は、新たな判定結果に基づいて記憶部に記憶された判定結果を更新する。これにより、一の物品が取り出された結果、取り出された物品が他の物品の把持領域に干渉していた場合には、他の物品の把持領域における一の物品による干渉がなくなる。ここで、他の物品の把持領域に別の異なる物品が干渉していない場合には、一の物品が取り出される前に取り出し不可能であった他の物品は、一の物品が取り出された後に、把持装置によって取り出し可能な物品となる。このように、物品の検出時に、把持領域に複数の物品が干渉していた物品であっても、干渉している物品が取り出された後には、把持装置によって取り出し可能な物品となる。
【0008】
上記態様において、前記記憶部が、各一の物品の識別情報と当該一の物品に設定された前記把持領域に干渉している他の物品の識別情報とを対応づけた第1干渉物品情報を記憶してもよい。
【0009】
この構成により、第1干渉物品情報において、他のいずれの物品の識別情報も対応づけられていない物品は、把持装置によって取り出し可能である。これにより、ロボット制御部は、第1干渉物品情報のみを参照することによって、把持装置によって次に取り出し可能な物品を判断して、物品の取り出しを実行できる。
【0010】
上記態様において、前記記憶部が、前記一の物品が干渉している前記把持領域を有する前記他の物品の識別情報を、前記一の物品の識別情報に対応づけた第2干渉物品情報を記憶していてもよい。
【0011】
この構成により、一の物品が把持装置によって取り出された場合に、第2干渉物品情報において、一の物品の識別情報に対応づけられている他の物品の識別情報に対応する第1干渉物品情報を更新することにより、把持装置によって次に取り出し可能な物品の判断を容易にすることができる。
【0012】
上記態様において、前記第1干渉物品情報において、2つの物品の識別情報が互いに対応づけられている場合に、2つの物品を前記更新部による更新の対象から除外してもよい。
【0013】
この構成により、互いに把持領域に干渉し合っている複数の物品は、把持装置によって異なる別の物品の取り出しによる判定結果の更新にかかわらず取り出し不可能な物品として第1干渉物品情報に示されている。これにより、異なる別の物品が取り出されても、互いに把持領域を干渉し合っている一の物品および他の物品の判定結果が更新されなくても済む。
【0014】
上記態様において、前記把持領域設定部が、前記センサによって検出された物品の種類に応じて異なる前記把持領域を設定してもよい。
この構成により、物品の形状等に応じて把持領域が設定されているため、把持装置は、物品を安定した姿勢で把持できる。
【0015】
本発明の他の態様は、搬送される物品の形状を検出する検出ステップと、検出された物品毎に該物品を把持装置に把持させる際に該把持装置が配置される把持領域を設定する把持領域設定ステップと、設定された前記把持領域と他の物品との干渉を判定する判定ステップと、判定された前記干渉の有無に関する判定結果を、検出された各物品に対応づけて記憶部に記憶させる記憶ステップと、ロボットを制御して、前記把持領域に他の物品が干渉していない物品を前記把持装置により取り出させる制御ステップと、前記把持装置により物品が取り出される都度に、前記記憶部に記憶された前記判定結果を更新する更新ステップとを含むロボットシステムの制御方法を提供する。
【0016】
本態様によれば、検出された物品毎に把持領域が設定され、設定された把持領域と他の物品との判定結果が記憶部に記憶される。一の物品の把持領域に他の物品が干渉していない場合には、制御された把持装置が、一の物品の把持領域を把持して、他の物品との干渉を生じさせずに一の物品を取り出すことができる。一の物品が取り出されると、記憶部に記憶された判定結果が更新される。これにより、検出時に物品の把持領域に他の物品が干渉していても、判定結果の更新および物品の取出が繰り返されることによって、他の物品が取出可能になる場合がある。
【発明の効果】
【0017】
本発明に係るロボットシステムおよびロボットシステムの制御方法によれば、複数の物品が近接している状態でも、目標物品を取り出すことができるという効果を奏する。
【図面の簡単な説明】
【0018】
図1】本発明のロボットシステムの概略上面図である。
図2】ロボットシステムのブロック図である。
図3】物品に設定された把持領域および干渉情報の説明図であって、(a)センサの撮影範囲の上面図、(b)物品ステータスDBに記憶された各物品の干渉情報を示す図である。
図4図3に示される状態から新たな物品が検出された場合の把持領域および干渉情報の説明図であって、(a)センサの撮影範囲の上面図、(b)物品ステータスDBに記憶された各物品の干渉情報を示す図である。
図5】物品に設定された把持領域および干渉情報の説明図であって、(a)ハンドの作業範囲の上面図、(b)物品ステータスDBに記憶された各物品の干渉情報を示す図である。
図6図5に示される状態から物品が取り出された場合の把持領域および干渉情報の説明図であって、(a)ハンドの作業範囲の上面図、(b)物品ステータスDBに記憶された各物品の干渉情報を示す図である。
図7】物品検出時にロボットシステムによって行われる処理のフローチャートである。
図8】物品取り出し時にロボットシステムによって行われる処理のフローチャートである。
【発明を実施するための形態】
【0019】
本発明の実施形態にロボットシステム100について、図面を参照しながら以下に説明する。
本実施形態に係るロボットシステム100は、図1に示されるように、複数の物品WN(N=1,2,・・・)を搬送するコンベヤ80と、コンベヤ80上を搬送される物品WNを検出するセンサ50と、物品WNを把持するハンド(把持装置)15を備えるロボット10と、ロボット10を制御する制御装置20とを備えている。
【0020】
センサ50は、物品WNの3次元形状を取得可能な3次元カメラであり、コンベヤ80上の撮影範囲RIを撮影する。ロボット10は、例えば、6個の関節を有する垂直多関節型ロボットであり、制御装置20によって各関節の回転角度が制御されることによって動作する。ロボット10の先端に取り付けられたハンド15は、コンベヤ80上を搬送される物品WNに対して把持作業を行う。ハンド15がコンベヤ80上で作業可能な範囲は、図1に示されるように、センサ50の撮影範囲RIよりも下流側に位置する作業範囲RWである。
【0021】
コンベヤ80は、図1の矢印で示される搬送方向に一定の速さで物品WNを搬送する。コンベヤ80には、コンベヤ80の搬送速度を検出するためのエンコーダ(不図示)が設けられている。エンコーダの検出値が制御装置20に送信されることによって、制御装置20は、コンベヤ80の搬送速度を算出する。
【0022】
制御装置20は、所定のプログラムに従ってロボット10の動作を制御することにより、コンベヤ80上を搬送される物品WNに対して取り出し等の各種作業を行う。なお、本実施形態の制御装置20は、ロボット10に内蔵されているが、他の実施形態の制御装置は、ロボット10と別体で構成されていてもよい。
【0023】
図2は、ロボットシステム100のブロック図である。図2に示されるように、制御装置20は、センサ50によって検出された物品WNの姿勢および位置に応じてロボット10の動作を制御する制御部21と、物品WNの3次元形状などを記憶している記憶部26とを備えている。
【0024】
記憶部26は、RAM(Random Access Memory)、あるいはHDD(Hard Disk Drive)などの記憶媒体で構成されている。記憶部26は、ロボット10の作業対象である複数の物品WNの3次元形状を記憶している物品形状DBと、センサ50によって検出された物品とその他の物品とにおける干渉の有無に関する干渉情報について記憶する物品ステータスDBとを備えている。
【0025】
物品形状DBは、複数の物品WNの3次元形状のそれぞれについて、図1に示されるような3次元形状に対応づけられた把持領域GNを記憶している。把持領域GNは、検出された物品WNがハンド15によって把持される際に、ハンド15が配置される領域として記憶されている。
【0026】
物品ステータスDBが記憶する各物品に対応づけられた干渉情報について、図3を用いて説明する。図3(a)には、コンベヤ80上を搬送される2つの物品W1,W2が検出されている状態の撮影範囲RIの上面図が示されている。センサ50によって物品W1,W2が検出されると、後述する把持領域設定部23は、物品形状DBに記憶された複数の物品の3次元形状を用いたパターンマッチングによって、検出された物品W1,W2が記憶されたいずれの物品であるかを特定する。その後、把持領域設定部23は、物品W1,W2のそれぞれについて、把持領域G1,G2を設定する。
【0027】
物品ステータスDBは、物品W1,W2のそれぞれの干渉情報として、把持領域G1,G2における他の物品の干渉について、図3(b)に示される物品W1,W2のそれぞれの物品名(識別情報)毎の干渉の有無を記憶する。この干渉情報は、検出された物品W1,W2の重心を表す検出位置と、物品W1,W2の姿勢を表すための基準姿勢からの傾きを示す角度と、ハンド15によって取り出し可能の可否を表すステータスと、自分の把持領域に入っている他の物品についての情報(第1物品干渉情報)と、把持領域に自分が入っている他の物品についての情報(第2物品干渉情報)とを含んでいる。
【0028】
物品W1,W2の検出位置および角度は、物品形状DBに記憶された各物品の3次元形状に対応づけられた基準姿勢と、センサ50によって検出された撮影画像とが用いられることによって特定される。
【0029】
例えば、物品W1の干渉情報について説明すると、図3(a)に示されるように、物品W1の把持領域G1には他の物品が干渉していない。そのため、図3(b)に示されるように、後述の判定部24は、初めに、物品W1の「ステータス」を「取り出し可」と判定して設定する。また、判定部24は、物品W1の「自分の把持領域に入っている他の物品」を「なし」と設定する。物品W1は、他の物品の把持領域に干渉していないため、判定部24は、物品W1の「把持領域に自分が入っている他の物品」を「なし」と設定する。
【0030】
図2に示される制御部21は、図示されていないCPUと、ROMと、RAMとで構成されている。制御部21は、ROMまたは記憶部26に格納されたプログラムを読み込んで、RAMに一時的に読出および格納を行い、CPUにより各種プログラムに対応する機能を実行する。
【0031】
制御部21は、ロボット10の動作を制御する駆動制御部(ロボット制御部)22と、センサ50によって検出された物品W1,W2(図3(a))に対して把持領域G1,G2を設定する把持領域設定部23と、設定された把持領域G1,G2における他の物品W1,W2の干渉の有無を判定する判定部24と、ハンド15によってコンベヤ80によって搬送される物品が取り出される度に物品ステータスDBに記憶された干渉情報を更新する更新部25とを備えている。
【0032】
図4は、図3に示される状態から、さらに新たな物品W3がセンサ50によって検出された状態を示している。物品W3がセンサ50によって検出されると、図4(b)に示さるように、判定部24は、物品W3の干渉情報を物品ステータスDBに追加する。物品W3が新たに検出されることによって、図4(a)に示されるように、物品W1の把持領域G1に物品W3が干渉している。そのため、判定部24は、図4(b)に示されるように、物品W1の「自分の把持領域に入っている他の物品」に「W3」を追加する。これは、ハンド15が物品W1を取り出す際に物品W3と干渉することを表している。これにより、判定部24は、図4(b)に示される物品W1の「ステータス」を「取り出し不可」に変更する。
【0033】
図5および図6は、物品がハンド15によって取り出される前後の物品間の位置関係および物品ステータスDBに含まれる各物品の干渉情報について説明する図である。図5(a)には、物品W5がハンド15によって取り出される前のハンド15の作業範囲RWの上面図が示されている。作業範囲RWと撮影範囲RIとの位置関係は予め設定されているため、駆動制御部22は、作業範囲RWにおける物品の位置および姿勢を、物品ステータスDBに記憶された各物品の干渉情報における検出位置および角度から算出できる。そのため、駆動制御部22は、センサ50の検出結果を用いて、作業範囲RWに含まれる物品を特定できる。
【0034】
図5(a)に示されるように、把持領域設定部23によって、センサ50によって検出された物品W4〜W7のそれぞれには、把持領域G4〜G7が設定されている。図5(b)に示されるように、物品ステータスDBには、物品W4〜W7のそれぞれについての干渉情報が記憶されている。
【0035】
図5(a)に示されるように、物品W4,W6,W7のそれぞれの把持領域G4,G6,G7には他の物品が干渉し、物品W5の把持領域G5にはいずれの物品も干渉していない。そのため、図5(b)の物品ステータスDBに示されるように、物品W5の「ステータス」だけが、「取り出し可」として設定されている。この場合、駆動制御部22は、物品ステータスDBに記憶されたそれぞれの物品W4〜W7の内、「ステータス」が「取り出し可」である物品W5に対して取り出し作業を実行する。なお、「ステータス」が「取り出し可」である物品が複数ある場合には、下流側の物品から取り出し作業が実行される。
【0036】
図5(a)に示されるように、物品W6と物品W7とは、互いにそれぞれの把持領域G6,G7を干渉し合っている。本実施形態では、別の物品の取り出し作業にかかわらず、更新部25は、このような物品W6,W7の「ステータス」を「取り出し不可」に設定し、物品W6,W7の干渉情報を更新しない。
【0037】
図6(a)には、図5(a)に示された状態から、物品W5が取り出された後の作業範囲RWの上面図が示されている。物品W5が取り出されると、図6(b)に示されるように、更新部25は、物品ステータスDBにおける物品W5の「ステータス」を「取り出し済」に更新する。物品W5の「ステータス」が更新されると、判定部24は、更新後の物品ステータスDBに基づいて、各物品に設定された把持領域における他の物品の干渉の有無を再度判定する。
【0038】
判定部24は、取り出された物品W5の「把持領域に自分が入っている他の物品」に設定されている物品W4,物品W6の干渉の有無を再度判定する。例えば、物品W4の干渉情報において、物品W5が取り出される前では図5(b)に示されるように、「自分の把持領域に入っている他の物品」として物品W5が設定されていた。更新後に物品W5が取り出されると、図6(b)に示されるように、判定部24は、物品W4の「自分の把持領域に入っている他の物品」を「なし」に変更する。これに伴い、物品W4の「ステータス」は、「取り出し可」に変化している。
【0039】
また、判定部24は、物品W6における「自分の把持領域に入っている他の物品」を、「W5,W7(図5(b)」から「W7(図6(b))に変更する。一方で、「把持領域に自分が入っている他の物品」に物品W5が設定されていない物品W7の干渉情報は変化していない。図6に示される状態では、物品W4,W6,W7における「ステータス」の内、「取り出し可」である物品W4が、ハンド15によって次に取り出される。
【0040】
本実施形態に係るロボットシステム100が物品検出時に行う処理について、図4に示される物品W3が検出された例を挙げて、図7に示されるフローチャートに沿って説明する。初めに、センサ50が、コンベヤ80上を搬送される物品W3を検出する検出ステップを行う(ステップS1)。検出された物品W3の検出位置X3,Y3および角度R3は、把持領域設定部23によって特定され、物品ステータスDBに登録される(ステップS2)。
【0041】
把持領域設定部23は、検出された物品W3に対して、把持領域G3を設定する把持領域設定ステップを行う(ステップS3)。判定部24は、設定された把持領域G3に他の物品が干渉しているか否かを判定する判定ステップを行う(ステップS4)。把持領域G3に他の物品が干渉していないと判定された場合には(ステップS4:NO)、後述するステップS8の処理が実行される。
【0042】
ステップS4の処理において、判定部24は、把持領域G3に他の物品W2が干渉していると判定すると(ステップS4:YES)、物品ステータスDBにおける物品W3の「ステータス」を「取り出し不可」に設定する(ステップS5)。
【0043】
判定部24は、物品W3の「自分の把持可能領域に入っている他の物品」に、把持領域G3に干渉している物品W2を追加する(ステップS6)。次に、判定部24は、物品W3が他の物品W1の把持領域G1に入っているため、物品W3の「把持可能領域に自分が入っている他の物品」に、物品W1を追加する(ステップS7)。
【0044】
判定部24は、他の物品の把持領域に検出された物品W3(以降では、「検出物品W3」ともいう)が干渉しているか否かを判定する(ステップS8)。他の物品の把持領域に検出物品W3が干渉していないと判定された場合には(ステップS8:NO)、ロボットシステム100の物品検出時に行われる処理が終了する。
【0045】
ステップS8の処理において、物品W1の把持領域G1に検出物品W3が干渉しているため(ステップS8:YES)、判定部24は、他の物品である物品W1の「ステータス」を「取り出し不可」に設定する(ステップS9)。判定部24は、物品W1の「自分の把持可能領域に入っている他の物品」に、検出物品W3を追加する(ステップS10)。
【0046】
次に、判定部24は、他の物品である物品W2の「把持領域に自分が入っている他の物品」に、検出物品W3を追加する(ステップS11)。なお、ステップS5〜S7およびステップS9〜ステップS11は、記憶ステップに相当する。
ステップS11の処理が実行されると、図7に示されるロボットシステム100が物品検出時に行う処理が終了する。
【0047】
次に、本実施形態に係るロボットシステム100が物品取り出し時に行う処理について、図5に示される状態から物品W5が取り出されて図6に示される状態に変化した例を挙げて、図8に示されるフローチャートに沿って説明する。
【0048】
初めに、駆動制御部22は、ハンド15の作業範囲RWに物品があるか否かを判定する(ステップS21)。作業範囲RWに物品がないと判定された場合には(ステップS21:NO)、物品取り出し時に行われる処理が終了する。
【0049】
ステップS21の処理において、駆動制御部22は、作業範囲RWに物品があると判定すると(ステップS21:YES)、作業範囲RWにある物品W4〜W7の「ステータス」が「取り出し可」であるか否かを判定する(ステップS22)。作業範囲RWにある全ての物品の「ステータス」が「取り出し不可」である場合には(ステップS22:NO)、物品取り出し時に行われる処理が終了する。
【0050】
ステップS22の処理において、駆動制御部22は、図5(b)に示されるように、作業範囲RWに「ステータス」が「取り出し可」である物品W5がある場合には(図8のステップS22:YES)、ハンド15を制御して物品W5を取り出す制御ステップを行う(ステップS23)。
【0051】
物品W5が取り出されると、更新部25は、図6(b)に示されるように、物品ステータスDBに記憶されている取り出した物品W5の「ステータス」を「取り出し済」に更新する(図8のステップS24)。なお、他の実施形態では、取り出された物品の干渉情報が物品ステータスDBから削除されてもよい。
【0052】
次に、判定部24は、物品W5が取り出された後の物品ステータスDBに基づいて、再度、物品間の干渉の有無について判定する。判定部24は、取り出された物品W5(以降では、「取り出し物品W5」ともいう)の「把持領域に自分が入っている他の物品」に、設定されている物品があるか否かを判定する(ステップS25)。設定された物品がない場合には(ステップS25:NO)、物品取り出し時に行われる処理が終了する。
【0053】
ステップS25の処理において、取り出し物品W5の「把持領域に自分が入っている他の物品」に設定されている物品W4,W6があるため(ステップS25:YES)、更新部25は、図5(b)に示される物品W4,W6のそれぞれの「自分の把持領域に入っている他の物品」から、取り出し物品W5を削除する(ステップS26)。
【0054】
その後、判定部24は、物品W4,W6の干渉の有無を再度判定した後に、作業範囲RWにいる物品の物品ステータスDBにおいて、「自分の把持領域に入っている物品」に他の物品が入っていない物品があるか否かを判定する(ステップS27)。「自分の把持領域に入っている物品」に他の物品が入っていない物品が1つも無いと判定された場合には(ステップS27:NO)、物品取り出し時に行われる処理が終了する。
【0055】
ステップS27において、図6(b)に示されるように、物品W4の物品ステータスDBにおける「自分の把持領域に入っている物品」には他の物品が入っていないため(ステップS27:YES)、判定部24は、物品W4の「ステータス」を「取り出し可」に更新する更新ステップを行う(ステップS28)。その後、物品W5についての物品取り出し時に行われる処理が終了し、作業範囲RWに含まれる取り出し可能な物品について同様の物品取り出し処理が実行される。
【0056】
このように構成された本実施形態に係るロボットシステム100の作用について以下に説明する。
搬送されている物品W5(図5)がセンサ50によって検出されると、物品W5に設定された把持領域G5における他の物品の干渉の有無が判定部24によって判定され、判定結果が物品ステータスDBに記憶される。物品W5の把持領域G5に他の物品が干渉していない場合には、ハンド15および物品W5と、他の物品との干渉が生じずに、ハンド15によって把持領域G5が把持され物品W5が取り出される。物品W5が取り出されると、更新部25および判定部24によって、物品ステータスDBに記憶された物品W4,W6,W7の判定結果が更新される。更新された結果、物品検出時に取り出し不可能と判定されていた物品W4であっても、物品W5が取り出されることによって、ハンド15による取り出しが可能な物品となる。
【0057】
上記実施形態におけるロボットシステム100において、各物品W4〜W7の把持領域G4〜G7に干渉している他の物品は、物品ステータスDBの各物品W4〜W7における「自分の把持領域に入っている他の物品」に対応づけられて記憶されている。そのため、駆動制御部22は、物品ステータスDBの「自分の把持領域に入っている他の物品」のみを参照することによって、把持領域に他の物品が干渉していない物品を、次に取り出す物品として選択できる。
【0058】
上記実施形態におけるロボットシステム100において、各物品W4〜W7が他の物品の把持領域を干渉している場合に、各物品W4〜W7の干渉情報として、物品ステータスDBに「把持領域に自分が入っている他の物品」が記憶されている。そのため、ハンド15によって物品W5が取り出された場合に、物品W5の「把持領域に自分が入っている他の物品」に設定されている物品W4,W6のみの干渉情報が更新されれば、次に取り出される物品が選択可能になる。
【0059】
上記実施形態におけるロボットシステム100において、互いにそれぞれの把持領域G6,G7を干渉し合っている物品W6,W7における「ステータス」は、他の物品の取り出しにかかわらず、「取り出し不可」に設定され、物品W6,W7の干渉情報は更新されない。これにより、物品W6,W7の干渉情報を更新するための処理が軽減される。
【0060】
上記実施形態のロボットシステム100は、一例であり、種々変形可能である。例えば、物品ステータスDBは、各物品に設定された把持領域と、把持領域に干渉する他の物品との干渉の有無について記憶していればよい。そのため、物品ステータスDBは、必ずしも、図3(b)に示される物品W1,W2における「ステータス」や「把持領域に自分が入っている他の物品」などの情報を含んでいなくてもよい。また、本実施形態では、図5(b)に示される互いの把持領域G6,G7を干渉し合っている物品W6,W7の干渉情報が更新されなかったが、他の実施形態では、干渉の有無に関係なく、別の物品が取り出される度に全ての物品の干渉情報が更新されてもよい。
【0061】
上記実施形態のロボット10は、垂直多関節型ロボットであったが、コンベヤ80上を搬送される物品WNを取り出せるロボットの範囲で種々変形可能である。また、物品WNを搬送する搬送装置としてコンベヤ80を例に挙げたが、コンベヤ80以外の搬送装置であってもよい。また、ロボットシステム100にコンベヤ80が含まれていなくてもよい。コンベヤ80上に搬送される物品は、上記実施形態の物品W1〜W7のように同じ種類の物品でなくてもよく、複数の種類の物品が搬送されてハンド15によって取り出されてもよい。
【0062】
搬送される物品WNを検出するセンサ50は、3次元カメラ以外のセンサ、例えば、2次元カメラであってもよいし、光電センサであってもよいし、マルチアレイセンサであってもよい。マルチアレイセンサが用いられると、二次元平面にマトリックス状に配置した複数のセンサにより垂直方向の距離を同時計測されて、物体の立体像を得ることができる。
【符号の説明】
【0063】
10 ロボット
15 ハンド(把持装置)
20 制御装置
22 駆動制御部(ロボット制御部)
23 把持領域設定部
24 判定部
25 更新部
26 記憶部
50 センサ
100 ロボットシステム
G1〜G7,GW 把持領域
W1〜W7,WN 物品
S1 検出ステップ
S3 把持領域設定ステップ
S4 判定ステップ
S5〜S7,S9〜S11 記憶ステップ
S23 制御ステップ
S28 更新ステップ
図1
図2
図3
図4
図5
図6
図7
図8