Subsystem: Planar

Model ElementSubsystem_Planar要素は、Reference_2DCluster要素を集約します。

説明

Reference_2DClusterは、特定のボディのセットを、3つの主平面XY、YZ、またはZXのいずれかの平面内を動くように拘束することを指定します。このようなボディは、平面内の並進に対応する2つの自由度と、平面に垂直なベクトルに沿った回転に対応する1つの自由度の3つの自由度のみです。ボディのタイプはBody_RigidまたはBody_Pointにできます。

平面ボディの一般的な用途には、ベルトドライブやチェーンドライブ、および一般的な平面機構があります。

フォーマット

<Subsystem_Planar
      num_2d_cluster = "integer" >
             integer integer integer integer integer  
               ...     ...     ...     ...     ...  
               ...     ...     ...     ...     ...  
            integer integer integer integer  
</Subsystem_Planar>

属性

num_2d_cluster
Subsystem_Planar要素によってアクティブにされるReference_2DCluster要素の数。このパラメータの後に、Reference_2DCluster要素のIDのリストが続きます。

エアホッケーのテーブルについて考えます。パックがテーブルのエアクッション上を滑り、互いに衝突したり、テーブルのエッジと衝突したりするモーションをモデル化するとします。テーブルから跳ね返るケースは考慮しません。このような状況では、パックを平面ボディとしてモデル化すると好都合です。

ボディを平面として定義するには、次の2ステップのプロセスが必要です:
  1. 以下のようにReference_2DCluster要素を定義します。基本的には、IDが30101、30301、30401のパックが、ID 1の2Dクラスターに属しており、その3つのメンバーはYZ平面内を動くように拘束されるということを指定します。
    <Reference_2DCluster
      id                  = "1"
      planar_type         = "YZ"
      num_body            = "3" >
      30101 30301 30401
    </Reference_2DCluster>
  2. 上で定義されたReference_2DCluster要素を、以下に示すようにSubsystem_Planar要素で参照します:
    <Subsystem_Planar
       num_2d_cluster      = "1" >
       1
    </Subsystem_Planar>

    この要素はID 1の1つの2Dクラスターをアクティブにするよう指定します。ボディが平面内で動くように拘束されない場合にモデルがどのように振る舞うかを確認する場合は、Subsystem_Planar要素を削除するかコメントアウトするだけです。

コメント

  1. 1つのSubsystem_Planar要素で複数の2Dクラスターを参照することもできます。
  2. 別の平面に拘束された別のボディの集合がある場合は、集合ごとに1つの2Dクラスターを使用します。
  3. 一般的に、2Dクラスター要素では、ボディの平面外並進状態と平面内回転状態が排除されるため、シミュレーション速度が向上します。速度が厳密にどれだけ向上するかは、モデルの詳細によって異なります。
  4. 平面ボディでシミュレーション速度がどのくらい向上するかを確認するには、Subsystem_Planar要素をコメントアウトするだけです。Reference_2DCluster要素は、MotionSolve XML入力ファイル内にそのまま残すことができます。