(57)【要約】【課題】マニピュレータに衝撃が及ぼされた場合に衝撃を和らげることができるとともに、把持対象物へのアプローチを精度良く行うことができる制御装置を提供する。【解決手段】把持対象物を把持するマニピュレータを有するロボットの制御装置は、ロボットを制御する制御モードとして、位置制御により制御する第１の制御モードと、インピーダンス制御により制御する第２の制御モードと、を備え、まず、第１の制御モードに設定してロボットにより把持対象物の把持動作を開始させ、マニピュレータに及ぼされる衝撃を検出する衝撃検知部において衝撃を検出した場合には、第２の制御モードに切替えてロボットが衝撃を和らげる方向へ回避するように動作させ、衝撃を和らげる方向への回避が完了した後に、第１の制御モードに切替えて、把持対象物の把持を再度試みるようロボットを動作させる。【選択図】図１
2020082199.tif 000002
【特許請求の範囲】
【請求項１】
把持対象物を把持するマニピュレータを有するロボットの制御装置であって、
前記ロボットを制御する制御モードとして、位置制御により制御する第１の制御モードと、インピーダンス制御により制御する第２の制御モードと、を備え、まず、前記第１の制御モードに設定して前記ロボットにより前記把持対象物の把持動作を開始させ、前記マニピュレータに及ぼされる衝撃を検出する衝撃検知部において衝撃を検出した場合には、前記第２の制御モードに切替えて前記ロボットが衝撃を和らげる方向へ回避するように動作させ、衝撃を和らげる方向への回避が完了した後に、前記第１の制御モードに切替えて、前記把持対象物の把持を再度試みるよう前記ロボットを動作させる、制御装置。
【請求項２】
前記マニピュレータの所定の位置が、前記把持対象物から所定の距離以上離れたときに、前記第１の制御モードによる前記把持対象物の把持を再度試みる、請求項１に記載の制御装置。
【請求項３】
衝撃を受けたときにおける前記マニピュレータの所定の位置の座標情報を記憶させ、回避が完了した後、前記把持対象物の把持を再度試みる際に、当該座標情報を考慮する、請求項１に記載の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、把持対象物を把持するマニピュレータを有するロボットの制御装置に関する。
【背景技術】
【０００２】
近年、把持対象物を把持するマニピュレータを有するロボットの制御方法について様々な研究開発が行われている。当該制御方法として、位置制御、力制御の一種であるインピーダンス制御、インピーダンス制御を簡易化したコンプライアンス制御などが一般的に知られている。特許文献１には、コンプライアンス制御のパラメータを動的に変更して衝撃を和らげるようにする技術が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１１−１０４７４０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１に開示された技術では、外力とそれ以外の力（自重や加速したときの慣性力）を区別することができずに誤認識が起こり、把持対象物に精度良くアプローチできない可能性がある。これに対し、位置制御でロボットを制御すると、把持対象物に精度良くアプローチできるものの、マニピュレータに過大な力（衝撃）がかかっても、衝撃を和らげるように制御することができない。このため、マニピュレータが衝撃を受けている障害物を破壊してしまったり、マニピュレータが衝撃により破損したりする可能性があった。
【０００５】
本発明は、以上の背景に鑑みなされたものであり、マニピュレータに衝撃が及ぼされた場合に衝撃を和らげることができるとともに、把持対象物へのアプローチを精度良く行うことができる制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明にかかる制御装置は、把持対象物を把持するマニピュレータを有するロボットの制御装置であって、前記ロボットを制御する制御モードとして、位置制御により制御する第１の制御モードと、インピーダンス制御により制御する第２の制御モードと、を備え、まず、前記第１の制御モードに設定して前記ロボットにより前記把持対象物の把持動作を開始させ、前記マニピュレータに及ぼされる衝撃を検出する衝撃検知部において衝撃を検出した場合には、前記第２の制御モードに切替えて前記ロボットが衝撃を和らげる方向へ回避するように動作させ、衝撃を和らげる方向への回避が完了した後に、前記第１の制御モードに切替えて、前記把持対象物の把持を再度試みるよう前記ロボットを動作させるものである。
【０００７】
まず、第１の制御モードで把持対象物の把持動作を開始させることで、把持対象物の周辺に障害物がない場合に把持対象物へのアプローチを精度良く行うことができる。また、マニピュレータに衝撃が及ぼされた場合に第２の制御モードに切替えることで、マニピュレータに及ぼされている衝撃を和らげることができる。さらに、衝撃を和らげる方向への回避が完了した後に、第１の制御モードに切替えることで、把持対象物の把持を再度の試みにおいて把持対象物へのアプローチを精度良く行うことができる。
【０００８】
また、前記マニピュレータの所定の位置が、前記把持対象物から所定の距離以上離れたときに、前記第１の制御モードによる前記把持対象物の把持を再度試みるようにしてもよい。マニピュレータと把持対象物との距離が近い状態で第１の制御モードに切替えて把持対象物の把持を再度試みた場合、衝撃を受けた障害物に再び衝突して衝撃を受ける可能性が高い。把持対象物から所定の距離以上離れたときに把持対象物の把持を再度試みることで、再度の試みにおいて成功率を高めることができる。
【０００９】
さらに、衝撃を受けたときにおける前記マニピュレータの所定の位置の座標情報を記憶させ、回避が完了した後、前記把持対象物の把持を再度試みる際に、当該座標情報を考慮するようにしてもよい。このように、前回の把持の試みにおける情報を生かすことで、今回の把持の試みにおける成功率を高めることができる。
【発明の効果】
【００１０】
本発明によれば、マニピュレータに衝撃が及ぼされた場合に衝撃を和らげることができるとともに、把持対象物へのアプローチを精度良く行うことができる。
【図面の簡単な説明】
【００１１】
【図１】本実施形態に係る制御装置を適用するロボットの外観斜視図である。
【図２】ロボットの制御構成を示すブロック図である。
【図３】制御装置において、ロボットが把持対象物の把持を行う動作を制御する処理の流れについて説明するフローチャートである。
【図４】図３のステップＳ１０３の処理の一例について示す模式図である。
【図５】図３のステップＳ１０４における回避が完了したか否か判定する処理の一例について示す模式図である。
【図６】制御装置をロボットとは別体として構成した例を示す模式図である。
【発明を実施するための形態】
【００１２】
以下、発明の実施の形態を通じて本発明を説明するが、特許請求の範囲に係る発明を以下の実施形態に限定するものではない。また、実施形態で説明する構成の全てが課題を解決するための手段として必須であるとは限らない。説明の明確化のため、以下の記載及び図面は、適宜、省略、及び簡略化がなされている。各図面において、同一の要素には同一の符号が付されており、必要に応じて重複説明は省略されている。
【００１３】
まず、本実施形態に係る制御装置を適用するロボットの構成について説明する。
図１は、本実施形態に係る制御装置を適用するロボット１００の外観斜視図である。図において、ｘｙ平面はロボット１００の走行面であり、ｚ軸プラス方向は天頂方向を示す。図１に示すように、ロボット１００は、大きく分けて、走行面を移動するための移動機構としての台車部１１０と、本体部１２０と、把持機構としてのマニピュレータ２３０と、によって構成される。マニピュレータ２３０は、ロボットアーム１３０及びロボットハンド１４０を含む。
【００１４】
台車部１１０は、円筒形状の筐体内に、それぞれが走行面に接地する２つの駆動輪１１１と１つのキャスター１１２とを支持している。２つの駆動輪１１１は、互いに回転軸芯が一致するように配設されている。それぞれの駆動輪１１１は、不図示のモータによって独立して回転駆動される。キャスター１１２は、従動輪であり、台車部１１０から鉛直方向に延びる旋回軸が車輪の回転軸から離れて車輪を軸支するように設けられており、台車部１１０の移動方向に倣うように追従する。ロボット１００は、例えば、２つの駆動輪１１１が同じ方向に同じ回転速度で回転されれば直進し、逆方向に同じ回転速度で回転されれば台車部１１０の２つの駆動輪１１１の中央を通る鉛直軸周りに旋回する。
【００１５】
本体部１２０は、ロボットアーム１３０を支持すると共に、ユーザインタフェースの一部を成す表示パネル１２３を有する。表示パネル１２３は、例えば液晶パネルであり、キャラクターの顔を表示したり、ロボット１００に関する情報を提示したりする。表示パネル１２３は、表示面にタッチパネルを有し、ユーザからの指示入力を受け付けることができる。
【００１６】
本体部１２０は、ロボットアーム１３０及びロボットハンド１４０の動作範囲を含む前方の環境空間を見渡せる位置に環境カメラ１２１を有する。環境カメラ１２１は、例えばＣＭＯＳイメージセンサである撮像素子と画像データ生成部を含み、前方の環境空間を撮像して生成した画像データを出力する。また、本体部１２０には、コントロールユニット１９０が設けられている。コントロールユニット１９０は、後述の制御部とメモリ等を含む。
【００１７】
本体部１２０に支持されたロボットアーム１３０は、複数のリンク、例えば図示するように２つのリンクを有し、各リンクを回動可能に連結する関節部１３１（手首関節、肘関節、肩関節など）に設けられたアクチュエータを駆動させることにより様々な姿勢を取り得る。各関節部１３１には、減速機構が設けられている。ロボットアーム１３０の先端部にはロボットハンド１４０が接続されており、ロボットハンド１４０の全体は、ロボットアーム１３０の先端リンクの伸延方向と平行な旋回軸周りに、アクチュエータの駆動によって旋回し得る。
【００１８】
ロボットアーム１３０の先端部にあるロボットハンド１４０にはハンドカメラ１４１が配設されている。ハンドカメラ１４１は、例えばＣＭＯＳイメージセンサである撮像素子と画像データ生成部を含み、ロボットハンド１４０の前方空間を撮像して生成した画像データを出力する。ロボットハンド１４０は、先端部に設けられたアクチュエータによって駆動される第１フィンガー１４０ａと第２フィンガー１４０ｂを備える。第１フィンガー１４０ａと第２フィンガー１４０ｂは、点線矢印で示すようにそれぞれが互いに接近するように動作して、対象物を挟持することにより把持を実現する。
【００１９】
図２は、ロボット１００の制御構成を示すブロック図である。本実施形態に係る制御装置２００は、ロボット１００に組み込まれている。すなわち、制御装置２００は、例えばＣＰＵであり、本体部１２０のコントロールユニット１９０（図１参照）に格納されている。駆動輪ユニット２１０は、駆動輪１１１（図１参照）を駆動するための駆動回路やモータを含み、台車部１１０（図１参照）に設けられている。
【００２０】
マニピュレータ２３０に含まれるロボットアーム１３０は、図１を用いて説明した構造体の他に、各関節部１３１（図１参照）を駆動するアクチュエータ１３２と、各関節部１３１の回転情報を検出する回転センサ１３４と、各関節部１３１の操作力（トルク）を検出する力センサ１３３と、を有する。アクチュエータ１３２は、例えばサーボモータなどである。回転センサ１３４は、例えばエンコーダなどである。力センサ１３３は、例えば、各関節部１３１のトルクを検出するトルクセンサなどである。マニピュレータ２３０に含まれるロボットハンド１４０は、第１フィンガー１４０ａと第２フィンガー１４０ｂ（図１参照）を駆動するアクチュエータ１４２と、ロボットハンド１４０の操作力を検出する力センサ１４３と、を有する。
【００２１】
センサユニット２２０は、移動中に障害物を検出したり、外部からの接触を検出したりする各種センサを含み、台車部１１０及び本体部１２０（図１参照）に分散して配置されている。制御装置２００は、センサユニット２２０に制御信号を送ることにより、各種センサを駆動してその出力を取得する。センサユニット２２０は、マニピュレータ２３０に及ぼされる衝撃を検出する衝撃検知部２２１を含む。
【００２２】
衝撃検知部２２１は、ロボットアーム１３０の力センサ１３３、ロボットハンド１４０の力センサ１４３を用いて、マニピュレータ２３０に及ぼされる衝撃を検出するものである。ここで、マニピュレータ２３０に衝撃が及ぼされている、とは、予め定められた閾値以上の力がマニピュレータ２３０に及ぼされている状態を意味する。なお、衝撃検知部２２１は、マニピュレータ２３０に及ぼされる衝撃を検出することができればどのようなものであってもよい。例えば、衝撃検知部２２１は、ロボットアーム１３０のアクチュエータ１３２やロボットハンド１４０のアクチュエータ１４２の電流値の波形変化から衝撃を検出するものであってもよい。また、衝撃検知部２２１は、マニピュレータ２３０の所定の位置に設置されたタッチセンサにより衝撃を検出するものであってもよい。ここで、タッチセンサとは、所定圧力以上の圧力を受けるとＯＮする感圧式のセンサである。
【００２３】
環境カメラ１２１は、上述のように、ロボットアーム１３０及びロボットハンド１４０の動作範囲を含む前方の環境空間を観察するために利用され、制御装置２００の撮像指示に従って撮像を実行する。環境カメラ１２１は、生成した画像データを制御装置２００へ引き渡す。ハンドカメラ１４１は、上述のように、ロボットハンド１４０の前方空間を観察するために利用され、制御装置２００の撮像指示に従って撮像を実行する。ハンドカメラ１４１は、生成した画像データを制御装置２００へ引き渡す。
【００２４】
メモリ２４０は、不揮発性の記憶媒体であり、例えばソリッドステートドライブが用いられる。メモリ２４０は、ロボット１００を制御するためのロボット制御プログラムの他、制御に用いられる様々なパラメータ値、関数、ルックアップテーブル等を記憶している。
【００２５】
制御装置２００は、ロボット１００における把持対象物の把持を行う動作を制御する。すなわち、制御装置２００は、把持対象物の把持を行うための様々な演算を行い、その演算結果に基づいて、マニピュレータ２３０及び駆動輪ユニット２１０へ駆動信号を送信する。制御装置２００は、ロボット１００における把持対象物の把持を行う動作を制御する制御モードとして、位置制御により制御する第１の制御モードとインピーダンス制御により制御する第２の制御モードの２つを備えている。マニピュレータ２３０にかかる力の検出は、衝撃検知部２２１により行う。
【００２６】
第１の制御モードでは、把持対象物の位置にマニピュレータ２３０を精度良くアプローチさせることができる。しかしながら、第１の制御モードでは、把持対象物へのアプローチの途中で障害物などによりマニピュレータ２３０に衝撃が及ぼされた場合に、衝撃を和らげるようにマニピュレータ２３０を回避させることができない。一方、第２の制御モードでは、マニピュレータ２３０に衝撃が及ぼされた場合に、衝撃を和らげるようにマニピュレータ２３０を回避させることができる。しかしながら、第２の制御モードでは、把持対象物の位置にマニピュレータ２３０を精度良くアプローチさせることができない。そこで、本実施形態に係る制御装置２００では、ロボット１００が把持対象物の把持を行う動作を制御において、第１の制御モードと第２の制御モードを適宜切替えするようにする。
【００２７】
次に、制御装置２００において、ロボット１００が把持対象物の把持を行う動作を制御する処理の流れについて説明する。
図３は、制御装置２００において、ロボット１００が把持対象物の把持を行う動作を制御する処理の流れについて説明するフローチャートである。図３に示すように、まず、制御モードを第１の制御モードに設定し、把持対象物の把持動作を開始する（ステップＳ１０１）。
【００２８】
ステップＳ１０１に続いて、衝撃検知部２２１が衝撃を検出したか否か判定する（ステップＳ１０２）。ステップＳ１０２で衝撃検知部２２１が衝撃を検出したと判定された場合、制御モードを第２の制御モードに切替えて衝撃を和らげる方向に回避するようロボット１００を動作させる（ステップＳ１０３）。
【００２９】
ステップＳ１０３に続いて、衝撃を和らげる方向への回避が完了したか否かを判定する（ステップＳ１０４）。ステップＳ１０４で衝撃を和らげる方向への回避が完了したと判定された場合、ロボット１００の制御モードを第１の制御モードに切替え、把持対象物の把持を再度試みる（ステップＳ１０５）。なお、前回の把持対象物の把持における衝撃を検出した際のマニピュレータ２３０の所定の位置の座標情報をメモリ２４０（図２参照）に記憶させておき、把持対象物の把持を再度試みるにあたり、当該座標情報を考慮するようにしてもよい。ここで、マニピュレータ２３０の所定の位置は、例えばマニピュレータ２３０の先端部である。このように、前回の把持の試みにおける情報を生かすことで、今回の把持の試みにおける成功率を高めることができる。
【００３０】
ステップＳ１０２で衝撃検知部２２１が衝撃を検出されていないと判定した場合、把持対象物の把持に成功したか否かを判定する（ステップＳ１０６）。ステップＳ１０６において把持対象物の把持に成功していないと判定された場合、処理をステップＳ１０２に戻す。ステップＳ１０６において把持対象物の把持に成功したと判定された場合、処理を終了する。
【００３１】
次に、図３のステップＳ１０３における回避する処理について具体的に説明する。図４は、図３のステップＳ１０３の処理の一例について示す模式図である。図４の上段に示すように、マニピュレータ２３０のロボットハンド１４０が把持対象物としてのコップＷ１を把持しようとして、障害物としての棚Ｗ２にぶつかったとする。このとき、衝撃検知部２２１（図２参照）がマニピュレータ２３０に衝撃が及ぼされたことを検出する。マニピュレータ２３０をコップＷ１にこれ以上近づけようとすると衝撃が大きくなる。このため、制御装置２００（図２参照）は、制御モードを第２の制御モードに切替えて、図４の下段に示すように、衝撃を和らげる方向Ｄ１に回避するようにロボット１００を動作させる。
【００３２】
次に、図３のステップＳ１０４における回避が完了したか否か判定する処理について具体的に説明する。図５は、図３のステップＳ１０４における回避が完了したか否か判定する処理の一例について示す模式図である。図５に示すように、制御装置２００（図２参照）は、マニピュレータ２３０の所定の位置Ｐ１が、把持対象物であるコップＷ１から所定の距離Ｌ１以上離れたときに、第１の制御モードに切替えて把持対象物の把持を再度試みる。ここで、マニピュレータ２３０の所定の位置は、例えばマニピュレータ２３０の先端部である。
【００３３】
なお、衝撃検知部２２１が衝撃を検出しなくなった時点で回避が完了したと判定するようにしてもよいが、上述したように、マニピュレータ２３０と把持対象物との距離が所定の距離以上離れた時に回避が完了したと判定する方が好ましい。これは、マニピュレータ２３０と把持対象物との距離が近い状態で第１の制御モードに切替えて把持対象物の把持を再度試みた場合、衝撃を受けた障害物（ここでは棚Ｗ２）に再び衝突し衝撃を受けてしまう可能性が高いからである。把持対象物から所定の距離以上離れたときに把持対象物の把持を再度試みることで、再度の試みにおいて成功率を高めることができる。
【００３４】
以上より、本実施形態に係る制御装置２００では、衝撃検知部２２１が衝撃を検出するまでは第１の制御モードでロボット１００の制御を行い、衝撃検知部２２１が衝撃を検出した時にインピーダンス制御に切替えて衝撃を和らげる方向へ回避する。そして、回避が完了した後に、前記第１の制御モードに切替えて把持対象物の把持を再度試みる。まず、第１の制御モードで把持対象物の把持動作を開始させることで、把持対象物の周辺に障害物がない場合に把持対象物へのアプローチを精度良く行うことができる。また、マニピュレータ２３０に衝撃が及ぼされた場合に第２の制御モードに切替えることで、衝撃を和らげることができる。さらに、衝撃を和らげる方向への回避が完了した後に、第１の制御モードに切替えることで、把持対象物の把持を再度の試みにおいて把持対象物へのアプローチを精度良く行うことができる。
【００３５】
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。上記実施の形態では、制御装置がロボットに組み込まれた構成について説明したが、制御装置をロボットとは別体として構成してもよい。
【００３６】
図６は、制御装置２００をロボット１００とは別体として構成した例を示す模式図である。図６に示すように、制御装置２００からの制御信号は、インターネット６００に接続されたシステムサーバ５００を介して、ロボット１００に送信される。ロボット１００及び制御装置２００は、無線ルータ７００を介してインターネット６００と接続されている。ここで、システムサーバ５００を接続するネットワークはインターネットに限らず、イントラネット等他のネットワークであっても構わない。
【符号の説明】
【００３７】
１００  ロボット
１１０  台車部
１１１  駆動輪
１１２  キャスター
１２０  本体部
１２１  環境カメラ
１２３  表示パネル
１３０  ロボットアーム
１３１  関節部
１３２  アクチュエータ
１３３  力センサ
１３４  回転センサ
１４０            ロボットハンド
１４０ａ  第１フィンガー
１４０ｂ  第２フィンガー
１４１  ハンドカメラ
１４２  アクチュエータ
１４３  力センサ
１９０  コントロールユニット
２００  制御装置
２１０  駆動輪ユニット
２２０  センサユニット
２２１  衝撃検知部
２３０  マニピュレータ
２４０  メモリ
５００  システムサーバ
６００  インターネット
７００  無線ルータ
【図１】
2020082199.tif 000003
【図２】
2020082199.tif 000004
【図３】
2020082199.tif 000005
【図４】
2020082199.tif 000006
【図５】
2020082199.tif 000007
【図６】
2020082199.tif 000008