いきなりOpenFOAM (26)
FreeCADモデリング
FreeCADでのモデリング例
いきなりOpenFOAMでは、FreeCADを使ってモデルを作成しています。今回は計算から少し離れて、FreeCADのモデリング方法について簡単に説明します。作成するモデルは図1に示すサイクロン集塵機で、第13回で計算したモデルです。
CADのモデリングで始めに行うことは、手書きでもかまいませんが、作成したいモデルのスケッチを用意することです。CADのモデリングでは、寸法だけではなく、部品を移動する際の原点からの移動距離など、その他の情報も必要となります。そこで、情報を手軽にメモしておくためにも紙媒体で用意したほうが便利です。また、CFD解析に用いるモデルは、流体部分を閉空間としてモデリングする必要があります。例えば、図1では、吐出し口は円筒ではなく、空洞に差し込まれた円柱となっています。

3次元CADにおけるモデリング方法は、大きく2通りの方法があります。一つはプリミティブと呼ばれるCAD内蔵の角柱や円柱などを利用して作成する方法、もう1つは断面形状を作成して押出や回転により物体を作成する方法です。FreeCADはいずれの方法でもモデリングが可能です。
プリミティブを使ったモデリング方法
始めにプリミティブを使った方法について説明します。図2がプリミティブを使って、図1のサイクロン集塵機をモデリングする流れです。必ずしも書き出す必要はありませんが、CAD操作に入る前に、モデルが完成するまでの一連の流れをあらかじめ、頭の中で組み立てておくことでスムーズに作業をすることができます。
最初に行うべきことは、モデリングの原点位置を決定することです。プリミティブを使ったモデリングではプリミティブは原点を基準に設置されるため、原点の位置によりモデリング作業の効率が大きく変わります。今回は、原点をサイクロン中心軸上の円柱と円錐とがつながる高さにしました。
FreeCADでは、プリミティブはデフォルトの寸法で原点に設置されます。例えば、円柱では底面の中心が原点と重なるように設置されます。その後、設置されたプリミティブの寸法や位置を修正するといった作業の繰り返しで必要な部品を揃えます。次に、ブーリアン演算で部品同士を合体させたり、差し引いたりして所望の形状を作成します。

ここからは、具体的な操作方法も含めて説明します。図3に示すように、黒い丸で囲まれた円柱アイコンをクリックすると、3Dビュー内に円柱が現れます。左側のコンボビューで、生成された円柱を選択すると、下側にプロパティウィンドウが表示されます。プロパティウィンドウでデータを選択し、図3の赤い枠で囲まれた部分が円柱の寸法です。この値を書き換えることで所望の寸法に変更します。
次に、Placementの青い丸で囲まれた部分をクリックすると、図4に示す赤い枠で囲まれた部分が円柱の位置です。この値を書き換えることで任意の位置に円柱を移動させます。ちなみに、下のAxisとAngleを修正することで、任意の角度に回転させることができます。


同様にして、図5の赤い丸の円錐アイコンをクリックして、サイクロン下側の部分を作成し、寸法と位置を修正します。
続いて、左側のコンボビューで円柱と円錐とを選択し(Ctrlキーを押しながらクリック)、青い丸で囲まれたアイコンクリックすると、2つの円柱と円錐とが接合されます。青い丸で囲まれたアイコンはブーリアン和演算で、2つの部品を接合します。左のアイコンはブーリアン差演算で、最初に選択した部品から次に選択した部品を差し引きます。右のアイコンはブーリアン積演算で、2つの部品の共通した部品のみにします。なお、アイコンが見つからない場合は、ツールバーが縮小され、アイコンが隠れている可能性があります。ツールバー右端の>>をクリックすると、縮小されていたツールバーが広がり、隠れていたアイコンが表示されます。

今度は、図6に示すように、吸込み部分(解析では流入側)に相当する直方体を作成し、寸法と位置を修正します。この際、直方体のデフォルト位置は、左下隅が原点と重なるようになります。したがって、吐出し口の位置に修正するには、サイクロン半径と吐出し口幅の差だけY軸方向に移動といったように、移動距離の計算が必要となります。位置が決まったら、図7に示すように、サイクロン本体と吐出し口とをブーリアン和演算で接合します。


最後に、吐出し側を作成します。図8に示すように、吐出し部分が差し込まれる部分をくり抜くための円柱を作成します。次に、図9に示すようにサイクロン本体から円柱をブーリアン差演算で差し引きます。図10に示すように、吐出し部分に相当する円柱を作成し、サイクロン本体とブーリアン和演算で接合すると、図11に示すサイクロンモデルができあがります。




