(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-04-22
(45)【発行日】2022-05-16
(54)【発明の名称】情報処理装置及びロボットアーム制御システム
(51)【国際特許分類】
B25J 13/08 20060101AFI20220425BHJP
B65G 47/91 20060101ALN20220425BHJP
【FI】
B25J13/08 A
B65G47/91 Z
(21)【出願番号】P 2017209394
(22)【出願日】2017-10-30
【審査請求日】2020-09-24
(73)【特許権者】
【識別番号】000003078
【氏名又は名称】株式会社東芝
(73)【特許権者】
【識別番号】598076591
【氏名又は名称】東芝インフラシステムズ株式会社
(74)【代理人】
【識別番号】100108855
【氏名又は名称】蔵田 昌俊
(74)【代理人】
【識別番号】100103034
【氏名又は名称】野河 信久
(74)【代理人】
【識別番号】100075672
【氏名又は名称】峰 隆司
(74)【代理人】
【識別番号】100153051
【氏名又は名称】河野 直樹
(74)【代理人】
【識別番号】100189913
【氏名又は名称】鵜飼 健
(72)【発明者】
【氏名】佐藤 昌孝
(72)【発明者】
【氏名】渡辺 優香
【審査官】臼井 卓巳
(56)【参考文献】
【文献】米国特許出願公開第2017/0136632(US,A1)
【文献】特開2016-132521(JP,A)
【文献】特開平05-127715(JP,A)
【文献】特開平07-172612(JP,A)
【文献】特開2009-117433(JP,A)
【文献】特開2013-184257(JP,A)
【文献】特開平10-180667(JP,A)
【文献】特開2005-271149(JP,A)
【文献】特開2012-000692(JP,A)
【文献】特開2000-263481(JP,A)
【文献】特開2015-136769(JP,A)
【文献】特開2017-177294(JP,A)
【文献】米国特許出願公開第2014/0180479(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
B25J 9/16-19/06
B65G 47/91
B65H 3/62
H05K 13/04
(57)【特許請求の範囲】
【請求項1】
所定範囲に置かれた物品に吸着し前記物品を保持する保持機構と、前記保持機構を移動させるアーム機構とを有するロボットアームに情報を供給する情報処理装置であって、
通信を行う通信インタフェースと、
前記所定範囲をカメラが撮像した画像に基づいて、前記保持機構を前記物品に吸着させる吸着点を算出し、算出した前記吸着点を示す情報を前記ロボットアームに供給する制御部と、
を具備し、
前記制御部は、前記画像に基づく前記吸着点の算出を行うことが出来なかった場合、オペレータが操作する操作端末から前記画像上の前記物品が写った領域を示す領域情報を取得し、前記領域情報に基づいて前記吸着点を再度算出し、再算出した前記吸着点を示す情報を前記ロボットアームに供給する、情報処理装置。
【請求項2】
前記制御部は、前記ロボットアームの前記保持機構が前記吸着点において前記物品に接しなかった場合、前記操作端末から前記画像上の前記物品が写った領域を示す領域情報を取得し、前記領域情報に基づいて前記吸着点を再度算出する、請求項1に記載の情報処理装置。
【請求項3】
前記領域情報は、前記画像上における前記物品の輪郭を示す情報である、請求項2に記載の情報処理装置。
【請求項4】
前記領域情報は、前記画像上における前記物品上の任意の領域を示す情報である、請求項2に記載の情報処理装置。
【請求項5】
前記制御部は、前記領域情報が示す領域の中心
又は重心を前記吸着点として決定する、請求項1乃至4のいずれか1項に記載の情報処理装置。
【請求項6】
前記制御部は、前記ロボットアームの前記保持機構が、再算出された前記吸着点において前記物品を保持できなかった場合、前記物品を保持できなかった旨を報知する請求項
2に記載の情報処理装置。
【請求項7】
ロボットアームと、前記ロボットアームに情報を供給する情報処理装置とを具備するロボットアーム制御システムであって、
前記ロボットアームは、
所定範囲に置かれた物品に吸着し前記物品を保持する保持機構と、
前記保持機構を移動させるアーム機構と、
を具備し、
前記情報処理装置は、
前記所定範囲をカメラが撮像した画像に基づいて、前記保持機構を前記物品に吸着させる吸着点を算出し、算出した前記吸着点を示す情報を前記ロボットアームに供給する制御部を具備し、
前記制御部は、前記画像に基づく前記吸着点の算出を行うことが出来なかった場合、オペレータが操作する操作端末から前記画像上の前記物品が写った領域を示す領域情報を取得し、前記領域情報に基づいて前記吸着点を再度算出し、再算出した前記吸着点を示す情報を前記ロボットアームに供給するロボットアーム制御システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、情報処理装置及びロボットアーム制御システムに関する。
【背景技術】
【0002】
小包などの物品(荷物)を配送する仕分システムでは、収集した荷物を配送先ごとに仕分ける作業が必要となる。例えば、物品に吸着することにより物品を保持する保持機構と、保持機構を移動させるアーム機構とを有するロボットアームを備える仕分システムが実用化されている。
【0003】
上記の様なロボットアームを備える仕分システムでは、画像に基づいて物品の形状等を認識し、認識結果に基づいて保持機構を物品に吸着させる位置を示す吸着点を決定する。しかし、認識が誤っていた場合、仕分システムは、吸着点を決定することができない、または吸着点に保持機構を移動させても物品に吸着させることができないなどの問題が生じる可能性がある。このような場合、ロボットアームの動作を停止させ、オペレータが物品の位置を調整する必要がある。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
本発明が解決しようとする課題は、ロボットアームの動作を停止させることなく、物品の保持作業を継続させることができる情報処理装置及びロボットアーム制御システムを提供することである。
【課題を解決するための手段】
【0006】
実施形態によれば、所定範囲に置かれた物品に吸着し前記物品を保持する保持機構と、前記保持機構を移動させるアーム機構とを有するロボットアームに情報を供給する情報処理装置は、通信インタフェースと、制御部とを具備する。制御部は、前記所定範囲をカメラが撮像した画像に基づいて、前記保持機構を前記物品に吸着させる吸着点を算出し、算出した前記吸着点を示す情報を前記ロボットアームに供給する。また、制御部は、前記制御部は、前記画像に基づく前記吸着点の算出を行うことが出来なかった場合、オペレータが操作する操作端末から前記画像上の前記物品が写った領域を示す領域情報を取得し、前記領域情報に基づいて前記吸着点を再度算出し、再算出した前記吸着点を示す情報を前記ロボットアームに供給する。
【図面の簡単な説明】
【0007】
【
図1】
図1は、一実施形態に係る仕分システムの構成例について説明する為の説明図である。
【
図2】
図2は、一実施形態に係る情報処理装置の構成例について説明する為の説明図である。
【
図3】
図3は、一実施形態に係る操作端末の構成例について説明する為の説明図である。
【
図4】
図4は、一実施形態に係るロボットアームの動作について説明する為のフローチャートである。
【
図5】
図5は、一実施形態に係る情報処理装置の動作について説明する為のフローチャートである。
【
図6】
図6は、一実施形態に係る情報処理装置の動作について説明する為のフローチャートである。
【
図7】
図7は、一実施形態に係る情報処理装置の動作について説明する為のフローチャートである。
【
図8】
図8は、カメラから供給される画像の例について説明する為の説明図である。
【
図9】
図9は、マスク画像の例について説明する為の説明図である。
【
図10】
図10は、マスク画像の他の例について説明する為の説明図である。
【
図11】
図11は、一実施形態に係る操作端末の動作について説明する為のフローチャートである。
【
図12】
図12は、一実施形態に係る操作端末の動作について説明する為のフローチャートである。
【
図13】
図13は、オペレータの操作結果の例について説明する為の図である。
【
図14】
図14は、オペレータの操作結果の例について説明する為の図である。
【
図15】
図15は、オペレータの操作結果の例について説明する為の図である。
【発明を実施するための形態】
【0008】
以下、実施形態について、図面を参照して説明する。
図1は、仕分システム1の概略的な構成例について説明する為の説明図である。
【0009】
仕分システム1は、カゴ車2に搭載された仕分対象である物品3を所定の仕分先に仕分けるシステムである。仕分先は、例えばベルトコンベア4である。なお、仕分先は、ベルトコンベア4に限定されるものではなく、仕分用のカゴであっても良いし、作業台などであっても良い。
【0010】
仕分システム1は、ロボットアーム11、情報処理装置12、及び操作端末13を備える。また、仕分システム1は、カメラ14をさらに備える。ロボットアーム11、情報処理装置12、操作端末13、及びカメラ14は、ネットワーク15を介して互いに通信可能に構成されている。
【0011】
まず、ロボットアーム11の構成について説明する。
ロボットアーム11は、カゴ車2から物品3を持ち上げ、物品を仕分先に供給する装置である。ロボットアーム11は、保持機構21、アーム機構22、接触センサ23、圧力センサ24、及びコントローラ25を備える。
【0012】
保持機構21は、物品3を保持する機構である。保持機構21は、例えば、物品3に吸着する少なくとも1つ以上の吸着パッドを備える。吸着パッドは、物品3の表面に接し、且つコントローラ25により制御される真空ポンプ(図示せず)に連通したパッド部を備える。
【0013】
アーム機構22は、保持機構21を移動させる機構である。アーム機構22は、複数のアームと、複数のアームを連結する間接機構とを備える。間接機構は、コントローラ25により制御されるアクチュエータ(図示せず)により可動することにより、アームを駆動する。
【0014】
接触センサ23は、保持機構21に対して加えられる応力を検知するセンサである。接触センサ23は、例えば、保持機構21に対して鉛直方向から加わる応力を検知する。接触センサ23は、検知結果をコントローラ25に送信する。具体的には、接触センサ23は、保持機構21に対して鉛直方向から加わる応力を検知した場合、オン信号をコントローラ25に供給する。
【0015】
圧力センサ24は、保持機構21の吸着パッド内の圧力を検知するセンサである。圧力センサ24は、例えば、保持機構21の吸着パッドと真空ポンプとが連結される連結部の圧力を検知する。圧力センサは、検知結果をコントローラに送信する。具体的には、圧力センサ24は、保持機構21の吸着パッド内の圧力が負圧であることを検知した場合、オン信号をコントローラ25に供給する。
【0016】
コントローラ25は、保持機構21及びアーム機構22の動作を制御する。コントローラ25は、例えば、メモリ(図示せず)と、メモリに記憶されたプログラムを実行することにより保持機構21及びアーム機構22の動作を制御する演算素子(図示せず)とを備える。また、コントローラ25は、シーケンサとして構成されていてもよい。
【0017】
次に、カメラ14の構成について説明する。
カメラ14は、レンズと、レンズにより結像された光を画像に変換する撮像素子とを備える。カメラ14のレンズは、ロボットアーム11により持ち上げられる物品3が搭載されたカゴ車2内を撮影することができるように画角が調整されている。例えば、カメラ14のレンズは、ロボットアーム11の保持機構21により物品3に吸着が可能な範囲が画角内に収まるように配置される。カメラ14は、カゴ車2内を撮像することにより生成した画像を、ネットワーク15を介して情報処理装置12に供給する。なお、カメラは、物品3までの距離の情報を測定可能な、例えば3Dカメラを用いても良い。
【0018】
次に、情報処理装置12の構成について説明する。
図2は、情報処理装置12の構成例について説明する為の説明図である。
【0019】
情報処理装置12は、ロボットアーム11に座標情報を供給する装置である。座標情報は、鉛直方向に直交する面(水平面)における座標であり、ロボットアーム11の保持機構21の吸着パッドを物品3に吸着させる位置である吸着点を示す情報である。即ち、情報処理装置12は、ロボットアーム11に吸着点を指示する。例えば、情報処理装置12は、パーソナルコンピュータ(PC)などの、データの処理及びデータの保存を行うことができる装置により構成される。
【0020】
情報処理装置12は、通信インタフェース31及び制御部32を備える。
【0021】
通信インタフェース31は、情報処理装置12以外の他の機器と通信する為のインタフェースである。通信インタフェース31は、ネットワーク15を介してロボットアーム11、操作端末13、及びカメラ14と通信する為の通信規格などに対応した端子及び回路を備える。通信インタフェース31は、制御部32の制御に基づいて、ロボットアーム11、操作端末13、及びカメラ14などと通信する。
【0022】
制御部32は、種々の処理を実行する処理部である。制御部32は、プロセッサ33及びメモリ34を備える。
【0023】
プロセッサ33は、演算処理を実行する演算素子である。プロセッサ33は、例えばCPUとして構成される。プロセッサ33は、メモリ34に記憶されているプログラムに基づいて種々の処理を行う。
【0024】
メモリ34は、プログラム及びデータを記憶する記憶装置である。メモリ34は、例えば、読み出し専用の不揮発性メモリであるROM、データを一時的に記憶するRAM、及びデータを記憶するストレージのいずれか、または複数を備える。
【0025】
次に、操作端末13の構成について説明する。
図3は、操作端末13の構成例について説明する為の説明図である。
【0026】
操作端末13は、情報処理装置12に操作に基づく情報を供給する装置である。操作端末13は、通信インタフェース41、制御部42、及びタッチパネル43を備える。
【0027】
通信インタフェース41は、操作端末13以外の他の機器と通信する為のインタフェースである。通信インタフェース41は、ネットワーク15を介してロボットアーム11、情報処理装置12、及びカメラ14と通信する為の通信規格などに対応した端子及び回路を備える。通信インタフェース41は、制御部42の制御に基づいて、ロボットアーム11、情報処理装置12、及びカメラ14などと通信する。
【0028】
制御部42は、種々の処理を実行する処理部である。制御部42は、プロセッサ44及びメモリ45を備える。
【0029】
プロセッサ44は、演算処理を実行する演算素子である。プロセッサ44は、例えばCPUとして構成される。プロセッサ44は、メモリ45に記憶されているプログラムに基づいて種々の処理を行う。
【0030】
メモリ45は、プログラム及びデータを記憶する記憶装置である。メモリ45は、例えば、読み出し専用の不揮発性メモリであるROM、データを一時的に記憶するRAM、及びデータを記憶するストレージのいずれか、または複数を備える。
【0031】
タッチパネル43は、画面の表示と、操作に基づく操作信号の生成とを行う装置である。タッチパネル43は、一体に構成されたディスプレイ46及びタッチセンサ47を備える。操作端末13は、タッチパネル43の代わりに画面を表示するディスプレイと、操作に基づき操作信号を生成する操作部とを備える構成であってもよい。操作部は、マウス、トラックボール、キーボード、トラックパッドなど如何なるものであってもよい。
【0032】
ディスプレイ46は、制御部42または図示されないグラフィックコントローラから供給される表示用のデータ(画面データ)に基づいて画面を表示する。
【0033】
タッチセンサ47は、ディスプレイ46に表示された画面上において操作端末13を操作するオペレータがタッチした位置を示す操作信号を生成する。
【0034】
次に、ロボットアーム11の動作について説明する。
図4は、ロボットアーム11の動作について説明する為のフローチャートである。
【0035】
ロボットアーム11のコントローラ25は、アームをカメラ14のレンズの画角外(即ち撮影範囲外)に移動させる(ステップS11)。例えば、コントローラ25は、アーム機構22の間接機構をアクチュエータにより可動させることにより、アーム機構22を駆動し、アーム機構22及び保持機構21を撮影範囲外に移動させる。なお、カメラ14は、アーム機構22及び保持機構21を撮影範囲外に移動したタイミングで画像を取得し、情報処理装置12に送信する。
【0036】
コントローラ25は、アーム機構22及び保持機構21を撮影範囲外に移動させると、情報処理装置12から座標情報が供給されるのを待つ(ステップS12)。
【0037】
コントローラ25は、情報処理装置12から座標情報が供給された場合(ステップS12、YES)、座標情報に基づき保持機構21の吸着パッドを移動させる(ステップS13)。例えば、コントローラ25は、座標情報が示す吸着点に保持機構21の吸着パッドを移動させるように、アーム機構22を制御する。より具体的には、コントローラ25は、座標情報が示す吸着点と、保持機構21の吸着パッドにおける基準点とが重なるように、アーム機構22を制御する。吸着パッドの基準点は、例えば吸着パッドの中心(重心)であってもよいし、吸着パッドにおける任意の点であってもよい。
【0038】
コントローラ25は、吸着点において保持機構21を下降させるように、アーム機構22を制御する(ステップS14)。
【0039】
コントローラ25は、接触センサ23の検知結果(接触検知結果)がオンであるか否か判断する(ステップS15)。コントローラ25は、接触センサ23の検知結果に基づいて、保持機構21の吸着パッドが物品3の表面に接したか否か判断する。例えば、コントローラ25は、接触センサ23からオン信号を受信した場合、保持機構21の吸着パッドが物品3の表面に接したと判断する。即ち、コントローラ25は、物品3に吸着パッドが接したか否かを判断する。
【0040】
コントローラ25は、接触センサ23からオン信号を受信しない場合(ステップS15、NO)、最大ストロークであるか否か判断する(ステップS16)。コントローラ25は、アーム機構22により保持機構21をそれ以上下降できない場合、最大ストロークに達したと判断する。
【0041】
コントローラ25は、最大ストロークではないと判断した場合(ステップS16、NO)、ステップS14の処理に移行し、再度保持機構21を下降させるように、アーム機構22を制御する。これにより、コントローラ25は、吸着パッドが物品3の表面に接するまで保持機構21を効果させる。
【0042】
コントローラ25は、最大ストロークであると判断した場合(ステップS16、YES)、物品3に吸着パッドが接触しなかったことを示す接触検知エラーを情報処理装置12に送信し(ステップS17)、ステップS11の処理に移行する。即ち、コントローラ25は、情報処理装置12から指示された吸着点において、最大ストロークまで保持機構21を下降させても、保持機構21の吸着パッドが物品3の表面に接しなかった場合、接触検知エラーを情報処理装置12に送信する。さらに、コントローラ25は、アーム機構22及び保持機構21をカメラ14の画角外に移動させ、次の座標情報の受信を待つ状態になる。
【0043】
また、コントローラ25は、ステップS15において、接触センサ23からオン信号を受信した場合(ステップS15、YES)、保持機構21により吸着処理を実行する(ステップS18)。コントローラ25は、保持機構21の吸着パッドに連結した真空ポンプを動作させることにより、吸着パッドを物品3の表面に吸着させる吸着処理を実行する。例えば、コントローラ25は、保持機構21の吸着パッドが物品に接している状態で、真空ポンプにより吸着パッド内を真空状態にすることにより、吸着パッドを物品3の表面に吸着させる。
【0044】
コントローラ25は、圧力センサ24の検知結果(圧力検知結果)に基づいて、保持機構21の吸着パッド内の圧力が負圧であるか否か判断する(ステップS19)。即ち、コントローラ25は、圧力センサ24の検知結果に基づいて、保持機構21の吸着パッドが物品3の表面に吸着したか否かを判断する。例えば、コントローラ25は、圧力センサ24からオン信号を受信した場合、保持機構21の吸着パッド内が真空状態になり、吸着パッドが物品3の表面に吸着したと判断する。
【0045】
コントローラ25は、保持機構21の吸着パッド内の圧力が負圧ではないと判断した場合、(ステップS19、NO)、物品3に吸着パッドが吸着しなかったことを示す圧力検知エラーを情報処理装置12に送信し(ステップS20)、ステップS11の処理に移行する。即ち、コントローラ25は、保持機構21の吸着パッドが物品3の表面に接した状態で、吸着処理を実行しても、物品3の表面に吸着パッドが吸着しなかった場合、圧力検知エラーを情報処理装置12に送信する。さらに、コントローラ25は、アーム機構22及び保持機構21をカメラ14の画角外に移動させ、次の座標情報の受信を待つ状態になる。なお、コントローラ25は、保持機構21の吸着パッドが物品3の表面に吸着したか否かを所定時間継続して行い、所定時間の間に圧力センサ24からオン信号を受信しなかった場合に圧力検知エラーを情報処理装置12に送信する構成であってもよい。
【0046】
コントローラ25は、保持機構21の吸着パッド内の圧力が負圧と判断した場合、(ステップS19、YES)、コントローラ25は、物品3を保持した保持機構21を上昇させるように、アーム機構22を制御する(ステップS21)。
【0047】
コントローラ25は、保持機構21を所定の高さまで上昇させると、保持機構21を仕分先に応じたベルトコンベア4に対応した位置まで移動させるように、アーム機構22を制御する(ステップS22)。
【0048】
コントローラ25は、保持機構21を仕分先に応じたベルトコンベア4に対応した位置まで移動させると、吸着パッドから物品3を離すように保持機構21を制御し(ステップS23)、1つの物品の仕分が完了したことを示す完了通知を情報処理装置12に送信し、ステップS11の処理に移行する。これにより、吸着パッドから離れた物品3が、仕分先のベルトコンベア4に投入される。さらに、コントローラ25は、アーム機構22及び保持機構21をカメラ14の画角外に移動させ、次の座標情報の受信を待つ状態になる。
【0049】
なお、ロボットアーム11のコントローラ25は、情報処理装置12から終了指示が供給された場合、アーム機構22及び保持機構21を所定の位置に移動させ、
図4の処理を終了する。
【0050】
次に、情報処理装置12の動作について説明する。
図5乃至
図7は、情報処理装置12の動作について説明する為のフローチャートである。
【0051】
情報処理装置12の制御部32は、カメラ14から画像が供給されるのを待つ(ステップS31)。上記したように、カメラ14は、ロボットアーム11により持ち上げられる物品3が搭載されたカゴ車2内の画像を情報処理装置12に供給する。
【0052】
図8は、カメラ14から供給される画像の例について説明する為の説明図である。
図8に示されるように、カメラ14から供給される画像には、カゴ車2内に搭載された複数の物品3が写っている。また、複数の物品3は、重ねられてカゴ車2に搭載される為、他の物品3により一部が隠れた物品3も映り込む。
【0053】
制御部32は、カメラ14から画像を受信すると(ステップS31、YES)、受信した画像に対して画像処理を施す(ステップS32)。例えば、制御部32は、カメラ14から受信した画像(全体画像)に基づきマスク画像を生成する。
【0054】
図9は、マスク画像の例について説明する為の説明図である。マスク画像は、全体画像の一部を抽出した(もしくは選択した)画像である。例えば、制御部32は、物品3までの距離を計測する図示されない距離センサにより取得した距離情報に基づき、カゴ車2内で最も高い位置に存在する面に対応する領域51抽出したマスク画像を生成する。
【0055】
制御部32は、画像処理を施した画像(マスク画像)に基づいて、仕分を行う対象の物品3の形状を認識する(ステップS33)。例えば、制御部32は、マスク画像の輪郭を物品3の形状として認識する。制御部32は、画像上において、物品3の形状の輪郭で囲まれる面、即ち
図9における領域51を、吸着パッドにより吸着処理を行う面(吸着面)として認識する。なお、制御部32は、ステップS32の画像処理を行わずに、全体画像から特定の形状、または直線などを検出することによって、仕分を行う対象の物品3の形状を認識する構成であってもよい。
【0056】
制御部32は、物品3の形状の認識結果に基づいて、仕分が可能な物品が存在するか否か判断する(ステップS34)。例えば、制御部32は、ステップS33で吸着面を認識することができ、且つ吸着面のサイズが予め設定されたサイズよりも大きい場合、仕分が可能な物品が存在すると判断する。また、制御部32は、ステップS33で吸着面を認識することができ、且つ吸着面のサイズが予め設定されたサイズよりも小さい場合、仕分が可能な物品が存在しないと判断する。また、制御部32は、ステップS33で吸着面を認識することができなかった場合、仕分が可能な物品が存在しないと判断する。
【0057】
制御部32は、仕分が可能な物品が存在すると判断した場合(ステップS34、YES)、吸着点の座標を算出する(ステップS35)。例えば、制御部32は、ステップS33で認識した吸着面に基づいて、吸着点の座標を算出する。具体的には、制御部32は、吸着面の中心(若しくは重心)の座標を吸着点の座標として算出する。
【0058】
制御部32は、吸着点の座標を示す座標情報を生成し、座標情報をロボットアーム11に送信する(ステップS36)。
【0059】
制御部32は、ロボットアーム11から完了通知を受信したか否か判断する(ステップS37)。制御部32は、ロボットアーム11から完了通知を受信したと判断した場合(ステップS37、YES)、ステップS31の処理に移行し、カメラ14から供給される画像に基づいて、次の物品3の吸着点の算出を行う。
【0060】
また、制御部32は、ロボットアーム11から完了通知を受信していないと判断した場合(ステップS37、NO)、接触検知エラーをロボットアーム11から受信したか否か判断する(ステップS38)。
【0061】
制御部32は、接触検知エラーをロボットアーム11から受信していないと判断した場合(ステップS38、NO)、圧力検知エラーをロボットアーム11から受信したか否か判断する(ステップS39)。
【0062】
制御部32は、圧力検知エラーをロボットアーム11から受信していないと判断した場合(ステップS39、NO)、ステップS37の処理に移行し、完了通知、接触検知エラー、及び圧力検知エラーのいずれかの通知がロボットアーム11から供給されるのを待つ。
【0063】
また、制御部32は、ステップS34において、仕分が可能な物品が存在しないと判断した場合(ステップS34、NO)、または、ステップS38において、接触検知エラーをロボットアーム11から受信したと判断した場合(ステップS38、YES)、
図6に示すステップS41の処理に移行する。
【0064】
カゴ車2内に物品3が存在しない、物品3がカメラ14の死角に存在する、または正しく物品3の形状が認識できていない場合に、仕分が可能な物品が存在しないと制御部32が判断することが想定される。例えば、
図10に示されるように物品3の吸着面52の認識が誤っており、算出された吸着点53に物品3が存在しない場合、ロボットアーム11は、最大ストロークまで保持機構21を下降させても、物品3の表面に吸着パッドを接触させることができない。このような場合に、制御部32は、接触検知エラーをロボットアーム11から受信することが想定される。このようなケースでは、画像を操作端末13に送信し、操作端末13のオペレータに画像を確認させ、オペレータの操作に基づいて吸着点を決定する必要がある。そこで、制御部32は、カメラ14から受信した画像と、領域の選択を要求する情報とを操作端末13に送信する(ステップS41)。制御部32は、例えばカメラ14から取得した画像に対して画像処理を施した画像を操作端末13に供給する構成であってもよい。また、制御部32は、カメラ14により再度撮像を行わせることにより取得した画像を操作端末13に供給する構成であってもよい。
【0065】
操作端末13では、後述する領域入力処理が行われ、画像上の領域(特定領域)を示す情報である領域情報が生成される。操作端末13は、生成した領域情報を情報処理装置12に送信する。
【0066】
制御部32は、操作端末13から領域情報を受信したか否か判断する(ステップS42)。制御部32は、操作端末13から領域情報を受信するまで待機する。
【0067】
制御部32は、操作端末13から領域情報を受信したと判断した場合(ステップS42、YES)、領域情報に基づいて、吸着点の座標を算出する(ステップS43)。例えば、制御部32は、領域情報が示す画像上の特定領域に基づいて、吸着点の座標を算出する。具体的には、制御部32は、特定領域の中心(若しくは重心)の座標を吸着点の座標として算出する。
【0068】
制御部32は、ステップS43で算出した吸着点の座標を示す座標情報を生成し、座標情報をロボットアーム11に送信し(ステップS44)、
図5のステップS37の処理に移行する。これにより、仕分が可能な物品が存在しないと判断した場合、または吸着点に対応する位置で吸着パッドと物品3とが接触しない場合、オペレータの操作に基づき決定された領域に基づき、吸着点の座標を再度算出することができる。これにより、情報処理装置12は、認識不良が生じた場合であっても、ロボットアーム11の動作を停止させずに、正しい吸着点を決定することができる。
【0069】
また、制御部32は、ステップS39において、圧力検知エラーをロボットアーム11から受信したと判断した場合(ステップS39、YES)、
図7に示すステップS51の処理に移行する。
【0070】
保持機構21の吸着パッドが物品3の表面に接した状態で吸着パッドと物品3との間に隙間が存在する場合、吸着処理を実行したとしても圧力センサ24が負圧を検知せず、ロボットアーム11から圧力検知エラーが通知される。例えば、物品3の表面に凹凸が存在する場合に、吸着パッドと物品3との間に隙間が生じることが想定される。このようなケースでは、画像を操作端末13に送信し、操作端末13のオペレータに画像を確認させ、物品3の吸着しやすい位置をオペレータに選択させる必要がある。そこで、制御部32は、カメラ14から受信した画像と、吸着点の選択を要求する情報とを操作端末13に送信する(ステップS51)。制御部32は、例えばカメラ14から取得した画像に対して画像処理を施した画像を操作端末13に供給する構成であってもよい。また、制御部32は、カメラ14により再度撮像を行わせることにより取得した画像を操作端末13に供給する構成であってもよい。
【0071】
操作端末13では、後述する吸着点入力処理が行われ、画像上のある座標(吸着点)を示す情報である吸着点情報が生成される。操作端末13は、生成した吸着点情報を情報処理装置12に送信する。
【0072】
制御部32は、操作端末13から吸着点情報を受信したか否か判断する(ステップS52)。制御部32は、操作端末13から吸着点情報を受信するまで待機する。
【0073】
制御部32は、操作端末13から吸着点情報を受信したと判断した場合(ステップS52、YES)、吸着点情報に基づいて、吸着点の座標を決定する(ステップS53)。例えば、制御部32は、吸着点情報が示す座標を吸着点の座標として決定する。
【0074】
制御部32は、ステップS53で算出した吸着点の座標を示す座標情報を生成し、座標情報をロボットアーム11に送信し(ステップS54)、
図5のステップS37の処理に移行する。これにより、吸着処理により吸着パッドが物品3に吸着しなかった場合、オペレータの操作に基づき、吸着点を再度算出することができる。これにより、情報処理装置12は、物品3の表面に吸着に不向きな領域が存在する場合であっても、ロボットアーム11の動作を停止させずに、正しい吸着点を決定することができる。
【0075】
なお、情報処理装置12の制御部32は、操作端末13から終了指示が供給された場合、ロボットアーム11に終了指示を供給し、
図5乃至
図7の処理を終了する。
【0076】
また、制御部32は、
図6のステップS41乃至ステップS44の処理、または
図7のステップS51乃至ステップS55の処理により、座標情報をロボットアーム11に再送したにも関わらず、
図5のステップS37でロボットアーム11から完了通知を受信しなかったと判断した場合、ステップS38及びステップS37の処理に移行せず、エラーを報知する構成であってもよい。例えば、制御部32は、操作端末13に保持が失敗した旨を示す画面を送信し、表示させる。また例えば、制御部32は、仕分システム1のネットワーク15に接続された表示装置またはスピーカなどから、保持が失敗したことをオペレータに報知させてもよい。
【0077】
次に、操作端末13の動作について説明する。
図11及び
図12は、操作端末13の動作について説明する為のフローチャートである。
【0078】
操作端末13の制御部42は、情報処理装置12から画像が供給されるのを待つ(ステップS61)。
【0079】
制御部42は、情報処理装置12から画像が供給されると(ステップS61、YSE)、領域の選択が要求されているか、吸着点の選択が要求されているかを判断する(ステップS62)。例えば、制御部42は、情報処理装置12から画像とともに領域の選択を要求する情報が送信された場合、領域の選択が要求されていると判断する。また、例えば、制御部42は、情報処理装置12から画像とともに吸着点の選択を要求する情報が送信された場合、吸着点の選択が要求されていると判断する。
【0080】
制御部42は、領域の選択が要求されていると判断した場合、領域入力処理を行う。この場合、制御部42は、まず供給された画像をディスプレイ46に表示させる(ステップS63)。
【0081】
制御部42は、領域を入力すること促す情報をディスプレイ46に表示させる(ステップS64)。オペレータは、タッチパネル43に対して、任意の領域をなぞる操作を行うことにより、領域を入力する。また、制御部42は、領域の入力を行わずにロボットアーム11の動作を停止(終了)させる為の表示であるボタン(終了ボタン)をディスプレイ46にさらに表示させてもよい。
【0082】
例えば、領域を入力すること促す情報は、仕分する物品3の輪郭を描画することを促す情報である。この場合、オペレータは、タッチパネル43のディスプレイ46に表示された物品3の輪郭をなぞる操作を行うことにより、領域を入力する。
【0083】
図13は、オペレータがタッチパネル43のディスプレイ46に表示された物品3の輪郭をなぞる操作を行った結果について説明する為の図である。制御部42は、オペレータが物品3の輪郭をなぞる操作を行う際のタッチセンサ47のタッチ位置の軌跡に基づいて、画像上の領域54を特定する。情報処理装置12は、この領域54に基づいて吸着点55を算出することができる。
【0084】
また、例えば、領域を入力すること促す情報は、仕分する物品3において、吸着可能な領域を描画することを促す情報であってもよい。この場合、オペレータは、タッチパネル43のディスプレイ46に表示された物品3において、吸着可能であると判断される任意の領域の輪郭をなぞる操作を行うことにより、領域を入力する。
【0085】
図14は、オペレータがタッチパネル43のディスプレイ46に表示された物品3の、吸着可能であると判断される任意の領域の輪郭をなぞる操作を行った結果について説明する為の図である。制御部42は、オペレータが領域の輪郭をなぞる操作を行う際のタッチセンサ47のタッチ位置の軌跡に基づいて、画像上の領域56を特定する。情報処理装置12は、この領域56に基づいて吸着点57を算出することができる。
【0086】
制御部42は、領域を入力する操作が行われたか否か判断する(ステップS65)。例えば、制御部42は、ステップS63及びステップS64の表示を行った状態において、タッチセンサ47に対して、任意の領域を囲う入力操作が行われた場合、領域を入力する操作が行われ、
図13または
図14に示されるような領域が特定されたか否か判断する。
【0087】
制御部42は、領域を入力する操作が行われ、領域が特定されたと判断した場合(ステップS65、YES)、画像上において特定した領域の座標を示す領域情報を生成する(ステップS66)。領域情報は、例えば、タッチセンサ47のタッチ位置の軌跡に基づいて生成されたベクトルデータであってもよいし、領域の位置に対応するラスタデータであってもよい。
【0088】
制御部42は、生成した領域情報を情報処理装置12に送信し(ステップS67)、処理を終了する。
【0089】
また、制御部42は、ステップS65において、領域を入力する操作が行われていないと判断した場合(ステップS65、NO)、ロボットアーム11の動作を終了させるか否か判断する(ステップS68)。例えば、制御部42は、領域を入力する操作が行われていない状態で所定時間が経過した場合、ロボットアーム11の動作を終了させると判断する。また、例えば、制御部42は、タッチパネル43に表示された終了ボタンが選択された場合、ロボットアーム11の動作を終了させると判断してもよい。
【0090】
制御部42は、ロボットアーム11の動作を終了させないと判断した場合(ステップS68、NO)、ステップS64の処理に移行し、再度領域が入力されたか否か判断する。
【0091】
また、制御部42は、ロボットアーム11の動作を終了させると判断した場合(ステップS68、YES)、情報処理装置12に終了指示を供給し(ステップS69)、
図11の処理を終了する。
【0092】
また、制御部42は、ステップS62で吸着点の選択が要求されていると判断した場合、吸着点入力処理を行う。この場合、制御部42は、まず供給された画像をディスプレイ46に表示させる(ステップS71)。
【0093】
制御部42は、吸着点を入力すること促す情報をディスプレイ46に表示させる(ステップS72)。オペレータは、タッチパネル43に対して、任意の吸着点をタッチする操作を行うことにより、吸着点を入力する。また、制御部42は、吸着点の入力を行わずにロボットアーム11の動作を停止(終了)させる為の表示であるボタン(終了ボタン)をディスプレイ46にさらに表示させてもよい。
【0094】
例えば、吸着点を入力すること促す情報は、仕分する物品3の表面において、吸着パッドにより吸着が可能であると思われる位置を選択することを促す情報である。この場合、オペレータは、タッチパネル43のディスプレイ46に表示された物品3の表面の状態を画像から認識し、画面上の任意の位置にタッチすることにより、吸着点を入力する。
【0095】
図15は、オペレータがタッチパネル43のディスプレイ46に表示された物品3の表面の吸着点を選択する操作を行った結果について説明する為の図である。制御部42は、タッチセンサ47のタッチ位置に基づいて、画像上の吸着点58を特定する。
【0096】
制御部42は、吸着点を入力する操作が行われたか否か判断する(ステップS73)。例えば、制御部42は、ステップS71及びステップS72の表示を行った状態において、タッチセンサ47に対してタッチ操作が行われた場合、
図15に示されるような吸着点が特定されたと判断する。
【0097】
制御部42は、吸着点が特定されたと判断した場合(ステップS73、YES)、画像上において特定した吸着点の座標を示す吸着点情報を生成する(ステップS74)。吸着点情報は、例えば、タッチセンサ47のタッチ位置に応じた座標のデータである。
【0098】
制御部42は、生成した吸着点情報を情報処理装置12に送信し(ステップS75)、処理を終了する。
【0099】
ロボットアーム11のコントローラ25は、情報処理装置12から供給された吸着点情報(座標情報)を受信した場合、保持機構21の吸着パッドにおける基準点と吸着点情報が示す吸着点とが重なる位置に保持機構21が移動するように、アーム機構22を制御する。さらに、コントローラ25は、保持機構21を下降させ、保持機構21の吸着パッドを物品3の表面に接したか否か判断する。コントローラ25は、保持機構21の吸着パッドを物品3の表面に接した場合、保持機構21により吸着処理を実行し、吸着パッドを物品3の表面に吸着させる。
【0100】
また、制御部42は、ステップS73において、吸着点が特定されていないと判断した場合(ステップS73、NO)、ロボットアーム11の動作を終了させるか否か判断する(ステップS76)。例えば、制御部42は、吸着点を入力する操作が行われていない状態で所定時間が経過した場合、ロボットアーム11の動作を終了させると判断する。また、例えば、制御部42は、タッチパネル43に表示された終了ボタンが選択された場合、ロボットアーム11の動作を終了させると判断してもよい。
【0101】
制御部42は、ロボットアーム11の動作を終了させないと判断した場合(ステップS76、NO)、ステップS73の処理に移行し、再度吸着点が入力されたか否か判断する。
【0102】
また、制御部42は、ロボットアーム11の動作を終了させると判断した場合(ステップS76、YES)、情報処理装置12に終了指示を供給し(ステップS77)、
図12の処理を終了する。
【0103】
上記したように、情報処理装置12は、画像認識の結果、仕分が可能な物品が存在しないと判断した場合、または吸着点に対応する位置で吸着パッドと物品3とが接触しない場合、領域の入力を要求する情報と画像とをオペレータが操作する操作端末13に供給する。操作端末13は、タッチパネル43により画像を表示させ、オペレータに領域を入力することを促す。これにより、オペレータは、タッチパネル43により物品3の表面に対応する領域を入力する。情報処理装置12は、オペレータが入力した領域に基づき、吸着点の座標を再度算出し、ロボットアーム11に供給する。この結果、情報処理装置12は、認識不良が生じた場合であっても、再算出された吸着点によって、ロボットアーム11の動作を継続させることができる。
【0104】
操作端末13は、オペレータが物品3の輪郭をなぞる操作を行った場合、画像上において物品3の吸着面に対応する領域を特定することができる。これにより、操作端末13は、情報処理装置12における画像処理では正しく吸着面が認識されなかった場合であっても、正しい吸着面を情報処理装置12に教示することができる。
【0105】
また、例えば物品3の表面において吸着に適さない領域が存在する場合、オペレータがその領域を除いて領域をなぞる操作を行うことが想定される。この場合、操作端末13は、物品3の表面の吸着に適さない領域を避けて領域を特定することができる。これにより、操作端末13は、ロボットアーム11が吸着しやすい領域を情報処理装置12に教示することができる。
【0106】
また、上記したように、情報処理装置12は、吸着処理が失敗する場合、吸着点の入力を要求する情報と画像とをオペレータが操作する操作端末13に供給する。操作端末13は、タッチパネル43により画像を表示させ、オペレータに吸着点を入力することを促す。これにより、オペレータは、タッチパネル43により物品3の表面において、吸着パッドを吸着させる位置を入力する。情報処理装置12は、オペレータが入力した吸着点に対応する座標をロボットアーム11に座標情報として供給する。この結果、情報処理装置12は、吸着処理が失敗した場合であっても、オペレータが入力した吸着点を用いて、ロボットアーム11の動作を継続させることができる。
【0107】
なお、上記の実施形態では、ロボットアーム11の保持機構21は、吸着パッドを物品3の表面に吸着させることにより、物品3を保持する構成として説明したが、この構成に限定されない。ロボットアーム11の保持機構21は、2点以上の接点で物品3を挟むことにより物品3を保持する構成であってもよい。この場合、上記の吸着点は、2点以上の接点に置き換えられる。なお、接点は、吸着点とは異なり、物品3の輪郭上の点である必要がある。この場合、オペレータは、操作端末13により、画像上の物品3の輪郭をなぞることにより、物品3の輪郭を入力する。操作端末13は、物品3の輪郭を示す情報を情報処理装置12に教示することにより、情報処理装置12に接点を再算出させる。また、オペレータは、操作端末13により、画像上の物品3の輪郭上の2つ以上の接点を入力してもよい。操作端末13は、物品3を保持可能な接点を示す情報を情報処理装置12に教示することにより、ロボットアーム11による仕分を継続させる。
【0108】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
以下に本願の出願当初の特許請求の範囲に記載された発明を付記する。
[C1]
所定範囲に置かれた物品に吸着し前記物品を保持する保持機構と、前記保持機構を移動させるアーム機構とを有するロボットアームに情報を供給する情報処理装置であって、 通信を行う通信インタフェースと、
前記所定範囲をカメラが撮像した画像に基づいて、前記保持機構を前記物品に吸着させる吸着点を算出し、算出した前記吸着点を示す情報を前記ロボットアームに供給する制御部と、
を具備し、
前記制御部は、前記画像に基づく前記吸着点の算出を行うことが出来なかった場合、オペレータが操作する操作端末から前記画像上の前記物品が写った領域を示す領域情報を取得し、前記領域情報に基づいて前記吸着点を再度算出し、再算出した前記吸着点を示す情報を前記ロボットアームに供給する、情報処理装置。
[C2]
前記制御部は、前記ロボットアームの前記保持機構が前記吸着点において前記物品に接しなかった場合、前記操作端末から前記画像上の前記物品が写った領域を示す領域情報を取得し、前記領域情報に基づいて前記吸着点を再度算出する、C1に記載の情報処理装置。
[C3]
前記領域情報は、前記画像上における前記物品の輪郭を示す情報である、C2に記載の情報処理装置。
[C4]
前記領域情報は、前記画像上における前記物品上の任意の領域を示す情報である、C2に記載の情報処理装置。
[C5]
前記制御部は、前記領域情報が示す領域の中心を前記吸着点として決定する、C1乃至4のいずれか1項に記載の情報処理装置。
[C6]
前記制御部は、前記ロボットアームの前記保持機構が前記吸着点において前記物品に接した状態で、前記物品に吸着することが出来なかった場合、前記物品において吸着が可能な点を示す吸着点情報を前記操作端末から取得し、前記吸着点情報が示す吸着点を前記ロボットアームに供給する、C1に記載の情報処理装置。
[C7]
前記制御部は、前記ロボットアームの前記保持機構が、再算出された前記吸着点において前記物品を保持できなかった場合、前記物品を保持できなかった旨を報知するC2又は6に記載の情報処理装置。
[C8]
ロボットアームと、前記ロボットアームに情報を供給する情報処理装置とを具備するロボットアーム制御システムであって、
前記ロボットアームは、
所定範囲に置かれた物品に吸着し前記物品を保持する保持機構と、
前記保持機構を移動させるアーム機構と、
を具備し、
前記情報処理装置は、
前記所定範囲をカメラが撮像した画像に基づいて、前記保持機構を前記物品に吸着させる吸着点を算出し、算出した前記吸着点を示す情報を前記ロボットアームに供給する制御部を具備し、
前記制御部は、前記画像に基づく前記吸着点の算出を行うことが出来なかった場合、オペレータが操作する操作端末から前記画像上の前記物品が写った領域を示す領域情報を取得し、前記領域情報に基づいて前記吸着点を再度算出し、再算出した前記吸着点を示す情報を前記ロボットアームに供給するロボットアーム制御システム。
【符号の説明】
【0109】
1…仕分システム、2…カゴ車、3…物品、4…ベルトコンベア、11…ロボットアーム、12…情報処理装置、13…操作端末、14…カメラ、15…ネットワーク、21…保持機構、22…アーム機構、23…接触センサ、24…圧力センサ、25…コントローラ、31…通信インタフェース、32…制御部、33…プロセッサ、34…メモリ、41…通信インタフェース、42…制御部、43…タッチパネル、44…プロセッサ、45…メモリ、46…ディスプレイ、47…タッチセンサ。