Main Content

気体システムのモデル化

対象とする用途

Gas ライブラリには、オリフィス、チャンバー、空気圧機械式変換器、センサーおよびソースなどの基本的な要素が含まれています。これらのブロックを使用して、次のような用途で気体システムをモデル化します。

  • 機械システムの空気圧作動

  • 管網を経由した天然ガス輸送

  • 発電用ガス タービン

  • 熱コンポーネントの空冷

Gas Properties (G) ブロックを使用して、接続されたループ内の気体の特性を指定します。このブロックでは、完全気体、半完全気体、実存気体の 3 つの理想化レベルから選択できます (気体特性モデル参照)。

特に明記していない限り、気体システムのモデル化で使用する圧力と温度はいずれも静圧と静温度です。

ネットワーク変数

アクロス変数は圧力と温度、スルー変数は質量流量とエネルギー流量です。変数をこのように選択すると、圧力と質量流量の積は仕事率ではないため、疑似ボンド グラフが生成されます。

気体特性モデル

Gas ライブラリは、幅広いモデル化要件に対応するために、完全気体、半完全気体、実存気体を同じ気体ドメイン内でサポートしています。3 つの気体特性モデルには、シミュレーションの速度と精度間でトレードオフがあります。また、これらを使うとインクリメンタルなワークフローも可能となります。作動気体に関する情報が必要最小限で済む単純なモデルで開始し、その後、より詳細な気体特性データが入手できるようになったときにそのモデルを基に作成を進めます。

接続された回路のガス特性を指定する Gas Properties (G) ブロックを使用することで、気体特性モデルを選択します。

次の表は、気体特性モデルごとに異なる仮定をまとめています。

  • 状態の熱方程式は、密度と温度および圧力との関係を示します。

  • 状態の熱量方程式は、比熱容量と温度および圧力との関係を示します。

  • 輸送特性は、温度および圧力による動的粘度と熱伝導率の関係を示します。

気体特性モデル状態の熱方程式状態の熱量方程式輸送特性
完全理想気体の法則定数定数
半完全理想気体の法則温度による 1 次元テーブル ルックアップ温度による 1 次元テーブル ルックアップ
実存温度および圧力による 2 次元テーブル ルックアップ温度および圧力による 2 次元テーブル ルックアップ温度および圧力による 2 次元テーブル ルックアップ

理想気体の法則は、Simscape™ Foundation Library の Gas に次のように実装されています。

p = ZρRT

ここで、

  • p は圧力です。

  • Z は圧縮係数です。

  • R は比気体定数です。

  • T は温度です。

圧縮係数 Z は通常、圧力と温度の関数です。これによって、理想的な気体の挙動からの乖離が表されます。気体は、Z = 1 のときに理想的となります。完全気体および半完全気体の特性モデルでは、Z は定数でなければなりませんが、1 と等価である必要はありません。たとえば、非理想気体 (Z ≠ 1) をモデル化してもシステムの温度と圧力が大きく変化しない場合には、完全気体モデルを使用して、適切な Z 値を指定することができます。次の表は、293.15 K、0.101325 MPa のときの各種気体の圧縮係数 Z の一覧です。

気体圧縮係数
乾燥空気0.99962
二酸化炭素0.99467
酸素0.99930
水素1.00060
ヘリウム1.00049
メタン0.99814
天然ガス0.99797
アンモニア0.98871
R-134a0.97814

完全気体モデルを使用し、気体の種類と操作条件に基づいて Z の定数値を調整すると、半完全気体または実存気体の特性モデルへの移行による複雑度や計算コストの増加が避けられます。

完全気体特性モデルは、シンプルで計算効率が高く、作動気体に関する必要な情報が限られているため、気体ネットワークをモデル化する場合の開始時の選択肢として適切です。このモデルは単原子気体については正しく該当し、通常、標準状態の乾燥空気、二酸化炭素、酸素、水素、ヘリウム、メタン、天然ガスなどの気体についても十分に正確です。

