JP2008509427A - 多体系の運動をシミュレートするためのシステムおよび方法 - Google Patents

多体系の運動をシミュレートするためのシステムおよび方法 Download PDF

Info

Publication number
JP2008509427A
JP2008509427A JP2007524138A JP2007524138A JP2008509427A JP 2008509427 A JP2008509427 A JP 2008509427A JP 2007524138 A JP2007524138 A JP 2007524138A JP 2007524138 A JP2007524138 A JP 2007524138A JP 2008509427 A JP2008509427 A JP 2008509427A
Authority
JP
Japan
Prior art keywords
constrained
motion
mechanical system
bold
objects
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.)
Pending
Application number
JP2007524138A
Other languages
English (en)
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.)
Vrije Universiteit Brussel VUB
Original Assignee
Vrije Universiteit Brussel VUB
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 Vrije Universiteit Brussel VUB filed Critical Vrije Universiteit Brussel VUB
Publication of JP2008509427A publication Critical patent/JP2008509427A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/04Constraint-based CAD

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本発明は、閉ループ多体機構の運動を記述するための方法およびシステムに関する。この場合、拘束された多体系について運動方程式を得る必要がある。本発明は、一般化座標および共役正準運動量を用いて、閉ループ系について再帰的なハミルトン公式を結果として生じる順動力学公式に基づく。方法は、優れた評価の拘束違反誤差を用いて運動方程式を得るのに必要な算数演算の数を限定することを可能にする。計算は拘束された多関節運動量ベクトルに基づいて実行することができる。

Description

