Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
GAIT GENERATING DEVICE, WALKING BODY DEVICE HAVING SAME, AND GAIT GENERATING METHOD
Document Type and Number:
WIPO Patent Application WO/2008/105506
Kind Code:
A1
Abstract:
The z-component z(t) at a given time t is computed by using an auxiliary equation having the term about the z-component z(t) of the center of gravity of a biped walking robot in the equation of motion and a linear expression (a1t+a0) (S120 to S140). The x- and y-components x(t), y(t) of the center of gravity of the biped walking robot at the given time t are computed by using an equation of motion defined by substituting a linear expression for the term about the z-component z(t) of the center of gravity of the former equation of motion (S150, S160). The target angle θk(t) of each joint k of the biped walking robot is computed by using the computed x-, y-, and z-components x(t), y(t), and z(t) of the center of gravity (S170). With this, a gait determined taking the motion of the z-component z(t) of the center of gravity into consideration can be generated, thus generating various gates.

Inventors:
KUNIYOSHI YASUO (JP)
TERADA KOJI (JP)
Application Number:
PCT/JP2008/053556
Publication Date:
September 04, 2008
Filing Date:
February 28, 2008
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
UNIV TOKYO (JP)
KUNIYOSHI YASUO (JP)
TERADA KOJI (JP)
International Classes:
B25J5/00; B25J13/00
Foreign References:
JP2006247769A2006-09-21
Other References:
KAJITA S. ET AL.: "Humanoid Robot", vol. 1ST ED., 25 April 2005, pages: 93 - 96
Attorney, Agent or Firm:
ITEC INTERNATIONAL PATENT FIRM (3-3 Uchisaiwai-cho 1-chom, Chiyoda-ku Tokyo 11, JP)
Download PDF:
Claims:
 二足歩行を行なう歩行体の歩容を生成する歩容生成装置であって、
 任意の時刻における前記歩行体の重心の床面に対して鉛直方向の位置に関する項である重心鉛直方向位置項を時刻についてのn次式(nは値0以上の整数)または該n次式の逆数で置いた前記床面から前記歩行体に作用するモーメントがゼロとなるゼロモーメント位置と任意の時刻における前記歩行体の重心の前記床面に対して水平方向の位置との関係を示す運動方程式と、前記重心鉛直方向位置項と前記n次式または該n次式の逆数とからなる補助方程式と、を用いて任意の時刻における前記歩行体の重心の前記床面に対して水平方向および鉛直方向の目標位置を演算する目標位置演算手段と、
 前記演算された歩行体の重心の目標位置に基づいて前記歩行体の歩容を生成する歩容生成手段と、
 を備える歩容生成装置。
 請求項1記載の歩容生成装置であって、
 前記目標位置演算手段は、任意の時刻における前記ゼロモーメント位置と所定時刻における前記歩行体の重心の位置および該歩行体の重心の位置の変化速度とに基づいて任意の時刻における前記歩行体の重心の目標位置を演算する手段である
 歩容生成装置。
 請求項1記載の歩容生成装置であって、
 前記運動方程式は、tを時刻,px(t),py(t),pz(t)を任意の時刻tにおける前記ゼロモーメント位置のx,y,z成分,Mを前記歩行体の全質量,gを重力加速度,x(t),y(t)を任意の時刻tにおける前記歩行体の重心のx,y成分,Px(t),Py(t),Pz(t)を任意の時刻tにおける前記歩行体の運動量のx,y,z成分,Lx(t),Ly(t)を任意の時刻tにおける前記歩行体の角運動量のx,y成分としたときに式(1),(2)により表わされ、該式(1),(2)において任意の時刻tにおける前記ゼロモーメント位置pz(t)を値0とすると共に任意の時刻tにおける前記角運動量のx,y成分Lx(t),Ly(t)のうち前記歩行体の重心回りの角運動量の変化の影響を前記歩行体の重心のx,y成分x(t),y(t)の影響に比して十分に小さいとして無視し、z(t)を任意の時刻tにおける前記歩行体の重心のz成分としたときに、式(3),(4)により表わされる方程式であり、
 前記重心鉛直方向位置項は、前記式(3),(4)における「z(t)/(z(t)の二階微分+g)」である
 歩容生成装置。
 請求項3記載の歩容生成装置であって、
 前記補助方程式は、式(5)により表わされる方程式であり、
 前記運動方程式は、前記式(3),(4)における前記重心鉛直方向位置項を前記式(5)を用いて置き換えた方程式である
 歩容生成装置。
 ここで、「a 1 」,「a 0 」は、任意の時刻tにおける前記歩行体の重心のz成分z(t)を演算するためのパラメータである。
 請求項4記載の歩容生成装置であって、
 前記目標位置演算手段は、前記補助方程式の解としての式(6)を用いて任意の時刻tにおける前記歩行体の重心のz成分z(t)を演算する手段である
 歩容生成装置。
 ここで、「C z1 」,「C z2 」は、積分定数である。また、「I」,「K」は、それぞれ第1種変形Bessel関数,第2種変形Bessel関数であり、「I 1 」,「K 1 」は、それぞれ式(7),(8)における「ν」に値1を設定したものにより表わされる。前記式(7),(8)における「φ 1 」は、式(9)により表わされる。前記式(7)中、「γ」はGamma関数である。
 請求項5記載の歩容生成装置であって、
 前記目標位置演算手段は、前記運動方程式の任意の時刻tにおける前記ゼロモーメント位置のx,y成分px(t),py(t)がそれぞれ式(10),(11)により表わされるn1次式,n2次式(n1,n2は共に値0以上の整数)で与えられたときに、該運動方程式の解としての式(12),(13)を用いて任意の時刻tにおける前記歩行体の重心のx,y成分x(t),y(t)を演算する手段である
 歩容生成装置。
 ここで、「b1 i 」,「b2 i 」はi次の項の係数であり、「C x1 」,「C x2 」,「C y1 」,「C y2 」は、積分定数である。また、「I 1 」,「K 1 」は、それぞれ前記式(7),(8)における「ν」に値1を設定したものにより表わされる。さらに、「b1」と「B1」との関係,「b2」と「B2」との関係は、式(14),(15)により表わされる。
 請求項6記載の歩容生成装置であって、
 前記目標位置演算手段は、複数の時刻における前記歩行体の重心のz成分z(t)と該歩行体の重心のz成分z(t)の変化速度(z(t)の一階微分)と前記式(6)とに基づいて該式(6)における「C z1 」,「C z2 」,「a 1 」,「a 0 」を演算すると共に該演算した「C z1 」,「C z2 」,「a 1 」,「a 0 」を該式(6)に代入して任意の時刻tにおける前記歩行体の重心のz成分z(t)を設定し、該演算した「a 1 」,「a 0 」と複数の時刻における前記歩行体の重心のx成分x(t)と任意の時刻tにおける前記ゼロモーメント位置のx成分px(t)と前記式(12)とに基づいて該式(12)における「C x1 」,「C x2 」を演算すると共に該演算した「C x1 」,「C x2 」を該式(12)に代入して任意の時刻tにおける前記歩行体の重心のx成分x(t)を演算し、前記演算した「a 1 」,「a 0 」と複数の時刻における前記歩行体の重心のy成分y(t)と任意の時刻tにおける前記ゼロモーメント位置のy成分py(t)と前記式(13)とに基づいて該式(13)における「C y1 」,「C y2 」を演算すると共に該演算した「C y1 」,「C y2 」を該式(13)に代入して任意の時刻tにおける前記歩行体の重心のy成分y(t)を演算する手段である
 歩容生成装置。
 請求項3記載の歩容生成装置であって、
 前記補助方程式は、式(16)により表わされる式であり、
 前記運動方程式は、前記式(3),(4)における前記重心鉛直方向位置項を前記式(16)を用いて置き換えた方程式である
 歩容生成装置。
 ここで、「a 3 」,「a 2 」は、任意の時刻tにおける前記歩行体の重心のz成分z(t)を演算するためのパラメータである。
 請求項8記載の歩容生成装置であって、
 前記目標位置演算手段は、前記補助方程式の解としての式(17)を用いて任意の時刻tにおける前記歩行体の重心のz成分z(t)を演算する手段である
 歩容生成装置。
 ここで、「C z3 」,「C z4 」は、積分定数である。また、「AiryAi」,「AiryBi」は、Airy関数であり、それぞれ式(18),(19)により表わされる。さらに、「Gi」は、Scorer関数であり、式(20)により表わされる。前記式(18)~(20)における「φ 2 」は式(21)により表わされる。前記式(18)中、「K」は第2種変形Bessel関数であり、「K 1/3 」は式(22)における「ν」に1/3を設定したものにより表わされる。前記式(19),(22)中、「I」は第1種変形Bessel関数であり、「I 1/3 」,「I -1/3 」は、それぞれ式(23)における「ν」に1/3,-1/3を設定したものにより表わされる。前記式(20),(23)中、「γ」はGamma関数である。前記式(22),(23)中、「φ 3 」は式(24)により表わされる。
 請求項9記載の歩容生成装置であって、
 前記目標位置演算手段は、前記運動方程式の任意の時刻tにおける前記ゼロモーメント位置のx,y成分px(t),py(t)が式(25),(26)により表わされる1次式で与えられたときに、該運動方程式の解としての式(27),(28)を用いて任意の時刻tにおける前記歩行体の重心のx,y成分x(t),y(t)を演算する手段である
 歩容生成装置。
 ここで、「b3 i 」,「b4 i 」はi次の項の係数であり、「C x3 」,「C x4 」,「C y3 」,「C y4 」は、積分定数である。また、「AiryAi」,「AiryBi」は、前記式(18),(19)により表わされる。
 請求項10記載の歩容生成装置であって、
 前記目標位置演算手段は、複数の時刻における前記歩行体の重心のz成分z(t)と該歩行体の重心のz成分z(t)の変化速度(z(t)の一階微分)と前記式(17)とに基づいて該式(17)における「C z3 」,「C z4 」,「a 3 」,「a 2 」を演算すると共に該演算した「C z3 」,「C z4 」,「a 3 」,「a 2 」を該式(17)に代入して任意の時刻tにおける前記歩行体の重心のz成分z(t)を設定し、該演算した「a 3 」,「a 2 」と複数の時刻における前記歩行体の重心のx成分x(t)と任意の時刻tにおける前記ゼロモーメント位置のx成分px(t)と前記式(27)とに基づいて該式(27)における「C x3 」,「C x4 」を演算すると共に該演算した「C x3 」,「C x4 」を該式(27)に代入して任意の時刻tにおける前記歩行体の重心のx成分x(t)を演算し、前記演算した「a 3 」,「a 2 」と複数の時刻における前記歩行体の重心のy成分y(t)と任意の時刻tにおける前記ゼロモーメント位置のy成分py(t)と前記式(28)とに基づいて該式(28)における「C y3 」,「C y4 」を演算すると共に該演算した「C y3 」,「C y4 」を該式(28)に代入して任意の時刻tにおける前記歩行体の重心のy成分y(t)を演算する手段である
 歩容生成装置。
 前記歩行体と、請求項1記載の歩容生成装置と、を備える歩行体装置。
 二足歩行を行なう歩行体の歩容を生成する歩容生成方法であって、
 tを時刻,px(t),py(t),pz(t)を任意の時刻tにおけるゼロモーメント位置のx,y,z成分,Mを前記歩行体の全質量,gを重力加速度,x(t),y(t)を任意の時刻tにおける前記歩行体の重心のx,y成分,Px(t),Py(t),Pz(t)を任意の時刻tにおける前記歩行体の運動量のx,y,z成分,Lx(t),Ly(t)を任意の時刻tにおける前記歩行体の角運動量のx,y成分としたときに式(29),(30)により表わされ、該式(29),(30)において任意の時刻tにおける前記ゼロモーメント位置pz(t)を値0とすると共に任意の時刻tにおける前記角運動量のx,y成分Lx(t),Ly(t)のうち前記歩行体の重心回りの角運動量の変化の影響を前記歩行体の重心のx,y成分x(t),y(t)の影響に比して十分に小さいとして無視し、z(t)を任意の時刻tにおける前記歩行体の重心のz成分としたときに式(31),(32)により表わされる運動方程式における前記歩行体の重心のz成分z(t)に関する項「z(t)/(z(t)の二階微分+g)」を時刻についてのn次式(nは値0以上の整数)または該n次式の逆数で置いたものと、前記項「z(t)/(z(t)の二階微分+g)」と前記n次式または該n次式の逆数とからなる補助方程式と、を用いて任意の時刻tにおける前記歩行体の重心のx,y,z成分x(t),y(t),z(t)を演算し、
 該演算した歩行体の重心のx,y,z成分x(t),y(t),z(t)を用いて前記歩行体の歩容を生成する、
 歩容生成方法。
