(57)【特許請求の範囲】
【請求項１】
ロボットアームと、
前記ロボットアームの先端に設けられた多指ハンド部と、
ユーザによる入力または検出手段による検出により、把持対象物の位置情報および形状情報を取得する情報取得手段と、
前記把持対象物の位置情報および形状情報に基づいて前記多指ハンド部による把持形態の候補を複数抽出するとともに、抽出された複数の前記把持形態の候補についての前記多指ハンド部の関節トルクに基づいて、前記抽出された複数の把持形態の候補の中から１つの前記把持形態を選択する制御部とを備え、
前記制御部は、前記把持形態の候補のそれぞれについて、前記多指ハンド部による把持状態を維持しての移動経路上の把持開始点における前記多指ハンド部の第１把持姿勢、中継点における前記第１把持姿勢とは異なる第２把持姿勢、および、把持終了点における第３把持姿勢での前記多指ハンド部の各関節の関節トルクを算出し、前記第１把持姿勢、前記第２把持姿勢および前記第３把持姿勢のそれぞれにおける前記多指ハンド部の各関節の前記関節トルクのうちの最大値が最も小さくなる把持形態を選択するように構成されている、ロボット装置。
【請求項２】
前記制御部は、前記抽出された複数の把持形態の候補の各々に対して、前記移動経路における前記多指ハンド部の各関節の前記関節トルクが前記多指ハンド部の許容関節トルク以下であるか否かを判断するとともに、前記多指ハンド部の各関節の前記関節トルクが前記多指ハンド部の許容関節トルク以下であると判断した場合に、前記多指ハンド部の各関節の前記関節トルクの最大値を算出するように構成されている、請求項１に記載のロボット装置。
【請求項３】
前記制御部は、前記多指ハンド部の各関節の前記関節トルクが前記多指ハンド部の許容関節トルクよりも大きいと判断した場合には、前記多指ハンド部の各関節の前記関節トルクの最大値を算出せずに、候補から外すように構成されている、請求項２に記載のロボット装置。
【請求項４】
前記情報取得手段は、ユーザによる入力または検出手段による検出により、前記把持対象物の位置情報および形状情報に加えて姿勢情報も取得するように構成されており、
前記制御部は、前記把持対象物の前記位置情報および前記形状情報に加えて前記姿勢情報にも基づいて前記多指ハンド部による把持形態の候補を複数抽出するように構成されている、請求項１〜３のいずれか1項に記載のロボット装置。
【請求項５】
前記制御部は、前記多指ハンド部による把持形態に関する情報が記憶された把持形態データベースの把持形態の中から前記把持対象物の位置情報および形状情報に基づいて前記多指ハンド部による把持形態の候補を複数抽出するように構成されている、請求項１〜４のいずれか1項に記載のロボット装置。
【請求項６】
前記把持形態データベースに記憶された前記把持形態に関する情報は、把持対象物に対する前記多指ハンド部の指の配置の情報と、前記把持対象物の想定質量の情報と、必要な把持力の情報とを含み、
前記制御部は、前記把持対象物の位置情報および形状情報に基づいて前記移動経路における前記多指ハンド部の把持姿勢の情報を取得するとともに、前記移動経路における前記把持姿勢の情報と、前記把持対象物に対する前記多指ハンド部の指の配置の情報と、前記把持対象物の想定質量の情報と、前記必要な把持力の情報とに基づいて、前記移動経路における前記多指ハンド部の各関節の前記関節トルクの最大値を算出するとともに、前記関節トルクの最大値の最も小さい把持形態を選択するように構成されている、請求項５に記載のロボット装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ロボット装置に関し、特に、ロボットアームおよび多指ハンド部を備えたロボット装置に関する。
【背景技術】
【０００２】
従来、ロボットアームおよび多指ハンド部を備えたロボット装置が知られている（たとえば、特許文献１参照）。
【０００３】
上記特許文献１には、ロボットアームと、ロボットアームの先端に設けられた多指ハンド部と、カメラアイとを備えたロボット装置が開示されている。この特許文献１によるロボット装置は、カメラアイの画像データに基づいて画像認識により把持対象物を単純形状に当てはめる処理を行うように構成されている。そして、このロボット装置は、当てはめた単純形状の大きさと向きとを算出し、単純形状の種類に応じた多指ハンド部の把持姿勢を決定するように構成されている。多指ハンド部の把持姿勢を決定すると、その把持姿勢における多指ハンド部の手首位置が算出されるとともに、算出された手首位置と把持姿勢とに基づきロボットアームの姿勢が決定される。そして、上記特許文献１のロボット装置は、ロボットアームおよび多指ハンド部を駆動して把持姿勢を取り、把持対象物に把持力を加えることにより把持を行うように構成されている。上記特許文献１によるロボット装置では、把持対象物を単純形状に当てはめることにより、任意の形状を有する把持対象物に対しても容易に把持姿勢（把持形態）を決定することが可能である。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６−１３０５８０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記特許文献１によるロボット装置では、決定した把持姿勢（把持形態）により把持対象物を把持する際に、把持対象物の重量によっては多指ハンド部の関節に加わる力（関節トルク）が許容範囲を超えてしまう場合があり、この場合には、決定した把持姿勢（把持形態）では把持対象物の把持状態を維持することができなくなる場合があるという問題点がある。
【０００６】
この発明は、上記のような課題を解決するためになされたものであり、この発明の１つの目的は、把持対象物の把持状態を維持することが可能な把持形態を選択することが可能なロボット装置を提供することである。
【課題を解決するための手段および発明の効果】
【０００７】
上記目的を達成するために、この発明の一の局面によるロボット装置は、ロボットアームと、ロボットアームの先端に設けられた多指ハンド部と、ユーザによる入力または検出手段による検出により、把持対象物の位置情報および形状情報を取得する情報取得手段と、把持対象物の位置情報および形状情報に基づいて多指ハンド部による把持形態の候補を複数抽出するとともに、抽出された複数の把持形態の候補についての多指ハンド部の関節トルクに基づいて、抽出された複数の把持形態の候補の中から１つの把持形態を選択する制御部とを備え、制御部は、把持形態の候補のそれぞれについて、多指ハンド部による把持状態を維持しての移動経路上の把持開始点における多指ハンド部の第１把持姿勢、中継点における第１把持姿勢とは異なる第２把持姿勢、および、把持終了点における第３把持姿勢での多指ハンド部の各関節の関節トルクを算出し、第１把持姿勢、第２把持姿勢および第３把持姿勢のそれぞれにおける多指ハンド部の各関節の関節トルクのうちの最大値が最も小さくなる把持形態を選択するように構成されている。
【０００８】
この発明の一の局面によるロボット装置では、上記のように、把持対象物の位置情報および形状情報に基づいて多指ハンド部による把持形態の候補を複数抽出するとともに、抽出された複数の把持形態の候補についての多指ハンド部の関節トルクに基づいて、抽出された複数の把持形態の候補の中から１つの把持形態を選択する制御部を設けることによって、多指ハンド部の関節トルクに基づいて把持対象物の把持形態を決定することができる。これにより、多指ハンド部に加わる関節トルクが許容範囲を超えない把持形態を選択することができるので、把持対象物の把持状態を維持することが可能な把持形態を選択することができる。また、移動経路の全体にわたって多指ハンド部に加わる関節トルクが許容範囲を超えない把持形態を選択することができるので、把持対象物を把持して移動させる動作全体にわたって、把持状態を維持し続けることが可能な把持形態を選択することができる。また、移動経路の全体にわたって、把持状態を維持するための多指ハンド部に対する負荷（関節トルク）の最大値が最も小さい把持形態を選択することができるので、把持対象物の把持状態を維持しながら、多指ハンド部の負担の最も小さい把持形態を選択することができる。
【００１１】
上記多指ハンド部の各関節の関節トルクの最大値を算出する構成において、好ましくは、制御部は、抽出された複数の把持形態の候補の各々に対して、移動経路における多指ハンド部の各関節の関節トルクが多指ハンド部の許容関節トルク以下であるか否かを判断するとともに、多指ハンド部の各関節の関節トルクが多指ハンド部の許容関節トルク以下であると判断した場合に、多指ハンド部の各関節の関節トルクの最大値を算出するように構成されている。このように構成すれば、把持形態の候補の各々について、移動経路における多指ハンド部の各関節の関節トルクが多指ハンド部の許容関節トルク以下となる条件の下で関節トルクの最大値が算出されるので、多指ハンド部による把持が可能な許容関節トルク以下となる把持形態の候補のみを対象として、多指ハンド部に対する負荷（関節トルク）の最大値が最も小さい把持形態を選択することができる。
【００１２】
上記多指ハンド部の各関節の関節トルクが多指ハンド部の許容関節トルク以下であると判断した場合に多指ハンド部の各関節の関節トルクの最大値を算出する構成において、好ましくは、制御部は、多指ハンド部の各関節の関節トルクが多指ハンド部の許容関節トルクよりも大きいと判断した場合には、多指ハンド部の各関節の関節トルクの最大値を算出せずに、候補から外すように構成されている。このように構成すれば、ある把持形態の候補について、多指ハンド部の許容関節トルクを超える関節トルクが算出された場合には、以降の関節トルクの最大値の算出処理を行うことなく、次の把持形態の候補についての関節トルクの算出を行うことができる。これにより、制御部の処理負荷を軽減して効率的に把持形態の選択を行うことができる。
【００１３】
上記一の局面によるロボット装置において、好ましくは、情報取得手段は、ユーザによる入力または検出手段による検出により、把持対象物の位置情報および形状情報に加えて姿勢情報も取得するように構成されており、制御部は、把持対象物の位置情報および形状情報に加えて姿勢情報にも基づいて多指ハンド部による把持形態の候補を複数抽出するように構成されている。このように構成すれば、把持対象物の位置情報および形状情報のみならず、把持対象物の姿勢情報にも基づいて把持形態を選択することができるので、より適切な把持形態を選択することができる。
【００１４】
上記一の局面によるロボット装置において、好ましくは、制御部は、多指ハンド部による把持形態に関する情報が記憶された把持形態データベースの把持形態の中から把持対象物の位置情報および形状情報に基づいて多指ハンド部による把持形態の候補を複数抽出するように構成されている。このように構成すれば、把持形態に関する情報が記憶された把持形態データベースから複数の把持形態の候補を抽出することができるので、個々の把持対象物に応じて制御部が複数の把持形態を算出する必要がない。この結果、把持形態を選択する際の制御部の処理負荷を軽減して、高速な処理動作を行うことができる。
【００１５】
この場合において、好ましくは、把持形態データベースに記憶された把持形態に関する情報は、把持対象物に対する多指ハンド部の指の配置の情報と、把持対象物の想定質量の情報と、必要な把持力の情報とを含み、制御部は、把持対象物の位置情報および形状情報に基づいて移動経路における多指ハンド部の把持姿勢の情報を取得するとともに、移動経路における把持姿勢の情報と、把持対象物に対する多指ハンド部の指の配置の情報と、把持対象物の想定質量の情報と、必要な把持力の情報とに基づいて、移動経路における多指ハンド部の各関節の関節トルクの最大値を算出するとともに、関節トルクの最大値の最も小さい把持形態を選択するように構成されている。このように構成すれば、多指ハンド部の各関節の関節トルクを算出するために必要な情報が把持形態データベースに記憶されているので、制御部は、把持対象物の位置情報および形状情報に基づいて移動経路における多指ハンド部の把持姿勢を決定すれば、容易に、移動経路における多指ハンド部の各関節の関節トルクを算出することができる。この結果、容易に、関節トルクの最大値の最も小さい把持形態を選択することができる。
【図面の簡単な説明】
【００１６】
【図１】本発明の一実施形態によるロボット装置の全体構成を示す模式図である。
【図２】図１に示した一実施形態によるロボット装置の把持形態を説明するための模式図である。
【図３】図１に示した一実施形態によるロボット装置の把持形態を説明するための模式図である。
【図４】図２に示した把持形態により把持対象物を移動させる移動経路を説明するための模式図である。
【図５】図１に示した一実施形態によるロボット装置の動作時の制御装置の処理を説明するためのフローチャートである。
【発明を実施するための形態】
【００１７】
以下、本発明の実施形態を図面に基づいて説明する。
【００１８】
まず、図１〜図４を参照して、本発明の一実施形態によるロボット装置１００の構造（構成）について説明する。なお、本実施形態では、日常生活（環境）において用いられる生活支援ロボットに本発明を適用した例について説明する。
【００１９】
図１に示すように、本実施形態によるロボット装置１００は、ユーザの指示に基づいてロボットアーム１０の先端に装着された多指ハンド部２０により把持対象物１１０を把持して持ち上げ、指定された位置に把持対象物１１０を移動させる機能を有する。
【００２０】
ロボット装置１００は、ロボットアーム１０と、ロボットアーム１０の先端に装着された多指ハンド部２０と、把持対象物１１０および把持対象物１１０の周辺を検出する視覚センサ３０と、ロボット装置１００の動作制御を行う制御装置４０とを備えている。なお、視覚センサ３０は、本発明の「検出手段」の一例であるとともに、制御装置４０は、本発明の「制御部」の一例である。
【００２１】
ロボットアーム１０は、複数のアーム（リンク）１１および各アーム１１を接続する関節部１２を含んでいる。各関節部１２には図示しないモータがそれぞれ設けられており、各関節部１２は接続されたアーム１１を所定の駆動方向（関節軸回りの回転方向）に駆動するように構成されている。これにより、ロボットアーム１０は、たとえば６自由度の動きが可能な構成を有する。
【００２２】
多指ハンド部２０は、ロボットアーム１０の先端に装着されているとともに、等角度間隔で配置された３本の指部２１、２２および２３を含んでいる。３本の指部２１、２２および２３は、同一の構成を有するとともに、先端（指先）にそれぞれ力センサ２１ａ、２２ａおよび２３ａを有している。また、各指部２１、２２および２３は、それぞれ、根元側の関節部２１ｂ、２２ｂおよび２３ｂと、中間部の関節部２１ｃ、２２ｃおよび２３ｃとを有する。各指部２１、２２および２３は、これらの関節部（２１ｂ〜２３ｂおよび２１ｃ〜２３ｃ）に設けられた図示しないモータにより、所定の駆動方向（関節軸回りの回転方向）に駆動されるように構成されている。したがって、指部２１、２２および２３は、それぞれ、根元側の関節部２１ｂ、２２ｂおよび２３ｂの関節軸回りと、中間部の関節部２１ｃ、２２ｃおよび２３ｃの関節軸回りとで駆動可能な構成を有するので、これらの指部２１、２２および２３の自由度は、それぞれ、２自由度である。
【００２３】
力センサ２１ａ、２２ａおよび２３ａは、それぞれ、指部２１、２２および２３の指先に加えられた外力（負荷）を検出する圧力センサにより構成されている。この力センサ２１ａ、２２ａおよび２３ａにより、把持対象物１１０と指部２１、２２および２３との接触を検出することが可能なように構成されている。また、力センサ２１ａ、２２ａおよび２３ａの検出信号は、制御装置４０に出力されるように構成されている。
【００２４】
視覚センサ３０は、把持対象物１１０および把持対象物１１０の周囲を撮像するカメラにより構成されている。視覚センサ３０により撮像される画像データは、制御装置４０により取り込まれるように構成されている。
【００２５】
制御装置４０は、アーム制御部４１と、ハンド制御部４２と、画像処理部４３と、アーム姿勢演算部４４と、ハンド姿勢演算部４５と、把持形態選択部４６と、関節トルク演算部４７とを含んでいる。また、制御装置４０には、ロボット装置１００の動作制御を行うための作業動作プログラム４８が記憶されている。なお、画像処理部４３は、本発明の「情報取得手段」の一例であるとともに、把持形態選択部４６は、本発明の「把持形態データベース」の一例である。
【００２６】
アーム制御部４１は、ロボットアーム１０の各部の動作制御を行う機能を有する。具体的には、アーム制御部４１は、アーム姿勢演算部４４から出力されたロボットアーム１０の動作命令にしたがって、ロボットアーム１０のそれぞれの関節部１２を駆動させるように構成されている。
【００２７】
ハンド制御部４２は、多指ハンド部２０の各指部２１〜２３の姿勢制御を行う機能を有する。具体的には、ハンド制御部４２は、ハンド姿勢演算部４５から出力された動作命令にしたがって、指部２１の関節部２１ｂおよび関節部２１ｃと、指部２２の関節部２２ｂおよび関節部２２ｃと、指部２３の関節部２３ｂおよび関節部２３ｃとをそれぞれ駆動するように構成されている。また、ハンド制御部４２は、力センサ２１ａ、２２ａおよび２３ａの出力に基づいて力制御（インピーダンス制御）を行うことにより、把持対象物１１０に対していわゆる柔らかい接触が可能となり、把持対象物１１０に対して衝撃を与えずに把持することが可能である。
【００２８】
画像処理部４３は、視覚センサ３０により撮像された画像データを取り込み、画像データを画像処理することにより、把持対象物１１０の位置情報、姿勢（向き）情報、および、把持対象物１１０の輪郭などの形状情報を取得することが可能なように構成されている。
【００２９】
アーム姿勢演算部４４は、作業動作プログラム４８による移動経路にしたがって把持開始位置から把持終了位置（把持対象物１１０の移動先）まで把持対象物１１０を移動させるためのロボットアーム１０の姿勢を算出するように構成されている。そして、アーム姿勢演算部４４は、算出した姿勢を取るようにロボットアーム１０を移動させるための動作命令（各関節部１２の動作命令）をアーム制御部４１に出力するように構成されている。
【００３０】
ハンド姿勢演算部４５は、把持形態選択部４６に記憶された把持対象物１１０の把持形態に基づいて、各指部２１、２２および２３の姿勢を算出するとともに、算出した姿勢を取るように各指部２１、２２および２３を移動させるための動作命令（６つの関節部２１ｂ〜２３ｂおよび２１ｃ〜２３ｃに対する動作命令）をハンド制御部４２に出力するように構成されている。
【００３１】
把持形態選択部４６には、多指ハンド部２０による把持対象物１１０の複数の把持形態の情報と、複数の把持形態に関連する情報とが記憶されている。ここで、把持形態の情報は、把持対象物１１０に対する多指ハンド部２０の相対的な位置（把持位置）の情報と、姿勢（多指ハンド部２０の向き、把持姿勢）の情報と、指の配置（各指部２１〜２３の姿勢）の情報とを含んでいる。また、把持形態に関連する情報は、把持対象物１１０の想定質量（把持対象物１１０について想定される質量）の情報と、把持対象物１１０を把持するのに必要な把持力の情報とを含んでいる。把持形態選択部４６は、把持対象物１１０の位置情報、姿勢情報および形状情報に基づいて、把持対象物１１０に対して多指ハンド部２０が取り得る把持形態の候補を複数抽出するように構成されている。
【００３２】
ここで、把持形態の具体例について説明する。図２に示すように、単純形状物１１１を把持対象物１１０とした場合には、たとえば２種類で６通りの把持形態を例示することができる。すなわち、単純形状物１１１についての把持形態には、単純形状物１１１の長辺１１１ａ側に１本の指部２１を配置するとともに残りの２本の指部２２および２３を長辺１１１ｂ側に配置して把持する把持形態Ａ−１（Ａ）と、単純形状物１１１の長辺１１１ａ側に２本の指部２１および２３を配置するとともに他の指部２２を長辺１１１ｂ側に配置して把持する把持形態Ｂ−１（Ｂ）とが含まれる。これらの２種類（ＡおよびＢ）の把持形態は、３本の指部２１〜２３の配置の相違によってそれぞれ３パターン（Ａ−１、Ａ−２およびＡ−３と、Ｂ−１、Ｂ−２およびＢ−３）に分けることができるので、２種類で６通りの把持形態となる。なお、単純形状物１１１は、本発明の「把持対象物」の一例である。
【００３３】
また、図３に示すように、カップ１１２を把持対象物１１０とした場合には、たとえば３種類で９通りの把持形態を例示することができる。すなわち、上方からカップ１１２の円筒状外側面を周方向に沿って把持する把持形態Ｃ−１と、側方からカップ１１２の円筒状外側面を挟むように両側から把持する把持形態Ｄ−１と、側方からカップ１１２の取手部を把持する把持形態Ｅ−１との３種類の把持形態を例示することができる。これらの３種類の把持形態についても、３本の指部２１〜２３の配置の相違によってそれぞれ３パターン（図示せず）に分けることができるので、３種類で９通りの把持形態となる。なお、カップ１１２は、本発明の「把持対象物」の一例である。
【００３４】
上記のように把持対象物１１０毎に複数の把持形態が存在する場合に、各々の把持形態に対応する多指ハンド部２０の姿勢およびロボットアーム１０の姿勢を求める際には、多指ハンド部２０に設定された座標系と、把持対象物１１０に設定された座標系とを関連付ける相対的な座標変換行列を用いる。具体的には、この座標変換行列と、把持対象物１１０の位置情報、姿勢情報および形状情報とに基づいて、ハンド姿勢演算部４５により各把持形態における多指ハンド部２０の指部２１〜２３姿勢を算出するとともに、アーム姿勢演算部４４によりロボットアーム１０の姿勢を算出するように構成されている。
【００３５】
また、図１に示すように、関節トルク演算部４７は、把持対象物１１０の把持形態に対応して把持形態選択部４６に記憶されている多指ハンド部２０の把持姿勢の情報および指部２１〜２３の配置の情報と、把持形態選択部４６に記憶された把持対象物１１０の想定質量の情報と、必要な把持力の情報とに基づいて、指部２１〜２３のそれぞれの関節部（関節部２１ｂ〜２３ｂおよび関節部２１ｃ〜２３ｃ）の関節トルク（関節部にかかる負荷トルク）を算出するように構成されている。そして、関節トルク演算部４７は、算出した多指ハンド部２０の関節トルクに基づいて、把持形態選択部４６により抽出された複数の把持形態の候補の中から１つの把持形態を選択するように構成されている。
【００３６】
作業動作プログラム４８は、ロボットアーム１０および多指ハンド部２０の作業動作を指令するプログラムである。この作業動作プログラム４８には、把持対象物１１０の複数のパターンの移動経路の情報が含まれている。この移動経路の情報は、把持開始点を始点として、把持終了点まで把持対象物１１０が移動される経路が設定された情報である。この移動経路は、障害物などの周囲環境を考慮して、１つまたは複数の中継点を経由することにより障害物と接触するのを回避しながら把持対象物１１０を移動させる経路設定が可能なように構成されている。また、作業動作プログラム４８により把持対象物１１０の移動経路が与えられると、アーム姿勢演算部４４およびハンド姿勢演算部４５により、この移動経路の把持開始点、中継点および把持終了点の各位置における多指ハンド部２０の把持姿勢（把持対象物１１０に対する向き）を決定することができるので、把持開始点、中継点および把持終了点の各位置における多指ハンド部２０の把持姿勢を実現するためのロボットアーム１０の姿勢を算出することが可能である。
【００３７】
ここで、把持対象物１１０を把持開始点から中継点を介して目標位置（把持終了点）へ移動させる場合には、把持開始点、中継点および把持終了点のそれぞれにおいて多指ハンド部２０の把持姿勢（把持対象物１１０に対する姿勢）が一定であるとは限らず、把持対象物１１０を把持したまま多指ハンド部２０の姿勢（把持姿勢）が変化する場合がある。
【００３８】
たとえば、図４の上段に示すように、長手方向が上下方向（Ｚ方向）となるように単純形状物１１１を把持した後、中継点では単純形状物１１１（多指ハンド部２０）を反時計方向に９０度回動させて長手方向を水平方向にし、把持終了点で元の把持姿勢に戻すように移動経路に沿って把持姿勢が変化するような場合がある。このとき、把持形態Ａ−１で把持した場合には、把持開始点（把持形態Ａ−１）で多指ハンド部２０の３本の指部２１〜２３により側方から略均等に支えていた単純形状物１１１の重量を、中継点では下側（長辺１１１ａ側）に配置される１本の指部２１によって支える必要がある。したがって、この中継点（把持形態Ａ−１）における指部２１の関節部２１ｂおよび２１ｃ（図１参照）の関節トルクは、把持開始点および把持終了点の状態よりも増大する。この中継点における指部２１の関節部２１ｂおよび２１ｃの関節トルクが多指ハンド部２０（指部２１の関節部２１ｂおよび２１ｃ）の許容関節トルクを超える場合には、中継点で把持状態を維持することができなくなる可能性がある。
【００３９】
一方、図４の下段に示すように、同じ移動経路について把持形態Ｂ−１で把持した場合には、単純形状物１１１の長辺１１１ａ側（下側）に２本の指部２１および２３が配置されるので、中継点において下側に配置される２本の指部２１および２３によって単純形状物１１１の重量を支えることができる。したがって、この中継点における指部２１（関節部２１ｂおよび２１ｃ）および指部２３（関節部２３ｂおよび２３ｃ）の関節トルクは、把持形態Ｂ−１（把持開始点および把持終了点）よりは大きくなるものの、把持形態Ａ−１（中継点）よりも小さくなる。これにより、把持形態Ａ−１では中継点で許容関節トルクを超えてしまう場合にも、把持形態Ｂ−１の場合には多指ハンド部２０の関節トルクが許容関節トルク以下の範囲に収まる場合がある。この場合には、中継点においても単純形状物１１１の把持状態を維持することができる。
【００４０】
ここで、把持形態Ａ−１では、中継点における指部２１（関節部２１ｂおよび２１ｃ）の関節トルクが移動経路全体における関節トルクの最大値であるとする。また、把持形態Ｂ−１では、中継点における指部２３（関節部２３ｂおよび２３ｃ）の関節トルクが移動経路全体における関節トルクの最大値であるとする。このときの関節トルク（最大値）を比較すれば、把持形態Ａ−１よりも把持形態Ｂ−１の方が関節トルク（最大値）が小さくなるので、移動経路全体を考慮すると把持形態Ｂ−１の方が多指ハンド部２０（指部２１〜２３）に対する負荷（関節トルク）の最大値が小さくなる。したがって、図４に示す移動経路で単純形状物１１１を移動させる場合には、把持形態Ａ−１よりも把持形態Ｂ−１の方が望ましいということができる。このように、把持開始点や把持終了点で類似する把持形態（Ａ−１およびＢ−１）であったとしても、移動経路の全体における多指ハンド部２０の関節トルクは各把持形態で同一ではない場合もあるため、移動経路全体にわたって関節トルクを比較するのは適切な把持形態を選択する上で有効であると言える。
【００４１】
以上のように、多指ハンド部２０により把持対象物１１０を移動させる作業を行う場合には、多指ハンド部２０による把持状態を維持するために、移動経路全体にわたって多指ハンド部２０の関節トルクが許容関節トルクを超えないことが必要となる。また、移動経路の全体における多指ハンド部２０の関節トルクの最大値が小さい方が、多指ハンド部２０（指部２１〜２３）に対する負荷（関節トルク）の最大値が小さくなるので、より確実な把持を行うことが可能であるとともに、多指ハンド部２０の各関節部にかかる負担を小さくすることが可能である。
【００４２】
上記のような点を考慮して、本実施形態では、制御装置４０は、把持形態選択部４６により抽出された複数の把持形態の候補の内から、移動経路の各点（把持開始点、中継点および把持終了点）における多指ハンド部２０の関節トルクに基づいて、１つの把持形態を選択するように構成されている。より具体的には、制御装置４０は、複数の把持形態の候補の各々について、関節トルク演算部４７により移動経路の各点（把持開始点、中継点および把持終了点）における多指ハンド部２０の各関節部２１ｂ〜２３ｂおよび２１ｃ〜２３ｃの関節トルクを算出する。そして、算出された関節トルクに基づいて、制御装置４０は、関節トルク演算部４７により移動経路の各点（把持開始点、中継点および把持終了点）における各関節部２１ｂ〜２３ｂおよび２１ｃ〜２３ｃの関節トルクが多指ハンド部２０の許容関節トルク以下で、かつ、関節トルクの最大値の最も小さい把持形態を選択するように構成されている。
【００４３】
次に、図２、図４および図５を参照して、本実施形態によるロボット装置１００の動作時の制御装置４０の処理フローを説明する。なお、本実施形態では、制御装置４０の作業動作プログラム４８に基づいてロボット装置１００の把持動作が行われる。
【００４４】
まず、図５に示すように、ステップＳ１において、視覚センサ３０により撮像された画像データに基づき、制御装置４０の画像処理部４３により把持対象物１１０の位置情報、姿勢情報および形状情報が取得される。
【００４５】
次に、ステップＳ２において、取得された把持対象物１１０の位置情報、姿勢情報および形状情報に基づいて、把持形態選択部４６により、把持対象物１１０に対して多指ハンド部２０が取り得る把持形態の候補が複数抽出される。なお、このステップＳ２の後のステップＳ３〜ステップＳ９の処理は、複数の把持形態の候補のそれぞれについて実行される。たとえば図２の把持対象物（単純形状物１１１）の場合には、把持形態Ａ−１〜Ａ−３およびＢ−１〜Ｂ−３が候補として抽出される。
【００４６】
ステップＳ３では、抽出された把持形態の候補の各々について、制御装置４０により、多指ハンド部２０によって把持形態（把持位置、把持姿勢および指部２１〜２３の配置）を実現するための情報が把持形態選択部４６から取得される。具体的には、その把持形態（候補）について、多指ハンド部２０に設定された座標系と、把持対象物１１０に設定された座標系とを関連付ける相対的な座標変換行列が把持形態選択部４６から取得される。また、制御装置４０により、把持形態選択部４６から把持対象物１１０の想定質量（把持対象物１１０について想定される質量）の情報と、把持対象物１１０を把持するのに必要な把持力の情報とが取得される。
【００４７】
次に、ステップＳ４において、制御装置４０により作業動作プログラム４８から把持対象物１１０の移動経路が取得される。これにより、把持対象物１１０の把持開始点、中継点および把持終了点が決定される。そして、制御装置４０のアーム姿勢演算部４４およびハンド姿勢演算部４５により、把持対象物１１０の位置情報、姿勢情報および形状情報と、座標変換行列とに基づいて、移動経路の把持開始点、中継点および把持終了点のそれぞれにおける多指ハンド部２０の把持姿勢が算出される。
【００４８】
移動経路における多指ハンド部２０の把持姿勢が算出されると、ステップＳ５において、制御装置４０の関節トルク演算部４７により、把持開始点、中継点および把持終了点のそれぞれにおける把持姿勢の情報と、指部２１〜２３の配置の情報と、把持対象物１１０の想定質量と、必要な把持力の情報とに基づいて、多指ハンド部２０の各関節部２１ｂ〜２３ｂおよび２１ｃ〜２３ｃの関節トルクが算出される。たとえば、図４の把持形態Ａ−１の例では、把持開始点および把持終了点における把持姿勢について、多指ハンド部２０の各関節部２１ｂ〜２３ｂおよび２１ｃ〜２３ｃの６つの関節トルクの値が算出されるとともに、中継点における把持姿勢について、多指ハンド部２０の各関節部２１ｂ〜２３ｂおよび２１ｃ〜２３ｃの６つの関節トルクの値が算出される。
【００４９】
ステップＳ６では、制御装置４０の関節トルク演算部４７により、算出された関節トルクが多指ハンド部２０（関節部２１ｂ〜２３ｂおよび２１ｃ〜２３ｃ）の許容関節トルクよりも大きいか否かが判断される。算出された関節トルクに、多指ハンド部２０の許容関節トルクよりも大きい値が含まれる場合には、ステップＳ８に進む。この場合には、移動経路を通過する過程で関節トルクが許容関節トルクを上回ることに起因して把持対象物１１０の把持状態を維持することができない可能性があるので、その把持形態は、ステップＳ８において候補から除外される。一方、算出された関節トルクの全て（把持開始点、中継点および把持終了点のそれぞれにおける各関節部２１ｂ〜２３ｂおよび２１ｃ〜２３ｃの関節トルク）が多指ハンド部２０の許容関節トルク以下となる場合には、ステップＳ７に進む。
【００５０】
ステップＳ７では、関節トルク演算部４７により、把持開始点、中継点および把持終了点のそれぞれにおける各関節部２１ｂ〜２３ｂおよび２１ｃ〜２３ｃの全ての関節トルクの内から、関節トルクの最大値が算出される。すなわち、把持開始点から中継点を経由して把持終了点に至る移動経路を通過する全過程で最大となる関節トルクの値が取得される。たとえば、図４の把持形態Ａ−１の例では、中継点における指部２１の関節部２１ｂまたは２１ｃの関節トルクが最大値として取得されるとともに、図４の把持形態Ｂ−１の例では、中継点における指部２３の関節部２３ｂまたは２３ｃ（または、指部２１の関節部２１ｂまたは２１ｃ）の関節トルクが最大値として取得される。
【００５１】
把持形態の候補について、ステップＳ７において関節トルクの最大値が算出されるか、または、ステップＳ８において把持形態の候補から除外されると、ステップＳ９に進む。ステップＳ９では、制御装置４０により、ステップＳ２において抽出された全ての把持形態の候補について、関節トルクの最大値の算出（または把持形態の候補からの除外）処理が行われたか否かが判断される。関節トルクの最大値の算出（または把持形態の候補からの除外）処理が行われていない把持形態（候補）が存在する場合には、ステップＳ３に戻り、抽出された全ての把持形態の候補について関節トルクの最大値の算出（または把持形態の候補からの除外）処理が行われるまで繰り返される。
【００５２】
以上のステップＳ３〜Ｓ９までの処理が把持形態（候補）毎に実行されると、除外された候補を除く全ての把持形態について、多指ハンド部２０の許容関節トルク以下で、かつ、移動経路の全体で最大となる関節トルクの値（その把持形態での関節トルクの最大値）が算出される。たとえば、図２の例では、把持形態Ａ−１〜Ａ−３および把持形態Ｂ−１〜Ｂ−３のそれぞれについて、多指ハンド部２０の許容関節トルク以下で、かつ、移動経路の全体で最大となる関節トルクの値（その把持形態での関節トルクの最大値）が算出される。
【００５３】
そして、図５に示すように、ステップＳ１０では、制御装置４０の関節トルク演算部４７により、把持動作を行う把持形態が選択される。具体的には、各把持形態について、ステップＳ７において算出された関節トルクの最大値が比較されることにより、関節トルクの最大値が最も小さい把持形態が選択される。これにより、把持対象物１１０の移動経路の全過程（把持開始点、中継点および把持終了点）において多指ハンド部２０（関節部２１ｂ〜２３ｂおよび２１ｃ〜２３ｃ）の許容関節トルクを超えることがなく、かつ、多指ハンド部２０（関節部２１ｂ〜２３ｂおよび２１ｃ〜２３ｃ）に対する負荷（関節トルクの最大値）が最も小さくなる把持形態が選択される。
【００５４】
把持形態が選択されると、ステップＳ１１に進み、制御装置４０により、実際の動作制御が行われる。すなわち、移動経路の把持開始点、中継点および把持終了点のそれぞれにおいて、算出された多指ハンド部２０の位置および姿勢となるように、アーム姿勢演算部４４からアーム制御部４１に対して各関節部１２の動作命令が出力される。また、選択された把持形態による把持動作が行われるように、把持形態選択部４６からハンド姿勢演算部４５を介して、選択された把持形態に対応する指部２１〜２３の動作命令がハンド制御部４２に対して出力される。そして、アーム制御部４１により、実際にロボットアーム１０が駆動されるとともに、ハンド制御部４２により、多指ハンド部２０の指部２１〜２３が力センサ２１ａ〜２３ａの出力に基づく力制御（インピーダンス制御）によって駆動されることにより把持対象物１１０がいわゆる柔らかい接触で把持され、その後、把持開始点から中継点を経由して把持終了点まで把持状態を維持したまま把持対象物１１０が移動される。
【００５５】
本実施形態では、上記のように、把持対象物１１０の位置情報および形状情報に基づいて多指ハンド部２０による把持形態の候補を複数抽出する把持形態選択部４６と、抽出された複数の把持形態の候補についての多指ハンド部２０の関節トルクに基づいて、抽出された複数の把持形態の候補の中から１つの把持形態を選択する関節トルク演算部４７とを含む制御装置４０を設けることによって、多指ハンド部２０の関節トルクに基づいて把持対象物１１０の把持形態を決定することができる。これにより、多指ハンド部２０に加わる関節トルクが許容範囲を超えない把持形態を選択することができるので、把持対象物１１０の把持状態を維持することが可能な把持形態を選択することができる。
【００５６】
また、本実施形態では、上記のように、制御装置４０を、把持形態選択部４６により抽出された複数の把持形態の候補の各々に対して、関節トルク演算部４７により、把持開始点、中継点および把持終了点を含む移動経路における多指ハンド部２０の各関節部（関節部２１ｂ〜２３ｂおよび関節部２１ｃ〜２３ｃ）の関節トルクに基づいて、１つの把持形態を選択するように構成することによって、移動経路の全体にわたって多指ハンド部２０に加わる関節トルクが許容関節トルクを超えない把持形態を選択することができるので、把持対象物１１０を把持して移動させる動作全体にわたって、把持状態を維持し続けることが可能な把持形態を選択することができる。
【００５７】
また、本実施形態では、上記のように、制御装置４０を、抽出された複数の把持形態の候補の各々に対して、関節トルク演算部４７により、移動経路における多指ハンド部２０の各関節部（関節部２１ｂ〜２３ｂおよび関節部２１ｃ〜２３ｃ）の関節トルクの最大値を算出するとともに、関節トルクの最大値の最も小さい把持形態を選択するように構成することによって、移動経路の全体にわたって、把持状態を維持するための多指ハンド部２０に対する負荷（関節トルク）の最大値が最も小さい把持形態を選択することができるので、把持対象物１１０の把持状態を維持しながら、多指ハンド部２０の負担の最も小さい把持形態を選択することができる。
【００５８】
また、本実施形態では、上記のように、制御装置４０を、抽出された複数の把持形態の候補の各々に対して、関節トルク演算部４７により、移動経路における多指ハンド部２０の各関節部（関節部２１ｂ〜２３ｂおよび関節部２１ｃ〜２３ｃ）の関節トルクが多指ハンド部２０の許容関節トルク以下であるか否かを判断するとともに、多指ハンド部２０の各関節部（関節部２１ｂ〜２３ｂおよび関節部２１ｃ〜２３ｃ）の関節トルクが多指ハンド部２０の許容関節トルク以下であると判断した場合に、多指ハンド部２０の各関節部（関節部２１ｂ〜２３ｂおよび関節部２１ｃ〜２３ｃ）の関節トルクの最大値を算出するように構成する。このように構成することによって、把持形態の候補の各々について、移動経路における多指ハンド部２０の各関節部（関節部２１ｂ〜２３ｂおよび関節部２１ｃ〜２３ｃ）の関節トルクが多指ハンド部２０の許容関節トルク以下となる条件の下で関節トルクの最大値が算出されるので、多指ハンド部２０による把持が可能な許容関節トルク以下となる把持形態の候補のみを対象として、多指ハンド部２０に対する負荷（関節トルクの最大値）の最大値が最も小さい把持形態を選択することができる。
【００５９】
また、本実施形態では、上記のように、制御装置４０を、多指ハンド部２０の各関節部（関節部２１ｂ〜２３ｂおよび関節部２１ｃ〜２３ｃ）の関節トルクが多指ハンド部２０の許容関節トルクよりも大きいと判断した場合には、多指ハンド部２０の各関節部（関節部２１ｂ〜２３ｂおよび関節部２１ｃ〜２３ｃ）の関節トルクの最大値を算出せずに、把持形態の候補から外すように構成することによって、ある把持形態の候補について、多指ハンド部２０の許容関節トルクを超える関節トルクが算出された場合には、以降の関節トルクの最大値の算出処理を行うことなく、次の把持形態の候補についての関節トルクの算出を行うことができる。これにより、制御装置４０の処理負荷を軽減して効率的に把持形態の選択を行うことができる。
【００６０】
また、本実施形態では、上記のように、制御装置４０を、抽出された複数の把持形態の候補についての多指ハンド部２０の関節トルクに基づいて、抽出された把持形態の候補の中から１つの把持形態を選択するように構成することによって、多指ハンド部２０の関節トルクに基づいて、多指ハンド部２０に加わる関節トルクが許容関節トルクを超えない把持形態を選択することができる。
【００６１】
また、本実施形態では、上記のように、制御装置４０を、把持形態選択部４６により、把持対象物１１０の位置情報および形状情報に加えて姿勢情報にも基づいて多指ハンド部２０による把持形態の候補を複数抽出するように構成することによって、把持対象物１１０の位置情報および形状情報のみならず、把持対象物１１０の姿勢情報にも基づいて把持形態を選択することができるので、より適切な把持形態を選択することができる。
【００６２】
また、本実施形態では、上記のように、制御装置４０を、多指ハンド部２０による把持形態に関する情報が記憶された把持形態選択部４６により、把持形態の中から把持対象物１１０の位置情報および形状情報に基づいて多指ハンド部２０による把持形態の候補を複数抽出するように構成することによって、把持形態に関する情報が記憶された把持形態選択部４６から複数の把持形態の候補を抽出することができるので、個々の把持対象物１１０に応じて制御装置４０が複数の把持形態を算出する必要がない。この結果、把持形態を選択する際の制御装置４０の処理負荷を軽減して、高速な処理動作を行うことができる。
【００６３】
また、本実施形態では、上記のように、制御装置４０を、把持対象物１１０の位置情報および形状情報に基づいて移動経路における多指ハンド部２０の把持姿勢の情報を取得するとともに、移動経路における把持姿勢の情報と、把持対象物１１０に対する多指ハンド部２０の指部２１〜２３の配置の情報と、把持対象物１１０の想定質量の情報と、必要な把持力の情報とに基づいて、移動経路における多指ハンド部２０の各関節部（関節部２１ｂ〜２３ｂおよび関節部２１ｃ〜２３ｃ）の関節トルクの最大値を算出するとともに、関節トルクの最大値の最も小さい把持形態を選択するように構成する。このように構成することによって、多指ハンド部２０の各関節部（関節部２１ｂ〜２３ｂおよび関節部２１ｃ〜２３ｃ）の関節トルクを算出するために必要な情報が把持形態選択部４６に記憶されているので、制御装置４０は、把持対象物１１０の位置情報および形状情報に基づいて移動経路における多指ハンド部２０の把持姿勢を決定すれば、容易に、間接トルク演算部４７により移動経路における多指ハンド部２０の各関節部（関節部２１ｂ〜２３ｂおよび関節部２１ｃ〜２３ｃ）の関節トルクを算出することができる。この結果、容易に、関節トルクの最大値の最も小さい把持形態を選択することができる。
【００６４】
なお、今回開示された実施形態は、すべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した実施形態の説明ではなく特許請求の範囲によって示され、さらに特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれる。
【００６５】
たとえば、上記一実施形態では、本発明を生活支援ロボットとして用いるロボット装置１００に適用した例を示したが、本発明はこれに限られない。本発明は、ロボットアームおよび多指ハンド部を備える装置であれば、生活支援ロボット以外のロボット装置に適用可能である。たとえば、本発明を各種の産業用ロボット装置に適用してもよい。
【００６６】
また、上記一実施形態では、本発明の検出手段の一例として視覚センサ（カメラ）を設けるとともに、本発明の情報取得手段の一例として画像処理部を設けた例を示したが、本発明はこれに限られない。本発明では、視覚センサ（カメラ）以外にも、ユーザがキーボードなどの入力装置により把持対象物の位置座標を入力するように構成してもよい。また、視覚センサおよび画像処理部とタッチパネルとを組み合わせて、ユーザがタッチパネルの画面上で把持対象物を選択するように構成してもよい。この他、視覚センサ以外の距離センサなどを用いて把持対象物の位置情報を取得してもよいし、たとえば圧力センサをアレイ状に配置して、圧力センサ（アレイ）上に置かれた把持対象物の位置情報を取得するように構成してもよい。
【００６７】
また、上記一実施形態では、たとえば単純形状物１１１の把持形態として、把持形態Ａ−１およびＢ−１の２種類６通り（指部２１〜２３の配置の相違によってそれぞれ３パターン、合計６通り）の把持形態の例（図２参照）を示し、カップ１１２の把持形態として、把持形態Ｃ−１、Ｄ−１およびＥ−１の３種類（９通り）の把持形態の例（図３参照）を示したが、本発明はこれに限られない。上記した把持形態は一例であり、本発明では、上記以外の把持形態で把持するように構成してもよい。把持形態は、１つの把持対象物について複数の把持形態の内から選択可能であれば、何種類あってもよい。
【００６８】
また、上記一実施形態では、アーム姿勢演算部４４と、ハンド姿勢演算部４５と、関節トルク演算部４７とを含む制御装置４０を設けた例を示したが、本発明はこれに限られない。本発明では、これらのアーム姿勢演算部４４と、ハンド姿勢演算部４５と、関節トルク演算部４７とをまとめて、単一の演算部によってロボット装置の全ての演算を行うように構成してもよい。同様に、アーム制御部４１とハンド制御部４２とをまとめて、単一の動作制御部によってロボット装置の全ての動作制御を行うように構成してもよい。
【００６９】
また、上記一実施形態では、ロボット装置に１本のロボットアームおよび１つの多指ハンド部のみを設けた例を示したが、本発明はこれに限られない。本発明では、ロボットアームおよび多指ハンド部が複数設けられていてもよい。また、１本のロボットアームに複数の多指ハンド部が設けられていてもよい。
【００７０】
また、上記一実施形態では、２自由度の指部を３本有する６自由度の多指ハンド部を設けた例を示したが、本発明では、多指ハンド部の指の自由度および本数はこれに限られない。本発明では、多指ハンド部に２本の指部を設けてもよいし、多指ハンド部に４本以上の指部を設けてもよい。また、指部は、１自由度としてもよいし、３自由度以上としてもよい。また、多指ハンド部の形状や、多指ハンド部の各指部の関節部のそれぞれの位置なども上記一実施形態における構成以外の構成としてもよい。
【００７１】
また、上記一実施形態では、６自由度のロボットアームを設けた例を示したが、本発明はこれに限られない。本発明では、６自由度以外のロボットアームを用いてもよい。同様に、ロボットアームの形状や、ロボットアームの関節部の位置なども上記一実施形態における構成以外の構成としてもよい。
【００７２】
また、上記一実施形態では、把持対象物の位置情報、姿勢情報および形状情報に基づいて把持形態の複数の候補を抽出するように構成した例を示したが、本発明はこれに限られない。本発明では、少なくとも把持対象物の位置情報および形状情報に基づいて把持形態の複数の候補を抽出するように構成すればよい。したがって、把持対象物の姿勢情報に基づくことなく、把持対象物の位置情報および形状情報のみに基づいて把持形態の候補を抽出してもよいし、把持対象物の位置情報および形状情報に加えて、把持対象物の姿勢情報以外の情報にも基づいて把持形態の候補を抽出してもよい。
【００７３】
また、上記一実施形態では、把持開始点、中継点および把持終了点を含む移動経路の各点（各位置）における多指ハンド部の各関節部の関節トルクに基づいて、把持形態を選択するように構成した例を示したが、本発明はこれに限られない。移動経路によっては中継点を含まない場合もあるので、本発明では、把持開始点および把持終了点における多指ハンド部の各関節部の関節トルクに基づいて、把持形態を選択してもよい。また、本発明では、把持開始点、中継点および把持終了点以外の、たとえば把持開始点から中継点への移動中の多指ハンド部の各関節部の関節トルクにも基づいて、把持形態を選択するように構成してもよい。
【００７４】
また、上記一実施形態では、多指ハンド部２０の全ての関節部（関節部２１ｂ〜２３ｂおよび関節部２１ｃ〜２３ｃ）の関節トルクに基づいて、把持形態を選択するように構成した例を説明したが、本発明はこれに限られない。本発明では、たとえば関節部２１ｂ〜２３ｂの関節トルクまたは関節部２１ｃ〜２３ｃの関節トルクに基づいて、把持形態を選択するように構成してもよい。
【００７５】
また、上記一実施形態では、多指ハンド部２０の各関節部（関節部２１ｂ〜２３ｂおよび関節部２１ｃ〜２３ｃ）の関節トルクが多指ハンド部２０の許容関節トルク以下で、かつ、関節トルクの最大値の最も小さい把持形態を選択するように構成した例を示したが、本発明はこれに限られない。本発明では、各関節部の関節トルクが多指ハンド部の許容関節トルク以下となる把持形態の内から、任意の把持形態を選択するように構成してもよい。
【００７６】
また、上記一実施形態では、本発明の把持形態データベースの一例である把持形態選択部４６を制御装置４０が含むように構成した例を示したが、本発明はこれに限られない。たとえば、把持形態データベースを外部のサーバに設けるとともに、制御装置が外部のサーバにアクセスして、把持形態や把持形態に関する情報を取得するように構成してもよい。
【００７７】
また、上記一実施形態におけるロボット装置１００の動作時の処理フローにおいては、ステップＳ３〜Ｓ９までの処理を複数の把持形態の候補についてそれぞれ実行することによって各把持形態（候補）の関節トルクの最大値を算出し、その後、ステップＳ１０で関節トルクの最大値を比較することによって１つの把持形態を選択するように構成した例を示したが、本発明はこれに限られない。本発明では、把持形態毎に関節トルクの最大値を比較して、最後に残った把持形態を採用（選択）するように構成してもよい。すなわち、１〜４までの把持形態が存在した場合に、把持形態１と２とを比較して把持形態１の方が関節トルクの最大値が小さければ、把持形態２を候補から除外するとともに、次に把持形態１と３とを比較する。これを繰り返すことにより、最後に残った把持形態（関節トルクの最大値が最も小さい把持形態）を採用（選択）するように構成してもよい。
【００７８】
また、上記一実施形態では、多指ハンド部の関節トルクに基づいて把持形態を選択するように構成した例を示したが、本発明はこれに限られない。たとえば、把持対象物の形状と把持形態との関係によっては、ロボット装置の周囲の障害物と把持対象物とが接触しやすい場合がある。このため、把持形態毎に障害物との接触のし易さを評価するとともに、多指ハンド部の関節トルクに加えて、把持形態による障害物との接触し易さに関する情報に基づいて把持形態を選択するように構成してもよい。
【符号の説明】
【００７９】
１０  ロボットアーム
２０  多指ハンド部
３０  視覚センサ（検出手段）
４０  制御装置（制御部）
４３  画像処理部（情報取得手段）
４６  把持形態選択部（把持形態データベース）
１００  ロボット装置
１１０  把持対象物
１１１  単純形状物（把持対象物）
１１２  カップ（把持対象物）
【図１】
0005560948.tif 000002
【図２】
0005560948.tif 000003
【図３】
0005560948.tif 000004
【図４】
0005560948.tif 000005
【図５】
0005560948.tif 000006