Nothing Special   »   [go: up one dir, main page]

JP4682791B2 - 操作空間物理量算出装置及び操作空間物理量算出方法、並びにコンピュータ・プログラム - Google Patents

操作空間物理量算出装置及び操作空間物理量算出方法、並びにコンピュータ・プログラム Download PDF

Info

Publication number
JP4682791B2
JP4682791B2 JP2005298090A JP2005298090A JP4682791B2 JP 4682791 B2 JP4682791 B2 JP 4682791B2 JP 2005298090 A JP2005298090 A JP 2005298090A JP 2005298090 A JP2005298090 A JP 2005298090A JP 4682791 B2 JP4682791 B2 JP 4682791B2
Authority
JP
Japan
Prior art keywords
operation space
acceleration
force
physical quantity
calculation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2005298090A
Other languages
English (en)
Other versions
JP2007108955A (ja
Inventor
憲一郎 長阪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2005298090A priority Critical patent/JP4682791B2/ja
Priority to US11/544,052 priority patent/US8140189B2/en
Publication of JP2007108955A publication Critical patent/JP2007108955A/ja
Application granted granted Critical
Publication of JP4682791B2 publication Critical patent/JP4682791B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1671Programme controls characterised by programming, planning systems for manipulators characterised by simulation, either to verify existing program or to create and verify new program, CAD/CAM oriented, graphic oriented programming systems
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39184Forward compensation in robot world space, inverse in joint space
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39299Learn forward dynamics

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Description

本発明は、脚式移動ロボットなど、複雑なリンク構造を有し、外界とのインタラクションを行ないながらタスクを遂行するロボットの動作を制御するために必要となる物理量を算出する操作空間物理量算出装置及び操作空間物理量算出方法に係り、特に、複数の剛体が連なって構成されるリンク構造体の動作に力制御を取り入れて、外力に柔軟に応じながら速度や加速度の制御を精密に行なうために必要となる物理量を算出する操作空間物理量算出装置及び操作空間物理量算出方法に関する。
さらに詳しくは、本発明は、力制御系で駆動されるリンク構造物に作用する力と加速度の関係を記述する操作空間における物理量を算出する操作空間物理量算出装置及び操作空間物理量算出方法に係り、特に、1つの操作空間が構造物の複数点の位置及び姿勢に関わる場合にも適用可能な操作空間物理量算出装置及び操作空間物理量算出方法に関する。
最近、脚式移動ロボットの構造やその安定歩行制御に関する研究開発が進展し、実用化への期待も高まってきている。これら脚式移動ロボットは、クローラ式ロボットに比し不安定で姿勢制御や歩行制御が難しくなるが、階段の昇降や障害物の乗り越えなど、柔軟な歩行・走行動作を実現できるという点で優れている。例えば、移動手段としての脚を備え、接地・無接地間を遷移する安定な運動パターンを実時間で生成することができるヒューマノイド・ロボットについて提案がなされている(例えば、特許文献1を参照のこと)。
従来の脚式ロボットは、制御上の簡便さやシステムの構成し易さから、位置制御によって駆動される関節によって構成されるものが大半である。位置制御は、基本的に位置を保持することが目的であることから、俗に「硬い制御」と呼ばれ、外力に柔軟に応じたり、速度や加速度の制御を精密に行なったりするのには適さない。
とりわけ、パートナー型の脚式ロボットは、多様な外界との物理インタラクションを行ないながらタスクを遂行するロボットであることから、本来は位置制御との親和性は低い。制御則、システム構成は複雑化するが、理想的には、力制御系で駆動されることが望まれる。
ここで、力制御系のロボット制御において、「操作空間(Operational Space)」と呼ばれる重要な概念がある。この操作空間とは、ロボットに作用する力と発生する加速度の関係を記述するための空間のことである。例えば、ロボットの関節角を位置制御ではなくトルク制御する際に、ロボットと環境との接し方を拘束条件に用いるときに、操作空間が必須になる。ここで言う拘束条件とは、例えば、ロボットの自己干渉に対する拘束条件、関節可動角の拘束条件、「手が物にフィットする」や「左右の眼が水平になる」といった事象が挙げられる。
剛体が関節を介して連なった構造物において、関節の値をすべて連ねてできるベクトルを一般化変数と呼び、qで表すものとする。この一般化変数qの時間微分値との関係がヤコビアンJを用いて下式(1)に示す形に関連付けられたとき、物理量xに対して操作空間を定義することができる。
Figure 0004682791
直感的には、マニピュレータ先端の手先位置姿勢やその他のエンド・エフェクタなど、タスク遂行のためのデカルト座標系が操作空間の一例である(例えば、非特許文献1を参照のこと)。
操作空間すなわち物理量xの加速度と力の関係については後に詳解するが、基本的には操作空間慣性逆行列と呼ばれる行列によって与えられる。すなわち、操作空間慣性逆行列は、力と加速度を紐付けする表現方法であり、下式(2)に示す行列Λ-1として定義される。但し、Hは構造全体の関節空間に対する慣性行列である。
Figure 0004682791
操作空間慣性逆行列は、力制御、力学シミュレーション、コンピュータ・アニメーション、姿勢編集、外力推定など、多くの分野への応用を可能にする重要な物理量である。例えば、動力学を考慮した拘束条件を追加して関節加速度を計算し、又はリンクに働く力とそれによる加速度との関係を表す操作空間慣性逆行列を用いて定式化された動力学的な拘束条件と、運動学的な拘束条件とを連立させて解くことにより、人型リンク形の関節の運動を生成する運動生成方法について提案がなされている(例えば、特許文献2を参照のこと)。
しかしながら、上式(2)に示した定義通りの計算では、操作空間慣性逆行列の算出には非常に多くの計算量となるため、実時間処理に向かないという問題がある。
例えば、上式(2)において構造物の自由度(関節数) をNとすると、慣性行列H はN×Nのサイズを有する。一方、操作空間xの次元をMとすると、Λ-1のサイズはM×Mであり、N>Mの場合は明らかに、定義式(2)に基づいて計算すると計算の無駄が発生する。特に、ヒューマノイドのようにN=30以上の多くの関節を有している場合、この差はより顕著となり、操作空間慣性逆行列をリアルタイムで算出すること自体が困難となる。多くの場合、ロボットの自由度数Nよりも操作自由度Mの方が小さい。よって、慣性行列Hを介することなく、操作空間慣性逆行列Λ-1を直接的に求められることが望ましい。
このような問題を解決するために、操作空間慣性逆行列の直接解法が提案されている。一例として、加速度伝播子と力伝播子という物理量を用いて、操作空間慣性逆行列Λ-1のブロック対角成分とブロック非対角成分を動力学演算により直接求める方法が提案されている(例えば、非特許文献2を参照のこと)。しかし、その適用対象は、1つの操作空間がリンク構造物の1点の位置及び姿勢に対応するケースに限定されている。例えば、図17に示すような多軸ロボットについて考えると、同図左に示すように1つの操作空間に対応する力がロボットの構造上の1点Aのみである場合には適用できるが、同図右に示すように2点B及びC間の相対位置と姿勢というように、1つの操作空間に対応する力がロボットの構造上の2点以上に作用する場合には直接適用することはできない。
図17右に示した例では、B及びCそれぞれの点における操作空間慣性逆行列をまず求めた後、これらの差をとるなどの方法をとることにより最終的には算出することはできるものの、計算の無駄が発生する。また、力の作用点B及びC間の衝突、すなわち移動ロボットのリンク間の干渉(自己干渉)を扱う場合に必須となる。
その他、脚式移動ロボットの力制御では、構造物全体の重心や運動量を操作空間の考えに基づいてコントロールすることが必要である。とりわけ2足移動型のヒューマノイドなどでは、そのバランス制御のために機体全体の重心と運動量は必須な要素と言える。重心や運動量を操作空間とする場合、詳しくは後述するが、図18に示すように、1つの操作空間に対応する力がすべてのリンクの重心位置に作用する。これについても上述の自己干渉の例と同様の理由で、操作空間慣性逆行列の直接解法(非特許文献2を参照のこと)を適用することができない。また、すべてのリンクの力を計算しようとしても、操作空間慣性逆行列Λ-1のみならず、ヤコビアンJの算出にも相当の計算を有し、多大な計算負荷を発生してしまう。
特開2004−167676号公報 特開2003−231077号公報 A unified approach to motion and force controlof robot manipulators:The operational space formulation, IEEE Journal of Roboticsand Automation,RA−3(1),pp.43−53,1987 Operational Space Dynamics: Efficient Algorithms for Modelingand Control of Branching Mechanisms,Proc.of the 2000 IEEE Int.Conf.on Robotics andAutomation,pp.850−856,2000
本発明の目的は、脚式移動ロボットなど、複雑な構造を有し、外界とのインタラクションを行いながらタスクを遂行するロボットの動作に力制御を取り入れて、外力に柔軟に応じながら速度や加速度の制御を精密に行なうために必要となる物理量を好適に算出することができる、優れた操作空間物理量算出装置及び操作空間物理量算出方法を提供することにある。
本発明のさらなる目的は、タスクを遂行するロボットなどの複雑なリンク構造物を力制御下で動作させるのに重要な物理量である操作空間慣性逆行列並びにそれに付随するバイアス加速度を高速に算出することができる、優れた操作空間物理量算出装置及び操作空間物理量算出方法を提供することにある。
本発明のさらなる目的は、1つの操作空間が構造物の複数点の位置及び姿勢に関わる場合にも適用可能な、効率のよい操作空間慣性逆行列の直接的算出を行なうことにより、脚式移動ロボットの力制御を好適に実現することができる、優れた操作空間物理量算出装置及び操作空間物理量算出方法を提供することにある。
本発明のさらなる目的は、重心、角運動量といった操作点を持たない物理量に対する操作空間(運動量操作空間)を定義して、その操作空間慣性逆行列を求めることにより、力制御下で構造物全体の運動量を制御することができる、優れた操作空間物理量算出装置及び操作空間物理量算出方法を提供することにある。
本発明は、上記課題を参酌してなされたものであり、その第1の側面は、複数の剛体が連なって構成されるリンク構造物に作用する力と加速度の関係を記述する操作空間における物理量を算出する操作空間物理量算出装置であって、前記リンク構造物の力学モデルと、前記リンク構造物に作用する力情報に基づいて前記リンク構造物の各点に発生する加速度を得るための順動力学演算を実行する順動力学演算手段と、前記リンク構造物の力学モデルを用いて前記順動力学演算手段による順動力学演算を実行させることにより、操作空間慣性逆行列及び操作空間バイアス加速度を求める操作空間物理量算出手段と、を具備することを特徴とする操作空間物理量算出装置である。
脚式ロボットを始めとするリンク構造物の動作制御は、制御上の簡便さやシステムの構成し易さの観点から、位置制御を採用するのが一般的であったが、外力に柔軟に応じたり、速度や加速度の制御を精密に行なったりするのには適さない。言い換えれば、制御則、システム構成は複雑化するが、理想的には、力制御系で駆動されることが望まれる。
力制御系では、ロボットに作用する力と発生する加速度の関係を記述するための、「操作空間」という重要な概念がある。ロボットの関節角を位置制御ではなく力制御する際にロボットと環境の接し方を拘束条件として用いるときに、操作空間が必須となる。操作空間、すなわち加速度と力の関係は操作空間慣性逆行列によって与えられる。
しかしながら、定義通りの計算では、構造全体の関節空間に対する慣性行列Hが介在して計算の無駄が発生するために、操作空間慣性逆行列の算出には非常に多くの計算量となるため、実時間処理に向かないという問題がある。また、この問題を解決するために、加速度伝播子と力伝播子という物理量を用いて、操作空間慣性逆行列Λ-1のブロック対角成分とブロック非対角成分を動力学演算により直接求める方法が提案されているが、その適用対象は1つの操作空間がリンク構造物の1点の位置及び姿勢に対応するケースに限定されて、1つの操作空間に対応する力がロボットの構造上の2点以上に作用する場合には直接適用することはできない。
そこで、本発明では、リンク構造物の一般化力(関節力)から一般化加速度(関節加速度)を得る順動力学演算を応用することで、操作空間慣性逆行列を高速に算出するとともに計算負荷の軽減を図ることにした。
前記操作空間物理量算出手段は、前記リンク構造物の関節に発生する力、関節の速度、重力をすべてゼロとし、外力のみが作用し得る制約条件下で順動力学演算を実行させて、リンク構造物の各点に発生する加速度を得ることができる。i番目の操作空間にのみ単位外力を作用させる制約条件下で順動力学演算を実行して操作空間慣性逆行列の第i列を順次算出することにより、操作空間慣性逆行列全体を求めることができる訳である。
また、前記操作空間物理量算出手段は、外力をゼロとし、関節に発生する力、関節の速度、重力のみが作用する制約条件下で順動力学演算を実行して、リンク構造物の各点に発生する加速度を操作空間バイアス加速度として求めることができる。
また、順動力学演算手段は、順動力学演算を4過程に分解して、イナーシャ情報算出⇒速度情報算出⇒力情報算出⇒加速度情報算出の順で実行するようにしてもよい。このような場合、脚式移動ロボットなどのリンク構造物に任意の力を作用させた条件下で任意の場所並びに方向に発生する加速度を得ることができる。すなわち、順動力学演算は、その特質上、同時に複数の力を作用させたり、複数点における加速度を算出したりといったことを自在に行なうことができることから、1つの操作空間が構造物の複数点の位置及び姿勢に関わる場合の操作空間慣性逆行列の算出にも容易に応用が可能となる。
また、前記順動力学演算手段は、同時に複数の外力を作用できるように順動力学演算を構成したり、複数の点の加速度を算出できるように順動力学演算を構成したりすることができる。
また、順動力学演算手段は、順動力学演算を4過程に分解して実行する際に、それぞれの過程を最適化することができる。
例えば、イナーシャ情報は、リンク構造物の姿勢(すなわち関節値)が変化しない限り変化しないことから、前記順動力学演算手段は、一般化変数としての関節値qが変化したときに一度だけイナーシャ情報を算出するようにしてもよい。
また、操作空間慣性逆行列を求める際には、すべての関節速度がゼロに設定されるため、vi=0は自明であるから、前記順動力学演算手段は、操作空間バイアス加速度を算出するときにのみ速度情報の算出を実行し、操作空間慣性逆行列を算出するときには実行しないようにしてもよい。
また、操作空間慣性逆行列を算出する際には、関節の速度と関節に発生する力はゼロであるから、前記順動力学演算手段は、これらを含む項の計算を省略することで、力情報算出を最適化することができる。
また、力の作用点と基底を結ぶ経路上にないリンクではバイアス力pA i=0が自明なので、前記順動力学演算手段は、力の作用点と基底を結ぶ経路上のリンクに関してのみリンクのバイアス力pA iを算出することで、力情報の算出を最適化することができる。
また、順動力学演算手段は、操作空間慣性逆行列を求める際には、関節の速度と関節に発生する力はゼロであること、並びに力情報の最適化の結果を考慮して、加速度情報算出を最適化することができる。その際、ある点の加速度算出を行なう場合、既に加速度算出の行なわれた最寄りの点を起点として前記のある点に向かう曲線上の経路に沿って加速度更新を実行することにより、加速度情報算出をより最適化することができる。また、操作空間バイアス加速度を算出する際には、基底から加速度算出を行なうリンクに向かう経路上でのみ加速度算出を行なうことによって、加速度情報算出を最適化することができる。
このように、順動力学演算を構成する4つの過程それぞれにおいて最適化を実施することにより、1つの操作空間が構造物の複数点の位置及び姿勢に関わる場合にも順動力学演算を適用することができるようになり、且つ高速に操作空間慣性逆行列を算出することが可能である。
また、操作空間慣性逆行列は対称行列となるので、前記操作空間物理量算出手段は、操作空間慣性逆行列の上三角行列又は下三角行列のみを算出するようにしてもよい。
また、前記順動力学演算手段は、剛体間の再帰演算で構成することができる。この場合、再帰演算の対象となる剛体を抽出する計算経路決定手段をさらに備え、前記順動力学演算手段は、前記計算経路決定手段により決定される剛体のみを再帰演算の対象とするようにすればよい。
上述した操作空間慣性逆行列並びに操作空間バイアス加速度の計算方法は、グリッド・コンピュータやクラスタPCとも呼ばれる並列計算機上で実行することで、さらに高速化することができる。何故ならば、操作空間慣性逆行列はM×Mの正方行列であるが、その各要素は別々のCPUで独立に求めることができるからである。また、操作空間バイアス加速度は要素数Mのベクトルであるが、その各要素も別々のCPUで独立に求めることができる。
例えば、前記順動力学演算手段は、操作空間慣性逆行列用の力情報を算出するためのプロセッサを操作空間慣性逆行列の列毎に独立に設け、各列の演算を並列実行することができる。この場合、さらに、前記の列毎に設けられたプロセッサから出力される力情報を用いて操作空間慣性逆行列用の加速度情報を算出するためのプロセッサを行毎に独立に設け、同一列内の行方向の各要素の演算を並列実行することができる。
また、前記順動力学演算手段は、操作空間バイアス加速度用の力情報を算出するためのプロセッサをバイアス加速度ベクトルの行毎に独立に設け、バイアス加速度用加速度情報の各行の演算を並列実行することができる。
このように、操作空間慣性逆行列及びバイアス加速度を並列計算するように装置を構成することで、行列又はベクトルの要素毎に並列に計算が行なわれることから、行列又はベクトルの1要素を計算する計算時間と同程度の時間で全要素の算出を完了することができるので、全体として大幅な高速化を図ることができる。勿論、操作空間慣性逆行列の各要素をすべて並列実行するのではなく、その一部を並列化して実行するのみでも大幅な高速化を図ることができる。
あるいは、前記順動力学演算手段は、前記の列毎に設けられたプロセッサから出力される力情報を用いて操作空間慣性逆行列用の加速度情報を算出するためのプロセッサを列毎に1つずつ設け、それぞれの列でプロセッサを繰り返し用いて1列分の加速度を算出するようにしてもよい。このような場合、操作空間慣性逆行列の列毎に並列に計算が行なわれることから、操作空間慣性逆行列の行数に比例した時間内で操作空間慣性逆行列の全要素の算出を完了することができ、効果的に高速化を図ることができる。
このように、本発明によれば高い汎用性と高速性を兼ね備えた操作空間慣性逆行列の算出が可能である。脚式移動ロボットを力制御下で全身運動を実行する際には、多数の拘束条件を考慮してタスクを遂行しなければならないが、本発明を適用することにより、現在の計算機速度でも実現可能である。
例えば、前記リンク構造物を力制御下で動作制御するために用いられる場合には、該求められた操作空間慣性逆行列及び操作空間バイアス加速度を用いて前記リンク構造物における関節力を決定する関節力決定手段をさらに備えていればよい。この前記関節力決定手段は、操作空間慣性逆行列及び操作空間バイアス加速度を用いて記述される操作空間における加速度と力との関係を記述した等式と、前記リンク構造体のリンク同士及びリンクと環境との間で形成される拘束条件からなる線形相補性問題を満足する加速度と力を、前記操作空間物理量算出手段により求められた操作空間慣性逆行列及び操作空間バイアス加速度を用いて求めることができる。そして、得られた力に基づいてリンクの関節力を決定するようにすればよい。
また、本発明の第2の側面は、複数の仮想物体が共存する仮想環境内で、仮想物体間の衝突又は接触その他の物理的相互作用を再現する力学シミュレーション装置であって、物理的相互作用が働く仮想物体の力学モデルと、物理的相互作用による外力に基づいて仮想物体に発生する加速度を得るための順動力学演算を実行する順動力学演算手段と、仮想物体の力学モデルを用いて前記順動力学演算手段による順動力学演算を実行させることにより、操作空間慣性逆行列及び操作空間バイアス加速度を求める操作空間物理量算出手段と、操作空間慣性逆行列及び操作空間バイアス加速度を用いて記述される操作空間の加速度と力との関係式と、仮想物体間で物理的相互作用が働いたときに課せられる拘束条件からなる線形相補性問題を満足する加速度と力を、前記操作空間物理量算出手段により求められた操作空間慣性逆行列及び操作空間バイアス加速度を用いて求め、得られた力に基づいて仮想物体に働く外力を決定する外力決定手段と、を具備することを特徴とする力学シミュレーション装置である。
本発明に係る操作空間慣性逆行列の算出方法は、ロボットの力制御だけでなく、力学シミュレーション、コンピュータ・アニメーション、姿勢編集、外力推定など、多くの分野に適用することができる。例えば、仮想環境内に複数の物体が共存し、それらの間の衝突や接触といった物理的相互作用を計算機上で再現する力学シミュレーションを実時間で実行したり、その中のオブジェクトを操作したりする場合にも有効である。力学シミュレーションの力学演算は、順動力学演算に対し、物体間の力を外力として作用させることで実行することにより、複雑な環境であってもリアルタイムで精緻な力学シミュレーションを実行することが可能となる。
例えば、前記操作空間物理量算出手段は、物理的相互作用によって仮想物体に働く垂直反力及び摩擦力の作用方向に操作空間を設定し、前記外力決定手段は、仮想物体間に指定した反発係数の反発と適切な摩擦力を実現させるための拘束条件を用いて線形相補性問題を設定し、該線形相補性問題を解決することによって、物理的相互作用が発生したときに仮想物体に働く外力を決定することができる。
また、前記操作空間物理量算出手段は、仮想物体間の相対位置偏差方向に操作空間を設定し、前記外力決定手段は、仮想物体間が指定した相対位置となるための拘束条件を用いて線形相補性問題を設定し、該線形相補性問題を解決することによって、物理的相互作用が発生したときに仮想物体に働く外力を決定することができる。
また、物理的相互作用が働く仮想物体が人型キャラクタのような複数の剛体が連なって構成されるリンク構造物である場合には、前記外力決定手段は、前記リンク構造物を構成する各リンクの位置又は姿勢に関する拘束条件を用いて線形相補性問題を設定するようにすればよい。
また、この力学シミュレーション装置は、前記外力決定手段により決定された外力をアクチュエータによって発生して提示する力提示手段をさらに備えていてもよい。この力提示手段により、仮想環境内の物体に触れた感じをリアルタイムに且つ精密に再現することが可能となる。あるいは、仮想空間内の物体の所定の位置を引張ったり捩じったりしたときに仮想物体に作用する力をフィードバックすることにより、仮想環境内で引張ったり捩じったりした反力を精緻に感じとることもできる。
したがって、例えばユーザは、実際の物体を触れて姿勢を編集するのと同様の力をリアルタイムに感じながら、キャラクタの運動制御や姿勢編集などを行なうことができるようになる。また、このような力ベースの姿勢編集により、逆キネマティクスによく見られる特異点付近での不安定な挙動も除去することができる。
また、本発明の第3の側面は、複数の剛体が連なって構成されるリンク構造物に作用する力と加速度の関係を記述する操作空間における物理量を算出するための処理をコンピュータ・システム上で実行させるようにコンピュータ可読形式で記述されたコンピュータ・プログラムであって、前記コンピュータ・システムに対し、前記リンク構造物の力学モデルと、前記リンク構造物に作用する力情報に基づいて前記リンク構造物の各点に発生する加速度を得るための順動力学演算を実行させることにより、操作空間慣性逆行列を求める操作空間慣性逆行列算出手順と、前記順動力学演算を実行させることにより、操作空間バイアス加速度を求める操作空間バイアス加速度算出手順と、を実行させることを特徴とするコンピュータ・プログラムである。
また、本発明の第4の側面は、複数の仮想物体が共存する仮想環境内で、仮想物体間の衝突又は接触その他の物理的相互作用を再現する力学シミュレーション方法をコンピュータ・システム上で実行させるようにコンピュータ可読形式で記述されたコンピュータ・プログラムであって、前記コンピュータ・システムに対し、物理的相互作用が働く仮想物体の力学モデルと、物理的相互作用による外力に基づいて仮想物体に発生する加速度を得るための順動力学演算を実行させることにより、操作空間慣性逆行列及び操作空間バイアス加速度を求める操作空間物理量算出手順と、操作空間慣性逆行列及び操作空間バイアス加速度を用いて記述される操作空間の加速度と力との関係式と、仮想物体間で物理的相互作用が働いたときに課せられる拘束条件からなる線形相補性問題を満足する加速度と力を、前記操作空間物理量算出手段により求められた操作空間慣性逆行列及び操作空間バイアス加速度を用いて求め、得られた力に基づいて仮想物体に働く外力を決定する外力決定手順と、を実行させることを特徴とするコンピュータ・プログラムである。
本発明の第3及び第4の各側面に係るコンピュータ・プログラムは、コンピュータ・システム上で所定の処理を実現するようにコンピュータ可読形式で記述されたコンピュータ・プログラムを定義したものである。換言すれば、本発明の第3及び第4の各側面に係るコンピュータ・プログラムをコンピュータ・システムにインストールすることによって、コンピュータ・システム上では協働的作用が発揮され、本発明の第1及び第2の各側面に係る操作空間物理量算出装置及び力学シミュレーション装置のそれぞれと同様の作用効果を得ることができる。
本発明によれば、脚式移動ロボットなど、複雑な構造を有し、外界とのインタラクションを行ないながらタスクを遂行するロボットの動作に力制御を取り入れて、外力に柔軟に応じながら速度や加速度の制御を精密に行なうために必要となる物理量を好適に算出することができる、優れた操作空間物理量算出装置及び操作空間物理量算出方法を提供することができる。
また、本発明によれば、高速な順動力学演算を応用することで、ロボットを力制御下で動作させるのに重要な物理量である操作空間慣性逆行列並びにそれに付随するバイアス加速度を高速で且つ低い計算負荷で算出することができる、優れた操作空間物理量算出装置及び操作空間物理量算出方法を提供することができる。
また、本発明によれば、重心、角運動量といった操作点を持たない物理量に対する操作空間(運動量操作空間)を定義して、その操作空間慣性逆行列を求めることができる、優れた操作空間物理量算出装置及び操作空間物理量算出方法を提供することができる。
本発明によれば、操作空間慣性逆行列を複数のCPUを用いた並列計算によりさらに高速に求めることができる。
本発明によれば、順動力学演算を基本とするアルゴリズム構成とすることで、1つの操作空間が構造物の複数点の位置及び姿勢に関わるような操作空間慣性逆行列(及び操作空間バイアス・ベクトル)に関しても、優れた計算効率で算出することが可能である。
本発明は、リンク構造体の力制御に広範に適用することが可能である。例えば、複雑な構造体の運動に多様な拘束が課される場合であっても、高速に操作空間慣性逆行列(及び操作空間バイアスベクトル)を得ることができ、リアルタイムで力制御を行なうことができる。また、自己干渉や重心操作や角運動量など、1つの操作空間が構造物の複数点に対応する場合も効率的に扱うことができ、より高度な制御を実現することができる。
また、本発明を剛体力学シミュレーションの衝突力算出に応用することで、高速なシミュレーションを実現することができる。例えば、図17右に示した例では、2つの剛体間の相対位置に操作空間を取り入れることにより剛体間の衝突で扱うことができる。本発明によれば、このように1つの操作空間が構造物の複数点に対応する場合も高速に操作空間慣性逆行列(及び操作空間バイアスベクトル)を得ることができる。
また、本発明による操作空間慣性逆行列のリアルタイム算出を応用して、ハプティクス・デバイスを用いた精緻な力覚提示、力覚提示を受けながらリアリティの高いキャラクタポーズ編集などを行なうことも可能である。
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施形態や添付する図面に基づくより詳細な説明によって明らかになるであろう。
以下、図面を参照しながら本発明の実施形態について詳解する。
本発明は、力制御を取り入れることで、複雑な構造を有する脚式移動ロボットが外界とのインタラクションを行ないながらタスクを遂行する動作を、外力に柔軟に応じながら速度や加速度の制御を精密に行なう動作制御装置に関する。本発明では、高速な順動力学演算を応用することで、ロボットを力制御下で動作させるのに重要な物理量である操作空間慣性逆行列を高速に算出して、リアルタイムな力制御を実現する。
ロボット装置の構成:
図1には、本発明に係る力制御の適用対象となるロボット装置の外観構成を示している。図示のロボット装置は、いわゆる人間型ロボットであり、骨盤部には、移動手段としての2肢の脚体と、腰関節を介して上体が接続されている。上体には、2肢の腕部と、首関節を介して頭部が接続されている。
左右の脚体は、それぞれ股関節3自由度と、膝関節1自由度と、足首関節2自由度の、計6自由度を備えている。また、左右の腕部は、それぞれ肩関節3自由度と、肘関節1自由度と、手首関節2自由度の、計6自由度を備えている。首関節及び腰関節は、ともにX、Y、Z軸回りに3自由度を有するとする。
各関節軸を駆動するアクチュエータは、例えばDCブラシレス・モータと減速機、並びに減速機の出力軸の回転位置を検出する位置センサで構成される。これら関節駆動アクチュエータは、ロボット装置全体の動作を統括的にコントロールするホスト・コンピュータと接続され、その位置制御目標値が与えられるとともに、現在の出力トルクや、関節角度、関節角速度をホスト・コンピュータに送信することができるものとする。
図2には、図1に示したロボット装置における結線トポロジの構成例を示している。また、図3には、図1に示したロボット装置の関節自由度モデルを示している。
ロボット装置は、胴体部に、3軸の腰関節アクチュエータa1、a2、a3、及び3軸の首関節アクチュエータa16、a17、a18を持ち、これらはホスト・コンピュータに対しシリアル接続されている。各関節アクチュエータは、シリアル・ケーブルを通じて、その位置制御目標値を受け取るとともに、現在の出力トルクや、関節角度、関節角速度をホスト・コンピュータに送信する。
また、ロボット装置は、左腕部に、3軸の肩関節アクチュエータa4、a5、a6、1軸の肘関節アクチュエータa7、及び2軸の手首関節アクチュエータa8、a9を持ち、これらはホスト・コンピュータに対しシリアル接続されている。同様に、右腕部には、3軸の肩関節アクチュエータa10、a11、a12、1軸の肘関節アクチュエータa13、及び2軸の手首関節アクチュエータa14、a15を持ち、これらはホスト・コンピュータに対しシリアル接続されている。
また、ロボット装置は、左脚部に、3軸の股関節アクチュエータa19、a20、a21、1軸の膝関節アクチュエータa22、及び2軸の足首関節アクチュエータa23、a24を持ち、これらはホスト・コンピュータに対しシリアル接続されている。同様に、右脚部には、3軸の肩関節アクチュエータa25、a26、a27、1軸の肘関節アクチュエータa28、及び2軸の足首関節アクチュエータa29、a30を持ち、これらはホスト・コンピュータに対しシリアル接続されている。
各関節で使用されるアクチュエータa1〜a30は、例えばDCブラシレス・モータと減速機、並びに減速機の出力軸の回転位置を検出する位置センサで構成され、外部から与えられた位置制御目標値に従って回転駆動するとともに、現在の出力トルクや、関節角度、関節角速度を出力する。この種の関節アクチュエータについては、例えば本出願人に既に譲渡されている特開2004−181613号公報に記載されている。
図3から分るように、2足歩行の移動ロボットを、骨盤Bを基底とする開リンク木構造として表現することができる。
移動ロボットの場合、ロボットがワールド空間中を自由に移動し、姿勢を変化させることができる。したがって、ロボット全体の状態を表すための状態変数として、骨盤Bのオイラー角α=(α,β,γ)Tとその位置p0(p0x,p0y,p0zTを導入する。すると、ロボットは複数の剛体が連なって構成されるリンク構造物として扱うことができるので、ロボットの運動方程式は、下式(3)のような形で表現することができる。
Figure 0004682791
ここで、qはロボット全体の一般化変数であり、ロボットの運動状態としてのベースの姿勢α及び位置p0を並べたベクトルと、アクチュエータの現在状態としての全関節値を並べてできるベクトルθで構成される。すなわち、qは、リンク構造物としてのロボットの関節の値をすべて連ねてできるベクトルであり、下式(4)のような形で表現される。
Figure 0004682791
また、上式(3)中で、τは、一般化変数qに対応した一般化力であり、αとp0に対応する成分は(力を発生するアクチュエータが存在しないため)0となり、θに対応する成分は各関節部を駆動するアクチュエータの発生力に等しい。Hは、ロボット全体の慣性行列、bは重力やコリオリ力などを表す。fは外力である。Jは、外力作用方向に発生する速度と、一般化変数qの時間微分である一般化速度とを対応付けるヤコビアンであり、下式(5)の通りとなる。
Figure 0004682791
操作空間慣性逆行列の解法:
本発明は、リンク構造物の一般化力(関節力)から一般化加速度(関節加速度)を得る順動力学演算を応用することで、高速算出や計算負荷の軽減といった要求を満足する操作空間慣性逆行列解法を提供する。順動力学演算はいわゆる力学シミュレーションに用いられるコア演算であり、勢力的に高速化のための研究が行なわれてきた。また、順動力学演算の並列化手法も幾つか提案されている。本発明では、優れた順動力学演算をベースとすることで、高い演算効率の操作空間慣性逆行列解法を提供する。
既に述べたように、複数の剛体が連なって構成されるリンク構造物全体の運動方程式は下式(6)のような形で表現できることが知られている.
Figure 0004682791
ここで、τは一般化変数q に対応した一般化力、bは重力・コリオリ力、fは操作空間に作用する外力である。上式(6)を以下のように変形することができる。
Figure 0004682791
但し、cは操作空間バイアス加速度(外力が作用しない場合に操作空間に発生する加速度)であり、下式のように表される。
Figure 0004682791
上式(7)において、右辺から左辺を得ることを考えると、外力や一般化力、重力、速度積に関連する力(コリオリ力など)が作用したときの操作空間における加速度を求める問題と見ることができる。操作空間における加速度を求める点が通常の順動力学計算と異なるが、一種の順動力学演算と捉えることができる。順動力学演算FWDは、リンク構造物の関節の値をすべて連ねてできるベクトルである一般化変数qとその1次微分値一般化変数qに対応した一般化力としての関節トルクτ、重力g、並びに外力fをパラメータに持ち、下式(9)のように表現することができる。但し、gは重力加速度である。
Figure 0004682791
この順動力学演算FWDによれば、リンク構造物の関節の値をすべて連ねてできるベクトルである一般化変数qと、一般化力τ、重力g、外力fといったリンク構造物に作用する力情報から、リンク構造物の各点に発生する加速度を得ることができる。ここで、上式(9)において、順動力学演算FWDの入力パラメータのうち一般化変数q及び外力f以外をすべて0とする制約条件下では、重力、関節力、速度積に関連する力(コリオリ力など)が発生しない状況において操作空間に発生する加速度を求めることができる。すなわち、式(8)においてバイアス加速度c=0とすることができる。さらに、f=ei、すなわち、i番目の操作空間にのみ単位外力を作用させる条件下で計算を実行すると、操作空間慣性逆行列Λ-1の第i列を求めることができることが分る。よって、下式(10)の演算をすべての行iについて実行すれば操作空間慣性逆行列Λ-1全体を得ることができる。
Figure 0004682791
また、上式( 9)の順動力学演算FWDを外力f=0とし、関節に発生する力及び関節の速度、重力のみが作用するという制約条件下で実行することで、下式(11)に示すように操作空間バイアス加速度cを抽出することができる。
Figure 0004682791
要するに、上式(10)及び(11)を併せて、リンク構造物の関節の値をすべて連ねてできるベクトルである一般化変数qを用いて順動力学演算FWDを実行することにより、操作空間における重要な物理量である操作空間慣性逆行列Λ-1と操作空間バイアス加速度cを求めることができる訳である。
順動力学演算を用いた操作空間慣性逆行列算出のための演算構成法:
以下では、具体的な順動力学演算を例にとって、操作空間慣性逆行列Λ-1及びこれに付随する操作空間バイアス加速度cを算出する演算装置の構成法について詳解する。順動力学演算は、当初は逆動力学演算(加速度から力を求める演算)を利用して構成する方法が一般的であったが、O(N3)の計算量を有し、自由度数が増すと演算量が嵩むという問題がある。その後、研究が進み、現在では、単一のCPUを用いてO(N)、複数のCPUを並列化してO(log(N))の計算量を達成することができるようになっている。
本明細書では、単一のCPUを用いた例(O(N))として、Articulated Body法を用いた構成方法について説明する。ArticulatedBody法自体については、例えば、“The calculation of robot dynamics using articulated−body inertias”(Int.J.RoboticsResearch,vol.2,no.1,pp.13−30,1983)に記載されている。本発明では、Articulated Body法をイナーシャ情報算出、速度情報算出、力情報算出、加速度情報算出の4つの過程に分解する。
イナーシャ情報算出:
イナーシャ情報は、すべてのリンクのIA i(Articulated Body Inertia)を、下式(12)をロボット装置の末端から基底に向かって実行することで求める。
Figure 0004682791
ここで、Iiはリンクiのイナーシャ、C(i)はリンクiの子リンクのインデックス集合とする。
速度情報算出:
速度情報は、すべてのリンクの原点の速度を、下式(13)を基底から末端に向かって実行することで求める。
Figure 0004682791
ここで、viはリンクiの速度、pはその親リンクのインデックス、Siはリンクiの関節の運動自由度を表す行列、qiはリンクiの関節値である。
力情報算出:
力情報は、すべてのリンクのバイアス力pA iを、下式(14)〜(15)を末端から基底に向かって実行することで求める。図4には、床面に設置された多リンク構成の装置において、末端から基底に向かって力情報を算出する通常の経路を示している。
Figure 0004682791
ここで、fkはリンクiの中でk番目の外力、F(i)はリンクiに作用する外力のインデックス集合、τiはリンクiの関節力である。
加速度情報算出:
加速度情報は、すべてのリンクの加速度aiを、下式(16)〜(17)を基底から末端に向かって実行することで求める。図5には、床面に設置された多リンク構成の装置において、基底から末端に向かって加速度情報を算出する通常の経路を示している。
Figure 0004682791
以上の結果、リンクiに作用する単位外力n方向に発生する物理量xの加速度を下式(18)で自由に求めることができる。
Figure 0004682791
なお、上記の計算で、速度情報算出の起点となる基底の速度はv0=0である。また、重力の効果は、加速度情報算出において、基底が重力加速度で上昇しているとして考慮する。
Figure 0004682791
4過程に分解した順動力学演算を、イナーシャ情報算出⇒速度情報算出⇒力情報算出⇒加速度情報算出の順で実行することにより、脚式移動ロボットなどのリンク構造物に任意の力を作用させた条件下で任意の場所並びに方向に発生する加速度を得ることができる。このように、順動力学演算は、その特質上、同時に複数の力を作用させたり、複数点における加速度を算出したりといったことを自在に行なうことができることから、1つの操作空間が構造物の複数点の位置及び姿勢に関わる場合の操作空間慣性逆行列の算出にも容易に応用が可能となる。
順動力学演算の最適化:
以上で上式(9)に示した順動力学演算の結果が得られたので、このままこの演算を式(10)及び式(11)のような形で応用することによって、操作空間慣性逆行列Λ-1並びに操作空間バイアス加速度cを算出することができる。しかしながら、未だ計算の無駄が含まれており、これらの算出のために、より最適化された算出手段を過程毎に用意することが望ましいと思料される。
イナーシャ情報算出の最適化:
上述したように、イナーシャ情報は、上式(12)をリンク構造物のすべてのリンクについて末端から基底に向かって実行することで求めることができる。同式から分るように、イナーシャ情報は、リンク構造物の姿勢(すなわち関節値)が変化しない限り変化しない。式(10)に示した操作空間慣性逆行列、及び式(11)に示した操作空間バイアス加速度式ともに、一般化変数としての関節値qが共通で変化しないことから、イナーシャ情報算出式(12)は一度だけ実行すればよい。
速度情報算出の最適化:
式(10)に示した操作空間慣性逆行列を求める際には、すべての関節速度がゼロに設定されるため、vi=0は自明である。したがって、式(13)に示した速度情報算出式を実行する必要はない。同式は、式(11)に示した操作空間バイアス加速度式を算出するときにのみ実行すればよい。
力情報算出の最適化:
式(10)に示した操作空間慣性逆行列を求める際には、関節の速度と関節に発生する力はゼロであるから、上式(14)〜(15)に示した力情報算出式は、下式(20)のように簡略化される。
Figure 0004682791
さらに、力の作用点と基底を結ぶルート上にないリンクではpA i=0が自明なので、力の作用点と基底を結ぶルート上のリンクに関してのみ上式(20)を実行すればよい。図6には、床面に設置された多リンク構成の装置において、A、B、及びCの3点に力が作用する場合を例にとって、末端から基底に向かって力情報を算出する最適化された経路を示している。同図に示すように、力の作用点と基底を結ぶ経路上にないリンクにおける計算が省略されている。
一方、上式(11)に示した操作空間バイアス加速度算出式では、fk=0ゆえに式(14)〜(15)に示した力情報算出式ではfkの項を省略できるが、算出ルートは図4に示した通り、すべてのリンクに関して実行する。
加速度情報算出の最適化:
式(10)に示した操作空間慣性逆行列を求める際には、上式(16)〜(17)に示した加速度情報算出式は、下式(21)〜(22)のように簡略化される。但し、iが力情報算出の経路上に存在しないときはpA i=0とする。また、重力加速度の含まれる項ではg=0とする。
Figure 0004682791
図7には、床面に設置された多リンク構成の装置において、D、E、及びFの3点における加速度を基底から末端に向かって算出するときの最適化された経路を示している。同図において、ハッチングが掛けられたリンクは、図6に示したようにA、B、及びCの3点に力が作用するときに力情報算出の経路となったリンクである。図7から分るように、力情報算出が実行されたリンクではpA iの値が代入されて計算が実施されるが、それ以外のリンクに対してはpA i=0ゆえ代入は行なわず、これによって計算が省略される。
続けて、図7中のG点の加速度算出を行なう場合、加速度情報は力情報が更新されない限り変化しないので、同図中で、既に加速度算出の行なわれたF点を起点として、ここからG点に向かう曲線上の経路に沿って加速度更新を追加で行なえばよい。
一方、上式(11)に示した操作空間バイアス加速度算出式では、上式(16)〜(17)に示した力情報算出式において省略可能な項はない。但し、図5に示した通常の加速度情報算出経路のようにすべてのリンクについて加速度情報算出を行なう必要はなく、操作空間慣性逆行列算出の場合と同様に、図7に示したように、基底から加速度算出を行なうリンクに向かう経路上でのみ加速度算出を行なえばよい。追加点の加速度算出を行なう場合も、操作空間慣性逆行列算出と同様、加速度算出が行なわれた最近傍のリンクを起点として加速度算出を追加して実行すればよい。
以上説明してきたように、順動力学演算を構成する4つの過程それぞれにおいて最適化を実施することにより、1つの操作空間が構造物の複数点の位置及び姿勢に関わる場合にも順動力学演算を適用することができるようになり、且つ高速に操作空間慣性逆行列を算出することが可能である。
単純な例への適用:
ここでは、図17に示したような(BとCの間で衝突(自己干渉)が生じる)、床面に設置された比較的単純なリンク構成の装置を例にとると、上述した方法により操作空間慣性逆行列を算出する手順は以下の通りとなる。
(ステップ1)末端から基底に向かってすべてのリンクに関して式(12)を実行して、イナーシャ情報を算出する。
(ステップ2)操作空間慣性逆行列を求める際に、速度情報の算出は不要である。
(ステップ3)B及びCの各点に(操作空間方向の)単位力を作用した状態で、B及びC点と基底を結ぶそれぞれの経路上のリンクに関して、末端から基底に向かって式(20)を実行して力情報を算出する。
(ステップ4)基底からB及びCの各点に向かって式(21)及び式(22)を実行して加速度情報を算出する。但し、起点の重力加速度gは0として算出する。
(ステップ5)B及びCの各点に対して式(18) を適用し両者の差をとれば、BとCの間の相対運動に関する操作空間慣性逆行列が得られる。但し、重力加速度gは0として算出する。
続いて、操作空間バイアス加速度を算出する手順は以下の通りとなる。
(ステップ1)イナーシャ情報は操作空間慣性逆行列で求められているので更新が不要である。
(ステップ2)基底から末端に向かってすべてのリンクに関して式(13)を実行して速度情報を算出する。
(ステップ3)すべてのリンクに一般化力τを作用した状態で、末端から基底に向かって式(14)を実行して力情報を算出する。
(ステップ4)基底からB及びCの各点に向かって式(16)及び式(17)を実行して加速度情報を算出する。
(ステップ5)式(18)をB及びCの各点に対して適用し両者の差をとれば、BとCの間の相対運動に関するバイアス加速度が得られる。
このように、本発明によれば、1つの操作空間が構造物の複数点の位置及び姿勢に関わる場合であっても、効率よく操作空間慣性逆行列及びバイアス加速度を得ることができる。
重心操作空間への適用例:
より複雑な例として、重心操作空間に関する操作空間慣性逆行列も本発明により効率的に求めることができる。
重心速度は下式(23)のように定義される。但し、xgはリンク構造全体の重心、xgiは剛体iの重心、Mはリンク構造全体の質量、miは剛体iの質量を表す。
Figure 0004682791
よって、重心の転置ヤコビアンは下式(24)で定義される。但し、Jgはリンク構造全体の重心ヤコビアン、Jgiは剛体iの重心ヤコビアンを表す。
Figure 0004682791
上式(24)から、重心に単位力を作用させるには、図18に示した複数の剛体リンクからなる構造体において、そのmi/M倍の力を各剛体の重心に作用させればよいことが分る。このとき、下式(25)を用いて重心に発生する加速度を算出すれば、操作空間慣性逆行列を求めることができる。
Figure 0004682791
したがって、重心操作空間における操作空間慣性逆行列は以下の手順に従って求めることができる。
(ステップ1)末端から基底に向かってすべてのリンクに関して式(12)を実行してイナーシャ情報を算出する。
(ステップ2)操作空間慣性逆行列を求める際に、速度情報の算出は不要である。
(ステップ3)図18に示すように、全リンクに(操作空間方向の)単位力のmi/M の力を作用した状態で、末端から基底に向かって式(20)を実行して力情報を算出する。
(ステップ4)基底から末端に向かって式(21)及び式(22)を実行して、加速度情報を算出する。但し、起点の重力加速度は0として算出する。
(ステップ5)式(18)を各剛体iの重心に対して適用して重心xgiの加速度を算出し、式(25)でリンク構造全体の重心に発生する加速度を算出することにより、操作空間慣性逆行列が得られる。但し、重力加速度は0として算出する。
この例のように、本発明によれば、同時に複数の力を作用しなければならない場合についても、効率良く操作空間慣性逆行列を得ることができる。
角運動量操作空間への適用例:
本発明の他の重要な応用例として、角運動量に関する操作空間慣性逆行列の算出を挙げることができるので、以下に詳解する。
重心回りの角運動量は、下式(26)のように定義される。但し、Lはリンク構造全体の角運動量、ωiは剛体iの角速度を表す。
Figure 0004682791
よって、角運動量の転置ヤコビアンは下式(27)で定義される。但し、JLはリンク構造全体の角運動量ヤコビアン、Jωiは剛体iの角速度ヤコビアンを表す。
Figure 0004682791
上式(27)より、角運動量操作空間に単位力を作用させるには、それに外積[−mi(xgi−xg)×]を掛けた力と、Iiを掛けたモーメントを各剛体の重心に作用させればよいことが分る。このときに角運動量操作空間に発生する加速度を下式(28)から算出すれば、操作空間慣性逆行列を求めることができる。
Figure 0004682791
本発明によれば、このように同時に複数の力やモーメントを作用させなければならない場合であっても、効率よく操作空間慣性逆行列を得ることができる。
全身運動制御への適用例:
ここまで説明してきたように、本発明によれば高い汎用性と高速性を兼ね備えた操作空間慣性逆行列の算出が可能である。脚式移動ロボットを力制御下で全身運動を実行する際には、多数の拘束条件を考慮してタスクを遂行しなければならないが、本発明を適用することにより、現在の計算機速度でも実現可能である。
図8には、脚式移動ロボットが全身運動を行なう際に考慮しなければならない拘束条件を図解している。同図(a)(b)(c)は環境との接触に関する拘束、(d)は自己干渉に関する拘束を表しており、垂直反力及び摩擦力の作用方向に操作空間を設定する。(e)は関節可動範囲に関する拘束であり、関節の回転方向に操作空間を設定する。(f)は物体に対する手先運動の拘束であり、物体とエンド・エフェクタの相対位置及び姿勢方向に操作空間を設定する。(g)は頭部カメラを水平に維持するための拘束であり、絶対空間における頭部の姿勢に関する操作空間を設定する。(h)は重心に関する拘束であり重心に関する操作空間を設定し、(i)は角運動量に関する拘束であり角運動量に関する操作空間を設定する。
これらの操作空間をすべてまとめた変数としてxを考えると、すべての拘束は以下のような不等式を含む線形拘束条件として記述することができる。
Figure 0004682791
ここで、上式(30)及び(31)中でそれぞれ存在するfNi及びfFiは、図8中で示した(a)(b)(c)のように外界との接触に関する拘束による作用点iにおける法線方向の外力及び摩擦力を表す。μiは当該作用点における摩擦係数である。
上式(29)〜(31)は線形相補性問題と呼ばれる。そして、操作空間慣性逆行列Λ-1及びバイアス加速度cが既知であれば、この線形相補性問題を解くことによって、これらを満足するxの加速度及び力fを決定することができる。線形相補性問題の数学的な解法自体については、例えば“FastContact Force Computation for Nonpenetrating Rigid Bodies”(SIGGRAPH94,pp.23−34,1994)に記載されているので、ここでは説明を省略する。
線形相補性問題としてxの加速度及び力fを求める場合の多くは、最も計算を要する部分は操作空間慣性逆行列Λ-1を得る部分となる。上述したように、本発明によれば、多様な操作空間に対しても高速な操作空間慣性逆行列の算出を行なうことができるので、ロボットの実機上でも実時間の処理が可能となる。こうして力fが得られれば、以下の操作空間制御(非特許文献1を参照のこと)により、上記で解いた拘束を満足する関節力τを下式(32)のように決定することができる。
Figure 0004682791
上式(32)において、τnullはfで表される拘束よりも優先順位の低い校則によって与えられた関節力であり、J#はJの一般化逆行列の一種である。上式(32)を複数の拘束条件群の間で再帰的に用いることにより、拘束条件群の間に優先順位を付けることもできる。
仮想空間構築及び仮想空間操作への応用:
本発明に係る操作空間慣性逆行列の算出方法は、ロボットの力制御だけでなく、力学シミュレーション、コンピュータ・アニメーション、姿勢編集、外力推定など、多くの分野に適用することができる。例えば、仮想環境内に複数の物体が共存し、それらの間の衝突や接触といった物理的相互作用を計算機上で再現する力学シミュレーションを実時間で実行したり、その中のオブジェクトを操作したりする場合にも有効である。
力学シミュレーションの力学演算は、順動力学演算(非特許文献2を参照のこと)に対し、物体間の力を外力として作用させることで実行することができる。
図9には、物体間で衝突や接触といった物理的相互作用が印加されている様子を例示している。図9(A)では、同図中(a)及び(b)で示す箇所において仮想物体間の衝突が検出されるが、その際の外力は、物体間に指定した反発係数の反発と、適切な摩擦が実現するように、上式(29)〜(31)で示した線形相補性問題を解いて決定することができる。このとき、物体が衝突する部位(a)及び(b)に垂直反力及び摩擦力の作用方向に操作空間を設定し、これまで説明してきた方法により操作空間慣性逆行列Λ-1及びバイアス加速度cを高速に算出すれば、短時間で精密にこの外力を得ることができる。したがって、複雑な環境であってもリアルタイムで精緻な力学シミュレーションを実行することが可能となる。
また、図9(B)には、このような実時間力学シミュレーション環境に対し、ハプティック・デバイスD1を接続し、ハプティック・デバイスD1の先端の位置に基づいて仮想環境内のオブジェクトP1(プロキシ)の位置を変更するとともに、オブジェクトP1に作用した力をハプティック・デバイスD1にフィードバックするように構成した例を示している。
この場合、オブジェクトP1の位置がハプティック・デバイスD1の指令位置に一致するように、その相対位置偏差に関して操作空間(c)を設定する。また、図9(A)に示した例と同様に、オブジェクトP1と他オブジェクトとの衝突に関して垂直反力及び摩擦力の作用方向に操作空間(d)を設定する。これらの拘束も上式(29)〜(31)で示される線形相補性問題として定式化される。この構成で計算量が最も多い操作空間逆行列Λ-1も、本発明に係る方法であれば実時間で算出可能となり、仮想環境内の物体に触れた感じを、ハプティック・デバイスD1上でリアルタイムに且つ精密に再現することが可能となる。
また、図9(C)には、同図(B)に示した構成に加え、仮想空間内のオブジェクト(例えば人型キャラクタ)のさまざまな位置に、位置や姿勢に関する拘束(L1〜L4)を課せるようにした構成を示している。
位置や姿勢の拘束は式(29)に示したような等式条件で表現することができる。操作空間は、位置や姿勢の拘束を設定する位置にワールド座標系と並行な3方向を設定すればよい。また、このような位置や姿勢に関する拘束をオブジェクトP2と物体間の相対位置及び姿勢に適用し、ここに操作空間(e)を設定することで、ハプティック・デバイスD2を用いて仮想空間内の物体の所定の位置を引張ったり捩じったりして、そのときにオブジェクトP2に作用する力をハプティック・デバイスD2にフィードバックすることにより、仮想環境内で引張ったり捩じったりした反力を精緻に感じとることもできる。
これらの問題も操作空間を用いて定式化することができ、上式(29)〜(31)で示される線形相補性問題に還元される。図9(C)に示した構成でも計算量の最も多い箇所は操作空間逆行列Λ-1の算出部となるが、本発明に係る算出方法によれば実時間でも算出可能となる。したがって、例えばユーザは、実際の物体を触れて姿勢を編集するのと同様の力をリアルタイムに感じながら、キャラクタの運動制御や姿勢編集などを行なうことができるようになる。また、このような力ベースの姿勢編集により、逆キネマティクスによく見られる特異点付近での不安定な挙動も除去することができる。
操作空間慣性逆行列を算出する機能的構成:
図10には、本発明に係る方法に基づいて操作空間慣性逆行列を算出する装置の機能的構成を模式的に示している。図示の装置は、リンク構造モデル入力部10と、順動力学演算部20と、操作空間物理量演算部30を備えている。当該装置は、例えば、パーソナル・コンピュータなどの一般的な計算機システム上で、順動力学演算や操作空間物理量演算を行なうソフトウェア・プログラムを起動することによって実現される。
リンク構造モデル入力部10は、リンク構造を構成する個々の剛体の質量やイナーシャ、重心、幾何寸法、関節属性(摩擦、慣性)などの情報と、剛体間の接続方法、一般化変数(関節値)、一般化速度(関節速度)、一般化力(関節力)、順動力学演算に必要な変数(ArticulatedBody Inertia、速度、力、加速度情報など)を入力し保持する。一般化変数、一般化速度、一般化力に変更が生じた場合は、保持しているリンク構造モデルに反映する。
順動力学演算部20は、イナーシャ情報算出部21と、速度情報算出部22と、操作空間慣性逆行列用力情報算出部23と、操作空間慣性逆行列用加速度情報算出部24と、バイアス加速度用力情報算出部25と、バイアス加速度用加速度情報算出部26で構成され、操作空間慣性逆行列Λ-1及びバイアス加速度cを算出する際に必要となる順動力学演算要素を提供する。
イナーシャ情報算出部21は、上式(12)に基づいて、リンク構造の末端から基底に向かって全リンクのイナーシャ情報(ArticulatedBody Inertia)を算出する。その算出結果はリンク構造モデル入力部10に記録しておく。イナーシャ情報の算出は、一般化変数の変更があった際に一度だけ実行される。
速度情報算出部22は、上式(13)に基づいて、リンク構造の基底から末端に向かって全リンクの速度を算出する。その算出結果はリンク構造モデル入力部10に記録しておく。速度情報の算出は、一般化変数若しくは一般化速度の変更があった際に一度だけ実行される。
操作空間慣性逆行列用力情報算出部23は、上式(20)に基づいて、外力の作用点と基底を結ぶ経路上の剛体の力情報を算出する。外力は、操作空間物理量演算部30によって与えられる。これに基づいて力情報算出経路が決定され、外力の作用点から基底に向かって力情報の計算が行なわれる。算出された力情報及び算出経路はリンク構造モデル入力部10に記録される。
操作空間慣性逆行列用加速度情報算出部24は、上式(21)及び(22)に基づいて加速度算出点と基底を結ぶ経路上の剛体の加速度情報を算出し、加速度算出点における加速度を上式(18)によって算出する。但し、重力加速度は0として扱われる。加速度算出点は操作空間物理量演算部30によって与えられる。これに基づいて加速度情報算出経路が決定され、基底から加速度算出点に向かって計算が行なわれる。一旦計算を行なった剛体についてはリンク構造モデル入力部10に記録しておき、次の加速度算出点の加速度を算出する際の計算の起点とする。また、加速度情報が算出された結果は操作空間物理量演算部30に送られる。
バイアス加速度用力情報算出部25は、外力が作用しない条件下で上式(14)及び式(15)を算出し、末端から基底に向かって全剛体の力情報を算出する。算出された力情報はリンク構造モデル入力部10に記録される。
バイアス加速度用加速度情報算出部26は、式(16)及び式(17)に基づいて加速度算出点と基底を結ぶ経路上の剛体の加速度情報を算出し、加速度算出点における加速度を式(18)によって算出する。加速度算出点は、操作空間物理量演算部30によって与えられる。加速度算出点に基づいて加速度情報算出経路が決定され、基底から加速度算出点に向かって計算が行なわれる。一旦計算を行った剛体についてはリンク構造モデル入力部10に記録しておき、次の加速度算出点の加速度を算出する際の計算の起点とする。算出された結果は操作空間物理量演算部30に送られる。
操作空間物理量演算部30は、操作空間慣性逆行列算出部31と、操作空間バイアス加速度算出部32で構成され、順動力学演算を繰り返し用いて,操作空間慣性逆行列及び操作空間バイアス加速度を算出する。
操作空間慣性逆行列算出部31は、上式(10)を繰り返し実行して、操作空間慣性逆行列Λ-1の各列iを決定する。式(10)の実行に際して、イナーシャ情報算出部21、操作空間慣性逆行列用力情報算出部22、操作空間慣性逆行列用加速度情報算出部24による算出結果を用いる。イナーシャ情報は一般化変数に変更があった場合のみ更新する。外力の作用点と加速度計測点はユーザから与えられる操作空間情報に基づいて決定する。1つの操作空間に対応する外力を作用させた状態(操作空間慣性逆行列用力情報の算出を実行した状態)で、すべての操作空間に対応する加速度計測点の加速度を算出(操作空間慣性逆行列用加速度情報の算出を実行)し、各操作空間に発生する加速度を操作空間情報に基づいて算出するという作業を繰り返し、操作空間慣性逆行列Λ-1を完成する。
操作空間バイアス加速度算出部32は、上式(11)を実行して、操作空間バイアス加速度を決定する。式(11)の実行に際して、イナーシャ情報算出部21、速度情報算出部22、操作空間慣性逆行列用力情報算出部23、操作空間慣性逆行列用加速度情報算出部24による算出結果を用いる。イナーシャ情報は一般化変数に変更があった場合のみ更新する。加速度計測点をユーザから与えられる操作空間情報に基づいて決定し、一般化力、重力、速度積が作用する状態(バイアス加速度用力情報算出を実行した状態)で、すべての操作空間に対応する加速度計測点の加速度を算出(バイアス加速度用加速度情報算出を実行)し、各操作空間に発生する加速度を操作空間情報に基づいて算出することで、操作空間バイアス加速度cを得る。
図11には、図10に示した機能的構成を備えた装置上で操作空間慣性逆行列並びに操作空間バイアス加速度を求めるための処理手順をフローチャートの形式で示している。同図中、P1〜P14の処理ステップでは操作空間慣性逆行列を求める処理を実行し、Q1〜Q8の処理ステップでは操作空間バイアス加速度を求める処理を実行する。
P1では、一般化変数、一般化速度、一般化力をリンク構造モデルに設定する。
P2では、ユーザより、算出対象となる操作空間に関する情報を取得する。ある剛体の特定部位に作用する力の方向や、2剛体間の相対変位、重心速度などの操作空間の種類毎に情報を保持する構造体を定義し、そのリストを入力する。
P3では、P2で得られた操作空間の情報から、各操作空間に対応する外力(1つの操作空間には複数の外力が対応し得る)のリストを作成する。
P4では、P3と同様に、P2で得られた操作空間の情報から、各操作空間に対応する加速度計測点(1つの操作空間には複数の加速度計測点が対応し得る)のリストを作成する。
P5及びP6では、Articulated Body Inertiaの更新が行なわれていない場合のみ、イナーシャ情報算出部21により、上式(12)を用いて全剛体のArticulatedBody Inertiaを算出する。
P7では、P3で作成した外力リストから外力を1組ずつ取り出し、外力作用点から基底を結ぶ力情報算出経路を作成し、リンク構造モデルに記録する。
P8では、操作空間慣性逆行列用力情報算出部23により、上式(20)に基づいて、P7で抽出した外力が印加している状態における各剛体の力情報を算出する。
P9では、P4で作成した加速度計測点のリストから加速度計測点を1組ずつ取り出し、加速度計測点から加速度情報算出の終了している最近傍の剛体を結ぶ加速度情報算出経路を作成し、リンク構造モデルに記録する。
P10では、操作空間慣性逆行列用加速度情報算出部24により、上式(21)及び(22)に基づいて、P9で抽出した加速度計測点における加速度を算出する。
P11では、P10で得られた加速度計測点における加速度から操作空間加速度を算出する(例えば図17下に示した例ならばB及びCの各点での加速度の差を求める)。
P12では、操作空間慣性逆行列算出部31は、P11で操作空間慣性逆行列加速度情報算出部24が求めた操作空間加速度を操作空間慣性逆行列の所定の位置(外力のインデクスをi、加速度のインデクスをjとすると、i列j行)に代入する。
P13では、P4で作成した加速度測定点のすべてに関して加速度算出が終了したかどうかを判定する。終了していなければ、P9に戻って、同一の外力印加条件において別の加速度測定点における加速度を求める。
P14では、P3で作成したすべての外力印加が終了したかどうかを判定する。終了していなければ、P7に戻って、別の外力印加を行なう。
以上の処理をすべての外力の組、及び加速度測定点の組に関して順次実行することで、操作空間慣性逆行列を得ることができる。なお、操作空間慣性逆行列は対称行列となるので、上記処理をi≧j(あるいは、i<j)についてのみ行なうように構成するとなお良い。
操作空間バイアス加速度を求める場合は、上記の操作空間慣性逆行列の算出に続けて以下の処理を実行する。
Q1及びQ2では、速度情報の更新が行なわれていない場合のみ、速度情報算出部22により、全剛体の速度情報の算出を行なう。
Q3では、バイアス加速度用力情報算出部25により、外力が作用しない条件下で上式(14)及び式(15)を算出し、一般化力、重力、速度積に基づく力が印加している状態における各剛体の力情報を算出する。
Q4では、P4で作成した加速度計測点のリストから加速度計測点を1組ずつ取り出し、加速度計測点から加速度情報算出の終了している最近傍の剛体を結ぶ加速度情報算出経路を作成して、リンク構造モデルに記録する。
Q5では、操作空間バイアス加速度用加速度情報算出部26により、式(16)及び式(17)に基づいて加速度算出点と基底を結ぶ経路上の剛体の加速度情報を算出し、Q4で抽出した加速度計測点における加速度を式(18)によって算出する。
Q6では、操作空間バイアス加速度算出部32は、上式(11)を実行して、Q5で得られた加速度計測点における加速度から、操作空間バイアス加速度を算出する(例えば、図17下に示した例ならば、B並びにCの各点での加速度の差を求める)。
Q7では、Q6で求めた操作空間加速度を操作空間バイアス加速度ベクトルの所定の位置(加速度のインデクスをjとすると、ベクトルの第j成分)に代入する。
Q8では、P4で作成した加速度測定点のすべてに関して加速度算出が終了したかどうかを判定する。終了していなければ、Q4に戻って、別の加速度測定点における加速度を求める。
以上の処理をすべての加速度測定点の組に関して実行することで、操作空間バイアス加速度を得ることができる。
並列化:
上述した操作空間慣性逆行列並びに操作空間バイアス加速度の計算方法は、グリッド・コンピュータやクラスタPCとも呼ばれる並列計算機上で実行することで、さらに高速化することができる。何故ならば、操作空間慣性逆行列はM×Mの正方行列であるが、その各要素は別々のCPUで独立に求めることができるからである。また、操作空間バイアス加速度は要素数Mのベクトルであるが、その各要素も別々のCPUで独立に求めることができる。
図10には本発明に係る方法に基づいて操作空間慣性逆行列及びバイアス加速度を算出する装置の機能的構成を示したが、図12には処理の並列化を実現した変形例を示している。図10のとの主な相違は以下の3点である。
(1)順動力学演算部20内の操作空間慣性逆行列用力情報算出部25を、操作空間慣性逆行列の列毎に独立に設け、各列の演算を別々のCPUに分配して実行できるように構成した。
(2)上記の列毎に設けた操作空間慣性逆行列用力情報算出部25の力情報を用い、同一列内の行方向の各要素を求めるため、操作空間慣性逆行列用加速度情報算出部26を行毎に設け、各要素の演算をそれぞれ別々のCPUに分配して実行できるように構成した。
(3) バイアス加速度用力情報算出部25の力情報を用いてバイアス加速度ベクトルの各行の要素を求めるため、バイアス加速度用加速度情報算出部26を行毎に設け、各行の演算をそれぞれ別々のCPUに分配して実行できるように構成した。
図13には、操作空間慣性逆行列及びバイアス加速度を並列計算する装置のうち、操作空間慣性逆行列を算出する部分についての処理手順をフローチャートの形式で示している。但し、同図では2×2の操作空間慣性逆行列を求める場合について例示している。
並列化した場合も、P6のイナーシャ情報算出までは図10に示した処理手順と同様である。
順動力学演算部20内の操作空間慣性逆行列用力情報算出部25を実行するCPUを操作空間慣性逆行列の第1列及び第2列で独立に設けている。すなわち、P7の力情報算出は列毎に設けられた別々のCPU11及び12で並行して実行される。
さらに、第1列及び第2列では、操作空間慣性逆行列用加速度情報算出部26を実行するCPUを行毎に設け、P9以降における各要素の演算をそれぞれ別々のCPUに分配して実行できるように構成している。すなわち、第1列では、CPU11を用いて算出された操作空間慣性逆行列用力情報を用いた加速度情報の算出処理をそれぞれ独立したCPU11及び21に分配して、当該列内の行方向の2要素を並行して求める。同様に、第2列では、CPU12を用いて算出された操作空間慣性逆行列用力情報を用いた加速度情報の算出処理をそれぞれ独立したCPU12及び22に分配して、当該列内の行方向の2要素を並行して求める。
また、図14には、操作空間慣性逆行列及びバイアス加速度を並列計算する装置のうち、操作空間バイアス加速度を算出する部分についての処理手順をフローチャートの形式で示している。但し、同図でも2×2の操作空間慣性逆行列を求める場合について例示している。
並列化した場合も、Q3の一般化力印加(力情報算出)までは図10に示した処理手順と同様である。そして、バイアス加速度用力情報算出部25の力情報を用いてバイアス加速度ベクトルの各行の要素を求めるため、バイアス加速度用加速度情報算出部26を実行するCPUを行毎に設けており、Q4以降の加速度情報算出を行毎に設けられたCPU01及び02を用いて並列実行している。
図12〜図14に示したように、操作空間慣性逆行列及びバイアス加速度を並列計算するように装置を構成することで、行列又はベクトルの要素毎に並列に計算が行なわれることから、行列又はベクトルの1要素を計算する計算時間と同程度の時間で全要素の算出を完了することができるので、全体として大幅な高速化を図ることができる。
上記では、操作空間慣性逆行列の各要素をすべて別々のCPUを用いて並列に求める構成を示したが、その一部を並列化して実行するのみでも大幅な高速化を図ることができる。
図15には、操作空間慣性逆行列の列毎に並列に求めるように構成した例を示している。図10のとの主な相違は以下の3点である。
(1)順動力学演算部20内の操作空間慣性逆行列用力情報算出部25を、操作空間慣性逆行列の列毎に独立に設け、各列の演算を別々のCPUに分配して実行できるようにした。
(2)上記の列毎に設けた操作空間慣性逆行列用力情報算出部25の力情報を用い、同一列内の行方向の各要素を求めるため、操作空間慣性逆行列用加速度情報算出部26を列毎に1つずつ設け、これを繰り返し用いて1列分の加速度を算出するようにした。
図16には、図15に示した装置構成により操作空間慣性逆行列の算出を行なうための処理手順をフローチャートの形式で示している。但し、同図では3×3の操作空間慣性逆行列を求める場合について例示している。
並列化した場合も、P6のイナーシャ情報算出までは図10に示した処理手順と同様である。
順動力学演算部20内の操作空間慣性逆行列用力情報算出部25を実行するCPUを操作空間慣性逆行列の第1列及び第2列で独立に設けている。すなわち、P7の力情報算出は列毎に設けられた別々のCPU1〜3で並行して実行される。
そして、列毎に設けられたCPU1〜3を用い、同一列内の行方向の各要素を求めるための操作空間慣性逆行列用加速度情報算出部26に相当する演算を繰り返し実行して、それぞれで1列分の加速度情報を算出する。
図15〜図16に示したように操作空間慣性逆行列及びバイアス加速度を並列計算するように装置を構成することで、操作空間慣性逆行列の列毎に並列に計算が行なわれることから、操作空間慣性逆行列の行数に比例した時間内で操作空間慣性逆行列の全要素の算出を完了することができ、効果的に高速化を図ることができる。
複数のCPUを利用可能な場合、例えば、“A Divide−and−Conquer Articulated−BodyAlgorithm for Parallel O(log(n)) Calculation of Rigid−Body Dynamics”(J. RoboticsResearch,vol.18,no.9,pp.867−875,1999)に記載されている、並列計算に対応した順動力学演算を用いることで、さらに計算速度を向上させることができる。
以上、特定の実施形態を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が該実施形態の修正や代用を成し得ることは自明である。
本明細書では、脚式移動ロボットなど、複雑な構造を有し、外界とのインタラクションを行ないながらタスクを遂行するロボットの動作を力制御する実施形態を中心に説明してきたが、本発明の要旨はこれに限定されるものではない。本発明に係る操作空間慣性逆行列の算出方法は、力制御、力学シミュレーション、コンピュータ・アニメーション、姿勢編集、外力推定など、多くの分野に適用することができる。
また、本明細書では、順動力学演算にArticulated Body法を用いることでO(N)の演算効率で操作空間慣性逆行列(及び操作空間バイアスベクトル)の算出を可能としたが、ベースとするアルゴリズムはこれに限定されない。
要するに、例示という形態で本発明を開示してきたのであり、本明細書の記載内容を限定的に解釈するべきではない。本発明の要旨を判断するためには、特許請求の範囲を参酌すべきである。
図1は、本発明に係る力制御の適用対象となるロボット装置の外観構成を示した図である。 図2は、図1に示したロボット装置における結線トポロジの構成例を示した図である。 図3は、図1に示したロボット装置の関節自由度モデルを示した図である。 図4は、床面に設置された多リンク構成の装置において、末端から基底に向かって力情報を算出する通常の経路を示した図である。 図5は、床面に設置された多リンク構成の装置において、基底から末端に向かって加速度情報を算出する通常の経路を示した図である。 図6は、床面に設置された多リンク構成の装置において、末端から基底に向かって力情報を算出する最適化された経路を示した図である。 図7は、床面に設置された多リンク構成の装置において、各点における加速度を基底から末端に向かって算出するときの最適化された経路を示した図である。 図8は、脚式移動ロボットが全身運動を行なう際に考慮しなければならない拘束条件を説明するための図である。 図9は、物体間で衝突や接触といった物理的相互作用が印加されている様子を例示した図である。 図10は、本発明に係る方法に基づいて操作空間慣性逆行列を算出する装置の機能的構成を模式的に示した図である。 図11は、図10に示した機能的構成を備えた装置上で操作空間慣性逆行列並びに操作空間バイアス加速度を求めるための処理手順を示したフローチャートである。 図12は、操作空間慣性逆行列の各要素を算出する処理を並列実行する装置の機能的構成を模式的に示した図である。 図13は、操作空間慣性逆行列及びバイアス加速度を並列計算する装置のうち、操作空間慣性逆行列を算出する部分についての処理手順を示したフローチャートである。 図14は、操作空間慣性逆行列及びバイアス加速度を並列計算する装置のうち、操作空間バイアス加速度を算出する部分についての処理手順を示したフローチャートである。 図15は、操作空間慣性逆行列の列毎に並列に求めるように構成した例を示した図である。 図16は、図15に示した装置構成により操作空間慣性逆行列の算出を行なうための処理手順を示したフローチャートである。 図17は、多軸ロボットの構成系を示した図である。 図18は、1つの操作空間に対応する力がすべてのリンクの重心位置に作用する様子を示した図である。
符号の説明
10…リンク構造モデル入力部
20…順動力学演算部
21…イナーシャ情報算出部
22…速度情報算出部
23…操作空間慣性逆行列用力情報算出部
24…操作空間慣性逆行列用加速度情報算出部
25…バイアス加速度用力情報算出部
26…バイアス加速度用加速度情報算出部
30…操作空間物理量演算部
31…操作空間慣性逆行列算出部
32…操作空間バイアス加速度算出部

Claims (32)

  1. 複数の剛体が連なって構成されるリンク構造物の関節の値をすべて連ねてできるベクトルである一般化変数qの時間微分値とヤコビアンJを用いて関連付けられる物理量xに対して定義される操作空間における物理量を算出する操作空間物理量算出装置であって、
    前記リンク構造物の力学モデルを、一般化変数q及びその高階微分値と重力又はコリオリ力bと外力fと一般化変数qに対応した一般化力τとの関係を表す運動方程式に基づいて、外力f及び外力が作用しない場合に操作空間に発生する操作空間バイアス加速度cと前記リンク構造物の各点に発生する加速度の間の操作空間慣性逆行列Λ-1で与えられる関係で表わし、
    前記リンク構造物の一般化変数q及びその速度と、一般化力τ、重力g、外力fのうち少なくとも1つを含む前記リンク構造物に作用する力情報に基づいて前記リンク構造物の各点に発生する加速度を得るための順動力学演算を実行する順動力学演算手段と、
    一般化変数q及び外力f以外をすべてゼロとし、外力のみが作用し得る制約条件下で、i番目の操作空間にのみ単位外力を作用させて前記順動力学演算手段による順動力学演算を実行して操作空間慣性逆行列の第i列を順次算出することにより、操作空間慣性逆行列全体を求める操作空間慣性逆行列算出手段と、
    外力fをゼロとし、一般化変数q及びその速度、一般化力τ、重力gのみが作用する制約条件下で前記順動力学演算手段による順動力学演算を実行して、リンク構造物の各点に発生する加速度を操作空間バイアス加速度cとして求める操作空間バイアス加速度算出手段と、
    を具備することを特徴とする操作空間物理量算出装置。
  2. 前記順動力学演算手段は、順動力学演算をイナーシャ情報算出、速度情報算出、力情報算出、加速度情報算出の4つの過程に分解して実行する、
    ことを特徴とする請求項1に記載の操作空間物理量算出装置。
  3. 前記順動力学演算手段は、すべてのリンクのIA i(Articulated Body Inertia)について下式を末端から基底に向かって実行することでイナーシャ情報を算出する(但し、Iiはリンクiのイナーシャ、C(i)はリンクiの子リンクのインデックス集合とする)、
    ことを特徴とする請求項2に記載の操作空間物理量算出装置。
    Figure 0004682791
  4. 前記順動力学演算手段は、下式を基底から末端に向かって実行することですべてのリンクの原点の速度を求めることにより、速度情報を算出する(但し、viはリンクiの速度、pはその親リンクのインデックス、Siはリンクiの関節の運動自由度を表す行列、qiはリンクiの関節値である)、
    ことを特徴とする請求項2に記載の操作空間物理量算出装置。
    Figure 0004682791
  5. 前記順動力学演算手段は、同時に複数の外力を作用できるように順動力学演算を構成する、
    ことを特徴とする請求項2に記載の操作空間物理量算出装置。
  6. 前記順動力学演算手段は、下式を末端から基底に向かって実行してすべてのリンクのバイアス力pA iを求めることにより、力情報を算出する(fkはリンクiの中でk番目の外力、F(i)はリンクiに作用する外力のインデックス集合、τiはリンクiの関節力である)、
    ことを特徴とする請求項5に記載の操作空間物理量算出装置。
    Figure 0004682791
  7. 前記順動力学演算手段は、複数の点の加速度を算出できるように順動力学演算を構成する、
    ことを特徴とする請求項2に記載の操作空間物理量算出装置。
  8. 前記順動力学演算手段は、下式を基底から末端に向かって実行してすべてのリンクの加速度aiを求め、
    Figure 0004682791
    リンクiに作用する単位外力n方向に発生する物理量xの加速度を下式から求めることにより、
    Figure 0004682791
    加速度情報を算出する(但し、aiはリンクiの加速度)、
    ことを特徴とする請求項7に記載の操作空間物理量算出装置。
  9. 前記順動力学演算手段は、一般化変数としての関節値qが変化したときに一度だけイナーシャ情報を算出する、
    ことを特徴とする請求項3に記載の操作空間物理量算出装置。
  10. 前記順動力学演算手段は、操作空間バイアス加速度を算出するときにのみ速度情報の算出を実行し、操作空間慣性逆行列を算出するときには実行しない、
    ことを特徴とする請求項4に記載の操作空間物理量算出装置。
  11. 前記順動力学演算手段は、操作空間慣性逆行列を算出する際には、下式を末端から基底に向かって実行してすべてのリンクのバイアス力pA iを求めることにより、力情報を算出する、
    ことを特徴とする請求項6に記載の操作空間物理量算出装置。
    Figure 0004682791
  12. 前記順動力学演算手段は、力の作用点と基底を結ぶ経路上のリンクに関してのみリンクのバイアス力pA iを算出する、
    ことを特徴とする請求項11に記載の操作空間物理量算出装置。
  13. 前記順動力学演算手段は、操作空間慣性逆行列を算出する際には、下式を基底から末端に向かって実行してすべてのリンクの加速度aiを求める、
    ことを特徴とする請求項8に記載の操作空間物理量算出装置。
    Figure 0004682791
  14. 前記順動力学演算手段は、ある点の加速度算出を行なう場合、既に加速度算出の行なわれた最寄りの点を起点として前記のある点に向かう曲線上の経路に沿って加速度更新を実行する、
    ことを特徴とする請求項13に記載の操作空間物理量算出装置。
  15. 前記順動力学演算手段は、操作空間バイアス加速度を算出する際には、基底から加速度算出を行なうリンクに向かう経路上でのみ加速度算出を行なう、
    ことを特徴とする請求項8に記載の操作空間物理量算出装置。
  16. 前記操作空間に対応する力が前記リンク構造物に2点に作用する場合に、前記操作空間慣性逆行列算出手段は、末端から基底に向かってすべてのリンクに関してイナーシャ情報を算出し、前記の各作用点に(操作空間方向の)単位力を作用した状態で、各作用点と基底を結ぶそれぞれの経路上のリンクに関して、末端から基底に向かって力情報を算出し、基底から各作用点に向かって加速度情報を算出し(但し、重力加速度gは0として算出する)、各作用点における加速度の差をとって、両点間の相対運動に関する操作空間慣性逆行列を得る、
    ことを特徴とする請求項2に記載の操作空間物理量算出装置。
  17. 前記操作空間バイアス加速度算出手段は、基底から末端に向かってすべてのリンクに関して速度情報を算出し、すべてのリンクに関節力τを作用した状態で末端から基底に向かって力情報を算出し、基底から各作用点に向かって加速度情報を算出して、各作用点における加速度の差をとって、両点間の相対運動に関する操作空間バイアス加速度を得る、
    ことを特徴とする請求項16に記載の操作空間物理量算出装置。
  18. 前記操作空間慣性逆行列算出手段は、末端から基底に向かってすべてのリンクに関してイナーシャ情報を算出し、全リンクに(操作空間方向の)単位力のmi/M の力を作用した状態で末端から基底に向かって力情報を算出し(但し、Mはリンク構造全体の質量、miは剛体iの質量を表す)、基底から末端に向かって加速度情報を算出し(但し、起点の重力加速度は0として算出する)、各剛体iの重心xgiの加速度を算出し、リンク構造全体の重心に発生する加速度を算出することにより、前記リンク構造体の重心操作空間における操作空間慣性逆行列を得る、
    ことを特徴とする請求項2に記載の操作空間物理量算出装置。
  19. 前記操作空間慣性逆行列算出手段は、角運動量操作空間における操作空間慣性逆行列を求める際に、角運動量操作空間に外積[−mi(xgi−xg)×]を掛けた力と、Iiを掛けたモーメントを各剛体の重心に作用させて、角運動量操作空間に単位力を作用させる(但し、miは剛体iの質量、xgはリンク構造全体の重心,xgiは剛体iの重心を表す)、
    ことを特徴とする請求項1に記載の操作空間物理量算出装置。
  20. 前記操作空間慣性逆行列算出手段は、角運動量操作空間に発生する加速度を下式より算出して操作空間慣性逆行列を求める(但し、Lは前記リンク構造体全体の角運動量)、
    ことを特徴とする請求項19に記載の操作空間物理量算出装置。
    Figure 0004682791
  21. 前記操作空間慣性逆行列算出手段は、操作空間慣性逆行列の上三角行列又は下三角行列のみを算出する、
    ことを特徴とする請求項1に記載の操作空間物理量算出装置。
  22. 前記順動力学演算手段は、剛体間の再帰演算で構成される、
    ことを特徴とする請求項1に記載の操作空間物理量算出装置。
  23. 再帰演算の対象となる剛体を抽出する計算経路決定手段をさらに備え、
    前記順動力学演算手段は、前記計算経路決定手段により決定される剛体のみを再帰演算の対象とする、
    ことを特徴とする請求項22に記載の操作空間物理量算出装置。
  24. 操作空間慣性逆行列又は操作空間バイアス加速度の各要素の計算を複数のプロセッサに分配して並列実行する、
    ことを特徴とする請求項1に記載の操作空間物理量算出装置。
  25. 前記順動力学演算手段は、操作空間慣性逆行列用の力情報を算出するためのプロセッサを操作空間慣性逆行列の列毎に独立に設け、操作空間慣性逆行列の各列の演算を並列実行する、
    ことを特徴とする請求項24に記載の操作空間物理量算出装置。
  26. 前記順動力学演算手段は、前記の列毎に設けられたプロセッサから出力される力情報を用いて操作空間慣性逆行列用の加速度情報を算出するためのプロセッサを行毎に独立に設け、同一列内の行方向の各要素の演算を並列実行する、
    ことを特徴とする請求項25に記載の操作空間物理量算出装置。
  27. 前記順動力学演算手段は、操作空間バイアス加速度用の力情報を算出するためのプロセッサをバイアス加速度ベクトルの行毎に独立に設け、バイアス加速度用加速度情報の各行の演算を並列実行する、
    ことを特徴とする請求項25に記載の操作空間物理量算出装置。
  28. 前記順動力学演算手段は、前記の列毎に設けられたプロセッサから出力される力情報を用いて操作空間慣性逆行列用の加速度情報を算出するためのプロセッサを列毎に1つずつ設け、それぞれの列でプロセッサを繰り返し用いて1列分の加速度を算出する、
    ことを特徴とする請求項25に記載の操作空間物理量算出装置。
  29. 前記リンク構造物を力制御下で動作制御するために用いられ、
    該求められた操作空間慣性逆行列及び操作空間バイアス加速度を用いて前記リンク構造物における関節力を決定する関節力決定手段をさらに備える、
    ことを特徴とする請求項1に記載の操作空間物理量算出装置。
  30. 前記関節力決定手段は、操作空間慣性逆行列及び操作空間バイアス加速度を用いて記述される操作空間における加速度と力との関係を記述した等式と、前記リンク構造体のリンク同士及びリンクと環境との間で形成される拘束条件からなる線形相補性問題を満足する加速度と力を、前記操作空間物理量算出手段により求められた操作空間慣性逆行列及び操作空間バイアス加速度を用いて求め、得られた力に基づいてリンクの関節力を決定する、
    ことを特徴とする請求項29に記載の操作空間物理量算出装置。
  31. 複数の剛体が連なって構成されるリンク構造物の関節の値をすべて連ねてできるベクトルである一般化変数qの時間微分値とヤコビアンJを用いて関連付けられる物理量xに対して定義される操作空間における物理量を算出する操作空間物理量算出方法であって、
    前記リンク構造物の力学モデルを、一般化変数q及びその高階微分値と重力又はコリオリ力bと外力fと一般化変数qに対応した一般化力τとの関係を表す運動方程式に基づいて、外力f及び外力が作用しない場合に操作空間に発生する操作空間バイアス加速度cと前記リンク構造物の各点に発生する加速度の間の操作空間慣性逆行列Λ-1で与えられる関係で表わし、
    前記リンク構造物の一般化変数q及びその速度と、一般化力τ、重力g、外力fのうち少なくとも1つを含む前記リンク構造物に作用する力情報に基づいて前記リンク構造物の各点に発生する加速度を得るための順動力学演算を実行する順動力学演算ステップと、
    一般化変数q及び外力f以外をすべてゼロとし、外力のみが作用し得る制約条件下で、i番目の操作空間にのみ単位外力を作用させて前記順動力学演算を実行して操作空間慣性逆行列の第i列を順次算出することにより、操作空間慣性逆行列全体を求める操作空間慣性逆行列算出ステップと、
    外力fをゼロとし、一般化変数q及びその速度、一般化力τ、重力gのみが作用する制約条件下で前記順動力学演算を実行して、リンク構造物の各点に発生する加速度を操作空間バイアス加速度cとして求める操作空間バイアス加速度算出ステップと、
    を有することを特徴とする操作空間物理量算出方法。
  32. 複数の剛体が連なって構成されるリンク構造物の関節の値をすべて連ねてできるベクトルである一般化変数qの時間微分値とヤコビアンJを用いて関連付けられる物理量xに対して定義される操作空間における物理量を算出するための処理をコンピュータ・システム上で実行させるようにコンピュータ可読形式で記述されたコンピュータ・プログラムであって、前記コンピュータ・システムに対し、
    前記リンク構造物の力学モデルを、一般化変数q及びその高階微分値と重力又はコリオリ力bと外力fと一般化変数qに対応した一般化力τとの関係を表す運動方程式に基づいて、外力f及び外力が作用しない場合に操作空間に発生する操作空間バイアス加速度cと前記リンク構造物の各点に発生する加速度の間の操作空間慣性逆行列Λ-1で与えられる関係で表わし、
    前記リンク構造物の一般化変数q及びその速度と、一般化力τ、重力g、外力fのうち少なくとも1つを含む前記リンク構造物に作用する力情報に基づいて前記リンク構造物の各点に発生する加速度を得るための順動力学演算を実行する順動力学演算手順と、
    一般化変数q及び外力f以外をすべてゼロとし、外力のみが作用し得る制約条件下で、i番目の操作空間にのみ単位外力を作用させて前記順動力学演算を実行して操作空間慣性逆行列の第i列を順次算出することにより、操作空間慣性逆行列全体を求める操作空間慣性逆行列算出手順と、
    外力fをゼロとし、一般化変数q及びその速度、一般化力τ、重力gのみが作用する制約条件下で前記順動力学演算を実行して、リンク構造物の各点に発生する加速度を操作空間バイアス加速度cとして求める操作空間バイアス加速度算出手順と、
    を実行させることを特徴とするコンピュータ・プログラム。
JP2005298090A 2005-10-12 2005-10-12 操作空間物理量算出装置及び操作空間物理量算出方法、並びにコンピュータ・プログラム Expired - Fee Related JP4682791B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2005298090A JP4682791B2 (ja) 2005-10-12 2005-10-12 操作空間物理量算出装置及び操作空間物理量算出方法、並びにコンピュータ・プログラム
US11/544,052 US8140189B2 (en) 2005-10-12 2006-10-06 Apparatus and method for computing operational-space physical quantity

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005298090A JP4682791B2 (ja) 2005-10-12 2005-10-12 操作空間物理量算出装置及び操作空間物理量算出方法、並びにコンピュータ・プログラム

Publications (2)

Publication Number Publication Date
JP2007108955A JP2007108955A (ja) 2007-04-26
JP4682791B2 true JP4682791B2 (ja) 2011-05-11

Family

ID=37911874

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005298090A Expired - Fee Related JP4682791B2 (ja) 2005-10-12 2005-10-12 操作空間物理量算出装置及び操作空間物理量算出方法、並びにコンピュータ・プログラム

Country Status (2)

Country Link
US (1) US8140189B2 (ja)
JP (1) JP4682791B2 (ja)

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8924021B2 (en) * 2006-04-27 2014-12-30 Honda Motor Co., Ltd. Control of robots from human motion descriptors
US8223155B2 (en) * 2007-04-27 2012-07-17 Sony Corporation Method for simulating large numbers of spherical bodies interacting
FR2917866B1 (fr) * 2007-06-20 2009-09-04 Inst Nat Rech Inf Automat Dispositif informatique pour la simulation d'un ensemble d'objets en interaction et procede correspondant
JP2009099082A (ja) * 2007-10-19 2009-05-07 Sony Corp 力学シミュレーション装置及び力学シミュレーション方法、並びにコンピュータ・プログラム
JP5109573B2 (ja) * 2007-10-19 2012-12-26 ソニー株式会社 制御システム及び制御方法、並びにロボット装置
US9098766B2 (en) * 2007-12-21 2015-08-04 Honda Motor Co., Ltd. Controlled human pose estimation from depth image streams
US8279227B2 (en) * 2008-04-04 2012-10-02 Sony Corporation Method for detecting collisions among large numbers of particles
JP4715863B2 (ja) * 2008-05-01 2011-07-06 ソニー株式会社 アクチュエータ制御装置及びアクチュエータ制御方法、アクチュエータ、ロボット装置、並びにコンピュータ・プログラム
KR101479233B1 (ko) 2008-05-13 2015-01-05 삼성전자 주식회사 로봇 및 그 협조작업 제어방법
US20100332791A1 (en) * 2009-06-25 2010-12-30 Yu Xu System, method, and computer-readable medium for optimizing processing of group-by queries featuring maximum or minimum equality conditions in a parallel processing system
US8170718B2 (en) * 2008-12-18 2012-05-01 GM Global Technology Operations LLC Multiple priority operational space impedance control
US9256282B2 (en) * 2009-03-20 2016-02-09 Microsoft Technology Licensing, Llc Virtual object manipulation
JP5506617B2 (ja) * 2009-12-28 2014-05-28 本田技研工業株式会社 ロボットの制御装置
JP5506618B2 (ja) * 2009-12-28 2014-05-28 本田技研工業株式会社 ロボットの制御装置
CN102470531B (zh) * 2010-01-04 2016-01-20 松下知识产权经营株式会社 机器人、机器人的控制装置及控制方法
JP2012081568A (ja) * 2010-10-14 2012-04-26 Sony Corp ロボットの制御装置及び制御方法、並びにコンピューター・プログラム
US9119655B2 (en) 2012-08-03 2015-09-01 Stryker Corporation Surgical manipulator capable of controlling a surgical instrument in multiple modes
US8504208B2 (en) * 2011-05-25 2013-08-06 Honda Motor Co., Ltd. Mobile object controller and floor surface estimator
KR101953113B1 (ko) * 2011-05-30 2019-03-05 삼성전자주식회사 로봇 및 그 제어방법
FR2978844B1 (fr) * 2011-08-04 2014-03-21 Aldebaran Robotics Robot a articulations de rigidite variable et methode de calcul de ladite rigidite optimisee
JP5982767B2 (ja) 2011-09-26 2016-08-31 ソニー株式会社 運動補助装置及び運動補助方法、コンピューター・プログラム、並びにプログラム記録媒体
KR102603224B1 (ko) 2012-08-03 2023-11-16 스트리커 코포레이션 로봇 수술을 위한 시스템 및 방법
US9226796B2 (en) 2012-08-03 2016-01-05 Stryker Corporation Method for detecting a disturbance as an energy applicator of a surgical instrument traverses a cutting path
JP6104867B2 (ja) * 2014-09-19 2017-03-29 Thk株式会社 ロボット上半身の支持構造
JP6126152B2 (ja) * 2015-03-16 2017-05-10 ファナック株式会社 曲線部を有する軌道を生成するロボットの軌道生成装置
AU2016351584B2 (en) 2015-11-11 2021-09-23 Mako Surgical Corp. Robotic system and method for backdriving the same
CN105511465B (zh) * 2015-12-02 2017-08-04 歌尔股份有限公司 一种双足机器人的步态控制方法和装置
KR20190110539A (ko) * 2016-12-13 2019-09-30 딥모션, 인크. 솔버용의 다수의 힘 어레이를 사용한 향상된 가상 현실 시스템
EP3554414A1 (en) 2016-12-16 2019-10-23 MAKO Surgical Corp. Techniques for modifying tool operation in a surgical robotic system based on comparing actual and commanded states of the tool relative to a surgical site
CN109086466A (zh) * 2017-06-14 2018-12-25 深圳市祈飞科技有限公司 单腿多轴双足机器人运动学联合仿真方法
CN111086001B (zh) * 2019-12-25 2021-09-14 广东省智能制造研究所 一种足式机器人多模态感知的状态估计方法及系统
CN111872941B (zh) * 2020-08-06 2021-09-07 深圳市优必选科技股份有限公司 平衡控制方法、装置、仿人机器人及可读存储介质
CN113070880B (zh) * 2021-03-31 2022-09-09 深圳市优必选科技股份有限公司 运动控制方法、装置、机器人控制设备及可读存储介质
CN114137982B (zh) * 2021-11-29 2024-09-06 深圳市优必选科技股份有限公司 机器人运动控制方法及装置、机器人控制设备和存储介质
US12049007B2 (en) * 2022-03-01 2024-07-30 Mitsubishi Electric Research Laboratories, Inc. System and method for robust robotic manipulation using chance constrained optimization

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003231077A (ja) * 2002-02-12 2003-08-19 Univ Tokyo 人型リンク系の運動生成方法
JP2007030054A (ja) * 2005-07-22 2007-02-08 Sony Corp ロボット装置

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5303384A (en) * 1990-01-02 1994-04-12 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration High level language-based robotic control system
US5377310A (en) * 1992-04-03 1994-12-27 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Controlling under-actuated robot arms using a high speed dynamics
US5546508A (en) * 1992-04-03 1996-08-13 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Controlling flexible robot arms using high speed dynamics process
US5294873A (en) * 1992-10-27 1994-03-15 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Kinematic functions for redundancy resolution using configuration control
US6738065B1 (en) * 1999-08-10 2004-05-18 Oshri Even-Zohar Customizable animation system
US6750866B1 (en) * 2000-04-21 2004-06-15 Realistic Dynamics, Inc. Method and system for dynamically filtering the motion of articulated bodies
WO2002039087A2 (en) * 2000-11-02 2002-05-16 Protein Mechanics, Inc. Method for large timesteps in molecular modeling
US7469166B2 (en) * 2001-06-29 2008-12-23 Honda Motor Co., Ltd. System and method of predicting novel motion in a serial chain system
US7684896B2 (en) * 2001-06-29 2010-03-23 Honda Motor Co., Ltd. System and method of estimating joint loads using an approach of closed form dynamics
US7623944B2 (en) * 2001-06-29 2009-11-24 Honda Motor Co., Ltd. System and method of estimating joint loads in a three-dimensional system
DE60237999D1 (de) * 2001-12-28 2010-11-25 Honda Motor Co Ltd Vorrichtung zur steuerung des ganges für mobilen roboter mit beinen
JP3522742B1 (ja) 2002-03-18 2004-04-26 ソニー株式会社 ロボット装置、脚式移動ロボットの動作制御装置及び動作制御方法、脚式移動ロボットのためのセンサ・システム、並びに移動体装置
US20030182518A1 (en) * 2002-03-22 2003-09-25 Fujitsu Limited Parallel processing method for inverse matrix for shared memory type scalar parallel computer
JP3599244B2 (ja) 2002-11-06 2004-12-08 ソニー株式会社 ロボット装置、ロボット装置の運動制御装置並びに運動制御方法
US7904280B2 (en) * 2003-04-16 2011-03-08 The Mathworks, Inc. Simulation of constrained systems

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003231077A (ja) * 2002-02-12 2003-08-19 Univ Tokyo 人型リンク系の運動生成方法
JP2007030054A (ja) * 2005-07-22 2007-02-08 Sony Corp ロボット装置

Also Published As

Publication number Publication date
JP2007108955A (ja) 2007-04-26
US20070083290A1 (en) 2007-04-12
US8140189B2 (en) 2012-03-20

Similar Documents

Publication Publication Date Title
JP4682791B2 (ja) 操作空間物理量算出装置及び操作空間物理量算出方法、並びにコンピュータ・プログラム
JP3790816B2 (ja) 人型リンク系の運動生成方法
JP4595727B2 (ja) 外力推定システム及び外力推定方法、並びにコンピュータ・プログラム
JP3972854B2 (ja) ロボットの運動制御装置
Nakamura et al. Dynamics computation of structure-varying kinematic chains and its application to human figures
Žlajpah Simulation in robotics
Yamane et al. Dynamics filter-concept and implementation of online motion generator for human figures
US9120227B2 (en) Human motion tracking control with strict contact force constraints for floating-base humanoid robots
KR100532832B1 (ko) 트리구조 링크계의 자세 및 동작을 생성하는 방법
JP2012081568A (ja) ロボットの制御装置及び制御方法、並びにコンピューター・プログラム
Mata et al. Serial-robot dynamics algorithms for moderately large numbers of joints
Khatib et al. Human-centered robotics and interactive haptic simulation
Kenwright Controlled biped balanced locomotion and climbing
Chung et al. Contact-consistent elastic strips for multi-contact locomotion planning of humanoid robots
US11878418B2 (en) Controlling a robot based on constraint-consistent and sequence-optimized pose adaptation
Eβer et al. Design, analysis and control of the series-parallel hybrid RH5 humanoid robot
US11752623B2 (en) Simulating task performance of virtual characters
US11787055B2 (en) Controlling a robot using predictive decision making
JP3614824B2 (ja) 脚式移動ロボットのための動作編集装置及び動作編集方法
Granados et al. Design of a male-type dance partner robot for leading a physical human-robot interaction
Kameduła et al. A compliant actuation dynamics gazebo-ros plugin for effective simulation of soft robotics systems: Application to centauro robot
Fennel et al. Haptic rendering of arbitrary serial manipulators for robot programming
Hu et al. Hybrid kinematic and dynamic simulation of running machines
Butkar et al. Novel Energy Storage Material and Topologies of Computerized Controller
US11787045B2 (en) Robot with an inverse kinematics (IK)-based controller for retargeting input motions

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070719

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100615

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100803

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101207

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101217

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110111

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110124

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140218

Year of fee payment: 3

R151 Written notification of patent or utility model registration

Ref document number: 4682791

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140218

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees