(57)【特許請求の範囲】
【請求項１】
回転トルクを発生するモータと前記モータを駆動するモータ・ドライバと前記モータの回転速度を変換する減速機を備えた関節駆動用のアクチュエータを、指令されたトルク指令値τaに従って力制御するためのアクチュエータ制御装置であって、
前記減速機の出力段における関節値ｑを検出する関節値検出手段と、
前記減速機の出力段における関節駆動方向の作用力τeを検出する作用力検出手段と、
前記アクチュエータへの指示トルクτを決定するトルク決定手段と、
を具備し、
前記トルク決定手段は、
前記トルク決定手段が決定した指示トルクτにて前記アクチュエータを駆動した際の外乱トルクτdを算出する外乱オブザーバを備え、
前記トルク指令値τaと、前記作用力τeと、前記関節値ｑを時間微分して得られる関節値速度に基づいて前記アクチュエータが応答したことにより達成される関節値加速度目標値を求めて出力するアクチュエータの理論応答モデルから得られる関節値加速度目標値に関節内のイナーシャの公称値Ｊnを掛けたトルク目標値τrefを、前制御周期において前記外乱オブザーバによって得られた外乱トルクτdで修正して、現制御周期における指示トルクτを決定する、
ことを特徴とするアクチュエータ制御装置。
【請求項２】
前記アクチュエータの理論応答モデルは、前記トルク指令値τaから前記作用力τeと前記関節値ｑを時間微分して得られる関節値速度に前記関節内部の仮想粘性係数νaを乗算した仮想粘性抵抗力とを引き算した結果から、前記関節の仮想イナーシャＩaに前記関節値加速度目標値を乗算した値を求める方程式を用いて、前記トルク指令値τaと、前記作用力τeと、前記関節値ｑを時間微分して得られる関節値速度に基づいて前記アクチュエータが応答したことにより達成される関節値加速度目標値を求めて出力する、
ことを特徴とする請求項１に記載のアクチュエータ制御装置。
【請求項３】
前記外乱オブザーバは、前記トルク決定手段が決定した指示トルクτにて前記アクチュエータを駆動した際に、前記関節値検出手段が検出した関節値ｑを時間微分して得られる関節値速度を基に前記関節に作用したトルクを推定し、前記指示トルクτから該推定したトルクを引き算することによって外乱トルクτdを算出する、
ことを特徴とする請求項１に記載のアクチュエータ制御装置。
【請求項４】
回転トルクを発生するモータと前記モータを駆動するモータ・ドライバと前記モータの回転速度を変換する減速機を備えた関節駆動用のアクチュエータを、指令されたトルク指令値τaに従って力制御するためのアクチュエータ制御方法であって、
前記減速機の出力段における関節値ｑを取得する関節値取得ステップと、
前記減速機の出力段における関節駆動方向の作用力τeを取得する作用力取得ステップと、
前記アクチュエータへの指示トルクτを決定するトルク決定ステップと、
を有し、
前記トルク決定ステップでは、
外乱オブザーバを適用して、前記トルク決定ステップにおいて決定した指示トルクτにて前記アクチュエータを駆動した際の外乱トルクτdを算出し、
前記トルク指令値τaと、前記作用力τeと、前記関節値ｑを時間微分して得られる関節値速度に基づいて前記アクチュエータが応答したことにより達成される関節値加速度目標値を求めて出力するアクチュエータの理論応答モデルから得られる関節値加速度目標値に関節内のイナーシャの公称値Ｊnを掛けたトルク目標値τrefを、前制御周期において前記外乱オブザーバによって得られた外乱トルクτdで修正して、現制御周期における指示トルクτを決定する、
ことを特徴とするアクチュエータ制御方法。
【請求項５】
前記アクチュエータの理論応答モデルは、前記トルク指令値τaから前記作用力τeと前記関節値ｑを時間微分して得られる関節値速度に前記関節内部の仮想粘性係数νaを乗算した仮想粘性抵抗力とを引き算した結果から、前記関節の仮想イナーシャＩaに前記関節値加速度目標値を乗算した値を求める方程式を用いて、前記トルク指令値τaと、前記作用力τeと、前記関節値ｑを時間微分して得られる関節値速度に基づいて前記アクチュエータが応答したことにより達成される関節値加速度目標値を求めて出力する、
ことを特徴とする請求項４に記載のアクチュエータ制御方法。
【請求項６】
前記外乱オブザーバは、前記トルク決定ステップにおいて決定した指示トルクτにて前記アクチュエータを駆動した際に、前記関節値取得ステップで取得した関節値ｑを時間微分して得られる関節値速度を基に前記関節に作用したトルクを推定し、前記指示トルクτから該推定したトルクを引き算することによって外乱トルクτdを算出する、
ことを特徴とする請求項４に記載のアクチュエータ制御方法。
【請求項７】
関節駆動用のアクチュエータであって、
回転トルクを発生するモータと、
前記モータを駆動するモータ・ドライバと、
前記モータの回転速度を変換する減速機と、
前記減速機の出力軸における関節角ｑを計測するエンコーダと、
前記減速機の出力軸に作用する外トルクτeを検出するトルク・センサと、
前記アクチュエータに対する指示トルクτを前記モータ・ドライバに対する制御信号に変換して出力する制御部と、
を具備し、
前記制御部は、
前記指示トルクτにて前記アクチュエータを駆動した際に、前記エンコーダが検出した関節角ｑを時間微分して得られる関節角速度を基に前記関節に作用したトルクを推定し、前記指示トルクτから該推定トルクを引き算することによって外乱トルクτdを算出する外乱オブザーバを備え、
前記減速機の出力軸におけるトルク指令値τaと、前記外トルクτeと、関節角ｑを時間微分して得られる関節角速度に基づいて前記アクチュエータが応答したことにより達成される関節角加速度目標値を求めて出力するアクチュエータの理論応答モデルから得られる関節値加速度目標値に関節内のイナーシャの公称値Ｊnを掛けたトルク目標値τrefを、前制御周期において前記外乱オブザーバによって得られた外乱トルクτdで修正して、現制御周期における指示トルクτを決定する、
ことを特徴とするアクチュエータ。
【請求項８】
前記アクチュエータの理論応答モデルは、前記トルク指令値τaから前記外トルクτeと前記関節値ｑを時間微分して得られる関節値速度に前記関節内部の仮想粘性係数νaを乗算した仮想粘性抵抗力とを引き算した結果から、前記関節の仮想イナーシャＩaに前記関節値加速度目標値を乗算した値を求める方程式を用いて、前記トルク指令値τaと、前記作用力τeと、前記関節値ｑを時間微分して得られる関節値速度に基づいて前記アクチュエータが応答したことにより達成される関節値加速度目標値を求めて出力する、
ことを特徴とする請求項７に記載のアクチュエータ。
【請求項９】
複数の剛体リンクが連なって構成されたリンク構造物と、リンク間を連接する関節を駆動する関節アクチュエータとを備え、
少なくとも一部の関節アクチュエータは、請求項７に記載のアクチュエータによって構成される、
ことを特徴とするロボット装置。
【請求項１０】
回転トルクを発生するモータと前記モータを駆動するモータ・ドライバと前記モータの回転速度を変換する減速機を備えた関節駆動用のアクチュエータを、指令されたトルク指令値τaに従って力制御するための処理をコンピュータ上で実行するようにコンピュータ可読形式で記述されたコンピュータ・プログラムであって、前記コンピュータを、
前記減速機の出力段における関節値ｑを検出する関節値検出手段に接続されて、前記減速機の出力段における関節値ｑを取得する関節値取得手段、
前記減速機の出力段における関節駆動方向の作用力τeを検出する作用力検出手段に接続されて、前記減速機の出力段における関節駆動方向の作用力τeを取得検出する作用力取得検出手段、
前記アクチュエータへの指示トルクτを決定するトルク決定手段、
として機能させ、
前記トルク決定手段は、
前記トルク決定手段が決定した指示トルクτにて前記アクチュエータを駆動した際の外乱トルクτdを算出する外乱オブザーバを備え、
前記トルク指令値τaと、前記作用力τeと、前記関節値ｑを時間微分して得られる関節値速度に基づいて前記アクチュエータが応答したことにより達成される関節値加速度目標値を求めて出力するアクチュエータの理論応答モデルから得られる関節値加速度目標値に関節内のイナーシャの公称値Ｊnを掛けたトルク目標値τrefを、前制御周期において前記外乱オブザーバによって得られた外乱トルクτdで修正して、現制御周期における指示トルクτを決定する、
コンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットの関節部の駆動などに用いられるアクチュエータを制御するアクチュエータ制御装置及びアクチュエータ制御方法、アクチュエータ、ロボット装置、並びにコンピュータ・プログラムに係り、特に、関節発生力を直接的に制御する力制御方式により関節アクチュエータの駆動を制御するアクチュエータ制御装置及びアクチュエータ制御方法、アクチュエータ、ロボット装置、並びにコンピュータ・プログラムに関する。
【０００２】
さらに詳しくは、本発明は、関節部に存在する摩擦や関節といったモデル化や同定が困難な外乱の要因に対処しながら対人物理インタラクションに適した力制御を行なうアクチュエータ制御装置及びアクチュエータ制御方法、アクチュエータ、ロボット装置、並びにコンピュータ・プログラムに係り、特に、ロボットのダイナミクスを考慮しながら機体の所定部位に所望の力を発生するための関節力を算出することにより外乱の問題に対処して、対人物理インタラクションに適した力制御を行なうアクチュエータ制御装置及びアクチュエータ制御方法、アクチュエータ、ロボット装置、並びにコンピュータ・プログラムに関する。
【背景技術】
【０００３】
経済発展に伴い、少子化若しくは年少人口の低位安定化と中年以下の死亡率の低下というメカニズムが作用し、結果として、高齢人口が相対的する現象が急激に進行している。高齢者とそれを支える生産年齢人口の比率は、２００５年当時では１人：３．３人であったが、２０１５年には１人：２．４人に、２０２５年には１人：２．１人になると見込まれている。かかる高齢化社会においては、高齢者が、できる限り要介護状態とならず健康で活き活きと暮らせること、あるいは、要介護状態となってもできる限り悪化を防ぎ、自立した生活を送ることができる社会とすることが急務である。
【０００４】
また、高齢者介護施設や高齢者を抱える家庭では、高齢者の心身の補助を行なうことを主な目的としたメカトロ機器への要求が高まってきている。
【０００５】
例えば、高齢者介護施設・病院等での悪臭の原因となり、さらに院内感染の原因となり得る排泄物を即時衛生的除去に利用することのできる悪臭源検出排除装置について提案がなされている（例えば、特許文献１を参照のこと）。また、高齢者の動作を検知した第１の検知結果を基に、高齢者の行動を近親者宅のロボットで表出させる一方、近親者の見守り動作を検知した第２の検知結果から近親者の関心度を推定し、その結果をフィードバックさせることでロボットの行動表出に変化を与える行動表現システムについて提案がなされている（例えば、特許文献２を参照のこと）。
【０００６】
最近では、自律歩行補助器や上肢のパワーアシストといった物理的な補助に留まらず、ロボットを作業療法の中に効果的に取り入れた、メンタル・アシストへの要求もさらに増してきている。
【０００７】
上述したような分野において適用されるメカトロ機器は、人や複雑な実環境と柔軟且つ安全に物理接触しながら、作業を遂行しなければならない。つまり、従来の産業ロボットが既知環境下で固定的動作を行なっていたのとは異なり、未知の環境をセンシングし、時々刻々と変化する周囲環境から適切な外力を得て、目的の作業（タスク）が達成されるようにアクチュエータの発生力を適切に調整しなければならない、と本発明者は思料する。
【０００８】
ここで、ロボットは、基本的には複数のリンクとリンク可動部分である関節で構成される多リンク構造体であり、ＤＣブラシレス・モータなどからなるアクチュエータを用いて各関節を駆動するように構成されている。また、かかるロボット（若しくはロボットを構成する関節アクチュエータ）の制御方法として、例えば位置制御と力制御が挙げられる。位置制御は、アクチュエータに対し角度などの位置指令値を与え、指令値に追従するように関節を駆動する制御方法である。他方の力制御は、作業対象に対して加えるべき力の目標値を直接的に受け、その目標値が示す力を実現する制御方法であり、関節発生力を直接制御し、力を直接的に制御することができる。
【０００９】
従来のロボット装置は、制御上の簡便さやシステムの構成し易さから、位置制御によって駆動されるものが大半である。しかしながら、位置制御は、基本的に位置を保持することが目的であることから、俗に「硬い制御」と呼ばれ、外力に柔軟に応じたり、速度や加速度のオーダーでの「やわらかい」制御を精密に行なったりするのには適さない。例えば、多様な外界との物理インタラクションを行ないながらタスクを遂行するロボット装置は、本来は位置制御との親和性は低い。
【００１０】
これに対し、力制御は、制御則、システム構成は複雑化するが、力オーダーでのより柔軟な対人物理インタラクション・サービスが可能になると考えられる。その反面、外乱の影響を受け易く、制御が容易ではない。
【００１１】
力制御における外乱として最も問題になるのは、関節部に存在する摩擦や慣性である。ロボットのダイナミクスを決定するパラメータは、リンク重量、重心、慣性テンソルなどのマスプロパティと、関節内部の摩擦並びに慣性に大別される。前者のマスプロパティは、ＣＡＤ（Ｃｏｍｐｕｔｅｒ  Ａｉｄｅｄ  Ｄｅｓｉｇｎ）データを基に比較的容易に且つ精度良く算出することが可能である。これに対し、後者（とりわけ摩擦に関して）は、モデル化や同定が困難であり、大きな誤差を生む要因となる。
【００１２】
力制御における外乱の問題に対処する方法は、以下の３つに大別することができる。
【００１３】
第１の方法として、未知の摩擦の発生源となる減速機構を関節部から可能な限り排除する設計を行なうことが考えられる。具体的には、ダイレクト・ドライブ・モータを使用することや（例えば、特許文献３を参照のこと）、あるいはワイヤ機構を用いて低減速比の減速を行なう構成（例えば、特許文献４を参照のこと）が挙げられる。この方法によれば、高応答な力制御が可能となるが、モータが大型化したり、十分な関節力が得られなかったりする問題がある。
【００１４】
第２の方法として、力の作用点に力センサを配置し、発生力と力指令値の偏差を関節指令値にフィードバックして、作用点における発生力に及ぼす外乱を抑圧する方法が考えられる（例えば、非特許文献１を参照のこと）。この方法によれば、関節内部の外乱だけでなく、ケーブルから受ける外乱力など、すべての外乱を抑圧することが可能となる反面、インタラクションが力センサを設置した部位に限定されるという制約がある。言い換えれば、全身の任意部位でインタラクションを可能とするには、高価な力センサを機体の随所に装備しなければならない。
【００１５】
第３の方法として、ロボットのダイナミクスを考慮しながら機体の所定部位に所望の力を発生するための関節力を算出する方法が考えられる（例えば、非特許文献２を参照のこと）。例えば、本出願人に既に譲渡されている特願２００７−２７２０９９号明細書には、ロボットなどのリンク構造物の機体表面全体にわたって分布状に配備した接触センサを用いて外界との接触部位を漏れなく検出し、検出された接触部位を作用点とする外力を適切に用いながら、目的の運動が達成されるように力学モデルを厳密に解いて、全アクチュエータの発生力目標値を決定する制御システムについて開示されている。同制御システムによれば、リンク間を接続する各関節内のモデル化困難な力を関節部に設けられたトルク・センサで補償することで、作用点の限定されない、良好な力触覚インタラクションを実現することができる。
【００１６】
但し、第３の方法では、誤差の主要因となる関節部の摩擦並びに慣性が理論モデルと合致するよう、「理想的な振る舞いをするアクチュエータ」を関節部に用いる必要がある。また、アクチュエータには減速機が含まれ、減速機を包含するシステムとして、理論モデルに従う振る舞いをするとする。
【００１７】
第３の方法によれば、関節内部のパラメータ以外のパラメータの誤差は一般に小さくすることができるので、発生力の精度も良好となる。減速機が利用可能となり、小モータで大きな関節力を得ることも可能となる。また、力センサからの力フィードバックを用いないことから、力センサを随所に装備する必要もない。
【００１８】
【特許文献１】特開２００５−６１８３６号公報
【特許文献２】特開２００６−１７８６４４号公報
【特許文献３】特開２００７−１２４８５６号公報
【特許文献４】米国特許第５５８７９３７号公報
【非特許文献１】大西著「外乱オブザーバによるロバスト・モーションコントロール」（ロボット学会誌、Ｖｏｌ．１１、Ｎｏ．４、ｐｐ．４８６−４９３、１９９３）
【非特許文献２】“Ａ  ｐｒｉｏｒｉｔｉｚｅｄ  ｍｕｌｔｉ−ｏｂｊｅｃｔｉｖｅ  ｄｙｎａｍｉｃ  ｃｏｎｔｒｏｌｌｅｒ  ｆｏｒ  ｒｏｂｏｔｓ  ｉｎ  ｈｕｍａｎ  ｅｎｖｉｒｏｎｍｅｎｔｓ”（Ｉｎ  Ｐｒｏｃｅｅｄｉｎｇ  ｏｆ  ｔｈｅ  ＩＥＥＥ／ＲＳＪ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｃｏｎｆｅｒｅｎｃｅ  ｏｎ  Ｈｕｍａｎｏｉｄ  Ｒｏｂｏｔｓ，２００４）
【発明の開示】
【発明が解決しようとする課題】
【００１９】
本発明の目的は、関節発生力を直接的に制御する力制御方式により関節アクチュエータの駆動を好適に制御することができる、優れたアクチュエータ制御装置及びアクチュエータ制御方法、アクチュエータ、ロボット装置、並びにコンピュータ・プログラムを提供することにある。
【００２０】
本発明のさらなる目的は、関節部に存在する摩擦や関節といったモデル化や同定が困難な外乱の要因に対処しながら対人物理インタラクションに適した力制御を好適に実現することができる、優れたアクチュエータ制御装置及びアクチュエータ制御方法、アクチュエータ、ロボット装置、並びにコンピュータ・プログラムを提供することにある。
【００２１】
本発明のさらなる目的は、ロボットのダイナミクスを考慮しながら機体の所定部位に所望の力を発生するための関節力を算出することにより外乱の問題に対処して、対人物理インタラクションに適した力制御を好適に実現することができる、優れたアクチュエータ制御装置及びアクチュエータ制御方法、アクチュエータ、ロボット装置、並びにコンピュータ・プログラムを提供することにある。
【課題を解決するための手段】
【００２２】
本発明は、上記課題を参酌してなされたものであり、その第１の側面は、指令された関節力指令値τaに従って関節駆動用のアクチュエータを力制御するためのアクチュエータ制御装置であって、
前記アクチュエータの出力段における関節値ｑを検出する関節値検出手段と、
前記アクチュエータの出力段における関節駆動方向の作用力τeを検出する作用力検出手段と、
前記関節力指令値τaと、前記作用力τeと、前記関節値ｑを時間微分して得られる関節値速度が与えられたときに、前記アクチュエータが理想的に応答したことにより達成される関節値加速度目標値の関係を規定した前記アクチュエータの理想応答モデルに基づいて、前記アクチュエータへの指示駆動力τを決定する駆動力決定手段と、
を具備することを特徴とするアクチュエータ制御装置である。
【００２３】
多リンク構造をなすロボットの関節アクチュエータの制御方法は位置制御と力制御に大別されるが、力オーダーでのより柔軟な対人物理インタラクション・サービスを実施するには、関節発生力を直接制御し、力を直接的に制御する力制御が適している。
【００２４】
しかしながら、力制御は外乱の影響を受け易く、システム構成が複雑化するという問題がある。外乱の主な要因は、関節部に存在する摩擦や慣性であり、これらはモデル化や同定が困難であることから大きな誤差を招来するおそれがある。
【００２５】
本発明に係るアクチュエータ制御装置は、力制御方式により関節アクチュエータの駆動を制御するが、ロボットのダイナミクスを考慮しながら機体の所定部位に所望の力を発生するための関節力を算出することにより、外乱の問題に対処するようにしている。かかる対処方法によれば、関節内部のパラメータ以外のパラメータの誤差は一般に小さくすることができるので、発生力の精度も良好となる。減速機が利用可能となり、小モータで大きな関節力を得ることも可能となる。また、力センサからの力フィードバックを用いないことから、力センサを随所に装備する必要もない。
【００２６】
本発明に係るアクチュエータ制御装置は、指令された関節力指令値τaに従って関節駆動用のアクチュエータを力制御する際に、アクチュエータの理想応答モデルに基づいて、関節に対して指示する駆動力τを決定するようにしている。ここで言う理想応答モデルは、関節力指令値τaと、関節作用力τeと、関節値ｑを時間微分して得られる関節値速度が与えられたときに、アクチュエータが理想的に応答したことにより達成される関節値加速度目標値の関係を規定した、２次の微分方程式で構成される。
【００２７】
また、アクチュエータ制御装置は、前記アクチュエータの出力段における関節値ｑを検出するための、エンコーダなどで構成される関節値検出手段と、前記アクチュエータの出力段における関節駆動方向の作用力τeを検出する、トルク・センサなどの作用力検出手段を備えており、これらの検出結果を駆動力τを決定する際の入力に用いる。
【００２８】
２次微分方程式からなるアクチュエータの理想応答モデルは、前記関節値ｑを時間微分して得られる関節値速度の大きさに応じて作用する、仮想慣性若しくは仮想粘性抵抗係数νaを含むものとする。ここで言う仮想慣性若しくは仮想粘性抵抗係数νaは、関節内部に含まれるモデル化が困難なダイナミクスのパラメータであり外乱の主要因となるが、理想応答モデルに含めることで、駆動力決定手段は、外乱の影響を抑制して、高い精度で駆動力τを決定することができる。
【００２９】
また、駆動力決定手段は、外乱オブザーバを適用することによって、モデル化が困難となる関節内部の摩擦や慣性などに起因した外乱の影響を除去するようにしており、理論応答モデルに則って前記アクチュエータの駆動力τを高い精度で決定することができる。
【００３０】
ここで、外乱オブザーバは、前記駆動力決定手段が決定した駆動力τにて前記関節アクチュエータを駆動した際に、前記関節値検出手段が検出した関節値ｑを時間微分して得られる関節値速度を基に前記関節に作用した駆動力を推定し、前記駆動力τから該推定駆動力を引き算することによって外乱関節力τdを算出するようになっている。
【００３１】
そして、駆動力決定手段は、前記理想応答モデルから得られる関節値加速度目標値に基づく関節力目標値τrefを、１つ前の制御周期において前記外乱オブザーバによって得られた外乱関節力τdで修正して、現在の制御周期における駆動力τを決定することができる。
【００３２】
また、本発明の第２の側面は、指令された関節力指令値τaに従って関節駆動用のアクチュエータを力制御するための処理をコンピュータ上で実行するようにコンピュータ可読形式で記述されたコンピュータ・プログラムであって、前記コンピュータを、
前記アクチュエータの出力段における関節値ｑを検出する関節値検出手段と、
前記アクチュエータの出力段における関節駆動方向の作用力τeを検出する作用力検出手段と、
前記関節力指令値τaと、前記作用力τeと、前記関節値ｑを時間微分して得られる関節値速度が与えられたときに、前記アクチュエータが理想的に応答したことにより達成される関節値加速度目標値の関係を規定した前記アクチュエータの理想応答モデルに基づいて、前記アクチュエータへの指示駆動力τを決定する駆動力決定手段と、
として機能させるためのコンピュータ・プログラムである。
【００３３】
本発明の第２の側面に係るコンピュータ・プログラムは、コンピュータ上で所定の処理を実現するようにコンピュータ可読形式で記述されたコンピュータ・プログラムを定義したものである。換言すれば、本発明の第２の側面に係るコンピュータ・プログラムをコンピュータにインストールすることによって、コンピュータ上では協働的作用が発揮され、本発明の第１の側面に係るアクチュエータ制御装置と同様の作用効果を得ることができる。
【００３４】
また、本発明に係るアクチュエータ制御装置は、複数の剛体リンクが連なって構成されたリンク構造物と、リンク間を連接する関節を駆動する関節アクチュエータを備えたロボット装置において、少なくとも一部の関節アクチュエータの力制御に適用することができる。例えば、ダイナミクス演算を応用してロボットの力制御を行なう場合、誤差の主要因となる関節部の摩擦並びに慣性が理論モデルと合致するよう、アクチュエータは理想的に振る舞うことが前提となる。アクチュエータは一般に減速機を備え、関節内部には未知の摩擦などの誤差が存在するものの、本発明により関節アクチュエータの理想的な応答が達成されると、力制御を好適に実現することができる。
【発明の効果】
【００３５】
本発明によれば、関節部に存在する摩擦や関節といったモデル化や同定が困難な外乱の要因に対処しながら対人物理インタラクションに適した力制御を好適に実現することができる、優れたアクチュエータ制御装置及びアクチュエータ制御方法、アクチュエータ、ロボット装置、並びにコンピュータ・プログラムを提供することができる。
【００３６】
また、本発明によれば、ロボットのダイナミクスを考慮しながら機体の所定部位に所望の力を発生するための関節力を算出することにより外乱の問題に対処して、対人物理インタラクションに適した力制御を好適に実現することができる、優れたアクチュエータ制御装置及びアクチュエータ制御方法、アクチュエータ、ロボット装置、並びにコンピュータ・プログラムを提供することができる。
【００３７】
本発明に係るアクチュエータ制御装置によれば、理論モデル通りに振る舞う理想的（言い換えれば、仮想化された）なアクチュエータを構成することができる。したがって、かかる理想的なアクチュエータをロボットの関節に適用することで、ロボットのダイナミクスを考慮しながら機体の所定部位に所望の力を発生するための関節力を算出する方法により、力制御における外乱の問題を解決することが可能となる。この結果、人及び環境に対して、任意の部位で柔軟な力インタラクションを行なうことができるロボットを提供することができる。また、６軸力センサをロボットの全身にわたって配置しなくても、機体の任意の部位での発生力、加速度、速度、位置の制御を良好に行なうことができる。
【００３８】
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施形態や添付する図面に基づくより詳細な説明によって明らかになるであろう。
【発明を実施するための最良の形態】
【００３９】
以下、図面を参照しながら本発明の実施形態について詳解する。
【００４０】
図１Ａ〜Ｌには、本発明を適用することができる人間型ロボットの正面図、左側面図、背面図、上面図、底面図、斜視図、並びに、当該ロボットの頭部の正面図、左側面図、背面図、上面図、底面図、斜視図をそれぞれ示している。また、図２には、図１に示した人間型ロボットの関節自由度モデルを示している。図示の人間型ロボットは、骨盤部には、移動手段としての２肢の脚体と、腰関節を介して上体が接続されている。上体には、２肢の腕部と、首関節を介して頭部が接続されている。
【００４１】
左右の脚体は、それぞれ股関節３自由度と、膝関節１自由度と、足首関節２自由度の、計６自由度を備えている。また、左右の腕部は、それぞれ肩関節３自由度と、肘関節１自由度と、手首関節２自由度の、計６自由度を備えている。首関節及び腰関節は、ともにＸ、Ｙ、Ｚ軸回りに３自由度を有している。
【００４２】
図３には、各関節軸を駆動するアクチュエータの構成例を示している。図示のアクチュエータは、回転トルクを発生するためのモータ（例えば、ＤＣブラシレス・モータ）と、モータを駆動するための電流制御型モータ・ドライバと、モータの回転力を十分な発生力に変換するための減速機で構成される。また、減速機の出力軸には、関節角を計測するためのエンコーダと、回転トルクを検出するトルク・センサが取り付けられている。関節部には、摩擦や慣性などの、モデル化や同定が困難となるダイナミクスのパラメータが含まれる、という点に留意されたい。
【００４３】
図４Ａには、減速機の出力軸に取り付けられるトルク・センサの構成例を示している。図示のトルク・センサは、稀歪構造を有し、その微小変形量を梁部に対向して貼設した２対の歪みゲージＡ〜Ｄで計測する構成を備えている。図４Ｂには、トルク・センサの等価回路を示している。減速機の出力軸に印加されたトルク（外トルク）τeによって稀歪構造に変形が生じると、抵抗体Ａ〜Ｄからなるブリッジ回路の両端にはτeにほぼ比例した電位差として計測される。かかるトルク計測結果は、アクチュエータ内に装備された制御用マイコンで収集された後、ホスト・コンピュータ（後述）に送信される。
【００４４】
図５には、図１に示した人間型ロボットにおける結線トポロジの構成例を示している。各関節駆動用のアクチュエータは、人間型ロボット全体の動作を統括的にコントロールするホスト・コンピュータと接続され、そのトルク制御目標値がホスト・コンピュータから与えられるとともに、現在の出力トルク、関節角度や関節角速度をホスト・コンピュータに送信することができる。
【００４５】
人間型ロボットは、胴体部に、３軸の腰関節アクチュエータａ１、ａ２、ａ３、及び３軸の首関節アクチュエータａ１６、ａ１７、ａ１８を持ち、これらはホスト・コンピュータに対しシリアル接続されている。また、各アクチュエータ・モータａ１６、ａ１７、ａ１８の出力軸とフレームとの間には、図４に示したトルク・センサｔｑ１６、ｔｑ１７、ｔｑ１８が配置されている。各関節アクチュエータは、シリアル・ケーブルを通じて、その位置制御目標値を受け取るとともに、現在の出力トルクや関節角度、関節角速度をホスト・コンピュータに送信する。
【００４６】
また、人間型ロボットは、左腕部に、３軸の肩関節アクチュエータａ４、ａ５、ａ６、１軸の肘関節アクチュエータａ７、及び２軸の手首関節アクチュエータａ８、ａ９を持ち、各アクチュエータ・モータａ４、ａ５、ａ６、ａ７、ａ８、ａ９の出力軸とフレームとの間には、図４に示したトルク・センサｔｑ４、ｔｑ５、ｔｑ６、ｔｑ７、ｔｑ８、ｔｑ９が配置され、これらはホスト・コンピュータに対しシリアル接続されている。同様に、人間型ロボットの右腕部には、３軸の肩関節アクチュエータａ１０、ａ１１、ａ１２、１軸の肘関節アクチュエータａ１３、及び２軸の手首関節アクチュエータａ１４、ａ１５を持つとともに、各アクチュエータ・モータａ１０、ａ１１、ａ１２、ａ１３、ａ１４、ａ１５の出力軸とフレームとの間には図４に示したトルク・センサｔｑ１０、ｔｑ１１、ｔｑ１２、ｔｑ１３、ｔｑ１４、ｔｑ１５が配置され、これらはホスト・コンピュータに対しシリアル接続されている。
【００４７】
また、人間型ロボットは、左脚部に、３軸の股関節アクチュエータａ１９、ａ２０、ａ２１、１軸の膝関節アクチュエータａ２２、及び２軸の足首関節アクチュエータａ２３、ａ２４を持つとともに、各アクチュエータ・モータａ１９、ａ２０、ａ２１、ａ２２、ａ２３、ａ２４の出力軸とフレームとの間には図４に示したトルク・センサｔｑ１９、ｔｑ２０、ｔｑ２１ｔｑ２２、ｔｑ２３、ｔｑ２４が配置され、これらはホスト・コンピュータに対しシリアル接続されている。同様に、右脚部には、３軸の肩関節アクチュエータａ２５、ａ２６、ａ２７、１軸の肘関節アクチュエータａ２８、及び２軸の足首関節アクチュエータａ２９、ａ３０を持つとともに、各アクチュエータ・モータａ２５、ａ２６、ａ２７、ａ２８、ａ２９、ａ３０の出力軸とフレームとの間には図４に示したトルク・センサｔｑ２５、ｔｑ２６、ｔｑ２７、ｔｑ２８、ｔｑ２９、ｔｑ３０が配置され、これらはホスト・コンピュータに対しシリアル接続されている。
【００４８】
ロボットのダイナミクス演算は、ホスト・コンピュータ上で実行され、各関節アクチュエータのトルク目標値を生成する。トルク目標値は、アクチュエータに併設された制御用マイコンに送信され、制御用マイコン上で実行されるアクチュエータの制御に用いられる。また、各関節アクチュエータは、力制御方式により制御される。
【００４９】
ロボットのダイナミクスを考慮しながら機体の所定部位に所望の力を発生するための関節力を算出する方法によれば、力制御における外乱の影響を回避することができるが、誤差の主要因となる関節部の摩擦並びに慣性が理論モデルと合致するよう、理想的なアクチュエータを関節に用いることが必要となる。
【００５０】
ここで、関節アクチュエータがダイナミクス演算で用いられる理論モデルから逸脱した応答を行なうと、ダイナミクス演算により算出されたトルクをアクチュエータに作用させても、目的の運動状態は達成されない。実際、図４Ａに示したような減速機を有したアクチュエータには、モデル化することができない未知の摩擦などのダイナミクスのパラメータが含まれており、力制御に影響を与える外乱の主要因となる。かかる外乱の問題に対し対策を施さなければ、容易に理論モデルから逸脱する。
【００５１】
そこで、本実施形態では、ロボットのダイナミクスを考慮しながら機体の所定部位に所望の力を発生するための関節力を算出する、という上記の第３の方法によって外乱の問題に対処するようにしている。このような場合、機体のいかなる部位にも６軸力センサを配設する必要はなくなる。
【００５２】
以下では、摩擦や慣性といったモデル化できない外乱の影響を受けつつも、理論モデル通りの応答を行なうよう、アクチュエータの応答を矯正する方法について説明する。
【００５３】
ロボットのダイナミクス演算において、アクチュエータは、下式（１）に示すような数式でモデル化される。
【００５４】
【数１】
0004715863.tif 000002
【００５５】
上式（１）において、Ｉaは関節の仮想イナーシャ、ｑは（エンコーダ出力として得られる）関節の関節角、τaは関節の発生トルクの指令値、τeは関節の作用する外トルク、νaは関節内部の（未知の、モデル化が困難となる）仮想的な粘性係数である。
【００５６】
上式（１）から、理論モデルには、関節に作用する外トルク項τeが含まれていることが分かる。したがって、アクチュエータの応答を理論モデル通りとなるように矯正するには、この外トルクτeを検出する必要がある。本実施形態では、図４を参照しながら説明したように、アクチュエータには、減速機の出力軸において外トルクτeを計測するためのトルク・センサが配設されており、そのトルク計測結果はマイコンで収集されるようになっている。
【００５７】
アクチュエータが上式（１）で表される理論モデルに従った応答を行なうことは、上式（１）の右辺が与えられたときに、左辺の関節角加速度が達成されることに他ならない。本実施形態では、このような関節角加速度制御系を構成するために、外乱トルクを推定する外乱オブザーバを適用することによって、理論応答モデルに基づいて関節トルクτを高い精度で決定するようにしている。
【００５８】
図６には、理論モデルに従った応答を行なうための関節角加速度制御系の制御ブロック図を示している。同図中で、点線で囲まれた部分が外乱オブザーバに相当し、外乱トルクτdを推定し、制御系に及ぼす影響を除去することによって、ロバストな加速度制御系を構築している。但し、Ｊnは関節内のイナーシャの公称値、Ｊは関節内のイナーシャの（未知の）実際値、ｑは関節角とする。また、関節の仮想イナーシャＩaは、ダイナミクス演算における設計事項として仮想的な定数が与えられるとする。
【００５９】
ホスト・コンピュータ上では、制御周期毎に、力制御方式によりアクチュエータに対するトルク指令値τaを決定するとともに、アクチュエータの減速機出力軸に取り付けられたトルク・センサ（図４Ｂを参照のこと）によって計測された外トルク実測値τe、並びに減速機出力軸に取り付けられたエンコーダによって計測された関節角ｑから得られる角速度実測値がアクチュエータ内の制御用マイコンから送られてくる。そして、これらトルク指令値τa、外トルク実測値τe、並びに関節角ｑの角速度実測値を上式（１）で表される理論応答モデルに代入して、同式左辺の関節角ｑの加速度目標値を求め、この角加速度目標値を外乱オブザーバに投入する。
【００６０】
外乱オブザーバ内では、入力された関節角ｑの加速度目標値に関節の仮想イナーシャ公称値Ｊnを掛けて、現制御周期におけるトルク目標値τrefに変換する。そして、外乱オブザーバにより前制御周期で得られた外乱トルクτdをこのトルク目標値τrefに修正を加えると、現制御周期における関節に対するトルク指令値τとなる。
【００６１】
伝達関数１／Ｊnからなる関節にトルク指令値τからなる力制御を掛けると、関節部に存在する摩擦や慣性などの外乱の影響を受けながら回転駆動する。具体的には、トルク指令値τを電流指令値に換算し、これがモータ・ドライバへの指示入力となる。その際の発生トルクτe並びに関節角ｑはそれぞれトルク・センサ並びにエンコーダでデ計測されるとともに、エンコーダ出力ｑを時間微分することで関節角速度が得られる。
【００６２】
外乱オブザーバは、計測された関節角ｑの角速度に対し、関節の仮想イナーシャ公称値Ｊnからなる伝達関数Ｊnｓを適用することで関節に作用したトルクを推定することができ、この推定トルクを関節へのトルク指令値τから引き算することで、外乱トルクτdを推定することができる。そして、現制御周期で得られた外乱トルクτdはフィードバックされ、次制御周期におけるトルク指令値τの修正に使用される（同上）。なお、途中に挿入された、ｇ／（ｓ＋ｇ）で表されるローパス・フィルタ（ＬＰＦ）は、系の発散を防ぐためのものである。
【００６３】
このようにして、関節部に摩擦や慣性などのモデル化することができない外乱成分が存在していても、アクチュエータの加速度応答を加速度目標値に追従させることができる。すなわち、上式（１）の右辺が与えられたときに左辺の関節角加速度が達成されるので、アクチュエータは外乱の影響を受けるにも拘らず理論モデルに従った応答を実現することができる。但し、外乱トルクτdをフィードバックする途中に上記のローパス・フィルタｇ／（ｓ＋ｇ）が挿入されており（前述）、高周波数域の外乱除去には向かない。
【００６４】
なお、外乱オブザーバについては、例えば、「外乱オブザーバによるロバスト・モーションコントロール」（（非特許文献１）を参照されたい。外乱オブザーバは、プラント内の外乱成分を推定し、制御入力にフィードバックすることで、プラントに未知のパラメータ変動や外乱があっても、目標状態に到達させる効力がある。但し、正しく外乱を推定するには、複数のサイクルに亘ってフィードバック演算を繰り返す必要がある。
【００６５】
図６に示した制御ブロック構成では、外乱オブザーバは、関節角ｑの角加速度を上式（１）によって求め、これを関節アクチュエータに対する関節角加速度目標値に設定する。関節角ｑの角加速度は、減速機の出力軸に取り付けられたトルク・センサから得られた外トルクτeと、関節の発生トルクτaと、減速木の出力軸に取り付けられたエンコーダから出力される関節角ｑの時間微分を基に決定される。このような構成をとることによって、関節は、ユーザが指定したイナーシャＩa及び粘性係数νａに従った応答を行なうことが可能となり、理想化若しくは仮想化される。
【００６６】
図７には、ユーザが指定したイナーシャＩa及び粘性係数νaにより数値計算して得られた関節角の理論応答と、図６に示した制御系を適用した関節角の実測応答の比較を示している。但し、関節角の実測は、大きな摩擦を有する波動歯車装置にトルク・センサを取り付けたアクチュエータに対して図６に示した制御系を適用して行なった。
【００６７】
図７に示した比較結果によれば、図６に示した制御系を適用した場合の実測応答は、理論応答とほぼ合致することが分かる。したがって、図６に示した制御系を適用することで、関節部に摩擦や慣性などの未知の外乱成分が含まれていても、所望の理想的な応答を行なう（すなわち仮想化された）アクチュエータとして矯正できる、と言うことができる。
【００６８】
図６に示したような、外乱オブザーバを用いた制御システムにより理想的な関節角加速度応答を実現するためのアクチュエータ制御は、比較的簡素な処理演算で構成することができ、例えば各アクチュエータに併設された制御用マイコン上でそれぞれ独立して高サンプリングレート（例えば、１００マイクロ秒周期）で実行することが可能である。
【００６９】
図８には、理想的な関節角加速度応答を実現する演算の処理手順をフローチャートの形式で示している。
【００７０】
まず、アクチュエータの減速機出力軸に取り付けたトルク・センサの値を計測し、外トルクτeを得る（ステップＳ１）。
【００７１】
次いで、アクチュエータの減速機出力軸に取り付けたエンコーダの値を計測して、関節角ｑを得る（ステップＳ２）。さらに、この関節角ｑを時間微分して関節角速度を得る。
【００７２】
次いで、上式（１）を用いて、関節角ｑの関節角加速度目標値を算出する（ステップＳ３）。すなわち、下式（２）の計算を行なう。
【００７３】
【数２】
0004715863.tif 000003
【００７４】
次いで、外乱オブザーバにより外乱トルクτdを得る（ステップＳ４）。図６より、外乱トルクτdは下式（３）により算出される。但し、同式中のトルク指令値τは前制御周期のものとする。
【００７５】
【数３】
0004715863.tif 000004
【００７６】
ステップＳ２において上式（２）から得られた関節角加速度をトルク目標値τrefに変換し、このトルク目標値τrefから上式（３）により得られた外乱トルクτdを加算することで、現制御周期のトルク指令値τを求めることができる。
【００７７】
【数４】
0004715863.tif 000005
【００７８】
次いで、上式（４）から得られたトルク指令値τをトルク定数Ｋtで割ることによって、モータ・ドライバへの電流指令値ｉrefを算出する（ステップＳ５）。
【００７９】
【数５】
0004715863.tif 000006
【００８０】
そして、得られた電流指令値ｉrefをモータ・ドライバへ送出し、電流制御を実行する（ステップＳ６）。
【００８１】
例えば、本出願人に既に譲渡されている特開２００７−１０８９５５号公報には、ダイナミクス演算を応用してロボットの力制御を行なう方法について開示されている。上述したような理想化されたアクチュエータが達成されると、ダイナミクス演算を用いたロボットの力制御を好適に実現することができる。
【００８２】
図２に示した関節自由度モデルは、２足歩行の移動ロボットを、骨盤Ｂを基底とする開リンク木構造として表現している。ロボットは、ワールド空間中を自由に移動し、姿勢を変化させることができる。そこで、ロボット全体の状態を表すための状態変数として、骨盤Ｂのオイラー角α＝（α，β，γ）Tとその位置ｐ0（ｐ0x，ｐ0y，ｐ0z）Tを導入する。すると、ロボット全体の姿勢を表す一般化変数ｑは、アクチュエータの現在状態としての全関節値を並べてできるベクトルθと、ロボットの運動状態としてのベースの姿勢α及び位置ｐ0を並べたベクトルとして、下式（６）のような形で表現することができる。
【００８３】
【数６】
0004715863.tif 000007
【００８４】
力制御系のロボット制御における重要な概念として、「操作空間（Ｏｐｅｒａｔｉｏｎａｌ  Ｓｐａｃｅ）」と呼ばれる概念がある。操作空間は、ロボットに作用する力と発生する加速度の関係を記述するための空間である。ロボットの関節角を位置制御ではなく力制御する際にロボットと環境の接し方を拘束条件として用いるときに、操作空間が必須となる。剛体リンクが関節を介して連なったリンク構造物において、関節の値をすべて連ねてできるベクトルを一般化変数と呼び、ｑで表すものとする。一般化変数ｑの時間微分値との関係がヤコビアンＪを用いて、下式（７）に示す形に関連付けるとき、物理量ｘに対して操作空間を定義することができる。
【００８５】
【数７】
0004715863.tif 000008
【００８６】
マニピュレータ先端の手先位置姿勢など、タスク遂行のためのデカルト座標系が操作空間の一例である。操作空間の基本的な考え方については、例えば、“Ａ  ｕｎｉｆｉｅｄ  ａｐｐｒｏａｃｈ  ｔｏ  ｍｏｔｉｏｎ  ａｎｄ  ｆｏｒｃｅ  ｃｏｎｔｒｏｌ  ｏｆ  ｒｏｂｏｔ  ｍａｎｉｐｕｌａｔｏｒｓ”（Ｔｈｅ  ｏｐｅｒａｔｉｏｎａｌ  ｓｐａｃｅ  ｆｏｒｍｕｌａｔｉｏｎ，ＩＥＥＥ  Ｊｏｕｒｎａｌ  ｏｆ  Ｒｏｂｏｔｉｃｓ  ａｎｄ  Ａｕｔｏｍａｔｉｏｎ，ＲＡ−３（１），ｐｐ．４３−５３，１９８７）を参照されたい。
【００８７】
一般に、リンク構造物全体の運動方程式は、下式（８）に示すような形で表現できることが知られている。
【００８８】
【数８】
0004715863.tif 000009
【００８９】
ここで、τは一般化変数ｑに対応した一般化力、ｂは重力・コリオリ力、ｆは操作空間に作用する外力である。上式（８）を下式（９）のように変形する。
【００９０】
【数９】
0004715863.tif 000010
【００９１】
ここで、Λ-1は操作空間慣性逆行列と呼ばれ、下式（１０）のように表される。但し、Ｈは構造全体の関節空間に対する慣性行列である。
【００９２】
【数１０】
0004715863.tif 000011
【００９３】
また、上式（９）の右辺第３項のｃは操作空間バイアス加速度（すなわち、外力が作用しない場合に操作空間に作用する加速度）に相当し、下式（１１）のように表される。
【００９４】
【数１１】
0004715863.tif 000012
【００９５】
操作空間、すなわち加速度と力の関係は操作空間慣性逆行列によって与えられる。なお、上式（１０）に示した定義通りの計算では、構造全体の関節空間に対する慣性行列Ｈが介在して計算の無駄が発生するために、操作空間慣性逆行列の算出には非常に多くの計算量となるため、実時間処理に向かないという問題がある。これに対し、リンク構造物の一般化力（関節力）から一般化加速度（関節加速度）を得るダイナミクス演算を応用することで、操作空間慣性逆行列を高速に算出するとともに計算負荷の軽減を図ることができる。操作空間慣性逆行列及びバイアス加速度の高速な計算方法に関しては、例えば本出願人に既に譲渡されている特開２００７−１０８９５５号公報を参照されたい。
【００９６】
ダイナミクス演算を用いたロボットの制御方法では、多様な運動目的を達成するために、第１段階として操作空間に作用する仮想的な力ｆを求め、第２段階として仮想的な力ｆを実在する関節トルクと環境からの外力に変換する、という２段階解放を取ることができる（例えば、本出願人に既に譲渡されている特願２００７−２７２０９９号明細書を参照されたい）。
【００９７】
第１段階として、操作空間に印加すべき仮想力ｆは、下式（１２）及び（１３）に示すような線形相補性問題を解くことで得ることができる。
【００９８】
【数１２】
0004715863.tif 000013
【００９９】
【数１３】
0004715863.tif 000014
【０１００】
また、力に関する運動要求として、既知の力ｆkを操作空間Ｊkに発生する要求があるものとすると、上記の位置・速度・加速度に関する運動要求と併せて、全体で要求される仮想力すなわち一般化力τvは下式（１４）のように表される。
【０１０１】
【数１４】
0004715863.tif 000015
【０１０２】
但し、ｆvはｆとｆkの連結ベクトルであり、ＪvはＪとＪkを縦に並べてできるｆvの操作空間を表すヤコビアンである。
【０１０３】
第２段階では、下式（１５）に示すように、仮想力ｆvを環境から得られる外力ｆeと、関節部のアクチュエータのトルクτaに変換する。ｆvは実在しない力も含む仮想力である。
【０１０４】
【数１５】
0004715863.tif 000016
【０１０５】
ここで、Ｊe、Ｊaは、ｆe、τaの作用する操作空間に対応するヤコビアンである。
【０１０６】
式（１５）を満足するｆe及びτaが常に存在するとは限らない。そこで、上式仮想力ｆvの修正分Δｆvを考慮する。
【０１０７】
【数１６】
0004715863.tif 000017
【０１０８】
上式（１６）は、下式（１７）及び（１８）のような問題を解くことで、解を得ることができる。
【０１０９】
【数１７】
0004715863.tif 000018
【０１１０】
【数１８】
0004715863.tif 000019
【０１１１】
ここで、ｅは、上式（１６）の左辺から右辺を引いた値であり、上式（１６）の誤差を与える。また、ｙは、τa、ｆe、Δｆvの連結ベクトルである。よって、上式（１７）の 第１項は、上式（１６）の等式成立の誤差最小化のための条件を、上式（１８）の第２項は、仮想力修正量Δｆv、実在力ｆe及びτaの最小化のための条件を表している。Ｑ1並びにＱ2はそれらの間の最小化の重みを表す正定値対称行列である。不等式拘束式（１８）は、垂直反力、摩擦条件、関節発生力の上限・下限などを与える。
【０１１２】
上式（１７）及び（１８）を整理すると、下式（１９）及び（２０）に示すような２次計画問題として定式化される。
【０１１３】
【数１９】
0004715863.tif 000020
【０１１４】
【数２０】
0004715863.tif 000021
【０１１５】
２次計画問題を用いることで、上式（１９）及び（２０）をｙ、ひいてはτa、ｆe、Δｆvについて解くことができる。これを解いて得られる関節部のアクチュエータのトルクτaをロボットに作用すれば良い。
【０１１６】
上述したようなダイナミクス演算に基づく力制御方式によれば，６軸力センサの値は必要としない。但し、ここで得られたτa は、一般のアクチュエータに適用しても、未知の摩擦などの誤差が存在し、所望の値を達成できない。また、その応答特性も上記ダイナミクス演算で用いる理想的な関節モデル（上式（１））から逸脱し、運動目的は達成され難しい。これに対し、本発明が提供する理想応答可能なアクチュエータを用いる場合には、ダイナミクス演算が前提とした通りの関節応答が可能となり、ひいては、ロボット全体の運動目的も良好に達成可能となる。
【０１１７】
なお、上述した演算は、アクチュエータの理想化のための制御演算よりも低サンプリングレートで実行する。例えば、１ミリ秒周期で実行するものとする。
【０１１８】
また、上述した実施形態では、外乱オブザーバ内部で必要となる関節角加速度を得るために、数値微分並びにローパス・フィルタを用いたが、これはアクチュエータの応答を低下させる要因となる。関節角加速度を直接的に計測するため、アクチュエータに加速度検出手段を直接設けてもよい。
【０１１９】
図９には、ダイナミクス演算に基づく力制御方式によるロボットの制御システム１０の機能ブロック図を示している。
【０１２０】
力学モデル１１は、制御対象となるロボットの剛体リンクの幾何学的パラメータ、動力学的パラメータを保持する。関節角度など、現在のロボットの状態に応じて時々刻々と変化するものも、力学モデル１１が保持するデータに含まれる。
【０１２１】
目標値設定部１２は、ロボットの各部位、関節、運動量に課される、位置・速度・加速度・姿勢・角速度・角加速度・力・モーメントなどに関する目標値を設定する。例えば、位置・速度・加速度・姿勢・角速度・角加速度については、上式（９）の左辺の値として目標値が設定される。既知の力ｆkについては別途記憶しておく。
【０１２２】
仮想的外力算出部１３は、目標値設定部１２で設定された目標値を実現するために必要な仮想的外力を求める。具体的には、未知の仮想的外力については、上式（１２）及び（１３）を満足する力ｆを線形相補性問題解決器１３−２によって求める。上式（１２）の係数行列Λ-1やバイアス・ベクトルｃは、操作空間物理量算出部１３−１において、操作空間物理量の高速演算（例えば、特開２００７−１０８９５５号公報を参照のこと) を用いて求める。操作空間物理量の算出に、力学モデルの情報が利用される。既知の仮想的外力ｆkがさらに付加される場合は、全体で要求される仮想的外力は式（１４）で得る。
【０１２３】
実在力変換部１５は、仮想的外力算出部１３で得られた仮想的外力τv＝ＪTvｆv を、上式（１６）を満足するように、実在力、すなわち、環境から得られる外力ｆeと、関節部のアクチュエータのトルクτaに変換する。仮想的外力から実在力への変換処理は、２次計画問題解決器１５−１で上式（１９）及び（２０）を解くことで達成される。実在力変換部１５は、そのうち、アクチュエータのトルクτaを出力する。
【０１２４】
トルク検出手段１６は、関節部に取り付けられたトルク・センサ（図４Ａを参照のこと）であり、各関節部に作用する実トルクを計測し、出力する。そして、トルク・フィードバック制御部１７は、トルク検出部１６で検出されたトルクと、指令トルクの偏差を検出し、電流目標値にフィードバックする。これにより、モータ駆動系に含まれる摩擦や慣性などの外乱を抑圧し、精度良くアクチュエータ目標トルクが各関節において実現される。
【産業上の利用可能性】
【０１２５】
以上、特定の実施形態を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が該実施形態の修正や代用を成し得ることは自明である。
【０１２６】
本明細書では、本発明を２足歩行の脚式移動ロボットに適用した実施形態を中心に説明してきたが、本発明の要旨はこれに限定されるものではない。関節アクチュエータを力制御方式で動作させる多リンク構造体からなるさまざまなタイプのメカトロ機器に対して、同様に本発明を適用することができる。
【０１２７】
要するに、例示という形態で本発明を開示してきたのであり、本明細書の記載内容を限定的に解釈するべきではない。本発明の要旨を判断するためには、特許請求の範囲を参酌すべきである。
【０１２８】
なお、上記実施形態に開示した本発明は意匠の創作としても捉えられ、図１Ａ〜Ｆとして示した人間型ロボットは、意匠法施行規則別表１と同程度の物品の区分でいうところの「ロボットおもちゃ」に相当し、当該意匠に係る物品の説明として次の捉え方もできる。
【０１２９】
当該意匠に係る物品は、その行動及び思考、例えば歩行等が自立的に制御された人間型のロボットであって、人間と同様に、手指、手足を動かし、首を動かし、腰を動かすことができる。当該物品は、産業上の特定の用途に供されることを目的とした従来型の産業用ロボットと異なり、特段斯かる産業上の限定的な用途を有しない。また、従来型の玩具や人形の類とも異なり、単なる遊び道具ではない。その主眼は、恰も実際の人間の如く、人間と自律的に意思、感情、思考を交流（コミュニケート）し、人間の生活を潤わせ、そして此れを補助することにある。如何なる用途、目的に供するかは、これを使用する者次第であり、例えば子供の遊び相手として主に愛玩の用に用いることもでき、或いは病人の看護の目的に供することもでき、更には、悪環境における作業を人間に代替させることも可能である。斯かる意味において、当該物品は、用途及び機能を特定することにより定義される、従来型の物品とは異なるものである。
【０１３０】
また、図１Ｇ〜Ｌとして示したロボットの頭部については、意匠法施行規則別表１と同程度の物品の区分でいうところの「ロボットおもちゃ」を構成する交換可能な部品としても捉えられ、「ロボットおもちゃ用頭部」に相当する。当該意匠に係る物品の説明については、頭部が交換可能であるという機能的な説明を除き、その用途は「ロボットおもちゃ」であって上記段落番号０１２９に記載した内容と共通するため省略する。
【０１３１】
ここで、上記実施形態に開示した本発明は意匠の創作としても捉えた場合にける意匠の説明を追記するが、図１Ｂは右側面図であるところ、左側面図は略対称に表れることから図示を省略している。同様に、図１Ｈに対して左側面図は略対称に表れることから図示を省略している。
【０１３２】
さらに、図１Ａ〜Ｌからは、上記実施形態に開示した本発明を部分意匠として捉えられることができるものとする。けだし、敢えて図示をせずとも、当該意匠に係る物品を「ロボットおもちゃ」とし、当該「ロボットおもちゃ」に係る部分意匠としては、図１Ｇ〜Ｌで示した部位を部分意匠として意匠登録を受けようとすることが推認でき、当該部分意匠として意匠登録を受けようとする部分以外の部分については図１Ａ〜Ｆのうち当該図１Ｇ〜Ｌを差し引くことで推認可能だからである。
【図面の簡単な説明】
【０１３３】
【図１Ａ】図１Ａは、本発明を適用することができる人間型ロボットの正面図である。
【図１Ｂ】図１Ｂは、本発明を適用することができる人間型ロボットの左側面図である。
【図１Ｃ】図１Ｃは、本発明を適用することができる人間型ロボットの背面図である。
【図１Ｄ】図１Ｄは、本発明を適用することができる人間型ロボットの上面図である。
【図１Ｅ】図１Ｅは、本発明を適用することができる人間型ロボットの底面図である。
【図１Ｆ】図１Ｆは、本発明を適用することができる人間型ロボットの斜視図である。
【図１Ｇ】図１Ｇは、本発明を適用することができる人間型ロボットの頭部の正面図である。
【図１Ｈ】図１Ｈは、本発明を適用することができる人間型ロボットの頭部の左側面図である。
【図１Ｉ】図１Ｉは、本発明を適用することができる人間型ロボットの頭部の背面図である。
【図１Ｊ】図１Ｊは、本発明を適用することができる人間型ロボットの頭部の上面図である。
【図１Ｋ】図１Ｋは、本発明を適用することができる人間型ロボットの頭部の底面図である。
【図１Ｌ】図１Ｌは、本発明を適用することができる人間型ロボットの頭部の斜視図である。
【図２】図２は、図１に示した人間型ロボットの関節自由度モデルを示した図である。
【図３】図３は、各関節軸を駆動するアクチュエータの構成例を示した図である。
【図４Ａ】図４Ａは、減速機の出力軸に取り付けられるトルク・センサの構成例を示した図である。
【図４Ｂ】図４Ｂは、トルク・センサの等価回路を示した図である。
【図５】図５は、図１に示した人間型ロボットにおける結線トポロジの構成例を示した図である。
【図６】図６は、理論モデルに従った応答を行なうための関節角加速度制御系の制御ブロック図である。
【図７】図７は、ユーザが指定したイナーシャＩa及び粘性係数νaにより数値計算して得られた関節角の理論応答と、図６に示した制御系を適用した関節角の実測応答の比較を示した図である。
【図８】図８は、理想的な関節角加速度応答を実現する演算の処理手順を示したフローチャートである。
【図９】図９は、ダイナミクス演算に基づく力制御方式によるロボットの制御システム１０の機能ブロック図である。
【符号の説明】
【０１３４】
１０…制御システム
１１…力学モデル
１２…目標設定部
１３…仮想的外力算出部
１３−１…操作空間物理量算出部
１３−２…線形相補性問題解決器
１５…実在力変換部
１５−１…２次計画問題解決器
１６…トルク検出手段
１７…トルク・フィードバック制御部
【図１Ａ】
0004715863.tif 000022
【図１Ｂ】
0004715863.tif 000023
【図１Ｃ】
0004715863.tif 000024
【図１Ｄ】
0004715863.tif 000025
【図１Ｅ】
0004715863.tif 000026
【図１Ｆ】
0004715863.tif 000027
【図１Ｇ】
0004715863.tif 000028
【図１Ｈ】
0004715863.tif 000029
【図１Ｉ】
0004715863.tif 000030
【図１Ｊ】
0004715863.tif 000031
【図１Ｋ】
0004715863.tif 000032
【図１Ｌ】
0004715863.tif 000033
【図２】
0004715863.tif 000034
【図３】
0004715863.tif 000035
【図４Ａ】
0004715863.tif 000036
【図４Ｂ】
0004715863.tif 000037
【図５】
0004715863.tif 000038
【図６】
0004715863.tif 000039
【図７】
0004715863.tif 000040
【図８】
0004715863.tif 000041
【図９】
0004715863.tif 000042