記事を通して言いたいこと(結論)
例によって、冒頭で述べておく。
- 近似カーブを用いて、燃料、空気の割合から、ガソリンの燃焼効率を計算するコンポーネントを作成した。
- 燃焼効率算出カーブはリンク先サイトに記載のものを組み込んでいる:X-Engineer: Air-fuel ratio, lambda and engine performance
モデル化対象(とその周辺の現象・技術等)
燃空比と燃料から熱量への変換
ガソリンエンジンは基本的に、燃料が吸気中の酸素を使い切って燃焼しきる燃料濃度で作動させる。投入される燃料が酸素不足で燃え残ることも、酸素過多で作動し排気に酸素が残ることもないようにするということだ。
燃料濃度が高すぎると、当然余分な燃料は熱量に変換されずに燃料として残る。また、その燃え残り物質がスパークプラグを汚染したりといった悪影響も及ぼす。自動車では再現困難と思うが、硬派フライトシミュレータにて、ガソリンエンジン機で高高度を飛び、混合比を理想以上に高めると排気温度・エンジン出力が下がるという応答が見られる。
燃料濃度が低過ぎる場合は、理想なら投入燃料全てが熱量に変わる筈だが、今度は正常な火炎を維持させられなかったりといった事が起きるようだ(筆者は燃焼現象や化学反応に余り詳しくないのでご容赦を。)。これも、硬派フライトシミュレータでにて、ガソリンエンジン機で混合比を下げていくと見られる。理想混合比になるまでは排気温度・エンジン出力が上がっていくが、それを超えて薄くすると出力が急減少する。
なぜ、この燃空比による、燃料から熱量への変換をモデル化したいかというのは単純な話。現在の平均化モデルでは吸入気の燃料濃度を高くすると延々と燃焼行程の発生熱量・エンジン出力が上昇してしまう。何処かで発生熱量とエンジン出力が頭打ちになり、上述したようにエンジン出力が低下する挙動が無ければ余りにリアリティに欠ける。特に、上述した、飛行機用ガソリンエンジンの飛行高度に伴う挙動も再現するためには、燃空比に対する燃焼発生熱量の応答のモデルは必須のものだ。
*余談だが、ディーゼルエンジンやガスタービンエンジンは違う。これらは基本的に、酸素が圧倒的過多の希薄燃焼で作動している。燃料過多時の挙動というのは殆ど気にする必要は無い。これらのエンジンは燃空比でエンジン出力を操作しており、当然、燃料過多の濃度まで燃空比を上げると熱量に変換されない燃料が生じる筈だ。しかし、その前に最高ガス温度が、材料が耐えられないものに達してしまうので現状は考える意味が余りない。ただ、始動や吹き消え後再着火の挙動などの、空気流量が小さい特殊な挙動のシミュレートには必要となると考えられる。
燃料効率カーブ
この燃空比による燃料から熱量への変換の挙動、燃焼の化学反応をモデル化するのが理想だ。しかし、筆者がその分野に余り明るくないのと、作成・利用共にシンプルなモデルで済ませたいとの理由により、”燃焼効率”と言う変数とそれを算出するCorrelationカーブを導入することにする。
用いるのは、当量比、理想燃空比と実燃空比の比、をinputに取り、燃焼効率を返す、1-input, 1-outputのシンプルな計算式だ。冒頭にも記したが、下記リンク先ページに記載されているカーブだ。リンク先に有るが、当該カーブは当てはめて使える当量比の範囲が限られている。その外では算出結果のリアリティは定かでない。
X-Engineer: Air-fuel ratio, lambda and engine performance
燃焼効率と熱効率 ~混同しないで欲しい~
これは完全に余談。
本記事で登場した”熱効率”が”燃焼効率”と混同されて使われているのを、過去に目にした記憶が有る。主題から逸れるので詳しい解説は無しにするが、もし熱機関に関りを持つことがあるのなら、一度各々の定義を再確認して頂きたい。後日解説記事を建てるかな。。。
コンポーネント
上述したように、モデルが簡素なのでコンポーネントも極めて簡素。inputに空気質量割合、ガソリン質量割合のconnectorを持つ。outputには燃焼効率の他に、燃空比、当量比のconnectorを持つ。
当然、コンポーネント内にサブコンポーネントは一切無く、燃焼効率の短い計算式が書かれているのみ。
シミュレーションモデル
Diagram
モデルのdiagramを見せるだけで十分ではないかと思う程度のもの。空気、燃料の質量割合をそれぞれReal信号で入力しているのみ。
燃空比を徐々に変化させたいので、燃料割合をrampで変化させ、空気割合は1から燃料割合を減じて値を算出している。
シミュレーション実行
- 燃空比
- 空燃比
- 当量比
- 燃焼効率
- 燃焼効率 vs. 当量比
- 当量比有効範囲flag
Input
Variables
燃料質量割合と同様に単調に増加している。
燃空比の逆数であり、反比例に似た曲線形状で減少する。
空燃比から、比が1.0となる点の定義を変えたようなものであり、挙動は実質同じ。
1より少し小さい値から、当量比の減少に伴って増加、1に達した後減少し続ける。
なお、当量比に対する動きを見るには本図より次図の方が解りやすい。
横軸が当量比で、値が大きくなるほど空気過多側(燃料が薄い)となる。
2次曲線を描き、燃焼効率は当量比が約1.1あたりで最大値1となる。(なぜ当量比1より大きな濃度で最大となるのかは筆者は知識が足らず知らない。)
垂直な点線は前述したカーブの有効範囲。燃料が薄い領域では、薄くなるに従って燃えない燃料が増え続けるのは不自然ではと考え、当量比が有効範囲外となると燃焼効率低下は止まるように設定している。逆に燃料過多側は燃えることが出来ない燃料は際限なく増え続ける訳なので、燃焼効率はカーブに従って下がり続けるように設定している。いずれにしても、点線に挟まれた範囲外ではカーブの確度は当てにならず、使うべきでないと考えておくのが懸命だ。
シミュレーション実行中に、当量比がカーブの有効範囲の内側かを知らせるflag variable。有効範囲内に有るときはtrue(1)を、そうでないときはfalse(0)を示すように設定されている。
後書き・まとめ
毎度同様、ほぼ冒頭で述べたことの繰り返しとなるが、
- 近似カーブを用いて、燃料、空気の割合から、ガソリンの燃焼効率を計算するコンポーネントを作成した。
- これで、燃料投入量に対する挙動がよりリアルなガソリンエンジンモデルを作成することが出来る。
- コンポーネントのフルパス: PropulsionSystem.Subelements.CombustionEfficiency00
- 例モデルのフルパス: PropulsionSystem.Examples.Subelements.CombustionEfficiency00_ex01
- githubのライブラリページリンク
- 例モデル実行用jupyter notebookファイル: ipynbs4OMPython/PropulsionSystemLib/Examples.Subelements.CombustionEfficiency00_ex01.ipynb *動かすにはディレクトリ設定などの書き換えが必要なので、jupyterの基本的使い方を一通り知っている方向け。
モデル情報
コメント