発明の技術分野
本発明は、複数の物体を含む機械システムの運動を視覚化、シミュレート、または予測するシステムおよび方法に関する。より具体的には、本発明は、複数の物体を含む拘束された機械システムの運動を効率的に記述するためのシステムおよび方法、ならびに、複数の物体を含む拘束された機械システムの運動の順動力学を検討、視覚化、シミュレート、または予測する方法およびシステムに関する。この方法は、設計目的または設計性能を証明することに用いられてもよい。さらに、本発明は、運動をシミュレートし、または予測する方法を用いる、多体系の制御のための制御装置、例えばロボットまたは飛行用もしくは搬送用乗り物のシミュレータの動きを制御するための制御装置に関する。その制御は、例えば地球から制御される惑星調査のためのロボット機関の制御など、すなわち許容しがたい伝送遅延を伴って離れてなされることがある。さらに本発明は、このような運動をシミュレートし、または予測するためのソフトウェア実現方法に関する。さらに本発明は、リアルな表示を目的とする多体運動のシミュレーションまたは予測を必要とする、ゲームに関する。
発明の背景
最近の数十年間、複数の物体を含む、多体系とも呼ばれる機械システムについてのシミュレーション方法の改良についてかなりの労力が注がれてきた。これらの労力が必要とされてきたのは、調査される構造がますます複雑さを増すからであり、また、商品化に要する時間を減じるためまたはリアルタイムの計算を可能にするために、より高速のシミュレーションに対するニーズがあるからである。機械多体系の運動のシミュレーションは、仮想プロトタイピング、仮想現実、およびコンピュータアニメーションなどのさまざまな適用例を有する。仮想プロトタイピングでは、例えば車や宇宙船の着陸装置など、プロトタイプを構築する必要のない機械システムの挙動を検査し検討するために、コンピュータモデルおよびシミュレーションが用いられる。後者は、時間的コスト、経済的コストの両方を著しく低減することができる。仮想現実については、機械多体系の運動のシミュレーションはリアルタイムでなければならないので、非常に効率的である必要がある。機械的なアニメーションは、さまざまな適用例、例えばアニメーション映画およびコンピュータゲームに用いられる。これらのすべての適用例において、高性能の計算能力が不可欠である。
アルゴリズムの有用性は、典型的には2つの重要な要因によって決定される。第1の要因は運動方程式の確立の容易さであり、第2の要因はこれらの方程式の数値積分の容易さである。例えばフェザーストン(Featherstone)による「ロボット動力学アルゴリズム(Robot Dynamics Algorithms)」(1987年クルワ学術出版(Kluwer Academic Publishers))に示されるように、多数の物体については、運動方程式を扱う多数の方法のうち、再帰的な公式が極めて効率的であることが判明している。複数の物体を含む機械システムの運動を記述するための周知の方法およびシステムのほとんどは、ニュートン−オイラーの方程式、ラグランジュの方程式、または仮想仕事の原理もしくは仮想パワーの原理、すなわち反力は仮想運動の下ではパワーを送らないことを表わす原理に基づく。これらのすべての場合に2次微分方程式が得られ、アルゴリズムは加速度を計算し、積分することになる。
系を記述するのに用いられる座標の組もアルゴリズムの有用性に強い影響を及ぼす。なぜならば座標のタイプおよび個数が運動方程式の数値積分に強い影響を有するからである
。最小限の組の座標で運動方程式を表わすと、結果として微分方程式がより少なくなるが、それはより結合され、通常、非最小限の公式と比較してより強い非線形性を示す。最小限の組の座標を用いることの利点は、拘束方程式が必要ないこと、常微分方程式(ODE)1組のみが解ければよいことである。他方、非最小限の公式は微分代数方程式システム(DAE)を結果として生じるが、一般にはるかに確立が容易である。
座標の数の操作に加えて、系を記述するのに用いられる座標のタイプを特別に選択することができる。加速度に基づく公式は、一般化座標および速度について開始値を必要とする。その意味で、これらの方程式を一般化座標および速度における1次微分方程式と考えることもできる。一般化座標およびその共役正準運動量(conjugated canonical momenta)によって表されるハミルトンの方程式が用いられる場合、代替的な公式が得られる。ハミルトン方程式とも呼ばれる前者の方程式は数値積分の間よりよく振る舞い、より高い精度および安定性を結果として生じる。しかしながら、多体動力学の加速度に基づくにおいてはハミルトンの公式は頻繁には用いられない。その理由は恐らく、数値積分の間の挙動が有利であったとしても、ハミルトン方程式の構造が計算上集中的であって、加速度に基づく再帰的なアルゴリズムと競合することができないからである。しかしながら、多体系動力学においてハミルトニアン方程式を用いることは、例えば「自動設計の進歩 1(Advances in Design Automation 1)」(1988年)の417−423頁においてランカラニ(Lankarani)らによって、また「非線形動力学 5(nonlinear Dynamics 5)(1994年)の209−231頁においてベーヨ(Bayo)らによって説明されるように、極めて肯定的な結果に至っている。2003年7月1日−4日の「多体動力学(Multibody Dynamics)2003年、IDMEC/ISTリスボン(Lisbon)」においてヌーデ(Naudet)らによって説明されるように、開ループ剛体の多体系についてのハミルトン方程式を確立するための新しい再帰的な方法を導入することによって、共役正準運動量の利用を促進するステップがさらに進められた。後者の方法は、加速度に基づくアルゴリズムについてのハミルトニアンO(n)等価物を説明し、それは必要となる算術演算の数のレベルにおける性能上、加速度に基づくアルゴリズムを超える。開ループ多体機構の順動力学を記述する方法の別の例は、「多体系動力学 10(Multibody System Dynamics 10)」(2003年)の45−59頁においてヌーデらによって説明される。
拘束多体系の動力学を記述することの問題は、例えば閉ループ系の場合がそうであるが、さらに労働集約型かつ面倒である。上述の先行技術の方法を閉ループ系に適用すると、典型的には結果として非能率的な方法となる。例えば計算が拘束方程式のヤコビ行列の使用に基づく場合、それは問題に取り組む正当な方法であるが、強い相互接続が座標間に生成されるので、再帰的なアルゴリズムが望ましい場合に大きな障害が発生する。これは下記に示される。閉ループ多体系または拘束された多体系については、関節座標間に関係が作られる。これらの拘束は、以下の1組の代数方程式として表わすことができる。
Figure 2008509427
これらの一般に非線形の方程式を扱う代わりに、時間導関数が用いられて関節速度において以下の線形方程式の組を得ることができる。
Figure 2008509427
Figure 2008509427
Figure 2008509427
すると、従属関節速度は下記に等しい。
Figure 2008509427
Figure 2008509427
換言すれば、これらの拘束された多体系の運動をシミュレートするために標準的な手法を用いることができるが、座標およびその速度の強い相互依存のために、O(n)再帰的なアルゴリズムを調整することが困難となる。
発明の概要
本発明の目的は、複数の物体を含む拘束された機械システムの運動を効率的にシミュレートする方法およびシステムを与えることである。上記の目的は、本発明による方法および装置によって達成される。
本発明は、複数の物体を含む拘束された機械システムの少なくとも位置関連情報を計算するために、この拘束された機械システムの運動方程式を用いる方法および装置に関し、前記運動方程式は再帰的に公式化されたハミルトン運動方程式であって、前記方法は、拘束された機械システムの少なくとも位置関連情報を方程式および境界条件から計算するこ
とを含む。
拘束された機械システムは、拘束部分空間を規定する1組の拘束によって拘束され得る。拘束された機械システムはさらに、少なくとも1つの固定関節と、拘束の組のうち少なくとも1つの拘束によって拘束される、少なくとも1つの他の関節とを含んでもよい。この方法は、拘束された機械システムの各K番目の物体について、前記K番目の物体の拘束された多関節運動量ベクトルに関連する量を求めることを含み、前記K番目の物体の前記拘束された多関節運動量ベクトルは、系のK番目の運動量ベクトルと、前記少なくとも1つの他の関節近くに隣接する物体の射影された、拘束された多関節運動量ベクトルとの合計であって、前記射影された、拘束された多関節運動量ベクトルは前記拘束部分空間に射影され、さらに、K番目の物体の局所的な基準フレームを参照することと、その後、前記拘束された機械システムについての1組のハミルトン運動方程式を得るために、前記拘束された多関節運動量ベクトルに関連する前記量を用いることとを含む。1組のハミルトン運動方程式を得ることは、一般化座標<太字>q(注記:以後特に断りのない限り、文中では太字の文字をこのように表わす)、共役正準運動量<太字>pおよび時間tについて、一般化座標<太字>qの時間導関数および共役正準運動量<太字>pの時間導関数についての数式を得ることを含み得る。
Figure 2008509427
これらの時間導関数についての数式は、前記複数の物体の各々の運動を決定し得る。
Figure 2008509427
拘束された機械システムは、拘束部分空間を規定する1組の拘束によって拘束され、少なくとも1つの固定関節と、その拘束の組のうち少なくとも1つの拘束によって拘束された少なくとも1つの他の関節とをさらに含み、そこで方法は、拘束された機械システムの各K番目の各物体について、K番目の物体は1組のKの従属する物体を含み、前記K番目の物体の前記拘束された多関節運動量ベクトルに関連する量を求めることを含み、前記K番目の物体の前記拘束された多関節運動量ベクトルは、物体Kの拘束された多関節運動量
ベクトルと、従属する物体に共役なすべての従属正準運動量の線形関数との合計であって、さらに、前記拘束された機械システムについての1組のハミルトン運動方程式を得るために、前記拘束された多関節運動量ベクトルに関連する前記量を用いることを含む。方法は、前記K番目の物体の拘束された多関節運動量ベクトルを求めることを含んでもよい。系が拘束されていなかった場合、従属する物体iに共役な従属正準運動量が正準運動量と考えられてもよい。1組のハミルトン運動方程式を得ることは、一般化座標<太字>q、共役正準運動量<太字>p、および時間tについて、一般化座標<太字>qの時間導関数および共役正準運動量<太字>pの時間導関数についての以下の数式を得ることを含んでもよい。
Figure 2008509427
Figure 2008509427
方法は、前記拘束された機械システムにおいていくつかの従属する物体を任意に選択することを含む。
本発明はさらに、複数の物体を含む拘束された機械システムの運動をいくつかの時間ステップδtにわたって決定するための方法に関し、この方法は、前記拘束された機械システムについての1組のハミルトン運動方程式を得ることと、前記いくつかの時間ステップδtの各々について、ハミルトン運動方程式の前記組に基づいて、前記拘束された機械システムの前記複数の物体の少なくとも位置関連情報を再帰的に計算することとを含む。方法はさらに、前記拘束された機械システムの前記複数の物体の少なくとも位置関連情報の運動を視覚化、シミュレート、または予測することを含んでもよい。運動を決定することは、運動を視覚化、シミュレート、または予測することであり得る。
1組のハミルトン運動方程式は、一般化座標<太字>q、共役正準運動量<太字>pおよび時間tについて、一般化座標<太字>qの時間導関数および共役正準運動量<太字>pの時間導関数についての以下の数式を含み得る。
Figure 2008509427
再帰的に計算することは、
−拘束された機械システムについての拘束された多関節質量行列を逆方向に再帰的に計算することと、
−一般化座標<太字>qの時間導関数を順方向に再帰的に計算することと、
−拘束された、蓄積された力ベクトルを逆方向に再帰的に計算することとを含み、拘束された、蓄積された各ベクトルは検討中の物体上に蓄積された力を表わし、さらに、
−共役正準運動量<太字>pの時間導関数を求めることを含み得る。
方法はさらに、他の制限行列を決定するために順方向に再帰的に計算することと、前記第1の逆方向に再帰的に計算する間に最後の従属する物体に出会うと再帰方向を逆転させることとを含み得る。
前記拘束された機械システムについての1組のハミルトン運動方程式を得ることは、拘束された機械システムの運動方程式を求めるための本発明による方法のうちいずれかに従って運動方程式の組を求めることを含んでもよい。
前記拘束された機械システムについての1組のハミルトン運動方程式を得ることは、データソースからハミルトン運動方程式の組を入力することを含んでもよい。
運動は、前記拘束された機械システムの順動力学を含んでもよい。方法は、前記一般化座標<太字>qまたは前記共役正準運動量<太字>Pにおける突然の変化に基づいた、前記拘束された機械システムへの衝撃を検討することを含んでもよい。方法は、互いに接触する複数の物体を検討することを含んでもよい。複数の物体は剛体でもよく、各物体は前記複数の物体のうち少なくとも別の物体に関節で接続される。運動を決定することは、仮想プロトタイピング、仮想現実またはコンピュータアニメーションのいずれに適用されてもよい。
本発明はさらに、複数の物体を含む拘束された機械システムの運動をいくつかの時間ステップδtにわたって決定するための計算装置に関し、計算装置は、前記拘束された機械システムについての1組のハミルトン運動方程式に関するデータを得るための手段と、前記いくつかの時間ステップδtの各々について、ハミルトン運動方程式の前記組に基づいて、前記拘束された機械システムの前記複数の物体の少なくとも位置関連情報を再帰的に計算するための手段とを含む。運動を決定することは、運動を計算することでもよい。運動を決定することはさらに、前記拘束された機械システムの前記複数の物体の少なくとも位置関連情報を視覚化、シミュレート、および/または予測することを含んでもよい。
本発明はさらに、複数の物体を含む拘束された機械システムの運動をいくつかの時間ステップδtにわたって決定するためのコンピュータシステムとともに利用される、コンピュータプログラム製品にも関し、コンピュータプログラム製品は、前記拘束された機械システムについての1組のハミルトン運動方程式に関するデータを得るための命令手段と、前記いくつかの時間ステップΔtの各々について、前記ハミルトン運動方程式の組に基づいて、前記拘束された機械システムの前記複数の物体の少なくとも位置関連情報を計算するための命令手段とを含む。運動を決定することは、運動を視覚化、シミュレート、およ
び/または予測することであってもよい。運動を決定することはさらに、前記拘束された機械システムの前記複数の物体の少なくとも位置関連情報を視覚化、シミュレート、および/または予測することを含んでもよい。
本発明はさらに、いくつかの時間ステップδtにわたって、複数の物体を含む拘束された機械システムの運動を決定するためのコンピュータシステムと共に用いられるコンピュータプログラム製品を格納する、機械読取可能なデータ記憶装置に関し、コンピュータプログラム製品は、前記拘束された機械システムについての1組のハミルトン運動方程式に関するデータを得るための命令手段と、前記いくつかの時間ステップδtの各々において、前記1組のハミルトン運動方程式に基づいて、前記拘束された機械システムの前記複数の物体の少なくとも位置関連情報を計算するための命令手段とを含む。運動を決定することは、運動を視覚化、シミュレート、および/または予測することであってもよい。運動を決定することはさらに、前記拘束された機械システムの前記複数の物体の少なくとも位置関連情報を視覚化、シミュレート、および/または予測することを含んでもよい。
上述のように、本発明はさらに、通信ネットワークを介したコンピュータプログラム製品の伝送に関する。ネットワークはローカルエリア通信ネットワークであってもよい。本発明はさらに、複数の物体を有する拘束された機械システムの運動を決定するための方法をも与え、この方法は、
−拘束された機械システムについて拘束された多関節質量行列を逆方向に再帰的に計算することと、
−拘束された機械システムの一般化座標<太字>qの時間導関数を順方向に再帰的に計算することと、
−拘束された、蓄積された力ベクトルを逆方向に再帰的に計算することとを含み、各拘束された、蓄積された力ベクトルは、拘束された機械システム上に蓄積された力を表わし、さらに、
−共役正準運動量<太字>pの時間導関数を求めることを含む。運動を決定することは、運動を視覚化、シミュレート、および/または予測することを含んでもよい。運動を決定することはさらに、前記拘束された機械システムの前記複数の物体の少なくとも位置関連情報を視覚化、シミュレート、および/または予測することを含んでもよい。
この方法はさらに、他の制限行列を決定するために順方向に再帰的に計算することと、前記逆方向に再帰的に計算する間に、最後の従属する物体に出会うと再帰方向を逆転させることとを含んでもよい。
本発明はさらに、運動を決定するためのコンピュータベースのシステムを与え、システムは、拘束された機械システムについての拘束された多関節質量行列を逆方向に再帰的に計算するための手段と、拘束された機械システムの一般化座標<太字>qの時間導関数を順方向に再帰的に計算するための手段と、拘束された、蓄積された力ベクトルを逆方向に再帰的に計算するための手段とを含み、各拘束された、蓄積された力ベクトルは拘束された機械システムに蓄積された力を表わし、さらに、共役正準運動量<太字>pの時間導関数を求めるための手段を含む。運動を決定することは、運動を視覚化、シミュレート、および/または予測することであってもよい。運動を決定することはさらに、前記拘束された機械システムの前記複数の物体の少なくとも位置関連情報を視覚化、シミュレート、および/または予測することを含んでもよい。
本発明による多体系の運動をシミュレートするための方法およびシステムの利点は、多数の物体を含む多体系、すなわちたとえば少なくとも8個の物体を有する系について、優れたシミュレーション結果を得るために必要とされる算術演算の数が限定されること、すなわち先行技術の手法と比較して低減されることである。
本発明によって、拘束違反誤差の評価がよい、すなわち先行技術の手法よりも拘束違反誤差が少ない運動方程式を得ることが可能になることも利点である。
さらに、このシミュレーション方法およびシステムの一定のパラメータについて特定の値を選択することにより、閉ループ機械システムのための方法を開ループ機械システムにも用いることができることも、本発明の別の利点である。
さらに本発明は、機械システムの順動力学を計算すること、機械システムに対する衝撃を検討すること、および、接触している物体はトポロジーが変化する多体系として扱うことができるので、異なる物体間の接触を検討することのために用いることができるのも、本発明の利点である。
本発明の教示は、拘束された機械多体系の運動をシミュレートするための改良された方法およびシステムの設計を可能にする。
本発明のこれらの、および他の特性、特徴および利点は、添付の図面に関連して以下の詳細な説明から明らかになり、図面は本発明の原理を例によって図示する。この説明は本発明の範囲を限定することなく例としてのみ与えられる。下記に引用される参照符号は添付の図面を参照する。
例示的な実施例の説明
本発明は特定の実施例に関し、一定の図面を参照して説明されるが、本発明はそれらに限定されるものではなく、請求項によってのみ限定される。説明された図面は概略的であり非限定的である。図面において、説明の目的のためにいくつかの要素のサイズは誇張されていることがあり、必ずしも縮尺通りに描かれないことがある。
請求項で用いられる用語「含む(comprising)」は、後に列挙される手段に限定されるよう解釈されるべきではなく、それは他の要素またはステップを排除するものではないことに注意されるべきである。したがって、表現「手段AおよびBを含む装置」の範囲は、構成要素AおよびBのみから構成される装置に限定されるべきではない。これは本発明に関しては、装置のうち関連する構成要素のみがAおよびBであることを意味する。
本発明は、拘束された機械多体系の運動を効率的に求め、またはシミュレートすることを可能にする。運動を決定することは、運動のシミュレーション、予測、または視覚化であってもよい。本発明は、拘束された機械多体系の順動力学について、再帰的なアルゴリズムにおいてハミルトンニアンの形式を用いることに焦点を絞る。下記において、拘束された機械多体系はさらに閉ループ機械多体系と称される。典型的には、閉ループ機械多体系についてトポロジーが検討される。本明細書において、用語「拘束された多体系」および「閉ループ系」は、開放端または自由端がない系についてのみ用いられるのではなく、開放端または自由端がない系の一部と1つ以上の開放端がある系の一部とを組合せた系についても用いられる。本発明は、拘束された機械的多体サブシステムと拘束されない機械多体系とを組合せる系においても用いることができる。このような系の扱いについては、これらの系は、本発明に従った方法で検討される拘束されたサブシステムと、いずれかの適切な方法で検討される拘束されないサブシステムとに分割され、その方法は、本発明による、拘束方程式が課されない方法を含む。下記において、拘束された系または拘束されたサブシステムを計算することのみを扱う。
閉ループ機械多体系内に存在する拘束の数は、1、2、3、またはそれ以上であり得る。拘束の数は、物体の数および物体間の関節のタイプに依存する。さらに、機械システムは、単一のループ、または多体系の2つの端部においてのみ拘束された系に限定されるわけではない。拘束は、レオノーム拘束を含む、物体間のいかなる種類の運動学的拘束であってもよい。本明細書において多体系とは、複数の物体を含むすべての機械システムを意味する。多体系は関節によって接続されるいくつかの剛体であっても、たとえば互いに接触するいくつかの自由体であっても、またはこれらの組合せであってもよい。本発明は、接続された物体を含む系において用いられる関節のタイプによっては限定されない。関節は、たとえば回転関節または平行移動関節であってもよい。本発明は変形が存在しない物体について説明されているが、変形可能な物体に対する拡張も実行され得ることは当業者にとって明らかであろう。
本発明を説明するために用いることができる明示的な数学的言語は、たとえば行列代数、ベクトル代数、または対応するベクトル空間の表現などであり得るが、本発明はそれらに限定されない。本発明の実施例に従って計算を実行する他の方法は、たとえばニューラルネットワークを適用することによって可能である。さらに、本発明の実施例の公式化は、1つの記述の中で異なる数学的言語を用いて行なうことができる。ベクトル代数によって導入される概念は、行列代数を用いて、またはベクトル空間表現を用いても等しく表わすことができ、その逆も成立する。本発明の実施例の本説明は、例として、ベクトルおよび行列代数を用いてなされる。機械多体系が従う必要のあるさまざまな物理的関係および拘束は方程式を用いて表わされる。典型的には、拘束された系を記述するための方程式の数は、拘束されない系の記述のための数よりも大きい。拘束はいくつかの拘束方程式として表わされる。ベクトル空間表現では、拘束方程式は拘束部分空間を規定し、数学的方程式の解または物理量の値が拘束と一致する必要がある場合は、数学的方程式の解または物理量の値は、その拘束部分空間(の一部)に限定される必要がある。
本発明の方法は、運動方程式の再帰的な公式に基づく。再帰的な公式は、部分的にそれ自体によって規定されるエンティティを規定する。換言すれば、再帰的な公式は自己参照要素がある公式であって、すなわちエンティティはそれ自体を参照することによって部分的に規定される。再帰的な構成も関数の公式として規定されてもよく、そこからその関数の値を有限数のステップにおいてかなり正確に計算することができる。
本発明の方法はハミルトン運動方程式に基づく。一般に機械システムの運動方程式のハミルトンの公式は当業者に周知である。運動方程式のハミルトンの公式は、典型的には、一般化座標および正準運動量の関数として表わされる運動方程式の公式である。
本発明の第1の実施例において、拘束された機械システムの運動を決定することを可能にする1組の運動方程式を用いるための方法が説明される。拘束された機械システムは、拘束された多体系であってもよい。方法は、拘束された多体系の運動方程式のハミルトニアン形式を得ることに基づく。拘束は閉ループ多体系を伴ってもよい。運動方程式の一般的なハミルトニアン形式は、一般化座標<太字>qの時間導関数と共役正準運動量<太字>pの時間導関数とによって表わすことができる。
Figure 2008509427
Figure 2008509427
下記において、方法100の異なるステップを適用するための可能な方法がさらに詳細に与えられる。方法100のステップを実行するための明示的アルゴリズムが例としてのみ与えられ、いずれかの、またはすべてのステップを実行するための異なるアルゴリズムが本発明の範囲を出ることなく用いられ得ることは、当業者にとって明らかである。
拘束された多体系の動力学的分析ステップ102において、多体系において従属する物体と考えられる物体が決定される。この明細書において、従属する物体は、その共役座標が従属的である、多体系における物体として定義される。従属する物体の数は、これらの従属する物体の拘束の数および関節のタイプ、すなわち関節の自由度数によって決定される。たとえばピン継手は自由度1を有するが、球面継手は自由度3を有する。従属する物体の関節の自由度の合計が拘束の数と等しい場合、従属する物体の有効な組が得られる。したがって、従属する物体の数は固定されず、選択された従属する物体の関節の種類に依存する。物体と関節との番号付けは、通常閉ループ系についてそれがなされる原理と同一の原理に基づいてなされる。固定端における物体、すなわち壁や床などに接続された物体は最小の番号を有し、物体が拘束の組のうちのある拘束によって拘束された他の関節に近づくにつれて、より大きな番号が付けられる。他の関節は、たとえばループ端部、多体系の環境の機構への摺動可能な接続部などであり得る。他の関節の数はこの明細書にある1には限定されず、2、3、またはそれ以上であってもよい。
特定の物体について、外部の物体は、その物体自体よりも他の関節に近く位置決めされる物体であって、一方内部の物体については、考慮される物体よりも他の関節から遠ざかった他の物体が言及される。換言すれば、本体の番号付け、および、ある物体の内部、外部の物体の定義は、以下のように行なうことができる。第1に、系のベースが選択される。これはしばしば異なる有効な方法で行なうことができる。典型的には、ベースは動かない基準フレーム、たとえば壁、天井などに接続された物体として選択される。動かない基準フレーム自体は0番を得、ベースの物体は1番を得る。ベースの物体はそこに1つ以上の物体を接続することができる。この場合、ベースの物体は親と呼ばれ、親に直接接続される他の物体は子である。子は常により大きな番号を有し、親の外部の隣接する物体である。親は常に子よりも番号が小さく、これらの子と比較して常に内部の物体である。子体Kは常に、Pa(K)として表示される1人の親を有するが、Ch(K)として表示される1つ以上の子の物体をそこに接続することができる。これらの1つ以上の子の物体は子の物体Kについての外部の物体であって、子の物体Kより大きな識別番号を有する。番号付けは、開放端の先端に達するまで、動かない基準に達するまで、または物体が既に番号が付けされた物体に達するまで行われる。閉ループ系における番号付けを示すため、関節の切断が図2に示される。図2は、2つの運動学的ループを有する閉ループ系を示す。番号0および12で示される2つの地面との接続と、物体3から9で示される1つの内側ループとがある。一定の関節を壊すことによって開ループ系が得られる。たとえば物体9と物体3との間の関節および物体11と物体12との間の関節が選択されて切り離されてもよい。取除かれた関節は拘束関節と呼ばれる。ツリーを外部に向かう方向にスイープすると最初に遭遇する内側ループの要素がループベースと呼ばれる。これは図2では物体3である。それは1つの子、すなわち物体4を有する。物体9のみが子孫である。
Figure 2008509427
Figure 2008509427
Figure 2008509427
Figure 2008509427
Figure 2008509427
Figure 2008509427
Kは、考慮される他の関節に関連するすべての従属する物体を表わす。Lは、他の関節のベースの物体または特定の物体である。物体が地面である場合、物体Lの空間速度ΩLはゼロである。この場合、後者は物体Cの空間速度ΩCとも呼ばれることができ、ここでCは環境を表わすが、物体Cの空間速度ΩCは物体Lの空間速度ΩLとは異なる基準フレームで表わされる。行列<太字>Cは、多体系の拘束の行列の表現である。このように、ヤコビ行列を直接使用せずに従属速度を得ることが可能である。この方法を用いて、閉ループ系の順動力学についての再帰的なアルゴリズムが可能になる。
関節座標に共役な共役正準運動量は、以下のステップにおいてここでさらに計算される。ステップ108において、拘束された多関節運動量ベクトルが計算される。剛体の運動量ベクトルは下記のように定義される。
Figure 2008509427
ここで、MKは物体Kの質量であり、ΩKはその空間速度である。物体の多関節運動量ベクトルは、その物体の運動量ベクトルおよびそこまで低減されたすべての外部の物体の運動量ベクトルの合計である。
Figure 2008509427
多体系のすべての物体について多関節運動量ベクトルを規定し、ここでOBは「外部の物体」、AOBは「隣接した外部の物体」を意味する。拘束された多関節運動量ベクトルは最後に以下のように定義される。
Figure 2008509427
Figure 2008509427
ステップ110において、共役正準運動量が計算される。共役正準運動量を計算するために、独立座標への空間速度の偏導関数が必要である。独立空間速度については、以下が得られる。
Figure 2008509427
上述のように、リンクの番号付けが、開ループ系についてと同じように起るが、他の関節はその目的のためにまず切断される。したがって、外部は常に他の関節または開放端を指す。開ループ系については、外部の物体は検討中の物体Kよりも大きな識別番号を得る。複雑な多体系が複数の他の関節を伴って記述される場合、番号付けは異なっていてもよい。従属速度については、以下の再帰的な方程式となる。
Figure 2008509427
iは、従属する物体Kdepの識別番号より常に小さい。なぜならば従属座標に関する偏導関数が得られないからである。ここで共役正準運動量を計算することができる。定義[22]を用いて[23]が得られる。
Figure 2008509427
このように共役正準運動量は、関節部分空間上に射影される拘束された運動量ベクトルである。拘束された運動量ベクトルの導入により、閉ループ系についての再帰的なハミルトンのアルゴリズムの構築が可能になる。
ステップ112において、共役正準運動量または関節部分空間上の拘束された運動量ベクトルの射影は、空間速度の関数として表わされる。これは、拘束された運動量ベクトルを物体の運動量ベクトルおよび隣接した外部の物体の運動量ベクトルの関数として表わす方程式[15]を用いて得ることができる。次に、運動量ベクトルは、質量および空間速度の関数として、すなわち方程式[13]を用いて表わすことができる。これは、その物体の空間速度の関数としての拘束された運動量ベクトルの数式に至る。
Figure 2008509427
ステップ116において、仮想パワーの原理が拘束された多体の問題に適用される。仮想パワーの原理は、機械システムに作用する反力が仮想運動の下ではパワーを送らないことを述べる。それは以下のフォームで表わすことができる。
Figure 2008509427
Ωi *は仮想空間速度であって、Piは運動量ベクトルであり、Tiは物体iに対する空間外力ベクトルである。換言すると、ある物体に作用する反力を有するその物体のいずれかの仮想空間速度の生成品の合計はゼロに等しく設定されなければならない。仮想空間速度を座標速度の関数として表わし、従属座標速度を独立座標速度の関数として表わした後、上記の方程式は2n一次微分方程式の組に分離され得、nは系の自由度(DOF)数である。ヤコビを使用する場合には問題が生じる。なぜならばそれは、これらの方程式に強い相互依存を導入し、再帰的なO(n)方法を調整することを不可能にするか、または非常に難しくするからである。これが、本方法100においてステップ102から106が用いられる理由である。
ステップ118において、対応する方程式は独立関節速度の関数としてのみ表わされる。このように得られた数式における係数はゼロに等しく設定される。
以下のフォームの数式を得るために、独立関節速度のみの関数として仮想パワーの原理を書くことができる。
Figure 2008509427
考慮される関節速度が独立であり、上記の数式が仮想速度のいずれかの組について保持しなければならないので、係数Aiはゼロに等しくなければならない。これは、独立仮想関節速度に関連する方程式[24]の左側の偏導関数がゼロでなければならないというステートメントと等価である。
ステップ120において、拘束された、蓄積された力ベクトルは多体系の物体に作用する力の合計を表わし、逆方向の再帰的な方程式によって定義される。
Figure 2008509427
下記において、拘束された多体系の運動のシミュレーションについての運動方程式を求める2つの明示的な例が挙げられる。第1の例160は、N個のチェーンリンク162を有する平面の鎖の動きについての図であって、鎖の第1の端部は、壁または天井などの動かない環境に、たとえばピン継手164などの関節によって固定され、一方で鎖の第2の端部は、たとえば固定ロッド166に摺動可能に取付けられるなど、可動に取付けされる。このような鎖の例は図3aに示される。第2の例180は、N個のチェーンリンクを含
む平面の鎖の図であって、そこにはループ182が存在する。この系は図3Bに示される。
例1
第1の例160は、N個のリンク162を有する平面の鎖であって、図3aに示される例においては9個のリンク162がある。その一方端はピン継手164によって動かない環境に固定され、他方端は固定ロッド166に沿って摺動可能に取付けられる。N+2個の関節座標がある。各ピン継手164の各々について1つずつ、および鎖の端部について付加的な2個がある。自由度(DOF)数はN−1であって、これは3つの座標が従属物として選択されることを示す。上述の方法は、1組のハミルトン運動方程式を得るためにここで用いられる。最終の物体および拘束に関連する座標を従属座標<太字>qNおよび<太字>qcとして選択することができ、最後のベクトルは2つの座標を有するベクトルである。剛体Kの運動は、いわゆる空間速度<太字>ΩKによって記述され得る。
Figure 2008509427
以下に示されるように、従属する物体の空間速度を隣接する内部の物体の空間速度の関数として表わすことが可能である。
Figure 2008509427
仮想物体として考慮することもできる環境の空間速度<太字>ΩCはゼロである。このように、他の関節の関節速度は最後の物体の空間速度の関数として書くことができる。
Figure 2008509427
方程式[28]に代入すると下記の結果となる。
Figure 2008509427
Figure 2008509427
Figure 2008509427
Figure 2008509427
Figure 2008509427
後者はいくつかの面倒な計算の後に得られる。方程式[39]の関節部分空間への射影
は下記の結果となる。
Figure 2008509427
他方の関節Kに共役な運動方程式は、開ループ系に対するものと同じフォームを有する。
Figure 2008509427
ここで拘束された力ベクトルは下記のようである。
Figure 2008509427
Figure 2008509427
Figure 2008509427
各項は<太字>ΩN-1の関数として表わされる必要があり、以下が得られる。
Figure 2008509427
拘束された運動量ベクトルは以下のようになる。
Figure 2008509427
Figure 2008509427
Figure 2008509427
Figure 2008509427
Figure 2008509427
これは開ループ系についてのものと同じフォームである。残る関節速度Kはこのように同じ方法で計算することができる。
方程式[52]は、一般化座標の導関数についてのハミルトン運動量方程式がどのように得られるかを示し、そこで拘束された質量行列についての逆方向の再帰が必要であり、方程式[50]として表わされる。一般化座標の導関数についての他のすべてのハミルトン運動方程式は、方程式[44]から[58]で表わされるように、順方向の再帰を適用することによって得ることができる。
このように、例1についてはハミルトン方程式が求められ、再帰的な方法によって公式化される。
例2
Figure 2008509427
Figure 2008509427
<太字>Ωおよび<太字>Ωの関係は剛体における速度場によって記述される。部分空間<太字>E上の射影後、以下が得られる。
Figure 2008509427
方程式[59]に代入すると以下の結果となる。
Figure 2008509427
Figure 2008509427
Figure 2008509427
方程式[59]に代入した後、以下が得られる。
Figure 2008509427
Figure 2008509427
Figure 2008509427
これは対称行列である。さらに計算すると以下の結果を生じる。
Figure 2008509427
Figure 2008509427
Figure 2008509427
方程式[75]の射影は、結果として共役正準運動量の時間導関数についての数式となり、それは方程式[41]および[42]に類似する。他のループ体は、物体Lまで、例1の場合と同じように扱われる。拘束されたベースの物体Lにおいて、反力およびトルクは鎖の閉鎖によって互いに平衡を取る。その物体以降、鎖を開ループ系として扱うことができる。
Figure 2008509427
この発明の実施例の利点は、加速度に基づく手順に必要であるほど、再帰的なステップが加速度には必要でないことである。
第2の局面では、この発明は拘束された機械システムの運動、たとえば拘束された機械
システムの動力学を決定するための方法に関する。機械システムは多体系であってもよい。運動を決定することは、運動を視覚化、シミュレート、予測することであってもよい。この方法は、たとえば拘束された多体系についての運動方程式を得ることと、拘束された多体系の動力学が特定のタイムフレームにわたって計算され得るようにこれらの運動方程式を適用することとによって系の動力学についてのモデルを得ることを含む。この方法は図4に示され、図4では、この実施例の方法の異なるステップが示される。この実施例では、象徴的な方法で表わされる物理量および非物理量の定義は、第1の実施例で与えられたものに類似している。
第1のステップ202では、系の動力学についてのモデルが、たとえば運動方程式のハミルトン公式を得ることによって得られ、このハミルトン公式は一般化座標の時間導関数および共役正準運動量の時間導関数を表わす。これらの方程式は、たとえば以前に保存されたデータを用いてデータを入力することによって、または以前の実施例に記載された方法を用いてこれらの方程式を計算することによって得られることができる。これらの方程式はさらに、検討されるべき多体系の特定の状況について速やかに得られる場合もあれば、これらの方程式はより一般的な形で得られる場合もあり、それによって、多体系を特徴付ける特定の非動力学指向のパラメータは依然としてユーザによって与えられる必要がある。方程式が実行時に計算される場合には、最初に、系のトポロジー、関節の種類、多体系の質量、慣性および幾何学的特性の情報が得られる。運動方程式を得ることは、系の予めコンパイルされた運動方程式をロードすることによって、または代替的には実行時にこれらの方程式をセットアップすることによって実行されることができる。これらの方程式がいかに得られるかという厳密な方法はこの発明を限定するものではない。これらの方程式は、既に上述されたように、以下によって与えられる。
Figure 2008509427
第2のステップ204では、計算を行なうのに必要なパラメータが与えられる。これらのパラメータはたとえば、とりわけ初期時間t=tiを有する系の初期条件と、終止条件、つまり計算が行なわれる必要がある機械システムに関連付けられる期間Δtとを含んでもよい。計算の開始時に系の公知の状態を表わす他の初期値、たとえば初期位置も与えられてもよい。与えられ得る他のパラメータは、たとえば重力および駆動などの、系に加えられる力ならびにトルクである。これらのパラメータを与えることによって、拘束された機械多体系の動力学を決定することが可能である。
ステップ206では、初期情報または以前のサイクルで得られた情報に基づいて計算が新しい時間tについて後続のステップで得られることができるように時間tは時間ステップδtで増大される。順動力学を計算するために用いられる時間ステップδtは主に、記載される拘束された機械多体系についておよびこれらの計算を行なうために用いられるコンピュータシステムの計算能力について、計算が行なわれる特定の用途によって決定される。本願の方法およびシステムにおいて用いられ得る時間ステップδtは、他のタイプの計算で用いられる時間ステップと少なくとも同一のものである可能性があるが、さらにこの範囲を超える可能性がある。なぜなら必要な計算の回数が他のタイプの計算よりも少ないためであり、これによって、同一の計算時間で同一の期間Δtを計算するためのより小さな時間ステップが可能である。代替的には、時間ステップδtはさらに他のタイプの計
算よりも大きくてもよい。なぜならこの発明の計算方法およびシステムにおける収束の程度が他の先行技術のシステムよりも大きいためである。方法200は次いでステップ208に進む。
ステップ208では、時間tにおいて検討中の拘束された機械多体系の動力学を得るために計算が行なわれる。このステップは、得られたハミルトン運動方程式およびハミルトン運動方程式を求めるために用いられるいくつかの量の定義に基づいた異なる計算を含む。この結果によって、ハミルトン運動方程式の再帰的な公式に基づいて、拘束された機械多体系を完全に特徴付けるパラメータを得ることができる。後者はアルゴリズムの高効率を可能にし、必要な計算能力の量を低減できる。この方法はさらに、拘束違反誤差の数を減らす。拘束された機械多体系を特徴付けるパラメータの明示的な値を計算する可能な方法がステップ210からステップ220に示されるが、この発明は計算のこの具体的な方法に限定されるものではない。
Figure 2008509427
ステップ214では、逆方向の再帰的なステップを用いて、拘束された、蓄積された力ベクトルが求められる。この逆方向の再帰的なステップのために用いられる方程式の例は、例1のために求められた方程式[43]である。このように、拘束された、蓄積された力ベクトルが得られる。拘束された、蓄積された力ベクトルは、別個の再帰ステップを必要とする。なぜなら拘束された、蓄積された力ベクトルは運動量ベクトルに依存しているためである。
ステップ216では、ステップ202で得られた方程式[77]を用いて、一般化座標に共役な正準運動量の時間導関数が求められる。これらの方程式の実際の例証は、例1の方程式[39]から[43]から得られることができる。方程式[42]の中に存在する拘束された、蓄積された力ベクトルの値は、ステップ214で行なわれた計算に基づいて導入される。このように、ハミルトン運動方程式の第2の部分に一致する結果が得られる。
ステップ218では、時間tにおいて拘束された機械多体系を完全に特徴付けるのに必要なパラメータがいくつかのサイクルにわたって決定される。これによって、たとえば異なる物体の経路について、起こり得る衝撃について、または接触しているもしくは接触していない物体についての拘束された機械多体系の情報を得ることが可能である。これらの結果は速やかに保存または出力または表示されることができる。この方法は、拘束された機械システムの物体の位置関連情報を視覚化、予測またはシミュレートすることを含んでもよい。得られた結果は典型的には、仮想プロトタイピング、仮想現実、コンピュータアニメーションおよび航空電子工学の分野に適用されるが、この発明はこれらの用途に限定されるものではない。仮想プロトタイピングによって、現実のプロトタイプシステムを製造する必要なくプロトタイプ多体系のための検査をシミュレートできる。後者は、時間的コストおよび経済的コストの両方を低減するので大きな利点を有する。仮想プロトタイピングの分野における用途のいくつかの例は、道路の車の動的なシミュレーションを行なうこと、車、ロボットなどのための代替的な設計を検討すること、ロボットの足のシミュレーション、構成要素または環境要因が変化したときの代替的な挙動を予測することなどである。別の用途は、たとえば宇宙船における最適な質量補償、つまり能動振動の決定である。仮想現実の場合には、計算の結果は典型的にすばやく読出される。なぜならリアルタイムの表現を得る必要があるためである。仮想現実のための典型的な用途は、車などの動く物に存在する効果などのシミュレートされるものの物理的効果を感じることができるゲームまたはシステムである。コンピュータアニメーションの分野において、つまり多体系である物理的システムの少なくとも近似設計を視覚化するためにも用途が見出されることができる。後者はたとえば人が走っていることを表示するゲームの中でアニメーションのために用いられる。
決定ステップ220では、系の精度および安定性が十分に高いかどうかまたはステップ210から218の繰返しが必要であるかどうかが判断されることになる。再帰的なステップを実行する数値積分器は典型的には、精度および安定性を確保するために再帰的なステップを二度以上実行する。精度および安定性が十分に高い場合には、方法200はステップ222に進む。そうでなければ、ステップ210から218が数値積分器によって繰返される。決定ステップ220を適用する、したがってフィードバックループを与える代わりに、ステップ210から218の一定数の実行を用いることも可能である。
決定ステップ222では、拘束された機械多体系の順動力学の他の計算が必要であるかどうか、つまり対象の順動力学の十分な計算が既に行なわれているかどうかが判断されることになる。現在の時間が終了時間tendに等しい場合には、この計算は終了し、方法200は終了ステップ224に進む。終了時間tendは、予め定められた値である場合もあれば、計算の発散の程度に依存する場合もある。代替的には、終了時間は特定の事象の発生によっても決定されてもよい。終了時間にまだ到達していない場合には、方法200はステップ206に進み、時間がδtで増大された後に新しい計算サイクルが再開される。
この発明の第3の局面では、拘束された多体系の運動を決定できる一組の運動方程式を用いるための方法が記載され、この方法は第1の実施例に類似しているが、従属する物体の任意の選択がなされる。それによって、運動を決定することは、拘束された多体系の運動、つまり拘束された多体系の異なる物体についての位置関連情報を視覚化、シミュレートまたは予測することであってもよい。したがって、第1の実施例では、基礎をなす開ループ構造の端部において、つまりこの構造を切離すことによって得られる開ループ構造の端部において従属する物体が選択されていたのに対して、この実施例では、従属する物体の選択の任意の選択を可能にする方法がもたらされる。後者は特異点の問題の回避を可能にすることに有利である可能性がある。第1の実施例に記載された方法が本質的にはこの実施例によっても記載されることは当業者にとって明らかである。後者は平面の鎖の例についても示されることになり、それによって、基礎をなす開ループの端部における従属す
る物体の選択のためにおよび従属する物体の任意の選択のために運動方程式が求められる。従属する物体/独立の物体の任意の選択は、運動方程式を求めるための再帰的な式を混同することにつながる可能性がある。独立座標の任意の選択がなされる場合には、従属空間速度は内部の独立の物体に低減されることになるだけでなく、外部の独立の物体に影響を与えることにもなり、したがって、再帰的な関係を混乱させる。したがって、従属空間速度は第1の逆方向の再帰ステップでは自動的に扱われることができない。したがって、再帰的な式はわずかに異なる方法で得られる。
Figure 2008509427
運動方程式の一般的なハミルトニアン形式は、一般化座標<太字>qの時間(t)導関数および共役正準運動量<太字>pの時間導関数によって表わされることができる。
Figure 2008509427
多体系の場合には、物体の各々はその一般化座標<太字>qおよびその共役正準運動量<太字>pの時間導関数についての方程式によって表わされることになる。この発明の実施例は、複数の物体を含む拘束された機械システムの動力学が計算され得るように運動方程式についての再帰的な公式を与える。閉ループ系の完全な運動方程式を得るために、3つの再帰ステップが必要である。運動方程式を得るために実行され得る異なるステップは、図1に記載されたものと同じであり、第1の実施例により詳細に記載される。相違点は、従属する物体の任意の選択の可能性である。この方法の明示的な数学的記述は、第1の実施例に与えられた例示的な数学的記述とは異なる。なぜなら独立座標の任意の選択が内部および外部の両方の独立の物体に低減されることになるためである。運動方程式を導くまたは得る可能な方法の例示的な数学的記述が以下により詳細に与えられる。この発明のこの実施例の方法のステップを実行するための明示的なアルゴリズムが単なる例示として与えられ、任意のステップまたは各ステップを実行するための異なるアルゴリズムがこの発明の範囲を逸脱することなく適用され得ることは当業者にとって明らかである。
まず第1に、ループクロージャによって導入される新しい関節座標は従属していると考えられることができ、従属していると常に考えられることになることが注目されるべきで
ある。一般的な数式は帰納法によって証明されることになり、拘束関節に関連する方程式は境界条件の役割を果たす。しかしながら、系は任意の量の物体を有する可能性があり(n>2、そうでなければ運動がない)、2つの従属する物体は同様に任意に選択されることが可能である。
拘束方程式は以下のとおりに得られることができる。総称的な(拘束された)多体系では、拘束方程式の異なる形が以下によって再帰的に与えられることができる。
Figure 2008509427
拘束関節N+1は常に従属しているように選択され、したがって以下の境界方程式が用いられることが可能である。
Figure 2008509427
総称的な関係は、帰納方法を用いて有効であると見られることができる。方程式が物体Kについて当てはまると推定されたい。その場合には、方程式は親の物体L=Pa(K)についても当てはまる。実際には、空間速度を分割することによって、以下が与えられる。
Figure 2008509427
Figure 2008509427
Figure 2008509427
Figure 2008509427
Figure 2008509427
方程式[208]に代入することによって最終的に正しい数式になる。独立の物体に共役な正準運動量は以下によって与えられる。
Figure 2008509427
ここで、拘束された多関節運動量ベクトルは以下のとおりである。
Figure 2008509427
ここで、dep(K)は物体Kのすべての従属する物体の集合である。
第1の実施例と同様に、仮想パワーの原理が用いられることになる。運動方程式は比較的容易に得られることができる。独立の物体Kについては以下のようになる。
Figure 2008509427
葉状物体Nの拘束された力ベクトルは以下のとおりである。
Figure 2008509427
葉状物体Nについては以下のようになる。
Figure 2008509427
境界条件は<太字>DN=<太字>0である。したがって、物体Nについては以下のようになる。
Figure 2008509427
第1に遭遇した従属する物体までのすべての他の物体Kについての数式は以下のとおり
である。
Figure 2008509427
Kが従属している場合には、以下のようになる。
Figure 2008509427
第1の従属する物体、つまりベースからの第1の従属する物体に遭遇するとすぐに、速度は関節拘束まで順方向に伝搬され得る。第1の従属する物体Aの関節および空間速度についての数式は以下のとおりである。
Figure 2008509427
この伝搬は、関節拘束に到達するまで継続され得る。次いで、従属正準運動量を得るために拘束方程式が用いられることができる。この情報を用いて、再帰プロセスが再開されることが可能である。
上記は、独立の物体および独立座標ならびに結果として従属する物体および従属座標の任意の選択のための運動方程式の決定を記載する。
総称的な多体系の動的なシミュレーションの間に、特異点が発生する可能性がある。数学的には、特異点は典型的にはCq−matrixの計算中に特異点自体を明らかにする。この行列は、必ずしも正則ではない別の行列の反転を必要とする。特異点が発生する場合、独立座標の組は有効ではなく、変更されるべきである。特異点が第1の逆方向の再帰中にすばやく検出され得ることに注目するのは興味深いことである。
一組の運動方程式を求めるための上述の方法を示すために、上述の例示的な数学的記述は、両端がピン継手によって地面に固定された平面の鎖の例に適用されることになる。4つの関節座標が存在するが、自由度はわずか2である。関節5は拘束関節であるように選択される。関節5を取除くことによって、基礎をなす開ループ構造が生み出される。基礎をなす開ループ構造の端部において従属座標が選択される方法、つまり図5aに示される例3と、従属座標がより任意に選択される方法、つまり図5bに示される例4との両方を記載する。
例3
第3の例では、この実施例の方法は、図5aに記載されるように両端が固定された平面の鎖について示される。最後の2つの物体、つまり物体3および物体4は従属していると考えられ、この実施例に記載される方法は、第1の実施例に記載されたように、基礎をなす開ループ構造の端部において従属座標の発生も包含することを示す。
系全体についての仮想パワーの原理を書くと、以下のようになる。
Figure 2008509427
Figure 2008509427
これによって、仮想パワーの原理を以下のように書くことができる。
Figure 2008509427
Figure 2008509427
Figure 2008509427
従属空間速度<太字>Ω3および<太字>Ω4を低減するために、拘束方程式の第1の形から始める。
Figure 2008509427
図5aに示される基準フレーム5は、ループクロージャにおける地面を表わす。基準フ
レーム5は、中間量として用いられることになる関連付けられた(従属)拘束関節<太字>q5を有する。なお、拘束方程式の上の数式は冗長である。つまり、わずか2つの拘束について6つの方程式が存在する。空間速度の分割によって、以下が与えられる。
Figure 2008509427
部分空間<太字>E5上への射影後、物体5の関節速度についての数式は以下のように得られる。
Figure 2008509427
Figure 2008509427
行列<太字>Cは制限行列と呼ばれる。方程式[244]は典型的には、拘束方程式の第2の形と呼ばれる。方程式[242]および[243]を用いて、物体5、つまり実際には地面の空間速度は、物体4の空間速度に低減されることができる。
Figure 2008509427
Figure 2008509427
Figure 2008509427
Figure 2008509427
Figure 2008509427
Figure 2008509427
Figure 2008509427
Figure 2008509427
Figure 2008509427
仮想パワーの原理に戻る前に、独立座標に関連付けられる正準運動量をより詳しく見る必要がある。正準運動量は従属座標について存在しない、つまり正準運動量は独立座標についてのみ規定されることを認識することが重要である。
Figure 2008509427
物体の拘束された多関節運動量ベクトルは以下のように規定される。
Figure 2008509427
物体2に関連付けられる正準運動量は以下のようになる。
Figure 2008509427
従属する物体3および4についてのベクトル<太字>Cq *が以下によって与えられることを読者は容易に検証できる。
Figure 2008509427
物体4以外のすべての物体についての拘束された運動量ベクトルは、以下の再帰的な関係を用いても得られることができる。
Figure 2008509427
同様に、物体1についての正準運動量は容易に得られることができる。
Figure 2008509427
以前のセクションにおいて導入された速度低減を用いて、仮想パワーの原理は以下のように書くことができる。
Figure 2008509427
係数<太字>A2は以下のように容易に識別されることができる。
Figure 2008509427
Figure 2008509427
Figure 2008509427
Figure 2008509427
Figure 2008509427
最後に、A2についての数式は以下のように得られることができる。
Figure 2008509427
したがって、<太字>A2=<太字>0は以下に変換されることが可能である。
Figure 2008509427
同様に、多関節物体1については以下のとおりである。
Figure 2008509427
Figure 2008509427
Figure 2008509427
物体3の拘束された運動量ベクトルは以下のように書くことができる([260]参照)。
Figure 2008509427
Figure 2008509427
Figure 2008509427
Figure 2008509427
Figure 2008509427
物体1についての関節速度を得るために、拘束された運動量ベクトルについての数式[285]に上の方程式を代入できる。
Figure 2008509427
以前の手順を繰返すことによって、以下が与えられる。
Figure 2008509427
次いで、関節速度は以下のとおりである。
Figure 2008509427
この方法は、開ループ系用に設計されたものと非常に類似している。この方法は再帰的であり、O(n)のものである。この方法は依然として3つの典型的な再帰スイープを含み、この3つの典型的な再帰スイープとは、慣性特性、残りの運動量および制限行列を計算するための逆方向の再帰と、その後に続く、速度および拘束された運動量ベクトルを解くための順方向の再帰と、最後に、拘束された力ベクトルを計算するための最後の逆方向の再帰とである。
例4
第4の例では、この実施例の方法は、図5bに記載されるように両端が固定された平面の鎖について示される。物体1および3は従属しているものとして選択され、したがって、従属する物体の任意の選択のためにこの実施例に記載される方法が適用されることを示す。以前の例における独立座標の特定の選択には1つの重要な結果があった。つまり、従属空間速度は内部の独立の物体に低減されることができ、したがって、第1の逆方向の再帰ステップにおいて扱われることができた。独立座標の任意の選択がなされる場合、従属空間速度は外部の独立の物体にも影響を与えることになり、再帰的な関係を混乱させる。これはこの例で明らかになる。
最初に従属空間速度の低減が行なわれることになり、拘束方程式を表わすことから始まる。拘束方程式の第1および第2の形は、以前の例と比較して変更のないままであるが、第3の形は以下のようになる。
Figure 2008509427
Figure 2008509427
Figure 2008509427
拘束方程式の次の形も独立速度の関数である。
Figure 2008509427
最後に、方程式[312]はさらに最後の形に展開されることができる。
Figure 2008509427
要約すると、従属空間速度の低減は以下のようになる。
Figure 2008509427
これらの速度は、(外部の)独立関節速度を含む追加の項以外は、以前の例とほとんど同一の数式を有する。制限行列についての数式も非常に類似している。これらの数式は依
然として第1の逆方向の再帰ステップ中に計算されることができる。
独立の物体4についての正準運動量の定義を用いて、以下が得られる。
Figure 2008509427
同様に、物体2に関連付けられる正準運動量は以下のとおりである。
Figure 2008509427
Figure 2008509427
仮想パワーの原理が以前と同様に用いられることができる。
Figure 2008509427
係数<太字>A4は以下のとおりである。
Figure 2008509427
関節部分空間上への射影は以下のようになる。
Figure 2008509427
独立の物体2に関連付けられる運動方程式は以下のように容易に得られる。
Figure 2008509427
関節速度
関節速度を得ることは、任意の独立座標が選択されるときにはより複雑になる。しかしながら、速度は既知の独立正準運動量と事前に分からない従属正準運動量の関数として表わされることができる。これらの従属正準運動量は次いで拘束方程式を用いて得られることができ、その後、速度は明示的に計算されることができる。手順は葉状独立物体4から始まる。
Figure 2008509427
方程式[338]を[337]に代入することによって、以下が与えられる。
Figure 2008509427
Figure 2008509427
Figure 2008509427
拘束された運動量ベクトルの、運動部分空間上への射影をより詳細に見て欲しい。
Figure 2008509427
したがって、それは従属正準運動量の点でのみ表わされることができる。方程式[342]および[345]を組合せると、以下のようになる。
Figure 2008509427
従属正準運動量<太字>p3の寄与は、開ループ系におけるのと同様に、<太字>D3に取り入れられない。したがって、後者の数式はわずかに異なっている。次の物体2は独立の物体であるように選択された。再帰プロセスは以下のように続行される。
Figure 2008509427
ちょうど他の従属する物体3の場合のように、以下を得るために、拘束された運動量ベクトルの、関節部分空間上への射影を計算できる。
Figure 2008509427
ここで、第1の物体の関節速度は以下のように書くことができる。
Figure 2008509427
手順の次の部分は、ベースから先端まで速度を伝搬させることである。その時点で、拘
束方程式は従属正準運動量について解くために用いられることができる。これらの運動量の知識を用いて、すべての量が最後のスイープにおいて明示的に計算されることができる。したがって、物体1の関節速度は形式上以下のように書くことができる。
Figure 2008509427
空間速度は以下のようになる。
Figure 2008509427
すべての他の空間速度について、特に物体4について同じことが当てはまる。
Figure 2008509427
拘束方程式の第2の形に代入すると、以下のようになる。
Figure 2008509427
これは従属正準運動量について解かれることができる。
Figure 2008509427
反転された行列は次元2x2を有する。
第4の局面では、この発明は第2の局面に記載された方法に類似した、たとえば多体系などの拘束された機械システムの運動、たとえば動力学を決定するための方法に関し、それによって、拘束された多体系についての運動方程式は、この発明の第3の局面に記載されたように、従属する物体の任意の選択に基づいて求められる。それによって、運動を決定することは、運動を視覚化、予測またはシミュレートすることであってもよい。この方法はさらに、拘束された機械システムの物体の位置関連情報を視覚化、予測またはシミュレートすることを含んでもよい。この方法は、たとえば多体系における従属する物体の任意の選択に基づいて求められる、拘束された多体系についての運動方程式を得ることによって、および拘束された多体系の動力学が特定のタイムフレームにわたって計算され得るようにこれらの運動方程式を適用することによって系の動力学についてのモデルを得ることを含む。この方法は、第2の局面に記載された方法に類似したいくつかのステップを含
むが、拘束された多体系における従属する物体の任意の選択は再帰的なステップを混同し、したがって、時間tにおいて検討中の拘束された機械多体系の動力学を得るために異なるいくつかの計算をもたらす。方法400が図6に示され、図6では、この実施例の方法400の異なるステップが示される。
第1のステップ402では、系の動力学についてのモデルが、たとえば運動方程式のハミルトン公式を得ることによって得られ、このハミルトン公式は一般化座標の時間導関数および共役正準運動量の時間導関数を表わす。これらの方程式は、たとえば以前に保存されたデータを用いてデータを入力することによって、または以前の実施例に記載された方法を用いてこれらの方程式を計算することによって得られることができる。これらの方程式はさらに、検討されるべき多体系の特定の状況について速やかに得られる場合もあれば、これらの方程式はより一般的な形で得られる場合もあり、それによって、多体系を特徴付ける特定の非動力学指向のパラメータは依然としてユーザによって与えられる必要がある。方程式は拘束された多体系の従属する物体の任意の選択に基づく可能性がある。つまり、方程式は、基礎をなす開ループ構造の端部における従属する物体の選択に限定される必要はない。方程式が実行時に計算されるとき、最初に、系のトポロジー、関節の種類、多体系の質量、慣性および幾何学的特性の情報が得られる。運動方程式を得ることは、系の予めコンパイルされた運動方程式をロードすることによって、または代替的には実行時にこれらの方程式をセットアップすることによって実行されることができる。これらの方程式がいかに得られるかという厳密な方法はこの発明を限定するものではない。これらの方程式は、既に上述されたように、以下によって与えられる。
Figure 2008509427
第2のステップ404では、計算を行なうのに必要なパラメータが与えられる。これらのパラメータはたとえば、とりわけ初期時間t=tiを有する系の初期条件と、終止条件、つまり計算が行なわれる必要がある機械システムに関連付けられる期間Δtとを含んでもよい。計算の開始時に系の公知の状態を表わす他の初期値、たとえば初期位置も与えられてもよい。与えられ得る他のパラメータは、たとえば重力および駆動などの、系に加えられる力ならびにトルクである。これらのパラメータを与えることによって、拘束された機械多体系の動力学を決定することが可能である。
ステップ406では、初期情報または以前のサイクルで得られた情報に基づいて計算が新しい時間tについて後続のステップで得られることができるように時間tは時間ステップδtで増大される。順動力学を計算するために用いられる時間ステップδtは主に、記載される拘束された機械多体系についておよびこれらの計算を行なうために用いられるコンピュータシステムの計算能力について、計算が行なわれる特定の用途によって決定される。本願の方法およびシステムにおいて用いられ得る時間ステップδtは、他のタイプの計算で用いられる時間ステップと少なくとも同一のものである可能性があるが、さらにこの範囲を超える可能性がある。なぜなら必要な計算の回数が他のタイプの計算よりも少ないためであり、これによって、同一の計算時間で同一の期間Δtを計算するためのより小さな時間ステップが可能である。代替的には、時間ステップδtはさらに他のタイプの計算よりも大きくてもよい。なぜならこの発明の計算方法およびシステムにおける収束の程度が他の先行技術のシステムよりも大きいためである。方法400は次いでステップ40
8に進む。
ステップ408では、時間tにおいて検討中の拘束された機械多体系の動力学を得るために計算が行なわれる。このステップは、多体系における従属する物体の任意の選択のために得られる得られたハミルトン運動方程式、およびハミルトン運動方程式を求めるために用いられるいくつかの量の定義に基づいた異なる計算を含む。この結果によって、ハミルトン運動方程式の再帰的な公式に基づいて、拘束された機械多体系を完全に特徴付けるパラメータを得ることができる。後者はアルゴリズムの高効率を可能にし、必要な計算能力の量を低減できる。この方法はさらに、拘束違反誤差の数を減らす。拘束された機械多体系を特徴付けるパラメータの明示的な値を計算する可能な方法がステップ409からステップ420に示されるが、この発明は計算のこの具体的な方法に限定されるものではない。
Figure 2008509427
ステップ417では、時間tにおいて拘束された機械多体系を完全に特徴付けるのに必要なパラメータがいくつかのサイクルにわたって決定される。これによって、たとえば異なる物体の経路について、起こり得る衝撃について、または接触しているもしくは接触していない物体についての拘束された機械多体系の情報を得ることが可能である。これらの結果は速やかに保存または出力または表示されることができる。この方法は、拘束された機械システムの物体の位置関連情報を視覚化、予測またはシミュレートすることを含んでもよい。得られた結果は典型的には、仮想プロトタイピング、仮想現実、コンピュータアニメーションおよび航空電子工学の分野に適用されるが、この発明はこれらの用途に限定されるものではない。仮想プロトタイピングによって、現実のプロトタイプシステムを製造する必要なくプロトタイプ多体系のための検査をシミュレートできる。後者は、時間的コストおよび経済的コストの両方を低減するので大きな利点を有する。仮想プロトタイピングの分野における用途のいくつかの例は、道路の車の動的なシミュレーションを行なうこと、車、ロボットなどのための代替的な設計を検討すること、ロボットの足のシミュレーション、構成要素または環境要因が変化したときの代替的な挙動を予測することなどである。別の用途は、たとえば宇宙船における最適な質量補償、つまり能動振動の決定である。仮想現実の場合には、計算の結果は典型的にすばやく読出される。なぜならリアルタ
イムの表現を得る必要があるためである。仮想現実のための典型的な用途は、車などの動く対象物に存在する効果などのシミュレートされるものの物理的効果を感じることができるゲームまたはシステムである。コンピュータアニメーションの分野において、つまり多体系である物理的システムの少なくとも近似設計を視覚化するためにも用途が見出されることができる。後者はたとえば人が走っていることを表示するゲームの中でアニメーションのために用いられる。
決定ステップ420では、系の精度および安定性が十分に高いかどうかまたはステップ409から418の繰返しが必要であるかどうかが判断されることになる。再帰的なステップを実行する数値積分器は典型的には、精度および安定性を確保するために再帰的なステップを二度以上実行する。精度および安定性が十分に高い場合には、方法400はステップ422に進む。そうでなければ、ステップ409から418が数値積分器によって繰返される。決定ステップ420を適用する、したがってフィードバックループを与える代わりに、ステップ409から418の一定数の実行を用いることも可能である。
決定ステップ422では、拘束された機械多体系の順動力学の他の計算が必要であるかどうか、つまり対象の順動力学の十分な計算が既に行なわれているかどうかが判断されることになる。現在の時間が終了時間tendに等しい場合には、この計算は終了し、方法400は終了ステップ424に進む。終了時間tendは、予め定められた値である場合もあれば、計算の発散の程度に依存する場合もある。代替的には、終了時間は特定の事象の発生によっても決定されてもよい。終了時間にまだ到達していない場合には、方法400はステップ406に進み、時間がδtで増大された後に新しい計算サイクルが再開される。
たとえば多体系などの拘束された機械システムの運動方程式を用いる方法は基本的には、この発明の第2の局面に記載された方法とは異なる。上記方法は、逆方向の再帰的なステップおよび順方向の再帰的なステップの両方が制限行列を得る必要があることによって異なり、これらの再帰は完全な再帰ではなく、最後に従属する物体までの単なるスイープであり、上記方法はさらに、拘束方程式を解くために最後に従属する物体に出会うと第1の逆方向の再帰的なステップを逆転させる必要があることによって異なり、したがって、従属正準運動量に繋がる。
上述の実施例の利点は、拘束された機械システムについての運動方程式が再帰的な式を用いて得られることができることであり、これは効率的な系をもたらす。上述の実施例では、拘束された多関節運動量ベクトルは、再帰的な計算に好適な、ハミルトニアン形式に基づく一組の運動方程式を得るために用いられる。後者によって、拘束された機械システムの運動を決定、シミュレート、視覚化または予測するための効率的な方法を得ることが可能である。
第5の局面では、この発明は複数の物体を含む拘束された機械システムの運動を決定するためのシステムにも関する。したがって、このシステムは、この発明の第2の実施例に記載された方法を実行するために調整される。運動は、期間Δtにわたる系の動力学が得られるようにいくつかの時間ステップδtにわたって決定される。このシステムは、検討中の拘束された機械多体系についての一組のハミルトン運動方程式に関連する少なくともデータを得るための手段と、期間Δtにわたる拘束された機械システムの複数の物体の少なくとも位置関連情報を計算するための手段とで調整される計算システムを含む。一組のハミルトン運動方程式に関連する少なくともデータを得るための手段は、機械多体系の初期状態についておよび計算のための終止条件についてのデータを受取るための手段を含んでもよい。計算するための手段は、初期時間tiについておよび時間ステップδtを初期時間tiに加算することによって得られるその後の時間tについてこれらの計算を行なう。時間ステップは一定である必要はなく、たとえば期間Δtの異なる部分の間に必要とさ
れる情報の密度に応じて調整されることが可能である。このシステムは、得られた結果を視覚化するための手段に結合される場合もあれば、得られた結果を視覚化するための手段を組入れる場合もある。このシステムはさらに、上述の方法に従う計算に基づいて、拘束された機械システムの他の運動を予測してもよい。したがって、このシステムは拘束された機械システムの運動を予測するための手段を含んでもよい。このシステムは、妥当な時間内に計算値を得るために相当な計算能力を有するいかなるタイプのコンピュータシステムであってもよく、たとえばパーソナルコンピュータまたはネットワーク、メインフレームなどにグループ化されるいくつかのコンピュータであってもよく、計算はその後単一のプロセッサで一方のタスクから他方のタスクへと行なわれる場合もあれば、並行して、つまりいくつかのプロセッサにわたって分散された処理を用いて行なわれる場合もある。後者の場合には、この方法の異なる計算はプロセッサにわたって分配されることができ、そのため、特定のプロセッサによって必要とされる必要な情報は常にこれらのプロセッサにおいて利用可能であり、または必要な情報が到着するまでプロセッサは他の処理を待つように命令される。
上述の実施例に従って、この発明は、計算システムで実行されるときにこの発明に従う方法のいずれかの機能性を提供するコンピュータプログラム製品も含む。さらに、この発明は、機械読取可能な形式でコンピュータ製品を格納しかつ計算装置で実行されるときにこの発明の方法のうちの少なくとも1つを実行する、CD−ROMまたはディスケットなどのデータキャリアを含む。最近では、このようなソフトウェアはしばしばインターネット上で提供され、したがって、この発明はローカルエリアネットワークまたは広域ネットワークを介してこの発明に従うコンピュータ製品を伝送することを含む。
図7は、この発明に従うこの方法とともにおよびシステムにおいて利用され得る計算システムの概略図である。ビデオディスプレイ端子14、キーボード16などのデータ入力手段、およびマウス18などのグラフィックユーザインターフェイス指示手段を含み得るコンピュータ10が示される。コンピュータ10は汎用コンピュータ、たとえばUNIX(登録商標)ワークステーションまたはパーソナルコンピュータとして実現されてもよい。
コンピュータ10は、インテル・コーポレイションUSA(Intel Corp. USA)によって供給されるペンティアム(登録商標)IV(Pentium(登録商標)IV)プロセッサが一例に過ぎない従来のマイクロプロセッサなどの中央演算処理装置(「CPU」)15と、システムバス22を介して相互接続されるいくつかの他のユニットとを含む。コンピュータ10は少なくとも1つのメモリを含む。メモリは、ランダムアクセスメモリ(「RAM」)、リードオンリーメモリ(「ROM」)、当業者に公知のハードディスクなどの不揮発性読出/書込メモリなどの当業者に公知のさまざまなデータ記憶装置のいずれかを含んでもよい。たとえば、コンピュータ10はさらに、ランダムアクセスメモリ(「RAM」)24、リードオンリーメモリ(「ROM」)26、ならびにシステムバス22をオプションのビデオディスプレイ端子14に接続するためのオプションのディスプレイアダプタ27、および周辺装置(たとえば、ディスクおよびテープドライブ23)をシステムバス22に接続するためのオプションの入力/出力(I/O)アダプタ29を含んでもよい。ビデオディスプレイ端子14はコンピュータ10の視覚出力装置である可能性があり、コンピュータハードウェアの当該技術分野において周知であるCRTベースのビデオディスプレイなどの任意の好適なディスプレイ装置である可能性がある。しかしながら、携帯型またはノートブックベースのコンピュータでは、ビデオディスプレイ端子14はLCDベースまたは気体プラズマベースのフラットパネルディスプレイと取替えられることが可能である。コンピュータ10はさらに、キーボード16、マウス18、オプションのスピーカ36を接続するため、および外部システム20からの任意の入力を可能にするためのユーザインターフェイスアダプタ19を含む。入力はたとえば、物理的システム20に含ま
れる多体系の位置についての情報を送る、ロボットに取付けられたセンサ40などの物理的値取込装置からの物理的な値の入力である可能性がある。センサ40は、システム20の物理的パラメータを取込むための任意の好適なセンサであってもよい。
システム20はさらに、たとえば地球上に位置する遠隔制御装置であってもよいのに対して、コンピュータシステム10は多体系、たとえば惑星上の搬送用乗り物/ロボットに位置する。地球と惑星との間の遅延のために、ロボットはリアルタイムで制御されることができない。このような状況では、コンピュータシステム10で実行するコンピュータプログラムは、多体系の挙動をシミュレートまたは予測するようにこの発明に従う方法を実現する。これは、地球からのコマンドを受取る間に安全にリアルタイムで多体系を制御するために用いられることができる。
追加のまたは代替的なアクチュエータ41が追加のまたは代替的な物理的システム21に設けられてもよく、この追加のまたは代替的な物理的システム21はさらに、インターネット、イントラネット、ローカルエリアネットワークもしくは広域ネットワーク(LANもしくはWAN)またはCANなどのデータネットワークにコンピュータ10を接続する通信アダプタ39を介してバス22に接続されてもよい。これによって、コンピュータシステム10から、電気通信ネットワークを介して、接近した場所から遠隔の場所まで、たとえばインターネットまたは無線接続を介してリモートシステム21にコマンドを伝送することが可能である。たとえば、センサ40は、コンピュータシステム10に入力されるシステム20の状態を捉えてもよい。この発明の方法のいずれかに従う方法を用いて、コンピュータシステム10はシステム20の挙動を予測し、この挙動を修正するようにシステム21におけるアクチュエータ41にコマンドを送る。一例は、センサ40を用いる振動検出、および振動を中和するためにシステム21における加振機のアクチュエータ41に与えられる能動減衰のためのコマンドであり得るだろう。アクチュエータに送られるコマンドの計算の際、コンピュータシステム10は、システム21のアクチュエータによって作動されるときにシステム20の挙動を予測するためにこの発明の方法を用いる。
「物理的値取込装置」または「センサ」という用語は、シミュレートされるべき物理的システムのパラメータの値を与える装置を含む。センサは、進化する物理的システムの詳細を伝送するための装置を含んでもよい。この発明はその範囲内に、関連する物理的な値がキーボード16を用いてコンピュータにまたは23などの記憶装置から直接に入力されることも含む。
システム20および/または21のパラメータ制御ユニット37はさらに、通信アダプタ38を介して接続されてもよい。パラメータ制御ユニット37は、この発明に従うコンピュータプログラムを実行するコンピュータ10からの出力値またはこのような出力値を表わすもしくはこのような出力値から導かれる値を受取ってもよく、コンピュータ10からの出力値の受取りに応答して物理的システム20および/またはシステム21のパラメータを変更するように適合されてもよい。
コンピュータ10は、コンピュータ10の作動を命令するために機械読取可能な媒体内にあるグラフィカルユーザインターフェイスも含んでもよい。任意の好適な機械読取可能な媒体は、ランダムアクセスメモリ(RAM)24、リードオンリーメモリ(ROM)26、磁気ディスケット、磁気テープまたは光学ディスク(最後の3つはディスクおよびテープドライブ23に位置する)などのグラフィカルユーザインターフェイスを保持してもよい。任意の好適なオペレーティングシステムおよび関連付けられるグラフィカルユーザインターフェイス(たとえば、マイクロソフトウィンドウズ(登録商標))はCPU15に命令してもよい。さらに、コンピュータ10はコンピュータメモリ記憶装置52内にある制御プログラム51を含む。制御プログラム51は、CPU15で実行されるときにこ
の発明の方法のいずれかに関して記載される作動を実施する命令を含む。
他の実施例では、コンピュータシステム10は、この発明の方法のいずれかを用いて物理的システムの予測またはシミュレートされた挙動を(ディスプレイユニット14上で)視覚化するために用いられることができる。関連する接続を有する物理的システム20および/または21は、人が多体系のシミュレートされた挙動を体験できる、つまりたとえばジョイスティックを介する人の所作が多体系の予測された変化をもたらすシミュレータを構成してもよい。これらの変化はディスプレイユニット14上で表示されることができ、予測された方法でシミュレータを動かすためにコマンドがアクチュエータ41に送られてもよい。これによって、大規模なシミュレータの当業者に概して公知であるように、シミュレータの中の人に現実の効果が与えられる。
図7に表わされるハードウェアは特定の用途ごとに異なる可能性があることを当業者は認識する。たとえば、光学ディスク媒体、オーディオアダプタなどの他の周辺装置、またはコンピュータハードウェアの当該技術分野において周知のPALもしくはEPROMプログラミング装置などのチッププログラミング装置などが、既に記載されたハードウェアに加えて、または既に記載されたハードウェアの代わりに利用されてもよい。
図7に示される例では、コンピュータプログラム製品(つまり、制御プログラム51)はコンピュータ記憶装置52の中にある可能性がある。しかしながら、この発明がそれに従って記載されてきたおよびそれに従って引き続き記載される間に、この発明の仕組みはさまざまな形でプログラム製品として分散されることが可能であり、この分散を実際に実施するために用いられる特定のタイプの信号担持媒体に関わらずこの発明が同様に当てはまることを当業者が認識することは重要である。コンピュータ読取可能な信号担持媒体の例は、フロッピー(登録商標)ディスクおよびCD ROMなどの記録可能なタイプの媒体ならびにデジタルおよびアナログ通信リンクなどの伝送タイプの媒体を含む。
この発明を実施する多体機械システムの運動をシミュレートするための方法およびシステムの目的を達成するための他の構成は当業者にとって明らかである。好ましい実施例、特定の構造物および構成が本明細書においてこの発明に従う装置について記載されてきたが、この発明の範囲および精神から逸脱することなく形状および詳細のさまざまな変更または修正がなされ得ることが理解されるべきである。
本発明の第1の実施例による、閉ループ多体系の順動力学の記述についての1組のハミルトン方程式を得るために実行される、異なるステップを示す運動方程式の組を求める方法についてのフローチャートである。 本発明の実施例による方法のための番号付けが閉ループ系においていかに得られるかを示す概略図である。 本発明の実施例によるシステムおよび方法によって説明され得るような、第1の固定端関節とロッドに沿って移動可能に取付けられた第2の端部関節とを有する対象物の概略図である。 本発明の実施例によるシステムおよび方法によって説明され得るような、固定端およびループを有する対象物の概略図である。 本発明の第2の実施例による、拘束された機械多体系の順動力学を計算し、および/またはシミュレートするための方法の異なるステップのフローチャートである。 本発明の第3の実施例による、両端が固定され、最後の2つの物体を独立の物体として有する平面の鎖である拘束された機械システムの例の図である。 本発明の第3の実施例による、両端が固定され、第3の物体を独立の物体として有する平面の鎖である拘束された機械システムの例の図である。 本発明の第4の実施例による、拘束された機械多体系の順動力学を計算し、および/またはシミュレートするための方法の異なるステップのフローチャートである。 本発明の実施例によるコンピュータシステムの概略図である。

