メインコンテンツ

massMatrix

ジョイント空間の質量行列

説明

H = massMatrix(robot) は、ロボットのホーム コンフィギュレーションにおける、ジョイント空間の質量行列を返します。

H = massMatrix(robot,configuration) は、指定したロボット コンフィギュレーションの質量行列を返します。

すべて折りたたむ

Robotics System Toolbox™ loadrobotから Boston Dynamics Atlas® ヒューマノイド ロボットのモデルを読み込みます。rigidBodyTree オブジェクトとして返されます。データ形式が "row" に設定されていることを確認します。すべてのダイナミクス計算について、データ形式は "row" または "column" でなければなりません。

atlas = loadrobot("atlas", DataFormat="row", Gravity=[0 0 -9.81]);

atlas のランダムなコンフィギュレーションを生成します。

q = randomConfiguration(atlas);

コンフィギュレーション q における質量行列を取得します。

H = massMatrix(atlas,q)
H = 30×30

   12.6255    0.0673  -11.7110    1.5771   -0.0523    0.2264   -0.3481    0.0131   -0.0208   -0.0003   -0.0139    1.1938   -1.0678    0.0436   -0.0168   -0.0021    0.0355    0.0001         0         0         0         0         0         0         0         0         0         0         0         0
    0.0673   22.6221   -0.4342    0.2640   -0.4184    0.2375   -0.1990    0.0215   -0.0216   -0.0002    0.1002    0.8340    0.7765    0.7280   -0.1353   -0.0328   -0.0290   -0.0003         0         0         0         0         0         0         0         0         0         0         0         0
  -11.7110   -0.4342   21.2537    0.1411    1.3433   -0.2200   -0.2161   -0.0154    0.0024    0.0003   -0.0000   -0.6666    1.4631    0.0209    0.0006    0.0020   -0.0358   -0.0003         0         0         0         0         0         0         0         0         0         0         0         0
    1.5771    0.2640    0.1411    0.9953    0.2206    0.1062   -0.3046    0.0043   -0.0153   -0.0003         0         0         0         0         0         0         0         0         0         0         0         0         0         0         0         0         0         0         0         0
   -0.0523   -0.4184    1.3433    0.2206    1.5017   -0.2365   -0.3980   -0.0170   -0.0244    0.0003         0         0         0         0         0         0         0         0         0         0         0         0         0         0         0         0         0         0         0         0
    0.2264    0.2375   -0.2200    0.1062   -0.2365    0.1227   -0.0006    0.0151    0.0005    0.0001         0         0         0         0         0         0         0         0         0         0         0         0         0         0         0         0         0         0         0         0
   -0.3481   -0.1990   -0.2161   -0.3046   -0.3980   -0.0006    0.2930   -0.0008    0.0242   -0.0000         0         0         0         0         0         0         0         0         0         0         0         0         0         0         0         0         0         0         0         0
    0.0131    0.0215   -0.0154    0.0043   -0.0170    0.0151   -0.0008    0.0063   -0.0000    0.0004         0         0         0         0         0         0         0         0         0         0         0         0         0         0         0         0         0         0         0         0
   -0.0208   -0.0216    0.0024   -0.0153   -0.0244    0.0005    0.0242   -0.0000    0.0070   -0.0000         0         0         0         0         0         0         0         0         0         0         0         0         0         0         0         0         0         0         0         0
   -0.0003   -0.0002    0.0003   -0.0003    0.0003    0.0001   -0.0000    0.0004   -0.0000    0.0005         0         0         0         0         0         0         0         0         0         0         0         0         0         0         0         0         0         0         0         0
   -0.0139    0.1002   -0.0000         0         0         0         0         0         0         0    0.0205         0         0         0         0         0         0         0         0         0         0         0         0         0         0         0         0         0         0         0
    1.1938    0.8340   -0.6666         0         0         0         0         0         0         0         0    0.4966   -0.1807   -0.0609   -0.0491   -0.0009    0.0171   -0.0002         0         0         0         0         0         0         0         0         0         0         0         0
   -1.0678    0.7765    1.4631         0         0         0         0         0         0         0         0   -0.1807    0.8700    0.1437    0.2073    0.0070   -0.0285   -0.0005         0         0         0         0         0         0         0         0         0         0         0         0
    0.0436    0.7280    0.0209         0         0         0         0         0         0         0         0   -0.0609    0.1437    0.3084   -0.0011   -0.0112   -0.0193    0.0001         0         0         0         0         0         0         0         0         0         0         0         0
   -0.0168   -0.1353    0.0006         0         0         0         0         0         0         0         0   -0.0491    0.2073   -0.0011    0.2849    0.0184   -0.0105   -0.0004         0         0         0         0         0         0         0         0         0         0         0         0
      ⋮

show(atlas,q);

Figure contains an axes object. The axes object with xlabel X, ylabel Y contains 169 objects of type patch, line.

入力引数

すべて折りたたむ

ロボット モデル。rigidBodyTree オブジェクトとして指定します。関数 massMatrix を使用するには、DataFormat プロパティを 'row' または 'column' に設定します。

ロボット コンフィギュレーション。ロボット モデル内の固定されていないすべてのジョイント位置を含むベクトルとして指定します。コンフィギュレーションは、homeConfiguration(robot)randomConfiguration(robot) を使用するか、独自のジョイント位置を指定することによって生成できます。configuration のベクトル形式を使用するには、robotDataFormat プロパティを 'row' または 'column' に設定します。

出力引数

すべて折りたたむ

ロボットの質量行列。nn 列のサイズをもつ正定値の対称行列として返されます。ここで、n はロボットの速度の自由度です。

詳細

すべて折りたたむ

拡張機能

すべて展開する

バージョン履歴

R2017a で導入

すべて展開する