気体ネットワークが飽和境界近くで動作している場合、または極めて広い温度範囲で動作している場合、作動気体はやや非理想的な挙動を示すことがあります。この場合は、完全気体特性モデルを使って気体ネットワークをうまくシミュレートした後で、半完全気体特性モデルに切り替えることを検討します。

最後に、分子の大きい重い気体など、作動気体が著しく非理想的な挙動を示すことが予想される場合には、実存気体特性モデルへの切り替えを検討します。このモデルは、すべての特性に 2 次元内挿を使用するため、計算コストが最も高く、作動気体に関する詳細な情報が必要です。

気体体積付きブロック

気体ドメインのコンポーネントは検査体積を使用してモデル化されます。検査体積は、コンポーネント内の気体を包含し、周囲の環境および他のコンポーネントからその気体を区別します。検査面を通過する気体流量と熱流量は端子によって表されます。コンポーネント内部の気体体積は内部ノードを使用して表されます。このノードは、コンポーネント内部の気体の圧力と温度を提供します。この内部ノードは表示されませんが、Simscape データ ログを使用してそのパラメーターと変数にアクセスできます。詳細については、シミュレーション データ ログについてを参照してください。

以下に示す Gas ライブラリのブロックは、気体体積付きコンポーネントとしてモデル化されます。Controlled Reservoir (G) および Reservoir (G) の場合、体積は無限大であると仮定されます。

ブロック気体体積
Constant Volume Chamber (G)有限
Pipe (G)有限
Rotational Mechanical Converter (G)有限
Translational Mechanical Converter (G)有限
Reservoir (G)無限
Controlled Reservoir (G)無限

他のコンポーネントでは気体体積が比較的小さく、そのため、コンポーネント内に気体が入ってから出て行くまでの時間はごく短くなります。それらのコンポーネントは準定常状態であると見なされ、内部ノードをもちません。

参照ノードおよびグラウンディング ルール

機械ドメインと電気ドメインでは、ドメイン内でトポロジ的に異なる回路がそれぞれ、参照ブロックを少なくとも 1 つ含まなければなりませんが、気体ネットワークのグラウンディング ルールは異なっています。

気体体積付きブロックには内部ノードが含まれており、コンポーネント内の気体の圧力と温度を提供することで気体ネットワークの参照ノードとして機能します。接続された各気体ネットワークには、少なくとも 1 つの参照ノードがなければなりません。つまり、接続された各気体ネットワークには、気体体積付きブロックにリストされているブロックの少なくとも 1 つがなければならないということです。言い換えれば、気体体積を含まない気体ネットワークは無効な気体ネットワークであることになります。

Foundation Gas ライブラリには Absolute Reference (G) ブロックが含まれていますが、他のドメインとは異なり、気体回路のグラウンディングにこのブロックを使用することはありません。Absolute Reference (G) ブロックの目的は、Pressure & Temperature Sensor (G) に参照を提供することです。ただし、R2023a 以降では、Pressure & Temperature Sensor (G) ブロックに暗黙的な参照ノードが含まれ、Pressure & Temperature Sensor (G) ブロックで Absolute Reference (G) ブロックを使用することは不要になりました。気体ネットワークの別の場所で Absolute Reference (G) ブロックを使用すると、気体の圧力と温度が絶対零度になることはないため、シミュレーションのアサーションがトリガーされます。

有限の気体体積付きブロックの初期条件

この節では、有限の気体体積を使ってモデル化されたブロックに特有の初期化要件について説明します。これらのブロックは、気体体積付きブロックにリストされています。

気体体積の状態は、接続されたブロックとの相互作用に基づき、質量とエネルギーの流れによって動的に変化します。時定数は、気体体積の圧縮率と熱容量に依存します。

気体体積の状態は、ブロックの内部ノードの微分変数によって表されます。微分変数であるため、その初期条件はシミュレーション開始前に指定されている必要があります。有限の気体体積を使ってモデル化された各ブロックのダイアログ ボックスには、次の 3 つの変数をリストした [初期ターゲット] セクションがあります。

  • 気体体積の圧力

  • 気体体積の温度

  • 気体体積の密度

