MV-1010:3Dメッシュ間の接触のシミュレーション

本チュートリアルでは、MotionSolveでの3D剛体接触機能、およびシミュレーション中に接触するボディのサーフェスメッシュを用いたメッシュ間の接触アプローチの使用について学習します。

サーフェスメッシュは、3D剛体のサーフェスを正確に表現する内部的に結合された三角形のセットです。MotionSolveはそのようなサーフェスメッシュに関して所定の条件を規定しています。

  • 各コンポーネントメッシュは、閉空間を形成している必要がある。すなわちメッシュには、オープンエッジ(1つの要素のみの一部分であるエッジ)やT接合(共通するエッジで結合しているT字形を成す2つの要素)を含んでいてはならない
  • メッシュは均等なサイズでなければならない
  • 要素のサーフェスの法線は、接触の方向を指している
本チュートリアルでは、以下の項目について学習します:
  • 接触のシミュレーションに適したグラフィック設定のCAD形状をインポート
  • マルチボディモデル内のメッシュ化された形状間の3D剛体接触をセットアップ
  • 過渡解析を実行し、それらの形状間の接触を計算
  • 自動的に生成されたレポートを用いて結果をポスト処理

本チュートリアルでは、溝付きリンクモデルを使用します。

この種の3D剛体のメッシュ化表現についてMotionSolveは、複数のサーフェスメッシュ間の貫通を検知し、続いて貫通の深さと接触力を計算する数値的衝突エンジンを使用します。

このアプローチを用いて解析され得る3D接触の適用例は、数多くあります(ギア、カム、接触する部品を含んだ機構など)。

溝付きリンクモデル

溝付きリンク機構(スコッチヨーク機構とも呼ばれる)は、入力の回転運動を、溝付きリンクまたはヨーク部の連続的または断続的な並進運動に変換します。運動は、接触する機構のパート間の接触力を介して伝えられます。接触垂直抗力と摩擦力は共に、運動の伝達に関与し得ます。

このような機構は、バルブアクチュエーター、エアコンプレッサー、一部のレシプロエンジンやロータリーエンジンなどに共通して応用されます。下の図は、本チュートリアルでモデル化される溝付きリンク機構を表しています。



図 1. 溝付きリンク機構. 図に示すとおり、カムが溝付きリンクに接触しており、ピンが溝と接触します。

CAD形状のMotionViewへの取り込み

  1. mbd_modeling\contactsフォルダーにあるslotted_link.x_tファイルを、自身の作業ディレクトリにコピーします。
  2. 新しいMotionViewセッションを開始します。
  3. ToolsImport CAD or FE using HyperMeshをクリックします。
    Import CAD or FE using HyperMeshダイアログが表示されます。
  4. このダイアログ内で、以下のとおり設定します:
    1. Import Optionsで、Import CAD or Finite Element Model with Mass and Inertiasを選択します。
    2. Input FileドロップダウンメニューからParasolidを選択します。
    3. ファイルブラウザアイコンをクリックして自身の作業ディレクトリに進み、入力CAD形状としてslotted_link.x_tを選択します。
      Output Graphic Fileテキスト欄には自動的に同じパスと名称が入力されますが、接尾部に_graphic.h3dの拡張子が付きます。このファイルは、モデル内のグラフィックスの指定に用いられます。希望する場合は、グラフィックH3Dの名称やパスを変更してもかまいません。
    4. をクリックし、Meshing Options for Surface Data sectionを展開します。Allow HyperMesh to specify mesh optionsを選択します。
    5. Control mesh coarseness for contacts のチェックボックスを有効にします。スライダーを5にセットします。
      このオプションを選択することで、HyperMeshに、MotionSolveでの3D接触に使用できるようCAD形状をメッシュするよう指示します。
      注: スライダーは、生成されるメッシュの粗さをコントロールします。1が最も粗く、10が最も細かいメッシュになります。メッシュが非常に粗い場合、三角形メッシュが大きいため、CADサーフェスの湾曲が正しく表現されない可能性があります。一方、メッシュが非常に細かい場合、三角形メッシュは極端に小さいため要素数が多くなり、その結果解析時間が長くかかります。メッシュの細かさと、モデル化の目標を満足するパフォーマンスとが上手く両立できれば、それが最良です。
      この時点で、Import CAD or FE using HyperMeshダイアログは以下のようになっているはずです:


      図 2. Import CAD or FE using HyperMeshダイアログ
  5. OKをクリックします。
    MotionViewはバックグラウンドでHyperMeshを起動し、形状をメッシングしてその体積のプロパティを計算します。Import CADダイアログが表示されます。このダイアログでは、CADファイル内のコンポーネント、およびそれらの質量、密度、体積のプロパティを確認することができます。


    図 3. Import CAD or FEユーティリティを用いたCAD形状のインポート
  6. OKをクリックし、Message Logを破棄します。
    変換された形状が、目視のためにMotionViewに読み込まれます。ディスプレイをメッシュ化された表現に切り替えることにより、サーフェスメッシュを検証することができます。
  7. VisualizationツールバーからGraphic Entity Attributes をクリックします。
    Graphic Entity Attributesパネルが表示されます。
  8. パネルの左側にあるGraphicリストからModelをクリックしてすべてのグラフィックスを選択し、続いてMesh lines をクリックします。


    図 4. 入力CAD形状のコンポーネント全てにメッシュラインを表示


    図 5. 入力CAD形状のコンポーネント全てにサーフェスメッシュを表示

