Rigid to Rigid Contact

Rigid to Rigid Contactでは、3Dフレームまたは2D平面で互いを基準として運動する2つの剛体間の接触力を捕捉します。

3D剛体間接触の結合性の定義

Connectivityで、接触に関与するボディやグラフィックスを定義できます。接触に対するグラフィックスの適合性をチェックすることもできます。

  1. 現時点でContactsパネルが表示されていない場合は、目的の接触をProject Browserまたはmodeling windowでクリックして選択します。
    Contactsパネルが自動的に表示されます。
  2. Body Iコレクターをクリックして、接触を定義する1番目のボディをmodeling windowで選択するか、そのコレクターをダブルクリックしてModel Treeを開きます(ここから目的のボディを選択できます)。
  3. 同様に、Body Jコレクターをクリックして、modeling windowまたはModel Treeで接触の2番目のボディを選択します。
  4. 選択したボディごとに、接触に関与するグラフィックスを、ボディの下に表示されたリストから選択します。
    ボディ上の使用可能なグラフィックスはすべて自動的に、その接触用に選択されます。個々のグラフィックスは、リスト内の各グラフィックエンティティの横にあるチェックボックスを使って個別に選択 / 選択解除できます。

    または、Graphicコレクターをクリックしてアクティブにしてから、必要な形状をmodeling windowで選択します。

    Tip:
    • Graphicコレクターの下にあるAll 、None 、およびReverse の各オプションを使用すれば、接触に使用するグラフィックス群を迅速に選択できます。
    • Material Insideをクリックして、グラフィックの材料がボリュームの内側にあるのか外側にあるのかを指定します。このオプションを選択した場合は、選択した形状がソリッドであることを意味します。すなわち、その形状は材料で満たされており、その外側には材料はありません。したがって、その形状のサーフェス法線は、外側を指します。このオプションが選択されていない場合、これは、逆が真であることを意味します: すなわち、形状の外側は材料で満たされ、内側に材料はありません。この場合、その形状のサーフェス法線は、内側を指します。このフラグは、接触のシミュレーションで形状のサーフェス法線を逆転させるのに役立ちます。
    • サーフェスメッシュの接触の方向を可視化するにはHighlight contact sideをアクティブにします。接触しているサーフェスの側は赤色で、材料の側は青色で示されます。
    • サーフェスメッシュにある不連続性(オープンエッジやT接合など)を可視化するにはHighlight mesh errorsをアクティブにします。オープンエッジは赤いラインで、T接合は青いラインでハイライト表示されます。視認性を高めるには、関連するグラフィックコンポーネントの描写を影なしモードに切り替えます。
      Note: メッシュエラーが検出されなかった場合は、このオプションが無効になり、No mesh errorsが表示されます。

その他のコメント:

  • ADAMSソルバーモードでは、定義したグラフィックがファイルタイプグラフィックの場合、追加のパラソリッドファイルが必要になります。
  • 接触に関連する個々のグラフィックスは、閉じたボリュームを形成する必要があります。すなわち、グラフィックメッシュには、オープンエッジやT接合が含まれていてはいけません。オープンエッジやT接合をチェックするには、Highlight mesh errorsオプションを使用します。


    Figure 1.
  • メッシュの法線は、接触の方向を指していなければなりません。法線の向きがビューアーを指しているように見える際、サーフェスメッシュの側は、接触の側です。反対方向から見ている場合、それは材料側と呼ばれます。正しい接触の方向を設定するには、パネル内のMaterial InsideおよびHighlight contact sideオプションを使用します。以下は、Material InsideおよびHighlight contact sideオプションがどのように働くかの例です:
    Figure 2.

    両方のグラフィックスでMaterial Insideオプションをアクティブにしている場合、Highlight contact sideオプションにチェックマークを入れると、グラフィックスの外側から見たときにこれら両方のグラフィックスが赤色で表示されます。

    特定のケースで接触の方向が逆である場合、Material Insideフラグは逆転され得ます。

接触シミュレーションを正常に実行できるようにモデルを構築する方法については、MotionSolveで3次元接触モデルを実行するための最良の方法をご参照ください。

2D剛体間接触の結合性の定義

