MV-1012:MotionViewMotionSolveを用いた解析的接触のシミュレーション

本チュートリアルでは、MotionViewの新しい解析的3D剛体接触機能について説明します。

球状のプリミティブ形状とメッシュ化された形状との間の半解析的接触をセットアップし、過渡解析を実行してそれらの形状間の接触を計算し、結果を処理して球体にメッシュ化された表現を使用した際の解析時間を比較する方法について学習します。これらの目的のために、ボールベアリングモデルを使用します。
接触している剛体の一方または両方がプリミティブ球体である際、MotionSolveはそれぞれ半解析的接触法または完全な解析的接触法を用いて貫通の深さ、さらに接触力を計算します。これは、表 1で説明されています。
表 1.
Body I Graphic Body J Graphic 接触法 説明
プリミティブ球体 メッシュ 球体 – メッシュ プリミティブ球体(Body I)とメッシュ化された形状(Body J)の間の接触を計算する半解析接触法
プリミティブ球体 プリミティブ球体 球体 – 球体 いずれのグラフィックのメッシュとも無関係である完全に解析的な接触法
球体形状を含んだ3D接触の応用例はいつくかあり(玉軸受、リサーキュレーティングボールシステムなど)、そのようなケースで接触力の計算に解析的アプローチを使用することには、下記のようなメリットがあります:
  • 半解析的または完全に解析的なアプローチの使用時は、解析時間が短く済む
  • メッシュ品質への依存がないため、シミュレーションがよりロバストである
  • メッシュの離散化の影響がない、あるいは小さいため、シミュレーション結果がより正確である場合が多い

MotionViewでのモデルの読み込み

このステップでは、MotionViewでボールベアリングモデルを読み込みます。

玉軸受は、内輪と外輪の間に位置する玉で構成される軸受の1つのタイプです。玉は内輪と外輪の両方と接触しています。玉の目的は主に、摩擦によるロスを最小限にしながら、2つの軌道輪の間の放射状荷重を支持することにあります。玉は2つの軌道輪の間で回転するため、互いにスライディングする2つのサーフェスと比較すると、摩擦が大幅に小さくなります。


図 1. 玉が6個の典型的な玉軸受の形状。切断面は、玉が内輪と外輪に接触している様子を示している。
玉以外のすべてのサーフェスについて、形状はメッシュ化されており、6個の玉のみが、プリミティブ球体として定義されています。
  1. mbd_modeling\contactsフォルダーにあるファイル Ball_Bearing.mdlおよびbearing_graphic.h3dを、自身の<作業ディレクトリ>にコピーします。
  2. 新しいMotionViewセッションを開始します。
  3. Ball_Bearing.mdlモデルを<作業ディレクトリ>から開きます。


    図 2. 玉軸受機構のMotionViewモデル
    図 2 は、MotionViewでセットアップされている状態のモデルを示しています。このモデルは、続いてユーザーが設定するいくつかを除き、必要な接触をすべて有しています。 表 2 は、本モデル内に存在するコンポーネントを説明しています:
    表 2.
    成分名 コンポーネントの種類 詳細
    Ground Body 剛体 グラウンドボディ
    Outer Race 剛体 外輪ボディ
    Inner Race 剛体 内輪ボディ
    Ball 1, , Ball 6 剛体 玉のボディ
    Rim 剛体 玉を所定位置に保持するリムのボディ
    Ball1_inter、…、Ball5_inter 3D剛体接触 玉とリムの間の接触力要素
    Ball1_upper、… Ball5_upper 3D剛体接触 玉と外輪の間の接触力要素
    Ball1_inter、…、Ball5_inter 3D剛体接触 玉と内輪の間の接触力要素
    Solver Units Data Set このモデルのためのソルバーの単位。ニュートン、ミリメーター、キログラム、秒にセットされている
    Gravity Data Set 本モデルに指定されている重力。重力はアクティブにされており、負のZ方向にかかる
    Outer Race Graphic グラフィック 外輪のボディを表すグラフィック。これは、メッシュ化されたグラフィックです
    Inner Race Graphic グラフィック 内輪のボディを表すグラフィック。これは、メッシュ化されたグラフィックです
    Rim Graphic グラフィック リムのボディを現すグラフィック。これは、メッシュ化されたグラフィックです
    Ball1 - primitive、… Ball6 - Primitive グラフィック 玉のボディを表すグラフィック。これらは、プリミティブ形状です
    Inner RaceRev 回転ジョイント 内輪とグラウンドボディの間に定義される回転ジョイント
    Outer Race Fixed 固定ジョイント 外輪とグラウンドボディの間に定義される固定ジョイント
    Input Motion to Inner Race Motion この機構を作動させる内輪回転ジョイント上に定義される強制運動