Claims (28)

  1. 拘束された機械システムの少なくとも位置関連情報を計算するために複数の物体を含む前記拘束された機械システムの運動方程式を用いる方法であって、
    前記運動方程式は再帰的に公式化されたハミルトン運動方程式であり、
    前記方法は、前記拘束された機械システムの少なくとも位置関連情報を前記システムについての前記方程式および境界条件から計算することを含む、方法。
  2. 前記拘束された機械システムは、拘束部分空間を規定する一組の拘束によって拘束されており、前記拘束された機械システムはさらに、少なくとも1つの固定関節と、前記一組の拘束のうち少なくとも1つの拘束によって拘束された少なくとも1つの他の関節とを含み、前記方法は、
    前記拘束された機械システムの各K番目の物体について、
    前記K番目の物体の拘束された多関節運動量ベクトルに関連する量を求めることを含み、前記K番目の物体の前記拘束された多関節運動量ベクトルは、前記システムの前記K番目の物体の運動量ベクトルと、前記少なくとも1つの他の関節の近くに位置する隣接した物体の射影された、拘束された多関節運動量ベクトルとの合計であり、前記射影された、拘束された多関節運動量ベクトルは前記拘束部分空間上に射影され、前記K番目の物体の局所的な基準フレームを参照し、前記方法はさらに、
    前記拘束された機械システムについての一組のハミルトン運動方程式を得るために前記拘束された多関節運動量ベクトルに関連する前記量を用いることを含む、請求項1に記載の方法。
  3. 一組のハミルトン運動方程式を前記得ることは、一般化座標<太字>q、共役正準運動量<太字>pおよび時間tについて、
    前記一般化座標<太字>qの時間導関数および前記共役正準運動量<太字>pの時間導関数についての以下の数式を得ることを含む、請求項2に記載の方法。
    Figure 2008509427
  4. 時間導関数についてのこれらの数式は前記複数の物体の各々の運動を決定する、請求項3に記載の方法。
  5. Figure 2008509427
  6. 前記拘束された機械システムは拘束部分空間を規定する一組の拘束によって拘束され、前記拘束された機械システムはさらに、少なくとも1つの固定関節と、前記一組の拘束のうち少なくとも1つの拘束によって拘束された少なくとも1つの他の関節とを含み、前記方法は、
    前記拘束された機械システムの各K番目の物体について、K番目の物体はKの一組の従属する物体を含み、
    前記K番目の物体の拘束された多関節運動量ベクトルに関連する量を求めることを含み、前記K番目の物体の前記拘束された多関節運動量ベクトルは、物体Kの多関節運動量ベクトルと、前記従属する物体に共役なすべての従属正準運動量の線形関数との合計であって、前記方法はさらに、
    前記拘束された機械システムについての一組のハミルトン運動方程式を得るために前記拘束された多関節運動量ベクトルに関連する前記量を用いることを含む、請求項1に記載の方法。
  7. 一組のハミルトン運動方程式を前記得ることは、一般化座標<太字>q、共役正準運動量<太字>pおよび時間tについて、
    前記一般化座標<太字>qの時間導関数および前記共役正準運動量<太字>pの時間導関数についての以下の数式を得ることを含む、請求項6に記載の方法。
    Figure 2008509427
  8. Figure 2008509427
  9. 前記方法は、前記拘束された機械システムにおいていくつかの従属する物体を任意に選択することを含む、請求項10に記載の方法。
  10. 前記方法はさらに、仮想パワーの原理を用いることを含む、請求項2から9のいずれかに記載の方法。
  11. いくつかの時間ステップδtにわたって、複数の物体を含む拘束された機械システムの運動を決定するための方法であって、
    前記拘束された機械システムについての一組のハミルトン運動方程式を得ることと、
    前記いくつかの時間ステップδtの各々について、
    前記一組のハミルトン運動方程式に基づいて、前記拘束された機械システムの前記複数の物体の少なくとも位置関連情報を再帰的に計算することとを含む、方法。
  12. 前記一組のハミルトン運動方程式は、一般化座標<太字>q、共役正準運動量<太字>pおよび時間tについて、
    前記一般化座標<太字>qの時間導関数および前記共役正準運動量<太字>pの時間導関数についての以下の数式を含む、請求項11に記載の運動を決定するための方法。
    Figure 2008509427
  13. 前記再帰的に計算することは、
    前記拘束された機械システムについての拘束された多関節質量行列を逆方向に再帰的に計算することと、
    前記一般化座標<太字>qの前記時間導関数を順方向に再帰的に計算することと、
    拘束された、蓄積された力ベクトルを逆方向に再帰的に計算することとを含み、各拘束された、蓄積された力ベクトルは検討中の前記物体に蓄積された力を表わし、前記再帰的に計算することはさらに、
    前記共役正準運動量<太字>pの時間導関数を求めることを含む、請求項12に記載の運動を決定するための方法。
  14. 前記方法はさらに、
    他の制限行列を決定するために順方向に再帰的に計算することと、
    前記第1の逆方向に再帰的に計算する間に、最後に従属する物体に出会うと再帰方向を逆転させることとを含む、請求項13に記載の運動を決定するための方法。
  15. 前記拘束された機械システムについての一組のハミルトン運動方程式を前記得ることは、方法1から10のいずれかに記載の一組の運動方程式を求めることを含む、請求項11から14のいずれかに記載の運動を決定するための方法。
  16. 前記拘束された機械システムについての一組のハミルトン運動方程式を前記得ることは、データソースから一組のハミルトン運動方程式を入力することを含む、請求項11から15のいずれかに記載の運動を決定するための方法。
  17. 前記運動は、前記拘束された機械システムの順動力学を含む、請求項11から16のいずれかに記載の運動を決定するための方法。
  18. 前記方法は、前記一般化座標<太字>qまたは前記共役正準運動量<太字>pの突然の変化に基づいた、前記拘束された機械システムへの衝撃を検討することを含む、請求項11から16のいずれかに記載の運動を決定するための方法。
  19. 前記方法は、互いに接触する複数の物体を検討することを含む、請求項11から18のいずれかに記載の運動を決定するための方法。
  20. 前記複数の物体は剛体であって、各物体は前記複数の物体のうち少なくとも別の物体に関節で接続される、請求項11から19のいずれかに記載の運動を決定するための方法。
  21. 前記運動を決定することは、仮想プロトタイピング、仮想現実またはコンピュータアニメーションのいずれかに適用される、請求項11から20のいずれかに記載の運動を決定するための方法。
  22. 複数の物体を含む拘束された機械システムの運動を、いくつかの時間ステップδtにわたって計算するための計算装置であって、
    前記拘束された機械システムについての一組のハミルトン運動方程式に関連するデータを得るための手段と、
    前記いくつかの時間ステップδtの各々について、前記一組のハミルトン運動方程式に基づいて、前記拘束された機械システムの前記複数の物体の少なくとも位置関連情報を再帰的に計算するための手段とを含む、計算装置。
  23. 複数の物体を含む拘束された機械システムの運動を、いくつかの時間ステップδtにわたって検討するためのコンピュータシステムとともに利用されるコンピュータプログラム製品であって、
    前記拘束された機械システムについての一組のハミルトン運動方程式に関連するデータを得るための命令手段と、
    前記いくつかの時間ステップδtの各々について、前記一組のハミルトン運動方程式に基づいて、前記拘束された機械システムの前記複数の物体の少なくとも位置関連情報を計算するための命令手段とを含む、コンピュータプログラム製品。
  24. 請求項23に記載のコンピュータプログラム製品を格納する機械読取可能なデータ記憶装置。
  25. ローカルエリア電気通信ネットワークを介した、請求項23に記載のコンピュータプログラム製品の伝送。
  26. 複数の物体を有する拘束された機械システムの運動を決定するための方法であって、
    拘束された機械システムについての拘束された多関節質量行列を逆方向に再帰的に計算することと、
    前記拘束された機械システムの一般化座標<太字>qの時間導関数を順方向に再帰的に計算することと、
    拘束された、蓄積された力ベクトルを逆方向に再帰的に計算することとを含み、各拘束された、蓄積された力ベクトルは、前記拘束された機械システムに蓄積された力を表わし、前記方法はさらに、
    共役正準運動量<太字>pの時間導関数を求めることを含む、方法。
  27. 前記方法はさらに、
    他の制限行列を決定するために順方向に再帰的に計算することと、
    前記第1の逆方向に再帰的に計算する間に、最後に従属する物体に出会うと再帰方向を逆転させることとを含む、請求項26に記載の運動を決定するための方法。
  28. 運動を決定するためのコンピュータベースのシステムであって、
    拘束された機械システムについての拘束された多関節質量行列を逆方向に再帰的に計算するための手段と、
    拘束された機械システムの一般化座標<太字>qの時間導関数を順方向に再帰的に計算するための手段と、
    拘束された、蓄積された力ベクトルを逆方向に再帰的に計算するための手段とを含み、各拘束された、蓄積された力ベクトルは、前記拘束された機械システムに蓄積された力を表わし、前記システムはさらに、
    共役正準運動量<太字>pの時間導関数を求めるための手段を含む、システム。
