(57)【特許請求の範囲】
【請求項１】
少なくとも上肢と、下肢と、足部と、体幹部及び腰部で構成される脚式移動ロボットであって、
前記足部に配設された、所定の滑走方向を持つ滑走ユニットと、
前記滑走ユニットを用いた滑走動作期間中に、ＺＭＰ軌跡制御により前記脚式移動ロボットの姿勢安定制御を行う制御手段と、
を具備し、
前記制御手段は、
（ａ）前記滑走動作期間中における所望の動作を実現するための足部運動、体幹運動、上肢運動、腰部の姿勢及び高さを設定し、（ｂ）前記の設定した足部運動に基づいてＺＭＰ軌道を設定し、（ｃ）前記の設定されたＺＭＰ上でモーメントが釣り合う腰部運動の解を求め、（ｄ）前記腰部運動の解に基づいて所望の滑走動作の全身運動パターンを生成する、
ことを特徴とする脚式移動ロボット。
【請求項２】
前記滑走ユニットは前記足部に対して着脱自在に取り付けられていることを特徴とする請求項１に記載の脚式移動ロボット。
【請求項３】
前記制御手段は、各可動脚の滑走ユニットの滑走方向を前記脚式移動ロボットの進行方向に揃えることで、滑走中の移動速度を持続するように制御することを特徴とする請求項１に記載の脚式移動ロボット。
【請求項４】
前記制御手段は、少なくとも１つの可動脚の滑走ユニットの滑走方向を前記脚式移動ロボットの進行方向に交叉するように設定するとともに、該可動脚を後方に蹴り出すことによって加速動作を実現することを特徴とする請求項１に記載の脚式移動ロボット。
【請求項５】
前記制御手段は、前記滑走ユニットの滑走方向と前記移動ロボットの進行方向を調整することによって滑走動作に伴う移動速度を制動することを特徴とする請求項１に記載の脚式移動ロボット。
【請求項６】
前記制御手段は、少なくとも１つの可動脚の滑走ユニットの滑走方向を前記脚式移動ロボットの進行方向に交叉するように設定するとともに該可動脚を着床することによって制動作用を導出することを特徴とする請求項１に記載の脚式移動ロボット。
【請求項７】
さらに、前記上体の傾斜又は姿勢を検出する姿勢検出手段と、前記可動脚の着床及び離床を検出する接地確認手段と、滑走動作による移動速度を検出する移動速度検出手段とを備え、
前記制御手段は、前記姿勢検出手段、接地確認手段、及び移動速度検出手段の少なくとも１つの出力に基づいて、ＺＭＰ軌跡制御により前記脚式移動ロボットの姿勢安定制御を行うことを特徴とする請求項１に記載の脚式移動ロボット。
【請求項８】
少なくとも上肢と、下肢と、足部と、体幹部及び腰部で構成され、前記足部に所定の滑走方向を持つ滑走ユニットが配設された脚式移動ロボットの動作制御方法であって、
（ａ）前記滑走動作期間中における所望の動作を実現するための足部運動、体幹運動、上肢運動、腰部の姿勢及び高さを設定するステップと、（ｂ）前記の設定した足部運動に基づいてＺＭＰ軌道を設定するステップと、（ｃ）前記の設定されたＺＭＰ上でモーメントが釣り合う腰部運動の解を求めるステップと、（ｄ）前記腰部運動の解に基づいて所望の滑走動作の全身運動パターンを生成するステップと、
を有し、前記滑走ユニットを用いた滑走動作期間中に、ＺＭＰ軌跡制御により前記脚式移動ロボットの姿勢安定制御を行うことを特徴とする脚式移動ロボットの動作制御方法。
【請求項９】
さらに、各足部の滑走ユニットの滑走方向を進行方向に揃えることで、滑走中の移動速度を持続するように制御するステップを有することを特徴とする請求項８に記載の脚式移動ロボットの動作制御方法。
【請求項１０】
さらに、少なくとも１つの可動脚の滑走ユニットの滑走方向を前記脚式移動ロボットの進行方向に交叉するように設定するとともに該可動脚を後方に蹴り出すことによって加速動作を実現するステップを有することを特徴とする請求項８に記載の脚式移動ロボットの動作制御方法。
【請求項１１】
さらに、少なくとも１つの可動脚の滑走ユニットについて滑走方向を前記脚式移動ロボットの進行方向に交叉するように設定するとともに該可動脚を着床することによって制動作用を導出するステップを有することを特徴とする請求項８に記載の脚式移動ロボットの動作制御方法。
【請求項１２】
さらに、前記滑走ユニットの滑走方向と前記移動ロボットの進行方向を調整することによって滑走動作に伴う移動速度を制動するステップを有することを特徴とする請求項８に記載の脚式移動ロボットの動作制御方法。
【請求項１３】
前記脚式移動ロボットは、前記上体の傾斜又は姿勢を検出する姿勢検出手段と、前記可動脚の着床及び離床を検出する接地確認手段と、滑走動作による移動速度を検出する移動速度検出手段とをさらに備え、
さらに、前記姿勢検出手段、接地確認手段、及び移動速度検出手段の少なくとも1つの出力に基づいて、ＺＭＰ軌跡制御により前記脚式移動ロボットの姿勢安定制御を行うステップを有することを特徴とする請求項８に記載の脚式移動ロボットの動作制御方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、生体のメカニズムや動作をモデル化して構成されるリアリスティックなロボットのメカニズムに係り、特に、ヒトやサルなどの脚式移動型動物の身体メカニズムをモデル化した脚式移動型ロボットのメカニズムに関する。
【０００２】
更に詳しくは、本発明は、それぞれの可動脚が着床及び離床動作を協調的に繰り返し実行することにより柔軟な動作パターンを実現することができる脚式移動型ロボットのメカニズムやその制御方法に係り、特に、各々の可動脚にローラ・スケート靴のような滑走ユニットを装着してダイナミック且つ高速な移動動作を行う脚式移動型ロボットのメカニズムやその制御方法に関する。
【０００３】
【従来の技術】
ロボットの語源は、スラブ語のＲＯＢＯＴＡ（奴隷機械）に由来するといわれている。わが国では、ロボットが普及し始めたのは１９６０年代末からであるが、その多くは、工場における生産作業の自動化・無人化などを目的としたマニピュレータや搬送ロボットなどの産業用ロボット（ｉｎｄｕｓｔｒｉａｌ  ｒｏｂｏｔ）であった。
【０００４】
最近では、ヒトやサルなどの２足直立歩行を行う動物の身体メカニズムや動作を模した脚式移動ロボットに関する研究開発が進展し、実用化への期待も高まってきている。２足直立による脚式移動は、クローラ式や、４足又は６足式などに比し不安定で姿勢制御や歩行制御が難しくなるが、階段の昇降や障害物の乗り越えなど、柔軟な歩行・走行動作を実現できるという点で優れている。
【０００５】
例えば、特開平３−１８４７８２号公報には、脚式歩行ロボットのうち、胴体より下に相当する構造体に適用される関節構造について開示している。
【０００６】
ヒトの生体メカニズムや動作をエミュレートした脚式移動ロボットのことを、特に、「人間形」、若しくは「人間型」のロボット（ｈｕｍａｎｏｉｄ  ｒｏｂｏｔ）と呼ぶ。人間型ロボットは、例えば、生活支援、すなわち住環境その他の日常生活上の様々な場面における人的活動の支援などを行うことができる。
【０００７】
人間形若しくは人間型と呼ばれるロボットを研究・開発する意義を、例えば以下の２つの視点から把握することができよう。
【０００８】
１つは、人間科学的な視点である。すなわち、人間の下肢及び／又は上肢に似た構造のロボットを作り、その制御方法を考案して、人間の歩行動作をシミュレートするというプロセスを通じて、歩行を始めとする人間の自然な動作のメカニズムを工学的に解明することができる。このような研究成果は、人間工学、リハビリテーション工学、あるいはスポーツ科学など、人間の運動メカニズムを扱う他のさまざまな研究分野の進展に大いに還元することができるであろう。
【０００９】
もう１つは、人間のパートナーとして生活を支援する、すなわち住環境その他の日常生活上の様々な場面における人的活動の支援を行うロボットの開発である。この種のロボットは、人間の生活環境のさまざまな局面において、人間から教わりながら個々に個性の相違する人間又は環境への適応方法を学習し、機能面でさらに成長していく必要がある。このとき、ロボットが「人間形」すなわち人間と同じ形又は同じ構造をしている方が、人間とロボットとのスムースなコミュニケーションを行う上で有効に機能するものと考えられる。
【００１０】
例えば、踏んではならない障害物を避けながら部屋を通り抜ける方法を実地においてロボットに教示するような場合、クローラ式や４足式ロボットのように教える相手が自分と全く違う構造をしているよりも、同じような格好をしている２足歩行ロボットの方がユーザ（作業員）はるかに教え易く、またロボットにとっても教わり易い筈であろう（例えば、高西著「２足歩行ロボットのコントロール」（自動車技術会関東支部＜高塑＞Ｎｏ．２５，１９９６ＡＰＲＩＬ）を参照のこと）。そもそも、人間の住環境のほとんどは人間が持つ形態や行動様式に合わせて形成されたものであるから、ロボットが人間型の形態を有していることは人間の住環境との親和性を高める上で必須であるとも言える。
【００１１】
人間型ロボットの用途の１つとして、産業活動・生産活動等における各種の難作業の代行が挙げられる。例えば、原子力発電プラントや火力発電プラント、石油化学プラントにおけるメンテナンス作業、製造工場における部品の搬送・組立作業、高層ビルにおける清掃、火災現場その他における救助といったような危険作業・難作業の代行などである。但し、この種の産業利用に特化したロボットは、特定の用途若しくは機能を実現することが設計・製作上の至上の主題であり、２足歩行を前提とはするものの、ヒトやサルなど直立歩行動物が本来持つ身体メカニズムや動作を機械装置として忠実に再現する必要は必ずしもない。例えば、特定用途を実現するために手先の自由度や動作機能を強化する一方で、用途には比較的関係が低いとされる頭部や体幹部（脊椎など）、腰部などの自由度を制限し又を省略することはある程度許容すべきである。この結果、２足歩行と謂えども、ロボットの作業や動作の外観上で、ヒトとしては不自然さが残ることがあるが、かかる点は妥協せざるを得ない。
【００１２】
また、人間型ロボットの他の用途として、難作業の代行などの生活支援というよりも、生活密着型、すなわち人間との「共生」という用途が挙げられる。この種のロボットは、ヒトやサルなどの２足の直立歩行を行う動物が本来持つ、全身協調型の動作メカニズムを忠実に再現し、その自然に円滑な動作を実現することを至上の目的とする。また、ヒトやサルなどの知性の高い直立動物をエミュレートする以上、四肢を用いた動作の表現力が豊かであることが望ましい。さらに、予め入力された動作パターンを単に忠実に実行するだけではなく、相手の言葉や態度（「褒める」とか「叱る」、「叩く」など）に呼応した、生き生きとした動作表現を実現することも要求される。この意味において、ヒトを模したエンターティンメント・ロボットは、まさに「人間型ロボット」と呼ぶに相応しい。
【００１３】
既に周知のように、人体は数百の関節すなわち数百に上る自由度を備えている。限りなくヒトに近い動作を脚式移動ロボットに付与するためには、ほぼ同じ自由度を与えることが好ましいが、これは技術的には極めて困難である。何故ならば、１つの自由度に対して少なくとも各１つのアクチュエータを配設する必要があるが、数百のアクチュエータをロボットという機械装置上に実装することは、製造コストの点からも、重量やサイズなど設計の観点からも不可能に等しい。また、自由度が多いと、その分だけロボットの位置・動作パターン制御や姿勢安定制御等のための計算量が指数関数的に増大してしまう。
【００１４】
このため、人体よりもはるかに少ない数十程度の関節自由度で人間型ロボットを構成するのが一般的である。したがって、少ない自由度を用いてより自然な動作を如何にして実現するかが、人間型ロボットの設計・制御において重要な課題の１つといえる。
【００１５】
例えば、脊椎などのように柔軟性を持つ機構が人間の生活の場で多様で複雑な動作をするために重要であることは、人間工学などの観点から既に明らかである。脊椎を意味する体幹関節自由度は、産業的な用途上は存在価値が低いが、エンターティンメントやその他の生活密着型の人間型ロボットには重要である。なお且つ、状況に応じて柔軟さを能動的に調節できることが求められている。
【００１６】
また、２足直立歩行を行う脚式移動ロボットは、柔軟な歩行・走行動作（例えば階段の昇降や障害物の乗り越え等）を実現できる点で優れている反面、重心位置が高くなるため、その分だけ姿勢制御や安定歩行制御が難しくなる。特に、生活密着型のロボットの場合、ヒトやサルなどの知性動物における自然な動作や感情を豊かに表現しながら姿勢や安定歩行を制御しなければならない。
【００１７】
２足歩行による脚式移動を行うタイプのロボットに関する姿勢制御や安定歩行に関する技術は既に数多提案されている。ここで言う安定な「歩行」を、「転倒することなく、脚を使って移動すること」と定義することができよう。
【００１８】
歩行時には、重力と歩行運動に伴なって生じる加速度によって、歩行系から路面には重力と慣性力、並びにこれらのモーメントが作用する。いわゆる「ダランベールの原理」によると、それらは路面から歩行系への反作用としての床反力、床反力モーメントとバランスする。力学的推論の帰結として、足底接地点と路面の形成する支持多角形の辺上あるいはその内側にピッチ及びロール軸モーメントがゼロとなる点、すなわち「ＺＭＰ（Ｚｅｒｏ  Ｍｏｍｅｎｔ  Ｐｏｉｎｔ）」が存在する。
【００１９】
ロボットの安定歩行に関する提案の多くは、このＺＭＰを歩行の安定度判別の規範として用いている。ＺＭＰ規範に基づく２足歩行パターン生成は、足底着地点を予め設定でき、路面形状に応じた足先の運動学的拘束条件を考慮し易いなどの利点がある。
【００２０】
例えば、特開平５−３０５５７９号公報には、脚式移動ロボットの歩行制御装置について開示している。同公報に記載の歩行制御装置は、ＺＭＰ（Ｚｅｒｏ  Ｍｏｍｅｎｔ  Ｐｏｉｎｔ）すなわち歩行するときの床反力によるモーメントがゼロとなる床面上の点を目標値に一致させるように制御するものである。
【００２１】
また、特開平５−３０５５８１号公報に記載の脚式移動ロボットは、ＺＭＰが支持多面体（多角形）内部、又は、着地、離床時にＺＭＰが支持多面体（多角形）の端部から少なくとも所定の余裕を有する位置にあるように構成した。この結果、外乱などを受けても所定距離だけＺＭＰの余裕があり、歩行の安定性の向上を図ることができる。
【００２２】
また、特開平５−３０５５８３号公報には、脚式移動ロボットの歩き速度をＺＭＰ目標位置によって制御する点について開示している。すなわち、同公報に記載の脚式移動ロボットは、予め設定された歩行パターン・データを用い、ＺＭＰを目標位置に一致させるように脚部関節を駆動するとともに、上体の傾斜を検出して、その検出値に応じて設定された歩行パターン・データの吐き出し速度を変更するようにしている。この結果、予期しない凹凸を踏んでロボットが例えば前傾するときは吐き出し速度を速めることで姿勢を回復できる。またＺＭＰが目標位置に制御できるので、両脚支持期において吐き出し速度を変更しても支障がない。
【００２３】
また、特開平５−３０５５８５号公報には、脚式移動ロボットの着地位置をＺＭＰ目標位置によって制御する点について開示している。すなわち、同公報に記載の脚式移動ロボットは、ＺＭＰ目標位置と実測位置とのずれを検出して、それを解消する様に脚部の一方または双方を駆動するか、又は、ＺＭＰ目標位置まわりにモーメントを検出してそれが零になる様に脚部を駆動することで安定歩行を行うようになっている。
【００２４】
また、特開平５−３０５５８６号公報には、脚式移動ロボットの傾斜姿勢をＺＭＰ目標位置によって制御する点について開示している。すなわち、同公報に記載の脚式移動ロボットは、ＺＭＰ目標位置まわりのモーメントを検出し、モーメントが生じているときは、それが零になるように脚部を駆動することで安定歩行を行うようになっている。
【００２５】
【発明が解決しようとする課題】
上述したように脚式移動型ロボットの歩行動作に関しては、ＺＭＰを安定度判別度規範に用いた数多の研究・開発が既になされてきている。
【００２６】
しかしながら、歩行動作は脚式移動ロボットの基本動作パターンとして重要ではあるが、動作パターンの全てではない。そもそも脚式移動は、柔軟な歩行・走行動作が可能であることが優れた特徴であり、階段の昇降や障害物の乗り越えを行う他、ジャンプ動作、高所からの飛び降り動作も脚式移動ロボットはサポートすべきである。
【００２７】
また、エンターティンメント向けの人間型ロボットの場合には、歩行・走行、ジャンプなど、人間の日常生活上の基本的な動作パターンの他に、さらにゲームやスポーツなど、各種の競技種目に関連する全身運動を行うことが期待されている。
【００２８】
例えば、脚式移動ロボットにローラ・スケート靴を履かせることにより、床面上を滑動させてもよいであろう。ロボットのローラ・スケーティングへの適用は、単に娯楽性を発揮するだけにとどまらず、通常の歩行動作よりもダイナミックで速い移動作業を、他の機構を変更することなく実現できるという利点もある。例えば、荷物の搬送時などにローラー・スケート靴を履いたロボットを適用することもできるであろう。
【００２９】
従来の脚式移動ロボットでは、その自由度構造などの問題から移動速度が比較的遅く（等身大の脚式移動ロボットでは、最大移動速度は２．０Ｋｍ／ｈ程度）、ダイナミックで高速な移動が困難であった。
【００３０】
スケーティングの動作制御を行うことにより移動する脚式移動ロボットの従来例としては、４足歩行ロボット”ＴＩＴＡＮ”（Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆｔｈｅ  １９９９  ＩＥＥＥ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｃｏｎｆｅｒｅｎｃｅ  ｏｎ  Ｒｏｂｏｔｉｃｓ  ＆  Ａｕｔｏｍａｔｉｏｎ  Ｄｅｔｒｏｉｔ，  Ｍｉｃｈｉｇａｎ・Ｍａｙ  １９９９）が挙げられる。しかしながら、ＴＩＴＡＮは、４足ロボットであり２足による直立歩行を想定したものではなく、また、ヒトのような生命体のメカニズムを真似ることを必ずしも目的とはしていない。また、ＴＩＴＡＮは上肢を含んだ構成のロボットに関するスケーティング動作制御について提案するものではない。
【００３１】
本発明の目的は、それぞれの可動脚が着床及び離床動作を協調的に繰り返し実行することにより柔軟な動作パターンを実現することができる、優れた脚式移動型ロボットのメカニズム及びその制御方法を提供することにある。
【００３２】
本発明の更なる目的は、ローラー・スケート靴を履くことにより、通常の歩行よりもダイナミックで高速な移動作業を実現することができる、優れた脚式移動型ロボットのメカニズム及びその制御方法を提供することにある。
【００３３】
【課題を解決するための手段及び作用】
本発明は、上記課題を参酌してなされたものであり、その第１の側面は、２以上の可動脚からなる下肢と、該下肢の上方に配設された上体とで構成され、下肢の運動により各種の動作パターンを実現する脚式移動ロボットであって、
前記可動脚の略最下端に配設された、所定の滑走方向を持つ滑走ユニットと、
前記下肢及び上体を用いた全身運動を動作制御する制御手段とを具備し、
前記制御手段は、前記滑走ユニットの滑走方向と前記移動ロボットの進行方向のなす角度を調整することによって滑走動作に伴なう移動速度を制動することを特徴とする脚式移動ロボットである。
【００３４】
ここで言う滑走ユニットとは、たとえば、足底の裏面に複数の回転ローラを装備した「ローラ・スケーティング・ユニット」であり、ローラの回転方向によって規定される滑走方向を備えている。
【００３５】
滑走ユニットは、例えば可動脚に対して着脱自在に取り付けられている。したがって、滑走ユニットを取り外すだけで、脚式移動ロボットは、歩行や走行などの通常の脚式移動動作パターンを実行することができる。
【００３６】
滑走ユニットは、滑走方向に沿った進行方向にはほとんど摩擦力などの負荷がかからない。このため、各可動脚の滑走ユニットを進行方向に揃えることで、滑走中の移動速度を持続することができる。他方、滑走方向に一致しない（例えば滑走方向と直交する）進行方向では、摩擦力が印加される。このため、滑走開始時や移動速度が減速したときには、１つの可動脚において、滑走ユニットの滑走方向を脚式移動ロボットの進行方向に交叉するように設定するとともに、該可動脚を後方に蹴り出すことによって加速動作を実現することができる。また、滑走期間中においては、滑走ユニットを滑走方向に交叉させて該可動脚を着床することによって路面との間で摩擦力を発生させることで、制動作用を導出することができる。
【００３７】
したがって、本発明に係る脚式移動ロボットによれば、通常の関節自由度のみを以って容易に実現し得る動作パターンのみを用いて滑走動作を行い、この結果、ダイナミックで高速な移動動作を行うことができる。
【００３８】
脚式移動ロボットが一連の滑走動作を行っている期間中、制御手段は、ＺＭＰ軌跡制御により姿勢安定制御を行うことで、滑走中のロボットの転倒を防止することができる。
【００３９】
また、脚式移動ロボットは、さらに、前記上体の傾斜及び／又は姿勢を検出する姿勢検出手段と、前記可動脚の着床及び離床を検出する接地確認手段と、滑走動作による移動速度を検出する移動速度検出手段とを備えていてもよい。また、制御手段は、これら姿勢検出手段、接地確認手段、及び移動速度検出手段が検出若しくは算出した結果に基づいて、脚式移動ロボットをＺＭＰ軌跡制御による姿勢安定制御を行うことができる。
【００４０】
また、本発明の第２の側面は、２以上の可動脚からなる下肢と、該下肢の上方に配設された上体とで構成され、下肢の運動により各種の動作パターンを実現する脚式移動ロボットの動作制御方法であって、前記可動脚の略最下端には所定の滑走方向を持つ滑走ユニット配設されており、
前記滑走ユニットを前記滑走方向に略一致させることによって移動速度を維持するステップと、
前記滑走ユニットの滑走方向を前記脚式移動ロボットの進行方向のなす角度を調整することによって滑走動作に伴なう移動速度を制動するステップと、
を具備することを特徴とする脚式移動ロボットの動作制御方法である。
【００４１】
前記滑走ユニットは前記可動脚に対して着脱自在に取り付けられていてもよい。
【００４２】
また、該動作制御方法は、さらに、各可動脚の滑走ユニットの滑走方向を進行方向に揃えることで、滑走中の移動速度を持続するように制御するステップを備えていてもよい。
【００４３】
また、該動作制御方法は、さらに、少なくとも１つの可動脚の滑走ユニットの滑走方向を前記脚式移動ロボットの進行方向に交叉するように設定するとともに該可動脚を後方に蹴り出すことによって加速動作を実現するステップを備えていてもよい。
【００４４】
また、該動作制御方法は、さらに、少なくとも１つの可動脚の滑走ユニットの滑走方向を前記脚式移動ロボットの進行方向に交叉するように設定するとともに該可動脚を着床することによって制動作用を導出するステップを備えていてもよい。
【００４５】
また、該動作制御方法は、さらに、ＺＭＰ軌跡制御により前記脚式移動ロボットの姿勢安定制御を行うステップを備えていてもよい。
【００４６】
また、前記脚式移動ロボットは、前記上体の傾斜及び／又は姿勢を検出する姿勢検出手段と、前記可動脚の着床及び離床を検出する接地確認手段と、滑走動作による移動速度を検出する移動速度検出手段とをさらに備え、
該動作制御方法は、さらに、前記姿勢検出手段、接地確認手段、及び移動速度検出手段の少なくとも１つの出力に基づいて、ＺＭＰ軌跡制御により前記脚式移動ロボットの姿勢安定制御を行うステップを備えていてもよい。
【００４７】
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。
【００４８】
【発明の実施の形態】
以下、図面を参照しながら本発明の実施例を詳解する。
【００４９】
図１及び図２には本発明の実施に供される人間形又は人間型ロボット１００を前方及び後方の各々から眺望した様子を示している。
【００５０】
本実施例に係る人間型ロボット１００は、両足平にローラー・スケーティング・ユニット２００を着脱自在に取り付けることができる。図３及び４には、人間型ロボット１００の足平にローラ・スケーティング・ユニット２００を装着する様子を示している。ローラ・スケーティング・ユニット２００は、足底の裏面に１以上のローラが回転自在に取り付けられ、滑走動作を実現するための機構ユニットである。
【００５１】
図３に示すように、人間型ロボット１００の脚部ユニットの先端（例えば足首関節部の下端）には、断面が逆Ｔ字形状のスライダ２０１が配設されている。他方、ローラ・スケーティング・ユニット２００の足平上面には、スライダ２０１を挿入するガイド・レール２０２が形設されている。
【００５２】
ガイド・レール２０２の挿入口近傍には、突起状のストッパ２０３が足平の上面から出没自在に配設されている。図３に示すように、ストッパ２０３が埋没した状態では、ガイド・レール２０３の挿入口が完全に開放され、ローラ・スケーティング・ユニット２００をその他の足平ユニットと取り外し交換することが可能となる。他方、図４に示すように、ガイド・レール２０２がスライダ２０１を完全に受容した状態でストッパ２０３を最大限に突出させることにより、ローラ・スケーティング・ユニット２００を脚部ユニットの先端に固定することができる。
【００５３】
図５には、ローラ・スケーティング・ユニット２００に取り付けられた検出機構について図解している。ローラ・スケートのような滑走動作を好適に制御するためには、制御用の入力値として足平が床面に接地しているか否かの接地確認と、滑走中の移動速度を検出する必要がある。
【００５４】
前者の接地確認に関しては、マイクロ・スイッチ２１１Ａとドグ２１１Ｂを用いて検出することができる。すなわち、接地により足平にロボット１００の自重が印加され、足平が沈む（すなわち、ドグ２１１Ｂが突き上がる）ことによって、マイクロ・スイッチ２１１Ａが作動して、接地の有無を検出することができる。
【００５５】
また、移動速度に関しては、ローラの端面に付設されたエンコーダ（回転検出計）２１３の出力を基に算出することができる。すなわち、エンコードされた回転数とローラの円周の積により移動量が分かり、移動量を経過時間で除算することにより移動速度が算出される。
【００５６】
図６及び図７には、両足にローラ・スケーティング・ユニット２００を取り付けた人間型ロボット１００が路面を滑走する動作を前方及び後方の各々から眺望した様子を示している。
【００５７】
図６及び図７を見ても分かるように、スケーティングのために必要な全身運動のパターンは、脚式移動ロボット１００の自由度構造上からも許容された動作範囲内である。言い換えれば、ローラ・スケーティング・ユニット２００をロボット１００の各々の可動脚に適用することによって、標準的に備えた関節自由度のみを以って容易に実現し得る動作パターンを用いて、ロボット１００はダイナミックで高速な滑走すなわち移動動作を行うことができる訳である。（但し、人間型ロボット１００が滑走動作を行うための全身運動パターンの算出処理等については後述で詳解する。）
【００５８】
さらに、図８には、この人間型ロボット１００が具備する関節自由度構成を模式的に示している。図示の通り、人間型ロボット１００は、２本の腕部と頭部１を含む上体と、移動動作を実現する２本の脚部からなる下肢と、上肢と下肢とを連結する体幹部とで構成される。
【００５９】
頭部１を支持する首関節は、首関節ヨー軸２と、首関節ピッチ軸３と、首関節ロール軸４という３自由度を有している。
【００６０】
また、各腕部は、肩関節ピッチ軸８と、肩関節ロール軸９と、上腕ヨー軸１０と、肘関節ピッチ軸１１と、前腕ヨー軸１２と、手首関節ピッチ軸１３と、手首関節ロール軸１４と、手部１５とで構成される。手部１５は、実際には、複数本の指を含む多関節・多自由度構造体である。但し、手部１５の動作自体は、ロボット１００の姿勢安定制御や歩行動作制御に対する寄与や影響が少ないので、本明細書ではゼロ自由度と仮定する。したがって、左右の各腕部は７自由度を有するとする。
【００６１】
また、体幹部は、体幹ピッチ軸５と、体幹ロール軸６と、体幹ヨー軸７という３自由度を有する。
【００６２】
また、下肢を構成する左右各々の脚部は、股関節ヨー軸１６と、股関節ピッチ軸１７と、股関節ロール軸１８と、膝関節ピッチ軸１９と、足首関節ピッチ軸２０と、関節ロール軸２１と、足部（足底）２２とで構成される。股関節ピッチ軸１７と股関節ロール軸１８の交点は、本実施例に係るロボット１００の股関節位置を定義するものとする。人体の足部（足底）２２は、実際には多関節・多自由度の足底を含んだ構造体であるが、本実施例に係る人間型ロボット１００の足底はゼロ自由度とする。したがって、左右の各脚部は６自由度で構成される。
【００６３】
以上を総括すれば、本実施例に係る人間型ロボット１００全体としては、合計で３＋７×２＋３＋６×２＝３２自由度を有することになる。但し、エンターティンメント向けの人間型ロボット１００が必ずしも３２自由度に限定される訳ではない。設計・製作上の制約条件や要求仕様等に応じて、自由度すなわち関節数を適宜増減することができることは言うまでもない。
【００６４】
上述したような人間型ロボット１００が持つ各自由度は、実際にはアクチュエータを用いて実装される。外観上で余分な膨らみを排してヒトの自然体形状に近似させること、２足歩行という不安定構造体に対して姿勢制御を行うことなどの要請から、アクチュエータは小型且つ軽量であることが好ましい。本実施例では、ギア直結型で且つサーボ制御系をワンチップ化してモータ・ユニットに内蔵したタイプの小型ＡＣサーボ・アクチュエータを搭載することとした。なお、この種のＡＣサーボ・アクチュエータに関しては、例えば本出願人に既に譲渡されている特願平１１−３３３８６号明細書に開示されている。
【００６５】
図９には、人間型ロボット１００の制御システム構成を模式的に示している。同図に示すように、人間型ロボット１００は、ヒトの四肢を表現した各機構ユニット３０，４０，５０Ｒ／Ｌ，６０Ｒ／Ｌと、各機構ユニット間の協調動作を実現するための適応制御を行う制御ユニット８０とで構成される（但し、Ｒ及びＬの各々は、右及び左の各々を示す接尾辞である。以下同様）。
【００６６】
人間型ロボット１００全体の動作は、制御ユニット８０によって統括的に制御される。制御ユニット８０は、ＣＰＵ（Ｃｅｎｔｒａｌ  ＰｒｏｃｅｓｓｉｎｇＵｎｉｔ）チップやメモリ・チップ等の主要回路コンポーネント（図示しない）で構成される主制御部８１と、電源装置やロボット１００の各構成要素とのデータやコマンドの授受を行うインターフェース（いずれも図示しない）などを含んだ周辺回路８２とで構成される。
【００６７】
本実施例では、電源装置は、ロボット１００を自立的に駆動するためのバッテリを含んだ構成（図９には図示しない）となっている。自立駆動型であれば、人間型ロボット１００の物理的な行動半径は、電源ケーブルによる制限を受けず、自由に歩行することができる。また、歩行やその他の上肢を含めた各種の運動時に、電源ケーブルとの干渉を考慮する必要がなくなり、広範囲野移動作業を含む動作の制御が容易になる。
【００６８】
図８に示したロボット１００内の各関節自由度は、それぞれに対応するアクチュエータによって実現される。すなわち、頭部ユニット３０には、首関節ヨー軸２、首関節ピッチ軸３、首関節ロール軸４の各々を表現する首関節ヨー軸アクチュエータＡ2、首関節ピッチ軸アクチュエータＡ3、首関節ロール軸アクチュエータＡ4がそれぞれ配設されている。
【００６９】
また、体幹部ユニット４０には、体幹ピッチ軸５、体幹ロール軸６、体幹ヨー軸７の各々を表現する体幹ピッチ軸アクチュエータＡ5、体幹ロール軸アクチュエータＡ6、体幹ヨー軸アクチュエータＡ7がそれぞれ配備されている。
【００７０】
また、腕部ユニット５０Ｒ／Ｌは、上腕ユニット５１Ｒ／Ｌと、肘関節ユニット５２Ｒ／Ｌと、前腕ユニット５３Ｒ／Ｌに細分化されるが、肩関節ピッチ軸８、肩関節ロール軸９、上腕ヨー軸１０、肘関節ピッチ軸１１、肘関節ロール軸１２、手首関節ピッチ軸１３、手首関節ロール軸１４の各々を表現する肩関節ピッチ軸アクチュエータＡ8、肩関節ロール軸アクチュエータＡ9、上腕ヨー軸アクチュエータＡ10、肘関節ピッチ軸アクチュエータＡ11、肘関節ロール軸アクチュエータＡ12、手首関節ピッチ軸アクチュエータＡ13、手首関節ロール軸アクチュエータＡ14がそれぞれ配備されている。
【００７１】
また、脚部ユニット６０Ｒ／Ｌは、大腿部ユニット６１Ｒ／Ｌと、膝ユニット６２Ｒ／Ｌと、脛部ユニット６３Ｒ／Ｌに細分化されるが、股関節ヨー軸１６、股関節ピッチ軸１７、股関節ロール軸１８、膝関節ピッチ軸１９、足首関節ピッチ軸２０、足首関節ロール軸２１の各々を表現する股関節ヨー軸アクチュエータＡ16、股関節ピッチ軸アクチュエータＡ17、股関節ロール軸アクチュエータＡ18、膝関節ピッチ軸アクチュエータＡ19、足首関節ピッチ軸アクチュエータＡ20、足首関節ロール軸アクチュエータＡ21がそれぞれ配備されている。
【００７２】
各アクチュエータＡ2，Ａ3…は、より好ましくは、ギア直結型で且つサーボ制御系をワンチップ化してモータ・ユニット内に搭載したタイプの小型ＡＣサーボ・アクチュエータ（前述）である。
【００７３】
頭部ユニット３０、体幹部ユニット４０、腕部ユニット５０、各脚部ユニット６０などの各機構ユニット毎に、アクチュエータ駆動制御用の副制御部３５，４５，５５，６５がそれぞれ配備されている。さらに、各脚部６０Ｒ，Ｌの足底が着床したか否かを検出する接地確認センサ９１及び９２、及び移動速度を検出する移動速度センサ９４及び９５を装着するとともに、体幹部ユニット４０内には、姿勢を計測する姿勢センサ９３を装備している。
【００７４】
本実施例では、姿勢センサ９３として加速度センサを用いるものとする。また、接地確認センサ９１，９２の各々は、図５を参照しながら説明したように、マイクロ・スイッチ２１１Ａ及びドグ２１１Ｂの組み合わせで構成される。また、移動速度センサ９４，９５の各々は、スケーティング・ユニット２００のローラ端面に付設されたエンコーダ２１３（回転検出計）によって構成される。接地確認センサ９１，９２の出力により、足底２２の着床及び離床期間、ひいては脚部ユニットが滑走脚又は遊脚のいずれであるかを判別することができる。また、滑走脚となっている脚部ユニットのエンコーダ出力を採用することで、ロボット１００の滑走速度を算出することができる。また、姿勢センサの出力により、体幹部分の傾きや姿勢を検出することができる。
【００７５】
主制御部８０は、各センサ９１〜９３の出力に応答して制御目標をダイナミックに補正することができる。より具体的には、副制御部３５，４５，５５，６５の各々に対して適応的な制御を行い、人間型ロボット１００の上肢、体幹、及び下肢の協調した動作を実現することができる。主制御部８１は、ユーザ・コマンド等に従って、足部運動、ＺＭＰ（Ｚｅｒｏ  Ｍｏｍｅｎｔ  Ｐｏｉｎｔ）軌道、体幹運動、上肢運動、腰部高さなどを設定するとともに、これらの設定内容に従った動作を指示するコマンドを各副制御部３５，４５，５５，６５に転送する。
【００７６】
そして、各々の副制御部３５，４５…では、主制御部８１からの受信コマンドを解釈して、各関節アクチュエータＡ2，Ａ3…に対して駆動制御信号を出力する。ここで言う「ＺＭＰ」とは、歩行中の床反力によるモーメントがゼロとなる床面上の点のことであり、また、「ＺＭＰ軌道」とは、例えばロボット１００の歩行動作期間中などにＺＭＰが動く軌跡を意味する。
【００７７】
次いで、ロボット１００に対してローラー・スケート靴を「履かせる」ことにより、歩行よりも高速な移動を実現するための制御手順について説明する。
【００７８】
本実施例では、物理的には図８に示す多関節自由度構成を具備する人間型ロボット１００を、さらに多質点近似モデルに置き換えて全身運動パターンの算出の演算処理を行うようになっている。現実の人間型ロボット１００は、無限のすなわち連続的な質点の集合体であるが、有限数で離散的な質点からなる近似モデルに置き換えることによって、その計算量を削減することが主な目的である。
【００７９】
図１０には、本実施例に係る全身運動パターンの計算のために導入される、人間型ロボット１００の線形且つ非干渉の多質点近似モデルを図解している。
【００８０】
図１０において、Ｏ−ＸＹＺ座標系は絶対座標系におけるロール、ピッチ、ヨー各軸を表し、また、Ｏ’−Ｘ’Ｙ’Ｚ’座標系はロボット１００とともに動く運動座標系におけるロール、ピッチ、ヨー各軸を表している。同図に示す多質点モデルでは、ｉはｉ番目に与えられた質点を表す添え字であり、ｍiはｉ番目の質点の質量、ｒ’iはｉ番目の質点の位置ベクトル（但し運動座標系）を表すものとする。また、後述する腰部運動制御において特に重要な腰部質点の質量はｍh、その位置ベクトルはｒ’h（ｒ’hx，ｒ’hy，ｒ’hz）とし、また、ＺＭＰの位置ベクトルをｒ’zmpとする。
【００８１】
図１０に示す非厳密の多質点近似モデルにおいては、モーメント式は線形方程式の形式で記述され、該モーメント式はピッチ軸及びロール軸に関して干渉しない、という点を充分理解されたい。
【００８２】
このような多質点近似モデルは、概ね以下の処理手順により生成することができる。
【００８３】
（１）ロボット１００全体の質量分布を求める。
（２）質点を設定する。質点の設定方法は、設計者のマニュアル入力であっても、所定の規則に従った自動生成のいずれでも構わない。
（３）各領域ｉ毎に、重心を求め、その重心位置と質量ｍiを該当する質点に付与する。
（４）各質点ｍiを、質点位置ｒiを中心とし、その質量に比例した半径に持つ球体として表示する。
（５）現実に連結関係のある質点すなわち球体同士を連結する。
【００８４】
多質点近似モデルは、言わば、ワイヤフレーム・モデルの形態でロボット１００を表現したものである。本実施例では、図１０を見ても判るように、この多質点近似モデルは、両肩、両肘、両手首、体幹、腰部、及び、両足首の各々を質点として設定したものである。
【００８５】
なお、図１０に示す多質点モデルの腰部情報における各回転角（θhx，θhy，θhz）は、人間型ロボット１００における腰部の姿勢すなわちロール、ピッチ、ヨー軸の回転を規定するものである（図１１には、ロボット１００の多質点近似モデルにおける腰部周辺の拡大図を示しているので、確認されたい）。
【００８６】
次いで、本実施例に係る人間型ロボット１００が滑走動作を行うための全身運動パターンの算出処理手順について説明する。
【００８７】
ロボットは、通常、動作する前に予め生成された運動パターンに従って各関節すなわちアクチュエータを駆動制御することによって、所定の動作を実現するようになっている。本実施例に係るロボット１００の場合、任意の足部運動パターン、ＺＭＰ軌道、体幹運動パターン、上肢運動パターン等に基づいて、安定したスケーティング運動を可能とする腰部運動パターンを生成するようになっている。ここで言うＺＭＰ（Ｚｅｒｏ  Ｍｏｍｅｎｔ  Ｐｏｉｎｔ）軌道とは、脚式移動ロボットにおいて、足底（若しくは足裏）をある一点で床面に固定したとき、歩行やローラ・スケーティングその他の全身運動パターンを実行する期間中において、モーメントが発生しないような点のことを言う（前述）。
【００８８】
本実施例のように１つの可動脚が６自由度を持つ脚式移動ロボット（図８を参照のこと）の場合、各足部２２Ｒ／Ｌの位置と腰部の水平位置及び高さによって両脚の姿勢が一意に定まる。したがって、スケーティング動作のための腰部運動パターンを生成するということは、脚の姿勢すなわち下肢の「歩容」を決定することに他ならない。（「歩容」（ｇａｉｔ）とは、多脚ロボットの動作パターンのうち、特に歩行時における下肢の動作パターン（例えば、足の浮かせ方の順序やそのタイミングなどについてのパターン）のことを意味する技術用語である。多脚ロボットの歩容は、脚の位相差およびデューティ比を用いて表される（日本ロボット学会のロボット学術用語集による）。）
【００８９】
図１２には、本実施例に係るロボット１００が安定したスケーティング動作を実現するための腰部運動の制御処理手順をフローチャートの形式で示している。但し、以下では、図１０に示すような線形・非干渉多質点近似モデルを用いてロボット１００の各関節位置や動作を記述するものとし、且つ、計算に際し以下の［数１］に示すようなパラメータを用いることとする。また、ダッシュ（´）付きの記号は運動座標系のパラメータ等を記述するものと理解されたい。
【００９０】
【数１】
0004475708.tif 000002
【００９１】
また、ロボット１００の腰部高さが一定（ｒ’hz＋ｒqz＝ｃｏｎｓｔ）で、且つ、膝部質点がゼロであることを前提とする。
【００９２】
図１２に示した処理手順は、ロボット１００の歩行や身振り・手振りなどの動作を指示する旨のユーザ・コマンド等の入力に応答して開始する。本実施例では、ユーザ・コマンドが指示するロボット１００の動作は、スケーティング動作を意味する。但し、ユーザの指示は、その他の動作、例えば、直立不動時の上肢と体幹を用いた身振り・手振り、２足による普通歩行時、２足歩行時における上肢と体幹を用いた身振り・手振りなどを含んでいてもよい。
【００９３】
かかるユーザ・コマンドは、主制御部８１において解釈され、足部（より具体的には足底）運動、足部運動から導出されるＺＭＰ軌道、体幹運動、上肢運動、腰部の姿勢や高さなど、各部の駆動・動作を実際に決定するためのパターンが設定される（ステップＳ１１）。より具体的には、まず足部運動パターン、次いでＺＭＰ軌道、体幹運動パターン、そして上肢運動パターンを設定する。また、腰部の運動に関しては、Ｚ’方向のみ設定し、Ｘ’及びＹ’の各方向については未知とする。
【００９４】
次に、線形・非干渉多質点近似モデルを用いて、足部、体幹、そして上肢運動により発生する設定ＺＭＰ上でのピッチ軸、ロール軸まわりの各モーメント（Ｍx，Ｍy）を算出する（ステップＳ１２）。
【００９５】
次いで、線形・非干渉多質点近似モデルを用いて、腰部水平面内運動（ｒ’hx，ｒ’hy）によって発生する設定ＺＭＰ上でのモーメントを算出する（ステップＳ１３）。
【００９６】
次いで、設定ＺＭＰ上におけるモーメントに関する釣り合い式を、ロボットとともに動く運動座標系Ｏ’−Ｘ’Ｙ’Ｚ’上で導出する（ステップＳ１４）。より具体的には、足部、体幹、そして上肢運動により発生するモーメント（Ｍx，Ｍy）を既知変数の項として右辺に、腰部質点の水平運動に関する項（ｒhx，ｒhy）を未知変数の項として左辺にまとめ、下式に示すような線形・非干渉なＺＭＰ方程式（１）を導出する。
【００９７】
【数２】
0004475708.tif 000003
【００９８】
但し、以下が成立するものとする。
【００９９】
【数３】
0004475708.tif 000004
【０１００】
次いで、上記のＺＭＰ方程式（１）を解いて、腰部水平面内軌道を算出する（ステップＳ１５）。例えば、オイラー法やルンゲ・クッタ法などの数値的解法（周知）を用いてＺＭＰ方程式（１）を解くことで、未知変数としての腰部の水平絶対位置（ｒhx，ｒhy）の数値解を求めることができる（ステップＳ１６）。ここで求められる数値解は、安定歩行可能な腰部運動パターンの近似解であり、より具体的にはＺＭＰが目標位置に入るような腰部水平絶対位置である。ＺＭＰ目標位置は、通常、着床した足底に設定される。
【０１０１】
算出された近似解上では予め設定した体幹・上肢運動が実現できない場合には、体幹・上肢運動パターンの再設定・修正を行う（ステップＳ１７）。この際、膝部の軌道を算出してもよい。
【０１０２】
次いで、上述のようにして得られた全身運動パターンを代入して、厳密モデル（すなわち、剛体、若しくは非常に多くの質点からなるロボット１００の精密なモデル）における設定ＺＭＰ上のモーメント（ｅＭx，ｅＭy）を算出する（ステップＳ１８）。非厳密モデルでは上記の［数３］が成立することを前提としたが、厳密ではかかる前提を要しない（すなわち時間の変化に対して一定である必要はない）。
【０１０３】
厳密モデルにおけるモーメント（ｅＭx，ｅＭy）は、腰部運動の発生するモーメント誤差である。続くステップＳ１９では、このモーメント（ｅＭx，ｅＭy）が非厳密モデルにおける近似モーメントの許容値（εＭx，εＭy）未満か否かを判定する。許容値ε未満であれば、腰部安定運動パターンの厳密解及び安定したスケーティング動作を実現できる全身運動パターンを得ることができたので（ステップＳ２０）、本ルーチン全体を終了する。
【０１０４】
他方、厳密モデルにおけるモーメント（ｅＭx，ｅＭy）が近似モデルにおけるモーメントの許容値（εＭx，εＭy）以上であった場合には、厳密モデルにおけるモーメント（ｅＭx，ｅＭy）を用いて近似モデルにおける既知発生モーメント（Ｍx，Ｍy）を修正して（ステップＳ２１）、再びＺＭＰ方程式の導出を行い、許容値ε未満に収束するまで、腰部運動パターンの近似解の算出と修正を繰り返し実行する。
【０１０５】
図１２に示す処理手順によれば、可動脚を交互に用いて滑走するローラ・スケーティング動作を行うために、足部運動の他に、体幹運動や上肢運動の設定に基づいて姿勢を安定させる腰部運動を実現することができる。体幹運動や上肢運動とは、身振りや手振りなどのロボットの上半身を用いた表現動作に相当する。また、各可動脚が６自由度からなる脚式移動ロボット１００（図８を参照のこと）の場合、各足部２２Ｒ／Ｌの位置と腰部の水平位置と高さで、脚の姿勢すなわち下肢の「歩容」が一意に定まるので、腰部運動パターンを生成することは下肢の「歩容」を決定することを意味する。
【０１０６】
また、図１３には、本実施例に係るロボット１００において安定したスケーティング動作を行うための、腰部運動の制御処理手順に関する他の例をフローチャートの形式で示している。但し、該処理手順では、上述と同様に、線形・非干渉多質点近似モデルを用いてロボット１００の各関節位置や動作を記述するものとする。
【０１０７】
該処理手順は、ロボット１００の歩行や身振り・手振りなどの動作を指示する旨のユーザ・コマンド等の入力に応答して開始する。本実施例では、ユーザ・コマンドが指示するロボット１００の動作は、スケーティング動作を意味する。但し、ユーザの指示は、その他の動作、例えば、直立不動時の上肢と体幹を用いた身振り・手振り、２足による普通歩行時、２足歩行時における上肢と体幹を用いた身振り・手振りなどを含んでいてもよい。
【０１０８】
かかるユーザ・コマンドは、主制御部８１において解釈され、足部（より具体的には足底）運動、足部運動から導出されるＺＭＰ軌道、体幹運動、上肢運動、腰部の姿勢や高さなど、各部の駆動・動作を実際に決定するためのパターンが設定される（ステップＳ３１）。より具体的には、まず足部運動パターン、次いでＺＭＰ軌道、体幹運動パターン、そして上肢運動パターンを設定する。また、腰部の運動に関しては、Ｚ’方向のみ設定し、Ｘ’及びＹ’の各方向については未知とする。
【０１０９】
次に、線形・非干渉多質点近似モデルを用いて、足部、体幹、そして上肢運動により発生する設定ＺＭＰ上でのピッチ軸、ロール軸まわりの各モーメント（Ｍx，Ｍy）を算出する（ステップＳ３２）。
【０１１０】
次いで、腰部水平面内運動（ｒ’hx，ｒ’hy）をフーリエ級数展開する（ステップＳ３３）。当業界において既に周知のように、フーリエ級数展開することにより、時間軸成分を周波数成分に置き換えて演算することができる。すなわち、この場合には腰部の動きを周期的な動きとして捉えることができる。また、ＦＦＴ（拘束フーリエ変換）を適用することができるので、計算速度を大幅に向上させることができる。
【０１１１】
次いで、設定ＺＭＰ上でのピッチ軸、ロール軸まわりの各モーメント（Ｍx，Ｍy）についてもフーリエ級数展開する（ステップＳ３４）。
【０１１２】
次いで、腰部水平面内軌道のフーリエ係数を算出し、さらに逆フーリエ級数展開することで（ステップＳ３５）、腰部運動の近似解が求まる（ステップＳ３６）。ここで求められる近似解は、安定歩行可能な腰部運動パターンを規定する腰部の水平絶対位置の近似解（ｒhx，ｒhy）であり、より具体的にはＺＭＰが目標位置に入るような腰部水平絶対位置である。ＺＭＰ目標位置は、通常、着床した足底に設定される。
【０１１３】
算出された近似解上では予め設定した体幹・上肢運動が実現できない場合には、体幹・上肢運動パターンの再設定・修正を行う（ステップＳ３７）。この際、膝部の軌道を算出してもよい。
【０１１４】
次いで、上述のようにして得られた全身運動パターンを代入して、厳密モデル（すなわち、剛体、若しくは非常に多くの質点からなるロボット１００の精密なモデル）における設定ＺＭＰ上のモーメント（ｅＭx，ｅＭy）を算出する（ステップＳ３８）。非厳密モデルでは上記の［数３］が成立することを前提としたが、厳密ではかかる前提を要しない（すなわち時間の変化に対して一定である必要はない）。
【０１１５】
厳密モデルにおけるモーメント（ｅＭx，ｅＭy）は、腰部運動の発生するモーメント誤差である。続くステップＳ３９では、このモーメント（ｅＭx，ｅＭy）が近似モデルにおけるモーメントの許容値（εＭx，εＭy）未満か否かを判定する。許容値ε未満であれば、腰部安定運動パタンーの厳密解及び安定スケーティング動作を実現できる全身運動パターンを得ることができたので（ステップＳ４０）、本ルーチン全体を終了する。
【０１１６】
他方、厳密モデルにおけるモーメント（ｅＭx，ｅＭy）が近似モデルにおけるモーメントの許容値（εＭx，εＭy）以上であった場合には、厳密モデルにおけるモーメント（ｅＭx，ｅＭy）を用いて非厳密モデルにおける既知発生モーメント（Ｍx，Ｍy）を修正して（ステップＳ４１）、再びフーリエ級数展開して、許容値ε未満に収束するまで、腰部運動パターンの近似解の算出と修正を繰り返し実行する。
【０１１７】
当業者であれば、図１３に示す処理手順によっても、図１２で示した処理手順と同様、体幹運動や上肢運動の設定に基づいて安定したスケーティング動作が可能な腰部運動を実現することができる、ということを理解できるであろう。特に、ＺＭＰ方程式の数値的解法に頼らず、フーリエ級数展開を用いることで、周期運動を高速に求めると同時に、ＦＦＴ（高速フーリエ変換）を適用することでモーメント計算そのものを高速化することができる。
【０１１８】
体幹運動や上肢運動とは、身振りや手振りなどのロボットの上半身を用いた表現動作に相当する。また、各可動脚が６個の関節自由度の脚式移動ロボット１００（図８を参照のこと）の場合、各足部２２Ｒ／Ｌの位置と腰部の高さで脚の姿勢が一意に定まるので、腰部運動パターンを生成することは、脚の姿勢すなわち下肢の「歩容」を決定することを意味する（前述）。
【０１１９】
図１４〜図１６には、ローラ・スケーティング・ユニット２００を各可動脚に装着した脚式移動ロボット１００が、スケーティング動作により直進あるいは左右方向に旋回する運動を行うときの各足底の動きを図解している。
【０１２０】
図１４に示すように、まず右脚の股関節ヨー軸アクチュエータを駆動させるなどして、右足底を、ロボット１００の進行方向すなわちピッチ軸とは一致しない向きにする。図示の例では、右足底をｘ軸すなわちロール軸に略平行になるように移動させている。但し、右脚部ではなく左脚部の方を駆動させてもよい（以下、同様に左右の脚の可動を交換してもよいと解釈されたい）。
【０１２１】
さらに、右足底を接地させて後方にける動作を行うことによって、左足部に対して移動の初速度Ｖ0を印加する。このとき、旋回角度θを所望の値に設定することによって、直進、右旋回、及び左旋回のいずれかを選択することができる。
【０１２２】
上記した一連の動作中には、ＺＭＰを安定度判定規範とするＺＭＰ軌跡制御（図１２又は図１３を参照のこと）を行うことによって、スケーティング開始時のロボット１００の姿勢を安定化させ転倒を防止することができる。
【０１２３】
直進、右旋回、若しくは左旋回いずれかの方向で滑走を開始し、加速され、移動速度Ｖtが安定すると、図１５に示すように、左右の足底をｘ軸すなわちロール軸方向に揃える。この結果、ロボット１００は、移動方向を維持しつつ移動速度を減衰しながら滑走する。滑走動作中も、ＺＭＰ軌跡制御（図１２又は図１３を参照のこと）を行うことによって、ロボット１００の姿勢を安定化させ転倒を防止することができる。
【０１２４】
移動速度Ｖtが所定の移動速度まで減衰すると、図１６に示すように、左脚の股関節ヨー軸アクチュエータを駆動させるなどして、左足底を、ロボット１００の進行方向すなわちピッチ軸とは一致しない向きにする。図示の例では、左足底をｘ軸すなわちロール軸に略平行になるように移動させている。
【０１２５】
さらに、左足底を接地させて後方にける動作を行うことによって、左足部に対して移動の初速度Ｖ0を印加する。このとき、旋回角度θを所望の値に設定することによって、直進、右旋回、及び左旋回のいずれかを選択することができる。
【０１２６】
上記した一連の動作中には、ＺＭＰを安定度判定規範とするＺＭＰ軌跡制御（図１２又は図１３を参照のこと）を行うことによって、スケーティング開始時のロボット１００の姿勢を安定化させ転倒を防止することができる。
【０１２７】
図１４〜図１６に示すような、加速、速度の減衰、加速という動作パターンを順次繰り返すことによって、ロボット１００は安定した滑走動作を継続することができる。また、加速の際に旋回角度θを設定することによって、直進、右旋回、及び左旋回を適宜実行して、滑走中に任意の軌跡を描くこともできる。
【０１２８】
また、図１７〜図１９には、ローラ・スケーティング・ユニット２００を各可動脚に装着した脚式移動ロボット１００が、スケーティング動作中に減速及び／又は停止する運動を行うときの各足底の動きを図解している。
【０１２９】
スケーティングにより滑走中のロボット１００を減速しあるいは停止させたいときには、右足底と左足底が平行して前進している状態（図１５を参照のこと）から、図１７に示すように、右足部若しくは左足部を遊脚させ、その遊脚した足部を滑走路面に接地させて、その際に発生する摩擦力を調整することによって、ロボット１００の移動速度Ｖtを制動することができる。
【０１３０】
このような一連の制動動作中において、ＺＭＰ軌跡制御（図１２又は図１３を参照のこと）を行うことによって、ロボット１００の姿勢を安定化させ転倒を防止することができる。
【０１３１】
あるいは、右足底と左足底が平行して前進している状態（図１５を参照のこと）から、図１８に示すように、右足底と左足底の双方を、前端が内側に且つ後端が外側に向くようにすることで、進行方向に摩擦力を印可して、移動速度Ｖtを減衰せしめる。このとき、進行方向に対する各足底の傾きθを調整することにより、制動を調整することができる。
【０１３２】
このような一連の制動動作中において、ＺＭＰ軌跡制御（図１２又は図１３を参照のこと）を行うことによって、ロボット１００の姿勢を安定化させ転倒を防止することができる。
【０１３３】
あるいは、回転ローラ部にブレーキ機能を備えて、該ブレーキを制御することによって、ロボット１００の移動速度Ｖtを減衰させ停止させるようにしてもよい（図１９を参照のこと）。この場合も、ＺＭＰ軌跡制御（図１２又は図１３を参照のこと）を行うことによって、制動時のロボット１００の姿勢を安定化させ転倒を防止することができる。
【０１３４】
［追補］
以上、特定の実施例を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が該実施例の修正や代用を成し得ることは自明である。
【０１３５】
本明細書中では、ロボットの体幹ピッチ軸５と、体幹ロール軸６と、体幹ヨー軸７という３自由度をロボットの腰部の姿勢（θhx，θhy，θhz）として扱ったが、腰部の位置は人間型ロボット１００と現実のヒトやサルなどの２足直立歩行動物の身体メカニズムとの対比により柔軟に解釈されたい。
【０１３６】
要するに、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本発明の要旨を判断するためには、冒頭に記載した特許請求の範囲の欄を参酌すべきである。
【０１３７】
参考のため、人間型ロボットの関節モデル構成を図２０に図解しておく。同図に示す例では、肩関節５から上腕、肘関節６、前腕、手首７及び手部８からなる部分を「上肢」と呼ぶ。また、肩関節５から股関節１１までの範囲を「体幹部」と呼び、ヒトの胴体に相当する。また、体幹部のうち特に股関節１１から体幹関節１０までの範囲を「腰部」と呼ぶ。体幹関節１０は、ヒトの背骨が持つ自由度を表現する作用を有する。また、股関節１１より下の大腿部１２、膝関節１４、下腿部１３、足首１５及び足部１６からなる部分を「下肢」と呼ぶ。一般には、股関節より上方を「上体」と呼び、それより下方を「下体」と呼ぶ
【０１３８】
また、図２１には、人間型ロボットの他の関節モデル構成を図解している。同図に示す例は、体幹関節１０を有しない点で図２０に示した例とは相違する。各部の名称については図を参照されたい。背骨に相当する体幹関節が省略される結果として人間型ロボットの上体の動きは表現力を失う。但し、危険作業や難作業の代行など、産業目的の人間型ロボットの場合、上体の動きを要しない場合がある。なお、図２０及び図２１で用いた参照番号は、それ以外の図面とは一致しない点を理解されたい。
【０１３９】
【発明の効果】
以上詳記したように、本発明によれば、それぞれの可動脚が着床及び離床動作を協調的に繰り返し実行することにより柔軟な動作パターンを実現することができる、優れた脚式移動型ロボットのメカニズム及びその制御方法を提供することができる。
【０１４０】
また、本発明によれば、ローラー・スケート靴を履くことにより、通常の歩行よりもダイナミックで高速な移動作業を実現することができる、優れた脚式移動型ロボットのメカニズム及びその制御方法を提供することができる。
【０１４１】
本発明に係る脚式移動ロボットによれば、各々の可動脚の略最下端に滑走ユニットを装着することで、通常の関節自由度のみを以って容易に実現し得る動作パターンのみを用いて滑走動作を行い、この結果、ダイナミックで高速な移動動作を行うことができる。滑走ユニットは、例えば可動脚に対して着脱自在に取り付けられている。したがって、滑走ユニットを取り外すだけで、脚式移動ロボットは、歩行や走行などの通常の脚式移動動作パターンを実行することができる。
【０１４２】
滑走ユニットは、滑走方向に沿った進行方向にはほとんど摩擦力などの負荷がかからない。このため、各可動脚の滑走ユニットを進行方向に揃えることで、滑走中の移動速度を持続することができる。他方、滑走方向に一致しない（例えば滑走方向と直交する）進行方向では、摩擦力が印加される。このため、滑走開始時や移動速度が減速したときには、１つの可動脚において、滑走ユニットの滑走方向を脚式移動ロボットの進行方向に交叉するように設定するとともに、該可動脚を後方に蹴り出すことによって加速動作を実現することができる。また、滑走期間中においては、滑走ユニットの滑走方向を脚式移動ロボットの進行方向にに交叉させて該可動脚を着床することによって、路面との間で摩擦力を発生させて、制動作用を導出することができる。
【０１４３】
また、脚式移動ロボットが一連の滑走動作を行っている期間中、制御手段は、ＺＭＰ軌跡制御により姿勢安定制御を行うことで、滑走中のロボットの転倒を防止することができる。
【図面の簡単な説明】
【図１】本発明の実施に供される人間型ロボット１００を前方から眺望した様子を示た図である。
【図２】本発明の実施に供される人間型ロボット１００を後方から眺望した様子を示た図である。
【図３】人間型ロボット１００の足平にローラー・スケーティング・ユニットを装着する様子を示した図である。
【図４】人間型ロボット１００の足平にローラー・スケーティング・ユニットを装着する様子を示した図である。
【図５】ローラ・スケーティング・ユニット２００に取り付けられた検出機構について図解している。
【図６】両足にローラ・スケーティング・ユニット２００を取り付けた人間型ロボット１００が路面を滑走する動作を前方から眺望した図である。
【図７】両足にローラ・スケーティング・ユニット２００を取り付けた人間型ロボット１００が路面を滑走する動作を後方から眺望した図である。
【図８】本実施例に係る人間型ロボット１００が具備する自由度構成モデルを模式的に示した図である。
【図９】本実施例に係る人間型ロボット１００の制御システム構成を模式的に示した図である。
【図１０】本実施例に係る歩行制御の計算のために導入される、人間型ロボット１００の線形且つ非干渉の多質点近似モデルを示した図である。
【図１１】図１０に示したロボット１００の多質点近似モデルにおける腰部周辺の拡大図である。
【図１２】本実施例に係る人間型ロボット１００が安定したスケーティング動作を行うことができる腰部運動の制御処理手順の一例を示したフローチャートである。
【図１３】本実施例に係る人間型ロボット１００が安定したスケーティング動作を行うことができる腰部運動の制御処理手順の他の例を示したフローチャートである。
【図１４】ローラ・スケーティング・ユニット２００を各可動脚に装着した脚式移動ロボット１００がスケーティング動作を行うときの各足底の動きを示した図であり、より具体的には、ロボット１００を直進あるいは左右方向に旋回させるときの足底の動きを示した図である。
【図１５】ローラ・スケーティング・ユニット２００を各可動脚に装着した脚式移動ロボット１００がスケーティング動作を行うときの各足底の動きを示した図であり、より具体的には、ロボット１００を直進あるいは左右方向に旋回させるときの足底の動きを示した図である。
【図１６】ローラ・スケーティング・ユニット２００を各可動脚に装着した脚式移動ロボット１００がスケーティング動作を行うときの各足底の動きを示した図であり、より具体的には、ロボット１００を直進あるいは左右方向に旋回させるときの足底の動きを示した図である。
【図１７】ローラ・スケーティング・ユニット２００を各可動脚に装着した脚式移動ロボット１００がスケーティング動作を行うときの各足底の動きを示した図であり、より具体的には、ロボット１００を減速及び／又は停止させるときの足底の動きを示した図である。
【図１８】ローラ・スケーティング・ユニット２００を各可動脚に装着した脚式移動ロボット１００がスケーティング動作を行うときの各足底の動きを示した図であり、より具体的には、ロボット１００を減速及び／又は停止させるときの足底の動きを示した図である。
【図１９】ローラ・スケーティング・ユニット２００を各可動脚に装着した脚式移動ロボット１００がスケーティング動作を行うときの各足底の動きを示した図であり、より具体的には、ロボット１００を減速及び／又は停止させるときの足底の動きを示した図である。
【図２０】人間型ロボットの関節モデル構成を模式的に示した図である。
【図２１】人間型ロボットの関節モデル構成を模式的に示した図である。
【符号の説明】
１…頭部，２…首関節ヨー軸
３…首関節ピッチ軸，４…首関節ロール軸
５…体幹ピッチ軸，６…体幹ロール軸
７…体幹ヨー軸，８…肩関節ピッチ軸
９…肩関節ロール軸，１０…上腕ヨー軸
１１…肘関節ピッチ軸，１２…前腕ヨー軸
１３…手首関節ピッチ軸，１４…手首関節ロール軸
１５…手部，１６…股関節ヨー軸
１７…股関節ピッチ軸，１８…股関節ロール軸
１９…膝関節ピッチ軸，２０…足首関節ピッチ軸
２１…足首関節ロール軸，２２…足部（足底）
３０…頭部ユニット，４０…体幹部ユニット
５０…腕部ユニット，５１…上腕ユニット
５２…肘関節ユニット，５３…前腕ユニット
６０…脚部ユニット，６１…大腿部ユニット
６２…膝関節ユニット，６３…脛部ユニット
８０…制御ユニット，８１…主制御部
８２…周辺回路
９１，９２…接地確認センサ
９３…姿勢センサ
１００…人間型ロボット
２００…ローラ・スケーティング・ユニット
２０１…スライダ
２０２…ガイド・レール
２０３…ストッパ
２１１Ａ…ドグ
２１１Ｂ…マイクロ・スイッチ
２１３…エンコーダ（回転検出計）
【図１】
0004475708.tif 000005
【図２】
0004475708.tif 000006
【図３】
0004475708.tif 000007
【図４】
0004475708.tif 000008
【図５】
0004475708.tif 000009
【図６】
0004475708.tif 000010
【図７】
0004475708.tif 000011
【図８】
0004475708.tif 000012
【図９】
0004475708.tif 000013
【図１０】
0004475708.tif 000014
【図１１】
0004475708.tif 000015
【図１２】
0004475708.tif 000016
【図１３】
0004475708.tif 000017
【図１４】
0004475708.tif 000018
【図１５】
0004475708.tif 000019
【図１６】
0004475708.tif 000020
【図１７】
0004475708.tif 000021
【図１８】
0004475708.tif 000022
【図１９】
0004475708.tif 000023
【図２０】
0004475708.tif 000024
【図２１】
0004475708.tif 000025