(57)【要約】【課題】収容部を棚から引き出した際に生じる撮像部の死角を撮像することができるロボットシステム及び撮像方法を提供する。【解決手段】ロボットシステムは、収容部１０を把持する把持部Ｅ１と、把持部Ｅ１が設けられ、収容部１０を収容部１０が収納された棚１４から引き出す第１アームＡ１と、第１アームＡ１に設けられ、把持部Ｅ１にかかる力を検出する力検出部Ｊ１と、収容部１０を撮像する撮像部Ｃ３と、把持部Ｅ１及び第１アームＡ１を制御する制御部５０と、を有し、制御部５０は、第１アームＡ１により、収容部１０を棚１４から引き出した後、把持部Ｅ１又は第１アームＡ１により、収容部１０を棚１４に対して傾ける制御を行う。【選択図】図５
2020168679.tif 000002
【特許請求の範囲】
【請求項１】
収容部を把持する把持部と、
前記把持部が設けられ、前記収容部を前記収容部が収納された棚から引き出す第１アームと、
前記第１アームに設けられ、前記把持部にかかる力を検出する力検出部と、
前記収容部を撮像する撮像部と、
前記把持部及び前記第１アームを制御する制御部と、
を有し、
前記制御部は、前記第１アームにより、前記収容部を前記棚から引き出した後、前記把持部又は前記第１アームにより、前記収容部を前記棚に対して傾ける制御を行う、
ロボットシステム。
【請求項２】
前記制御部は、前記第１アームにより、前記収容部を前記棚から引き出す、又は、前記把持部又は前記第１アームにより、前記収容部を傾ける際に、前記力検出部が所定の出力値を検出した場合、前記収容部を前記棚から引き出す制御、又は、前記収容部を傾ける制御を中断させる、
請求項１に記載のロボットシステム。
【請求項３】
前記棚から前記収容部を引き出す方向をＸ軸、前記Ｘ軸に直交し、且つ前記収容部が前記棚に収納された状態において、前記収容部の底面に平行な方向をＹ軸、前記Ｘ軸と前記Ｙ軸とに直交する方向をＺ軸とした場合、
前記収容部を傾ける制御は、前記把持部又は前記第１アームにより、前記Ｘ軸周りに前記収容部を回動させる、又は、前記Ｙ軸周りに前記収容部を回動させる、
請求項１又は２に記載のロボットシステム。
【請求項４】
前記撮像部は、前記収容部よりも鉛直方向上方に配置されており、
前記制御部は、前記把持部又は前記第１アームにより、前記収容部を傾ける制御を行う前に、前記把持部又は前記第１アームにより、前記把持部が前記収容部を把持した箇所が前記撮像部に近づくように前記収容部を前記Ｙ軸周りに前記収容部を回動させる制御を行う、
請求項３に記載のロボットシステム。
【請求項５】
前記第１アームにより、前記棚から前記収容部を引き出す距離が予め記憶された記憶部を有する、
請求項１〜４のいずれか一項に記載のロボットシステム。
【請求項６】
前記撮像部が設けられた第２アームを有し、
前記撮像部は、撮像面を有し、
前記制御部は、前記第２アームを前記撮像面に対して直交する直線と前記収容部の前記底面の法線との成す角度を減少させる方向に移動させる、
請求項３又は４に記載のロボットシステム。
【請求項７】
収容部を把持する把持部と、前記把持部が設けられ、前記収容部を前記収容部が収納された棚から引き出す第１アームと、前記第１アームに設けられ、前記把持部にかかる力を検出する力検出部と、前記収容部を撮像する撮像部と、を有するロボットによる撮像方法であって、
前記把持部により、前記棚に収納されている前記収容部を把持する把持工程と、
前記第１アームにより、前記収容部を前記棚から引き出す引出工程と、
前記撮像部により、前記収容部を撮像する収容部撮像工程と、
前記収容部撮像工程の撮像結果を基に、前記収容部の底面を検出し、前記底面の法線を算出する法線算出工程と、
前記法線と前記撮像部の光軸とが平行でないと判定した場合、前記把持部又は前記第１アームにより、前記光軸と前記法線との成す角度を減少させる方向に前記収容部を傾ける傾け工程と、
前記引出工程及び前記傾け工程の際、前記力検出部が所定の出力値を検出した場合、前記引出工程及び前記傾け工程を中断する中断工程と、
前記撮像部により、前記収容部の内部を撮像する内部撮像工程と、
を含む、
撮像方法。
【請求項８】
前記傾け工程では、前記光軸と前記法線との成す角度が０°になるまで前記収容部を傾ける、
請求項７に記載の撮像方法。
【請求項９】
前記中断工程の後、前記光軸と前記法線との成す角度を増大させる方向に前記収容部を傾ける中断復帰工程を含む、
請求項７又は８に記載の撮像方法。
【請求項１０】
前記引出工程、前記傾け工程、及び前記中断工程は、前記光軸と前記法線との成す角度が所定の角度に傾くまで繰り返す、
請求項９に記載の撮像方法。
【請求項１１】
前記引出工程は、前記収容部が周囲の物体に衝突し、前記力検出部により、前記物体から前記収容部に向かう方向の力を検出した際、前記第１アームにより、前記収容部を前記物体から前記収容部に向かう方向に移動する、
請求項７〜１０のいずれか一項に記載の撮像方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットシステム及び撮像方法に関するものである。
【背景技術】
【０００２】
従来、物品を自動的に保持して移動する装置として、ロボットアームの先端にカメラと吸着パッドとを備えた無人機が知られている。この無人機は、対称となる物品をカメラで撮影し、画像処理して物品の形状及び位置を検出し、吸着パッドで当該物品を吸着する。
【０００３】
例えば、カメラにより物品収容棚と引き出しとを撮像し、撮像した画像を用いて物品収容棚から引き出しを引き出す技術が記載されている（例えば、特許文献１参照）。
【０００４】
また、カメラにより可動トレイの内部を撮像した画像を用いて、可動トレイの内部の部品をピッキングする技術、また可動トレイを傾けて部品を移動させる技術について記載されている（例えば、特許文献２参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１８−８９７２１号公報
【特許文献２】特開２０１８−８３４３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１及び特許文献２では、部品を撮像する際に、カメラの死角に存在する部品を撮像することができないおそれがある。
【課題を解決するための手段】
【０００７】
本願のロボットシステムは、収容部を把持する把持部と、前記把持部が設けられ、前記収容部を前記収容部が収納された棚から引き出す第１アームと、前記第１アームに設けられ、前記把持部にかかる力を検出する力検出部と、前記収容部を撮像する撮像部と、前記把持部及び前記第１アームを制御する制御部と、を有し、前記制御部は、前記第１アームにより、前記収容部を前記棚から引き出した後、前記把持部又は前記第１アームにより、前記収容部を前記棚に対して傾ける制御を行う。
【０００８】
上記のロボットシステムでは、前記制御部は、前記第１アームにより、前記収容部を前記棚から引き出す、又は、前記把持部又は前記第１アームにより、前記収容部を傾ける際に、前記力検出部が所定の出力値を検出した場合、前記収容部を前記棚から引き出す制御、又は、前記収容部を傾ける制御を中断させることが好ましい。
【０００９】
上記のロボットシステムでは、前記棚から前記収容部を引き出す方向をＸ軸、前記Ｘ軸に直交し、且つ前記収容部が前記棚に収納された状態において、前記収容部の底面に平行な方向をＹ軸、前記Ｘ軸と前記Ｙ軸とに直交する方向をＺ軸とした場合、前記収容部を傾ける制御は、前記把持部又は前記第１アームにより、前記Ｘ軸周りに前記収容部を回動させる、又は、前記Ｙ軸周りに前記収容部を回動させることが好ましい。
【００１０】
上記のロボットシステムでは、前記撮像部は、前記収容部よりも鉛直方向上方に配置されており、前記制御部は、前記把持部又は前記第１アームにより、前記収容部を傾ける制御を行う前に、前記把持部又は前記第１アームにより、前記把持部が前記収容部を把持した箇所が前記撮像部に近づくように前記収容部を前記Ｙ軸周りに前記収容部を回動させる制御を行うことが好ましい。
【００１１】
上記のロボットシステムでは、前記第１アームにより、前記棚から前記収容部を引き出す距離が予め記憶された記憶部を有することが好ましい。
【００１２】
上記のロボットシステムでは、前記撮像部が設けられた第２アームを有し、前記撮像部は、撮像面を有し、前記制御部は、前記第２アームを前記撮像面に対して直交する直線と前記収容部の前記底面の法線との成す角度を減少させる方向に移動させることが好ましい。
【００１３】
本願の撮像方法は、収容部を把持する把持部と、前記把持部が設けられ、前記収容部を前記収容部が収納された棚から引き出す第１アームと、前記第１アームに設けられ、前記把持部にかかる力を検出する力検出部と、前記収容部を撮像する撮像部と、を有するロボットによる撮像方法であって、前記把持部により、前記棚に収納されている前記収容部を把持する把持工程と、前記第１アームにより、前記収容部を前記棚から引き出す引出工程と、前記撮像部により、前記収容部を撮像する収容部撮像工程と、前記収容部撮像工程の撮像結果を基に、前記収容部の底面を検出し、前記底面の法線を算出する法線算出工程と、前記法線と前記撮像部の光軸とが平行でないと判定した場合、前記把持部又は前記第１アームにより、前記光軸と前記法線との成す角度を減少させる方向に前記収容部を傾ける傾け工程と、前記引出工程及び前記傾け工程の際、前記力検出部が所定の出力値を検出した場合、前記引出工程及び前記傾け工程を中断する中断工程と、前記撮像部により、前記収容部の内部を撮像する内部撮像工程と、を含む。
【００１４】
上記の撮像方法では、前記傾け工程では、前記光軸と前記法線との成す角度が０°になるまで前記収容部を傾けることが好ましい。
【００１５】
上記の撮像方法では、前記中断工程の後、前記光軸と前記法線との成す角度を増大させる方向に前記収容部を傾ける中断復帰工程を含むことが好ましい。
【００１６】
上記の撮像方法では、前記引出工程、前記傾け工程、及び前記中断工程は、前記光軸と前記法線との成す角度が所定の角度に傾くまで繰り返すことが好ましい。
【００１７】
上記の撮像方法では、前記引出工程は、前記収容部が周囲の物体に衝突し、前記力検出部により、前記物体から前記収容部に向かう方向の力を検出した際、前記第１アームにより、前記収容部を前記物体から前記収容部に向かう方向に移動することが好ましい。
【図面の簡単な説明】
【００１８】
【図１】第１実施形態に係る第１ロボットシステムの構成の一例を示す図。
【図２】第１ロボット制御装置のハードウェア構成の一例を示す図。
【図３】第１情報処理装置のハードウェア構成の一例を示す図。
【図４】第１ロボット制御装置の機能構成の一例を示す図。
【図５】第１実施形態に係る第１ロボットシステムの構成の一例を示す図。
【図６】コンテナのロール方向及びピッチ方向の傾きを示す図。
【図７】第１実施形態に係る第１ロボットシステムの撮像方法を示すフローチャート。
【図８】第３撮像部とコンテナとの位置関係を示す概略側面断面図。
【図９】コンテナの取っ手を第２エンドエフェクターが把持した状態を示す概略側面断面図。
【図１０】第３撮像部とコンテナとの位置関係を示す概略側面断面図。
【図１１】第３撮像部とコンテナとの位置関係を示す概略側面断面図。
【図１２】第２実施形態に係る第１ロボットシステムの撮像方法を示すフローチャート。
【図１３】第３撮像部とコンテナとの位置関係を示す概略側面断面図。
【図１４】コンテナの取っ手を第２エンドエフェクターが把持した状態を示す概略側面断面図。
【図１５】第３撮像部とコンテナとの位置関係を示す概略側面断面図。
【図１６】第３撮像部とコンテナとの位置関係を示す概略側面断面図。
【図１７】第３撮像部とコンテナとの位置関係を示す概略側面断面図。
【図１８】第３実施形態に係る第２撮像部とコンテナとの位置関係を示す概略側面断面図。
【図１９】第４及び第５実施形態に係る第２撮像部とコンテナとの位置関係を示す概略側面断面図。
【図２０】変形例に係る第２ロボットシステムの構成の一例を示す図。
【発明を実施するための形態】
【００１９】
以下、本発明を具体化した実施形態について図面に従って説明する。なお、使用する図面は、説明する部分が認識可能な状態となるように、適宜拡大又は縮小して表示している。
【００２０】
（第１実施形態）
＜第１ロボットシステムの概要＞
図１は、本実施形態に係る第１ロボットシステム２の構成の一例を示す図である。
本実施形態に係るロボットシステムとしての第１ロボットシステム２は、ロボットとしての第１ロボット４０と、第１情報処理装置６０と、を備える。また、第１ロボット４０は、制御部としての第１ロボット制御装置５０を内蔵する。なお、第１ロボットシステム２は、第１情報処理装置６０を備えない構成であってもよい。
また、第１ロボット４０は、第１ロボット制御装置５０を内蔵する構成に代えて、外部に設置された第１ロボット制御装置５０により制御される構成であってもよい。この場合、第１ロボットシステム２は、第１ロボット４０と、第１ロボット制御装置５０と、を備える。
また、第１ロボットシステム２は、第１ロボット４０と、第１情報処理装置６０と、の両方に加えて、第１ロボット４０と別体の撮像部等の他の装置を備える構成であってもよい。
【００２１】
以下では、説明の便宜上、図１に示した第１ロボット座標系ＲＣ１におけるＺ軸の正方向を上方向又は上と称し、当該Ｚ軸の負方向を下方向又は下と称して説明する。第１ロボット座標系ＲＣ１は、第１ロボット４０のロボット座標系のことである。また、以下では、一例として、第１ロボット座標系ＲＣ１におけるＺ軸の負方向と鉛直方向とが一致している場合について説明する。なお、当該負方向と鉛直方向とは、一致していない構成であってもよい。
【００２２】
第１ロボット４０は、第１アームＡ１と、第２アームＡ２と、第１アームＡ１及び第２アームＡ２を支持する第１支持台Ｂ１と、第１支持台Ｂ１の内側に備えられた第１ロボット制御装置５０と、を備える双腕ロボットである。なお、第１ロボット４０は、双腕ロボットに代えて、３本以上のアームを備える複腕ロボットであってもよく、１本のアームを備える単腕ロボットであってもよい。また、第１ロボット４０は、スカラ（水平多関節）ロボット、直交座標ロボット、円筒型ロボット等の他のロボットであってもよい。直交座標ロボットは、例えば、ガントリロボットである。
【００２３】
第１支持台Ｂ１は、第１ロボット４０がある面に設置された場合において当該面に直交する方向に沿って２つの部分に分割されている。以下では、説明の便宜上、第１ロボット４０が設置される当該面を設置面と称して説明する。また、以下では、一例として、設置面が図１に示した第１ロボット座標系ＲＣ１におけるＸ軸及びＹ軸を含む面であるＸＹ平面と平行、すなわち、第１ロボット座標系ＲＣ１におけるＺ軸と直交している場合について説明する。なお、設置面は、ＸＹ平面と非平行、すなわち、当該Ｚ軸と直交していなくてもよい。また、第１支持台Ｂ１は、分割されていない構成であってもよく、３つ以上の部分に分割されている構成であってもよい。当該２つの部分のうち設置面から遠い方の部分は、当該２つの部分のうち設置面から近い方の部分に対して回動可能である。当該遠い方の部分が回動する場合の回動面は、例えば、設置面に対して平行である。なお、当該回動面は、設置面に対して非平行であってもよい。
【００２４】
第１アームＡ１は、把持部としての第１エンドエフェクターＥ１と、第１マニピュレーターＭ１と、力検出部としての第１力検出部Ｊ１と、を備える。
【００２５】
第１エンドエフェクターＥ１は、物体を保持するエンドエフェクターである。
【００２６】
第１マニピュレーターＭ１は、７つの関節と、第１撮像部Ｃ１と、を備える。また、７つの関節のそれぞれは、図示しないアクチュエーターを備える。すなわち、第１マニピュレーターＭ１を備える第１アームＡ１は、７軸垂直多関節型のアームである。第１アームＡ１は、第１支持台Ｂ１と、第１エンドエフェクターＥ１と、第１マニピュレーターＭ１と、７つの関節それぞれのアクチュエーターと、による連携した動作によって７軸の自由度の動作を行う。なお、第１アームＡ１は、６軸以下の自由度で動作する構成であってもよく、８軸以上の自由度で動作する構成であってもよい。
【００２７】
第１アームＡ１が７軸の自由度で動作する場合、第１アームＡ１は、６軸以下の自由度で動作する場合と比較して取り得る姿勢が増える。これにより第１アームＡ１は、例えば、動作が滑らかになり、更に第１アームＡ１の周辺に存在する物体との干渉を容易に回避することができる。また、第１アームＡ１が７軸の自由度で動作する場合、第１アームＡ１の制御は、第１アームＡ１が８軸以上の自由度で動作する場合と比較して計算量が少なく容易である。
【００２８】
第１撮像部Ｃ１は、例えば、集光された光を電気信号に変換する撮像素子として、ＣＣＤ（Charge Coupled Device）、ＣＭＯＳ（Complementary Metal Oxide Semiconductor）等を備えたカメラである。本例において、第１撮像部Ｃ１は、第１マニピュレーターＭ１の一部に備えられる。このため、第１撮像部Ｃ１は、第１マニピュレーターＭ１の動きに応じて移動する。すなわち、第１撮像部Ｃ１が撮像可能な範囲は、第１アームＡ１の動きに応じて変化する。
【００２９】
第１力検出部Ｊ１は、第１エンドエフェクターＥ１と第１マニピュレーターＭ１との間に備えられる。第１力検出部Ｊ１は、第１エンドエフェクターＥ１に作用した外力、又は第１エンドエフェクターＥ１により保持された物体に作用した外力を検出する。なお、第１力検出部Ｊ１は、第１エンドエフェクターＥ１に作用した外力、又は第１エンドエフェクターＥ１により保持された物体に作用した外力を検出する。第１力検出部Ｊ１が検出する所定の出力値は、後述する図５に示す収容部としてのコンテナ１０が棚１４等に接触することで生じる出力値のことである。第１力検出部Ｊ１は、例えば、力覚センサー、圧力センサー、トルクセンサー等であってもよい。
【００３０】
第１エンドエフェクターＥ１は、第１基台Ｄ１と、第１指部Ｆ１と、第１掌部Ｈ１と、を備える。本実施形態では、第１指部Ｆ１は、４本の指である第１指Ｇ１、第２指Ｇ２、第３指Ｇ３、及び第４指Ｇ４を備える。
ここで、第１基台Ｄ１は、第１力検出部Ｊ１を介して、第１マニピュレーターＭ１に取り付けられる。
なお、第１エンドエフェクターＥ１及び第２エンドエフェクターＥ２については、図示を簡略化してあるが、本実施形態で説明される動作が可能な構造を有する。
【００３１】
第１基台Ｄ１は、第１力検出部Ｊ１の側とは反対の側に平面の表面を有する。表面に４本の指である第１指Ｇ１、第２指Ｇ２、第３指Ｇ３、及び第４指Ｇ４が配置されている。本実施形態では、表面は正方形の形状を有しており、正方形が有する４つの頂点のそれぞれの付近に、第１指Ｇ１、第２指Ｇ２、第３指Ｇ３、及び第４指Ｇ４のそれぞれが配置されている。第１指Ｇ１、第２指Ｇ２、第３指Ｇ３、及び第４指Ｇ４のそれぞれは、第１基台Ｄ１に対して相対的に動かされることが可能である。本実施形態では、４本の指である第１指Ｇ１、第２指Ｇ２、第３指Ｇ３、及び第４指Ｇ４は、隣り合う２本の指の相対位置関係を保つとともに他の２本の指の相対位置関係を保ちながら、これら２本の指の組どうしを近づけることで物体を把持することができ、これら２本の指の組どうしを遠ざけることで物体を解放することができる。ここで、物体を解放するとは、把持していた物体を離すことを意味する。
【００３２】
また、他の構成として、４本の指である第１指Ｇ１、第２指Ｇ２、第３指Ｇ３、及び第４指Ｇ４は、例えば、これら４本の指を正方形の中央部などに向かって互いに近づけることで物体を把持することができ、これら４本の指を正方形の中央部から遠ざけることで物体を解放することができる。なお、第１指部Ｆ１の構成及び動作としては、任意の構成及び動作が用いられてもよい。例えば、第１指部Ｆ１が備える指の数、あるいは、指の動きなどは、任意であってもよい。また、それぞれの指は、例えば、屈曲することが可能な１つ以上の関節を備えてもよい。
【００３３】
また、表面において、４本の指である第１指Ｇ１、第２指Ｇ２、第３指Ｇ３、及び第４指Ｇ４によって囲まれる中央部に、第１掌部Ｈ１が配置されている。本実施形態では、第１掌部Ｈ１は、第１基台Ｄ１の表面と平行な面を表面として有する。第１掌部Ｈ１は、第１基台Ｄ１に対して相対的に動かされることが可能である。本実施形態では、第１掌部Ｈ１は、第１基台Ｄ１の表面と第１掌部Ｈ１の表面との距離が大きくなることで第１基台Ｄ１から第１力検出部Ｊ１に向かう方向とは反対の方向に押す動作を行うことができ、逆に、第１基台Ｄ１の表面と第１掌部Ｈ１の表面との距離が小さくなることで第１基台Ｄ１から第１力検出部Ｊ１に向かう方向に引く動作を行うことができる。
【００３４】
第２アームＡ２は、第１アームＡ１の構成と同様の構成を有する。すなわち、第２エンドエフェクターＥ２は、第１エンドエフェクターＥ１の構成と同様の構成を有する。また、第２マニピュレーターＭ２は、第１マニピュレーターＭ１の構成と同様の構成を有する。また、第２マニピュレーターＭ２は、撮像部としての第２撮像部Ｃ２を備える。第２撮像部Ｃ２は、第１撮像部Ｃ１の構成と同様の構成を有する。また、第２力検出部Ｊ２は、第１力検出部Ｊ１の構成と同様の構成を有する。
【００３５】
ここで、第２エンドエフェクターＥ２は、第２基台Ｄ２と、第２指部Ｆ２と、第２掌部Ｈ２と、を備える。本実施形態では、第２指部Ｆ２は、４本の指である第５指Ｇ５、第６指Ｇ６、第７指Ｇ７、第８指Ｇ８を備える。
なお、本実施形態では、第１エンドエフェクターＥ１が第１指部Ｆ１を備える構成としたが、指の代わりに、爪が用いられてもよい。また、第２エンドエフェクターＥ２についても同様である。
【００３６】
また、第２アームＡ２は、第１アームＡ１の構成と異なる構成であってもよい。すなわち、第２エンドエフェクターＥ２は、第１エンドエフェクターＥ１の構成と異なる構成であってもよい。また、第２マニピュレーターＭ２は、第１マニピュレーターＭ１の構成と異なる構成であってもよい。また、第２撮像部Ｃ２は、第１撮像部Ｃ１の構成と異なる構成であってもよい。また、第２力検出部Ｊ２は、第１力検出部Ｊ１の構成と異なる構成であってもよい。
【００３７】
また、第１ロボット４０は、撮像部としての第３撮像部Ｃ３と、第４撮像部Ｃ４と、を備える。
第３撮像部Ｃ３は、例えば、集光された光を電気信号に変換する撮像素子として、ＣＣＤ、ＣＭＯＳ等を備えたカメラである。第３撮像部Ｃ３は、第４撮像部Ｃ４が撮像可能な範囲を第４撮像部Ｃ４とともにステレオ撮像可能な部位に備えられる。
第４撮像部Ｃ４は、例えば、集光された光を電気信号に変換する撮像素子として、ＣＣＤ、ＣＭＯＳ等を備えたカメラである。第４撮像部Ｃ４は、第３撮像部Ｃ３が撮像可能な範囲を第３撮像部Ｃ３とともにステレオ撮像可能な部位に備えられる。
【００３８】
第１ロボット４０が備える各機能部、すなわち、第１エンドエフェクターＥ１、第２エンドエフェクターＥ２、第１マニピュレーターＭ１、第２マニピュレーターＭ２、第１撮像部Ｃ１〜第４撮像部Ｃ４、第１力検出部Ｊ１、及び第２力検出部Ｊ２のそれぞれは、ケーブルによって第１ロボット制御装置５０と通信可能に接続されている。これにより、各機能部のそれぞれは、第１ロボット制御装置５０から取得される制御信号に基づく動作を行う。なお、ケーブルを介した有線通信は、例えば、イーサネット（登録商標）、ＵＳＢ（Universal Serial Bus）等の規格によって行われる。また、各機能部のうちの一部又は全部は、Ｗｉ−Ｆｉ（登録商標）等の通信規格により行われる無線通信によって第１ロボット制御装置５０と接続される構成であってもよい。なお、第１ロボット４０は、第１撮像部Ｃ１、第２撮像部Ｃ２、第３撮像部Ｃ３、及び第４撮像部Ｃ４のうちの一部又は全部を備えない構成であってもよい。
【００３９】
第１ロボット制御装置５０は、第１ロボット４０を制御する。ここで、以下では、一例として、第１ロボット制御装置５０による第１アームＡ１の制御方法と、第１ロボット制御装置５０による第２アームＡ２の制御方法とが、互いに同じ方法である場合について説明する。このため、以下では、第１ロボット制御装置５０による第１アームＡ１の制御方法を例に挙げて、第１ロボット制御装置５０による第１ロボット４０の制御について説明する。なお、第１ロボット制御装置５０による第１アームＡ１の制御方法と、第１ロボット制御装置５０による第２アームＡ２の制御方法とは、一部又は全部が互いに異なる構成であってもよい。
【００４０】
また、第１ロボット制御装置５０は、第１力検出部Ｊ１が検出した結果を示す情報を第１力検出部Ｊ１から取得し、取得した当該情報に基づく力制御によって第１アームＡ１を動作させる。力制御は、インピーダンス制御等のコンプライアントモーション制御のことである。
また、第１ロボット制御装置５０は、第２力検出部Ｊ２が検出した結果を示す情報を第２力検出部Ｊ２から取得し、取得した情報に基づく力制御によって第２アームＡ２を動作させる。力制御は、インピーダンス制御等のコンプライアントモーション制御のことである。
【００４１】
第１ロボット制御装置５０は、上記において説明した処理によって第１アームＡ１を動作させる。また、第１ロボット制御装置５０は、上記において説明した処理と同様の処理によって第２アームＡ２を動作させる。そして、第１ロボット制御装置５０は、第１アームＡ１と第２アームＡ２との少なくとも一方を動作させ、第１ロボット４０に所定の作業を行わせる。所定の作業は、如何なる作業であってもよい。なお、第１ロボット制御装置５０は、上記において説明した処理に加えて、他の処理によって第１アームＡ１と第２アームＡ２との少なくとも一方を動作させる構成であってもよい。
【００４２】
第１情報処理装置６０は、例えば、ノートＰＣ（Personal Computer）、タブレットＰＣ、デスクトップＰＣ、ワークステーション、多機能携帯電話端末（スマートフォン）、携帯電話端末、ＰＤＡ（Personal Digital Assistant）等の情報処理装置である。なお、第１情報処理装置６０は、ティーチングペンダントであってもよい。
【００４３】
第１情報処理装置６０は、ユーザーから受け付けた操作に応じて、動作プログラム、教示点情報等の各種の情報を生成する。そして、第１情報処理装置６０は、生成した情報を、第１ロボット制御装置５０に出力して記憶させ、これにより、例えば、第１ロボット制御装置５０に教示する。ここで、第１情報処理装置６０は、第１ロボット制御装置５０がオフライン状態である場合であっても、生成した情報を、第１ロボット制御装置５０に出力して記憶させることができる。
【００４４】
第１情報処理装置６０は、ケーブルによって通信可能に第１ロボット制御装置５０と接続されている。ケーブルを介した有線通信は、例えば、イーサネット（登録商標）、ＵＳＢ等の規格によって行われる。ここで、第１情報処理装置６０と第１ロボット制御装置５０とを繋ぐケーブルは、第１情報処理装置６０と第１ロボット制御装置５０とを通信可能に接続する回線のうちの有線による回線の一例である。なお、第１情報処理装置６０は、Ｗｉ−Ｆｉ（登録商標）等の通信規格により行われる無線通信によって第１ロボット制御装置５０と接続される構成であってもよい。この場合、例えば、Ｗｉ−Ｆｉ（登録商標）は、第１情報処理装置６０と第１ロボット制御装置５０との間を通信可能に接続する回線のうちの無線による回線の一例である。
【００４５】
＜第１ロボット制御装置のハードウェア構成＞
以下、図２を参照し、第１ロボット制御装置５０のハードウェア構成について説明する。
図２は、第１ロボット制御装置５０のハードウェア構成の一例を示す図である。
第１ロボット制御装置５０は、例えば、第１プロセッサー５２と、記憶部としての第１メモリー５４と、第１通信部５６と、を備える。また、第１ロボット制御装置５０は、第１通信部５６を介して第１情報処理装置６０と通信を行う。これらの構成要素は、バスを介して相互に通信可能に接続されている。
【００４６】
第１プロセッサー５２は、例えば、ＣＰＵ（Central Processing Unit）である。なお、第１プロセッサー５２は、ＣＰＵに代えて、ＦＰＧＡ（Field Programmable Gate Array）等の他のプロセッサーであってもよい。第１プロセッサー５２は、第１メモリー５４に格納された各種のプログラムを実行する。
【００４７】
第１メモリー５４は、例えば、ＨＤＤ（Hard Disk Drive）あるいはＳＳＤ（Solid State Drive）、ＥＥＰＲＯＭ（Electrically Erasable Programmable Read−Only Memory）、ＲＯＭ（Read−Only Memory）、ＲＡＭ（Random Access Memory）等を含む。なお、第１メモリー５４は、第１ロボット制御装置５０に内蔵されるものに代えて、ＵＳＢ等のデジタル入出力ポート等によって接続された外付け型の記憶装置であってもよい。第１メモリー５４は、第１ロボット制御装置５０が処理する各種の情報、各種の画像、動作プログラム等を格納する。なお、第１メモリー５４は、１つの記憶装置によって構成されてもよく、複数の記憶装置によって構成されてもよい。
【００４８】
第１通信部５６は、例えば、ＵＳＢ等のデジタル入出力ポート、あるいは、イーサネット（登録商標）ポート等を含んで構成される。なお、第１ロボット制御装置５０は、キーボード、マウス、タッチパッド等の入力装置と、ディスプレイを有する表示装置とのいずれか一方又は両方を備える構成であってもよい。
【００４９】
＜第１情報処理装置のハードウェア構成＞
以下、図３を参照し、第１情報処理装置６０のハードウェア構成について説明する。
図３は、第１情報処理装置６０のハードウェア構成の一例を示す図である。
第１情報処理装置６０は、第２プロセッサー６２と、第２メモリー６４と、第２通信部６６と、第１入力受付部６８と、第１表示部７０と、を備える。また、第１情報処理装置６０は、第２通信部６６を介して第１ロボット制御装置５０と通信を行う。これらの構成要素は、バスを介して相互に通信可能に接続されている。
【００５０】
第２プロセッサー６２の構成は、第１プロセッサー５２の構成と同様の構成であるため、説明を省略する。なお、第２プロセッサー６２は、１つの情報処理装置、本例において、第１情報処理装置６０が備えるＣＰＵによって構成されてもよく、複数の情報処理装置が備えるＣＰＵによって構成されてもよい。
【００５１】
第２メモリー６４の構成は、第１メモリー５４の構成と同様の構成であるため、説明を省略する。なお、第２メモリー６４は、複数の記憶装置によって構成される場合、当該複数の記憶装置には、第１情報処理装置６０と別体の情報処理装置が備える記憶装置が含まれる構成であってもよい。
第２通信部６６の構成は、第１通信部５６の構成と同様の構成であるため、説明を省略する。
【００５２】
第１入力受付部６８は、キーボード、マウス、タッチパッド等の入力装置である。なお、第１入力受付部６８は、第１表示部７０と一体に構成されたタッチパネルであってもよい。
第１表示部７０は、例えば、液晶ディスプレイパネル、あるいは、有機ＥＬ（Electro Luminescence）ディスプレイパネルである。
【００５３】
＜第１ロボット制御装置の機能構成＞
以下、図４を参照し、第１ロボット制御装置５０の機能構成について説明する。
図４は、第１ロボット制御装置５０の機能構成の一例を示す図である。
第１ロボット制御装置５０は、第１メモリー５４と、第１通信部５６と、第１制御部８０と、を備える。ここで、第１メモリー５４及び第１通信部５６は、図２に示されるものと同じである。
【００５４】
第１制御部８０は、第１ロボット制御装置５０の全体を制御する。第１制御部８０は、第１プログラム処理部８２と、第１通信制御部８４と、第１ロボット制御部８６と、を備える。第１制御部８０が備えるこれらの機能部は、例えば、第１プロセッサー５２が、第１メモリー５４に記憶された各種の指令を実行することにより実現される。なお、指令は、例えば、プログラム、プログラムに含まれる各コマンド等である。また、機能部のうちの一部又は全部は、ＬＳＩ、ＡＳＩＣ等のハードウェア機能部であってもよい。
【００５５】
第１プログラム処理部８２は、第１アームＡ１の制御において、第１メモリー５４に記憶された動作プログラムを第１メモリー５４から読み出す。第１プログラム処理部８２は、読み出した動作プログラムに基づいて、第１アームＡ１の制御を行う。また、第１プログラム処理部８２は、第２アームＡ２の制御において、第１アームＡ１の制御において行う処理と同様の処理を行う。
第１通信制御部８４は、第１通信部５６を介した第１情報処理装置６０との通信を制御する。
第１ロボット制御部８６は、第１プログラム処理部８２により制御されて、第１アームＡ１との間で所定の信号を通信することで、第１アームＡ１の動作を制御する。すなわち、第１ロボット制御部８６は、第１プログラム処理部８２によって決定された第１アームＡ１の制御の態様が実現されるように、第１アームＡ１の動作を制御する。また、第１ロボット制御部８６は、第２アームＡ２の制御において、第１アームＡ１の制御において行う処理と同様の処理を行う。
【００５６】
＜力制御の説明＞
第１アームＡ１を例として、力制御について説明する。なお、第２アームＡ２についても同様である。
第１力検出部Ｊ１は、第１エンドエフェクターＥ１と第１マニピュレーターＭ１との間に設けられている。第１力検出部Ｊ１は、例えば、水晶を含む力検出素子を４つ備える。そして、第１力検出部Ｊ１は、４つの水晶のそれぞれに加わる剪断力に基づいて、第１ロボット４０のハンドに作用した外力を検出する。
【００５７】
ここで、第１ロボット４０のハンドは、第１エンドエフェクターＥ１のことである。第１力検出部Ｊ１は、第１エンドエフェクターＥ１又は第１エンドエフェクターＥ１により把持された物体に作用した外力を検出する。このとき、他の捉え方として、第１エンドエフェクターＥ１により把持された物体が第１ロボット４０のハンドであるとみなされてもよい。外力には、ハンドを並進させる並進力が含まれる。並進力には、力検出座標系における互いに直交する３つの軸のそれぞれの方向に作用する３つの並進力が含まれている。ここで、力検出座標系は、第１力検出部Ｊ１に対応付けられた三次元直交座標系のことである。また、外力には、ハンドを回動させる回動（回転）モーメント（トルク）が含まれる。回動モーメントには、力検出座標系における３つの軸のそれぞれの周りに作用する３つの回動モーメントが含まれている。すなわち、第１力検出部Ｊ１は、３つの並進力と３つの回動モーメントとのそれぞれを外力として検出する。第１力検出部Ｊ１は、検出した３つの並進力のそれぞれに応じた出力値と、検出した３つの回動モーメントのそれぞれに応じた出力値との６つの出力値のそれぞれを示す情報を外力検出情報として第１ロボット制御装置５０に出力する。すなわち、６つの出力値のうちの一部又は全部は、第１力検出部Ｊ１から出力される出力値の一例である。
【００５８】
外力検出情報は、第１ロボット制御装置５０による第１ロボット４０の力制御に用いられる。力制御は、第１力検出部Ｊ１から出力された出力値に基づく制御、すなわち、第１力検出部Ｊ１から第１ロボット制御装置５０に出力された外力検出情報に基づく制御のことであり、例えば、インピーダンス制御等のコンプライアントモーション制御のことである。
【００５９】
なお、第１力検出部Ｊ１は、水晶を含む力検出素子を３つ以下備える構成であってもよく、水晶を含む力検出素子を５つ以上備える構成であってもよい。また、第１力検出部Ｊ１は、水晶を含む４つの力検出素子のうちの一部又は全部に代えて、水晶を含まない力検出素子を備える構成であってもよい。また、第１力検出部Ｊ１は、水晶を含む４つの力検出素子のうちの一部又は全部に加えて、水晶を含まない力検出素子を備える構成であってもよい。
このように、第１力検出部Ｊ１としては、水晶を用いたものの精度が良いが、他の構成のものが用いられてもよい。
【００６０】
また、第１ロボット制御装置５０は、第１力検出部Ｊ１から外力検出情報を取得し、取得した外力検出情報と、動作プログラムとに基づく力制御によって第１アームＡ１を動作させる。力制御において、第１ロボット制御装置５０は、第１アームＡ１を動作させ、外力検出情報が示す６つの出力値のうち動作プログラムにより指定された１つ以上の出力値が、動作プログラムにより指定された目標値となるように所定の制御点の位置及び姿勢を変化させる。この際、第１ロボット制御装置５０は、１つ以上の出力値が目標値と一致するように制御点の位置及び姿勢を変化させる場合における制御点の位置及び姿勢のそれぞれの変化分を、力制御に応じた運動方程式を解くことによって算出する。例えば、力制御としてインピーダンス制御が用いられる場合、運動方程式は、インピーダンス制御に応じた運動方程式となる。なお、力制御に応じた運動方程式については、公知であるため、詳細な説明を省略する。
【００６１】
なお、特許文献２では、可動トレイの傾け作業において、力検出部を用いていないため、可動トレイに負荷がかかったこと等を検出できないおそれがあった。本実施形態では第１力検出部Ｊ１を用いることで、後述する引出作業によりコンテナが棚や他のコンテナに引っ掛かったとしても、コンテナを破損させることを防ぐことができる。
【００６２】
図５は、本実施形態に係る第１ロボットシステム２の構成の一例を示す図である。
本実施形態に係る第１ロボットシステム２では、図５に示すような構成により、棚１４に収納されているコンテナ１０の内部のワークＷを第３撮像部Ｃ３により撮像する。そして、第１ロボットシステム２では、撮像した画像を画像処理してワークＷの形状及び位置を検出する。そして、第１ロボットシステム２では、第２エンドエフェクターＥ２でワークＷを把持する。ここで言う収納とは、少なくともコンテナ１０が棚１４に載置されている状態である。すなわち、棚１４に限らず、コンテナ１０が載置されている部材が存在すれば、当該部材上に載置されたコンテナ１０のことを、単に棚１４に収納されているコンテナ１０と表現している。
【００６３】
その際、第１ロボットシステム２では、コンテナ１０の内部のワークＷを第３撮像部Ｃ３により撮像するために、第１エンドエフェクターＥ１又は第１アームＡ１によりコンテナ１０を傾ける。
【００６４】
なお、棚１４は、コンテナ１０を収納する部材、ラックである。棚１４は、第１ロボット４０の正面に載置されている。棚１４は、例えば、ワークＷや工具等が種類ごとに整理されて載置されている。棚１４は、例えば、鉛直方向には５段に仕切られており、棚１４では、仕切られた５段のスペースにそれぞれコンテナ１０等を載置することができる。すなわち、棚１４の仕切り板の上面が、それぞれ、載置面として機能している。コンテナ１０の内部には、ワークＷが収納されている。このため、例えば、ワークＷを各載置面に種類ごとに分別したりすることができ、作業効率を高めることができる。なお、棚１４は、必ずしも第１ロボット４０の正面に載置されている必要はなく、ワークＷを第３撮像部Ｃ３により撮像できる位置に載置されていればよい。例えば、第１ロボット４０の第１アームＡ１側の側面に載置されていてもよい。
【００６５】
第１ロボット制御装置５０は、第１エンドエフェクターＥ１又は第１アームＡ１により、コンテナ１０を棚１４から引き出す、又は、コンテナ１０又は第１アームＡ１により、コンテナ１０を傾ける際に、第１力検出部Ｊ１が所定の出力値を検出した場合、コンテナ１０を棚１４から引き出す制御、又は、コンテナ１０を傾ける制御を中断させてもよい。これによれば、コンテナ１０を破損させることなく傾けることができる。また、コンテナ１０が棚１４や他のコンテナに引っ掛かったとしても、コンテナ１０を破損させることを防ぐことができる。
【００６６】
第１力検出部Ｊ１の所定の出力値は、例えば、５〜１０Ｎである。また、第１力検出部Ｊ１の所定の出力値は、例えば、５Ｎ付近であってもよい。また、コンテナ１０の内部のワークＷが荷崩れしたことを検出する出力値であってもよい。その場合は、荷崩れしたことを周囲のユーザーに通知してもよい。
【００６７】
第１エンドエフェクターＥ１は、コンテナ１０の取っ手１２を把持する。第１エンドエフェクターＥ１は、第１指部Ｆ１によってコンテナ１０の取っ手１２を挟んで持つことによりコンテナ１０を把持する。
【００６８】
第１アームＡ１は、コンテナ１０をコンテナ１０が収納された棚１４から引き出す。第１アームＡ１は、コンテナ１０が収納された棚１４からコンテナ１０を引き出す。
【００６９】
第３撮像部Ｃ３は、コンテナ１０を撮像する。第３撮像部Ｃ３は、コンテナ１０の内部を撮像する。第３撮像部Ｃ３は、コンテナ１０の外観を撮像する。
【００７０】
第１ロボット制御装置５０は、第１ロボット４０を制御して、棚１４に収められているコンテナ１０の内部のワークＷを取り出すためにコンテナ１０を棚１４から引き出す。第１ロボット制御装置５０は、引き出したコンテナ１０の内部のワークＷが第３撮像部Ｃ３により撮像できないとき、第１ロボット４０を制御して、コンテナ１０を傾けてワークＷを第３撮像部Ｃ３により撮像できるようにする。
【００７１】
第１ロボット制御装置５０は、第１エンドエフェクターＥ１及び第１アームＡ１を制御する。第１ロボット制御装置５０は、第１アームＡ１によりコンテナ１０を棚１４から引き出した後、第１エンドエフェクターＥ１又は第１アームＡ１により、コンテナ１０を棚１４に対して傾ける制御を行う。
【００７２】
第１撮像部Ｃ１は、コンテナ１０よりも鉛直方向上方に配置されている。第１ロボット制御装置５０は、第１エンドエフェクターＥ１又は第１アームＡ１により、コンテナ１０を傾ける制御を行う前に、第１エンドエフェクターＥ１又は第１アームＡ１により、第１エンドエフェクターＥ１がコンテナ１０を把持した箇所が第１撮像部Ｃ１に近づくようにコンテナ１０をＹ軸周りにコンテナ１０を回動させる制御を行ってもよい。これによれば、コンテナ１０を棚１４から引き出した際に生じる第３撮像部Ｃ３の後述する図１０に示す死角１６に存在するワークＷを移動させ、第３撮像部Ｃ３によるワークＷの撮像が容易になる。また、第１ロボット制御装置５０は、第１エンドエフェクターＥ１又は第１アームＡ１によりコンテナ１０を傾ける制御を行う前に、第１エンドエフェクターＥ１又は第１アームＡ１により、第１エンドエフェクターＥ１がコンテナ１０を把持した箇所が鉛直方向とは反対方向である上方向に上がるようにコンテナ１０をピッチ方向３２に傾ける制御を行ってもよい。
【００７３】
図６は、コンテナ１０のロール方向及びピッチ方向の傾きを示す図である。
本実施形態の第１ロボットシステム２では、コンテナ１０を傾ける制御は、第１エンドエフェクターＥ１又は第１アームＡ１により、図６の上図に示すように、Ｙ軸周りにコンテナ１０を回動させる。これを本実施形態では、コンテナ１０をピッチ方向３２に傾ける制御と呼ぶ。
また、コンテナ１０を傾ける制御は、第１エンドエフェクターＥ１又は第１アームＡ１により、図６の下図に示すように、Ｘ軸周りにコンテナ１０を回動させる。これを本実施形態では、コンテナ１０をロール方向３０に傾ける制御と呼ぶ。これによれば、コンテナを棚から引き出した際に生じる第３撮像部Ｃ３の死角１６を容易に撮像することができる。
なお、棚１４からコンテナ１０を引き出す方向をＸ軸、Ｘ軸に直交し且つコンテナ１０の底面１８に平行な方向をＹ軸、Ｘ軸とＹ軸とに直交する方向をＺ軸とする。また、コンテナ１０のＸ軸の負方向側を手前あるいは手前側と称し、Ｘ軸の正方向側を奥あるいは奥側と称して説明することがある。
【００７４】
コンテナ１０を傾ける制御とは、コンテナ１０の一方を他方よりも鉛直方向とは反対方向である上方向、又は鉛直方向である下方向に位置させ、コンテナ１０の底面１８を傾斜させる制御である。コンテナ１０を傾ける制御とは、コンテナ１０の底面１８の引き出し方向の手前側を、鉛直方向である下方向に下げる制御である。コンテナ１０を傾ける制御とは、コンテナ１０の底面１８の引き出し方向の手前側を、鉛直方向とは反対方向である上方向に上げる制御である。
なお、コンテナ１０を傾ける制御では、第１エンドエフェクターＥ１又は第１アームＡ１は、支点２２を中心とする円弧の軌道２４上を移動してもよい。
【００７５】
第１メモリー５４は、第１アームＡ１により棚１４からコンテナ１０を引き出す距離を予め記憶していてもよい。これによれば、コンテナ１０を適当な距離だけ引き出すことができる。第１メモリー５４は、コンテナ１０の形状を記憶してもよい。
【００７６】
＜撮像方法＞
本実施形態に係る撮像方法は、上述した第１ロボット４０による撮像方法である。
撮像方法は、把持工程と、引出工程と、収容部撮像工程としてのコンテナ撮像工程と、法線算出工程と、傾け工程と、中断工程と、内部撮像工程と、を含んでいる。
【００７７】
把持工程では、第１エンドエフェクターＥ１により棚１４に収納されているコンテナ１０を把持する。
【００７８】
引出工程では、第１アームＡ１によりコンテナ１０を棚１４から引き出す。引出工程は、コンテナ１０が周囲の図示しない物体に衝突し、第１力検出部Ｊ１により物体からコンテナ１０に向かう方向の力を検出した際、第１アームＡ１により、コンテナ１０を物体からコンテナ１０に向かう方向に移動してもよい。これによれば、引出工程によりコンテナ１０が棚１４や他のコンテナに引っ掛かったとしても、コンテナ１０を破損させることを防ぐことができる。
【００７９】
コンテナ撮像工程では、第３撮像部Ｃ３によりコンテナ１０を撮像する。
【００８０】
法線算出工程では、コンテナ撮像工程の撮像結果を基に、コンテナ１０の底面１８を検出し、底面１８に対して垂直の方向、つまり、法線２６あるいは垂線を算出する。なお、コンテナ１０の底面１８の法線２６の検出は、従来から用いられているエッジ検出やテンプレートマッチングや三次元物体認識等の手法を用いればよい。
【００８１】
傾け工程では、法線２６と第３撮像部Ｃ３の光軸３４とが平行でないと判定した場合、第１エンドエフェクターＥ１又は第１アームＡ１により、光軸３４と法線２６との成す角度を減少させる方向にコンテナ１０を傾ける。
傾け工程では、光軸３４と法線２６との成す角度が０°になるまでコンテナ１０を傾けてもよい。これによれば、コンテナ１０を棚１４から引き出した際に生じる第３撮像部Ｃ３の死角１６を撮像することができる。
傾け工程では、底面１８の奥側を、コンテナ１０を傾けるための支点２２として用いる。傾け工程では、コンテナ１０の底面１８の奥側を支点２２にして、コンテナ１０の引き出し方向の手前側を、鉛直方向である下方に下げる。傾け工程では、コンテナ１０の底面１８の奥側を支点２２にして、コンテナ１０の引き出し方向の手前側を、鉛直方向とは反対方向である上方向に上げる。傾け工程では、第１エンドエフェクターＥ１又は第１アームＡ１は、支点２２を中心とする円弧の軌道２４上を移動してもよい。
【００８２】
傾け工程では、第３撮像部Ｃ３とコンテナ１０との鉛直方向の間隔が近いほど、大きく傾ける。傾け工程では、第３撮像部Ｃ３とコンテナ１０との鉛直方向の間隔が遠いほど、小さく傾ける。
傾け工程では、第３撮像部Ｃ３とコンテナ１０との鉛直方向の間隔が近いほど、コンテナ１０の引き出し方向の手前側を、鉛直方向である下方に大きく下げる。傾け工程では、第３撮像部Ｃ３とコンテナ１０との鉛直方向の間隔が遠いほど、コンテナ１０の引き出し方向の手前側を、鉛直方向である下方に小さく下げる。
【００８３】
中断工程では、引出工程及び傾け工程の際、第１力検出部Ｊ１が所定の出力値を検出した場合、引出工程及び傾け工程を中断する。第１力検出部Ｊ１の所定の出力値は、例えば、５〜１０Ｎである。また、第１力検出部Ｊ１の所定の出力値は、例えば、５Ｎ付近であってもよい。
【００８４】
撮像方法は、中断復帰工程を含んでもよい。中断復帰工程では、中断工程の後、光軸３４と法線２６との成す角度を増大させる方向にコンテナ１０を傾けてもよい。これによれば、コンテナ１０にかかる負荷を減少させることができる。
【００８５】
内部撮像工程では、第３撮像部Ｃ３によりコンテナ１０の内部を撮像する。
【００８６】
引出工程、傾け工程、及び中断工程は、光軸３４と法線２６との成す角度が所定の角度に傾くまで繰り返してもよい。これによれば、コンテナ１０が棚１４から落下することを防ぎつつ、コンテナ１０を傾けることができる。
上記各工程は、第１ロボット制御装置５０で実行される。
【００８７】
図７は、本実施形態に係る第１ロボットシステムの撮像方法を示すフローチャートである。図８は、第３撮像部Ｃ３とコンテナ１０との位置関係を示す概略側面断面図である。具体的には、第３撮像部Ｃ３と棚１４から引き出す前のコンテナ１０との位置関係を示している。図９は、コンテナ１０の取っ手１２を第１エンドエフェクターＥ１が把持した状態を示す概略側面断面図である。図１０は、第３撮像部Ｃ３とコンテナ１０との位置関係を示す概略側面断面図である。具体的には、第３撮像部Ｃ３と棚１４から引き出したコンテナ１０との位置関係を示している。図１１は、第３撮像部Ｃ３とコンテナ１０との位置関係を示す概略側面断面図である。具体的には、第３撮像部Ｃ３と手前を鉛直方向である下方に下げたコンテナ１０との位置関係を示している。
【００８８】
本処理を始める前の状態として、第１ロボットシステム２は、第３撮像部Ｃ３により撮像領域２８内のワークＷを撮像しようとするが、第３撮像部Ｃ３は、図８に示すように、棚１４によって撮像領域２８が遮られて、コンテナ１０の内部のワークＷを撮像することができない状態である。
【００８９】
先ず、図７に示すように、ステップＳ１０の把持工程において、第１ロボット制御装置５０は、第１ロボット４０を制御して、図９に示すように、第１エンドエフェクターＥ１の第１指部Ｆ１を取っ手１２に当接させ、第１エンドエフェクターＥ１の第１指部Ｆ１により取っ手１２を把持する。そして、ステップＳ２０の処理に移行する。
【００９０】
次に、ステップＳ２０の引出工程において、第１ロボット制御装置５０は、第１ロボット４０を制御して、図９及び図１０に示すように、コンテナ１０を棚１４から所定の位置に近づけるように引き出す。なお、中断工程及び中断復帰工程を含んでいてもよい。第１ロボット制御装置５０は、コンテナ１０を傾ける動作をしながらコンテナ１０を引き出してもよい。そして、ステップＳ３０の処理に移行する。
【００９１】
次に、ステップＳ３０のコンテナ撮像工程において、第１ロボット制御装置５０は、第３撮像部Ｃ３を制御して、図１０に示すように、引き出されたコンテナ１０の外観を撮像する。そして、ステップＳ４０の処理に移行する。
【００９２】
次に、ステップＳ４０の法線算出工程において、第１ロボット制御装置５０は、コンテナ撮像工程の撮像結果を基に、コンテナ１０の底面１８を検出し、底面１８の法線２６を算出する。そして、ステップＳ５０の処理に移行する。
【００９３】
次に、ステップＳ５０において、第１ロボット制御装置５０は、撮像した画像より、コンテナ１０を棚１４から引き出した際に生じる第３撮像部Ｃ３の死角１６があるか否かを判定する。
この判定の結果、第１ロボット制御装置５０は、撮像した画像より、コンテナ１０を棚１４から引き出した際に生じる第３撮像部Ｃ３の死角１６があると判定した場合（ＹＥＳ）、ステップＳ６０の処理に移行する。
一方、この判定の結果、第１ロボット制御装置５０は、撮像した画像より、コンテナ１０を棚１４から引き出した際に生じる第３撮像部Ｃ３の死角１６がないと判定した場合（ＮＯ）、ステップＳ７０の処理に移行する。
【００９４】
ここで、コンテナ１０を棚１４から引き出した際に生じる第３撮像部Ｃ３の死角１６とは、撮像対象としているコンテナ１０において、第３撮像部Ｃ３のある位置からは撮像できない部位若しくは範囲である。第３撮像部Ｃ３とコンテナ１０との位置関係において、第３撮像部Ｃ３からコンテナ１０の底面１８を全て見ることができれば、死角１６はない状態といえる。
【００９５】
次に、ステップＳ６０の傾け工程において、第１ロボット制御装置５０は、第１ロボット４０を制御して、図１１に示すように、コンテナ１０の引き出し方向の手前側を、鉛直方向である下方に下げる。第１ロボット制御装置５０は、コンテナ１０を棚１４から引き出した際に生じる第３撮像部Ｃ３の死角１６がなくなるまでコンテナ１０の手前を鉛直方向である下方に下げる。なお、中断工程及び中断復帰工程を含んでいてもよい。第１ロボット制御装置５０は、コンテナ１０を傾ける動作をしながらコンテナ１０を引き出してもよい。そして、ステップＳ７０の処理に移行する。
【００９６】
次に、ステップＳ７０の内部撮像工程において、第１ロボット制御装置５０は、第３撮像部Ｃ３を制御して、コンテナ１０の内部のワークＷを撮像する。そして、ステップＳ８０の処理に移行する。
【００９７】
次に、ステップＳ８０において、第１ロボット制御装置５０は、撮像した画像より、コンテナ１０の内部にワークＷがあるか否かを判定する。
この判定の結果、第１ロボット制御装置５０は、撮像した画像より、コンテナ１０の内部にワークＷがあると判定した場合（ＹＥＳ）、ステップＳ９０の処理に移行する。
一方、この判定の結果、第１ロボット制御装置５０は、撮像した画像より、コンテナ１０の内部にワークＷがないと判定した場合（ＮＯ）、本処理を終了する。
【００９８】
次に、ステップＳ９０において、第１ロボット制御装置５０は、第１ロボット４０を制御して、第２エンドエフェクターＥ２の第２指部Ｆ２をワークＷに当接させ、第２エンドエフェクターＥ２の第２指部Ｆ２によりワークＷを把持し、ワークＷをコンテナ１０から所定の位置に移動する。そして、本処理を終了する。
【００９９】
本実施形態によれば、コンテナ１０を棚１４から引き出した際に生じる第３撮像部Ｃ３の死角１６を、コンテナ１０を傾けることで撮像することができる。
【０１００】
（第２実施形態）
図１２は、本実施形態に係る第１ロボットシステム２の撮像方法を示すフローチャートである。図１３は、第３撮像部Ｃ３とコンテナ１０との位置関係を示す概略側面断面図である。具体的には、第３撮像部Ｃ３と棚１４から引き出す前のコンテナ１０との位置関係を示している。図１４は、コンテナ１０の取っ手１２を第１エンドエフェクターＥ１が把持した状態を示す概略側面断面図である。図１５は、第３撮像部Ｃ３とコンテナ１０との位置関係を示す概略側面断面図である。具体的には、第３撮像部Ｃ３と棚１４から引き出したコンテナ１０との位置関係を示している。図１６は、第３撮像部Ｃ３とコンテナ１０との位置関係を示す概略側面断面図である。具体的には、第３撮像部Ｃ３と手前を鉛直方向とは反対方向である上方向に上げたコンテナ１０との位置関係を示している。図１７は、第３撮像部Ｃ３とコンテナ１０との位置関係を示す概略側面断面図である。具体的には、第３撮像部Ｃ３と手前を上げた状態から戻したコンテナ１０との位置関係を示している。
以下、第１ロボット４０の撮像方法を、図１２〜図１７を参照しながら説明する。
【０１０１】
本実施形態に係る第１ロボット４０は、コンテナ１０の引き出し方向の手前側を、鉛直方向とは反対方向である上方向に上げて傾ける点が、第１実施形態と異なっている。以下、第１実施形態と同じ構成材料には同一符号を付し、ここではそれらの説明を省略又は簡略化する。
【０１０２】
本処理を始める前の状態として、第３撮像部Ｃ３は、図１３に示すように、棚１４によって撮像領域２８が遮られて、コンテナ１０の内部のワークＷを撮像することができない状態である。また、ワークＷは、コンテナ１０の内部の手前側に置かれている状態である。
【０１０３】
先ず、図１２に示すように、ステップＳ１１０の把持工程において、第１ロボット制御装置５０は、第１ロボット４０を制御して、図１４に示すように、第１エンドエフェクターＥ１の第１指部Ｆ１を取っ手１２に当接させ、第１エンドエフェクターＥ１の第１指部Ｆ１により取っ手１２を把持する。そして、ステップＳ１２０の処理に移行する。
【０１０４】
次に、ステップＳ１２０の引出工程において、第１ロボット制御装置５０は、第１ロボット４０を制御して、図１５に示すように、コンテナ１０を棚１４から所定の位置に近づけるように引き出す。なお、中断工程及び中断復帰工程を含んでいてもよい。そして、ステップＳ１３０の処理に移行する。
【０１０５】
次に、ステップＳ１３０のコンテナ撮像工程及び内部撮像工程において、第１ロボット制御装置５０は、第３撮像部Ｃ３を制御して、図１５に示すように、引き出されたコンテナ１０の外観及びコンテナ１０の内部を撮像する。そして、ステップＳ１４０の処理に移行する。
【０１０６】
次に、ステップＳ１４０において、第１ロボット制御装置５０は、撮像した画像より、引き出されたコンテナ１０の内部にワークＷがあるか否かを判定する。
この判定の結果、第１ロボット制御装置５０は、撮像した画像より、引き出されたコンテナ１０の内部にワークＷがあると判定した場合（ＹＥＳ）、ステップＳ２００の処理に移行する。
一方、この判定の結果、第１ロボット制御装置５０は、撮像した画像より、引き出されたコンテナ１０の内部にワークＷがないと判定した場合（ＮＯ）、ステップＳ１５０の処理に移行する。
【０１０７】
次に、ステップＳ１５０の法線算出工程において、第１ロボット制御装置５０は、コンテナ撮像工程の撮像結果を基に、コンテナ１０の底面１８を検出し、底面１８の法線２６を算出する。そして、ステップＳ１６０の処理に移行する。
【０１０８】
次に、ステップＳ１６０の傾け工程において、第１ロボット制御装置５０は、第１ロボット４０を制御して、図１６に示すように、コンテナ１０の引き出し方向の手前側を、鉛直方向とは反対方向である上方向に上げる。なお、中断工程及び中断復帰工程を含んでいてもよい。コンテナ１０の手前側にあったワークＷは、上述のコンテナ１０の動きにより矢印３６の方向に移動して、コンテナ１０の奥側に配置される。そして、ステップＳ１７０の処理に移行する。
【０１０９】
次に、ステップＳ１７０において、第１ロボット制御装置５０は、第１ロボット４０を制御して、図１７に示すように、コンテナ１０をステップＳ１６０の傾け工程の前の状態に戻す。そして、ステップＳ１８０の処理に移行する。
【０１１０】
次に、ステップＳ１８０の内部撮像工程において、第１ロボット制御装置５０は、第３撮像部Ｃ３を制御して、図１７に示すように、コンテナ１０の内部のワークＷを撮像する。そして、ステップＳ１９０の処理に移行する。
【０１１１】
次に、ステップＳ１９０において、第１ロボット制御装置５０は、撮像した画像より、コンテナ１０の内部にワークＷがあるか否かを判定する。
この判定の結果、第１ロボット制御装置５０は、撮像した画像より、コンテナ１０の内部にワークＷがあると判定した場合（ＹＥＳ）、ステップＳ２００の処理に移行する。
一方、この判定の結果、第１ロボット制御装置５０は、撮像した画像より、コンテナ１０の内部にワークＷがないと判定した場合（ＮＯ）、本処理を終了する。
【０１１２】
次に、ステップＳ２００において、第１ロボット制御装置５０は、第１ロボット４０を制御して、第２エンドエフェクターＥ２の第２指部Ｆ２をワークＷに当接させ、第２エンドエフェクターＥ２の第２指部Ｆ２によりワークＷを把持し、ワークＷをコンテナ１０から所定の位置に移動する。そして、本処理を終了する。
【０１１３】
（第３実施形態）
図１８は、本実施形態に係る第２撮像部Ｃ２とコンテナ１０との位置関係を示す概略側面断面図である。具体的には、第２撮像部Ｃ２と手前を鉛直方向である下方に下げたコンテナ１０との位置関係を示している。
以下、第１ロボット４０の撮像方法を、図１８を参照しながら説明する。
【０１１４】
本実施形態に係る第１ロボット４０は、第２撮像部Ｃ２によりコンテナ１０を撮像する点が、第１実施形態と異なっている。以下、第１実施形態と同じ構成材料には同一符号を付し、ここではそれらの説明を省略又は簡略化する。
【０１１５】
本実施形態に係る第１ロボット４０は、第２アームＡ２の第２マニピュレーターＭ２に備える第２撮像部Ｃ２によりコンテナ１０を撮像する。
【０１１６】
本実施形態に係る第１ロボット４０は、傾け工程において、第１ロボット制御装置５０が第１ロボット４０を制御して、図１８に示すように、第１エンドエフェクターＥ１又は第１アームＡ１でコンテナ１０の引き出し方向の手前側を、鉛直方向である下方に下げつつ、第２アームＡ２を制御して、コンテナ１０を棚１４から引き出した際に生じる第２撮像部Ｃ２の死角１６ができない位置へ第２撮像部Ｃ２を移動する。そして、第１ロボット制御装置５０は、第２撮像部Ｃ２によりコンテナ１０の内部のワークＷを撮像する。
【０１１７】
（第４実施形態）
図１９は、本実施形態に係る第２撮像部Ｃ２とコンテナ１０との位置関係を示す概略側面断面図である。具体的には、第２撮像部Ｃ２と手前を鉛直方向である下方に下げたコンテナ１０との位置関係を示している。
以下、第１ロボット４０の撮像方法を、図１９を参照しながら説明する。
【０１１８】
本実施形態に係る第１ロボット制御装置５０は、傾け工程において、第１ロボット４０を制御して、図１９に示すように、コンテナ１０の底面１８の法線２６と、第２撮像部Ｃ２の光軸３４と、が平行（一致）で、かつ第２撮像部Ｃ２の光軸３４がコンテナ１０の内部に存在する位置へ第２撮像部Ｃ２を移動する点が、第１実施形態と異なっている。
【０１１９】
（第５実施形態）
本実施形態に係る第１ロボット制御装置５０は、傾け工程において、第１ロボット４０を制御して、図１９に示すように、コンテナ１０の底面１８の法線２６と第２撮像部Ｃ２の光軸３４との成す角度が所定範囲内に収まる位置へ第２撮像部Ｃ２を移動する点が、第４実施形態と異なっている。
【０１２０】
第２撮像部Ｃ２は、撮像面３３を備える。第１ロボット制御装置５０は、第２アームＡ２を撮像面３３に対して直交する直線としての光軸３４とコンテナ１０の底面１８の法線２６との成す角度を減少させる方向に移動させてもよい。これによれば、コンテナ１０を傾ける量を減少させることができる。
【０１２１】
（変形例）
図２０は、変形例に係る第２ロボットシステム４の構成の一例を示す図である。図２０には、図１と同様に、第２ロボット座標系ＲＣ２を示してある。
本変形例のロボットシステムとしての第２ロボットシステム４は、ロボットとしての第２ロボット２４０と、第２情報処理装置２６０と、制御部としての第２ロボット制御装置２５０と、撮像部としての第５撮像部Ｃ５と、を備える。
第２ロボット２４０は、第２支持台Ｂ２と、第１アームとしての第３アームＡ３と、を備える。
第３アームＡ３は、第３マニピュレーターＭ３と、把持部としての第３エンドエフェクターＥ３と、力検出部としての第３力検出部Ｊ３と、を備える。
【０１２２】
図２０の例のように、第２ロボットシステム４は、双腕ロボットである第１ロボット４０に代えて、単腕ロボットである第２ロボット２４０を備える構成である。
図２０に示した通り、第２ロボット２４０は、第３アームＡ３が第２支持台Ｂ２によって支持されている単腕ロボットである。なお、第２ロボット２４０は、第１ロボット４０と異なり、外部に設置された第２ロボット制御装置２５０によって制御される。
第２ロボット２４０は、第３アームＡ３と、第３アームＡ３を支持する第２支持台Ｂ２と、を備える単腕ロボットである。
【０１２３】
第３アームＡ３は、第３エンドエフェクターＥ３と、第３マニピュレーターＭ３と、第３力検出部Ｊ３と、を備える。
第３エンドエフェクターＥ３は、コンテナ１０の取っ手１２及びワークＷを保持するエンドエフェクターである。図２０の例では、第３エンドエフェクターＥ３は、指部を備え、当該指部によってコンテナ１０の取っ手１２及びワークＷを挟んで持つことによりコンテナ１０の取っ手１２及びワークＷを保持する。
【０１２４】
第３マニピュレーターＭ３は、６つの関節を備える。また、６つの関節はそれぞれ、図示しないアクチュエーターを備える。すなわち、第３マニピュレーターＭ３を備える第３アームＡ３は、６軸垂直多関節型のアームである。第３アームＡ３は、第２支持台Ｂ２と、第３エンドエフェクターＥ３と、第３マニピュレーターＭ３と、第３マニピュレーターＭ３が備える６つの関節それぞれのアクチュエーターと、による連携した動作によって６軸の自由度の動作を行う。なお、第３アームＡ３は、５軸以下の自由度で動作する構成であってもよく、７軸以上の自由度で動作する構成であってもよい。
【０１２５】
第３力検出部Ｊ３は、第３エンドエフェクターＥ３と第３マニピュレーターＭ３との間に備えられる。第３力検出部Ｊ３は、例えば、力センサーである。第３力検出部Ｊ３は、第３エンドエフェクターＥ３に作用した外力、又は第３エンドエフェクターＥ３により保持された物体に作用した外力を検出する。なお、第３力検出部Ｊ３は、第３エンドエフェクターＥ３に作用した外力、又は第３エンドエフェクターＥ３により保持された物体に作用した外力を検出するトルクセンサーであってもよい。
【０１２６】
第２ロボット２４０が備える各機能部（すなわち、第３エンドエフェクターＥ３、第３マニピュレーターＭ３、第５撮像部Ｃ５、第３力検出部Ｊ３）のそれぞれは、ケーブルによって第２ロボット制御装置２５０と通信可能に接続されている。これにより、各機能部のそれぞれは、第２ロボット制御装置２５０から取得される制御信号に基づく動作を行う。なお、ケーブルを介した有線通信は、例えば、イーサネット（登録商標）、ＵＳＢ等の規格によって行われる。また、各機能部のうちの一部又は全部は、Ｗｉ−Ｆｉ（登録商標）等の通信規格により行われる無線通信によって第２ロボット制御装置２５０と接続される構成であってもよい。
【０１２７】
第５撮像部Ｃ５は、コンテナ１０の外観及び内部、ワークＷ等を撮像する。第５撮像部Ｃ５は、例えば、集光された光を電気信号に変換する撮像素子として、ＣＣＤ、ＣＭＯＳ等を備えたカメラである。
【０１２８】
なお、以上に説明した第１ロボット制御装置５０、第２ロボット制御装置２５０などの任意の装置における任意の構成部の機能を実現するためのプログラムを、コンピューター読み取り可能な記録媒体（記憶媒体）に記録（記憶）し、そのプログラムをコンピューターシステムに読み込ませて実行するようにしてもよい。なお、ここでいう「コンピューターシステム」とは、オペレーティングシステム（ＯＳ：Operating System）あるいは周辺機器等のハードウェアを含むものとする。また、「コンピューター読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ（Read Only Memory）、ＣＤ（Compact Disc）−ＲＯＭ等の可搬媒体、コンピューターシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピューター読み取り可能な記録媒体」とは、インターネット等のネットワークあるいは電話回線等の通信回線を介してプログラムが送信された場合のサーバーやクライアントとなるコンピューターシステム内部の揮発性メモリー（ＲＡＭ：Random Access Memory）のように、一定時間プログラムを保持しているものも含むものとする。
【０１２９】
また、上記のプログラムは、このプログラムを記憶装置等に格納したコンピューターシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピューターシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）あるいは電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。
また、上記のプログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、上記のプログラムは、前述した機能をコンピューターシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であってもよい。
【０１３０】
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【０１３１】
以下に、実施形態から導き出される内容を記載する。
【０１３２】
ロボットシステムは、収容部を把持する把持部と、前記把持部が設けられ、前記収容部を前記収容部が収納された棚から引き出す第１アームと、前記第１アームに設けられ、前記把持部にかかる力を検出する力検出部と、前記収容部を撮像する撮像部と、前記把持部及び前記第１アームを制御する制御部と、を有し、前記制御部は、前記第１アームにより、前記収容部を前記棚から引き出した後、前記把持部又は前記第１アームにより、前記収容部を前記棚に対して傾ける制御を行う。
これによれば、収容部を棚から引き出した際に生じる撮像部の死角を、収容部を傾けることで撮像することができる。
【０１３３】
上記のロボットシステムでは、前記制御部は、前記第１アームにより、前記収容部を前記棚から引き出す、又は、前記把持部又は前記第１アームにより、前記収容部を傾ける際に、前記力検出部が所定の出力値を検出した場合、前記収容部を前記棚から引き出す制御、又は、前記収容部を傾ける制御を中断させることが好ましい。
これによれば、収容部を破損させることなく傾けることができる。また、収容部が棚や他の収容部に引っ掛かったとしても、収容部を破損させることを防ぐことができる。
【０１３４】
上記のロボットシステムでは、前記棚から前記収容部を引き出す方向をＸ軸、前記Ｘ軸に直交し、且つ前記収容部が前記棚に収納された状態において、前記収容部の底面に平行な方向をＹ軸、前記Ｘ軸と前記Ｙ軸とに直交する方向をＺ軸とした場合、前記収容部を傾ける制御は、前記把持部又は前記第１アームにより、前記Ｘ軸周りに前記収容部を回動させる、又は、前記Ｙ軸周りに前記収容部を回動させることが好ましい。
これによれば、収容部を棚から引き出した際に生じる撮像部の死角を容易に撮像することができる。
【０１３５】
上記のロボットシステムでは、前記撮像部は、前記収容部よりも鉛直方向上方に配置されており、前記制御部は、前記把持部又は前記第１アームにより、前記収容部を傾ける制御を行う前に、前記把持部又は前記第１アームにより、前記把持部が前記収容部を把持した箇所が前記撮像部に近づくように前記収容部を前記Ｙ軸周りに前記収容部を回動させる制御を行うことが好ましい。
これによれば、収容部を棚から引き出した際に生じる撮像部の死角に存在する例えばワークを移動させ、撮像部によるワークの撮像が容易になる。
【０１３６】
上記のロボットシステムでは、前記第１アームにより、前記棚から前記収容部を引き出す距離が予め記憶された記憶部を有することが好ましい。
これによれば、収容部を適当な距離だけ引き出すことができる。
【０１３７】
上記のロボットシステムでは、前記撮像部が設けられた第２アームを有し、前記撮像部は、撮像面を有し、前記制御部は、前記第２アームを前記撮像面に対して直交する直線と前記収容部の前記底面の法線との成す角度を減少させる方向に移動させることが好ましい。
これによれば、収容部を傾ける量を減少させることができる。
【０１３８】
撮像方法は、収容部を把持する把持部と、前記把持部が設けられ、前記収容部を前記収容部が収納された棚から引き出す第１アームと、前記第１アームに設けられ、前記把持部にかかる力を検出する力検出部と、前記収容部を撮像する撮像部と、を有するロボットによる撮像方法であって、前記把持部により、前記棚に収納されている前記収容部を把持する把持工程と、前記第１アームにより、前記収容部を前記棚から引き出す引出工程と、前記撮像部により、前記収容部を撮像する収容部撮像工程と、前記収容部撮像工程の撮像結果を基に、前記収容部の底面を検出し、前記底面の法線を算出する法線算出工程と、前記法線と前記撮像部の光軸とが平行でないと判定した場合、前記把持部又は前記第１アームにより、前記光軸と前記法線との成す角度を減少させる方向に前記収容部を傾ける傾け工程と、前記引出工程及び前記傾け工程の際、前記力検出部が所定の出力値を検出した場合、前記引出工程及び前記傾け工程を中断する中断工程と、前記撮像部により、前記収容部の内部を撮像する内部撮像工程と、を含む。
これによれば、収容部を棚から引き出した際に生じる撮像部の死角を、収容部を傾けることで撮像することができる。
【０１３９】
上記の撮像方法では、前記傾け工程では、前記光軸と前記法線との成す角度が０°になるまで前記収容部を傾けることが好ましい。
これによれば、収容部を棚から引き出した際に生じる撮像部の死角を撮像することができる。
【０１４０】
上記の撮像方法では、前記中断工程の後、前記光軸と前記法線との成す角度を増大させる方向に前記収容部を傾ける中断復帰工程を含むことが好ましい。
これによれば、収容部にかかる負荷を減少させることができる。
【０１４１】
上記の撮像方法では、前記引出工程、前記傾け工程、及び前記中断工程は、前記光軸と前記法線との成す角度が所定の角度に傾くまで繰り返すことが好ましい。
これによれば、収容部が棚から落下することを防ぎつつ、収容部を傾けることができる。
【０１４２】
上記の撮像方法では、前記引出工程は、前記収容部が周囲の物体に衝突し、前記力検出部により、前記物体から前記収容部に向かう方向の力を検出した際、前記第１アームにより、前記収容部を前記物体から前記収容部に向かう方向に移動することが好ましい。
これによれば、引出工程により収容部が棚や他の収容部に引っ掛かったとしても、コンテナを破損させることを防ぐことができる。
【符号の説明】
【０１４３】
２…第１ロボットシステム（ロボットシステム）  ４…第２ロボットシステム（ロボットシステム）  １０…コンテナ（収容部）  １２…取っ手  １４…棚  １６…死角  １８…底面  ２２…支点  ２４…軌道  ２６…法線  ２８…撮像領域  ３０…ロール方向  ３２…ピッチ方向  ３３…撮像面  ３４…光軸（直線）  ３６…矢印  ４０…第１ロボット（ロボット）  ５０…第１ロボット制御装置（制御部）  ５２…第１プロセッサー  ５４…第１メモリー（記憶部）  ５６…第１通信部  ６０…第１情報処理装置  ６２…第２プロセッサー  ６４…第２メモリー  ６６…第２通信部  ６８…第１入力受付部  ７０…第１表示部  ８０…第１制御部  ８２…第１プログラム処理部  ８４…第１通信制御部  ８６…第１ロボット制御部  ２４０…第２ロボット（ロボット）  ２５０…第２ロボット制御装置（制御部）  ２６０…第２情報処理装置  Ａ１…第１アーム  Ａ２…第２アーム  Ａ３…第３アーム（第１アーム）  Ｂ１…第１支持台  Ｂ２…第２支持台  Ｃ１…第１撮像部  Ｃ２…第２撮像部（撮像部）  Ｃ３…第３撮像部（撮像部）  Ｃ４…第４撮像部  Ｃ５…第５撮像部（撮像部）  Ｄ１…第１基台  Ｄ２…第２基台  Ｅ１…第１エンドエフェクター（把持部）  Ｅ２…第２エンドエフェクター  Ｅ３…第３エンドエフェクター（把持部）  Ｆ１…第１指部  Ｆ２…第２指部  Ｇ１…第１指  Ｇ２…第２指  Ｇ３…第３指  Ｇ４…第４指  Ｇ５…第５指  Ｇ６…第６指  Ｇ７…第７指  Ｇ８…第８指  Ｈ１…第１掌部  Ｈ２…第２掌部  Ｊ１…第１力検出部（力検出部）  Ｊ２…第２力検出部  Ｊ３…第３力検出部（力検出部）  Ｍ１…第１マニピュレーター  Ｍ２…第２マニピュレーター  Ｍ３…第３マニピュレーター  ＲＣ１…第１ロボット座標系  ＲＣ２…第２ロボット座標系  Ｗ…ワーク。
【図１】
2020168679.tif 000003
【図２】
2020168679.tif 000004
【図３】
2020168679.tif 000005
【図４】
2020168679.tif 000006
【図５】
2020168679.tif 000007
【図６】
2020168679.tif 000008
【図７】
2020168679.tif 000009
【図８】
2020168679.tif 000010
【図９】
2020168679.tif 000011
【図１０】
2020168679.tif 000012
【図１１】
2020168679.tif 000013
【図１２】
2020168679.tif 000014
【図１３】
2020168679.tif 000015
【図１４】
2020168679.tif 000016
【図１５】
2020168679.tif 000017
【図１６】
2020168679.tif 000018
【図１７】
2020168679.tif 000019
【図１８】
2020168679.tif 000020
【図１９】
2020168679.tif 000021
【図２０】
2020168679.tif 000022