回転体として作成する方法
次に、断面形状を作成し、回転体として作成する方法について説明します。図12に示すように、プリミティブで、円柱と円錐とを接合する工程までをこの方法で作成してみます。
断面形状を作成する方法においても、モデルの原点位置が重要となります。プリミティブと同じく、サイクロン中心軸上の円柱と円錐とがつながる高さを原点とします。次に、断面を作成する面を設定し(今回はX-Z面)、断面を作成し、回転体などの操作を指示します。FreeCADでの断面作成は、適当な形状で作成した後に、各部の寸法を設定することで所望の形状を作成します。

ここからは、操作方法も含めて説明します。始めにワークベンチでPartDesign(赤丸)を選択します(Sketchでもかまいません)。図13に示す黒い丸のアイコンをクリックすると、左側に断面を生成する座標系の選択ウィンドウが表示されます。今回はサイクロン縦断面を作成するので、XZ_Planeを選択します。

次に、図14の赤い丸で囲まれたアイコンをクリックし、節点を順にクリックし、適当な四辺形を作成します。最初の節点上でクリックすると、閉じた形状が得られます。また、後で水平となる部分は水平に、垂直となる部分は垂直に、順にクリックすると、直線の上または横に赤い短い線が現れ、水平あるいは垂直な線であるという条件が付きます(水平拘束および垂直拘束)。
さらに、横方向寸法は図15の赤い丸で囲まれたアイコンをクリックして、該当する直線の接点をクリックすると、寸法変更ウィンドウが表示されます。ウィンドウに所望の寸法を入力すると、設定された寸法の形状に変化します。同様にして、縦方向寸法は青い丸で囲まれたアイコンをクリックして、該当する直線の接点をクリックして、所望の寸法を入力します。以上の操作を繰り返すと、図16に示す断面形状が得られます。


図14左側のTasksタブでCloseをクリックすると、図16に示すその後の処理を選択するウィンドウに変化します。Revolutionを選択すると、断面曲線を基に回転体ができあがりますが、回転軸を設定する必要があります。Revolutionをクリックすると、図17に示すウィンドウが表示されます。今回は縦断面なので、Zaxisを選択して、OKをクリックします。


軸対象ではない吸込み部分はプリミティブまたは面の掃引で作成します。
プリミティブを利用する方法と断面曲線を利用する方法は、それぞれ一長一短があります。例えば、直径が一定の軸ではプリミティブを利用したほうが簡単で、一方、直径が複雑に変化する軸では断面曲線を作成したほうが作業効率は良くなります。
メニューアイコンをカスタマイズする
XSimまたはOpenFOAMで直接利用する際のデータを作成するには、この後、ソリッドを面データに分解します。その際、ワークベンチをDraftに切り替えて、下向き矢印のDowngradeアイコンをクリックしますが、このためだけにワークベンチを切り替えるのは効率が悪いです。そこで、現在使っているワークベンチ例えば、PartにDowngradeアイコンを追加する方法を説明します。
まず、ワークベンチをDraftに切り替えます。次に、メニューバーでツール→カスタマイズと選択すると、図18に示すウィンドウが表示されます。ツールバータブを選択し、左側の欄でDowngradeアイコンを選択します。Downgradeアイコンは赤い楕円で囲まれたセレクターでPythonを選択すると表示できます。
次に、図19に示すように、表示させたいワークベンチを右側の赤い楕円で囲まれたセレクターで選択し、「New」をクリックして、アイコンのグループを作成します。最後に、赤い丸で囲まれた右矢印をクリックすると、PartにDowngradeアイコンが追加されます。「Close」をクリックして、ウィンドウを閉じると、図20に示すように、PartワークベンチにDowngradeアイコンが追加されました。



今回は計算から少し離れて、FreeCADの操作方法も含め、サイクロン集塵機を例にモデリングを行いました。FreeCADにはさらに多くの機能が備わっています。より詳しい内容については、XSimの技術ドキュメントでも紹介されていますので、参考にしてみてください。
https://www.xsim.info/articles/FreeCAD/How-to-use-FreeCAD.html
次回はOpenFOAMの計算に戻り、様々な機能を使った解析を行ってみます。
おことわり
本コンテンツの動作や表示はお使いのバージョンにより異なる場合があります。
本コンテンツの動作ならびに設定項目等に関する個別の情報提供およびサポートはできかねますので、あらかじめご了承ください。
本コンテンツは動作および結果の保証をするものではありません。ご利用に際してはご自身の判断でお使いいただきますよう、お願いいたします。