既定では、[気体体積の圧力][気体体積の温度] は優先順位が高く、そのターゲット値は標準条件 (0.101325 MPa および 293.15 K) と等しくなっています。ターゲット値は、ブロックの気体体積の適切な初期状態を表すように調整できます。[気体体積の密度] の既定の優先順位は None です。これは、気体体積の初期状態の完全な特定に必要とされるのは、3 つの変数のうち 2 つの初期条件のみであるためです。必要であれば、初期条件を指定する代替方法として、[気体体積の密度] の優先順位を高くして適切なターゲット値を設定してから、[気体体積の圧力] または [気体体積の温度] のいずれかの優先順位を none に変更します。

重要なのは、有限の気体体積付きブロックのそれぞれで、3 つの変数のうち 2 つのみの優先順位が High に設定されていることです。3 つの変数すべてに高い優先順位の拘束を加えると、指定過剰になり、ソルバーは目的の初期値を満たす初期化解を見つけられなくなります。反対に、1 つの変数のみに高い優先順位の拘束を加えると、システムの指定が不十分になり、ソルバーは恣意的な予期せぬ初期値で変数を解決する可能性があります。変数の初期化と指定過剰への対処の詳細については、マス-バネ-ダンパー システムの変数の初期化を参照してください。

無限大の気体体積を使ってモデル化されるブロックでは、気体体積の状態は準定常的であると仮定され、初期条件を指定する必要はありません。

チョーク流れ

Local Restriction (G) ブロック、Variable Local Restriction (G) ブロック、または Pipe (G) ブロックを通る気体の流れがチョーク状態になることがあります。チョークは、流速が局所音速に達すると発生します。流れがチョークしている場合、チョーク点における速度がそれ以上高まることはありません。ただし、気体の密度が高くなる場合は、質量流量をさらに増加させることができます。これは、たとえば、チョーク点より上流の圧力を上げることによって達成できます。気体ネットワークに対するチョークの効果は、チョーク ブロックを含む分岐を通る質量流量が上流の圧力と温度に完全に依存するということです。このチョーク時質量流量は、チョーク条件が維持されている限り、下流の圧力に生じるいかなる変化の影響も受けません。

次のモデルはチョーク流れを示しています。このモデルでは、Ramp ブロックの勾配は 0.005 で、開始時間は 10 です。Simulink-PS Converter ブロックでは [入力信号の単位][Mpa] に設定されています。他のすべてのブロックのパラメーターは既定の値です。シミュレーション時間は 50 秒です。モデルをシミュレートすると、Local Restriction (G) ブロックの端子 A における圧力は 10 秒の時点で大気圧から線形的に上昇し始めます。端子 B での圧力は大気圧に固定されています。

次の図は、ログに記録された Local Restriction (G) ブロックのシミュレーション データを示しています。Restriction におけるマッハ数 ([Mach_R]) は 20 秒前後で 1 に達しており、流れがチョークしていることを示しています。流れがチョークする前の質量流量 ([mdot_A]) は、増加する圧力差に対し典型的な二次挙動をたどっています。しかし、流れがチョークした後の質量流量は線形になっています。チョーク時質量流量は上流の圧力と温度のみに依存し、上流の圧力が線形的に上昇しているためです。

チョーク時質量流量が上流の条件のみに依存しているという事実が、チョーク ブロックの下流に接続された Mass Flow Rate Source (G) または Controlled Mass Flow Rate Source (G) との不適合の原因となることがあります。次の図に示すモデルを考えます。このモデルには Controlled Pressure Source (G) の代わりに Controlled Mass Flow Rate Source (G) ブロックが含まれています。