Description:
歩容生成装置およびこれを備え 歩行体装置並びに歩容生成方法

 本発明は、歩容生成装置およびこれを備 る歩行体装置並びに歩容生成方法に関し、 しくは、二足歩行を行なう歩行体の歩容を 成する歩容生成装置およびこれを備える歩 体装置並びに歩容生成方法に関する。

 従来、この種の歩容生成装置としては、二 ロボットの重心の鉛直方向の運動が水平方 の運動に及ぼす影響を十分小さいものとみ して、床反力の重心(ZMP,Zero Moment Point)の目 標軌道である目標ZMP軌道を指数関数で設計す ると共に設計した目標ZMP軌道を用いてZMPとロ ボットの重心との関係を示す運動方程式を解 くことにより重心の目標軌道を計画し、計画 した重心の目標軌道と目標ZMP軌道とを用いて 歩容を生成するものが提案されている(例え 、非特許文献1参照)。この装置では、目標ZMP 軌道を指数関数で設計すると共にこれを用い て重心の目標軌道を計画することにより歩容 を高速で計画できるとしている。
杉原、中村,「境界条件緩和による二脚 ボットのオンライン歩容計画法」,第10回ロ ティクスシンポジア,pp.153-158,2005.3.

 しかしながら、上述の歩容生成装置では 二脚ロボットの歩容を生成できる範囲が重 の鉛直方向の運動を誤差として扱える範囲 限定されてしまう。こうした歩容生成装置 は、より多様な歩容を生成すること、即ち 重心の鉛直方向の運動を誤差として扱える 囲だけでなく、大きな重心の鉛直方向の運 を伴う範囲でも歩容を生成できるようにす ことが望まれる。

 本発明の歩容生成装置およびこれを備え 歩行体装置並びに歩容生成方法は、二足歩 を行なう歩行体のより多様な歩容を生成で るようにすることを目的の一つとする。ま 、本発明の歩容生成装置およびこれを備え 歩行体装置並びに歩容生成方法は、二足歩 を行なう歩行体の重心の鉛直方向の運動を う歩容を生成できるようにすることを目的 一つとする。

 本発明の歩容生成装置および歩容生成方 は、上述の目的を達成するために以下の手 を採った。

 本発明の歩容生成装置は、
 二足歩行を行なう歩行体の歩容を生成する 容生成装置であって、
 任意の時刻における前記歩行体の重心の床 に対して鉛直方向の位置に関する項である 心鉛直方向位置項を時刻についてのn次式(n 値0以上の整数)または該n次式の逆数で置い 前記床面から前記歩行体に作用するモーメ トがゼロとなるゼロモーメント位置と任意 時刻における前記歩行体の重心の前記床面 対して水平方向の位置との関係を示す運動 程式と、前記重心鉛直方向位置項と前記n次 式または該n次式の逆数とからなる補助方程 と、を用いて任意の時刻における前記歩行 の重心の前記床面に対して水平方向および 直方向の目標位置を演算する目標位置演算 段と、
 前記演算された歩行体の重心の目標位置に づいて前記歩行体の歩容を生成する歩容生 手段と、
 を備えることを要旨とする。

 本発明の歩容生成装置では、任意の時刻 おける歩行体の重心の床面に対して鉛直方 の位置に関する項である重心鉛直方向位置 を時刻についてのn次式(nは値0以上の整数) たはその逆数で置いた床面から歩行体に作 するモーメントがゼロとなるゼロモーメン 位置と任意の時刻における歩行体の重心の 面に対して水平方向の位置との関係を示す 動方程式と、重心鉛直方向位置項とn次式ま はその逆数とからなる補助方程式と、を用 て任意の時刻における歩行体の重心の床面 対して水平方向および鉛直方向の目標位置 演算し、演算した歩行体の重心の目標位置 基づいて前記歩行体の歩容を生成する。し がって、任意の時刻における歩行体の重心 床面に対して水平方向の目標位置だけでな 鉛直方向の目標位置も演算し、演算した目 位置を用いて歩行体の歩容を生成するから 歩行体の重心の鉛直方向の運動を伴った歩 を生成することができる。この結果、より 様な歩容を生成することができる。

 こうした本発明の歩容生成装置において 前記目標位置演算手段は、任意の時刻にお る前記ゼロモーメント位置と所定時刻にお る前記歩行体の重心の位置および該歩行体 重心の位置の変化速度とに基づいて任意の 刻における前記歩行体の重心の目標位置を 算する手段であるものとすることもできる

 また、本発明の歩容生成装置において、 記運動方程式は、tを時刻,px(t),py(t),pz(t)を任 意の時刻tにおける前記ゼロモーメント位置 x,y,z成分,Mを前記歩行体の全質量,gを重力加 度,x(t),y(t)を任意の時刻tにおける前記歩行体 の重心のx,y成分,Px(t),Py(t),Pz(t)を任意の時刻t おける前記歩行体の運動量のx,y,z成分,Lx(t),Ly (t)を任意の時刻tにおける前記歩行体の角運 量のx,y成分としたときに式(1),(2)により表わ れ、該式(1),(2)において任意の時刻tにおけ 前記ゼロモーメント位置pz(t)を値0とすると に任意の時刻tにおける前記角運動量のx,y成 Lx(t),Ly(t)のうち前記歩行体の重心回りの角 動量の変化の影響を前記歩行体の重心のx,y 分x(t),y(t)の影響に比して十分に小さいとし 無視し、z(t)を任意の時刻tにおける前記歩行 体の重心のz成分としたときに、式(3),(4)によ 表わされる方程式であり、前記重心鉛直方 位置の項は、前記式(3),(4)における「z(t)/(z(t )の二階微分+g)」であるものとすることもで る。

 この運動方程式が式(3),(4)により表わされる 態様の本発明の歩容生成装置において、前記 補助方程式は、式(5)により表わされる方程式 であり、前記運動方程式は、前記式(3),(4)に ける前記重心鉛直方向位置の項を前記式(5) 用いて置き換えた方程式であるものとする ともできる。ここで、式(5)中、「a 1 」,「a 0 」は、任意の時刻tにおける前記歩行体の重 のz成分z(t)を演算するためのパラメータであ る。

 この補助方程式が式(5)により表わされる態 の本発明の歩容生成装置において、前記目 位置演算手段は、前記補助方程式の解とし の式(6)を用いて任意の時刻tにおける前記歩 行体の重心のz成分z(t)を演算する手段である のとすることもできる。ここで、式(6)中、 C z1 」,「C z2 」は、積分定数である。また、式(6)中、「I ,「K」は、それぞれ第1種変形Bessel関数,第2種 変形Bessel関数であり、「I 1 」,「K 1 」は、それぞれ式(7),(8)における「ν」に値1 設定したものにより表わされる。式(7),(8)に ける「φ 1 」は、式(9)により表わされる。式(7)中、「γ はGamma関数である。なお、式(5)の解法、即 、式(5)から式(6)を導出する方法については 述する。

 この任意の時刻tにおける歩行体の重心のz 分z(t)が式(6)により表わされる態様の本発明 歩容生成装置において、前記目標位置演算 段は、前記運動方程式の任意の時刻tにおけ る前記ゼロモーメント位置のx,y成分px(t),py(t) それぞれ式(10),(11)により表わされるn1次式,n 2次式(n1,n2は共に値0以上の整数)で与えられた ときに、該運動方程式の解としての式(12),(13) を用いて任意の時刻tにおける前記歩行体の 心のx,y成分x(t),y(t)を演算する手段であるも とすることもできる。ここで、式(10),(11)中 「b1 i 」,「b2 i 」はi次の項の係数であり、式(12),(13)中、「C x1 」,「C x2 」,「C y1 」,「C y2 」は、積分定数である。また、式(12),(13)中、 「I 1 」,「K 1 」は、それぞれ前述の式(7),(8)における「ν」 に値1を設定したものにより表わされる。さ に、「b1」と「B1」との関係,「b2」と「B2」 の関係は、式(14),(15)により表わされる。

 この任意の時刻tにおける歩行体の重心のx,y ,z成分x(t),y(t),z(t)がそれぞれ式(12),(13),(6)によ 表わされる態様の本発明の歩容生成装置に いて、前記目標位置演算手段は、複数の時 における前記歩行体の重心のz成分z(t)と該 行体の重心のz成分z(t)の変化速度(z(t)の一階 分)と前記式(6)とに基づいて該式(6)における 「C z1 」,「C z2 」,「a 1 」,「a 0 」を演算すると共に該演算した「C z1 」,「C z2 」,「a 1 」,「a 0 」を該式(6)に代入して任意の時刻tにおける 記歩行体の重心のz成分z(t)を設定し、該演算 した「a 1 」,「a 0 」と複数の時刻における前記歩行体の重心の x成分x(t)と任意の時刻tにおける前記ゼロモー メント位置のx成分px(t)と前記式(12)とに基づ て該式(12)における「C x1 」,「C x2 」を演算すると共に該演算した「C x1 」,「C x2 」を該式(12)に代入して任意の時刻tにおける 記歩行体の重心のx成分x(t)を演算し、前記 算した「a 1 」,「a 0 」と複数の時刻における前記歩行体の重心の y成分y(t)と任意の時刻tにおける前記ゼロモー メント位置のy成分py(t)と前記式(13)とに基づ て該式(13)における「C y1 」,「C y2 」を演算すると共に該演算した「C y1 」,「C y2 」を該式(13)に代入して任意の時刻tにおける 記歩行体の重心のy成分y(t)を演算する手段 あるものとすることもできる。

 運動方程式が式(3),(4)により表わされる態様 の本発明の歩容生成装置において、前記補助 方程式は、式(16)により表わされる式であり 前記運動方程式は、前記式(3),(4)における前 重心鉛直方向位置項を前記式(16)を用いて置 き換えた方程式であるものとすることもでき る。式(16)中、「a 3 」,「a 2 」は、任意の時刻tにおける前記歩行体の重 のz成分z(t)を演算するためのパラメータであ る。

 この補助方程式が式(16)により表わされる態 様の本発明の歩容生成装置において、前記目 標位置演算手段は、前記補助方程式の解とし ての式(17)を用いて任意の時刻tにおける前記 行体の重心のz成分z(t)を演算する手段であ ものとすることもできる。ここで、式(17)中 「C z3 」,「C z4 」は、積分定数である。また、式(17)中、「Ai ryAi」,「AiryBi」は、Airy関数であり、それぞれ 式(18),(19)により表わされる。さらに、式(17) 、「Gi」は、Scorer関数であり、式(20)により わされる。式(18)~(20)における「φ 2 」は式(21)により表わされる。式(18)中、「K」 は第2種変形Bessel関数であり、「K 1/3 」は式(22)における「ν」に1/3を設定したもの により表わされる。式(19),(22)中、「I」は第1 変形Bessel関数であり、「I 1/3 」,「I -1/3 」は、それぞれ式(23)における「ν」に1/3,-1/3 設定したものにより表わされる。式(20),(23) 、「γ」はGamma関数である。式(22),(23)中、「 φ 3 」は式(24)により表わされる。なお、式(16)の 法、即ち、式(16)から式(17)を導出する方法 ついては後述する。

 この任意の時刻tにおける歩行体の重心のz 分z(t)が式(17)により表わされる態様の本発明 の歩容生成装置において、前記目標位置演算 手段は、前記運動方程式の任意の時刻tにお る前記ゼロモーメント位置のx,y成分px(t),py(t) が式(25),(26)により表わされる1次式で与えら たときに、該運動方程式の解としての式(27), (28)を用いて任意の時刻tにおける前記歩行体 重心のx,y成分x(t),y(t)を演算する手段である のとすることもできる。ここで、式(25),(26) 、「b3 i 」,「b4 i 」はi次の項の係数であり、式(27),(28)中、「C x3 」,「C x4 」,「C y3 」,「C y4 」は、積分定数である。また、式(27),(28)中、 「AiryAi」,「AiryBi」は、前述の式(18),(19)によ 表わされる。

 この任意の時刻tにおける歩行体の重心のx,y ,z成分x(t),y(t),z(t)がそれぞれ式(27),(28),(17)によ り表わされる態様の本発明の歩容生成装置に おいて、前記目標位置演算手段は、複数の時 刻における前記歩行体の重心のz成分z(t)と該 行体の重心のz成分z(t)の変化速度(z(t)の一階 微分)と前記式(17)とに基づいて該式(17)におけ る「C z3 」,「C z4 」,「a 3 」,「a 2 」を演算すると共に該演算した「C z3 」,「C z4 」,「a 3 」,「a 2 」を該式(17)に代入して任意の時刻tにおける 記歩行体の重心のz成分z(t)を設定し、該演 した「a 3 」,「a 2 」と複数の時刻における前記歩行体の重心の x成分x(t)と任意の時刻tにおける前記ゼロモー メント位置のx成分px(t)と前記式(27)とに基づ て該式(27)における「C x3 」,「C x4 」を演算すると共に該演算した「C x3 」,「C x4 」を該式(27)に代入して任意の時刻tにおける 記歩行体の重心のx成分x(t)を演算し、前記 算した「a 3 」,「a 2 」と複数の時刻における前記歩行体の重心の y成分y(t)と任意の時刻tにおける前記ゼロモー メント位置のy成分py(t)と前記式(28)とに基づ て該式(28)における「C y3 」,「C y4 」を演算すると共に該演算した「C y3 」,「C y4 」を該式(28)に代入して任意の時刻tにおける 記歩行体の重心のy成分y(t)を演算する手段 あるものとすることもできる。

 本発明の歩行体装置は、前記歩行体と、 述のいずれか態様の本発明の歩容生成装置 即ち、基本的には、二足歩行を行なう歩行 の歩容を生成する歩容生成装置であって、 意の時刻における前記歩行体の重心の床面 対して鉛直方向の位置に関する項である重 鉛直方向位置項を時刻についてのn次式(nは 0以上の整数)または該n次式の逆数で置いた 記床面から前記歩行体に作用するモーメン がゼロとなるゼロモーメント位置と任意の 刻における前記歩行体の重心の前記床面に して水平方向の位置との関係を示す運動方 式と、前記重心鉛直方向位置項と前記n次式 または該n次式の逆数とからなる補助方程式 、を用いて任意の時刻における前記歩行体 重心の前記床面に対して水平方向および鉛 方向の目標位置を演算する目標位置演算手 と、前記演算された歩行体の重心の目標位 に基づいて前記歩行体の歩容を生成する歩 生成手段と、を備える歩容生成装置と、を えることを要旨とする。

 この本発明の歩行体装置は、上述のいず かの態様の本発明の歩容生成装置を備える ら、本発明の歩容生成装置が奏する効果、 えば、歩行体の重心の鉛直方向の運動を伴 た歩容を生成することができ、より多様な 容を生成することができる効果などと同様 効果を奏することができる。

 本発明の歩容生成方法は、
 二足歩行を行なう歩行体の歩容を生成する 容生成方法であって、
 tを時刻,px(t),py(t),pz(t)を任意の時刻tにおけ ゼロモーメント位置のx,y,z成分,Mを前記歩行 の全質量,gを重力加速度,x(t),y(t)を任意の時 tにおける前記歩行体の重心のx,y成分,Px(t),Py (t),Pz(t)を任意の時刻tにおける前記歩行体の 動量のx,y,z成分,Lx(t),Ly(t)を任意の時刻tにお る前記歩行体の角運動量のx,y成分としたと に式(29),(30)により表わされ、該式(29),(30)に いて任意の時刻tにおける前記ゼロモーメン 位置pz(t)を値0とすると共に任意の時刻tにお ける前記角運動量のx,y成分Lx(t),Ly(t)のうち前 歩行体の重心回りの角運動量の変化の影響 前記歩行体の重心のx,y成分x(t),y(t)の影響に して十分に小さいとして無視し、z(t)を任意 の時刻tにおける前記歩行体の重心のz成分と たときに式(31),(32)により表わされる運動方 式における前記歩行体の重心のz成分z(t)に する項「z(t)/(z(t)の二階微分+g)」を時刻につ てのn次式(nは値0以上の整数)または該n次式 逆数で置いたものと、前記項「z(t)/(z(t)の二 階微分+g)」と前記n次式または該n次式の逆数 からなる補助方程式と、を用いて任意の時 tにおける前記歩行体の重心のx,y,z成分x(t),y( t),z(t)を演算し、
 該演算した歩行体の重心のx,y,z成分x(t),y(t),z (t)を用いて前記歩行体の歩容を生成する、
 ことを要旨とする。

 この本発明の歩容生成方法では、tを時刻 ,px(t),py(t),pz(t)を任意の時刻tにおけるゼロモ メント位置のx,y,z成分,Mを歩行体の全質量,g 重力加速度,x(t),y(t)を任意の時刻tにおける歩 行体の重心のx,y成分,Px(t),Py(t),Pz(t)を任意の時 刻tにおける歩行体の運動量のx,y,z成分,Lx(t),Ly (t)を任意の時刻tにおける歩行体の角運動量 x,y成分としたときに式(29),(30)により表わさ 、式(29),(30)において任意の時刻tにおけるゼ モーメント位置pz(t)を値0とすると共に任意 時刻tにおける角運動量のx,y成分Lx(t),Ly(t)の ち歩行体の重心回りの角運動量の変化の影 を歩行体の重心のx,y成分x(t),y(t)の影響に比 て十分に小さいとして無視し、z(t)を任意の 時刻tにおける歩行体の重心のz成分としたと に式(31),(32)により表わされる運動方程式に ける歩行体の重心のz成分z(t)に関する項「z( t)/(z(t)の二階微分+g)」を時刻についてのn次式 (nは値0以上の整数)またはその逆数で置いた のと、項「z(t)/(z(t)の二階微分+g)」とn次式ま たはその逆数とからなる補助方程式と、を用 いて任意の時刻tにおける歩行体の重心のx,y,z 成分x(t),y(t),z(t)を演算し、演算した歩行体の 心のx,y,z成分x(t),y(t),z(t)を用いて前記歩行体 の歩容を生成する。したがって、任意の時刻 における歩行体の重心の床面に対して水平方 向の目標位置だけでなく鉛直方向の目標位置 も演算し、演算した目標位置を用いて歩行体 の歩容を生成するから、歩行体の重心の鉛直 方向の運動を伴った歩容を生成することがで きる。この結果、より多様な歩容を生成する ことができる。