Connectivityで、2D接触に関与するボディやグラフィックスを定義できます。接触に対するグラフィックスの適合性をチェックすることもできます。

  1. Body Iコレクターをクリックして、接触を定義する1番目のボディをmodeling windowで選択するか、そのコレクターをダブルクリックしてModel Treeを開きます(ここから目的のボディを選択できます)。
  2. 同様に、Body Jコレクターをクリックして、modeling windowまたはModel Treeで接触の2番目のボディを選択します。
  3. 選択したボディごとに、接触に関与するグラフィックスを、ボディの下に表示されたリストから選択します。
    ボディ上の使用可能なグラフィックスはすべて自動的に、その接触用に選択されます。個々のグラフィックスは、リスト内の各グラフィックエンティティの横にあるチェックボックスを使って個別に選択 / 選択解除できます。

    または、Graphicコレクターをクリックしてアクティブにしてから、必要な形状をグラフィックスウィンドウで選択します。

    Tip:
    • Graphicコレクターの下にあるAll 、None 、およびReverse の各オプションを使用すれば、接触に使用するグラフィックス群を迅速に選択できます。
    • Flip Contact Sideをクリックして、接触するカーブグラフィックの側部を指定します。矢印で指されるカーブの側は、その接触する側を示しています。このフラグを変更すると、接触の方向が逆になります。
    • カーブの接触の方向を可視化するにはHighlight contact sideをアクティブにします。
    • 接触に関与するカーブの平坦性をチェックするにはIdentity Planarityをアクティブにします。このツールでは、Body Iで基準として最初に選択したグラフィックを考慮しながら、各カーブが平坦かどうかと、カーブどうしが同一平面上にあるかどうかがチェックされます。
Note:
  • 2次元接触に関連した個々のカーブグラフィックスは、平面のカーブのみを使用していなければなりません。平面のカーブは、そのデータポイントをすべて単一の平面内に有します。
  • 現時点で、MotionViewでは、2D接触に使用可能なカーブグラフィックスの作成で、3Dデカルト / パラメトリックカーブのみをサポートしています。以下は、Highlight contact sideオプションがどのように働くかの例です:


    Figure 3.

    上の例は、カーブ群とそれらの間に定義された2次元接触を含んだラックとピニオンを示しています。矢印が指している(外側の)ピニオンの側は、接触する可能性がある側を示しています。同様に、ピニオンカーブ上の矢印は、外側からそれを指している矢印群を有しています。

    外側から接触する可能性がある場合、Flip Contact Sideオプションを使用することができます。

剛体間接触のプロパティの定義

垂直力と摩擦力の計算に使用するパラメータは、Propertiesタブで定義します。

  1. Propertiesタブをクリックします。
  2. パネルの一番上にあるタブを使用して、垂直力と摩擦力を区別します。

垂直力

このセクションは、選択された接触の垂直力を計算する方法および関連のプロパティを編集するために使用されます。垂直力を定義するための4つのモデルとして、Impact、Poisson、Volume、およびUser-Definedがサポートされています。

  1. Normal Forceタブをクリックします。
  2. 必要とする手法を選択して、関連のパラメータを定義します。
    Impactを選択した場合:
    1. 境界面での相互作用の剛性の値を入力します。
      剛性は0より大きい値です。
    2. 接触面のフォース対貫通深さ特性で見た貫通深さの指数の値を入力します。
      剛性スプリング特性については1.0以上、軟性スプリング特性については1.0未満でなくてはなりません。

      Exponent > 1

    3. 最大減衰係数の値を入力します。
      値は0.0より大きい必要があります。
    4. 完全減衰が適用される最小貫通深さの値を入力します。
    Poissonを選択した場合:
    1. 材料間のローカル剛性を決定するペナルティパラメータの値を入力します。
      大きい値を使用すると、2つのボディ間の貫通が少なくなります。
    2. 反発係数の値を入力します。
      この値は、2つの接触体間のエネルギー損失を表します。この値の有効な範囲は0.0~1.0です。値1.0はエネルギー損失がなく、完全な弾性接触であることを示します。値0.0は完全な塑性接触で、すべてのエネルギーは接触中に消散されることを表わします。
    3. 完全減衰が適用される法線速度の値を入力します。
      Note: 2つのボディ間の垂直力の精度を高くするには、Use augmented Lagrangian formulationオプションをクリックします。これは、ADAMSソルバーモードでのみ適用できます。
    Volume Modelを選択した場合:
    1. 各ボディの体積弾性係数の値を入力します。
      物質のbulk modulus(体積弾性係数)は、一様圧縮への物質の抵抗を評価します。これは、結果の体積のrelative(相対)現象に対する無限小圧力増加の比として定義されます。
    2. 各ボディのせん断弾性係数の値を入力します。
      せん断係数(剛性係数)は、せん断ひずみに対するせん断応力の比率です。
    3. 各ボディの材料の階層深さの値を入力します。
    4. フォース変形特性の指数の値を入力します。
    5. 減衰係数の値を入力します。
    User-Definedを選択した場合:
    1. User expr:テキストボックスに、ユーザーサブルーチン関数式を入力します。
    2. ローカルサブルーチンファイルを使用する必要がある場合は、Use local file and function nameチェックボックスをアクティブにします。
    3. Local File:フォルダーアイコンをクリックして、ローカルシステムにあるサブルーチンファイルを選択します。
    4. Function Typeドロップダウンメニューから、サブルーチンファイルのタイプとして、DLL/SOPython、またはMATLABを選択します。
    5. Function Name:テキストボックスに、関数名を入力します。
      MotionViewには、デフォルトとしてCNFSUBが用意されています。これは、MotionSolveおよびADAMSで使用するデフォルトの関数です。
