Main Content

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

Gimbal Joint

3 つの回転プリミティブをもつジョイント

ライブラリ

ジョイント

  • Gimbal Joint block

説明

このブロックは、回転自由度 3 のジョイントを表します。3 つの回転プリミティブで 3 つの回転自由度が与えられます。base 座標系と follower 座標系の原点はシミュレーション中に同位置を維持します。

ジョイントの自由度

このジョイント ブロックは、base 座標系と follower 座標系の間の運動を時変変換のシーケンスとして表します。各ジョイント プリミティブで、このシーケンスの変換が 1 つずつ適用されます。この変換では、ジョイント プリミティブの base 座標系を基準に follower 座標系を回転させます。最初のものを除くすべてのジョイント プリミティブにおいて、base 座標系はシーケンスの前のジョイント プリミティブの follower 座標系と一致します。

シミュレーションの各タイム ステップで、このジョイント ブロックは時変座標系変換のシーケンスを次の順序で適用します。

  1. 回転:

    1. X 回転プリミティブ (Rx) の base 座標系の X 軸周り。

    2. Y 回転プリミティブ (Ry) の base 座標系の Y 軸周り。この座標系は X 回転プリミティブ (Rx) の follower 座標系と一致します。

    3. Z 回転プリミティブ (Rz) の base 座標系の Z 軸周り。この座標系は Y 回転プリミティブ (Ry) の follower 座標系と一致します。

次の図は、特定のシミュレーション タイム ステップでジョイントの変換が発生するシーケンスを示しています。それぞれの変換の結果として得られる座標系が次の変換の base 座標系となります。3 次元の回転はシーケンスとして発生するため、2 つの軸が揃う可能性があり、それによって回転自由度が 1 つ失われることがあります。この現象は、ジンバル ロックとして知られています。

ジョイント変換シーケンス

ジョイント プリミティブの初期状態のターゲットを指定するには、[State Targets] の下にあるパラメーターを使用します。ターゲットは base 座標系で指定されます。ターゲットの優先順位レベルも設定できます。ジョイントがすべての状態ターゲットを満たすことができない場合、優先順位レベルに基づいて、どのターゲットを先に満たすか、およびそれらをどの程度正確に満たすかが決まります。例については、アセンブリのガイドを参照してください。

ジョイント プリミティブの減衰とバネの動作をモデル化するには、[Internal Mechanics] の下にあるパラメーターを使用します。エネルギーの散逸をモデル化するには [Damping Coefficient] パラメーターを使用し、エネルギーの蓄積をモデル化するには [Spring Stiffness] パラメーターを使用します。ジョイントのバネは、ジョイント プリミティブを平衡位置から変位させようとします。ジョイント ダンパーはエネルギーの散逸要素として機能します。バネとダンパーは厳密に線形です。

ジョイント プリミティブの範囲を指定するには、[Limits] の下にあるパラメーターを使用します。下限と上限で自由領域の幅を定義します。このブロックは、ジョイントの位置がこの範囲を超えると、ジョイントの位置をこの自由領域に戻すよう加速する力を適用します。このブロックは、平滑化されたバネ-ダンパー手法を使用してその力を計算します。平滑化されたバネ-ダンパー手法の詳細については、Spatial Contact Force ブロックのDescriptionセクションを参照してください。

シミュレーション中のジョイント プリミティブの運動は、[Actuation] セクションの [Force] パラメーター、[Torque] パラメーター、および [Motion] パラメーターによって制御されます。詳細については、ジョイントの作動入力の指定を参照してください。さらに、ジョイント ブロックには位置、速度、加速度、力、トルクなどの検出データを出力する端子があり、これを使用してモデルに対する解析タスクを実行できます。詳細については、検出力とトルクの検出を参照してください。

ジョイント モード構成を指定するには、[Mode] パラメーターを使用します。詳細については、[Parameters] セクションと [Ports] セクションの [Motion Configuration] を参照してください。

パラメーター

Revolute Primitive: State Targets

回転プリミティブの状態ターゲットとその優先順位レベルを指定します。状態ターゲットは、ジョイントの位置と速度のいずれかの状態パラメーターの目標値です。優先順位レベルは、状態ターゲットの相対的重要度です。ターゲットをどの程度正確に満たす必要があるかを決定します。ジョイントの各状態ターゲットのアセンブリ ステータスをチェックするには、Mechanics Explorer の Model Report ツールを使用します。