ジョイントと強制運動の作成

この時点では、モデルには下記のボディとそれぞれ関連付けされたグラフィックが含まれています。

エンティティ名 エンティティタイプを指定します。 説明
Slotted_Link 剛体 溝付きリンクボディ
Cam 剛体 カムボディ
Pin 剛体 ピンボディ。カムボディとピンボディとで溝付きリンクを成す
Link 剛体 ピンとカムの間のコネクターボディ
Slotted_Link グラフィック 溝付きリンクボディを表すグラフィック。これは、メッシュ化されたグラフィックです
Cam グラフィック カムのボディを表すグラフィック。これは、メッシュ化されたグラフィックです
Pin グラフィック ピンボディを表すグラフィック。これは、メッシュ化されたグラフィックです
Link グラフィック リンクボディを表すグラフィック。これは、メッシュ化されたグラフィックです

Pin、Link、およびCamの各ボディは互いに固定されており、カム中央のGround Bodyに置かれます。溝付きリンクは、Ground Bodyに対し並進が可能です。

  1. 下の一覧の詳細のとおり、ジョイントを作成します:
    S.No ラベル Type Body 1 Body 2 Origin Alignment Axis
    1 Pin Link Fix 固定ジョイント Pin Link Pin CG  
    2 Link Cam Fix 固定ジョイント Link Cam Link CG  
    3 Cam Pivot 回転ジョイント Cam Ground Body 全体座標系の原点 Global Y
    4 Slotted Link Slider Translation Joint Slotted_Link Ground Body Slotted_Link CG Global X
  2. タイプDisplacementのCam Pivotジョイント上のモーションを適用し、Expressionを`360d*TIME`と定義します。
  3. モデルをslotted_link_mech.mdlとして保存します。

衝突する形状間の接触の定義