プリミティブ形状とメッシュ化された形状の間の接触の定義

このステップでは、Ball 6とOuter Raceの間、Ball 6とRimの間、Ball 6とInner Raceの間の接触を定義します。

  1. 新しい接触エンティティを追加するために、Force EntityツールバーからContactボタンを右クリックします。


    図 3.
    Add Contactダイアログが表示されます。
  2. ダイアログで、LabelをBall6_inter、Variableをcon_ball6_interと指定します。
  3. ドロップダウンメニューで3D Rigid To Rigid Contactが選択されていることを確認し、OKをクリックします。


    図 4.
    これで、Contactパネルが表示されます。
  4. Connectivityタブで、I BodyBall 6J BodyRimとします。
    これで自動的に、それらのボディに付加されているグラフィックが選択されます。


    図 5.
  5. 形状が接触について正しく定義されているためには、サーフェスメッシュの法線が接触の方向に沿っており、形状内に開いたエッジやT接合が含まれないことが必要です。法線が正しい方向を向いていることを確実にするには、 Highlight contact sideボックスをアクティブにします。
    これにより、サーフェス法線の方向に従って、この接触力について指定されている形状が色づけされます。両方の形状が完全に赤色であること、すなわち、両形状に青色のパッチが存在しないことを確実にしてください。
    注: これをはっきり確認するには、Outer Raceのグラフィックを非アクティブにする必要があるかもしれません。


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


    図 7.
  6. オープンエッジまたはT接合をチェックするには、Highlight mesh errorsオプションがアクティブになっているかどうかを確認します。
    1. オプションがアクティブである場合、Highlight mesh errorsボックスをアクティブにします。
      これにより、形状内のオープンエッジまたはT接合がハイライト表示されます。この接触エンティティ内の関連するグラフィックには、メッシュのエラーはありません。したがって、Highlight mesh errorsは薄い灰色で表示(グレイアウト)されています。
  7. 接触のプロパティを指定します。
    1. Propertiesタブをクリックします。
    2. Normal ForceおよびFriction Forceのプロパティタブで、図 8のプロパティを指定します。


      図 8.
  8. ステップ1から3までを繰り返し、Ball 6ボディとOuter Raceの間、Ball 6ボディとInner Raceの間の接触を作成します。これらの設定には表 3の詳細を使用します。
    表 3.
    ラベル Ball6_outer Ball6_inner
    Varname con_ball6_outer con_ball6_inner
    I Body graphic Ball 6 – Primitive Ball 6 – Primitive
    J Body graphic Outer Race Graphic Inner Race Graphic
    Normal Force Model Impact Impact
    Stiffness 1000.0 1000.0
    Exponent 2.1 2.1
    Damping 0.1 0.1
    Penetration Depth 0.1 0.1
    Friction Force Model Static and Dynamic Static and Dynamic
    Mu Static 0.4 0.5
    Mu Dynamic 0.2 0.3
    静摩擦遷移速度 1.0 1.0
    Friction transition velocity 1.5 1.5
  9. モデルを保存します。

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

このステップでは、このモデルについて過渡解析のセットアップを行う方法について学習します。

  1. 過渡解析をセットアップするには、ツールバー(Run)ボタンでをクリックします。
  2. Runパネルから、Simulation type をTransientに、end timeを2.0秒に変更します。
  3. Simulation Settingsボタンをクリックし、Transientタブに進みます。
    1. Maximum step sizeを1e-5に設定し、1eをクリックします。


      図 9.
      デフォルトよりも小さいステップサイズを指定すると、より精確な結果が得られやすくなります。
  4. XMLモデルに名称を指定し、Runボタンをクリックします。


    図 10.
    ポップアップするHyperWorks Solver Viewウィンドウに、この接触計算には半解析的接触法が使用されることを確認するソルバーからのメッセージが表示されます。


    図 11.
    注: ここでお気づきのとおり、使用される接触力の手法を明示的に指定する必要はありません。接触しているボディの一方または両方がプリミティブ球体であるか否かをMotionSolveは自動的に検知し、それに従って、使用される接触力の手法を変更します。

結果のポスト処理

このセクションでは、シミュレーションの完了後にMotionViewが生成するレポートを閲覧、分析します。

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