JP2007524138A 2004-08-06 2005-06-15 多体系の運動をシミュレートするためのシステムおよび方法 Pending JP2008509427A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP04447184A EP1624393A1 (en) 2004-08-06 2004-08-06 System and method for simulating motion of a multibody system
PCT/BE2005/000097 WO2006012709A1 (en) 2004-08-06 2005-06-15 System and method for simulating motion of a multibody system

Publications (1)

Publication Number Publication Date
JP2008509427A true JP2008509427A (ja) 2008-03-27

Family

ID=34933072

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007524138A Pending JP2008509427A (ja) 2004-08-06 2005-06-15 多体系の運動をシミュレートするためのシステムおよび方法

Country Status (4)

Country Link
US (1) US20090228244A1 (ja)
EP (2) EP1624393A1 (ja)
JP (1) JP2008509427A (ja)
WO (1) WO2006012709A1 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7933858B2 (en) * 2007-03-23 2011-04-26 Autodesk, Inc. General framework for graphical simulations
US8175853B2 (en) * 2008-03-28 2012-05-08 International Business Machines Corporation Systems and methods for a combined matrix-vector and matrix transpose vector multiply for a block-sparse matrix
CN105740485A (zh) * 2014-12-09 2016-07-06 南京理工大学 一种机械系统力学的运动仿真方法及系统
CN106409074B (zh) * 2016-10-24 2022-09-06 大连理工大学 一种用于结构力学几何组成分析的多功能教具
US11620418B2 (en) * 2018-03-16 2023-04-04 Autodesk, Inc. Efficient sensitivity analysis for generative parametric design of dynamic mechanical assemblies
US11170143B2 (en) * 2018-10-19 2021-11-09 Cmlabs Simulations Inc. Systems and methods for simulating multibody systems
CN111796806B (zh) * 2019-09-25 2022-07-08 厦门雅基软件有限公司 生成对象的方法、装置、电子设备及可读存储介质
CN111931292B (zh) * 2020-08-07 2022-05-03 北京航空航天大学 一种翼尖铰接组合式飞行平台飞行力学建模方法
CN114406996B (zh) * 2021-12-30 2023-05-26 长春工业大学 一种输入受限机械臂的合作博弈最优跟踪控制方法及系统

