見出し画像

Omniverse上で摩擦実験を行う

環境の準備

Isaac Sim環境で行います。Isaac Sim環境の用意はこちらを参考にしてください。


Create/Physics/Ground Planeをクリックします。

地面がStageに出現します。

SphereやCubeを置いてみます。

Create/Physics/Physics sceneをクリックします。

Physics sceneの役割

Physics sceneは、3Dオブジェクトに対して重力、衝突、摩擦などの物理法則を適用し、現実世界の動きを模倣します。これにより、オブジェクトが自然に落下したり、衝突したり、転がったりする様子をシミュレートできます。

Primに物理特性を付与する

現時点でスタートボタンを押しても、何も起こりません。
先ほど置いたCubeに物理特性を付与します。
Cubeを選択した状態で
Add/Physics/Rigid Body with Colliders Presetを選択します。

これによりCubeに物理特性が付与されます。
Cubeを床から離した位置において、スタートするとCubeが落下する様子が確認できるはずです。

※Rigid Body Presetについて

Rigid Body Presetは、オブジェクトの物理的な挙動を定義するためのプリセットです。

Presetの種類例

  • Static: 静的なオブジェクト。他のオブジェクトと衝突しても動きません (例: 地面、壁)。

  • Dynamic: 動的なオブジェクト。重力や他のオブジェクトとの衝突の影響を受けます (例: ボール、箱)。

  • Kinematic: スクリプトやアニメーションによって制御されるオブジェクト。物理シミュレーションの影響は受けません (例: ドア、動くプラットフォーム)。

Presetの設定項目例

  • Mass: 質量。

  • Linear Damping: 線形減衰。空気抵抗などによる速度の減衰。

  • Angular Damping: 角減衰。回転速度の減衰。

  • Sleep Threshold: スリープしきい値。オブジェクトの動きが遅くなると、シミュレーションの負荷を軽減するためスリープ状態に移行します。

Primを動かす


CUBEを選択した状態で、Property/Raw USD properties/extra properties/Liner velocityに値を入れます。
X=5(m)を入れてみます。
スタートするとCubeが動く様子が確認できるはずです。


床に触れた瞬間にCubeの動きが止まってしまいます。摩擦のパラメーターを変更して、試してみます。

Physics material

「Physics Material」は、物体の物理的特性や材料特性を定義するための設定です。この設定を使用することで、物体がどのように振る舞うか、つまり衝突時の反応や摩擦の特性、弾性などを調整することができます。

Physics Materialの主な特性

  1. 摩擦(Friction):

    • 物体同士が接触した際の摩擦力を定義します。摩擦係数は通常、動的摩擦(すべるときの摩擦)と静的摩擦(動き出すときの摩擦)に分かれています。摩擦の値が高いほど、物体の動きが妨げられます。

  2. 反発係数(Restitution):

    • 衝突後に物体がどれだけのエネルギーを保持して跳ね返るかを示します。値が1に近いほど、衝突後にほぼ元のエネルギーを持ち、跳ね返りが強くなります。値が0に近い場合、エネルギーがほとんど失われ、物体は動かなくなります。

  3. 密度(Density):

    • 物質の質量と体積の比率を示し、物体の重さに直接的な影響を与えます。密度が高いほど、同じ体積の中にもっと質量が含まれます。

  4. せん断剛性(Shear Stiffness):

    • ソフトボディ物体などの柔軟性を示す特性で、形がどれだけ変わりやすいかを決定します。

  5. 流体特性:

    • 流体シミュレーションの場合、材料の粘度やその他の流体特性を設定することができます。


メニューのCreate/Physics/Physics Materialをクリックします。

Rigid Body Materialを選択します。

Propertyを見ると様々な項目があります。
摩擦の項目は以下です。

Static Friction=静摩擦
Dynamic Friction=動摩擦

Physics materialを設定する


CubeのPropertyで先ほど作ったPhysics materialを下記のように設定します。
これでCubeにPhysics materialが設定されます。

※注意点 Physics material on selected modelsに設定をします。上のほうに同じようにMaterialを設定する項目が上にありますが、これは見た目を設定するものなので異なります。 

同じようにFloorにPhysics materialを設定します。
まず、Physics materialを複製します。名前もわかりやすいように変えておきます。

Collision PlaneにPhysics materialを設定します。これにより床の摩擦を設定できます。

Cubeをもう一つ用意して、別のPhysics materialを設定します。
・Cubeを複製
・Physics materialを複製
・Physics materialを設定

摩擦係数を変えてみる

それぞれのFrictionの値を0.0~1.0の間に設定します。
Frictionの
値によって滑りが異なる様子が確認できると思います。


いいなと思ったら応援しよう!