Specify Position Target

このオプションは、時間ゼロにおけるジョイント プリミティブの目標位置を指定する場合に選択します。これは、ジョイント プリミティブの軸を中心として測定される、base 座標系に対する follower 座標系の回転角です。指定したターゲットは base 座標系で解決されます。このオプションを選択すると、優先順位と値のフィールドが表示されます。

Specify Velocity Target

このオプションは、時間ゼロにおけるジョイント プリミティブの目標速度を指定する場合に選択します。これは、ジョイント プリミティブの軸を中心として測定される、base 座標系に対する follower 座標系の角速度です。base 座標系で解決されます。このオプションを選択すると、優先順位と値のフィールドが表示されます。

優先

状態ターゲットの優先順位を選択します。これは、状態ターゲットに割り当てられる重要度レベルです。すべての状態ターゲットを同時に満たすことができない場合、優先順位レベルに基づいて、どのターゲットを先に満たすか、およびそれらをどの程度正確に満たすかが決まります。このオプションは、位置と速度の両方の状態ターゲットに適用されます。

優先順位レベル説明
High (desired)状態ターゲットを正確に満たす
Low (approximate)状態ターゲットをおおむね満たす

メモ

組み立ての際、優先順位の高いターゲットは正確なガイドとして動作します。優先順位の低いターゲットはおおまかなガイドとして動作します。

Value

状態ターゲットの数値を入力します。既定値は 0 です。物理単位を選択または入力します。既定値は、位置については [deg]、速度については [deg/s] です。

Revolute Primitive: Internal Mechanics

回転プリミティブの内部の仕組みを指定します。内部の仕組みには、エネルギーの蓄積を考慮する線形バネ トルクとエネルギーの散逸を考慮する線形減衰トルクがあります。内部の仕組みは、バネの剛性と減衰係数の値を 0 のままにすると無視できます。

Equilibrium Position

バネの平衡位置を入力します。これは、バネのトルクがゼロになる base 座標系と follower 座標系の間の回転角です。既定値は 0 です。物理単位を選択または入力します。既定値は [deg] です。

Spring Stiffness

線形バネ定数を入力します。これは、ジョイント プリミティブを単位角度だけ回転させるのに必要なトルクです。既定値は 0 です。物理単位を選択または入力します。既定値は [N*m/deg] です。

Damping Coefficient

線形減衰係数を入力します。これは、base 座標系と follower 座標系の間でジョイント プリミティブの角速度を一定に保つのに必要なトルクです。既定値は 0 です。物理単位を選択または入力します。既定値は [N*m/(deg/s)] です。

Revolute Primitive: Limits

ジョイント プリミティブの運動の範囲を制限します。ジョイント制限では、バネ-ダンパーを使用して、範囲の限度を超える動きに抵抗します。ジョイント プリミティブには、下限、上限、またはその両方を指定でき、既定の状態ではどちらもなしになります。バネの剛性が高いほど、振動が生じた場合の停止 (跳ね返り) がハードになります。ダンパーが強いほど、接触による振動を徐々に弱める粘性損失が大きくなり、減衰過剰のプリミティブでは振動が完全に消滅します。

Specify Lower Limit

ジョイント プリミティブの運動の範囲に下限を追加する場合に選択します。

Specify Upper Limit

ジョイント プリミティブの運動の範囲に上限を追加する場合に選択します。

Value

ジョイントの動きが超えないように抵抗する位置。これは、接触が始まる位置を示す、base 座標系で測定される base から follower へのオフセットです。直進プリミティブの場合は軸に沿った距離、回転プリミティブの場合は軸を中心とする角度、球面プリミティブの場合は 2 つの軸間の角度になります。

Spring Stiffness

ジョイント制限を超える変位に対する接触バネの抵抗。バネは線形であり、その剛性は一定です。値が大きいほど、停止がハードになります。バネとダンパーの力の比率により、接触時に停止が不足減衰となって振動しやすくなるかどうかが決まります。

Damping Coefficient