各手法の詳細については、Force_Contact MotionSolveステートメントをご参照ください。

摩擦力

このタブを使用して、接触力の計算でクーロン摩擦を考慮するかどうかに関する各種オプションを指定します。

  1. Friction Forceタブをクリックします。
  2. 必要とする手法を選択して、関連のパラメータを定義します。
    Disabledを選択した場合は、摩擦がオフになります。
    Dynamic Onlyを選択した場合は、動摩擦(滑り摩擦)のみが摩擦計算で考慮されます。静的摩擦と滑りへの過渡状態は無視されます。
    Static & Dynamicを選択した場合は、3つの摩擦状態(静摩擦、滑り摩擦への過渡状態、および滑り摩擦)のそれぞれが発生する期間が摩擦計算で考慮されます。

    Dynamic Onlyを指定した場合の摩擦とStatic & Dynamicを指定した場合の摩擦を定義するために必要な手順は同じです。

    1. 静止しているボディが運動するために克服する必要がある静摩擦係数の値をMU Static欄に入力します。
      Note: Dynamic Onlyには適用されません。
    2. 運動しているボディに発生する摩擦係数の値をMU Dynamic欄に入力します。
    3. 摩擦係数がMU Staticの値になるため下回る必要がある速度をStiction transition velocity欄に入力します。
      滑り速度が静摩擦遷移速度と摩擦遷移速度との間である際、摩擦係数はその2つの間の過渡状態にあります。
      Note: Dynamic Onlyには適用されません。
    4. 摩擦係数がMU Dynamicの値になるために上回る必要がある速度をFriction transition velocity欄に入力します。
      滑り速度が静摩擦遷移速度と摩擦遷移速度との間である際、摩擦係数はその2つの間の過渡状態にあります。
    User-Definedを選択した場合:
    1. User expr:テキストボックスに、ユーザーサブルーチン関数式を入力します。
    2. ローカルサブルーチンファイルを使用する必要がある場合は、Use local file and function nameチェックボックスをアクティブにします。
      このオプションが指定されていない場合、MotionSolveは、そのユーザーサブルーチン読み出し規則に従って、サブルーチンを探します。
    3. Local File:フォルダーアイコンをクリックして、ローカルシステムにあるサブルーチンファイルを選択します。
    4. Function Typeドロップダウンメニューから、サブルーチンファイルのタイプとして、DLL/SOPython、またはMATLABを選択します。
    5. Function Name:テキストボックスに、関数名を入力します。
      MotionViewには、デフォルトとしてCFFSUBが用意されています。これは、MotionSolveおよびADAMSで使用するデフォルトの関数です。
各手法の詳細については、Force_Contact MotionSolveステートメントをご参照ください。

剛体間接触の高度なオプションの定義

Advancedタブには、MotionSolveでのシミュレーション中に接触イベントを制御するための高度なオプションが用意されています。

Note: このタブは、MotionSolveソルバーモードでのみ使用できます。
  1. Advancedタブをクリックします。
  2. 接触イベント制御オプションの一方または両方をアクティブにします。
    オプション 説明
    Find precise contact event 接触の最初のイベントを正確に捕捉するようソルバーに指示するには、このオプションをアクティブにします。
    Change simulation max step size 接触が検知された後に、そのシミュレーションについて最大ステップサイズを変更するには、このオプションをアクティブにします。
    1. Find precise contact eventをチェックした場合は、最大ステップサイズに対するスケールファクターの値を入力します。
    2. 同様に、Change simulation max step sizeをチェックした場合は、新しい最大ステップサイズの値を入力します。
    Note:
    • Find precise contact eventをアクティブにすると、MotionSolveソルバーデックにセンサーエンティティが自動的に導入され、接触力の関数が追跡されます。
    • 正の接触力によりセンサーが始動すると、ソルバーは成功した最後のステップを破棄し、変更された最大ステップサイズで1つ前のステップサイズから進みます。変更された最大ステップサイズは(現在の最大ステップサイズ) * (最大ステップサイズの係数)として計算されます。
    • Change simulation max step sizeをアクティブにすると、以降のシミュレーションで最大ステップサイズを変更できるようになります。
    • 上記のオプションは共に、接触シミュレーションにおいて精度とロバスト性を向上させますが、シミュレーション時間は長くなります。したがって、これらのオプションは必要な場合にのみ選択的に使用することが推奨されます。
  3. ドロップダウンメニューを使用して、接触荷重の計算位置を選択します。
    オプション 説明
    Element Center MotionSolveによる接触検出と接触荷重計算はメッシュ要素中心の貫通量に基づきます。これがデフォルト設定です。
    Nodes MotionSolveによる接触検出と接触力計算はメッシュ節点の貫通量に基づきます。