ソースによって Local Restriction (G) を左から右に通る質量流量の増加が要求された場合、Controlled Mass Flow Rate Source (G) がチョーク ブロックの上流になるため、流れがチョークしてもシミュレーションは成功します。しかし、このモデルでは、Gain ブロックが流れの向きを反転させ、Controlled Mass Flow Rate Source (G) はチョーク ブロックの下流になっています。Local Restriction (G) の上流の圧力は大気圧に固定されています。したがって、この状況でのチョーク時質量流量は一定になります。要求される質量流量が増加すると、いずれはこのチョーク時質量流量の定数値より大きくなります。その時点で、要求される質量流量とチョーク時質量流量は調整不能になり、シミュレーションは失敗します。ログに記録されたシミュレーション データを Simscape 結果エクスプローラーで表示すると、ちょうどマッハ数が 1 に達し、流れがチョークした時点でシミュレーションが失敗することが示されています。

一般に、モデルにチョークが発生する可能性が高い場合には、質量流量源ではなく圧力源を使用します。モデルに質量流量源ブロックが含まれており、シミュレーションが失敗する場合は、Simscape 結果エクスプローラーを使用して、質量流量源と同じ分岐に沿って接続されている Local Restriction (G)Variable Local Restriction (G)Pipe (G) のブロックすべてでマッハ数変数を検査します。マッハ数が 1 に達するとシミュレーション エラーが起こる場合は、可能なチョーク時質量流量より大きい質量流量を求める質量流量源が下流にある可能性があります。

制限ブロックのマッハ数変数は [Mach_R] と呼ばれます。Pipe (G) ブロックには、2 つのマッハ数変数 [Mach_A][Mach_B] があり、それぞれが端子 A と端子 B におけるマッハ数を表しています。

流れの反転

回路を通る気体の流れは、1 つの気体体積から別の気体体積にエネルギーを運びます。そのため、接続された 2 つのブロック間のエネルギー流量は流れの方向に依存します。ブロック A からブロック B に気体が流れる場合、2 つのブロック間のエネルギー流量はブロック A の比エンタルピー合計に基づいたものとなります。反対に、ブロック B からブロック A に気体が流れる場合、2 つのブロック間のエネルギー流量はブロック B の比エンタルピー合計に基づいたものとなります。遷移を平滑化してシミュレーションのロバスト性を確保するために、エネルギー流量には、低質量流量における 2 つのブロックの比エンタルピー合計の差に基づいた寄与も含まれています。平滑化領域は、Gas Properties (G) ブロックのパラメーター [逆流のマッハ数しきい値] によって制御されます。

このアプローチの結果、接続された 2 つのブロック間のノードの温度は、そのノードの上流にある気体体積の温度を表すようになります。ノードでマージする上流のフロー パスが 2 つ以上ある場合、ノードの温度は、マージする気体の流れの理想的な混合に基づく加重平均温度を表します。

流れの急速な反転とブロック間の大きな温度差を示すモデルでは、シミュレーションのロバスト性の確保は難しい場合があります。流れの急速な反転は、大きな気体体積間の流れ抵抗が小さい (短いパイプなど) 結果である可能性があります。大きな温度差は、モデル内の大きな圧力差を少ない放熱で維持するために、ソースによってエネルギーが加えられた結果である可能性があります。これらのモデルでは、[逆流のマッハ数しきい値] パラメーターの値を大きくしてシミュレーション エラーを回避する必要が生ずることがあります。

ブロックの端子における断面積

気体ドメインの多くのブロックでは、入口端子と出口端子における断面積をブロック パラメーターとして指定できます。相互に接続する端子には同じ断面積を指定することを推奨します。たとえば、Constant Volume Chamber (G) ブロックの端子 APipe (G) ブロックに接続する場合、Constant Volume Chamber (G) ブロックの [端子 A での断面積] パラメーターを Pipe (G) ブロックの [断面積] パラメーターと同じ値に設定します。

流速が速い (マッハ数が 1 に近い) 場合は特に、接続された端子の面積の違いが予期しない温度差となって現れることがあります。詳細については、端子における断面積の指定を参照してください。

関連するトピック