(57)【要約】【課題】駆動部に関する作動状態パラメータと該駆動部により作動する指部材に関する作動状態パラメータとの関係が非線形の関係となっているロボットハンドの指部材の作動をフィードバック制御で制御する際に、その制御精度を向上することができるロボットハンド装置を提供する。【解決手段】ロボットハンド制御装置２０は、フィードバック制御で得られる演算値に対して、第１行列と第２行列の積の逆行列を乗算して得られた結果を駆動モータ６０のドライバ１２へ出力する。第１行列は、リンク機構を介して指部材に動力を伝達する直動体の作動状態パラメータと指部材の関節の作動状態パラメータのヤコビ行列とする。また、第２行列は、駆動モータの作動状態パラメータと直動体の作動状態パラメータのヤコビ行列とする。【選択図】図１
2018144130.tif 000002
【特許請求の範囲】
【請求項１】
指部材と、前記指部材を関節により揺動自在に支持する指支持部材と、を備え、前記指支持部材には、直動自在に設けられた直動体と、前記直動体の動力を前記指部材に対して非線形で伝達して揺動を付与する伝達機構と、前記直動体に動力を付与する駆動部と、前記指部材または前記関節の作動状態を示すパラメータを取得する作動状態取得部と、を有するロボットハンドと、
前記指部材を、前記パラメータに基づいて、前記駆動部を介して前記指部材の作動をフィードバック制御する制御部を備えたロボットハンド装置であって、
前記制御部は、前記フィードバック制御で得られる演算値に対して、第１行列と第２行列の積の逆行列を乗算して得られた結果を前記駆動部のドライバへ出力するものであり、
第１行列は、前記直動体の作動状態パラメータと前記関節の作動状態パラメータのヤコビ行列であり、
第２行列は、前記駆動部の作動状態パラメータと前記直動体の作動状態パラメータのヤコビ行列であるロボットハンド装置。
【請求項２】
前記駆動部は回転式モータであり、前記直動体は前記回転式モータに作動連結されたボールネジにより直動するものであり、前記伝達機構はリンク機構である請求項１に記載のロボットハンド装置。
【請求項３】
前記駆動部は前記直動体を直動する直動モータであり、前記伝達機構はリンク機構である請求項１に記載のロボットハンド装置。
【請求項４】
前記作動状態取得部は、前記関節の作動状態を示すパラメータとして前記関節の関節角度を検出または演算により取得するものであり、
前記駆動部の作動状態パラメータは、前記駆動部の作動量であり、
前記直動体の作動状態パラメータは、前記直動体の移動量であり、
前記関節の作動状態パラメータは、関節角度である請求項２または請求項３に記載のロボットハンド装置。
【請求項５】
前記作動状態取得部は、前記指部材の作動状態を示すパラメータとして前記指部材の先端位置を検出または演算により取得するものであり、
前記駆動部の作動状態パラメータは、前記駆動部の作動量であり、
前記直動体の作動状態パラメータは、前記直動体の移動量であり、
前記関節の作動状態パラメータは、関節角度である請求項２または請求項３に記載のロボットハンド装置。
【請求項６】
前記作動状態取得部は、前記関節の作動状態を示すパラメータとして前記関節の関節トルクを検出または演算により取得するものであり、
前記駆動部の作動状態パラメータは、駆動部トルクであり、
前記直動体の作動状態パラメータは、前記直動体の推力であり、
前記関節の作動状態パラメータは、関節トルクである請求項２または請求項３に記載のロボットハンド装置。
【請求項７】
前記作動状態取得部は、前記指部材の作動状態を示すパラメータとして前記指部材の先端力を検出または演算により取得するものであり、
前記駆動部の作動状態パラメータは、駆動部トルクであり、
前記直動体の作動状態パラメータは、前記直動体の推力であり、
前記関節の作動状態パラメータは、関節トルクである請求項２または請求項３に記載のロボットハンド装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットハンド装置に関する。
【背景技術】
【０００２】
本出願人は、特許文献１のロボットハンドを提案している。図２は前記ロボットハンドを構成している各指を作動させる構成の原理図である。同図に示すように、指部材５０の基端は関節となる関節軸５２にて、隣接する指支持部材５４に回動自在に支持されている。なお、前記指支持部材５４は、隣接する他の指部材、または、掌部材である。指部材５０は、前記指支持部材５４に設けられた回転式モータである駆動モータ６０、及び駆動モータ６０の動力を伝達する伝達機構７０により作動する。
【０００３】
伝達機構７０は、ギヤヘッド７２、ギヤヘッド７２の入力軸と駆動モータ６０の出力軸間に設けられた平歯車列７４、ギヤヘッド７２の出力軸とボールネジ７８の入力軸間に設けられた平歯車列７６、ボールネジ７８により直動する直動体（例えばナット体）８０、直動体８０と関節軸５２間に連結された一対のリンク８１、８２とを有している。リンク８１，８２、ボールネジ７８、及び直動体８０は、スライダークランク機構を構成する。駆動モータ６０が回転すると、平歯車列７４、ギヤヘッド７２、及び平歯車列７６が作動してボールネジ７８が回転し、ボールネジ７８の回転により、直動体８０が移動することにより、一対のリンク８１、８２及び関節軸５２を介して指部材５０が回転する。
【０００４】
上記のように構成された指部材５０（指）を有するロボットハンドの従来の制御方法について説明する。まず、この制御方法において、関係する各種のパラメータについて説明する。ボールネジ７８により生じる直動体８０の移動量ｘｂは、下記の通りである。
【０００５】
【数１】
2018144130.tif 000003
モータトルクτＭにより生じるボールネジ７８の推力Ｆｂ式（２）に示す。なお、ここより下の式には機構等の効率は含まれていない。
【０００６】
【数２】
2018144130.tif 000004
次に直動体８０の移動量ｘｂにより生じる関節角度θｊを式（３）に示す。なお、下付き「ｊ」は、ロボットハンド１０（図７参照）の関節の数である。
【０００７】
【数３】
2018144130.tif 000005
【０００８】
【数４】
2018144130.tif 000006
【０００９】
【数５】
2018144130.tif 000007
【００１０】
【数６】
2018144130.tif 000008
【００１１】
【数７】
2018144130.tif 000009
【００１２】
【数８】
2018144130.tif 000010
直動体８０の推力Ｆｂにより生じる関節トルクτｊを式（９）に示す。
【００１３】
【数９】
2018144130.tif 000011
関節角度θｊにより生じる指先位置ｘｆを式（１０）に示す。なお、下付の「ｆ」はロボットハンド１０の指先の数である。
【００１４】
【数１０】
2018144130.tif 000012
関節トルクτｊにより生じる指先力Ｆｆを式（１１）に示す。
【００１５】
【数１１】
2018144130.tif 000013
【００１６】
【数１２】
2018144130.tif 000014
駆動モータ６０の回転角度θＭと指先位置ｘｆの関係は、式（１０）により、非線形であることが分かる。また、駆動モータ６０のモータトルクτＭと指先力Ｆfとの関係も式（１２）により非線形であることが分かる。
【００１７】
＜関節角度の制御＞
図７の制御ブロックで示すように、従来の一般的な関節角度のフィードバック制御では、例えばＰＩＤ制御により行っている。
【００１８】
このＰＩＤ制御について説明すると、図７に示すように、減算器１００により、図示しない上位制御部から出力された目標値であるθｊｄと、関節角度θｊとの偏差が算出され、該偏差は比例演算部１１０で比例ゲインが乗算されてその算出結果が加算器１６０に出力される。
【００１９】
なお、関節角度θｊは、演算器１８０により式（１）、式（３）等に基づいて算出される。また、回転角度θＭは、駆動モータ６０に設けられた図示しない検出部（ロータリーエンコード等）により検出される。式（１）、式（３）及びこれらの式に関するパラメータは、固定値、または、式（５）〜式（８）で算出される値である。前記固定値は、前記制御ブロックを実現する図示しない制御装置の記憶部に記憶される。以下、他の制御で使用される式、及び固定値も同様である。また、前記偏差は、積分器１２０及び積分ゲイン演算部１３０にて演算されてその演算結果が加算器１６０に出力される。また、前記偏差は、微分器１４０及び微分ゲイン演算部１５０にて演算されてその演算結果が加算器１６０に出力される。加算器１６０は、比例演算部１１０、積分ゲイン演算部１３０、及び微分ゲイン演算部１５０の出力値を加算して得たトルク指令ｕＭを、ロボットハンド１０の各指をそれぞれ駆動する駆動モータ６０の図示しないドライバに出力する。
【００２０】
図７に示す関節角度の制御（ＰＩＤ制御）で得られるトルク指令ｕＭは、式（１３）で表わすことができる。
【００２１】
【数１３】
2018144130.tif 000015
＜指先位置の制御＞
次に、従来の指先位置の制御について説明する。図８の制御ブロックで示すように、従来の一般的な指先位置のフィードバック制御では、例えばＰＩＤ制御により行っている。このＰＩＤ制御について説明すると、図８に示すように、減算器２００により、図示しない上位制御部から出力された目標値であるｘｆｄと、ロボットハンド１０の指先位置ｘｆとの偏差が算出される。
【００２２】
なお、指先位置ｘｆは、駆動モータ６０に設けられた図示しない検出部（ロータリーエンコード等）が検出した回転角度θＭを入力した演算器２８０により式（１０）、及び式（１０）に関連したパラメータを算出する式（３）〜式（８）等に基づいて算出される。
【００２３】
前記偏差は、比例演算部２１０で、比例ゲインが乗算されるとともにトルク変換されてその算出結果が加算器２６０に出力される。また、前記偏差は、積分器２２０で積分されて、積分ゲイン演算部２３０で積分ゲインが乗算されるとともにトルク変換されてその演算結果が加算器２６０に出力される。また、前記偏差は、微分器２４０で微分されて、微分ゲイン演算部２５０で微分ゲインが乗算されるとともにトルク変換されてその演算結果が加算器２６０に出力される。
【００２４】
加算器２６０は、比例演算部２１０、積分ゲイン演算部２３０、及び微分ゲイン演算部２５０の出力値を加算して得たトルク指令ｕＭを、ロボットハンド１０の各指をそれぞれ駆動する駆動モータ６０の図示しないドライバに出力する。
【００２５】
図８に示す関節角度の制御（ＰＩＤ制御）で得られるトルク指令ｕＭは、式（１４）で表わすことができる。
【００２６】
【数１４】
2018144130.tif 000016
＜関節トルクの制御＞
従来の関節トルクの制御について説明する。図９の制御ブロックで示すように、従来の一般的な関節トルクのフィードバック制御では、例えばＰＩ制御により行っている。図９に示すように、減算器３００により、図示しない上位制御部から出力された目標値であるτｊｄと、関節トルクτｊとの偏差が算出される。前記関節トルクτｊは、図示しないモータトルクの検出部（例えばモータ電流の検出部）から出力したモータトルクτＭを入力する演算器３８０によって算出される。具体的には、演算器３８０は、式（９）及び式（９）中のパラメータを算出する式（２）〜式（８）等に基づいて、関節トルクτｊを算出する。
【００２７】
前記偏差は比例演算部３１０で、比例ゲインが乗算されてその算出結果が加算器３６０に出力される。また、前記偏差は、積分器３２０及び積分ゲイン演算部３３０により演算されてその演算結果が加算器３６０に出力される。加算器３６０は、比例演算部３１０、及び積分ゲイン演算部３３０の出力値を加算して得たトルク指令ｕＭを、ロボットハンド１０の各指をそれぞれ駆動する駆動モータ６０の図示しないドライバに出力する。
【００２８】
図９に示す関節角度の制御（ＰＩ制御）で得られるトルク指令ｕＭは、式（１５）で表わすことができる。
【００２９】
【数１５】
2018144130.tif 000017
＜指先力の制御＞
従来の指先力の制御について説明する。図１０の制御ブロックで示すように、従来の一般的な指先力のフィードバック制御では、例えばＰＩ制御により行っている。図１０に示すように、減算器４００により、図示しない上位制御部から出力された目標値であるＦｆｄと、指先力Ｆｆとの偏差が算出される。前記指先力Ｆｆは、図示しないモータトルクの検出部（例えばモータ電流の検出部）から出力したモータトルクτＭを入力する演算器４８０によって算出される。具体的には、演算器４８０は、式（１２）及び式（１２）中のパラメータを算出する式（２）、式（９）等に基づいて、関節トルクτｊを算出する。前記偏差は比例演算部４１０で、比例ゲインが乗算されるとともにトルク変換されて加算器４６０に算出結果が出力される。
【００３０】
また、前記偏差は、積分器４２０で積分されて、積分ゲイン演算部４３０で積分ゲインが乗算されるとともにトルク変換されてその演算結果が加算器４６０に出力される。また、目標値であるＦｆｄは、トルク変換部４４０でトルク変換されて、その演算結果が加算器４６０に出力される。加算器４６０は、比例演算部４１０、積分ゲイン演算部４３０及びトルク変換部４４０の出力値を加算して得たトルク指令ｕＭを、ロボットハンド１０の各指をそれぞれ駆動する駆動モータ６０の図示しないドライバに出力する。
【００３１】
図１０に示す関節角度の制御（ＰＩ制御）で得られるトルク指令ｕＭは、式（１６）で表わすことができる。
【００３２】
【数１６】
2018144130.tif 000018
【先行技術文献】
【特許文献】
【００３３】
【特許文献１】特開２０１４−５４７２０号公報
【発明の概要】
【発明が解決しようとする課題】
【００３４】
ところで、上記ロボットハンドの指部材の作動を上述したフィードバック制御で行う場合、前述したように、駆動モータ６０の回転角度θＭと指先位置ｘｆの関係は、式（１０）により、非線形となる。
【００３５】
また、駆動モータ６０のモータトルクτＭと指先力Ｆｆとの関係も式（１２）により非線形となる。このため、上記従来の制御法は、モータ等の駆動部に関する作動状態パラメータと該駆動部により作動する指部材に関する作動状態パラメータとの関係が非線形の関係であるのに対して、その非線形に対応した制御が行えていないため、制御精度が悪い問題がある。
【００３６】
本発明の目的は、駆動部に関する作動状態パラメータと該駆動部により作動する指部材に関する作動状態パラメータとの関係が非線形の関係となっているロボットハンドの指部材の作動をフィードバック制御で制御する際に、その制御精度を向上することができるロボットハンド装置を提供することにある。
【課題を解決するための手段】
【００３７】
本発明のロボットハンド装置は、指部材と、前記指部材を関節により揺動自在に支持する指支持部材と、を備え、前記指支持部材には、直動自在に設けられた直動体と、前記直動体の動力を前記指部材に対して非線形で伝達して揺動を付与する伝達機構と、前記直動体に動力を付与する駆動部と、前記指部材または前記関節の作動状態を示すパラメータを取得する作動状態取得部と、を有するロボットハンドと、前記指部材を、前記パラメータに基づいて、前記駆動部を介して前記指部材の作動をフィードバック制御する制御部を備えたロボットハンド装置であって、前記制御部は、前記フィードバック制御で得られる演算値に対して、第１行列と第２行列の積の逆行列を乗算して得られた結果を前記駆動部のドライバへ出力するものであり、第１行列は、前記直動体の作動状態パラメータと前記関節の作動状態パラメータのヤコビ行列であり、第２行列は、前記駆動部の作動状態パラメータと前記直動体の作動状態パラメータのヤコビ行列である。
【００３８】
また、前記駆動部は回転式モータであり、前記直動体は前記回転式モータに作動連結されたボールネジにより直動するものであり、前記伝達機構はリンク機構で構成してもよい。
【００３９】
また、前記駆動部は前記直動体を直動する直動モータであり、前記伝達機構はリンク機構としてもよい。
また、前記作動状態取得部は、前記関節の作動状態を示すパラメータとして前記関節の関節角度を検出または演算により取得するものであり、前記駆動部の作動状態パラメータは、前記駆動部の作動量であり、前記直動体の作動状態パラメータは、前記直動体の移動量であり、前記関節の作動状態パラメータは、関節角度としてもよい。
【００４０】
また、前記作動状態取得部は、前記指部材の作動状態を示すパラメータとして前記指部材の先端位置を検出または演算により取得するものであり、前記駆動部の作動状態パラメータは、前記駆動部の作動量であり、前記直動体の作動状態パラメータは、前記直動体の移動量であり、前記関節の作動状態パラメータは、関節角度としてもよい。
【００４１】
また、前記作動状態取得部は、前記関節の作動状態を示すパラメータとして前記関節の関節トルクを検出または演算により取得するものであり、前記駆動部の作動状態パラメータは、駆動部トルクであり、前記直動体の作動状態パラメータは、前記直動体の推力であり、前記関節の作動状態パラメータは、関節トルクとしてもよい。
【００４２】
また、前記作動状態取得部は、前記指部材の作動状態を示すパラメータとして前記指部材の先端力を検出または演算により取得するものであり、前記駆動部の作動状態パラメータは、駆動部トルクであり、前記直動体の作動状態パラメータは、前記直動体の推力であり、前記関節の作動状態パラメータは、関節トルクとしてもよい。
【発明の効果】
【００４３】
本発明によれば、駆動部に関する作動状態パラメータと該駆動部により作動する指部材に関する作動状態パラメータとの関係が非線形の関係となっているロボットハンドの指部材の作動をフィードバック制御で制御する際に、その制御精度を向上することができる効果を奏する。
【図面の簡単な説明】
【００４４】
【図１】ロボットハンド装置の全体概略図。
【図２】ロボットハンドの指部材の作動原理図。
【図３】第１実施形態のロボットハンドの制御ブロック図。
【図４】第２実施形態のロボットハンドの制御ブロック図。
【図５】第３実施形態のロボットハンドの制御ブロック図。
【図６】第４実施形態のロボットハンドの制御ブロック図。
【図７】従来のロボットハンドの制御ブロック図。
【図８】従来のロボットハンドの制御ブロック図。
【図９】従来のロボットハンドの制御ブロック図。
【図１０】従来のロボットハンドの制御ブロック図。
【図１１】第５〜８実施形態のロボットハンドの指部材の作動原理図。
【図１２】スライダークランク機構の設計パラメータの説明図。
【発明を実施するための形態】
【００４５】
（第１実施形態）
以下、本発明を具体化した第１実施形態のロボットハンド装置を図１、図２、図３を参照して説明する。本実施形態は、関節角度を制御するための例である。
【００４６】
図１に示すようにロボットハンド装置は、ロボットハンド１０と、ロボットハンド１０を制御するロボットハンド制御装置２０を備えている。ロボットハンド制御装置２０は、制御部に相当する。本実施形態のロボットハンド１０を構成している各指を作動させる構成は、背景技術で説明した図２と同じであるため、各部材の詳細な説明を省略する。リンク８１、８２は、リンク機構に相当し、伝達機構７０は、リンク機構を有する。このことにより、駆動モータ６０の回転角度θＭと指先位置ｘｆの関係は、非線形であり、駆動モータ６０のモータトルクτＭと指先力Ｆｆとの関係も非線形となっている。
【００４７】
図１に示すように、ロボットハンド制御装置２０は、図示しないＣＰＵ（中央処理装置）、ＲＯＭ（リードオンリーメモリ）及び、ＲＡＭ（ランダムアクセスメモリ）等を備えている。本実施形態では、前記ＣＰＵにより、上位制御部３０と、モータ制御部４０とが構成される。上位制御部３０は、ロボットハンド１０を制御するための各種指令値（すなわち、目標値）をモータ制御部４０に出力する。モータ制御部４０は、前記各種指令値に基づいて、トルク指令ｕＭを、駆動部としての駆動モータ６０のドライバ１２に出力する。ドライバ１２はトルク指令ｕＭに基づいて駆動モータ６０を駆動する。
【００４８】
図１、図２に示すように駆動モータ６０には、モータの回転角度θＭを検出する検出部６２、及びモータトルクτＭを検出する検出部６４を備えている。検出部６２は、例えば、ロータリーエンコード等からなる。検出部６４は、例えば、トルクセンサにて構成してもよく、或いは、ドライバ１２から付与される駆動モータ６０に付与されるモータ電流を検出して、該モータ電流に基づいてトルクを検出するようにしてもよい。
【００４９】
＜関節角度の制御＞
次にロボットハンド制御装置２０によるロボットハンド１０の関節角度のフィードバック制御について説明する。
【００５０】
図３に示すように、本実施形態の関節角度のフィードバック制御は、ＰＩＤ制御である。本実施形態では、背景技術で説明した図７の制御ブロックの構成中、加算器１６０の出力側に、乗算器１７０が設けられているところが、異なっているため、背景技術で説明した各制御ブロックと同一または相当する構成については、同一符号を付して、その説明を省略する。
【００５１】
乗算器１７０は、加算器１６０から出力された演算値に（Ｊ２Ｊ１）−１を乗算し、得た値をトルク指令ｕＭとして、図１に示す、ドライバ１２に出力する。
図３に示す関節角度の制御（ＰＩＤ制御）で得られるトルク指令ｕＭは、式（１７）で表わすことができる。
【００５２】
【数１７】
2018144130.tif 000019
ここで、Ｊ２及びＪ１は、式（１９）及び式（１８）で表わされる。
【００５３】
【数１８】
2018144130.tif 000020
【００５４】
【数１９】
2018144130.tif 000021
なお、Ｊ１は、固定値（すなわち、定数）となるため、予めゲイン（比例ゲイン、積分ゲイン、微分ゲイン）に含ませてもよい。また、Ｊ２は、可変値であり、乗算器１７０が演算する。
【００５５】
Ｊ１は、駆動モータ６０（駆動部）の回転角度θＭ（作動量）と、直動体の移動量のヤコビ行列であって、第２行列に相当する。また、前記回転角度は、駆動部の作動量及び、駆動部の作動状態パラメータに相当する。
【００５６】
一方、Ｊ２は、直動体の移動量と関節角度のヤコビ行列であって、第１行列に相当する。関節角度は、関節の作動状態パラメータに相当する。また、演算器１８０は、作動状態取得部に相当する。
【００５７】
本実施形態では、下記の特徴を有する。
（１）上記のように、本実施形態では、関節角度のフィードバック制御で得られる演算値に対して、第１行列と第２行列の積の逆行列を乗算して得られた結果をドライバ１２へ出力する。このため、直動体８０の動力を指部材５０に対して非線形で伝達して揺動を付与する伝達機構を有していても、ロボットハンドの指部材の作動を、すなわち、関節角度をフィードバック制御で制御する際に、その制御精度を向上することができる。
【００５８】
（第２実施形態）
図４を参照して、第２実施形態のロボットハンド装置、すなわち、指先位置の制御を行うロボットハンド装置を説明する。なお、本実施形態を含めた、以下の実施形態では、ロボットハンド装置のハード構成は、第１実施形態と同様であるため、ハード構成の説明を省略する。
【００５９】
＜指先位置の制御＞
次に指先位置のフィードバック制御について説明する。
図４に示すように、本実施形態の指先位置のフィードバック制御は、ＰＩＤ制御である。本実施形態では、背景技術で説明した図８の制御ブロックの構成中、加算器２６０の出力側に、乗算器２７０が設けられているところが異なっているため、背景技術で説明した各制御ブロックと同一または相当する構成については、同一符号を付して、その説明を省略する。
【００６０】
乗算器２７０は、加算器２６０から出力された演算値に（Ｊ２Ｊ１）−１を乗算し、得た値をトルク指令ｕＭとして、図１に示すドライバ１２に出力する。なお、乗算器２７０は、前記実施形態の乗算器１７０と同様の構成である。
【００６１】
図４に示す関節角度の制御（ＰＩＤ制御）で得られるトルク指令ｕＭは、式（２０）で表わすことができる。
【００６２】
【数２０】
2018144130.tif 000022
本実施形態では、演算器２８０は、作動状態取得部に相当する。
【００６３】
本実施形態では、下記の特徴を有する。
（１）本実施形態では、指先位置のフィードバック制御で得られる演算値に対して、第１行列と第２行列の積の逆行列を乗算して得られた結果をドライバ１２へ出力する。このため、直動体８０の動力を指部材５０に対して非線形で伝達して揺動を付与する伝達機構を有していても、ロボットハンドの指部材の作動を、すなわち、指先位置をフィードバック制御で制御する際に、その制御精度を向上することができる。
【００６４】
（第３実施形態）
図５を参照して、第３実施形態のロボットハンド装置、すなわち、関節トルクの制御を行うロボットハンド装置を説明する。
【００６５】
＜関節トルクの制御＞
図５に示すように、本実施形態の関節トルクのフィードバック制御は、ＰＩ制御である。本実施形態では、背景技術で説明した図９の制御ブロックの構成中、加算器３６０の出力側に、乗算器３７０が設けられているところが、異なっているため、背景技術で説明した各制御ブロックと同一または相当する構成については、同一符号を付して、その説明を省略する。
【００６６】
乗算器３７０は、加算器３６０から出力された演算値に（Ｊ４Ｊ３）−１を乗算し、得た値をトルク指令ｕＭとして、図１に示す、ドライバ１２に出力する。
図５に示す関節トルクの制御（ＰＩ制御）で得られるトルク指令ｕＭは、式（２１）で表わすことができる。
【００６７】
【数２１】
2018144130.tif 000023
ここで、Ｊ３及びＪ４は、式（２２）及び式（２３）で表わされる。
【００６８】
【数２２】
2018144130.tif 000024
【００６９】
【数２３】
2018144130.tif 000025
なお、Ｊ３は、固定値となるため、予めゲイン（比例ゲイン、積分ゲイン）に含ませてもよい。
【００７０】
Ｊ３は、駆動モータ６０（駆動部）のモータトルクτＭと、直動体の推力のヤコビ行列であって、第２行列に相当する。ここで前記モータトルクτＭは、駆動部の作動状態パラメータ及び駆動部トルクに相当する。直動体の推力は、直動体の推力の作動状態パラメータに相当する。
【００７１】
一方、Ｊ４は、直動体の推力と関節トルクのヤコビ行列であって、第１行列に相当する。関節トルクは、関節の作動状態パラメータに相当する。また、演算器３８０は、作動状態取得部に相当する。
【００７２】
本実施形態では、下記の特徴を有する。
（１）上記のように、本実施形態では、関節トルクのフィードバック制御で得られる演算値に対して、第１行列と第２行列の積の逆行列を乗算して得られた結果をドライバ１２へ出力する。このため、直動体８０の動力を指部材５０に対して非線形で伝達して揺動を付与する伝達機構を有していても、ロボットハンドの指部材の作動を、すなわち、関節トルクをフィードバック制御で制御する際に、その制御精度を向上することができる。
【００７３】
（第４実施形態）
図６を参照して、第４実施形態のロボットハンド装置、すなわち、指先力の制御を行うロボットハンド装置を説明する。
【００７４】
＜指先力の制御＞
図６に示すように、本実施形態の指先力のフィードバック制御は、ＰＩ制御である。
本実施形態では、背景技術で説明した図９の制御ブロックの構成中、加算器４６０の出力側に、乗算器４７０が設けられているところが、異なっているため、背景技術で説明した各制御ブロックと同一または相当する構成については、同一符号を付して、その説明を省略する。
【００７５】
乗算器４７０は、加算器４６０から出力された演算値に（Ｊ４Ｊ３）−１を乗算し、得た値をトルク指令ｕＭとして、図１に示す、ドライバ１２に出力する。
図６に示す指先力の制御（ＰＩ制御）で得られるトルク指令ｕＭは、式（２４）で表わすことができる。
【００７６】
【数２４】
2018144130.tif 000026
演算器４８０は、作動状態取得部に相当する。
【００７７】
本実施形態では、下記の特徴を有する。
（１）本実施形態では、指先力のフィードバック制御で得られる演算値に対して、第１行列と第２行列の積の逆行列を乗算して得られた結果をドライバ１２へ出力する。このため、直動体８０の動力を指部材５０に対して非線形で伝達して揺動を付与する伝達機構を有していても、ロボットハンドの指部材の作動を、すなわち、指先力をフィードバック制御で制御する際に、その制御精度を向上することができる。
【００７８】
次に、第５〜８実施形態について説明する。
図１１に示すように、第５〜８実施形態のロボットハンド装置は、第１〜４実施形態のハード構成中、ボールネジ７８、及び伝達機構７０（ギアヘッド７２、平歯車列７４、７６）が省略されるとともに、直動体８０の回転式モータである駆動モータ６０を、直動モータ（例えば、リニアモータ）に変更したものである。すなわち、スライダークランク機構の構成が変更されている。図１１では、直動モータ９０は、フラット型のリニアモータであって、交互にＮＳの磁石列（図示しない）を可動方向へ配列した固定子９２上を、直動体である可動子９４が直動するようにされている。ロボットハンド装置の他の構成は、第１〜第４実施形態と同様に構成されている。なお、リニアモータは、フラット型に限定するものではなく、他の形式のものであってもよい。
【００７９】
（第５実施形態）
第５実施形態は、図１及び図１１で示すロボットハンド装置が、関節角度を制御するための例である。
【００８０】
＜関節角度の制御＞
図３において、本実施形態では、乗算器１７０は、加算器１６０から出力された演算値に（Ｊ２Ｊ１）−１を乗算し、得た値をトルク指令ｕＭとして、図１に示す、ドライバ１２に出力する。
【００８１】
なお、本実施形態では、上述したように直動モータ９０により、可動子９４（直動体）を駆動するため、ヤコビ行列Ｊ１＝１である。このことから、実質的には、乗算器１７０は、（Ｊ２）−１を乗算することになる。
【００８２】
図３に示す関節角度の制御（ＰＩＤ制御）で得られるトルク指令ｕＭは、式（２５）で表わすことができる。
【００８３】
【数２５】
2018144130.tif 000027
（第６実施形態）
第６実施形態は、図１及び図１１で示すロボットハンド装置が、指先位置を制御するための例である。
【００８４】
＜指先位置の制御＞
図４において、本実施形態では、乗算器２７０は、加算器２６０から出力された演算値に（Ｊ２）−１を乗算し、得た値をトルク指令ｕＭとして、図１に示す、ドライバ１２に出力する。
【００８５】
第５実施形態と同様に本実施形態では、乗算器１７０が（Ｊ２）−１を乗算することは、第１実施形態が、（Ｊ２Ｊ１）−１を乗算していることと相違しているように見えるが、上述したように直動モータ９０により、可動子９４（直動体）を駆動するため、ヤコビ行列Ｊ１＝１である。このことから、（Ｊ２Ｊ１）−１を乗算していると同義である。
【００８６】
図４に示す指先位置の制御（ＰＩＤ制御）で得られるトルク指令ｕＭは、式（２６）で表わすことができる。
【００８７】
【数２６】
2018144130.tif 000028
（第７実施形態）
第７実施形態は、図１及び図１１で示すロボットハンド装置が、関節トルクを制御するための例である。
【００８８】
＜関節トルクの制御＞
図３において、本実施形態では、乗算器３７０は、加算器３６０から出力された演算値に（Ｊ４Ｊ３）−１を乗算し、得た値をトルク指令ｕＭとして、図１に示す、ドライバ１２に出力する。
【００８９】
なお、本実施形態では、上述したように直動モータ９０により、可動子９４（直動体）を駆動するため、ヤコビ行列Ｊ３＝１である。このことから、実質的には、乗算器３７０は、（Ｊ４）−１を乗算することになる。
【００９０】
図５に示す関節トルクの制御（ＰＩ制御）で得られるトルク指令ｕＭは、式（２７）で表わすことができる。
【００９１】
【数２７】
2018144130.tif 000029
（第８実施形態）
第８実施形態は、図１及び図１１で示すロボットハンド装置が、指先力を制御するための例である。
【００９２】
＜指先力の制御＞
図６において、本実施形態では、乗算器４７０は、加算器４６０から出力された演算値に（Ｊ４Ｊ３）−１を乗算し、得た値をトルク指令ｕＭとして、図１に示す、ドライバ１２に出力する。
【００９３】
なお、本実施形態では、上述したように直動モータ９０により、可動子９４（直動体）を駆動するため、ヤコビ行列Ｊ３＝１である。このことから、実質的には、乗算器３７０は、（Ｊ４）−１を乗算することになる。
【００９４】
図６に示す指先力の制御（ＰＩＤ制御）で得られるトルク指令ｕＭは、式（２８）で表わすことができる。
【００９５】
【数２８】
2018144130.tif 000030
なお、本発明の実施形態は前記実施形態に限定されるものではなく、下記のように変更しても良い。
【００９６】
・第１実施形態及び第５実施形態では、関節角度θｊを演算器１８０で算出したが、関節角度θｊを検出する角度検出部を作動状態取得部として関節軸５２に設けて、演算器１８０を省略してもよい。
【００９７】
・第２実施形態及び第６実施形態では、指先位置ｘｆを演算器２８０で算出したが、指先位置ｘｆを検出する位置検出部を作動状態取得部として指部材５０に設けて、演算器２８０を省略してもよい。
【００９８】
・第３実施形態及び第７実施形態では、関節トルクτjを演算器３８０で算出したが、関節トルクτjを検出する関節トルク検出部を作動状態取得部として関節軸５２に設けて、演算器３８０を省略してもよい。
【００９９】
・第４実施形態及び第８実施形態では、指先力Ｆｆを演算器４８０で算出したが、指先力Ｆｆを検出する指部材５０の先端に設けて、演算器１８０を省略してもよい。例えば、圧力センサを作動状態取得部として、指部材が物を把持する指先に設けて、該圧力センサにより指先力Ｆｆを検出するようにしてもよい。
【０１００】
・ＰＩＤ制御で説明した実施形態（第１実施形態、第２実施形態、第５実施形態、第６実施形態）を、ＰＩ制御、ＰＤ制御またはＰ制御に変更してもよい。
・ＰＩ制御で説明した実施形態（第３実施形態、第４実施形態、第７実施形態、及び第８実施形態）を、ＰＩＤ制御、ＰＤ制御またはＰ制御に変更してもよい。
【０１０１】
・前記第２実施形態及び第６実施形態では、指先位置の制御としたが、指先以外の、指部材の先端位置のフィードバック制御にすることも可能である。
・伝達機構７０はリンク機構に限定するものではなく、非線形で動力を伝達する他の機構であってもよい。
【０１０２】
＜ロボットハンドの設計方法＞
図１２を参照して、ロボットハンドの設計方法を説明する。
スライダークランク機構を利用したロボットハンドの設計パラメータは、指部材の指長ｒ、スライダークランク機構の設計パラメータｌ１，ｌ２，ｌ３，ｘ、指先力Ｆｆ、関節トルクτｊである。
【０１０３】
これらの設計パラメータの設計方法は、（１）指先力Ｆｆ、指長ｒ、（２）関節トルクτｊ、（３）スライダークランク機構の設計パラメータｌ１，ｌ２，ｌ３，ｘ、（４）ボールネジ（ネジ部材）と駆動モータ（駆動部）間の減速機構に関する設計パラメータ、（５）モータ特性、のそれぞれの決定が必要である。
【０１０４】
一般的には、決定した（１）の設計パラメータを基に（３）〜（５）の設計パラメータを試行錯誤的に求める。なお、（２）の関節トルクτｊは、（１）のパラメータが決定されれば、式（１１）に基づいて一般的に一意に決まる。
【０１０５】
しかし、例えば、（４）、（５）の設計パラメータを決定してこれらを条件にしても、（３）は複数のパラメータ候補が存在するため、一意に決定することができない。なお、第１実施形態では、ボールネジ７８と駆動モータ６０（駆動部）間の減速機構は、平歯車列７４、７６、ギヤヘッド７２にて構成されている。このため、（４）の、ボールネジとモータ（駆動部）間の減速機構に関連するパラメータは、ギヤヘッド減速比Ｇｈ、機構減速比（平歯車等）Ｇｂ、ホールネジのリードＰｈである。
【０１０６】
ここで、ロボット指の小型化、ひいてはロボットハンドの小型化を課題の一つとした場合、（４）及び（５）の設計パラメータについては、駆動モータ及びボールネジを小型とするための選択肢は限定される。
【０１０７】
このため、前記小型化を課題とすることを前提にして（４）及び（５）を決定し、これを条件として、図１２に示すようにスライダークランク機構の設計パラメータｌ１，ｌ２，ｌ３，ｘで囲まれる面積（または和）が最小となるように決定すれば、小型化の課題を解決することができる。なお、（４）及び（５）の設計パラメータの設定時期は、（１）及び（２）の設定時期よりも前、後、または同時であってもよい。
【０１０８】
上記のことから、ロボット指でロボットハンドの小型化の課題を解決するロボットハンドの設計パラメータの設計方法として、下記の技術的思想が見いだせる。
＜本発明以外の技術的思想＞
指部材と、前記指部材を関節により揺動自在に支持する指支持部材と、を備え、
前記指支持部材には、駆動部と、前記駆動部の回転を減速する減速機構と、前記減速機構を介して前記駆動部の動力を前記関節に伝達する伝達機構とを備え、
前記伝達機構は、ネジ部材と、前記ネジ部材により直動する直動体及び該直動体の直動を前記関節に非線形で伝達して揺動を前記指部材に付与する複数のリンクとにより構成されるスライダークランク機構を含む、ロボットハンドの設計方法において、前記指部材の指長及び指先力を決定する第１段階と、前記指先力に基づいて、関節トルクを算出する第２段階と、第１段階及び第２段階の順番よりも前、或いは後、或いは同時に行われる第３段階であって、ロボットハンドの最小化を目的にして前記減速機構に関する設計パラメータと、前記駆動部の特性を選択する第３段階と、前記スライダークランク機構の設計パラメータを求める際、該スライダークランク機構の設計パラメータで二次元的に囲まれる形状の面積を最小化することにより、該スライダークランク機構の設計パラメータを算出する第４段階を含むロボットハンドの設計方法。
【符号の説明】
【０１０９】
１０…ロボットハンド、１２…ドライバ、
２０…ロボットハンド制御装置（制御部）、
３０…上位制御部、４０…モータ制御部、５０…指部材、
５２…関節軸（関節）、５４…指支持部材、６０…駆動モータ、
６２、６４…検出部、７０…伝達機構、７２…ギヤヘッド、
７４、７６…平歯車列、７８…ボールネジ、８０…直動体、
８１、８２…リンク（リンク機構）、９０…直動モータ、９２…固定子、
９４…可動子（直動体）、１００…減算器、１１０…比例演算部、
１２０…積分器、１３０…積分ゲイン演算部、１４０…微分器、
１５０…微分ゲイン演算部、１６０…加算器、１７０…乗算器、
１８０…演算器（作動状態取得部）、２００…減算器、
２１０…比例演算部、２２０…積分器、２３０…積分ゲイン演算部、
２４０…微分器、２５０…微分ゲイン演算部、２６０…加算器、
２７０…乗算器、２８０…演算器（作動状態取得部）、
３００…減算器、３１０…比例演算部、３２０…積分器、
３３０…積分ゲイン演算部、３６０…加算器、３７０…乗算器、
３８０…演算器（作動状態取得部）、４００…減算器、
４１０…比例演算部、４２０…積分器、４３０…積分ゲイン演算部、
４４０…トルク変換部、４６０…加算器、４７０…乗算器、
４８０…演算器（作動状態取得部）。
【図１】
2018144130.tif 000031
【図２】
2018144130.tif 000032
【図３】
2018144130.tif 000033
【図４】
2018144130.tif 000034
【図５】
2018144130.tif 000035
【図６】
2018144130.tif 000036
【図７】
2018144130.tif 000037
【図８】
2018144130.tif 000038
【図９】
2018144130.tif 000039
【図１０】
2018144130.tif 000040
【図１１】
2018144130.tif 000041
【図１２】
2018144130.tif 000042