(57)【要約】【課題】  ロボットハンドの指部による対象物への把持形態を複数記憶させ、組立て動作や異常検知時に対応した把持を可能にするロボットハンドを提供する。【解決手段】  本発明のロボットハンドは、指部１１１ａ〜１１１ｃで対象物を把持する際、目的の異なる２種類以上の把持形態テーブル３００もしくは６００に基づいて、ＣＰＵ１３３により指部１１１ａ〜１１１ｃを制御する。【選択図】  図３
2019010723.tif 000002
【特許請求の範囲】
【請求項１】
３つ以上の指部を備え、前記指部によって対象物を把持するロボットハンドにおいて、
前記ロボットハンドを制御する制御手段を備え、
前記制御手段は、
前記ロボットハンドにより前記対象物を把持し、前記指部のうち１つ以上の指部を、把持された前記対象物が、前記ロボットハンドにより移動させられる方向とは逆の方向に移動することを規制する規制手段として用いることを特徴とするロボットハンド。
【請求項２】
請求項１に記載のロボットハンドにおいて、
前記制御手段は、
前記ロボットハンドにより前記対象物を把持し、他の対象物に組付ける際、前記指部のうち１つ以上の指部を、把持された前記対象物が組み付けられる方向とは逆の方向に移動することを規制する規制手段として用いることを特徴とするロボットハンド。
【請求項３】
請求項２に記載のロボットハンドにおいて、
前記制御手段は、
前記規制手段として用いた、前記指部のうち１つ以上の指部により、把持した前記対象物を前記他の対象物へ押し込むことを特徴とするロボットハンド。
【請求項４】
請求項１に記載のロボットハンドにおいて、
前記制御手段は、
前記ロボットハンドにより前記対象物を把持した際、前記指部のうち１つ以上の指部を、前記対象物が重力方向に移動することを規制する規制手段として用いることを特徴とするロボットハンド。
【請求項５】
請求項１に記載のロボットハンドにおいて、
前記規制手段として用いた、前記指部のうち１つ以上の指部には力検出手段が備えられ、
前記力検出手段の検出値に基づいて、前記対象物に対する前記指部の接触位置を変化させることを特徴とするロボットハンド。
【請求項６】
請求項１に記載のロボットハンドにおいて、
前記制御手段は、
前記対象物を把持するための複数の把持形態を有し、
前記指部のうち１つ以上の指部を前記規制手段として用いる把持形態とは別の把持形態で前記対象物を把持し、
前記対象物を所定の位置まで搬送したら、前記指部のうち１つ以上の指部を前記規制手段として用いる把持形態に切り換えることを特徴とするロボットハンド。
【請求項７】
請求項１に記載のロボットハンドにおいて、前記指部は前記対象物の保持または吸着を行うことを特徴とするロボットハンド。
【請求項８】
３つ以上の指部を備え、前記指部によって対象物を把持するロボットハンドにおいて、
前記指部の異常を検出する異常検出手段と、
前記ロボットハンドを制御する制御手段を備え、
前記制御手段は、
前記異常検出手段により異常が検出された１つ以上の指部を、前記対象物に対する把持動作に干渉しない所定の退避位置へと退避させることを特徴とするロボットハンド。
【請求項９】
請求項８に記載のロボットハンドにおいて、
前記指部を固定する固定部と、
前記固定部に前記指部を固定するための台座部と、を備え、
前記制御手段は、
前記台座部により前記異常が検出された１つ以上の指部を前記固定部に固定することを特徴とするロボットハンド。
【請求項１０】
請求項８に記載のロボットハンドにおいて、
前記指部は、前記ロボットハンドと分離でき、
前記異常が検出された１つ以上の指が前記ロボットハンドと分離されることを特徴とするロボットハンド。
【請求項１１】
請求項１に記載のロボットハンドにおいて、
前記３つ以上の指部を独立して、互いに接近または離間させる駆動機構と、
前記３つ以上の指部のうち、２つ以上の指部の接近または離間の方向を変更するために、前記２つ以上の指部を旋回させる旋回機構と、を備え、
前記制御手段は、前記駆動機構と前記旋回機構により前記対象物に対する前記指部の接触位置を制御することを特徴とするロボットハンド。
【請求項１２】
請求項１に記載のロボットハンドをロボットアームに備えたロボット装置。
【請求項１３】
３つ以上の指部を備え、前記指部によって対象物を把持するロボットハンドの制御方法において、
前記ロボットハンドは、
前記３つ以上の指部を独立して、互いに接近または離間させる駆動機構と、
前記３つ以上の指部のうち、２つ以上の指部の互いに接近または離間する方向を変更するために、前記２つ以上の指部を旋回させる旋回機構と、
前記駆動機構と前記旋回機構とを制御する制御手段と、を備え、
前記指部のうち少なくとも２つの指部を用いて前記対象物を把持する把持工程と、
前記把持工程において把持された前記対象物を移動させる際、前記指部のうち１つ以上の指部により、把持された前記対象物が、前記ロボットハンドにより移動させられる方向とは逆の方向に移動することを規制する規制工程と、を備えていることを特徴とするロボットハンドの制御方法。
【請求項１４】
請求項１３に記載の制御方法において、
把持された前記対象物を他の対象物に組付ける際、前記指部のうち１つ以上の指部により、把持された前記対象物が組み付けられる方向とは逆の方向に移動することを規制しながら組み付ける組付工程と、を有することを特徴とする制御方法。
【請求項１５】
請求項１３に記載のロボットハンドの制御方法において、
前記制御手段は、
前記対象物を把持するための複数の把持形態を有し、
前記指部のうち１つ以上の指部を前記規制手段として用いる把持形態とは別の把持形態で前記対象物を把持する工程と、
前記対象物を所定の位置まで搬送する搬送工程と、
前記指部のうち１つ以上の指部を前記規制手段として用いる把持形態に切り換える切換工程と、を有することを特徴とするロボットハンド。
【請求項１６】
請求項１３に記載の制御方法において、
前記対象物の移動を規制している前記指部のうち１つ以上の指部により、把持した前記対象物を前記他の対象物へ押し込む押込工程と、を有することを特徴とする制御方法。
【請求項１７】
請求項１３に記載の各工程を前記ロボットハンドに実行させるための制御プログラム。
【請求項１８】
請求項１６に記載の制御プログラムを格納した、コンピュータで読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットハンド、ロボット装置、ロボットハンドの制御方法に関する。
【背景技術】
【０００２】
近年、垂直多関節アーム、エンドエフェクタ、及びこれらを制御する制御装置を備えたロボット装置が開発されている。この種のロボット装置では、エンドエフェクタとして、複数の指部を備えたロボットハンドを用いることで、複数種類の対象物に適応した把持を行う。
【０００３】
特許文献１には、３本以上の指部を有するロボットハンドにおいて、２本以上の指部を旋回移動させることで、ワークの位置・姿勢・形状等にフレキシブルに対応可能なロボットハンドに関する技術が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１３−１４６７９８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１に記載の技術によれば、旋回する２本以上の指部を用いて多種ワークの位置・姿勢・形状に対応した把持を行っているが、挿入といったロボット本体の動作に対応した把持には言及していない。そのため、把持したワークを挿入させる際に反力により、把持したワークに挿入方向とは反対の方向へ滑りが生じる場合、特許文献１で対応するには把持力を強くするしかない。しかし、把持したワークの剛性が弱い把持ワークが損傷してしまう危険性があり、また滑りによる位置ずれで組立不良、ワーク損傷、工程の中断等が生じる。
【課題を解決するための手段】
【０００６】
上述した課題を解決するために、本発明は、３つ以上の指部を備え、前記指部によって対象物を把持するロボットハンドにおいて、前記ロボットハンドを制御する制御手段を備え、前記制御手段は、前記ロボットハンドにより前記対象物を把持し、前記指部のうち１つ以上の指部を、把持された前記対象物が、前記ロボットハンドにより移動させられる方向とは逆の方向に移動することを規制する規制手段として用いることを特徴とするロボットハンドを採用した。
【発明の効果】
【０００７】
本発明によれば、ロボットハンドによるワークの把持において、挿入といったロボット本体による特定の動作にも対応した把持形態をとることができる。さらに、ロボットハンドに異常が生じてもロボット装置の稼働を止めることのない把持形態により把持、搬送を継続することが可能となる。
【図面の簡単な説明】
【０００８】
【図１】本発明の第１の実施形態に係るロボット装置の概略構成図とロボットハンド本体の概略構成図である。
【図２】本発明の第１の実施形態に係るロボット装置の全体を表すブロック図である。
【図３】本発明の第１の実施形態に係る把持形態テーブルを表す図である。
【図４】本発明の第１の実施形態に係る把持形態テーブルに対応した模式図である。
【図５】本発明の第１の実施形態に係る把持処理のフローチャート図である。
【図６】本発明の第１の実施形態に係る規制指に力検出手段を備えた場合の把持形態の図である。
【図７】本発明の第１の実施形態に係る把持処理における把持形態の切換を示したフローチャート図である。
【図８】本発明の第１の実施形態に係る規制指により把持した対象物を別の対象物へ押し込む場合の把持形態の図である。
【図９】本発明の第１の実施形態に係る重力方向に対して把持した対象物を規制する場合の把持形態の図である。
【図１０】本発明の第１の実施形態の変形例に係るロボット装置の全体を表すブロック図である。
【図１１】本発明の第１の実施形態の変形例に係る把持形態テーブルを表す図である。
【図１２】本発明の第１の実施形態の変形例に係る把持形態テーブルに対応した模式図である。
【図１３】本発明の第１の実施形態の変形例に係る把持処理のフローチャート図である。
【図１４】本発明の第１の実施形態の変形例に係る各指部の把持形態テーブルを表す図である。
【図１５】本発明の第１の実施形態の変形例に係る指部が増えた場合の把持形態テーブルを表す図である。
【図１６】本発明の第２の実施形態に係るロボット装置の概略構成図とロボット装置全体のブロック図である。
【図１７】本発明の第２の実施形態に係るロボットハンド本体の模式図と指固定部と指検知部の詳細図である。
【図１８】本発明の第２の実施形態に係る把持処理のフローチャート図である。
【図１９】本発明の第２の実施形態に係る指部の退避処理を表す模式図である。
【図２０】本発明の第２の実施形態に係る指部の固定処理を表す模式図である。
【図２１】本発明の第３の実施形態に係るロボット装置の全体を表すブロック図である。
【発明を実施するための形態】
【０００９】
以下、添付図面を参照して本発明の実施形態に係るロボット装置及びロボット装置の制御方法について説明する。なお、以下に示す実施形態はあくまでも一例であり、例えば細部の構成については本発明の趣旨を逸脱しない範囲において当業者が適宜変更することができる。また、実施形態で取り上げる数値は参考数値であって、本発明を限定するものではない。
【００１０】
＜第１の実施形態＞
図１（ａ）、（ｂ）はそれぞれロボット装置１００の概略構成図、ロボットハンド本体１１０の概略構成図である。
【００１１】
図１（ａ）に示すロボット装置１００は、ロボットハンド本体１１０とロボットアーム本体１２０と制御装置１３０で構成される。ロボットアーム本体１２０は、本実施形態では、先端にエンドエフェクタとしてロボットハンド本体１１０を装着している。このロボットハンド本体１１０を介して、ワークに対して操作を行う。また、ロボットアーム本体１２０にはロボットアーム用関節１２１ａ、１２１ｂ、１２１ｃが設けられる。また、上記各関節には、各関節を各々駆動する駆動源としてモータ（不図示）が設けられている。上記ロボットアーム本体１２０とロボットハンド本体１１０を制御装置１３０で制御する。
【００１２】
図１（ｂ）より、ロボットハンド本体１１０は、３つの指部１１１ａ、１１１ｂ、１１１ｃで構成される。太線で示した座標系はロボットハンド本体１１０全体の座標系（ＸＹＺ）である。指部１１１ａは他の指部と互いに独立して接近または離間させるための駆動機構（以下開閉用関節と呼称）１１２ａを有し、把持対象物の解放、拘束に用いられる。また、指部１１１ａの根元には、旋回を行う旋回機構（以下旋回用関節と呼称）１１３ａが設けられ、多様な把持対象物を把持するときに把持形態を変えるために用いられる。指部１１１ｂ、１１１ｃにも同様に開閉用関節１１２ｂ、１１２ｃ、旋回用関節１１３ｂ、１１３ｃが設けられている。
【００１３】
図２はロボット装置１００の全体の制御ブロック図である。同図において各指部の開閉用関節１１２ａ〜１１２ｃ、旋回用関節１１３ａ〜１１３ｃは、駆動源となるモータ１１４、減速機１１５が各々設けられている。さらに各々のモータ１１４の回転角度を検知するエンコーダ１１６が設けられている。制御装置１３０は、データ送受信部１３１、ＣＰＵ１３３、メモリ１３４、で構成される。
【００１４】
データ送受信部１３１は、ロボットハンド本体１１０およびロボットアーム本体１２０との通信インターフェースである。ロボットハンド本体１１０およびロボットアーム本体１２０の各々のモータ１１４への制御パラメータの送受信を行う。なお、送受信した制御パラメータは、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）などのワークメモリ（不図示）に展開されている。なお、本実施形態では各関節のモータ１１４に対する制御パラメータとして主に駆動電流を用いる。
【００１５】
なお、制御パラメータは、指部の動作に関連し、その値が変化するパラメータであればこれに限定されない。例えば、各関節のグリス量やグリス劣化指数、各指部のモータの回転角度、モータのトルク数、振動数、応力値など必要に応じて扱うことも考えられる。
【００１６】
ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１３３は、ロボット装置１００が有する各機能部を制御する。具体的には、メモリ１３４に格納されたプログラムがＲＡＭなどのワークメモリ（不図示）に展開され、これをＣＰＵ１３３が実行することにより、上述の各機能部が制御される。なお、本実施形態では上述の各機能部はＣＰＵ１３３の動作として実現されてもよい。その場合、メモリ１３４に格納されたプログラムは、上述の各機能部の機能を含む。
【００１７】
メモリ１３４は、ロボット装置１００を構成する各機能部で使用する制御パラメータやＣＰＵ１３３により実行されるロボットハンド本体およびロボットアーム本体の制御プログラムを保存する。本実施形態では、制御プログラムは後述の把持形態に紐づけられ、把持形態テーブルとなってメモリ１３４に格納されているのものとする。
【００１８】
図３に、本実施形態に係る把持形態テーブル３００を示す。本実施形態では、把持形態を識別し管理するための把持データ番号がある。そして、制御プログラム番号、対象物の種類、把持に必要な指の数、制御プログラム優先度、把持対象物を滑らないようにするための規制指位置の要素をまとめたものを１つの把持パターンとしている（３０１，３０２）。
【００１９】
把持データ番号は、把持形態テーブル３００の行要素選択に用いる。すなわち、把持形態の選択に用い、把持データ番号を選択することで把持形態が確定する。本実施形態では、把持データ番号１，２で示される２種の把持形態について制御用のデータが格納されている。
【００２０】
制御プログラム番号は、本実施形態の把持工程を実施するための制御プログラムを一意に表す数値で表される。対象物の種類は、ロボットハンド本体１１０で把持を行う対象物の種類を示す。本実施形態では、ワークＥを扱うものとする。
【００２１】
把持に必要な指部数は、対象物を把持するために必要な指部の数である。本実施形態では、ロボットハンド本体１１０の指部の数が３であるため３以下、且つ指部が１の場合は把持出来ないものとする。従って、把持に必要な指部数として、３または２の数値を設定している。
【００２２】
規制指位置は、把持した対象物を別の対象物へ挿入する場合に、把持した対象物が挿入方向とは逆の方向に滑らないように、１つ以上の指部を、把持した対象物を挿入時に規制指として使用する場合の把持形態である。ここで本実施形態における規制指位置とは、規制指以外の指部による把持、移動等の動作に影響を及ぼさない（干渉しない）位置である。
【００２３】
また規制指位置は、図１（ｂ）に記載の、太字矢印で表されるロボットハンド本体１１０の全体の座標系を用い、予めロボットハンド本体１１０を動かして教示した設定値（Ｘ、Ｙ、Ｚ、Ａ、Ｂ、Ｃ）で表される。本実施形態ではＸ、Ｙ、Ｚは位置座標、Ａ、Ｂ、Ｃは回転角度で表すものとする。
【００２４】
なお、把持形態テーブル３００内の把持形態の構成要素、要素の内容に関してはこれに限定されない。例えば対象物毎に制御プログラムを用意し、制御プログラムの中で規制指位置を別途設定することも考えられる。
【００２５】
以下、本実施形態におけるロボット装置１００の把持動作について詳細に説明する。本実施形態では、対象物であるワークＥには、別の位置に搬送する工程と、別の対象物ワークＥ’に挿入する工程の２種類がある場合について説明する。
【００２６】
図４に、把持形態に応じた対象物（ワークＥ）とロボットハンド本体１１０の状態を表した模式図を示す。図４（ａ）は、把持データ番号１で示す把持形態３０１の制御プログラムを実行し、ワークＥを均等把持した例を表す。また、図４（ｂ）は、把持データ番号２で示す把持形態３０２の制御プログラムを実行し、ワークＥを指部１１１ａと１１１ｂで把持している。そしてワークＥをワークＥ’へ挿入する際に受ける反力によって、ワークＥが挿入する方向と反対の方向へ滑らないように指部１１１ｃで、ワークＥの移動を規制する規制手段として機能させた例を表す。
【００２７】
図４（ｃ）は図４（ｂ）のときの挿入時のロボットハンド本体１１０とワークＥの斜視図を示す。ワークＥはワークＥ’の嵌合穴Ｈに対して矢印Ｐ方向に挿入される。その際、ワークＥが挿入方向とは逆方向に滑らないように指部１１１ｃが規制手段として機能している。すなわちワークＥに対する把持は指部１１１ａ，１１１ｂによって行い、指部１１１ｃは把持には寄与していない。このようにワークＥはロボット装置１００による動作条件等によって異なる２種類の把持パターンを有する。
【００２８】
図５は、本実施形態における各指部１１１ａ〜１１１ｃのワークＥに対する把持処理に関するフローチャートである。まず対象物としてワークＥを選択し、ワークＥに対して規制指を用いるか否かは、ワークＥの形状、組立作業の内容に応じて教示の際に、あるいは作業工程のプログラミング時に設定されているものとする。
【００２９】
また、制御パラメータはデータ送受信部１３１をインターフェースとして、ロボットハンド本体１１０及びロボットアーム本体１２０と制御装置１３０の間で、一定間隔で送受信されているものとする。なお、図５に記載のフローチャートで示す制御はＣＰＵ１３３により実行される。
【００３０】
まず、ロボットハンド本体１１０をロボットアーム本体１２０によりワークＥの把持直前位置まで移動させる（Ｓ５０１）。
【００３１】
そしてＳ５０２でワークＥに対して規制指が必要かどうか判定する。必要ならＳ５０６（挿入動作）へ、不必要ならＳ５０３（搬送動作）へ進む。
【００３２】
本実施形態では、説明の便宜上、ワークＥに対して規制指が必要な場合として挿入動作、不必要な場合として搬送動作を例にして説明するが、実際には工程によって種々の作業が存在するので、Ｓ５０２では種々の作業に合わせて処理を行う。なお作業に対して規制指が必要かどうかは教示あるいは作業工程のプログラミング時に設定されているものとする。
【００３３】
Ｓ５０２でワークＥに対して規制指が必要ではないと判定した場合、図３に記載の把持形態テーブル３００から把持データ番号１の制御プログラムが選択される。すなわち、把持形態３０１（図４（ａ））が選択される（Ｓ５０２：Ｎｏ）。
【００３４】
その後、ＣＰＵ１３３は、把持形態テーブル３００から把持データ番号１を選択し、把持形態３０１に対応する制御プログラムをメモリ１３４から読み出す（Ｓ５０３）。
【００３５】
そして、不図示のワークメモリに展開し、把持形態３０１の制御プログラム１を実行し、指部１１１ａ〜１１１ｃで把持（図４（ａ））を行う（Ｓ５０４）。
【００３６】
そしてＳ５０５で、ワークＥを所定の位置に搬送し、把持動作を終了する。ここで、所定の位置とは教示者が設定した位置であり、ロボットアーム本体１２０に搭載した不図示のモータの回転軸あるいは関節の駆動伝達系の回転位置を検出するエンコーダの出力から判定する。
【００３７】
Ｓ５０２でワークＥに対して支持指が必要であると判定した場合、図３に記載の把持形態テーブル３００から把持データ番号２の制御プログラムが選択される。すなわち、把持形態３０２（図４（ｂ））が選択される（Ｓ５０２：Ｙｅｓ）。
【００３８】
その後、ＣＰＵ１３３は、把持形態テーブル３００から把持データ番号２を選択し、把持形態３０２に対応する制御プログラムをメモリ１３４から読み出す（Ｓ５０６）
次に、ＣＰＵ１３３は、把持形態３０２の規制指位置（図４（ｂ）（ｃ））に指部１１１ｃを移動させる。その際、一旦、すべての指部１１１ａ、１１１ｂ、１１１ｃを、原点位置に移動させる。そして、指部１１１ｃを、予め教示した座標値と回転角で表される支持指把持位置（Ｘ１、Ｙ１、Ｚ１、Ａ１、Ｂ１、Ｃ１）へ移動させることで、指部１１１ｃの移動が完了する（Ｓ５０７）。
【００３９】
次に、ＣＰＵ１３３は、把持形態３０２の制御プログラム２を実行し、指部１１１ａ〜１１１ｃで把持（図４（ｂ）（ｃ））を行う（Ｓ５０８）。
【００４０】
そして、規制指１１１ｃによって、反力によりワークＥが挿入方向と逆方向に滑らないように各指部に対するワークＥの位置を規制しながら挿入を行う制御プログラムを実行する（Ｓ５０９）。そして、ワークＥをワークＥ’に挿入し、動作を終了する。
【００４１】
本実施形態では、把持形態３０２に予め設定された規制指位置（Ｘ１、Ｙ１、Ｚ１、Ａ１、Ｂ１、Ｃ１）で、ワークＥの挿入の補助を行うが、この限りではない。例えば、規制指位置を他の指の位置に応じて動的に変更することも考えられる。
【００４２】
その場合図６（ａ）のように規制指１１１ｃの指先に反力を検出する力検出手段８００を設ける。力検出手段８００の検出値が所定の値となった場合、図６（ｂ）のように規制指１１１ｃとワークＥとの接触位置を検出値が小さくなる方向へずらし、効果的にワークＥの挿入の補助を行っても良い。
【００４３】
また、上述した把持形態の切換は教示者の設定（Ｓ５０２）で行っていたが、把持形態３０１により所定の位置まで搬送したことを条件として、把持形態３０２に切換えても良い。図７はその際のフローチャートである。図５と区別するため各ステップの番号にダッシュを付けている。
【００４４】
図５と大きく違う点は、Ｓ５０２が無くなり、把持形態の切換条件としてＳ５０５’で行っている点である。
【００４５】
Ｓ５０５’では把持形態３０１で所定の位置までワークＥを搬送したかどうか判定する。Ｓ５０５’ＮＯならば再度搬送動作を繰り返す。Ｓ５０５’ＹＥＳならばワークＥをＳ５０６’でワークＥを所定の位置に載置し、Ｓ５０７’で把持形態３０２を選択し、ワークＥの挿入動作を行う。
【００４６】
以上により、ワークＥの搬送動作と、挿入動作を連続して行うことができ、生産効率の向上を図ることができる。
【００４７】
また、規制指１１１ｃによりワークＥをワークＥ’へ押込んでも良い。図８（ａ）はその際の把持形態の模式図、図８（ｂ）は斜視図である。
【００４８】
本実施形態ではロボットハンド１１０によりワークＥを移動させて挿入動作を行うが、ロボットハンド本体１１０を構成する機構により少なからず振動等のブレが生じる。しかし、規制指１１１ｃによりワークＥをワークＥ’に押し込むことで、ロボット本体１１０を動作させることで生じる振動をキャンセルすることができ、精度の高い挿入動作を行うことができる。
【００４９】
また、上記ではワークＥの組付動作によるワークＥの移動の規制を行っていたが、それに限らない。図９はワークＥをロボットハンド１１０により把持し、持ち上げる際に重力方向ＧにワークＥが移動すること指部１１１ｃにより規制している図である。
【００５０】
図９（ａ）（ｂ）より、指部１１１ｃをワークＥの下側に配置する。こうすることでワークＥを高速で持ち上げる際、慣性によりワークＥが重力方向Ｇへ移動することを規制する。これによりワークＥの搬送をさらに高速化することができる。
【００５１】
また、上述した制御方法は指部１１１ｃを規制指として用いているが、用途により指部１１１ａ、１１１ｂを、規制指として用いても良い。その場合は、指部１１１ａ、１１１ｂに規制指位置の情報を紐づけた把持形態を予め把持パターンテーブル３００に格納しておく。
【００５２】
さらには、不図示の撮像装置をロボット装置１００に設け、把持対象となるワークによって規制指位置を適宜変更しても良い。
【００５３】
なお、本実施形態では、把持工程に限定して記載したが、複数の指部を用いて対象物の位置を移動させる動作であればこれに限定されない。例えば、対象物の保持工程、吸着工程にも応用できることが考えられる。
【００５４】
上記における保持工程は、把持のように対象物を握った状態ではないが移動することを意味する。従って、板状の対象物を載せるような搬送工程においても、把持を保持と読み替えて実施することが可能である。なお、保持機構については本発明の主題ではないため説明は省略する。例えば、特開２００８−２０７２６３号公報に記載の保持機構を用いることが考えられる。
【００５５】
吸着工程の場合は、各指部１１１に不図示の吸着部やシリンダーアセンブリを設けることで、本実施形態の把持を吸着に置き換えて実現することが可能となる。なお、吸着機構については本発明の主題ではないため説明は省略する。例えば、特開２０１５−１６８０３９号公報に記載の吸着機構を用いることが考えられる。
【００５６】
また、把持、保持、吸着を組み合わせた対象物の移動工程に使用することも容易に考えられる。
【００５７】
以上本実施形態より、対象物の位置・姿勢・形状に対応した把持形態だけでなく、挿入といったロボット本体の動作にも対応した把持形態を使い分けることができる。その結果対象物を強い把持力で把持することなく滑りを低減することができる。こうすることで、ワークの損傷の危険性を低減しつつ、高精度な組み付けを行うことができ、ワークの持ち換えといったさらにフレキシブルな把持を行うことが可能となる。
【００５８】
また、上記実施形態では指部が３つの場合で説明したが、これに限られず４つ以上の場合でも構わない。
【００５９】
＜変形例＞
また、上述の実施形態は対象物の挿入といったロボット本体による組立て動作に対応した把持形態を使い分けることでフレキシブルな把持に対応していた。しかしながら、本発明は組立て動作だけでなく指部が異常をきたした際でも、実施することができる。
【００６０】
例えば、ロボットハンド本体の指部の一部が異常時の際には、異常となった指部に関連する制御値を変更することで、動作の継続が可能となる。しかし、特許文献１に記載の技術では全ての指が連動して開閉するため、異常な駆動をする指が把持に関与してしまう。その結果、旋回する２本の指のみで把持できる対象物があっても、指部修理のためにロボット装置全体を停止する必要があり、装置の稼働率が低下する。
【００６１】
そこで、指部が異常をきたした際に対応した把持形態を使い分ける把持動作の制御方法を例示する。この制御方法は異常をきたしても直ぐには修理を施せないロボット装置において有効である。
【００６２】
図１０は図２と同様の形式によって上記制御方法を実行するためのロボット装置１００の全体の制御ブロック図を示した図である。対象物の挿入を行う場合の実施形態と異なる部分は制御装置１３０に異常検出部１３２が設けられていることである。以下、詳述する。
【００６３】
異常検出部１３２は、ロボットハンド本体１１０およびロボットアーム本体１２０の異常を検出する。具体的には、メモリ１３４に格納された制御パラメータの閾値とロボットハンド本体１１０およびロボットアーム本体１２０に送信した制御パラメータを比較して、ロボットハンド本体１１０およびロボットアーム本体１２０の異常を検出する。
【００６４】
また、ロボットハンド本体１１０およびロボットアーム本体１２０に送信した制御パラメータとロボットハンド本体１１０およびロボットアーム本体１２０から受信した制御パラメータを比較して、ロボットハンド本体１１０の異常を検出する。
【００６５】
さらに、各指部１１１ａ〜１１１ｃのモータ１１４に供給される駆動電流目標値と各指部１１１ａ〜１１１ｃのモータ１１４に実際に流れる実電流の差分の許容値を表す閾値（以下、異常検知閾値とする）をメモリ１３４に予め格納する。
【００６６】
ここで、駆動電流目標値とは、あるトルクあるいは回転速度等をモータ１１４に出力させる為に必要な電流値を示す。また、モータ１１４に流れる実際の実電流はＡＤコンバータを介して制御装置１３０に取り込まれ、駆動電流目標値と比較され、動作状態が判定される。
【００６７】
そして、モータの駆動電流目標値と実際にモータに流れる実電流の差分が、異常検知閾値を超えた場合、異常検出部１３２は、モータ１１４の異常として検知するものとする。
【００６８】
図１１に、指部の異常を検知した際の把持形態テーブル４００を示す。把持形態テーブル４００は、把持データ番号、制御プログラム番号、対象物の種類、把持に必要な指の数、制御プログラム優先度、指部異常検知時の指部退避位置を把持形態の要素としている。
【００６９】
把持データ番号は、把持テーブル４００の行要素選択に用いる。すなわち、把持データ番号を選択することで対応する把持制御プログラム及び必要な把持データが特定され、把持データ番号１から６で示される６種の把持制御プログラムを有する。制御プログラム番号は、把持工程を実施するための制御プログラムを一意に表す数値で表され、前記把持データ番号と一致した数値が設定されているものとする。
【００７０】
対象物の種類は、ロボットハンド本体１１０で把持を行う対象物の種類を示す。今回は、ワークＡ、ワークＢ、ワークＣを扱うものとする。
【００７１】
把持に必要な指部数は、複数の対象物を把持するために必要な指部の数である。ロボットハンド本体１１０の指部数は３であるため３以下、且つ指部が１の場合は把持出来ないものとする。従って、把持に必要な指部数として、３または２の数値を設定している。
【００７２】
制御プログラム優先度は、把持形態テーブル４００内に同一の対象物に対して制御を行う場合に、どの制御プログラムを優先的に選択するかを表す数値である。数値が低い方の制御プログラムを優先的に選択するものとする。また、制御プログラム毎に、把持に必要な指部の数が異なるように設定している。
【００７３】
指部退避位置は、異常検出部１３２がいずれかの指部の異常を検知した場合に、当該指部を退避する位置を表す。この指部退避位置とは、異常検知した指部を指部退避位置に移動させた場合、正常に動作可能な残りの指部による把持、移動等の動作に影響を及ぼさない位置である。
【００７４】
また指部退避位置は、図１（ｂ）に記載の、太字矢印で表されるハンド全体の座標系を用い、予めロボットハンド本体１１０を動かして教示した位置設定値（Ｘ、Ｙ、Ｚ、Ａ、Ｂ、Ｃ）である。Ｘ、Ｙ、Ｚは位置座標、Ａ、Ｂ、Ｃは回転角度で表すものとする。
【００７５】
なお、把持形態テーブル４００の構成要素、要素の内容に関してはこれに限定されない。例えば把持対象物毎に制御プログラムを用意し、制御プログラムの中で指部退避位置を別途定義することも考えられる。
【００７６】
以下、指部が異常をきたした際のロボット装置１００の把持動作について詳細に説明する。対象物であるワークＡには、指部が異常状態でないときの把持形態）と指部が異常状態であるときの把持形態とを有する。
【００７７】
今回は対象物であるワークＡの把持工程中に、指部１１１ａ内の開閉用関節１１２ａのモータ１１４の異常を検知した場合について説明する。この時、モータ１１４は、所定の駆動電流目標値を制御装置１３０から取得するが、モータに流れる実電流が小さく、モータの回転数不足になることを検知するものとする。言い換えると、指部１１１ａ、１１１ｂ、１１１ｃは各指部のモータ１１４より個別に動作することは可能だが、所望の値を出力することが出来ず、将来的に対象物の把持が出来なくなることを検知するものとする。また、各指部１１１ａ、１１１ｂ、１１１ｃの位置情報は各々の指部が有するエンコーダ１１６により検出できるものとする。
【００７８】
図１２に、異常検知に応じた対象物（ワークＡ）の把持状態を表す模式図を示す。図１２（ａ）は指部が正常な状態における把持形態であり、把持形態４０２の制御プログラムを実行し、ワークＡを把持した例を表す。また、図１２（ｂ）及び図１２（ｃ）は、指部が異常検知した際の把持状態であり、把持形態４０１の制御プログラムを実行し、ワークＡを把持した例を表す。図１２（ｂ）、（ｃ）に記載のとおり、指部が異常検知した際の把持形態には複数の把持パターンが存在する。指部退避位置は各指部に設定されており、異常検知した指部を退避位置に持っていく。
【００７９】
ここで、把持形態４０１に対応した制御プログラムによるロボットハンド本体１１０とロボットアーム本体１２０の動作速度を、把持形態４０２に対応した制御プログラムよりも遅くする。こうすることで、把持形態４０２には劣るが、把持指の数が少ない場合でも、安定した把持搬送動作が可能となる。なお、図１２（ｂ）または図１２（ｃ）のどちらの把持形態を取るかは、ロボットハンドに行わせる作業条件によって適宜選択される。
【００８０】
図１２（ｄ）は、指部１１１ａの退避状態を表す模式図である。同図の状態で図１２（ｂ）または図１２（ｃ）の把持状態を取る。同図では、指部退避位置のＺ成分であるＺ１を、前述の座標系Ｚ軸の負方向に予め教示し、指部１１１ａの開閉用関節１１２ａを動作させる。その結果、他の指部による把持に影響を与えない位置に、指部１１１ａの先端側要素２００を退避することが可能となる。上記のようにワークＡは目的の異なる２種類以上の把持パターンを有する。
【００８１】
図１３は、各指部１１１ａ〜１１１ｃの異常検知時に動作する把持継続処理に関するフローチャートである。まず把持対象物としてワークＡを選択し、指部の異常を検知していない状態にあるとする。このとき、図１１に記載の把持形態の要素である制御プログラム優先度から把持データ番号２の把持形態４０２が選択され、対応する制御プログラムによる把持工程が行われているものとする。
【００８２】
また、制御パラメータはデータ送受信部１３１をインターフェースとして、ロボットハンド本体１１０およびロボットアーム本体１２０と制御装置１３０の間で、一定間隔で送受信されているものとする。
【００８３】
ここで、異常検出部１３２が指部１１１ａ〜１１１ｃのどこかに異常を検知することで図１３に示した本把持継続処理のフローが開始される。まず、異常検出部１３２は、制御パラメータである指部１１１ａ〜１１１ｃのモータ１１４の駆動電流目標値とモータ１１４に生じる実電流をデータ送受信部１３１から取得する。以下では指部１１１ａが異常検知したものとする。
【００８４】
指部１１１ａのモータ１１４の駆動電流目標値とモータ１１４における実電流の差分が、メモリ１３４に保存された電流異常検知差分閾値より大きいと判定されると、当該フローが開始される。同時に、異常検知したことを表す情報（以下、異常検知情報とする）をメモリ１３４に格納する。異常検知情報は指部毎に設けられる２値情報であるとし、異常検知した場合は１、異常検知していない場合は０が格納されているとする。
【００８５】
ＣＰＵ１３３は、メモリ１３４より異常検知の為の情報（異常検知閾値）を取得する。そして、異常検知の為の情報から異常検知した指部を検出する。今回は指部１１１ａの異常を検知したため、指部１１１ａの異常検知有無情報に１が格納される。そして、異常検知有無情報に１が格納された指部数をカウントし、異常検知した指の数を１と判定する（Ｓ９０１）。
【００８６】
次に、ＣＰＵ１３３は、メモリ１３４に格納されている把持形態テーブル４００を参照し、異常検知していない指部数で把持対象物の把持が可能か判定する。まず、把持形態テーブル４００の要素である把持対象物の種類を比較し、一致した把持形態を選択候補とする。そして、異常検知していない指部数と把持形態テーブルの要素である把持に必要な指部数とを比較し、一致した把持形態が存在する場合、把持が可能と判定する。
【００８７】
今回は把持対象物の種類はワークＡ、異常検知していない指部数は２となる。そして、把持対象物の種類と、異常検知していない指部数と把持に必要な指部数が一致した把持形態４０１が存在するため、異常検知していない指部でワークＡの把持が可能と判断する（Ｓ９０２：Ｙｅｓ）。
【００８８】
その後、ＣＰＵ１３３は、把持形態テーブル４００から把持データ番号２を選択し、把持形態６０１に対応する制御プログラムをメモリ１３４から読み出し、不図示のワークメモリに展開する。（Ｓ９０３）。
【００８９】
次に、ＣＰＵ１３３は、把持形態テーブル４０１の指部退避位置（図１２ｄ）に異常検知した指部１１１ａを移動させる。その際、一旦、すべての指部１１１ａ、１１１ｂ、１１１ｃを、原点位置に移動させる。そして、異常検知した指部１１１ａを、予め教示した座標値と回転角で表される指退避位置（Ｘ１、Ｙ１、Ｚ１、Ａ１、Ｂ１、Ｃ１）へ移動させることで、指部１１１ａの退避が完了する（Ｓ９０４）。
【００９０】
今回は、把持形態テーブル４０１に予め設定された指部退避位置（Ｘ１、Ｙ１、Ｚ１、Ａ１、Ｂ１、Ｃ１）を用いて、指部の退避を行うが、この限りではない。例えば、指部退避位置を他の指の位置に応じて動的に変更することも考えられる。
【００９１】
次に、ＣＰＵ１３３は、把持形態テーブル４０１の制御プログラム１を実行し、異常を検知していない２つの指部で把持（図１２（ｂ）または図１２（ｃ））を行う（Ｓ９０５）。
【００９２】
最後に、ロボット装置１００の動作状態を不図示のモニタに表示する（Ｓ９０７）。ＣＰＵ１３３が、指部１１１ａの異常を検知したことを不図示のモニタに表示する。また同時に、把持継続処理を実施していることを不図示のモニタに表示する。なお、上記モニタは、ティーチングペンダントや、ロボット装置の稼動管理を一括して行う装置のモニタなどその種類は限定されない。
【００９３】
次に、上記把持工程中に、さらに指部１１１ｂの異常を検知した場合について説明する。
【００９４】
まず、ＣＰＵ１３３は、指部が１１１ａの異常を検知したときと同様に、異常検知した指を判定する（Ｓ９０１）。
【００９５】
次に、ＣＰＵ１３３は、メモリ１３４に格納されている把持形態テーブルを参照し、異常検知していない指部数でワークＡの把持が可能か判定する。今回は、ワークＡと、異常検知していない指部数と把持に必要な指部数が一致した把持形態は存在しない。従って、異常検知していない指部で把持対象物の把持が不可能と判断する（Ｓ９０２：Ｎｏ）。
【００９６】
そして、ＣＰＵ１３３はロボットハンド本体１１０とロボットアーム本体１２０の停止処理を行う（Ｓ９０６）
最後に、ロボット装置１００の動作状態を不図示のモニタに表示する（Ｓ９０７）。ここでは、ロボットハンド本体１１０とロボットアーム本体１２０が停止したことを不図示のモニタに表示する。
【００９７】
以上の説明は指部１１１ａが異常検知した際の把持継続処理である。無論、異常検知した指部が指部１１１ｂ、指部１１１ｃでも同様に処理可能である。図１４にその場合の把持形態テーブル６００を示す。
【００９８】
図１４に記載された把持形態６０１は異常検知した指部が１１１ａの場合の形態である。同様に把持形態６０２は指部１１１ｂが異常検知した場合、把持形態６０３は指部１１１ｃが異常検知した場合の形態である。把持形態６０４は指部が正常な場合の形態である。
【００９９】
このように異常を検知した指部の種類に応じて、制御プログラムや指退避位置を変更した把持形態を格納しておく。例えば、異常を検知した指部の種類に応じて、ロボットハンド本体１１０およびロボットアーム本体１２０の軌道が変更された制御プログラムを用意することが考えられる。こうすることで、どの指部が異常検知しても把持継続処理を行うことができる。
【０１００】
次に、本実施形態では、ロボットハンド本体１１０の指部数を３として説明したが、これに限定されない。例えば、ロボットハンド本体１１０の指部数が４であるときの把持形態テーブル７００を図１５に示す。
【０１０１】
ここで、図１５に記載された把持形態７０１のように、把持対象物によっては、すべての指部を初めから使用せず、予備の指部を有することも考えられる。例えば、把持対象物の種類をワークＡと設定した場合、指部数４の制御プログラムを用意せず把持形態テーブルを構成し、制御プログラム優先度から指部数３の制御プログラム２が選択されるようにしてもよい。
【０１０２】
また、把持形態７０２のように、任意の指部の異常を検知した際は、予備の指部を把持に使用するよう制御してもよい。この場合は、把持形態７０２の制御プログラム番号はすべて共通とし、把持搬送の速度や、把持位置を一定にすることも考えられる。なお、制御プログラム優先度は一定とし、異常検知した指部に応じて把持データを決定するものとする。この場合は、把持搬送速度が保たれるため、ロボット装置の稼働率の低下をさらに抑制することも可能となる。
【０１０３】
さらには、不図示の撮像装置をロボット装置１００に設け、各指部１１１ａ〜１１１ｃの各指部の位置情報が取得できなくなった場合においても、上述したような把持継続処理を行うことも考えられる。
【０１０４】
なお、把持工程に限定して記載したが、複数の指部を用いて対象物の位置を移動させる動作であればこれに限定されない。例えば、移動対象物の保持工程、吸着工程にも応用できることが考えられる。
【０１０５】
上記における保持工程は、把持のように対象物を握った状態ではないが移動することを意味する。従って、板状の対象物を載せるような移動工程においても、把持継続処理を保持継続処理と読み替えて実施することが可能である。なお、保持機構については本発明の主題ではないため説明は省略する。例えば、特開２００８−２０７２６３号公報に記載の保持機構を用いることが考えられる。
【０１０６】
吸着工程の場合は、各指部１１１ａ〜１１１ｃに不図示の吸着部やシリンダーアセンブリを設けることで、把持工程を吸着工程に置き換えて実現することが可能となる。なお、吸着機構については本発明の主題ではないため説明は省略する。例えば、特開２０１５−１６８０３９号公報に記載の吸着機構を用いることが考えられる。
【０１０７】
また、把持、保持、吸着を組み合わせた対象物の移動工程に使用することも容易に考えられる。
【０１０８】
以上により、ロボット装置１００において指部の異常を検知した場合でも、異常状態における把持形態を設定しておくことでロボット装置を停止することなく把持対象物の把持工程を継続することが可能となる。こうすることで、ロボット装置の稼働率の低下を抑制することができる。
【０１０９】
＜第２の実施形態＞
上述した実施形態は指部の異常と判断するレベルが、モータの実電流と駆動電流目標値の差、つまり、制御に対して動きが鈍くなる程度であり、退避位置に指部を動かす程度には指部が稼働可能の場合である。
【０１１０】
しかし、本実施形態は、指部が完全に停止し、指部の関節に搭載したモータでは退避位置に指部を動かせない場合でも実施可能である。
【０１１１】
以下では、第１の実施形態とは異なるハードウェアや制御系の構成の部分について、図示し説明する。また、第１の実施形態と同様の部分については上術同様の構成ならびに作用が可能であるものとし、その詳細な説明は省略するものとする。また、第１の実施形態と同一ないし同等の部材や制御機能については、同一ないし類似の参照符号表記を用いる。
【０１１２】
図１６に、本実施形態に係るロボット装置１０００の概略構成図と全体のブロック図を示す。なお、図１６（ａ）は、本実施形態に係るロボット装置１０００の概略構成を表す模式図、図１６（ｂ）はその制御ブロック図である。
【０１１３】
図１６（ａ）に記載のロボット装置１０００は、ロボットハンド本体２２０とロボットアーム本体１２０と制御装置１３００、台座部１９００で構成される。
【０１１４】
台座部１９００は、制御装置１３００がロボットハンド本体２２０とロボットアーム本体１２０を操作し、指部１１１ａ、１１１ｂ、１１１ｃを台座部１９００に押し当てることで、指固定部２２１ａ、２２１ｂ、２２１ｃへ固定する処理に用いる。
【０１１５】
図１６（ｂ）より本実施形態におけるロボットハンド本体２２０の概略構成を表すブロック図を示す。ロボットハンド本体２２０は第１の実施形態に記載のロボットハンド本体１１０に指固定部２２１ａ、２２１ｂ、２２１ｃと指検知部２２２ａ、２２２ｂ、２２２ｃが追加される。
【０１１６】
図１７（ａ）はロボットハンド本体２２０の模式図である。図１７（ｂ）は指部が指固定部に固定されたときの模式図である図１７（ｃ）は指固定部と指検知部の詳細図である。
【０１１７】
図１７（ａ）より、指固定部２２１ａ、２２１ｂ、２２１ｃは、指部１１１ａ、１１１ｂ、１１１ｃを固定する機構である。指固定部２２１ａ〜２２１ｃの内部に指検知部２２２ａ〜２２２ｃが設けられる（図１７（ａ）では不図示）。
【０１１８】
同図において、各指部１１１ａ〜１１１ｃには把持対象物と接触する先端部分１１００ａ〜１１００ｃが設けられている。指部先端１１００ａ〜１１００ｃが図１７（ｂ）のように指部固定部２１１ａ〜２１１ｃに固定される。固定可能な位置に到達したら後述の各指検知部２２２ａ〜２２２ｃが検知する。
【０１１９】
指検知部２２２ａ〜２２２ｃは、指部先端１１００ａ〜１１００ｃが、指固定部２２１ａ〜２２１ｃの固定可能な位置に到達したことを検知する。例えば、指検知部として各指部先端１１００ａ〜１１００ｃが各指固定部２２１ａ〜２２１ｃに固定される位置に到達すると光を遮断する位置に設けたフォトセンサを用いることが考えられる。なお、本実施形態では、各指固定部２１１ａ〜２１１ｃと各指検知部２２２ａ〜２２２ｃをロボットハンド本体２２０に設けたが、これに限定されない。例えば、指部先端１１００ａ〜１１００ｃの長さにもよるが、ロボットアーム本体１２０に設けてもよい。
【０１２０】
図１７（ｃ）より、指固定部２２１ａ〜２２１ｃは、公知技術である、指部先端１１００ａ〜１１００ｃに可動する凸型の固定機構１２０１を、指固定部２２１ａ〜２２１ｃに可動しない凹型の固定機構１２０２を設置することで実現している。凸型の固定機構１２０１は押さえ付けられると空洞領域１２０３に格納され、押さえ付けが無くなると飛び出す。この凸型の固定機構１２０１が凹型の固定機構１２０２と合致することで指部先端１１００ａ〜１１００ｂ、つまり指部１１１ａ〜１１１ｃの固定が完了する。なお、固定機構に関しては、指部が固定可能な構成であればこれに限定されない。
【０１２１】
以下、本実施形態におけるロボット装置１０００の動作について図１８、図１９、図２０を用いて詳細に説明する。
【０１２２】
図１８は、本実施形態における指部の異常検知時に動作する把持継続処理に関するフローチャートである。なお、第１の実施形態における指部異常検知時に動作する把持継続処理との差分に関して説明する。
【０１２３】
前提として、把持形態テーブルは、図１１に記載の把持形態テーブル４００を使用するものとする。また、把持対象物としてワークＡを選択し、指部の異常を検知していない状態にあるとする。このとき、図１１に記載の把持形態の要素である制御プログラム優先度から把持データ番号２の把持形態４０２が選択され、制御プログラム２による把持工程が行われているものとする。
【０１２４】
異常検出部１３２は、制御パラメータである指部１１１ａ〜１１１ｃのモータ１１４の駆動電流目標値とモータ１１４に流れる実電流をデータ送受信部１３１から取得する。そして、モータ１１４の駆動電流目標値とモータ１１４に流れる実電流の差分が、メモリ１３４に保存された電流異常差分閾値より大きいと判定して、当該フローが開始される。最後に、異常検知したことを表す情報（以下、異常検知情報とする）をメモリ１３４に格納する。ここでは異常検知した指部は指部１１１ａとする。
【０１２５】
図１８より、ＣＰＵ１３３は、異常検知した指の数を判定する（Ｓ１４０１）。Ｓ９０１と同様の処理となる。
【０１２６】
次にＣＰＵ１３３は、Ｓ１４０２を実行する。Ｓ１４０２はＳ９０２と同様の処理であり、本実施形態でも同様の判定となる（Ｓ１４０２：Ｙｅｓ）。
【０１２７】
次にＣＰＵ１３３は、Ｓ１４０３を実行する。Ｓ１４０３はＳ９０３と同様の処理となる。
【０１２８】
次に、ＣＰＵ１３３は、把持形態４０１の指部退避位置に異常検知した指部１１１ａを移動させる（Ｓ１４０４）。
【０１２９】
図１９は、Ｓ１４０４における指部退避処理を表す模式図である。まず、ロボットハンド本体２２０とロボットアーム本体１２０を動作させ、台座部１９００に異常検知した指部１１１ａの指部先端１１００ａを接触させる（図１９（ａ））。具体的には停止したモータ１１４により動作していた開閉用関節１１２ａの指部先端１１００ａを台座部１９００に接触させる。そして、矢印１１０１の方向にロボットハンド本体２２０を動かす。
【０１３０】
次に、台座部１９００に対して、停止したモータ１１４により動作していた開閉用関節１１２ａを動かし、ロボットハンド本体２２０とロボットアーム本体１２０を動かす。図１９（ｂ）は、図１９（ａ）から指部先端１１００ａが９０度回転した状態である。そして、矢印１１０２の方向にロボットハンド本体２２０を動かす。
【０１３１】
最後に、指固定部２２１ａに指部先端１１００ａが接触し、指部１１１ａが指固定部２２１ａに固定される（図１９（ｃ））。また、指部１１１ａが指固定部２２１ａに固定されたことを指検知部２２２ａが検知し、検知したことを固定完了信号として、データ送受信部１３１に送信する。
【０１３２】
図２０は、本実施形態における指部１１１ａの固定処理を表す模式図である。図２０（ａ）の状態はまだ、指固定部に接触していない状態である。
【０１３３】
図２０（ｂ）より、凸型の固定機構１２０１が指固定部２２１ａに接触すると、凸型の固定機構１２０１は、指部先端１１００ａに設けた空洞領域１２０３に入り込む。
【０１３４】
そして図２０（ｃ）より、凸型の固定機構１２０１と凹型の固定機構１２０２の位置が一致したときに、凸型の固定機構１２０１が空洞領域１２０３から送出されることで、指部１１１ａの固定が完了する。なお、固定機構に関しては、指部が固定可能な構成であればこれに限定されない。
【０１３５】
また、Ｓ１４０４における指部の退避動作は、予めその動作パターンを教示し、各制御プログラム内に指部の退避処理が含まれているものとしている。
【０１３６】
次にＣＰＵ１３３は、Ｓ１４０５を実行する。Ｓ１４０５はＳ９０５と同様の処理となる。
【０１３７】
最後にＣＰＵ１３３は、Ｓ１４０７を実行する。Ｓ１４０７は、Ｓ９０７と同様の処理となる。
【０１３８】
また、制御プログラム１による把持工程中に、さらに指部１１１ｂの異常を予検知した場合については、第１の実施形態と同様の処理となる。
【０１３９】
以上の説明は指部１１１ａが異常検知した際の把持継続処理である。無論、異常検知した指部が指部１１１ｂ、指部１１１ｃでも同様に処理可能である。その場合も第１の実施形態と同様に図１３に記載の把持パターンテーブルを用いる。
【０１４０】
このように異常を検知した指部の種類に応じて、制御プログラムや指退避位置を変更した把持形態を格納しておく。例えば、異常を検知した指部の種類に応じて、ロボットハンド本体１１０およびロボットアーム本体１２０の軌道が変更された制御プログラムを用意することが考えられる。こうすることで、どの指部が異常検知しても把持継続処理を行うことができる。
【０１４１】
なお、本実施形態では、ロボットアーム本体１２０およびロボットハンド本体２２０を動作させて指部を固定したが、これに限定されない。例えば、制御装置１３００と台座部１９００を不図示の制御信号の送受信が可能なように構成する。そして、制御装置１３００が台座部１９００を動作させることで、各指部１１１ａから１１１ｃを各指固定部２２１ａ〜２２１ｃに固定することが考えられる。
【０１４２】
また、台座部１９００の代わりに不図示のロボット装置を別途用意し、当該ロボット装置を動作させることで、各指部１１１ａ〜１１１ｃを各指固定部２２１に固定することも考えられる。制御方法は、台座部１９００を前記ロボット装置に置き換え、同様の動作をさせればよい。
【０１４３】
また、固定部２２１ａ〜２２１ｃと固定検知部２２２ａ〜２２２ｃを第１の実施形態のロボット装置１００に追加することも考えられる。この場合、各固定検知部２２２ａ〜２２２ｃは、各指部１１１ａ〜１１１ｃが各固定部２２１ａ〜２２１ｃに固定されたことを検知し、指退避処理が完了したと判定すればよい。
【０１４４】
以上より、各指部１１１ａ〜１１１ｃのモータ１１４が異常となり、モータ１１４が回転出来ない場合においても、把持対象物の把持工程を継続することが可能となる。こうすることで、ロボット装置の稼働率の低下を抑制することができる。
【０１４５】
＜第３の実施形態＞
上述の第２の実施形態は指部がロボットハンド本体と一体となっている場合に実施可能であるが、本実施形態は指部とロボットハンド本体が分離可能となっている場合に実施可能である。
【０１４６】
以下では、第２の実施形態とは異なるハードウェアや制御系の構成の部分について、図示し説明する。また、第２の実施形態と同様の部分については上術同様の構成ならびに作用が可能であるものとし、その詳細な説明は省略するものとする。第２の実施形態と同一ないし同等の部材や制御機能については、同一ないし類似の参照符号表記を用いる。
【０１４７】
図２１は、本実施形態に係るロボット装置１２００の概略構成を示すブロック図である。まず、指部２３１ａ〜２３１ｃが分離可能な構成である場合について説明する。指部が分離可能なロボットハンド本体構成の一例としては、特許３８０９５２４号に記載のテザー装置の分離機構をロボットハンド本体の指部に適応することが考えられる。なお、指部の分離機構に関しては、本発明の主題ではないため説明は省略する。当該分離機構を指退避機構１３１２としている。
【０１４８】
ここで、指部２３１ａにおける開閉用関節１１２ａのモータ１１４に異常が生じ、モータ１１４が回転していない状態を検出した場合について説明する。
【０１４９】
この場合、指部２３１ａにおける開閉用関節１１２ａのモータ１１４により、開閉用関節１１２ａを動作させることは不可能となる。一方、旋回用関節１１３ａと各指部２３１ｂ、２３１ｃ内の各モータ１１４を動作させることは可能である。
【０１５０】
本実施形態における指部の異常検知時に動作する把持継続処理は図１７に記載の第２の実施形態におけるフローチャート内のＳ１４０４を除いて同様の処理となる。
【０１５１】
ここで、本実施形態における指部が分離可能な構成を有するロボットハンド本体における異常となった指部の退避処理（Ｓ１４０４）について説明する。
【０１５２】
指部２３１ａが分離可能な構成の場合は、ＣＰＵ１３３は、ロボットハンド本体２３０およびロボットアーム本体１２０を動作させ、指部２３１ａを分離する場所に移動させる。本実施形態では、台座部１９００上で指部２３１ａを分離するものとする。
【０１５３】
そして、ＣＰＵ１３３は、指部２３１ａの分離処理を行う。分離処理は前述の先行件の技術で構成される指退避機構１３１２により実現される。そして、分離完了したことを表す分離完了信号を、データ送受信部１３１に送信する。
【０１５４】
以上により、指部が分離可能な形態を有するロボットハンドにおいても、把持対象物の把持工程を継続することが可能となる。
【０１５５】
次に、指部２３１ａ〜２３１ｃが収納可能な構成である場合について説明する。指部が収納可能なロボットハンド構成の一例として、特開２０１１−２４０４２２号公報に記載のロボットハンドにおける指部収納機構を用いることが考えられる。なお、指部の収納機構に関しては、本発明の主題ではないため説明は省略する。当該収納機構を指退避機構１３１２としている。
【０１５６】
本実施形態における指部の異常検知時に動作する把持継続処理は図１８に記載の第２の実施形態におけるフローチャートとＳ１４０４を除いて同様の処理となる。
【０１５７】
ここで、本実施形態における指部が収納可能な構成を有するロボットハンド本体における異常となった指部の退避処理（Ｓ１４０４）について説明する。
【０１５８】
ＣＰＵ１３３は、把持形態４０１の指部退避位置に異常検知した指部２３１ａを移動させる（Ｓ１４０４）。指部が収納可能な構成の場合は、ＣＰＵ１３３は、ロボットハンド本体２３０とロボットアーム本体１２０を動作させ、指部２３１ａを台座部１９００に移動させる。そして、ＣＰＵ１３３は、指部２３１ａの収納処理を行う。収納処理は、第２の実施形態に記載の退避処理となる指固定処理Ｓ１４０４と同様に台座部１９００に指部２３１ａを押し付けることにより指退避機構１３１２に収納する。そして、収納完了したことを表す収納完了信号を、データ送受信部１３１に送信する。
【０１５９】
なお、異常となった指部が、異常とならない把持に必要な指部の動作に影響を与えないような形態をとれるロボットハンド本体であればこれに限定されない。
【０１６０】
以上により、指部が収納可能な形態を有するロボットハンド本体においても、把持対象物の把持工程を継続することが可能となる。
【０１６１】
以上述べた第１の実施形態及び第３の実施形態における、挿入時の把持対象物のバックアップとして機能する把持形態と指部が異常検知した時の把持継続を行うための把持形態とに基づいた把持制御手順は制御装置１３０、１３００により実行される。従って上述した機能を実現するソフトウェアのプログラムを記録した記録媒体に制御装置１３０、１３００を供給する。そして制御装置１３０、１３００のＣＰＵ１３３がメモリ１３４に格納されたプログラムを読み出し実行することによって達成されるよう構成することができる。この場合、記録媒体から読み出されたプログラム自体が上述した各実施の形態の機能を実現することになり、プログラム自体およびそのプログラムを記録した記録媒体は本発明を構成することになる。
【０１６２】
また、上述の各実施形態では、コンピュータで読み取り可能な記録媒体がメモリ１３４であり、メモリ１３４にプログラムが格納される場合について説明したが、本発明はこのような形態に限定されるものではない。本発明を実施するためのプログラムは、コンピュータ読み取り可能な記録媒体であれば、いかなる記録媒体に記録されていてもよい。例えば、プログラムを供給するための記録媒体としては、ＲＯＭ，ＲＡＭ、ＨＤＤ、外部記憶装置、記録ディスクなどを用いることができる。
【０１６３】
本発明は、上述の実施形態の１以上の機能を実現するプログラムをネットワーク又は記憶媒体を介してシステムまたは装置に供給しそのシステムまたは装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【０１６４】
１００、１０００、１２００  ロボット装置
１１０、２２０、２３０  ロボットハンド本体
１１１ａ、１１１ｂ、１１１ｃ、２２１ａ、２２１ｂ、２２１ｃ、２３１ａ、２３１ｂ、２３１ｃ  指部
１１２ａ、１１２ｂ、１１２ｃ  開閉用関節
１１３ａ、１１３ｂ、１１３ｃ  旋回用関節
１１４  モータ
１１５  減速機
１１６  エンコーダ
１２０  ロボットアーム本体
１２１ａ、１２１ｂ、１２１ｃ  アーム用関節
１３０、１３００  制御装置
１３１  データ送受信部
１３２  異常検出部
１３３  ＣＰＵ
２２１ａ、２２１ｂ、２２１ｃ  指固定部
２２２ａ、２２２ｂ、２２２ｃ  指検知部
１１００ａ、１１００ｂ、１１００ｃ  指部先端
１３１２  指退避機構
１９００  台座部
３００、４００、６００、７００  把持形態テーブル
【図１】
2019010723.tif 000003
【図２】
2019010723.tif 000004
【図３】
2019010723.tif 000005
【図４】
2019010723.tif 000006
【図５】
2019010723.tif 000007
【図６】
2019010723.tif 000008
【図７】
2019010723.tif 000009
【図８】
2019010723.tif 000010
【図９】
2019010723.tif 000011
【図１０】
2019010723.tif 000012
【図１１】
2019010723.tif 000013
【図１２】
2019010723.tif 000014
【図１３】
2019010723.tif 000015
【図１４】
2019010723.tif 000016
【図１５】
2019010723.tif 000017
【図１６】
2019010723.tif 000018
【図１７】
2019010723.tif 000019
【図１８】
2019010723.tif 000020
【図１９】
2019010723.tif 000021
【図２０】
2019010723.tif 000022
【図２１】
2019010723.tif 000023