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

- mbd_modeling\contactsフォルダーにあるファイル Ball_Bearing.mdlおよびbearing_graphic.h3dを、自身の<作業ディレクトリ>にコピーします。
- 新しいMotionViewセッションを開始します。
-
Ball_Bearing.mdlモデルを<作業ディレクトリ>から開きます。
図 2 は、MotionViewでセットアップされている状態のモデルを示しています。このモデルは、続いてユーザーが設定するいくつかを除き、必要な接触をすべて有しています。 表 2 は、本モデル内に存在するコンポーネントを説明しています:図 2. 玉軸受機構のMotionViewモデル
表 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の間の接触を定義します。
-
新しい接触エンティティを追加するために、Force EntityツールバーからContactボタンを右クリックします。
図 3.
Add Contactダイアログが表示されます。 - ダイアログで、LabelをBall6_inter、Variableをcon_ball6_interと指定します。
-
ドロップダウンメニューで3D Rigid To Rigid Contactが選択されていることを確認し、OKをクリックします。
これで、Contactパネルが表示されます。図 4.
-
Connectivityタブで、I BodyをBall 6、J BodyをRimとします。
これで自動的に、それらのボディに付加されているグラフィックが選択されます。
図 5.
-
形状が接触について正しく定義されているためには、サーフェスメッシュの法線が接触の方向に沿っており、形状内に開いたエッジやT接合が含まれないことが必要です。法線が正しい方向を向いていることを確実にするには、 Highlight contact sideボックスをアクティブにします。
これにより、サーフェス法線の方向に従って、この接触力について指定されている形状が色づけされます。両方の形状が完全に赤色であること、すなわち、両形状に青色のパッチが存在しないことを確実にしてください。注: これをはっきり確認するには、Outer Raceのグラフィックを非アクティブにする必要があるかもしれません。
図 6. 正しくないサーフェス法線のチェック
図 7.
-
オープンエッジまたはT接合をチェックするには、Highlight mesh errorsオプションがアクティブになっているかどうかを確認します。
-
接触のプロパティを指定します。
-
ステップ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 - モデルを保存します。
過渡シミュレーションのセットアップとモデルの実行
このステップでは、このモデルについて過渡解析のセットアップを行う方法について学習します。
-
過渡解析をセットアップするには、ツールバー
(Run)ボタンでをクリックします。
- Runパネルから、Simulation type をTransientに、end timeを2.0秒に変更します。
-
Simulation Settingsボタンをクリックし、Transientタブに進みます。
-
XMLモデルに名称を指定し、Runボタンをクリックします。
図 10.
接触計算に半解析接触法が使用されていることを確認するソルバーからのメッセージが表示されます。図 11.
注: ここでお気づきのとおり、使用される接触力の手法を明示的に指定する必要はありません。接触しているボディの一方または両方がプリミティブ球体であるか否かをMotionSolveは自動的に検知し、それに従って、使用される接触力の手法を変更します。
結果のポスト処理
このセクションでは、シミュレーションの完了後にMotionViewが生成するレポートを閲覧、分析します。

-
MotionViewでは、接触を含んだモデルについての自動化されたレポートが用意されます。このレポートは自動的に、アニメーションとプロットをセッションに追加します。レポートにアクセスするには、menu barから をクリックします。
View Reportsダイアログが表示されます。
-
ダイアログでContact Reportを選択し、OKをクリックします。
注: 最後にサブミットされた実行についてのレポートアイテムが、一番上にリストされます。
図 13.
これで、追加のページがレポートに加えられます。 -
Page Navigationボタン(ウィンドウの上部右側角の、メニューバーの下、グラフィックス領域の上)を使用し、これらのページを確認します。
-
Contact Summaryを表示します。
MotionSolveは、シミュレーションの全体を通して、接触しているすべての形状の最大貫通の確認に使用可能な静的荷重ケースを、H3Dファイルに書き出します。これによりユーザーは、結果をチェックして、最大貫通深さが形状内で発生しているか否かを知ることができます。これをmodeling window内ではっきりと見るには、1つまたは複数のパートの表示をオフにしてもよいでしょう。注: グラフィックスがmodeling windowに見当たらない場合は、領域をフィットさせると良いでしょう。
-
Animation - Penetration Depthを閲覧します。
-
次のページに進みます
。
-
荷重ベクトルによる接触力の確認
-
接触力をプロットします。
-
すべての接触力の大きさのHyperGraphプロットを示す次のページに進みます
。
MotionViewで新しい接触エンティティが作成される度に、対応する出力荷重リクエストが生成され、これは、接触エンティティ内で指定されているグラフィック間の接触力のプロッティングに使用することができます。図 19.
注: 個々の荷重のプロットを確認するために、Plot Browserからカーブの表示をオフにしてもよいでしょう。 -
すべての接触力の大きさのHyperGraphプロットを示す次のページに進みます
メッシュ化された球体を含むモデルとの実行時間の比較
このステップでは、異なるベアリングでモデルの実行時間を比較します。
mbd_modeling\contactsフォルダーにあるモデルBall_Bearing_meshed.mdlを、自身の作業ディレクトリにコピーします。このモデルをMotionViewから実行し、解析時間を比較して、スピードアップが達成されているかを確認します。
1つの例として、2つのモデルの実行時間の比較を表 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次元接触モデルの解析には半解析的接触法が第一の選択であることがわかりました。