Also Published As

Publication number Publication date
EP1774442A1 (en) 2007-04-18
WO2006012709A1 (en) 2006-02-09
EP1624393A1 (en) 2006-02-08
US20090228244A1 (en) 2009-09-10

Similar Documents

Publication Publication Date Title
JP2008509427A (ja) 多体系の運動をシミュレートするためのシステムおよび方法
JP2009099082A (ja) 力学シミュレーション装置及び力学シミュレーション方法、並びにコンピュータ・プログラム
JP7278338B2 (ja) 製造リソースシミュレーションのための仮想化ケーブルモデル化
RU2308764C2 (ru) Перемещение виртуального сочлененного объекта в виртуальном пространстве с предотвращением столкновений сочлененного объекта с элементами окружающего пространства
Chi et al. A physics-based simulation approach for cooperative erection activities
Zhang et al. Impact dynamics of flexible-joint robots
Ferrentino et al. Finite element analysis-based soft robotic modeling: Simulating a soft actuator in sofa
JP3247832B2 (ja) キネマティクス演算装置
Buffinton Kane’s Method in Robotics
US20120150499A1 (en) Invertible contact model
Ahmad et al. A model-based and simulation-driven methodology for design of haptic devices
Angelidis et al. Gazebo Fluids: SPH-based simulation of fluid interaction with articulated rigid body dynamics
Zapolsky et al. Inverse dynamics with rigid contact and friction
JP7012944B2 (ja) シミュレーション装置、シミュレーション方法及びシミュレーションプログラム
Gayle et al. Adaptive Dynamics with Efficient Contact Handling for Articulated Robots.
Kokkevis et al. Efficient dynamic constraints for animating articulated figures
Mikhaylyuk et al. Algorithms of multibody dynamics simulation using articulated-body method
Omar Modeling and simulation of structural components in recursive closed-loop multibody systems
Wang et al. A virtual environment simulator for mechanical system dynamics with online interactive control
Makkonen On multi body systems simulation in product design
Peng et al. Sensitivity-analysis methods for nonsmooth multibody systems with contact and friction
Dopico et al. Forward sensitivity analysis of the index-3 augmented lagrangian formulation with projections
Laflin et al. Geometrically exact beam equations in the adaptive DCA framework: Part 1: Static example
Alshorman et al. Kinematic locomotion modes of particle-based linear chain mechanisms
Fazel et al. A general formulation for dynamic path planning and closed-loop tracking of multi-rigid-link bipedal robotic systems

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080612

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110510

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20111025