ジョイント制限を超える運動に対する接触ダンパーの抵抗。ダンパーは線形であり、その係数は一定です。値が大きいほど、接触による振動が発生した場合に徐々に弱める粘性損失が大きくなります。バネとダンパーの力の比率により、接触時に停止が不足減衰となって振動しやすくなるかどうかが決まります。

Transition Region

バネ-ダンパーの力が最大になるまでの領域。領域は、直進プリミティブの場合は軸に沿った距離、回転プリミティブの場合は軸を中心とする角度、球面プリミティブの場合は 2 つの軸間の角度になります。

領域が小さいほど、接触の発生がシャープになり、ソルバーの必要なタイムステップが小さくなります。シミュレーション精度とシミュレーション速度の間にはトレードオフがあり、遷移領域を小さくすると精度が向上し、大きくすると速度が向上します。

Revolute Primitive: Actuation

回転ジョイント プリミティブの作動オプションを指定します。作動モードには [Torque][Motion] があります。作動モードのドロップダウン リストから [Provided by Input] を選択すると、対応する物理量信号端子がブロックに追加されます。この端子を使用して入力信号を指定します。入力信号は base 座標系で解決されます。

Torque

作動トルクの設定を選択します。既定の設定は [None] です。

作動トルクの設定説明
None作動トルクなし。
Provided by Input物理量信号入力からの作動トルク。信号により、ジョイント プリミティブの軸を中心とした、base 座標系を基準とする follower 座標系に作用するトルクが与えられます。大きさの等しい逆向きのトルクが base 座標系に作用します。
Automatically computed自動計算からの作動トルク。Simscape™ Multibody™ により、作動トルクがモデルのダイナミクスに基づいて計算されて適用されます。
Motion

作動運動の設定を選択します。既定の設定は [Automatically Computed] です。

作動運動の設定説明
Provided by Input物理量信号入力からのジョイント プリミティブの運動。信号により、ジョイント プリミティブの軸に沿った、base 座標系を基準とする follower 座標系の目的の軌跡が与えられます。
Automatically computed自動計算からのジョイント プリミティブの運動。Simscape Multibody により、ジョイント プリミティブの運動がモデルのダイナミクスに基づいて計算されて適用されます。

Revolute Primitive: Sensing

回転ジョイント プリミティブで検出する変数を選択します。変数を選択すると、測定された量を時間の関数として出力する物理量信号端子が表示されます。測定されるのは、それぞれ base 座標系を基準とする follower 座標系の量です。base 座標系で解決されます。これらの測定信号は解析に使用できるほか、制御システムで入力として使用できます。

Position

このオプションは、ジョイント プリミティブの軸を中心とした、base 座標系に対する follower 座標系の相対回転角を検出する場合に選択します。

Velocity

このオプションは、ジョイント プリミティブの軸を中心とした、base 座標系に対する follower 座標系の相対角速度を検出する場合に選択します。

Acceleration

このオプションは、ジョイント プリミティブの軸を中心とした、base 座標系に対する follower 座標系の相対角加速度を検出する場合に選択します。

Actuator Torque

このオプションは、ジョイント プリミティブの軸に中心とした、base 座標系を基準とする follower 座標系に作用する作動トルクを検出する場合に選択します。

Mode Configuration

ジョイントのモードを指定します。ジョイント モードは、シミュレーション全体を通じてノーマルまたは解放にできるほか、シミュレーション時に入力信号を与えてモードを変更することもできます。

Mode

次のいずれかのオプションを選択してジョイントのモードを指定します。既定の設定は [Normal] です。

方法説明
Normalシミュレーション全体を通じてジョイントが通常の動作になります。
Disengagedシミュレーション全体を通じてジョイントが解放されます。
Provided by Inputこのオプションを選択すると、シミュレーション時に入力信号を接続してジョイント モードを変更できる [mode] 端子が表示されます。ジョイント モードは、入力信号が 0 の場合はノーマル、入力信号が -1 の場合は解放になります。ジョイント モードはシミュレーション中に何度でも変更できます。

Composite Force/Torque Sensing

検出する複合力と複合トルクを選択します。これらの測定はすべてのジョイント プリミティブを含み、いずれかに固有のものでありません。拘束と合計の 2 種類があります。

