Main Content

ジョイントの拘束力の測定

Simscape™ Multibody™ モデルでは、ジョイント ブロックを使用して、ジョイント プリミティブを駆動する作動力と作動トルクを測定できます。また、ジョイント全体に働く合計力と拘束力も測定できます。

この例では、Weld Joint ブロックを使用して、ボディを一体として保持する時変内力を測定する方法を示します。図に示すように、遠位リンクの 2 つのパーツが溶接ジョイントで接続され、2 つのパーツ間の相対運動が拘束されています。遠位リンクの内力は、溶接ジョイントに働く拘束力と等しくなります。この例では、二重振子モデルを使用します。このモデルの作成方法の詳細については、開ループ連鎖のモデル化を参照してください。

次の図に、溶接ジョイントに働く拘束力を示します。縦方向の拘束力は、溶接ジョイントの座標系の x 軸と一致しています。横方向の拘束力は、y 軸と一致しています。二重振子モデルの運動は xy 平面を維持するため、z 軸方向の拘束力は無視できます。

Weld Joint ブロックを使用して、follower 座標系が base 座標系に及ぼす拘束力、あるいは base 座標系が follower 座標系に及ぼす拘束力を測定できます。これらの力は、大きさは同じですが方向が逆になります。この例では、follower 座標系が base 座標系に及ぼす拘束力を Weld Joint ブロックで測定します。

測定された拘束力を解決するための座標系も指定できます。解決する座標系は、base 座標系と follower 座標系のどちらでもかまいません。6-DOF Joint ブロックなどの特定のジョイント ブロックでは、base 座標系と follower 座標系に異なる向きをもたせることが可能です。それにより、同じ測定が、解決する座標系の選択によって異なる結果になります。

モデルへの Weld Joint ブロックの追加

  1. 二重振子モデルを開くには、MATLAB® コマンド プロンプトで「openExample("sm/DocDoublePendulumModelExample")」と入力します。

  2. Binary Link A1 サブシステムの左下隅にある矢印をクリックして、サブシステムの内容を表示します。

  3. Weld Joint ブロックを追加し、ブロック間を図に示すように接続します。

    Block diagram of the Binary Link A1 subsystem with the Weld Joint block

拘束力の測定と出力

  1. Weld Joint ブロックのダイアログ ボックスで、[Constraint Force] を選択します。ブロックに fc というラベルの付いた物理量信号出力端子が表示されます。

  2. Connection Port ブロックをサブシステムに追加し、ブロックに Conn3 という名前を付けて、ブロック間を図に示すように接続します。最上位モデルに戻ります。

    Block diagram of the Binary Link A1 subsystem with the Weld Joint and Connection Port blocks

  3. 次のブロックをモデルに追加します。

    ライブラリブロック
    [Simscape][Utilities]PS-Simulink Converter
    [Simulink][Sinks]To Workspace

  4. 次の図のようにブロックを接続します。

    Block diagram of double-pendulum system with PS-Simulink Converter and To Workspace blocks

  5. 次のブロック パラメーターを指定します。

    ブロックダイアログ ボックスのパラメーター
    PS-Simulink Converterベクトル形式1 次元配列
    Output signal unitmN
    To Workspace変数名fcf_weld

減衰の指定

それぞれの Revolute Joint ブロックのダイアログ ボックスで、[Internal Mechanics][Damping Coefficient]1e-5 N*m/(deg/s) に設定します。減衰係数を使用すると、運動中のエネルギー散逸をモデル化して、二重振子モデルがやがて静止するようにできます。

モデルのシミュレーション

  1. [モデル化] タブで、[モデル設定] をクリックします。

  2. [コンフィギュレーション パラメーター] ウィンドウの左側のペインで、[ソルバー] をクリックし、[ソルバー][ode15s(stiff/NDF)] に設定します。これは、物理モデル用の推奨されるソルバーです。

  3. [ソルバーの詳細] を展開し、[最大ステップ サイズ] パラメーターを 0.001 s に設定します。

  4. シミュレーションを実行します。Mechanics Explorer に、モデルの動的な表示が開きます。[Mechanics Explorers] タブで、[Isometric View] ボタンをクリックして、等角投影の視点から二重振子を表示します。

    Double-pendulum structure

拘束力のプロット

MATLAB コマンド プロンプトで、次のプロット コマンドを入力します。

figure;
plot3(fcf_weld.time, fcf_weld.data(:,1), fcf_weld.data(:,2),...
'.', 'MarkerSize', 1, 'Color', 'r');
grid on;
xlabel('T, s'); 
ylabel('F_{C,X}, mN'); 
zlabel('F_{C,Y}, mN');
MATLAB により、時間に対する軸方向と横方向の拘束力が 3 次元でプロットされます。次の図に、結果のプロットを示します。

Time-varying internal forces in the distal link

参考

|

関連するトピック