💧

Autodesk CFD解析のチップス

2024/04/14に公開

海洋ロボコンをやってた人です。
今回はCFD解析を試してみたので、その手順を備忘録として記載しておきます。

CFD解析による流速解析ができることを目標にしていますので、これらを学ぼうとされている方のお力になれれば幸いです。

以下箇条書きになりますが、何卒宜しくお願い致します。

1: 流速解析

以下をインプットとして、3DCADモデル(ロボットなど)の流速を解析することを目的とする。

https://www.youtube.com/watch?v=4JhZr6ZmozI

https://www.youtube.com/watch?v=nS9SfKLdkw4


・Autodesk Simulation Day 2015:Autodesk CFD解析テクニックメッシュおよびソルバー設定.pdf

2: CFDへモデルをインポート

対象となるモデルをxxx.stepファイルで保存しておく。

Autodesk CFDを開き、新規 > 新規デザインスタディ よりモデルをインポート。

適切にインポートできない可能性があります!のようなWarnningダイアログボックスが表示された場合はスルーでOK。

インポート後、ジオメトリツールが開くので、以下を設定する。

・ 開先角度が次より小さいエッジをマージ > max 15で値を選択してマージ

・ 微小オブジェクト > 公差(max 0.004) > 削除

3: CFDのシナリオ設定

3.1: 解析領域の設定

解析領域のボックス名(ここではTunnel)に対して以下操作を行う。

・ 右クリック > アウトラインを選択
・ 編集 > プロパティ設定 > 種類:流体 / 名前:水

3.2: 固体の設定

解析対象の”未設定”モデルに対して、以下操作を行う。

編集 > プロパティ設定 > 種類:固体 / 名前:ABS

材料に応じて適宜変更する。

3.3: 境界条件の設定

解析領域の前後の面に以下を設定する。

・ 境界条件 > 前面を選択 > 編集:境界条件を設定(種類:速度 1 m/s)

・ 境界条件 > 後面を選択 > 編集:境界条件を設定(種類:圧力 0)

これは " ロボットを水流流入口の直前に設置し、流速を一定値、流出口を圧力値に設定して測定 " する手法と同様である。(Modeling of swimming posture dynamics for a beaver-like robot, Gang Chen, OE 279(2023) )

Autodesk CFDを実行しようとするとクラウドジョブのコストに関するダイアログが表示される

3.4: メッシュ履歴の設定

メッシュ履歴を選択すると、上部ツールバーに自動サイズが表示されるので、メッシュサイズを調整する。

または編集で詳細を設定する。(任意)

4: 実行/結果確認

4.1: シミュレーションの実行

シミュレーションバーから実行をクリックし、以下を設定して解析を開始する

・ ソルバーコンピュータ:MyComputer
・ 物理的特性:圧縮性流体

Output bar
メッシュに 247692 ノードと 1088919 要素が含まれています。
メッシュの品質チェックを実行しています...
メッシュを保存しています…
メッシュ生成が完了しました
モデルデータベースを更新しています。

--- 略---

198035 個の流体ノードに対し壁の距離を計算する
(1 + 2)秒で行われる壁の距離の計算。最大距離 = 25.7312
境界条件データ構造が完了し、保存されました
解析の初期化が完了しました
入力処理が完了しました
** 有限要素サマリーが続きます...
247692 合計節点、 198035 流体節点、 49657 固体節点
1088919 合計要素、 725923 流体要素、 362996 固体要素
1 入口 1 出口 0 未知

メッシュの要素の総数は 1088919 で、メッシュは流体要素と固体要素に分かれて記載されている。流体要素と固体要素を合計することで、総要素数を得ることができる。

4.2: 結果確認

・ 結果タスク > 平面 > 追加 を選択

・ 平面を右下 > 編集 > 平面コントロールから回転軸 / 回転で平面を設定

・ シナリオ/結果 > 部品 > シェーディングでモデルを表示

・ 粒子追跡 > 追加選択 > モデル空間上で粒子追跡したい箇所をクリック

・ 壁面計算で力の計算を得る( Autodesk CFDで流体ごとに生成される力を計測する方法 )

👇 壁面の計算 > ボリューム > ✔(すべて選択) > 力 / 圧力 / トルク 選択して計算すると対象ボリュームの計算結果がわかる。(単位変換すること)

なお、壁面は計算に含めたくないため、Tunnelは選択を解除しておく

https://help.autodesk.com/view/SCDSE/2024/JPN/?guid=GUID-4EE581FA-CE48-4571-9627-E91C10649172


流速の画面や収束プロットより結果を確認する。

収束計算数100だと流速計算を100回行うことになる。夜→朝や家を開ける期間に解析をかけておくのがオススメ。


灰色の背景右クリック > グローバル結果 > 静圧、流速

などでモデルの結果を確認できる

・粘性係数

GPT-4oより添付

・壁面y+値

実行 > 出力結果オプションから選択できる

※壁面y+の値をどこで確認するかはT.B.D

・y+アダプティブ

その他のアダプティブ メッシュ パラメータ

・グリッドセルの厚さ

壁レイヤを参考にメッシュサイズ > 壁レイヤからレイヤ数と厚み係数を設定する

平面からワイヤーフレームを選択すると、グリッドセルが3レイヤに分かれていることが確認できる

4.3: CFL条件

CFL(Courant-Friedrichs-Lewy)condition は数値的安定性を確保するための条件で、陽解法で解析を行う際にCFL条件を満たす必要がある。

流速v, 時間間隔Δt, 要素幅(メッシュの大きさ)Δxとすると、CLF条件は以下を満たし、1ステップ間での流体の移動量が1セル以下であることを示す。ここでCはクーラン数。

C = \frac{v \Delta t}{\Delta x} \leq 1

4.4: 無次元距離y+

y^+ = \frac{u_\tau \Delta y}{v}

u_t は摩擦速度、vは動粘性係数、yは壁面からの垂直距離。

標準的な乱流モデルでは 30 < y^+ < 300となる。

5: その他

外部流体ボリュームを予めCAD側で定義してインポートすると以下のようなエラーが生じる。
未解決のため、エラー内容のみ記載。

5.1: インポート時のエラー

モデル対象+外部ボリュームの2種をSTEPへ

モデル対象(簡略化パーツ)と外部流体ボリュームの二つを含む状態でSTEPファイルへ変換しCFDソフトへインポートする。

余計なジオメトリが表示されたため、中止。(モデルのサーフェイスが埋まっていないの点が要因かもしれない)

URDFモデル+外部ボリュームをSTEPへ

・ Fusion / Inventor urdf + Tunnel(外部流体ボリューム)の状態でSTEPファイルへ

TunnelとBaseが結合されるため、アウトライン設定するとbase_linkまでアウトラインになってしまうため中止。

・ Tunnel配置順変更

変化なし

・ Tunnel をJointを使用して配置

変化なし

5.2: 外部流体ボリュームの設定

ジオメトリツール > 外部流体ボリューム > X, Y, Zの長さ

で外部流体の領域を決定できる。

ドラッグで矢印の方向に拡大縮小 / 指定値入力する。

外部ボリュームエラー時は、エラー内容に応じて、微小オブジェクトの削除量を再調整。

5.3: 表示タブ

表示スタイルの変更、軸のローカル/グローバル座標系の表示切り替えが可能

5.4: サーフェスのエラーの場合

エラーの種類(ボリューム、サーフェス、エッジ)によって選択して、エラー箇所を特定して修正する


以上です。
Likeいただけると大変励みになりますので、よろしくお願いいたします。

Discussion