Main Content

Forward Dynamics

ジョイントのトルクと状態が指定された場合のジョイント加速度

  • Forward Dynamics block

ライブラリ:
Robotics System Toolbox / Manipulator Algorithms

説明

Forward Dynamics ブロックは、ジョイント トルク、ジョイントの状態、および外力で構成される指定されたロボットの状態に対し、ロボット モデルのジョイント加速度を計算します。ジョイント加速度を得るには、ロボット コンフィギュレーション (ジョイント位置)、ジョイント速度、加えられるトルク、および外力を指定します。

[剛体ツリー] パラメーターでロボット モデルを rigidBodyTree オブジェクトとして指定し、オブジェクトの Gravity プロパティを設定します。importrobot を使用して、URDF (Unified Robot Description Format) ファイルからロボット モデルをインポートすることもできます。

端子

入力

すべて展開する

ロボット コンフィギュレーション。[剛体ツリー] パラメーターで設定されている、ロボット モデル内の固定されていないすべてのジョイント位置のベクトルとして指定します。Constant ブロックまたは MATLAB Function ブロック内で関数 homeConfiguration または randomConfiguration を使用しても、複雑なロボット用にこのベクトルを生成することができます。

ジョイント速度。ベクトルとして指定します。ジョイント速度の数は、ロボットの自由度 (固定されていないジョイントの数) と等しくなります。

ジョイント トルク。ベクトルとして指定します。各要素は特定のジョイントに加えられるトルクに対応します。ジョイント トルクの数は、ロボットの自由度 (固定されていないジョイントの数) と等しくなります。

外力行列。6 行 n 列の行列として指定します。ここで、n はロボット モデル内のボディ数です。この行列では、特定ボディに対応する行に非ゼロ値が含まれます。各行は、その特定ボディのレンチとして機能する、加えられる力とトルクのベクトルです。externalForceMATLAB Function ブロックと共に使用して、この行列を生成します。

出力

すべて展開する

ジョイント加速度。ベクトルとして返されます。ジョイント加速度の数は、ロボットの自由度と等しくなります。

パラメーター

すべて展開する

ロボット モデル。rigidBodyTree オブジェクトとして指定します。importrobot を使用して、URDF (Unified Robot Description Format) ファイルからロボット モデルをインポートすることもできます。

既定のロボット モデル twoJointRigidBodyTree は、回転ジョイントをもち、自由度が 2 のロボットです。

  • インタープリター型実行 — MATLAB® インタープリターを使用してモデルをシミュレートします。このオプションでは起動時間が短縮されますが、シミュレーション速度は [コード生成] より遅くなります。このモードでは、ブロックのソース コードをデバッグできます。

  • コード生成 — 生成される C コードを使用してモデルをシミュレートします。シミュレーションをはじめて実行すると、Simulink® によってブロック用の C コードが生成されます。モデルが変更されない限り、この C コードは後続のシミュレーションで再利用されます。このオプションでは起動時間が長くなりますが、後続のシミュレーションの速度は [インタープリター型実行] に匹敵します。

調整可能: No

拡張機能

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

バージョン履歴

R2018a で導入