本発明の第1実施例としてのロボット装 置20の外観を示す外観図である。 ロボット装置20の構成の概略を示す構 図である。 第1実施例の制御ユニット32により実行 れる歩容生成処理ルーチンの一例を示すフ ーチャートである。 ゼロモーメント位置等設定処理の一例 示すフローチャートである。 ゼロモーメント位置等設定処理により 定された足の位置の一例を示す説明図であ 。 ゼロモーメント位置等設定処理により 定されたゼロモーメント位置(ZMP)のx,y成分px (t),py(t)と時刻tとの関係の一例を示す説明図 ある。 重心z成分演算処理の一例を示すフロー チャートである。 重心x成分演算処理の一例を示すフロー チャートである。 二足歩行ロボット22の歩行の様子の一 を示す説明図である。 二足歩行ロボット22の歩行の様子の一 を示す説明図である。 第2実施例の制御ユニット32により実行 される歩容生成処理ルーチンの一例を示すフ ローチャートである。 重心z成分演算処理の一例を示すフロ チャートである。 重心x成分演算処理の一例を示すフロ チャートである。

 次に、本発明を実施するための最良の形 を実施例を用いて説明する。

 図1は、本発明の第1実施例としてのロボ ト装置20の外観を示す外観図であり、図2は ロボット装置20の構成の概略を示す構成図で ある。第1実施例のロボット装置20は、二足歩 行を行なう二足歩行ロボット22と、二足歩行 ボット22を操作する操作装置30と、を備える 。

 二足歩行ロボット22は、kn個の関節と、各関 節k(kは1≦k≦knを満たす整数)の角度θ k を変化させる図示しないアクチュエータ(例 ば、電動モータなど)とを有し、アクチュエ タの駆動により各関節kの角度θ k を変化させて二足歩行を行なう。

 操作装置30は、主として二足歩行ロボット22 の歩容を生成する制御ユニット32と、二足歩 ロボット22の歩行指示を行なうために操作 が操作するジョイスティック40と、を備える 。制御ユニット32は、中央処理演算回路とし のCPU34を中心とするマイクロコンピュータ して構成されており、CPU34の他に、処理プロ グラムなどを記憶するROM36や一時的にデータ 記憶するRAM38,図示しない入出力ポートを備 る。制御ユニット32には、ジョイスティッ 40の傾斜方向や傾斜角を検出する傾斜検出セ ンサ42からのジョイスティック40の傾斜方向 傾斜角,二足歩行ロボット22の各関節kに取り けられた角度センサからの各関節kの角度θ k などが入力されており、制御ユニット32から 、二足歩行ロボット22の各関節kの角度θ k を変化させる図示しないアクチュエータへの 駆動信号などが出力されている。第1実施例 は、主として、制御ユニット32が歩容生成装 置に相当する。

 次に、こうして構成されたロボット装置20 動作、特に、二足歩行ロボット22が停止して いる状態で操作者によりジョイスティック40 操作されて二足歩行ロボット22が歩行する の動作について説明する。図3は、制御ユニ ト32により実行される歩容生成処理ルーチ の一例を示すフローチャートである。この ーチンは、操作者によりジョイスティック40 が操作されて傾斜検出センサ42から傾斜方向 傾斜角が入力されたときに実行される。以 、説明の都合上、ジョイスティック40から 操作に応じて歩行を開始する歩行開始時刻 時刻t 0 ,歩行を終了する歩行終了時刻を時刻t f とし、時刻t 0 ~時刻t f をM区間に分割したときの各区間の境界の時 および歩行終了時刻を時刻t j (jは1≦j≦fを満たす整数)とし、時刻t j-1 ~時刻t j を区間J(Jは1≦J≦Mを満たす整数)として説明 る。また、区間の境界は、第1実施例では、 脚支持期から両脚支持期に移行する時刻を いるものとした。したがって、例えば、5歩 の歩行を行なうときには、5区間に分割する とになる。

 歩容生成処理ルーチンが実行されると、制 ユニット32のCPU34は、まず、区間1~区間Mの各 区間Jの任意の時刻tにおける二足歩行ロボッ 22のゼロモーメント位置(ZMP)のx,y成分px (J) (t),py (J) (t)や、歩行開始時刻t 0 および歩行終了時刻t f における二足歩行ロボット22の重心のx,y成分x (t 0 ),y(t 0 ),x(t f ),y(t f ),歩行開始時刻t 0 や時刻t 1 ~歩行終了時刻t f の各時刻t j における重心のz成分z(t 0 ),z(t j )(1≦j≦f)およびその変化速度(z(t 0 )の一階微分),(z(t j )の一階微分),二足歩行ロボット22の足の位置 ど制御に必要などデータを入力する処理を 行する(ステップS100)。これらのデータは、 1実施例では、図4に例示するゼロモーメン 位置等設定処理により設定されたものを入 するものとした。図4のゼロモーメント位置 設定処理では、傾斜検出センサ42からジョ スティック40の傾斜方向や傾斜角を入力し( テップS200)、入力したジョイスティック40の 斜方向や傾斜角に基づいて歩幅δxaや両足の 間隔δya,歩行周期(単脚指示時間と両脚指示時 間との和に応じた時間)δTなどを設定し(ステ プS210)、設定した歩幅δxaや両足の間隔δyaに 基づいて二足歩行ロボット22の足の位置を設 し(ステップS220)、設定した足の位置や歩行 期δTなどに基づいて区間1~区間Mの各区間Jの 任意の時刻tにおけるゼロモーメント位置(ZMP) のx,y成分px (J) (t),py (J) (t)をそれぞれ式(33),(34)により表わされるn1次 ,n2次式(n1,n2は値0以上の整数)として設定す と共に(ステップS230)、歩幅δxaや両足の間隔 ya,歩行周期δTなどに基づいて歩行開始時刻t 0 および歩行終了時刻t f における二足歩行ロボット22の重心のx,y成分x (t 0 ),y(t 0 ),x(t f ),y(t f )や、歩行開始時刻t 0 や時刻t 1 ~歩行終了時刻t f の各時刻t j における重心のz成分z(t 0 ),z(t j )およびその変化速度(z(t 0 )の一階微分),(z(t j )の一階微分)を設定して(ステップS240)、この ーチンを終了する。図4のゼロモーメント位 置等設定処理のステップS220で設定された二 歩行ロボット22の足の位置の一例を図5に示 、ステップS230で設定されたゼロモーメント 置(ZMP)のx,y成分px(t),py(t)と時刻tとの関係の 例を図6に示す。なお、両足の間隔δyaは、ジ ョイスティック40の傾斜方向や傾斜角に拘わ ず一定の値を用いるものとしてもよい。ま 、歩行開始時刻t 0 における重心のx,y,z成分x(t 0 ),y(t 0 ),z(t 0 )は、二足歩行ロボット22の重心の位置を検出 する図示しないセンサからの重心のx,y,z成分x (t 0 ),y(t 0 ),z(t 0 )を用いるものとしてもよい。

 こうしてデータを入力すると、区間Jに値1 設定すると共に(ステップS110)、時刻t j-1 ,t j における重心のz成分z(t j-1 ),z(t j )およびその変化速度(z(t j-1 )の一階微分),(z(t j )の一階微分)と次式(35)とに基づいて図6に例 する重心z成分演算処理により区間Jの任意の 時刻tにおける重心のz成分z (J) (t)を演算する(ステップS120)。図7の重心z成分 算処理では、時刻t j-1 ,t j における重心のz成分z(t j-1 ),z(t j )を式(35)の右辺の「t」を「t-t j-1 」に置き換えた式(36)に代入した2つの方程式 、時刻t j-1 ,t j における重心のz成分z(t j-1 ),z(t j )の変化速度(z(t j-1 )の一階微分),(z(t j )の一階微分)を式(35)の両辺を「t」で微分し ものの右辺の「t」を「t-t j-1 」に置き換えた式(37)に代入した2つの方程式 、の4つの方程式を連立して解くことにより 、区間Jの「C z1 (J) 」,「C z2 (J) 」,「a 1 (J) 」,「a 0 (J) 」を演算すると共に(ステップS300)、演算した 区間Jの「C z1 (J) 」,「C z2 (J) 」,「a 1 (J) 」,「a 0 (J) 」を式(36)に代入して区間Jの任意の時刻tにお ける重心のz成分z (J) (t)を演算して(ステップS310)、重心z成分演算 理を終了する。ここで、式(35)~(37)中、「I」, 「K」は、それぞれ第1種変形Bessel関数,第2種 形Bessel関数であり、式(35),(36)中、「I 1 」,「K 1 」は、式(38),(39)における「ν」に値1を設定し たものにより表わされ、式(37)中、「I 0 」,「K 0 」は、式(38),(39)における「ν」に値0を設定し たものにより表わされる。また、式(38),(39)に おける「φ 1 」は、式(40)により表わされる。さらに、式(3 8)中、「γ」はGamma関数である。各区間Jの任 の時刻tにおける重心のz成分z (J) (t)の演算の際に式(35)を用いる理由について 後述する。なお、ステップS300の連立方程式 解く処理は、例えば、Newton法などにより行 うことができる。こうして区間Jの任意の時 刻tにおける重心のz成分z (J) (t)を演算すると、区間Jが区間Mであるか否か 判定し(ステップS130)、区間Jが区間Mでない きには、区間Jに値1を加えて(ステップS140)、 ステップS120に戻る。このようにして、区間1~ 区間Mの各区間Jの任意の時刻tにおける重心の z成分z (J) (t)を演算するのである。

 そして、ステップS130で区間Jが区間Mである 判定されると、演算した区間1~区間Mの各区 Jの「a 1 (J) 」,「a 0 (J) 」と、各区間Jの任意の時刻tにおけるゼロモ メント位置(ZMP)のx成分px (J) (t)と、時刻t 0 ,t f における重心のx成分x(t 0 ),x(t f )と、次式(41)とに基づいて図7に例示する重心 x成分演算処理により各区間Jの任意の時刻tに おけるx成分x (J) (t)を演算すると共に(ステップS150)、各区間J 「a 1 (J) 」,「a 0 (J) 」と、各区間Jの任意の時刻tにおけるゼロモ メント位置(ZMP)のy成分py (J) (t)と、時刻t 0 ,t f における重心のy成分y(t 0 ),y(t j )と,式(42)とに基づいて図示しない重心y成分 算処理により各区間Jの任意の時刻tにおける 重心のy成分y (J) (t)を演算する(ステップS160)。各区間Jの任意 時刻tにおける重心のx,y成分x (J) (t),y (J) (t)は、前述の式(41),(42)が同様の構造の式であ り、同様に演算することができるため、ここ では、重心のx成分x (J) (t)の演算処理について説明し、重心のy成分y (J) (t)の演算処理の詳細な説明は省略する。なお 、式(41),(42)中、「B1 i 」,「B2 i 」は、それぞれ式(43),(44)により表わされる。 図8の重心x成分演算処理では、式(41)の右辺の 「t」を「t-t j-1 」に置き換えた式(45)に歩行開始時刻(区間1の 開始時刻)t 0 における重心のx成分x(t 0 )を代入すると共にその式(45)の「j」と「J」 に共に値1を設定した式(46)と、式(45)に歩行 了時刻(区間Mの終了時刻)t f における重心のx成分x(t f )を代入すると共にその式(45)の「j」,「J」に れぞれ「f」,「M」を設定したした式(47)と、 連続する二つの区間の境界における重心のx 分x(t)が連続する条件を満たす式(48)により表 わされる(M-1)個の式と、同じく連続する二つ 区間の境界における重心のx成分x(t)の変化 度(x(t)の一階微分)が連続する条件を満たす (49)により表わされる(M-1)個の式と、の2M個の 方程式を連立して解くことにより、各区間J 「C x1 (J) 」,「C x2 (J) 」を演算すると共に(ステップS400)、演算した 各区間Jの「C x1 (J) 」,「C x2 (J) 」と「a 1 (J) 」,「a 0 (J) 」とを式(45)に代入して各区間Jの任意の時刻t における重心のx成分x (J) (t)を演算して(ステップS410)、重心x成分演算 理を終了する。ここで、式(41),(42),(45)~(48)中 「I 1 」,「K 1 」は、式(38),(39)における「ν」に値1を設定し たものにより表わされ、式(49)中、「I 0 」,「K 0 」は、式(38),(39)における「ν」に値0を設定し たものにより表わされる。また、式(38),(39)に おける「φ 1 」は、式(40)により表わされる。ステップS400 連立方程式を解く処理は、前述のステップS 300の処理と同様にNewton法などにより行なうこ とができる。このように連続する二つの区間 の境界における重心のx成分x(t)およびその変 速度(x(t)の一階微分)が連続する式を用いて 区間Jの「C x1 (J) 」,「C x2 (J) 」を演算すると共にこの「C x1 (J) 」,「C x2 (J) 」を用いて各区間Jの任意の時刻tにおけるx (J) (t)を演算することにより、連続する二つの区 間の境界やその近傍における重心のx成分x(t) よびその変化速度(x(t)の一階微分)を連続的 ものにすることができる。同様の手法によ 、各区間Jの「C y1 (J) 」,「C y2 (J) 」を演算して各区間Jの任意の時刻tにおける 心のy成分y (J) (t)を演算することができる。各区間Jの任意 時刻tにおける重心のx,y成分x (J) (t),y (J) (t)の演算の際に式(41),(42)を用いる理由につい ては後述する。

 こうして区間1~区間Mの各区間Jの任意の時刻 tにおける重心のx,y,z成分x (J) (t),y (J) (t),z (J) (t)を演算すると、演算した重心のx,y,z成分x (J) (t),y (J) (t),z (J) (t)や時刻t j-1 ,t j における二足歩行ロボット22の足の位置など 基づいて各区間Jの任意の時刻tにおける二 歩行ロボット22の各関節kの目標角度θ k (J) (t)を演算して(ステップS170)、歩容生成処理ル ーチンを終了する。各関節kの目標角度θ k (J) (t)の設定については、例えば、下記の引用文 献1,2に記載されている方法などと同様に行な うことができる。制御ユニット32は、こうし 演算された各区間Jの任意の時刻tにおける 足歩行ロボット22の各関節kの目標角度θ k (J) (t)や現在の角度(現在θ k )などを用いて二足歩行ロボット22の各関節k 角度θ k を変化させる図示しないアクチュエータを駆 動して二足歩行ロボット22に歩行を行なわせ 。二足歩行ロボット22の歩行の様子の一例 図9および図10に示す。図9および図10の例で 、一歩目で上体を屈ませ、二歩目で上体を している。任意の時刻tにおける重心のz成分 z(t)を演算することにより、こうした重心のz 分z(t)の変化を伴う歩行を行なうことができ る。
  引用文献1:梶田,金広,金子,藤原,原田,横井, 比留川,「分解運動量制御:運動量と角運動量 に基づくヒューマノイドロボットの全身運 生成」,日本ロボット学会誌,Vol.22,No.6,pp.772-7 79,2004
  引用文献2:T. Sugihara and Y. Nakamura, Whole-bo dy Cooperative Balancing of Humanoid Robot using COG Jacobian, In Proc.of IEEE/RSJ Int. Conf. on Intellig ent Robots and Systems, pp. 2575-2580, 2002.

 次に、各区間Jの任意の時刻tにおける重心 z,x,y成分z (J) (t),x (J) (t),y (J) (t)の演算処理(ステップS120,S150,S160)において 式(35),(41),(42)を用いることができる理由につ いて説明する。tを時刻,px(t),py(t),pz(t)を任意 時刻tにおけるゼロモーメント位置(ZMP)のx,y,z 成分,Mを二足歩行ロボット22の全質量,gを重力 加速度,x(t),y(t)を任意の時刻tにおける二足歩 ロボット22の重心のx,y成分,Px(t),Py(t),Pz(t)を 意の時刻tにおける二足歩行ロボット22の運 量のx,y,z成分,Lx(t),Ly(t)を任意の時刻tにおけ 二足歩行ロボット22の角運動量のx,y成分とし たときに、任意の時刻tにおけるゼロモーメ ト位置(ZMP)のx,y,z成分px(t),py(t),pz(t)と重心のx, y成分x(t),y(t)との関係を示す運動方程式は式(5 0),(51)により表わされるが、式(50),(51)におい 、任意の時刻tにおけるゼロモーメント位置 z成分pz(t)を値0とすると共に角運動量のx,y成 分Lx(t),Ly(t)のうち二足歩行ロボット22の重心 りの変化の影響を重心の水平成分の影響に して十分に小さいとして無視し、z(t)を任意 時刻tにおける重心のz成分とすると、運動 程式は、式(52),(53)のように書き直すことが きる。従来は、この式(52),(53)において、重 のz成分z(t)を定数、即ち、重心のz成分z(t)を 定とするまたはその変化を無視して定数Zc 置いて式(52),(53)を式(54),(55)のように書き直 て重心のx,y成分x(t),y(t)を演算していた。し しながら、二足歩行ロボット22は、重心のz 分z(t)の運動を加味したより多様な運動を行 うことが望まれる。したがって、第1実施例 では、式(52),(53)における重心のz成分z(t)に関 る項を式(56)で示したように1次式(a 1 t+a 0 )で置き、この式(56)を解析的に解くことによ 式(35)により表わされる任意の時刻tにおけ 重心のz成分z(t)の一般解を得ると共に、式(52 ),(53)における重心のz成分z(t)に関する項を式( 56)で示した1次式(a 1 t+a 0 )で置き換えた式(57),(58)を解析的に解くこと より式(41),(42)により表わされる任意の時刻t おける重心のx,y成分x(t),y(t)の一般解を得て 式(35),(41),(42)における「a 1 」,「a 0 」,「C z1 」,「C z2 」,「C x1 」,「C x2 」,「C y1 」,「C y2 」を決定し、任意の時刻tにおける重心のz,x,y 成分z(t),x(t),y(t)を演算するものとした。以下 式(56)~(58)の解法について説明する。なお、 1実施例では、式(56)が本発明の補助方程式 相当する。

 まず、式(56)の解法について説明する。式(56 )を解く際には、式(56)を式(59)のように変形し 、変形した式(59)の右辺を値0と置いた同次方 式を解く。この際、式(59)を式(60),(61)を用い て変形すると、同次方程式は式(62)により表 される。この方程式は変形Bessel方程式と呼 れるものであり、その解は式(63)により表わ れる。ここで、式(63)中、「Cα 1 」,「Cβ 1 」は積分定数である。また、式(63)中、「I 1 」,「K 1 」は、それぞれ式(38),(39)における「ν」を値1 とすると共に「φ 1 」を「τ」に置き換えたものにより表わされ 。したがって、式(59)の同次方程式の同次解 は、式(64)により表わされる。また、式(59)の 解は式(65)により表わされる。これらより、 式(59)の一般解は、式(35)のように表わすこと できる。次に、式(57)の解法について説明す る。この式を変形すると式(59)と同様の構造 式になるから、重心のx成分x(t)の同次解は式 (64)と同様になる。また、重心のx成分のx(t)の 特解は、ゼロモーメント位置(ZMP)のx成分px(t) 式(33)により表わされるものとすると、式(66 )により表わされる。式(66)中、「B1 i 」は、式(43)により表わされる。これらより 重心のx成分x(t)の一般解は、式(41)のように わすことができる。次に、式(58)の解法につ て説明する。式(58)は、式(57)と同様の構造 式であるから、同様に解くことができ、重 のy成分y(t)の一般解は、式(42)のように表わ ことができる。こうした式(35),(41),(42)を用い て得られる任意の時刻tにおける重心のx,y,z成 分x(t),y(t),z(t)を用いて二足歩行ロボット22の 容を生成することにより、重心のz成分z(t)の 変化を伴って歩行することができる。これに より、より多様な歩行を行なうことができる 。なお、式(38)や式(39)により表わされる第1種 変形Bessel関数や第2種変形Bessel関数は、GSL(例 ば、引用文献3参照)等のライブラリで精度 く高速に演算することができる。
  引用文献3:GSL-GNU Scientific Library, http://www. gnu.org/software/gsl/

 以上説明した第1実施例のロボット装置20 よれば、運動方程式のうち任意の時刻tにお ける重心のz成分z(t)に関する項を1次式に置き 換えたものと、重心のz成分z(t)に関する項と1 次式とからなる補助方程式と、を用いて任意 の時刻tにおける重心のx,y,z成分x(t),y(t),z(t)を 算すると共に演算した重心のx,y,z成分x(t),y(t ),z(t)を用いて二足歩行ロボット22の歩容を生 するから、重心のz成分z(t)の変化を伴った 容を生成することができる。この結果、よ 多様な歩容を生成することができるから、 足歩行ロボット22はより多様な歩行を行なう ことができる。

 第1実施例のロボット装置20では、図3の歩容 生成処理ルーチンのステップS120で演算した 間1~区間Mの各区間Jの「a 1 (J) 」,「a 0 (J) 」や、各区間Jの任意の時刻tにおけるゼロモ メント位置(ZMP)のx成分px (J) (t),時刻t 0 ,t f における重心のx成分x(t 0 ),x(t f ),式(41)に基づいて重心x成分演算処理により 区間Jの「C x1 」,「C x2 」を演算して各区間Jの任意の時刻tにおけるx 成分x (J) (t)を演算すると共に、各区間Jの「a 1 (J) 」,「a 0 (J) 」や、各区間Jの任意の時刻tにおけるゼロモ メント位置(ZMP)のy成分py (J) (t),時刻t 0 ,t f における重心のy成分y(t 0 ),y(t f ),式(42)に基づいて各区間Jの「C y1 」,「C y2 」を演算して各区間Jの任意の時刻tにおける 心のy成分y (J) (t)を演算するものとしたが、各区間Jの任意 時刻tにおける重心のx,y成分x (J) (t),y (J) (t)の演算方法はこれに限られず、例えば、各 区間Jの「a 1 (J) 」,「a 0 (J) 」と時刻t j-1 ,t j (1≦j≦f)における重心のx成分x(t j-1 ),x(t j )と式(41)とに基づいて各区間Jの「C x1 」,「C x2 」を演算して各区間Jの任意の時刻tにおける 心のx成分x (J) (t)を演算すると共に、各区間Jの「a 1 (J) 」,「a 0 (J) 」と時刻t j-1 ,t j における重心のy成分y(t j-1 ),y(t j )と式(42)とに基づいて各区間Jの「C y1 」,「C y2 」を演算して各区間Jの任意の時刻tにおける 心のy成分y (J) (t)を演算するものとしてもよい。

 第2実施例のロボット装置20Bは、図1およ 図2に例示した第1実施例のロボット装置20と 一のハード構成をしている。したがって、 複した説明を回避するため、第2実施例のロ ボット装置20Bのハード構成については、第1 施例のロボット装置20のハード構成と同一の 符号を付し、その詳細な説明は省略する。

 第2実施例のロボット装置20Bでは、図3の歩 生成処理ルーチンに代えて、図11の歩容生成 処理ルーチンを実行する。図11のルーチンは 図3のルーチンのステップS100の区間1~区間M 各区間Jの任意の時刻tにおけるゼロモーメン ト位置のx,y成分x (J) (t),y (J) (t)を変更した点や、ステップS120,S150,S160で二 歩行ロボット22の重心のz,x,y成分z (J) (t),x (J) (t),y (J) (t)の演算に用いられる式を変更した点を除い て図3のルーチンと同一である。したがって 以下、異なる処理を中心に説明する。なお 同一の処理については同一のステップ番号 付した。

 図11の歩容生成処理ルーチンが実行される 、図3の歩容生成処理ルーチンのステップS100 の処理と同様に、区間1~区間Mの各区間Jの任 の時刻tにおける二足歩行ロボット22のゼロ ーメント位置(ZMP)のx,y成分px (J) (t),py (J) (t)や、歩行開始時刻t 0 および歩行終了時刻t f における二足歩行ロボット22の重心のx,y成分x (t 0 ),y(t 0 ),x(t f ),y(t f ),歩行開始時刻t 0 や時刻t 1 ~歩行終了時刻t f の各時刻t j における重心のz成分z(t 0 ),z(t j )(1≦j≦f)およびその変化速度(z(t 0 )の一階微分),(z(t j )の一階微分),二足歩行ロボット22の足の位置 ど制御に必要などデータを入力する処理を 行する(ステップS100b)。ここで、各区間Jの 意の時刻tにおけるゼロモーメント位置(ZMP) x,y成分px (J) (t),py (J) (t)として、図3の歩容生成ルーチンではそれ れ式(33),(34)で表わされるn1次式,n2次式を用い るものとしたが、このルーチンでは、それぞ れ式(67),(68)により表わされる1次式を用いる のとした。

 こうしてデータを入力すると、区間Jに値1 設定すると共に(ステップS110)、時刻t j-1 ,t j における重心のz成分z(t j-1 ),z(t j )およびその変化速度(z(t j-1 )の一階微分),(z(t j )の一階微分)と次式(69)とに基づいて図12に例 するの重心z成分演算処理により区間Jの任 の時刻tにおける重心のz成分z (J) (t)を演算する(ステップS120b)。図12の重心z成 演算処理では、時刻t j-1 ,t j における重心のz成分z(t j-1 ),z(t j )を式(67)の右辺の「t」を「t-t j-1 」に置き換えた式(70)に代入した2つの方程式 、時刻t j-1 ,t j における重心のz成分z(t j-1 ),z(t j )の変化速度(z(t j-1 )の一階微分),(z(t j )の一階微分)を式(69)の両辺を「t」で微分し ものの右辺の「t」を「t-t j-1 」に置き換えた式(71)に代入した2つの方程式 、の4つの方程式を連立して解くことにより 、区間Jの「C z3 (J) 」,「C z4 (J) 」,「a 3 (J) 」,「a 2 (J) 」を演算すると共に(ステップS500)、演算した 区間Jの「C z3 (J) 」,「C z4 (J) 」,「a 3 (J) 」,「a 2 (J) 」を式(70)に代入して区間Jの任意の時刻tにお ける重心のz成分z (J) (t)を演算して(ステップS510)、重心z成分演算 理を終了する。ここで、式(69),(70)中、「AiryA i」,「AiryBi」は、Airy関数であり、それぞれ式 (72),(73)により表わされる。また、「Gi」は、S corer関数であり、式(74)により表わされる。さ らに、式(72)~(74)中、「φ 2 」は式(75)により表わされる。式(72)中、「K」 は第2種変形Bessel関数であり、「K 1/3 」は式(76)における「ν」に1/3を設定したもの により表わされる。式(73),(76)中、「I」は第1 変形Bessel関数であり、式(73)中、「I 1/3 」,「I -1/3 」は、それぞれ式(77)における「ν」に1/3,-1/3 設定したものにより表わされる。式(74)中、 「γ」はGamma関数である。式(76),(77)中、「φ 3 」は式(78)により表わされる。式(71)中、「Airy AiPrime」,「AiryBiPrime」,「GiPrime」は、それぞれ 「AiryAi」,「AiryBi」,「Gi」の微分である。各 間Jの重心のz成分z (J) (t)の演算の際に式(69)を用いる理由について 後述する。なお、ステップS500の連立方程式 解く処理は、第1実施例と同様に、Newton法な どにより行なうことができる。こうして区間 Jの任意の時刻tにおける重心のz成分z (J) (t)を演算すると、区間Jが区間Mであるか否か 判定し(ステップS130)、区間Jが区間Mでない きには、区間Jに値1を加えて(ステップS140)、 ステップS120bに戻る。このようにして、区間1 ~区間Mの各区間Jの任意の時刻tにおける重心 z成分z (J) (t)を演算するのである。

 そして、ステップS130で区間Jが区間Mである 判定されると、演算した区間1~区間Mの各区 Jの「a 3 (J) 」,「a 2 (J) 」と、各区間Jの任意の時刻tにおけるゼロモ メント位置(ZMP)のx成分px (J) (t)と、時刻t 0 ,t f における重心のx成分x(t 0 ),x(t f )と、次式(79)とに基づいて図13に例示する重 x成分演算処理により各区間Jの任意の時刻t おけるx成分x (J) (t)を演算すると共に(ステップS150b)、各区間J 「a 3 (J) 」,「a 2 (J) 」と、各区間Jの任意の時刻tにおけるゼロモ メント位置(ZMP)のy成分py (J) (t)と、時刻t 0 ,t f における重心のy成分y(t 0 ),y(t j )と、式(80)とに基づいて図示しない重心y成分 演算処理により各区間Jの任意の時刻tにおけ 重心のy成分y (J) (t)を演算し(ステップS160b)、演算した重心のx, y,z成分x (J) (t),y (J) (t),z (J) (t)や時刻t j-1 ,t j における二足歩行ロボット22の足の位置など 基づいて各区間Jの任意の時刻tにおける二 歩行ロボット22の各関節kの目標角度θ k (J) (t)を演算して(ステップS170)、歩容生成処理ル ーチンを終了する。各区間Jの任意の時刻tに ける重心のx,y成分x (J) (t),y (J) (t)は、前述の式(79),(80)が同様の構造の式であ り、同様に演算することができるため、ここ では、重心のx成分x (J) (t)の演算処理について説明し、重心のy成分y (J) (t)の演算処理の詳細な説明は省略する。図13 重心x成分演算処理では、式(79)の右辺の「t を「t-t j-1 」に置き換えた式(81)に歩行開始時刻(区間1の 開始時刻)t 0 における重心のx成分x(t 0 )を代入すると共にその式(81)の「j」と「J」 に共に値1を設定した式(82)と、式(81)に歩行 了時刻(区間Mの終了時刻)t f における重心のx成分x(t f )を代入すると共にその式(81)の「j」,「J」に れぞれ「f」,「M」を設定した式(83)と、連続 する二つの区間の境界における重心のx成分x( t)が連続する条件を満たす式(84)により表わさ れる(M-1)個の式と、同じく連続する二つの区 の境界における重心のx成分x(t)の変化速度(x (t)の一階微分)が連続する条件を満たす式(85) より表わされる(M-1)個の式と、の2M個の方程 式を連立して解くことにより、各区間Jの「C x3 (J) 」,「C x4 (J) 」を演算すると共に(ステップS600)、演算した 各区間Jの「C x3 (J) 」,「C x4 (J) 」と「a 3 (J) 」,「a 2 (J) 」とを式(81)に代入して各区間Jの任意の時刻t における重心のx成分x (J) (t)を演算して(ステップS610)、重心x成分演算 理を終了する。ここで、式(79)~(84)中、「AiryA i」,「AiryBi」は、それぞれ前述の式(72),(73)に り表わされる。また、式(72),(73)中、「φ 2 」は式(75)により表わされる。式(72)中、「K 1/3 」は式(76)における「ν」に1/3を設定したもの により表わされる。式(73)中、「I 1/3 」,「I -1/3 」は、それぞれ式(77)における「ν」に1/3,-1/3 設定したものにより表わされる。式(76),(77) 、「φ 3 」は式(78)により表わされる。式(85)中、「Airy AiPrime」,「AiryBiPrime」は、それぞれ「AiryAi」, AiryBi」の微分である。ステップS600の連立方 程式を解く処理は、第1実施例と同様に、Newto n法などにより行なうことができる。このよ に連続する二つの区間の境界における重心 x成分x(t)およびその変化速度(x(t)の一階微分) が連続する式を用いて各区間Jの「C x3 (J) 」,「C x4 (J) 」を演算すると共にこの「C x3 (J) 」,「C x4 (J) 」を用いて各区間Jの任意の時刻tにおけるx (J) (t)を演算することにより、連続する二つの区 間の境界やその近傍における重心のx成分x(t) よびその変化速度(x(t)の一階微分)を連続的 ものにすることができる。同様の手法によ 、各区間Jの「C y3 (J) 」,「C y4 (J) 」を演算して各区間Jの任意の時刻tにおける 心のy成分y (J) (t)を演算することができる。

 次に、各区間Jの任意の時刻tにおける重心 z,x,y成分z (J) (t),x (J) (t),y (J) (t)の演算処理(ステップS120b,S150b,S160b)におい 、式(69),(79),(80)を用いることができる理由に ついて説明する。第2実施例では、前述の式(5 2),(53)により表わされる運動方程式における 心のz成分z(t)に関する項を式(86)で示したよ に1次式の逆数(1/(a 1 t+a 0 ))で置き、この式(86)を解析的に解くことによ り式(69)により表わされる任意の時刻tにおけ 重心のz成分z(t)の一般解を得ると共に、式(5 2),(53)における重心のz成分z(t)に関する項を式 (86)で示した1次式の逆数(1/(a 1 t+a 0 ))で置き換えた式(87),(88)を解析的に解くこと より式(79),(80)により表わされる任意の時刻t における重心のx,y成分x(t),y(t)の一般解を得て 、式(69),(79),(80)における「a 3 」,「a 2 」,「C z3 」,「C z4 」,「C x3 」,「C x4 」,「C y3 」,「C y4 」を決定し、任意の時刻tにおける重心のz,x,y 成分z(t),x(t),y(t)を演算するものとした。以下 式(86)~(88)の解法について説明する。なお、 2実施例では、式(86)が本発明の補助方程式 相当する。

 まず、式(86)の解法について説明する。式(86 )を解く際には、式(86)を式(89)のように変形し 、変形した式(89)の右辺を値0と置いた同次方 式を解く。この際、式(89)を式(90),(91)を用い て変形すると、同次方程式は式(92)により表 される。この式(92)は、Airy方程式と呼ばれる ものであり、解は式(93)により表わされる。 こで、式(93)中、「Cα 2 」,「Cβ 2 」は積分定数である。また、式(93)中、「AiryA i」,「AiryBi」は、それぞれ式(72),(73)の「φ 2 」を「τ」に置き換えたものにより表わされ 。したがって、式(89)の同時方程式の同次解 は、式(94)により表わされる。また、式(86)を (95),(96)を用いて変形すると式(97)が得られ、 この解は式(98)により表わされる。ここで、 (98)中、「Gi」は、式(74)の「φ 2 」を「τ」に置き換えたものにより表わされ 。したがって、式(89)の特解は、式(99)によ 表わされる。これらより、式(86)の一般解は 式(69)のように表わすことができる。次に、 式(87)の解法について説明する。この式を変 すると、式(89)と同様の構造の式になるから 重心のx成分x(t)の同次解は式(94)と同様にな 。また、重心のx成分のx(t)の特解は、ゼロ ーメント位置(ZMP)のx成分px(t)が式(67)により わされるものとすると、式(100)により表わさ れる。これらより、重心のx成分x(t)の一般解 、式(79)のように表わすことができる。次に 、式(88)の解法について説明する。式(88)は、 (87)と同様の構造の式であるから、式(87)と 様に解くことができ、重心のy成分y(t)の一般 解は、式(80)のように表わすことができる。 うした式(69),(79),(80)を用いて得られる任意の 時刻tにおける重心のx,y,z成分x(t),y(t),z(t)を用 て二足歩行ロボット22の歩容を生成するこ により、重心のz成分z(t)の変化を伴って歩行 することができる。これにより、より多様な 歩行を行なうことができる。

 以上説明した第2実施例のロボット装置20B によれば、運動方程式のうち任意の時刻tに ける重心のz成分z(t)に関する項を1次式の逆 に置き換えたものと、重心のz成分z(t)に関す る項と1次式の逆数とからなる補助方程式と を用いて任意の時刻tにおける重心のx,y,z成 x(t),y(t),z(t)を演算すると共に演算した重心の x,y,z成分x(t),y(t),z(t)を用いて二足歩行ロボッ 22の歩容を生成するから、第1実施例と同様 、重心のz成分z(t)の変化を伴った歩容を生成 することができる。この結果、より多様な歩 容を生成することができるから、二足歩行ロ ボット22はより多様な歩行を行なうことがで る。

 第2実施例のロボット装置20Bでは、各区間J 任意の時刻tにおけるゼロモーメント位置(ZMP )のx,y成分px (J) (t),py (J) (t)として、1次式を用いるものとしたが、そ ぞれn1次式,n2次式を用いるものとしてもよい 。

 第2実施例のロボット装置20Bでは、図11の歩 生成処理ルーチンのステップS120bで演算し 区間1~区間Mの各区間Jの「a 3 (J) 」,「a 2 (J) 」や、各区間Jの任意の時刻tにおけるゼロモ メント位置(ZMP)のx成分px (J) (t),時刻t 0 ,t f における重心のx成分x(t 0 ),x(t f ),式(79)に基づいて重心x成分演算処理により 区間Jの「C x3 」,「C x4 」を演算して各区間Jの任意の時刻tにおけるx 成分x (J) (t)を演算すると共に、各区間Jの「a 3 (J) 」,「a 2 (J) 」や、各区間Jの任意の時刻tにおけるゼロモ メント位置(ZMP)のy成分py (J) (t),時刻t 0 ,t f における重心のy成分y(t 0 ),y(t f ),式(80)に基づいて各区間Jの「C y1 」,「C y2 」を演算して各区間Jの任意の時刻tにおける 心のy成分y (J) (t)を演算するものとしたが、各区間Jの任意 時刻tにおける重心のx,y成分x (J) (t),y (J) (t)の演算方法はこれに限られず、例えば、各 区間Jの「a 3 (J) 」,「a 2 (J) 」と時刻t j-1 ,t j (1≦j≦f)における重心のx成分x(t j-1 ),x(t j )と式(79)とに基づいて各区間Jの「C x3 」,「C x4 」を演算して各区間Jの任意の時刻tにおける 心のx成分x (J) (t)を演算すると共に、各区間Jの「a 3 (J) 」,「a 2 (J) 」と時刻t j-1 ,t j における重心のy成分y(t j-1 ),y(t j )と式(80)とに基づいて各区間Jの「C y3 」,「C y4 」を演算して各区間Jの任意の時刻tにおける 心のy成分y (J) (t)を演算するものとしてもよい。

 第2実施例のロボット装置20Bでは、二足歩 行ロボット22の両足のうち少なくとも一方の を床面に接触させながら(以下、この状態を 接地状態という)二足歩行ロボット22を歩行さ せる際の歩容の生成について説明したが、接 地状態と両足とも床面から離れる離床状態と を含んで二足歩行ロボット22を走行させる際 は、接地状態の歩容の生成について実施例 同様に行なうことができる。なお、離床状 の歩容の生成については、例えば、式(101)~( 103)と、離床を開始する離床開始時刻,離床を 了する離床終了時刻の重心と、離床中の所 時刻における重心および速度の連続条件と を用いて行なうことができる。したがって この変形例では、こうして生成した接地状 の歩容と離床状態の歩容とを組み合わせる とにより、二足歩行ロボット22を走行させ 際の歩容を生成することができる。なお、 足歩行ロボット22を歩行させるか走行させる かは、例えば、操作者によるジョイスティッ ク40の操作の程度などに応じて選択すること できる。

 第1実施例のロボット装置20では、運動方 式のうち任意の時刻tにおける重心のz成分z( t)に関する項を1次式に置き換えたものと、重 心のz成分z(t)に関する項と1次式とからなる補 助方程式と、を用いて任意の時刻tにおける 心のx,y,z成分x(t),y(t),z(t)を演算するものとし 第2実施例のロボット装置20Bでは、運動方程 式のうち任意の時刻tにおける重心のz成分z(t) に関する項を1次式の逆数に置き換えたもの 、重心のz成分z(t)に関する項と1次式の逆数 からなる補助方程式と、を用いて任意の時 tにおける重心のx,y,z成分x(t),y(t),z(t)を演算す るものとしたが、操作者によるジョイスティ ック40の操作の程度に応じてこれらのうちい れかを選択して任意の時刻tにおける重心の x,y,z成分x(t),y(t),z(t)を演算するものとしても い。

 第1実施例や第2実施例のロボット装置20,20 Bでは、二足歩行ロボット22が停止している状 態で操作者によりジョイスティック40が操作 れたときの二足歩行ロボット22の歩容を生 する処理について説明したが、ジョイステ ック40が操作されて二足歩行ロボット22が歩 している最中にジョイスティック40が再操 されたときには、その再操作に応じて二足 行ロボット22の歩容を再生成する処理を実行 するものとしてもよい。

 第1実施例や第2実施例のロボット装置20,20 Bでは、式(56)や式(86)に示したように、式(52),( 53)により表わされる運動方程式のうち二足歩 行ロボット22の重心のz成分z(t)に関する項を 刻に対する1次式またはその逆数で置くもの したが、1次以外のn次式(nは値0以上の整数) たはその逆数で置くものとしてもよい。こ 場合、nが値0のときであっても、重心のz成 z(t)そのものを定数として置く訳ではないた め、重心のz成分z(t)の運動を加味することが きる。

 第1実施例や第2実施例のロボット装置20,20B は、区間の境界として、単脚支持期から両 支持期に移行する時刻を用いるものとした 、これに限られず、如何なる時刻を用いる のとしてもよい。また、第1実施例や第2実施 例のロボット装置20,20Bでは、式(6),(9),(12),(13), (35)~(37),(40)~(42),(45)~(49),(60)の分母の「a 1 」,「a 1 (J) 」,「a 1 (J+1) 」,「a 1 (M) 」については根号に入れないものとしたが、 これらの分母を2乗して根号の内側に入れる のとしてもよい。これにより、プログラム 析上で解がより得やすくなると考えられる

 第1実施例や第2実施例のロボット装置20,20B は、操作者によるジョイスティック40の操作 、即ちジョイスティック40の傾斜方向や傾斜 に応じて二足歩行ロボット22に歩行を行な せるものとしたが、操作者は、ジョイステ ック40の操作に代えてまたは加えて、歩行開 始時刻t 0 や歩行終了時刻t f ,連続する2つの区間の境界の時刻,これらの各 時刻における重心のz成分やその変化速度,歩 開始時刻t 0 や歩行終了時刻t f における重心のx,y成分なども図示しないスイ ッチ等により設定できるものとしてもよい。

 第1実施例や第2実施例のロボット装置20,20 Bでは、制御ユニット32は、ジョイスティック 40と共に操作装置30が備えるものとしたが、 ョイスティック40と一体でないもの、例えば 、二足歩行ロボット22に搭載されるものとし もよい。

 ここで、実施例や変形例の主要な要素と課 を発明の開示の欄に記載した発明の主要な 素との対応関係について説明する。第1実施 例では、式(52),(53)により表わされる運動方程 式における二足歩行ロボット22の重心のz成分 z(t)に関する項と1次式(a1t+a0)とからなる式(56) 解としての式(35)を用いて区間1~区間Mの各区 間Jの任意の時刻tにおける二足歩行ロボット2 2の重心のz成分z (J) (t)を演算すると共に式(52),(53)における重心の z成分z(t)に関する項を1次式(a1t+a0)で置いた式( 57),(58)の解としての式(41),(42)を用いて区間1~ 間Mの各区間Jの任意の時刻tにおける二足歩 ロボット22の重心のx,y成分x (J) (t),y (J) (t)を演算する処理を実行する制御ユニット32 「目標位置演算手段」に相当し、演算した 心のx,y,z成分x (J) (t),y (J) (t),z (J) (t)を用いて二足歩行ロボット22の各関節kの目 標角度θ k (J) (t)を演算する処理を実行する制御ユニット32 「歩容生成手段」に相当する。第2実施例で は、式(52),(53)により表わされる運動方程式に おける二足歩行ロボット22の重心のz成分z(t) 関する項と1次式の逆数(1/(a1t+a0))とからなる (86)の解としての式(69)を用いて区間1~区間M 各区間Jの任意の時刻tにおける二足歩行ロボ ット22の重心のz成分z (J) (t)を演算すると共に式(52),(53)における重心の z成分z(t)に関する項を1次式の逆数(1/(a1t+a0))で 置いた式の解としての式(79),(80)を用いて区間 1~区間Mの各区間Jの任意の時刻tにおける二足 行ロボット22の重心のx,y成分x (J) (t),y (J) (t)を演算する処理を実行する制御ユニット32 「目標位置演算手段」に相当し、演算した 心のx,y,z成分x (J) (t),y (J) (t),z (J) (t)を用いて二足歩行ロボット22の各関節kの目 標角度θ k (J) (t)を演算する処理を実行する制御ユニット32 「歩容生成手段」に相当する。なお、実施 や変形例の主要な要素と課題を発明の開示 欄に記載した発明の主要な要素との対応関 は、実施例が課題を発明の開示の欄に記載 た発明を実施するための最良の形態を具体 に説明するための一例であることから、課 を発明の開示の欄に記載した発明の要素を 定するものではない。即ち、課題を発明の 示の欄に記載した発明についての解釈はそ 欄の記載に基づいて行なわれるべきもので り、実施例は課題を発明の開示の欄に記載 た発明の具体的な一例に過ぎないものであ 。

 実施例では、ロボット装置20の形態とし 説明したが、二足歩行ロボットの歩容を生 する歩容生成装置の形態や歩容生成方法の 態として用いるものとしてもよい。

 以上、本発明を実施するための最良の形 について実施例を用いて説明したが、本発 はこうした実施例に何等限定されるもので なく、本発明の要旨を逸脱しない範囲内に いて、種々なる形態で実施し得ることは勿 である。

 本発明は、二足歩行ロボットの歩容生成 置の製造産業などに利用可能である。