(57)【要約】【課題】把持対象物が、小さかったり複雑な形状であったりする場合には、直接把持することが難しい。把持装置のハンド部の構造的な制約から、そもそも目的とする対象物を把持できない場合もある。そこで、把持すべき対象物を指示された場合に、当該対象物を間接的にでも把持し得る把持装置を提供する。【解決手段】把持装置は、指示された把持対象物を検出する第１検出部と、第１検出部が把持対象物を検出した場合に、把持対象物に近接するタグを検出する第２検出部と、第２検出部が検出したタグのタグ情報に基づいて、タグが付された容器を把持する把持部とを備える。【選択図】図３
2019198945.tif 000002
【特許請求の範囲】
【請求項１】
指示された把持対象物を検出する第１検出部と、
前記第１検出部が前記把持対象物を検出した場合に、前記把持対象物に近接するタグを検出する第２検出部と、
前記第２検出部が検出した前記タグのタグ情報に基づいて、前記タグが付された容器を把持する把持部と
を備える把持装置。
【請求項２】
前記タグ情報は、前記容器の形状情報および前記容器の把持位置情報の少なくともいずれかを含む請求項１に記載の把持装置。
【請求項３】
前記タグは、二次元コードのマーカーであり、
前記把持部は、前記タグ情報と前記マーカーの位置に基づいて前記容器を把持する請求項１または２に記載の把持装置。
【請求項４】
前記把持部は、指示された前記把持対象物が予め定められた把持対象物群に含まれない場合は、前記第２検出部で前記タグを検出することなく、指示された前記把持対象物を把持する請求項１から３のいずれか１項に記載の把持装置。
【請求項５】
請求項１から４のいずれか１項に記載の把持装置に把持される、透光素材で形成され前記タグが付された容器。
【請求項６】
指示された把持対象物を第１検出部に検出させる第１検出ステップと、
前記第１検出ステップで前記把持対象物を検出した場合に、前記把持対象物に近接するタグを第２検出部に検出させる第２検出ステップと、
前記第２検出ステップで検出した前記タグのタグ情報に基づいて、前記タグが付された容器を把持部に把持させる把持ステップと
をコンピュータに実行させる対象物把持プログラム。
【請求項７】
透光素材で形成されタグを付した容器に把持対象物を収容しておく収容ステップと、
把持対象物を指示する指示ステップと、
前記指示ステップで指示した前記把持対象物を収容している前記容器の把持を把持装置に実行させる実行ステップと
を有し、
前記実行ステップは、
前記指示ステップで指示された前記把持対象物を第１検出部に検出させる第１検出ステップと、
前記第１検出ステップで前記把持対象物を検出した場合に、前記把持対象物に近接する前記タグを第２検出部に検出させる第２検出ステップと、
前記第２検出ステップで検出した前記タグのタグ情報に基づいて、前記タグが付された容器を把持部に把持させる把持ステップと
を含む対象物把持方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、把持装置、タグが付された容器、対象物把持プログラムおよび対象物把持方法に関する。
【背景技術】
【０００２】
ロボットハンドにより対象物を把持する技術が広く実用化されている。把持しにくい対象物についても、対象物ごとに学習作業を行うことにより、把持を実行できるようにする把持装置が知られている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００７−２１６３８１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
把持装置が把持しようとする対象物が、小さかったり複雑な形状であったりする場合には、直接把持することが難しい。把持装置のハンド部の構造的な制約から、そもそも目的とする対象物を把持できない場合もある。また、対象物が透明な容器に収容されていると、把持装置は、当該対象物については認識できるものの、収容している容器を認識できずに、結果的に対象物の把持に失敗する場合もある。
【０００５】
本発明は、このような問題を解決するためになされたものであり、把持すべき対象物を指示された場合に、当該対象物を間接的にでも把持し得る把持装置を提供するものである。
【課題を解決するための手段】
【０００６】
本発明の第１の態様における把持装置は、指示された把持対象物を検出する第１検出部と、第１検出部が把持対象物を検出した場合に、把持対象物に近接するタグを検出する第２検出部と、第２検出部が検出したタグのタグ情報に基づいて、タグが付された容器を把持する把持部とを備える。
【０００７】
タグが付された容器に把持対象物が収容されており、そのタグに当該容器の情報や把持に関する情報が埋め込まれていれば、把持装置は、構造的に当該対象物を直接的に把持できない把持部であっても、当該容器を把持することで間接的に把持することができる。また、ユーザは、把持を行わせる段階において、容器の把持を指定するのではなく、把持させたい把持対象物を直接的に指定することができるので、収容する容器を意識する必要がない。また、把持装置は、タグ情報により容器を予め認識できれば、容器が透明でその外形を正確に検出できなくても、把持対象物を直接把持しようとすることがない。また、容器と収容される対象物とを事前に関連付ける作業をユーザが行う必要はなく、当該容器に収容できる物であって第１検出部が検出できる物であれば、把持装置は、どのような把持対象物でも間接的に把持することができる。もちろん、把持装置が事前の学習作業などを行う必要もない。
【０００８】
特に、タグ情報が容器の形状情報および容器の把持位置情報の少なくともいずれかを含めば、把持装置は当該容器をどのように把持すべきか判断しやすく、把持動作を迅速かつ効率よく実行できる。また、タグが二次元コードのマーカーであり、把持部がタグ情報とマーカーの位置に基づいて容器を把持するように構成すれば、ひとつのカメラを第１検出部および第２検出部として利用できる。この場合、例えばマーカーの位置に対してどこを把持すべきかを情報として埋め込めば良いので、多くの情報を埋め込む必要がなく、簡易な二次元コードでタグを実現することができる。
【０００９】
また、上記の把持装置において、把持部は、指示された把持対象物が予め定められた把持対象物群に含まれない場合は、第２検出部でタグを検出することなく、指示された把持対象物を把持しても良い。容器に入れられて間接的に把持される対象物が予め定められていれば、それ以外の把持対象物が指示された場合に、タグを検出する手間を省くことができる。また、直接的に把持できるのであれば、把持対象物をより安定的に把持することができる。
【００１０】
本発明の第２の態様におけるタグが付された容器は、上記のタグが付され、上記の把持装置に把持される、透光素材で形成された容器である。透光素材の容器であれば、収容物を外部からカメラによって観察できるので、指示された把持対象物が容器に囲われたような状態であっても、把持装置は当該把持対象物を間接的に把持することができる。また、透光素材であれば底深や有蓋の容器形状を採用することができるので、把持対象物をより安定的に把持することができる。また、ユーザは、把持装置に把持させたい予定対象物を、このような容器に入れて例えば棚に載置しておくだけで良いので、対象物の管理がしやすく、煩わしい準備作業をする必要もない。
【００１１】
本発明の第３の態様における対象物把持プログラムは、指示された把持対象物を第１検出部に検出させる第１検出ステップと、第１検出ステップで把持対象物を検出した場合に、把持対象物に近接するタグを第２検出部に検出させる第２検出ステップと、第２検出ステップで検出したタグのタグ情報に基づいて、タグが付された容器を把持部に把持させる把持ステップとをコンピュータに実行させる。
【００１２】
本発明の第４の態様における対象物把持方法は、透光素材で形成されタグを付した容器に把持対象物を収容しておく収容ステップと、把持対象物を指示する指示ステップと、指示ステップで指示した把持対象物を収容している容器の把持を把持装置に実行させる実行ステップとを有し、実行ステップは、指示ステップで指示された把持対象物を第１検出部に検出させる第１検出ステップと、第１検出ステップで把持対象物を検出した場合に、把持対象物に近接するタグを第２検出部に検出させる第２検出ステップと、第２検出ステップで検出したタグのタグ情報に基づいて、タグが付された容器を把持部に把持させる把持ステップとを含む。このような第３、第４の態様においても、第１の態様と同様の効果を享受することができる。
【発明の効果】
【００１３】
本発明により、把持すべき対象物を指示された場合に、当該対象物を間接的にでも把持し得る把持装置等を提供することができる。
【図面の簡単な説明】
【００１４】
【図１】把持装置を備える移動ロボットの外観斜視図である。
【図２】移動ロボットの制御ブロック図である。
【図３】ハンドユニットが把持動作を行う様子を示す図である。
【図４】移動ロボットの一連の処理を説明するフロー図である。
【図５】搬送対象物の搬送を実現するための全体の手順を説明するフロー図である。
【図６】第１の変形例に係る移動ロボットの外観斜視図である。
【図７】第１の変形例に係るハンドユニットが把持動作を行う様子を示す図である。
【図８】第２の変形例に係るハンドユニットが把持動作を行う様子を示す図である。
【発明を実施するための形態】
【００１５】
以下、発明の実施の形態を通じて本発明を説明するが、特許請求の範囲に係る発明を以下の実施形態に限定するものではない。また、実施形態で説明する構成の全てが課題を解決するための手段として必須であるとは限らない。
【００１６】
図１は、本実施形態に係る把持装置を備える移動ロボット１００の外観斜視図である。図においてｘｙ平面は移動ロボット１００の走行面であり、ｚ軸プラス方向は天頂方向を示す。移動ロボット１００は、大きく分けて台車部１１０、本体部１２０と、把持装置を構成するアームユニット１３０およびハンドユニット１４０とによって構成される。
【００１７】
台車部１１０は、円筒形状の筐体内に、それぞれが走行面に接地する２つの駆動輪１１１と１つのキャスター１１２とを支持している。２つの駆動輪１１１は、互いに回転軸芯が一致するように配設されている。それぞれの駆動輪１１１は、不図示のモータによって独立して回転駆動される。キャスター１１２は、従動輪であり、台車部１１０から鉛直方向に延びる旋回軸が車輪の回転軸から離れて車輪を軸支するように設けられており、台車部１１０の移動方向に倣うように追従する。移動ロボット１００は、例えば、２つの駆動輪１１１が同じ方向に同じ回転速度で回転されれば直進し、逆方向に同じ回転速度で回転されれば台車部１１０の２つの駆動輪１１１の中央を通る鉛直軸周りに旋回する。
【００１８】
本体部１２０は、アームユニット１３０を支持すると共に、ユーザインタフェースの一部を成す表示パネル１２３を有する。表示パネル１２３は、例えば液晶パネルであり、キャラクターの顔を表示したり、移動ロボット１００に関する情報を提示したりする。表示パネル１２３は、表示面にタッチパネルを有し、ユーザからの指示入力を受け付けることができる。
【００１９】
本体部１２０は、アームユニット１３０およびハンドユニット１４０の動作範囲を含む前方の環境空間を見渡せる位置に環境カメラ１２１を有する。環境カメラ１２１は、例えばＣＭＯＳイメージセンサである撮像素子と画像データ生成部を含み、前方の環境空間を撮像して生成した画像データを出力する。また、本体部１２０には、コントロールユニット１９０が設けられている。コントロールユニット１９０は、後述の制御部とメモリ等を含む。
【００２０】
本体部１２０に支持されたアームユニット１３０は、アーム部の一例であり、例えば図示するように２つのリンクを有し、それぞれのリンク基端に設けられた不図示のモータの駆動によって様々な姿勢を取り得る。アームユニット１３０の先端部にはハンドユニット１４０が接続されており、ハンドユニット１４０の全体は、アームユニット１３０の先端リンクの伸延方向と平行な旋回軸周りに、不図示のモータの駆動によって旋回し得る。ハンドユニット１４０は、把持部の一例であり、先端部に不図示のモータによって駆動される第１フィンガー１４０ａと第２フィンガー１４０ｂを備える。第１フィンガー１４０ａと第２フィンガー１４０ｂは、点線矢印で示すようにそれぞれが互いに接近するように動作して、対象物を挟持することにより把持を実現する。
【００２１】
ハンドユニット１４０のうち第１フィンガー１４０ａおよび第２フィンガー１４０ｂの支持基部に、ハンドカメラ１４１が配設されている。ハンドカメラ１４１は、例えばＣＭＯＳイメージセンサである撮像素子と画像データ生成部を含み、ハンドユニット１４０の前方空間を撮像して生成した画像データを出力する。ハンドカメラ１４１は、指示された把持対象物を検出する第１検出部としての機能を担う。また、把持対象物に近接するタグとしてのマーカーを検出する第２検出部としての機能も併せて担う。
【００２２】
図２は、移動ロボット１００の制御ブロック図である。制御部２００は、例えばＣＰＵであり、本体部１２０のコントロールユニット１９０に格納されている。駆動輪ユニット２１０は、駆動輪１１１を駆動するための駆動回路やモータを含み、台車部１１０に設けられている。制御部２００は、駆動輪ユニット２１０へ駆動信号を送ることにより、駆動輪１１１の回転制御を実行する。
【００２３】
アームユニット１３０は、図１を用いて説明した構造体の他にも、モータを駆動する駆動回路や動作量を監視するためのエンコーダ等を備える。制御部２００は、アームユニット１３０へ駆動信号を送ることにより、アームの動作や姿勢を制御する。ハンドユニット１４０は、図１を用いて説明した構造体の他にも、モータを駆動する駆動回路や動作量を監視するためのエンコーダ等を備える。制御部２００は、ハンドユニット１４０へ駆動信号を送ることにより、ハンドの動作や姿勢を制御する。
【００２４】
センサユニット２２０は、移動中に障害物を検出したり、外部からの接触を検出したりする各種センサを含み、台車部１１０および本体部１２０に分散して配置されている。制御部２００は、センサユニット２２０に制御信号を送ることにより、各種センサを駆動してその出力を取得する。
【００２５】
環境カメラ１２１は、上述のように、アームユニット１３０およびハンドユニット１４０の動作範囲を含む前方の環境空間を観察するために利用され、制御部２００の撮像指示に従って撮像を実行する。環境カメラ１２１は、生成した画像データを制御部２００へ引き渡す。ハンドカメラ１４１は、上述のように、ハンドユニット１４０の前方空間を観察するために利用され、制御部２００の撮像指示に従って撮像を実行する。ハンドカメラ１４１は、生成した画像データを制御部２００へ引き渡す。
【００２６】
メモリ２４０は、不揮発性の記憶媒体であり、例えばソリッドステートドライブが用いられる。メモリ２４０は、移動ロボット１００を制御するためのロボット制御プログラムの他にも、制御に用いられる様々なパラメータ値、関数、ルックアップテーブル等を記憶している。ロボット制御プログラムは、把持装置を構成するアームユニット１３０およびハンドユニット１４０を制御するための対象物把持プログラムを包含する。
【００２７】
ユーザＩＦ２４０は、表示パネル１２３や、例えば合成音声を発話するスピーカなどであり、制御部２００の制御に従ってユーザに情報を提供する出力装置を含む。また、ユーザＩＦ２４０は、表示パネル１２３の表示面に設けられたタッチパネルなどの、ユーザからの指示入力を受け付けて制御部２００へ入力信号を送信する入力装置を含む。
【００２８】
制御部２００は、制御に関わる様々な演算を実行する機能演算部としての役割も担う。把持制御部２０１は、対象物を把持する把持動作を制御する。把持制御部２０１は、後述する様々な演算を行い、その演算結果に基づいてハンドユニット１４０の把持動作を実行すべく、ハンドユニット１４０へ駆動信号を送信する。
【００２９】
把持動作の一例について説明する。図３は、ハンドユニット１４０が把持動作を行う様子を示す図である。ここでは、移動ロボット１００は、ユーザからフォーク９０１を把持するように指示されているものとする。
【００３０】
本実施形態におけるハンドユニット１４０は、図示するように、単純な一軸周りの開閉動作によって把持対象物を挟んで把持する第１フィンガー１４０ａと第２フィンガー１４０ｂを備える。第１フィンガー１４０ａと第２フィンガー１４０ｂは、それぞれ人間の片掌程度の大きさである。したがって、フォーク９０１を直接的に把持することは、構造的に難しい。
【００３１】
そこで、ユーザあるいは補助者は、フォーク９０１を透明容器９００に収容し、透明容器９００をテーブル９１０上に載置して予め把持環境を整備しておく。透明容器９００は、図示するように例えば上部が開口しているカップ形状を成し、ポリカーボネートやガラスなどの透光素材で形成されている。素材が透光性を有していれば、加色されていても構わない。フォーク９０１は、透明容器９００に収容されているので、外部からその全体を観察し得る。すなわち、ハンドカメラ１４１は、透明容器９００に収容されている状態のフォーク９０１を観察できる。透明容器９００は、カップ形状でなく、フォーク９０１の全体を収容する有蓋容器であっても構わない。透明容器９００は、少なくとも第１フィンガー１４０ａと第２フィンガー１４０ｂで把持できる大きさと形状であれば、他の要素が付加されていても構わない。なお、透明容器９００は、第１フィンガー１４０ａと第２フィンガー１４０ｂで挟まれて把持されても、変形しない程度の剛性を有する。
【００３２】
透明容器９００は、外周面にマーカー９０２が貼着されている。本実施形態においては、ハンドユニット１４０がいずれの方向からも接近して良いように、放射方向へ向けて複数のマーカー９０２が貼着されている。マーカー９０２は、透明容器９００の形状情報および透明容器９００の把持位置情報の少なくともいずれかを含む情報が二次元コードに埋め込まれたタグである。形状情報は、マーカー９０２の中心を座標中心として、透明容器９００の表面形状が関数で表現されていたり、全ての頂点が三次元座標で表現されていたりする。把持位置情報は、マーカー９０２の中心を座標中心として、第１フィンガー１４０ａと第２フィンガー１４０ｂで安定的に把持できる箇所が、領域を表す関数として表現されていたり、点として三次元座標で表現されていたりする。
【００３３】
フォーク９０１を把持するように指示された場合に、把持制御部２０１は、ハンドカメラ１４１から取得される画像データを解析して、まずフォーク９０１を検出する。フォーク９０１の検出には、例えばリアルタイムオブジェクト検出アルゴリズムとして知られるＹＯＬＯを利用することができる。
【００３４】
フォーク９０１を検出したら、把持制御部２０１は、フォーク９０１を検出した画像データから、フォーク９０１に近接するマーカー９０２を探索する。同一画像データからマーカー９０２を検出できなかったり、一部しか検出できなかったりする場合には、検出したフォーク９０１の近傍でハンドユニット１４０を移動させ、ハンドカメラ１４１から再度画像データを取得して、フォーク９０１に近接するマーカー９０２を探索する。より具体的には、フォーク９０１を検出した領域に最も近くに存在するマーカー９０２を、近接するマーカーとして検出する。同一画像データからマーカー９０２を検出できなかった場合には、フォーク９０１を検出した位置から撮影位置を少しずつ鉛直方向へ下げながら画像データを取得し、ハンドユニット１４０の移動量から、フォーク９０１に最も近いと判断されるマーカー９０２を検出する。
【００３５】
マーカー９０２を検出できたら、把持制御部２０１は、画像データ中のマーカー像を解析して、透明容器９００に関するタグ情報を抽出する。そして、透明容器９００の形状情報が抽出できた場合には、当該形状情報から第１フィンガー１４０ａと第２フィンガー１４０ｂで安定的に把持できる把持位置を演算し、当該把持位置での把持動作を実行する。透明容器９００の把持位置情報が抽出できた場合には、当該把持位置情報で指定された把持位置での把持動作を実行する。把持制御部２０１は、このようにして、ユーザから指定されたフォーク９０１を、透明容器９００を介して把持する。
【００３６】
このように、マーカーが付された透明容器に把持対象物が収容されており、マーカーに当該透明容器の情報や把持に関する情報が埋め込まれていれば、ハンドユニットは、構造的に当該対象物を直接的に把持できなくても、当該透明容器を把持することで間接的に把持することができる。また、ユーザは、把持を行わせる段階において、透明容器の把持を指定するのではなく、把持させたい把持対象物を直接的に指定することができるので、収容する透明容器を意識する必要がない。すなわち、把持させたい把持対象物が、どの透明容器に収容されていたかを確認し、その透明容器を把持するように指定する必要がない。換言すれば、ユーザは、容器と収容される把持対象物とを事前に関連付ける作業を行う必要はなく、把持の対象となり得るものをマーカーが付されたいずれかの透明容器にそれぞれ収容して、テーブルや棚に載せておけば良い。
【００３７】
また、透明容器に把持対象物を収容する場合には、画像データの画像から当該透明容器の形状を正確に把握することが難しいが、把持制御部２０１は、マーカーのタグ情報から把持に必要な情報を得ることができるので、透明容器の形状を正確に把握する必要がない。別言すれば、把持制御部２０１は、マーカーを検出できれば透明容器に把持対象物が収納されていることを把握できるので、把持対象物を無理に直接把持しようとすることがない。
【００３８】
また、ハンドユニットが透明容器を安定的に把持するためのタグ情報は様々に記述し得るが、透明容器の形状情報、把持位置情報を含めば、把持制御部２０１は、当該透明容器をどのように把持すべきか判断しやすく、把持動作を迅速かつ効率よく実行できる。また、タグ情報をマーカーに埋め込むのであれば、透明容器に貼着されたマーカーの位置を基準として透明容器の形状や把持位置を定義することができる。したがって、タグ情報として多くの情報を埋め込む必要がなく、簡易な二次元コードでタグを実現することができる。
【００３９】
次に、図３を用いて説明したような把持動作を含む、一連の把持運搬処理について説明する。図４は、移動ロボット１００の一連の把持運搬処理を説明するフロー図である。
【００４０】
制御部２００は、ステップＳ１０１で、取ってくる搬送対象物の指示を、ユーザＩＦ２４０を介してユーザから受け付ける。制御部２００は、メモリ２５０から環境地図を読み出し、指示された搬送対象物が保管された保管場所（例えば棚やテーブル）を特定し、当該保管場所までの移動経路を計画する。そして、ステップＳ１０２で、計画した移動経路に沿って自律移動し、当該保管場所の近傍に到達したら停止する。
【００４１】
把持制御部２０１は、ステップＳ１０３で、アームユニット１３０およびハンドユニット１４０を駆動し、ハンドカメラ１４１から逐次得られる画像データを解析して、指示された搬送対象物である把持対象物を探索する。そして、把持対象物を検出したらステップＳ１０４へ進む。
【００４２】
把持制御部２０１は、ステップＳ１０４で、把持対象物をハンドユニット１４０が直接把持可能か否かを判断する。図３を用いて説明した例では、把持対象物が透明容器に収容されていることを前提に説明したが、ユーザから指示される搬送対象物（すなわち把持対象物）は、ハンドユニット１４０が直接把持できない物ばかりではない。直接把持できる物は、容器に収容されることなく保管場所に保管されている。そこで、把持制御部２０１は、メモリ２５０から、容器に収容されて保管される把持対象物群が予めリスト化されたルックアップテーブルを読み出し、ユーザに指示された把持対象物がルックアップテーブルに含まれるか否かを確認する。含まれていなければ、ハンドユニット１４０が直接把持できると判断して、ステップＳ１０５へ進む。含まれていれば、ハンドユニット１４０が直接把持できないと判断して、ステップＳ１０６へ進む。
【００４３】
ステップＳ１０５へ進んだ場合は、把持制御部２０１は、ステップＳ１０３で検出した把持対象物を把持するための把持動作を実行する。把持対象物を把持したら、ステップＳ１０９へ進む。
【００４４】
ステップＳ１０６へ進んだ場合は、把持制御部２０１は、把持対象物を検出した画像データから、把持対象物に近接するタグであるマーカー９０２を探索する。同一画像データからマーカー９０２を検出できなかったり、一部しか検出できなかったりする場合には、検出した把持対象物の近傍でハンドユニット１４０を移動させ、ハンドカメラ１４１から再度画像データを取得して、把持対象物に近接するマーカー９０２を探索する。マーカー９０２を検出できたら、把持制御部２０１は、画像データ中のマーカー像を解析して、透明容器９００に関するタグ情報を抽出する。
【００４５】
把持制御部２０１は、ステップＳ１０７へ進み、検出したタグ情報から透明容器９００に対する把持位置を定め、当該把持位置で把持できるように、アームユニット１３０およびハンドユニット１４０の動作を計画する。そしてステップＳ１０８で、アームユニット１３０およびハンドユニット１４０を駆動して、当該把持位置での把持動作を実行する。このようにして、把持対象物を収容した透明容器９００を把持したら、ステップＳ１０９へ進む。
【００４６】
制御部２００は、ステップＳ１０９で、把持対象物を直接的または間接的に把持する把持姿勢を維持したまま、搬送先である目的地まで自律移動して搬送を実行する。目的地に到達したら一連の処理を終了する。
【００４７】
図５は、搬送対象物の搬送を実現するための全体の手順を説明するフロー図である。図４のフロー図は移動ロボット１００の制御部２００が実行する処理フローであったのに対して、図５のフロー図は、移動ロボット１００を利用して対象物の搬送を実現するための、ユーザあるいは補助者の作業を含む搬送方法としての処理フローである。
【００４８】
ユーザあるいは補助者は、ステップＳ２０１で、把持の対象となり得る物をマーカーが付されたいずれかの透明容器９００にそれぞれ収容し、ステップＳ２０２で、所定場所のテーブルや棚に載せて保管する。所定場所は、メモリ２５０に記憶された環境地図に当該対象物の保管場所として記述されている場所であるか、当該対象物の保管場所として新たに環境地図に記述される場所である。
【００４９】
ユーザは、移動ロボット１００に搬送して欲しい対象物が生じたときに、ステップＳ２０３で、移動ロボット１００に対して搬送対象物の指示を与える。移動ロボット１００の側では、図４のステップＳ１０１の処理に対応する。そして、ステップＳ２０４で、移動ロボット１００は、指示された搬送処理を実行する。移動ロボット１００の側では、ステップＳ１０２からステップＳ１０９までの処理に対応する。
【００５０】
ユーザは、ステップＳ２０５で移動ロボット１００から搬送物を受け取って一連の搬送方法を完了する。ユーザは、複数の搬送対象物を搬送したい場合は、ステップＳ２０３からステップＳ２０５を繰り返せば良いし、搬送後に利用を終えた搬送物に対しては、再びステップＳ２０１およびステップＳ２０２を行って元の保管場所に返しても良い。
【００５１】
次に、いくつかの変形例について説明する。図６は、第１の変形例に係る移動ロボット１００’の外観斜視図である。移動ロボット１００’は、移動ロボット１００の構成に対して更にタグリーダー１４２を備える。タグリーダー１４２は、例えば図示するようにハンドカメラ１４１に隣接して配設される。タグリーダー１４２は、ＩＣタグに対して電波を照射し、ＩＣタグに記録された情報を読み取る装置である。
【００５２】
図７は、第１の変形例に係る移動ロボット１００’のハンドユニット１４０が把持動作を行う様子を示す図である。図３に示すマーカー９０２が貼着された透明容器９００と異なり、本変形例に係る透明容器９００には、ＩＣタグ９０３が貼着されている。ＩＣタグ９０３は、透明容器９００の形状情報および透明容器９００の把持位置情報の少なくともいずれかが記録されている。他の状況および設定は、図３の例と同様とする。
【００５３】
把持制御部２０１は、ハンドカメラ１４１から得られた画像データを解析してフォーク９０１を検出したら、タグリーダー１４２を駆動して、フォーク９０１に近接するＩＣタグ９０３を検出し、その情報を読み出す。そして、当該情報に基づいて透明容器９００の把持位置を定め、把持動作を実行する。なお、ＩＣタグ９０３の位置は、例えば、タグリーダー１４２の位置を変化させてＩＣタグ９０３を読み取り、そのときの電波強度の差と読み取り位置の差を利用して算出される。
【００５４】
図３の例では、タグとして二次元コードのマーカー９０２を用いたので、ハンドカメラ１４１に、指示された把持対象物を検出する第１検出部と、把持対象物に近接するタグを検出する第２検出部の両機能を担わせることができた。一方で、二次元コードを印刷できる程度の面積を有するマーカー９０２を、透明容器９００に複数貼着することを要した。本変形例では、ハンドカメラ１４１を、指示された把持対象物を検出する第１検出部として機能させ、タグリーダー１４２を、把持対象物に近接するタグを検出する第２検出部として機能させる。すなわち、それぞれを別個のハードウェアで構成する必要があるが、ＩＣタグ９０３はマーカー９０２よりも小さく、しかも透明容器９００に一つ貼着すれば良い。すなわち、透明容器９００のデザイン性を損なう虞が小さく、貼着作業も容易である。
【００５５】
図８は、第２の変形例に係るハンドユニット１４０が把持動作を行う様子を示す図である。図３の例および図７の例では、フォーク９０１を透明容器９００に収容したが、本変形例では、フォーク９０１を比較的底浅の不透明容器９０４に収容している。他の状況および設定は、図３の例と同様とする。
【００５６】
これまでの実施例では透明容器９００を用いたが、透明容器９００を用いたのは、収容された把持対象物が良好に検出できるからである。すなわち、容器が透明であれば、ハンドカメラ１４１で把持対象物の全体を撮像することができるからであり、把持対象物の検出精度の向上に寄与した。しかし、把持対象物を容器に収容しても、把持対象物を検出できれば良い。そこで、本変形例では、収容されるフォーク９０１の半分程度が外部に露出するように収容される、底浅で不透明な容器である不透明容器９０４を利用する。このように、収容されたフォーク９０１が半分程度外部に露出していれば、把持制御部２０１は、フォーク９０１を認識することができる。
【００５７】
不透明容器９０４の外周にも、透明容器９００と同様に、複数のマーカー９０２が貼着されている。把持制御部２０１は、フォーク９０１を検出した後に、マーカー９０２を検出し、マーカー９０２から読み出したタグ情報に基づいて不透明容器９０４の把持位置を定め、把持動作を実行する。
【００５８】
なお、収容される把持対象物がどの程度不透明容器９０４から露出しているべきかは、当該把持対象物の形状や、収容の仕方などによって異なる。例えば、フォーク９０１であれば、形状として特徴的な櫛状の先端部が露出していれば画像解析により検出しやすいので、柄の部分の大半が不透明容器９０４に隠れていても構わない。また、本変形例においては、マーカー９０２を貼着する代わりに、ＩＣタグ９０３を貼着しても構わない。その場合は、ハンドユニット１４０としてタグリーダー１４２を備えることを要する。
【００５９】
以上、変形例を含めて本実施形態を説明したが、透明容器９００や不透明容器９０４に収容する把持対象物は、単独のフォーク９０１に限らない。複数のフォークが収容されていても構わないし、スプーンが収容されていても構わない。ユーザが把持対象物としてフォークを指定した場合に、フォークと共にスプーンも把持することを許容するのであれば、フォークとスプーンが共に収容されていても構わない。もちろん、フォークやスプーンのような小物に限らず、把持しにくい比較的大きな対象物を容器に収容して把持するようにしても構わない。逆に、把持部に対して非常に小さな対象物も、容器に収容して把持することに好適である。さらには、例えば海水中の生魚など液体中に存在する対象物を把持したい場合には、当該対象物を液体ごと透明容器９００へ収容すれば、透明容器９００を介して確実に把持できる。また、食料品など変形しやすい対象物を把持する場合にも、容器に収容して把持することに好適である。
【００６０】
また、以上説明した本実施形態においては、一軸周りの開閉動作によって把持対象物を挟んで把持する第１フィンガー１４０ａと第２フィンガー１４０ｂを把持部の例として説明したが、把持部はより複雑な構造を備えていても良い。例えば、複数のクロー爪を備えた把持部であっても良いし、人間の手のような多関節複数指の把持部であっても良い。ユーザは、把持対象物を容器に入れて間接的に把持させるか否かは、把持部の性能に応じて判断しても良い。
【００６１】
また、以上説明した本実施形態においては、把持対象物をハンドカメラ１４１が出力する画像データを用いて検出したが、本体部１２０に配設された環境カメラ１２１が出力する画像データを用いて検出しても良い。この場合は、環境カメラ１２１が、第１検出部の機能を担う。また、広い範囲を環境カメラ１２１で捉え、注目する領域を絞り込んでからハンドカメラ１４１を用いるようにしても構わない。この場合は、環境カメラ１２１とハンドカメラ１４１が第１検出部の機能を担うことになる。
【００６２】
また、以上説明した本実施形態においては、タグとして二次元コードのマーカー９０２とＩＣタグ９０３の例を説明したが、採用し得るタグはこれらに限らない。また、タグを利用する場合に、容器に貼着する場合に限らず、例えば素材に埋め込んだり、直接印刷したりしても構わない。
【００６３】
また、以上説明した本実施形態においては、移動ロボット１００が把持装置を備える例を説明したが、把持装置は、移動機構などを備えない独立した装置であっても構わない。この場合、把持装置の制御に必要なコントロールユニットは、把持装置内に設けられる。
【符号の説明】
【００６４】
１００、１００’  移動ロボット、１１０  台車部、１１１  駆動輪、１１２  キャスター、１２０  本体部、１２１  環境カメラ、１２３  表示パネル、１３０  アームユニット、１４０  ハンドユニット、４０ａ  第１フィンガー１、４０ｂ  第２フィンガー１、１４１  ハンドカメラ、１４２  タグリーダー、１９０  コントロールユニット、２００  制御部、２０１  把持制御部、２１０  駆動輪ユニット、２２０  センサユニット、２３０  メモリ、２４０  ユーザＩＦ、９００  透明容器、９０１  フォーク、９０２  マーカー、９０３  ＩＣタグ、９０４  不透明容器、９１０  テーブル
【図１】
2019198945.tif 000003
【図２】
2019198945.tif 000004
【図３】
2019198945.tif 000005
【図４】
2019198945.tif 000006
【図５】
2019198945.tif 000007
【図６】
2019198945.tif 000008
【図７】
2019198945.tif 000009
【図８】
2019198945.tif 000010