本ステップでは、下記の間の接触を定義します:
  • CamとSlotted_Link
  • PinとSlotted_Link
  1. Force EntityツールバーでContactアイコンを右クリックします。
    Add Contactダイアログが表示されます。
  2. LabelにCam Slotted Link Contactと入力します。3D Rigid To Rigid Contactを選択し、OKをクリックします。


    図 6.
  3. ContactパネルのConnectivityタブで、Body IをCamに、Body JをSlotted_Linkとします。これにより自動的に、これらのボディに付加している各グラフィックが選択されます。


    図 7.
  4. 形状を正しく定義するためには、法線が正しい方向を向き、形状内にオープンエッジまたはT接合が存在しないことが重要です。
  5. Highlight contact side のチェックボックスを有効にします。これにより、サーフェス法線の方向に従って、この接触力要素について指定されている形状が色づけされます。両形状共、完全に赤く表示されていることを確認します(はっきり視認するには、他のグラフィックを非アクティブにし、その後再度アクティブ化する必要があるかもしれません)。


    図 8.


    図 9. 正しくないサーフェス法線のチェック

    赤色の表示はサーフェスの法線で、それが希望する接触の側であることを表します。

  6. オープンエッジまたはT接合がないかをチェックします。関連するグラフィックスのメッシュにオープンエッジまたはT接合が存在する場合、Highlight mesh errorsオプションがアクティブとなります。アクティブとなっている場合は、Highlight mesh errorsにチェックマークを入れます。
    形状内のオープンエッジまたはT接合がハイライト表示されます。
    この接触エンティティ内の関連するグラフィックには、メッシュのエラーはありません。したがって、No mesh errorsが表示され、グレイアウトされています。


    図 10.

    形状はクリーンで、モデル内にオープンエッジやT接合は存在しません。

    注: モデルに追加される各接触エンティティについて、MotionViewは自動的にタイプExpressionの出力を生成します。これは、その接触要素の接触力をプロットするために使用できます。
  7. 接触のプロパティを指定します。Propertiesタブをクリックし、Contactパネル内にNormal ForceおよびFriction Forceサブタブを表示させます。このモデルでは、下記のプロパティをもつImpactモデルを使用します:
    Normal Force Model
    Impact
    Stiffness
    1000.0
    Exponent
    2.1
    Damping
    0.1
    Penetration Depth
    0.1
    Friction Force Model
    Disabled


    図 11. Contactパネル - Propertiesタブ
    注: MotionSolveはいくつかの接触方法をサポートしています。各方法の詳細とそれらの特性については、Force: Contactをご参照ください。
  8. 接触力がサーフェスメッシュに付与されている場所を変更します。
    1. Advancedタブを選択します。
    2. Force Computed atドロップダウンメニューからNodesを選択します。


    図 12.
    注: デフォルトでは、接触力はサーフェスメッシュの各要素の中央にかけられています。この設定はほとんどの接触の適用例で満足できるものですが、代わりに接触力をサーフェスメッシュの節点上に付与するようMotionSolveに強制することも可能です。これは幾何学的エッジが接触している場合に便利ですが、計算性能が若干低下します。
  9. 手順1 - 7を繰り返し、Pinボディ(Body I)とSlotted_Link(Body J)の間の接触を作成します。この接触のラベルをPin Slotted Link Contactとなるよう設定してもよいでしょう。上のStep 7にリストされているのと同じ接触のプロパティを定義します。
  10. 接触力要素Pin Slotted Link Contactについては、2つの衝突ボディ間で最初に接触が起こる正確な時間を求めます。
    1. Advancedタブを選択します。
    2. Find precise contact eventボックスをチェックします。
    3. 下のテキスト欄に0.01と入力します。


      図 13. Contactsパネル - Advancedタブ
      注: Find precise contact eventオプションでMotionViewは自動的にセンサーエンティティを追加します(ソルバーデック内でSensor_Eventにより定義される)。これにはzero_crossing属性が含まれています。シミュレーション中に接触力が初めて検知されると(荷重値ゼロクロッシング)、MotionSolveは指定の係数でステップサイズを減らし、接触のイベントをより正確に決定するよう試みます。

過渡シミュレーションのセットアップとモデルの実行

この時点で、このモデルについて過渡解析のセットアップを行う準備が整っています。

  1. ツールバーでRun をクリックし、Runパネルを開きます。
  2. Simulation typeをTransientに変更し、end timeを3.0秒に指定します。
  3. 正確な結果を得るには、デフォルトよりも小さいステップサイズを指定します。
    1. Simulation Settingsをクリックし、Simulation Settingsダイアログを表示させます。
    2. Transientタブに進み、Maximum Step Sizeを1e-3にセットします。
    3. Closeをクリックします。


      図 14. Maximum Step Sizeを指定します。
  4. Runパネルで、自身のXMLモデルの名称を指定し、Runをクリックします。
    過渡解析が開始されます。


    図 15. 出力ファイル名を指定し、モデルを実行
    HyperWorks Solver Viewダイアログに、この接触計算にはメッシュベースの接触法が使用されることを確認するソルバーからのメッセージが表示されます。


    図 16. 解析にメッシュベースの接触法が使用されることの確認
    ログファイルには、センサーに関連したメッセージが含まれます。これは、モデル内の第2の接触要素の正確な接触イベントを求めた結果です。


    図 17. センサーのアクティビティに関連したソルバーメッセージ

結果のポスト処理

シミュレーションが完了したら、MotionSolveは、最大貫通深さおよび最大接触力で順位付けされた上位5つの接触ペアをリストしたサマリーテーブルを画面上およびログファイル内の両方に出力します。これは、結果(ABF、MRF、PLT、またはH3D)ファイルを読み込む前でも、モデルが意図したとおりに動作していることを確認するために使用できるので便利です。またこのテーブルを用いて、貫通の深さと接触力が意図された制限内に収まっているかを確認することもできます。このシミュレーションについてのサマリーテーブルを以下に示します:


図 18. 接触の概要テーブル
  1. ソルバーウィンドウを閉じます。
  2. 結果の統合されたレポートを見るには、Analysis > View Reportsをクリックします。


    図 19.
    これより以前にMotionViewを用いて完了しているシミュレーションのリストが表示されます。
  3. 本シミュレーションに関連しているContact Reportを選択します。
  4. OKをクリックします。


    図 20. 接触のレポートの作成

    MotionViewは、現行のHyperWorksセッションに、多ページに渡るレポートを生成します。

H3Dを介した接触力の確認

最初のHyperViewページ(セッションでは2番目)には、接触領域にかかる接触力のベクトルアニメーションが表示されます。これをモデリングウィンドウではっきりと見るには、1つまたは複数のパートの表示をオフにします。これは、下の図に示すとおりです。



図 21. 接触領域における接触力ベクトル
注: 全体を確認するには、荷重を大きさもしくは係数によって均等にスケーリングする必要があるかもしれません。倍率を変更するには、VectorパネルからDisplayタブをクリックし、Size scalingオプションを適宜変更します。

接触の概要

Page Navigationアイコンを使って、次のページに進みます。

セッション内の3番目のページでは、接触シミュレーションの全体的な概要を知ることができます。このページには、サマリーを集計したテーブルと、シミュレーション全体の貫通量を表示するHyperViewウィンドウが含まれています。このテーブルでは、最大貫通深さと最大力をまとめています。このページでは、モデル内で起こっている接触現象を俯瞰的に見ることができます。貫通深さのコンターは、シミュレーションの全期間中に接触しているすべての領域をハイライト表示した静止画像です。



図 22. 接触の概要ページ

H3Dを介した貫通の深さの可視化

次のページに進みます。

セッション内の4番目のページでは、シミュレーションの過程での貫通の深さを視覚化することができます。

  1. グラフィック表示をTransparent Elements and Feature Linesにセットします。


    図 23. 表示をTransparent Elements and Feature Linesにセット
  2. Start/Pause Animationアイコンをクリックし、結果をアニメーション表示します。
    下図に示すように、アニメーションが表示されます。


    図 24. Cam BodyとSlotted Linkの間の貫通

MotionSolve出力の可視化

  1. Vectorパネルを選択します。
  2. Result typeにドロップダウンメニューから結果のタイプを選択し、Applyをクリックします。
    これで、モデル内の関連するグラフィックのすべてについて、選択した結果タイプがプロットされます。それらを見るには、荷重ベクトルをスケーリングする必要があるかもしれません。


    図 25. 接線力のスケーリング
    一例として下の図では、点の滑り速度のベクトルがプロットされています:


    図 26. 点の滑り速度のベクトル

ABFを介した接触力のプロッティング

で次のページに進みます。これが、セッション内の最後のページです。
MotionViewで新しい接触エンティティが作成される度に、対応する出力荷重リクエストが生成され、これは、接触エンティティ内で指定されているグラフィック間の接触力のプロッティングに使用することができます。これらはHyperGraphで可視化が可能です。接触レポートの最後のページは、モデル内の全接触要素について、接触力の大きさをプロッティングします。


図 27. 全接触力の大きさ

他の出力リクエストの手動によるプロッティング

  1. Add Page をクリックし、クライアントをHyperGraph 2D に変更します(まだ選択されていない場合)。
  2. ファイルブラウザアイコンをクリックし、解析されたモデルについて、ABF出力ファイルを開きます。
  3. Y Typeの下でExpressionsを選択し、Y Requestウィンドウ内のリクエストを選択します。
    Y Request にREQ/70000003 Force - Pin Slotted Link Contactを選択し、Y ComponentにF4 を選択します。
  4. Applyをクリックします。


    図 28. HyperGraphでの接触力の可視化
  5. セッションをslotted_link.mvwとして保存します。

まとめ

本チュートリアルでは、CAD形状から良好なメッシュ表現を生成する方法を学びました。さらに、メッシュ化された形状間の接触のセットアップ方法を理解しました。また、形状を検証し、サーフェスの法線が正しい向きにあり、オープンエッジやT接合がないことが確認できました。

また、過渡解析をセットアップして、これらの形状間の接触力を計算し、接触力リクエストのプロッティングに加え、結果をベクトルプロットとコンター図でポスト処理しました。