拘束の測定では、ジョイントのロックされた軸での運動に対する抵抗が与えられます。たとえば、xy 平面での並進を禁止する直進ジョイントでは、その抵抗で x 方向と y 方向のすべての摂動のバランスが調整されます。合計の測定では、作動入力、内部のバネとダンパー、ジョイントの位置の制限、および運動学的拘束に起因する、ジョイントの自由度を制限するすべての力とトルクの合計が与えられます。

Direction

base 座標系と follower 座標系の間の作用と反作用のペアから検出するベクトル。このペアは、ニュートンの運動の第三法則に従って生じるものです。ジョイント ブロックの場合、follower 座標系に対する力またはトルクは、base 座標系に対する大きさの等しい逆向きの力またはトルクを伴います。それらについて、base 座標系が follower 座標系に及ぼすものと、follower 座標系が base 座標系に及ぼすもののどちらを検出するかを示します。

Resolution Frame

測定のベクトル成分を解決する座標系。座標系の方向が異なれば、同じ測定に対して異なるベクトル成分が与えられます。それらの成分を base 座標系の軸と follower 座標系の軸のどちらから取得するかを示します。この選択は、回転自由度をもつジョイントでのみ重要になります。

Constraint Force

測定する動的変数。拘束力は、ジョイントのロックされた軸での並進に対する抵抗です。そのプリミティブの自由軸では並進が許可されます。選択すると、端子 [fc] を通じて拘束力ベクトルが出力されます。

Constraint Torque

測定する動的変数。拘束トルクは、ジョイントのロックされた軸での回転に対する抵抗です。そのプリミティブの自由軸では回転が許可されます。選択すると、端子 [tc] を通じて拘束トルク ベクトルが出力されます。

Total Force

測定する動的変数。合計力は、すべてのジョイント プリミティブにおけるすべてのソースについての合計です。ソースには、作動入力、内部のバネとダンパー、ジョイントの位置の制限、および運動学的拘束が含まれます。選択すると、端子 [ft] を通じて合計力ベクトルが出力されます。

Total Torque

測定する動的変数。合計トルクは、すべてのジョイント プリミティブにおけるすべてのソースについての合計です。ソースには、作動入力、内部のバネとダンパー、ジョイントの位置の制限、および運動学的拘束が含まれます。選択すると、端子 [tt] を通じて合計トルク ベクトルが出力されます。

端子

このブロックには、2 つの座標系端子があります。また、オプションの物理量信号端子として、作動入力を指定する端子、および力、トルク、運動などの力学的変数を検出する端子があります。オプションの端子は、その端子に対応する検出のチェック ボックスをオンにすると表示されます。

座標系端子

  • B — base 座標系

  • F — follower 座標系

作動端子

回転ジョイント プリミティブには、次の作動端子があります。

  • tx、ty、tz — X、Y、Z の各回転ジョイント プリミティブに作用する作動トルク

  • qx、qy、qz — X、Y、Z の各回転ジョイント プリミティブの目的の回転

検出端子

回転ジョイント プリミティブには、次の検出端子があります。

  • qx、qy、qz — X、Y、Z の各回転ジョイント プリミティブの角度位置

  • wx、wy、wz — X、Y、Z の各回転ジョイント プリミティブの角速度

  • bx、by、bz — X、Y、Z の各回転ジョイント プリミティブの角加速度

  • tx、ty、tz — X、Y、Z の各回転ジョイント プリミティブに作用する作動トルク

  • tllx、tlly、tllz — X、Y、Z の各回転ジョイント プリミティブの下限をもつ接触によるトルク

  • tulx、tuly、tulz — X、Y、Z の各回転ジョイント プリミティブの上限をもつ接触によるトルク

次の検出端子は、ジョイントに作用する複合力と複合トルクを提供します。

  • fc — 拘束力

  • tc — 拘束トルク

  • ft — 合計力

  • tt — 合計トルク

モード端子

モードの構成には、次の端子があります。

  • mode — ジョイントのモードの値。入力が 0 に等しい場合、ジョイントは通常の動作になります。入力が -1 に等しい場合、ジョイントは解放として動作します。

拡張機能

C/C++ コード生成
Simulink® Coder™ を使用して C および C++ コードを生成します。

バージョン履歴

R2012a で導入