図 12.
  1. MotionViewでは、接触を含んだモデルについての自動化されたレポートが用意されます。このレポートは自動的に、アニメーションとプロットをセッションに追加します。レポートにアクセスするには、メニューバーからAnalysis > View Reportsをクリックします。
    View Reportsダイアログが表示されます。
  2. ダイアログでContact Reportを選択し、OKをクリックします。
    注: 最後にサブミットされた実行についてのレポートアイテムが、一番上にリストされます。


    図 13.
    これで、追加のページがレポートに加えられます。
  3. Page Navigationボタン(ウィンドウの上部右側角の、メニューバーの下、グラフィックス領域の上)を使用し、これらのページを確認します。
  4. Contact Summaryを表示します。
    MotionSolveは、シミュレーションの全体を通して、接触しているすべての形状の最大貫通の確認に使用可能な静的荷重ケースを、H3Dファイルに書き出します。これによりユーザーは、結果をチェックして、最大貫通深さが形状内で発生しているか否かを知ることができます。これをモデリングウィンドウ内ではっきりと見るには、1つまたは複数のパートの表示をオフにしてもよいでしょう。
    注: グラフィックスがモデリングウィンドウに見当たらない場合は、領域をフィットさせると良いでしょう。
    1. Resultsブラウザで、Ball 1 – PrimitiveからBall 6 – Primitiveまでのコンポーネントを選択します。
    2. 右クリックし、続いてコンテキストメニューHideをクリックします。


      図 14.
    3. HideでRimグラフィックとInner Raceグラフィックを非表示にし、Outer Raceグラフィック上にコンターが表示されるようにします。
      図 15.
  5. Animation - Penetration Depthを閲覧します。
    1. 貫通の深さの時刻歴アニメーションを示す次のページに進みます
    2. コンポーネントを隔離することにより、そのコンポーネント上でコンターを個々に見ることができます。例えば、Inner Raceグラフィック上のコンターを見るには、Resultsブラウザブラウザ内でそのコンポーネントを右クリックし、コンテキストメニューからIsolateを選択します。
    3. Start/Pause Animationボタン をクリックし、アニメーションを表示します。


      図 16.
  6. 次のページに進みます
  7. 荷重ベクトルによる接触力の確認
    1. Fitでモデルをモデリングウィンドウにフィットさせます。
    2. ツールバーオプションから、Transparent Element and Feature Linesを選択します。


      図 17.
    3. (Vector)アイコンをクリックします。
    4. Displayタブをアクティブにし、Size ScalingオプションをBy Magnitudeに変更して、値1を使用します。
    5. Start/Pause Animationボタン をクリックし、アニメーションを表示します。


      図 18. 全接触力のアニメーション表示(視認性を高めるために、外輪のグラフィックスの表示がオフにされている)
  8. 接触力をプロットします。
    1. すべての接触力の大きさのHyperGraphプロットを示す次のページに進みます


    図 19.
    MotionViewで新しい接触エンティティが作成される度に、対応する出力荷重リクエストが生成され、これは、接触エンティティ内で指定されているグラフィック間の接触力のプロッティングに使用することができます。
    注: 個々の荷重のプロットを確認するために、Plotブラウザからカーブの表示をオフにしてもよいでしょう。

メッシュ化された球体を含むモデルとの実行時間の比較

このステップでは、異なるベアリングでモデルの実行時間を比較します。

半解析的(および完全に解析的な)接触法は、3Dメッシュ-メッシュベースの接触と比べてより効率的です。先に作成したのと同じモデルで、玉にプリミティブ球体ではなくメッシュ化されたものを使用して実行すると、これを明らかにできます。そのようなモデルは、HyperWorksインストレーションに用意されています。
mbd_modeling\contactsフォルダーにあるモデルBall_Bearing_meshed.mdlを、自身の作業ディレクトリにコピーします。このモデルをMotionViewから実行し、解析時間を比較して、スピードアップが達成されているかを確認します。
1つの例として、2つのモデルの実行時間の比較を表 4にリストしています。このリストには、データの生成に使用されたマシンのスペックも記載されています。
表 4.
Model Ball_Bearing.mdl Ball_Bearing_meshed.mdl
接触のタイプ 半解析的 メッシュ-メッシュ

解析に使用されたプロセッサーの数

1 1
解析のコアタイム(秒) 177.4s 1342s
総経過時間(秒) 180.4s 1344s
CPU速度 2.4 GHz 2.4 GHz
利用可能なRAM 57,784 MB 57,759 MB
CPU時間 Intel Xeon E5-2620 Intel Xeon E5-2620
プラットフォーム Windows 7 Windows 7

上記のとおり、このモデルについては、~7x (1344/180.4)のスピードアップが達成されています。

まとめ

本チュートリアルでは、球状のプリミティブ形状とメッシュ化された形状との間の半解析的接触をセットアップする方法を学びました。さらに、形状を検証し、サーフェスの法線が正しい向きにあり、オープンエッジやT接合がないことが確認できました。

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

最後に、完全にメッシュ化された球体と自身が作成したモデルの解析時間の比較を行うことができました。顕著なスピードアップが確認でき、適用可能である場合、3次元接触モデルの解析には半解析的接触法が第一の選択であることがわかりました。