搞了几年动力总成仿真,说实话,内燃机这块儿是越做越有意思,也越做越觉得水深。尤其到了排放法规和热效率双重压力的今天,燃烧系统优化几乎成了每个整机厂和设计公司必须啃的硬骨头。单纯靠台架试错,时间和费用都扛不住,所以现在的主流打法就是"燃烧仿真"配合台架验证。今天我就以"内燃机燃烧系统优化"为切入点,聊聊我在实际项目里是怎么用CFD仿真工具把燃烧系统一步步调优的,会涉及到模型怎么选、网格怎么处理、参数怎么标定、以及各种让人头大的收敛和失真问题,全是实操里趟过坑之后沉淀下来的东西,希望能让正在做或者准备做这块的朋友少走点弯路。
1. 燃烧系统优化的整体思路与仿真方案选型
1.1 先把仿真目标想清楚,再谈软件和模型
很多人拿到一个内燃机项目就急着开网格、点求解器,其实这是最容易翻车的开始。燃烧系统优化的第一件事,不是在软件里倒腾,而是把优化目标量化出来。比如我们这次的项目是针对一台四缸增压直喷汽油机做燃烧系统优化,目标很明确:在保证输出的前提下,把中低负荷(2 bar BMEP到8 bar BMEP区间)的BSFC降低3%-5%,同时把NOx排放控制在法规限值以内。为什么要先锁定这些?因为燃烧仿真的计算资源和时间成本都很高,一个三维瞬态整机循环动辄几百万网格、几十个小时的机时,如果没有明确目标,很容易陷入“算了一堆工况,最后不知道该拿哪一版去改缸盖”的困境。
目标定义好之后,还要梳理边界条件。边界条件不齐,算出来的结果连趋势参考价值都不大。比如增压器的特性曲线、进排气道流量系数、喷油器的喷雾特性数据(粒径分布、喷雾锥角、贯穿距)、缸内壁面温度边界,这些都是燃烧仿真的命根子。其中喷油器的喷雾数据建议一定要有试验标定的输入,而不是随便拿一个经验分布去蒙,因为直喷汽油机的燃烧对喷雾形态极其敏感,油滴打在缸壁上直接导致机油稀释和PN排放恶化。
我的经验是,优化的起点和终点都要落到“参数矩阵”上:工况点矩阵(转速、负荷)、边界条件矩阵(进气温度、压力、EGR率、喷油时刻、点火时刻、喷油压力)、评价指标矩阵(缸压峰值及相位、放热率曲线、压力升高率、未燃碳氢、NOx、碳烟、燃油消耗率)。这个矩阵建好了,后面的仿真和试验验证都是在往这个矩阵里填数,才不会东一榔头西一棒子。
1.2 主流的燃烧仿真工具与选型建议
燃烧仿真工具圈子里,常见的无非是CONVERGE、ANSYS Forte(原FIRE)、STAR-CCM+、FLUENT,以及学术圈常用的OpenFOAM搭配cantera做化学动力学。这几个工具各有脾气,选型的时候不能只盯着名气,要看你手头的团队能力、预算和具体需求。
如果做汽油机(尤其是直喷点燃式)的燃烧优化,我自己用得最顺的是CONVERGE。它的优势在于自动网格生成和自适应网格加密(AMR),你不需要手动去画一堆质量很高的体网格,软件会基于流场梯度自动局部加密。我在项目中处理进气门落座、喷油嘴附近液滴破碎、火花塞点火核形成这些关键区域时,AMR能精准地把网格加密在需要的空间位置,省掉了大量手工修网格的时间。而且CONVERGE内置了一整套经过标定的G方程燃烧模型和SAGE详细化学反应求解器,对汽油、柴油、甲醇、天然气等燃料都有成熟的化学机理适配,项目启动速度快。
如果是柴油机,Forte和CONVERGE都做得很好,关键是喷雾模型和燃烧模型的配合;如果是进气道喷射的PFI汽油机,FLUENT或者STAR-CCM+配合涡耗散概念模型(EDC)也不是不能做,但精度和调参成本会高一些。另外,OpenFOAM是所有工具里最灵活的,但也是最折腾人的,需要自己写求解器和改代码,如果团队里没有专门的CFD开发人员,我不建议在项目周期紧张的时候用它做整机燃烧系统优化。算得慢不说,一个湍流模型参数设置不对,后处理阶段要返工,整个开发节奏就垮了。
表:不同燃烧仿真工具在动力总成领域的适用场景对比
| 工具 | 核心强项 | 相对弱项 | 适合场景 |
|---|---|---|---|
| CONVERGE | 自动网格/AMR、喷雾与燃烧模型集成度好 | 授权费用较高 | 直喷汽油机、柴油机三维燃烧优化 |
| ANSYS Forte | 与STAR-CCM+生态协同好、化学反应求解快 | 网格前处理工作量偏大 | 柴油机喷雾燃烧、排放预测 |
| STAR-CCM+ | 网格工具全面、后处理强大 | 燃烧模型库略单一 | 冷却系统、进排气道流动与燃烧耦合 |
| FLUENT | 通用性好、资料多 | 瞬态点火燃烧标定成本高 | PFI汽油机、基础流动计算 |
| OpenFOAM | 免费、灵活、可深度定制 | 工程化程度低、学习曲线陡 | 高校研究、特定机理开发 |
我个人的项目习惯是,梯次配置:快速评估用零维/一维整机模型(GT-Power或者AMESim),把进排气相位、气门升程曲线、EGR率、涡流比这些“大趋势参数”先在循环层面扫一轮,筛选出几个有希望的配置组合;再用三维CFD精细仿真选定的组合,去重点看清楚缸内流动、喷雾撞壁、火焰传播和排放生成的具体细节。零维/一维和三维结合,能最大化利用有限的仿真资源。
2. 燃烧系统核心细节拆解与建模要点
2.1 几何模型处理与计算网格策略:从STL到能算的网格
燃烧系统的三维仿真,几何是不可绕开的第一步。很多新人拿到的CAD模型是带完整水套、螺栓孔、密封面的“全套整车件”,恨不得几千万个面都扔进去算,这完全没必要。做缸内燃烧模拟,只需要进气道的下游段、排气道的上游段、燃烧室(活塞顶面+缸盖底面+缸套壁面)这几部分。我建议拿到CAD后先做“瘦身”:用SpaceClaim或者ANSA把水套、凸台、螺栓孔、倒角等对缸内流动和喷雾没有直接影响的结构全部拍平,保持流道的光顺。然后对气门密封面、火花塞电极、喷油器喷嘴尖端这几个关键区域单独做局部加密区域控制,因为这些地方的几何细节会显著影响气流和喷雾。
网格策略上,我强烈建议采用“基网格+加密区控制+瞬态AMR”三层思路。基网格尺寸一般设置在2-4 mm就够用,因为缸内的大尺度涡流是米量级的,基网格太细只会白白消耗算力。加密区主要设置在三处:一是进气门座附近(气门开启时的高速射流区,网格加密到0.5 mm左右);二是火花塞间隙和点火区域(点火核的形成需要高分辨率,加密到0.25 mm);三是喷嘴出口到喷雾贯穿的路径上(加密到0.5 mm,同时配合AMR追踪液滴前锋)。AMR的判据一般是速度梯度和温度梯度,梯度阈值设得太低会导致网格量暴增,设得太高又捕捉不到火焰前锋。我常用的是温度梯度阈值在2-5 K/cm之间,速度梯度阈值在1-2 m/s/cm之间起步,在此基础上根据收敛情况微调。
有没有必要做全周期(720°CA)瞬态仿真?看你要解决什么问题。如果关心的是冷机起动、怠速稳定性或者进气道内残留废气对燃烧的影响,那从进气门开启前就开始算整个循环,计算代价很大。针对我们的优化目标(中低负荷的BSFC和排放),主要关心的是压缩上止点附近的流动和燃烧过程,所以我通常从进气门关闭时刻(比如-140°CA ATDC)开始计算,到排气门开启前结束,大概300多度曲轴转角,能在准确性和计算成本之间取得平衡。
2.2 燃烧模型与湍流模型选择:算得准的核心
燃烧系统仿真最核心的部分就是燃烧模型,没有之一。燃烧模型选错了,后面所有参数都是白调。在三维内燃机CFD中,常用的燃烧模型有G方程模型(火焰面密度)、EDC模型(涡耗散概念)、SAGE(详细化学反应求解器)、以及PDF输运方程模型。对点燃式汽油机,G方程+详细机理的组合,普遍兼顾了计算速度和点火精度。G方程的核心思路是把火焰前锋看作一个传播的标量场,通过湍流火焰速度模型来计算火焰前锋的传播,不需要解析每一根反应链,所以算得快。
实际项目中,我钟情于CONVERGE里的SAGE求解器搭配正庚烷/异辛烷/甲苯等组分的简化机理(比如用92种组分、256步反应的PRF机理来描述汽油替代燃料)。为了让燃烧预测更加贴近实际汽油,我还会在机理里掺入少量乙醇组分(模拟E10汽油)。SAGE求解器不需要指定着火位置,它会根据局部的温度、压力、组分浓度和湍流混合时间自动判断着火条件,这就特别适合直喷汽油机的分层燃烧和火花点火后的火焰传播问题。它对网格和时间步长的要求较高,但在AMR配合下完全能接受。
湍流模型我一般用RANS框架下的RNG k-epsilon(变种)而非标准k-epsilon,因为缸内强压缩、强旋转、剪切流场中,RNG k-epsilon对旋流和绕流的预测明显更准确,而且计算量比LES小了一个量级。LES在学术上看起来很美好,能解析出丰富的涡结构,但放在工程优化项目里,它对于边界条件和网格分辨率极其敏感,动不动就要千万级网格,一个工况算一周,根本不适用于需要快速迭代的燃烧系统优化。除非是研究爆震机理或者近零排放的超稀薄燃烧,否则工程应用上别轻易踩进LES这个坑。
2.3 喷雾与壁面相互作用:直喷机绕不开的鬼门关
直喷汽油机的喷雾过程,是整个燃烧仿真里最难伺候的部分。喷雾模型通常包括破碎、蒸发、碰撞聚合、湍流扩散和壁面相互作用这几个环节。液滴破碎模型,我常用KH-RT模型,因为它在高喷射压力(35 MPa以上)下对初次破碎和二次破碎的模拟都比较靠谱。在35 MPa喷射压力下,喷孔出口处的液滴速度可以超过200 m/s,破碎时间和贯穿距离都直接影响油束与缸壁、活塞顶的撞壁程度。如果喷油策略是多次喷射(比如预喷+主喷+后处理喷),KH-RT模型也能较好捕捉每段油束的发展。
壁面相互作用模型,直喷机务必要用心调。因为喷雾撞击缸壁和活塞顶是常态,油膜(liquid film)的形成直接关联到机油稀释、颗粒物排放和积碳。目前主流模型是O'Rourke的壁面相互作用模型,它能模拟液滴反弹、铺展、贴壁和飞溅。我在项目中调整壁面相互作用的参数时有个经验:先用喷雾特性试验数据(在常压或背压环境下用光学发动机或者定容弹拍到的喷雾贯穿距和锥角照片)来标定喷雾模型,把喷雾的宏观形态调到和试验吻合,再耦合进整机燃烧仿真。千万别跳过这一步直接整机算,不然喷雾穿距差30%,燃烧相位全错,缸压曲线一定会给你颜色看。
3. 实操流程与关键环节落地
3.1 仿真边界条件的确定:从一维到三维的数据传递
燃烧仿真的边界条件不是拍脑袋出来的,尤其是对四缸增压机,进排气系统之间存在强烈的干涉效应,各缸的进气量、残余废气系数和进气道温度逐缸都不一样。我建议先用GT-Power建立整机的一维热力学模型,并通过台架数据(倒拖工况的缸压、全负荷的性能点)校核一维模型的标定。然后在一维模型里算出各缸在指定工况点的进气流量、进气温度、进气道压力、EGR率、残余废气系数,再把进气道的压力脉动曲线作为三维仿真入口的瞬态边界条件导入。
这里有个细节容易被忽略:单向耦合时,一维模型给三维模型的是“平均意义”上的边界;但实际发动机在进排气过程中压力和温度波动非常大,尤其在气门重叠期的扫气阶段。因此,三维模型最好采用瞬态压力边界,把一维模型计算出来的曲轴转角分辨率的压力曲线直接加载到进出口边界面上,这样进气涡流、滚流和排气背压的脉动效应才能真实被再现。
3.2 燃烧参数标定与优化迭代:DOE设计及后处理指标
当基准工况模型调试到与试验缸压曲线对得上(缸压峰值误差在5%以内,峰值相位误差在2°CA以内),就可以开始正式的优化迭代。优化迭代绝不是无脑穷举,我强烈建议引入试验设计(DOE)方法。拿我们的项目举例,在8 bar BMEP、2000 rpm的典型工况下,我们选取了三个变量作为优化因子:点火提前角(在MBT附近±5°CA)、喷油时刻(分主喷时刻和预喷比例)、EGR率(10%-20%)。用中心复合设计生成了大约20个仿真工况。每个工况大约需要8-12小时的机时(20核并行、120万网格),所以总共也就200多小时,两周内可以跑完。这比起盲目地单点试算,效率提升了数倍。
计算完成后,后处理只看两个最重要的指标曲线:缸压曲线和放热率曲线。但看曲线时不能只看峰值,要重点看CA50(累计放热50%对应的曲轴转角)有没有落在合适的位置(一般在8°CA ATDC到10°CA ATDC之间比较多),看10%-90%燃烧持续期是否合适(太短容易爆震,太长热效率偏低)。排放方面,需要监测NOx生成峰值和碳烟生成的时空分布,NOx主要出现在高温、富氧区域的火焰前锋后面,所以调整EGR率和点火时刻就是在找碳烟与NOx此消彼长的平衡点。
3.3 后处理分析驱动设计改进:火要是怎么看的
三维仿真最大的优势不是算出几条缸压曲线,而是能可视化地看到燃烧室里的“火”是怎么样传的。我在后处理时习惯生成一组剖面云图:在火花塞中心位置做一个横切面和纵切面,看不同曲轴转角下的温度场和OH自由基分布。OH自由基层是高温火焰锋面的标志物,观察它是怎么从火花塞间隙出发、如何绕过气门坑边缘、如何被滚流拉伸扭曲,就能判断燃烧室的滚流比设计是否合理。如果火焰前锋到达气缸远端的时刻太晚,说明滚流强度不足或者火花塞位置偏置,这时候可能需要优化进气道造型、气门导流罩、活塞顶面形状(比如加深挤气坑)来增强滚流。
墙面的热负荷评估也不能忽略。燃烧仿真得到的壁面热流密度分布图可以直接指导冷却水套的设计和铸造壁厚的优化。温度分布特别高的局部区域(比如排气侧气门鼻梁区)容易导致热疲劳开裂和早燃。我习惯把热流密度都输出到几何对应的表面网格上,然后在STAR-CCM+或者ParaView里叠加显示,一目了然。
4. 常见问题排查与踩坑实录
4.1 发散与不收敛:先压时间步,再查网格质量
燃烧仿真最常见的故障就是计算发散。现象一般是某个变量(温度、压力或速度)在迭代几个时间步后溢出NaN或者剧增。我排查的顺序很固定。先看时间步长,燃烧化学反应特征时间极短,尤其是在着火时刻附近,一个时间步推进太多就会导致反应项过冲。点火期间的固定时间步长我通常控制在0.01°CA甚至更小,如果用了自适应时间步,就把最大时间步长限制在0.05°CA。如果时间步已经压得很小还发散,第二大嫌疑是网格质量,特别是AMR加密后有一些尺寸过小的网格,或者在气门座、活塞环岸附近出现负体积,这种网格问题可以通过检查最大扭曲度和最小正交性来筛除。第三大嫌疑是边界条件的突变,比如喷油压力曲线如果瞬间从0跳到35 MPa,动量源项太猛也会发散,此时需要给喷射压力加一个极短时间的斜坡过渡。
4.2 喷雾与燃烧预测不准:试验标定不可省
喷雾贯穿距预测过短或过长,是最常见的模型标定问题。贯穿距预测过短,一般是因为KH-RT破碎模型的破碎时间常数(B1)设得过小,液滴破碎过快、粒径过小,导致动量快速衰减。相反,如果贯穿距预测过长,则B1设得过大,液滴碎不起来,一直以很大的惯性往前冲,容易撞壁。我建议B1的标定范围在7到30之间变化(尤其针对汽油直喷的多孔喷油器),并在定容弹喷雾试验数据的基础上,通过试算2到3组参数快速拟合。另外环境密度对贯穿距影响很大,喷雾仿真一定要在正确的背压下进行,在低背压下标定好的参数直接拿去高背压工况,大概率是要失真的。
燃烧相位对不上试验,那是另一个大坑。比如预测的着火时刻比试验晚了好几度CA,可能的原因有:点火能量模型设置过低、点火持续期过短,或者是湍流火焰速度公式中某个常数(比如火焰拉伸系数)不合适,火焰传播速度被低估了。如果是CA50偏早,则可能是EGR率在边界条件中给低了,缸内残余废气的稀释效果没体现出来,着火延迟缩短。我遇到的最诡异的一次,是后处理时发现CA50对点火时刻的变化完全不敏感,排查了几个小时才发现是火花塞附近网格太粗,点火核区域内根本解析不出高温火核,火焰传播从一开始就建立不起来。后来把火花塞间隙附近的AMR等级强制提高两级,问题立刻消失。这个案例说明,模型是否失真的要结合网格分辨率和物理模型一起排查,别只盯着一个维度。
4.3 计算精度与效率的平衡:教你几招节省机时
做工程项目的都要讲究效率。燃烧仿真动辄数天的机时对项目排期是巨大压力。我常用的省机时技巧有几个。
第一,化学反应机理精简。详细的汽油机机理可能有上千步反应,在三维CFD中每个网格每一步耦合求解化学反应,代价极大。我一般先用机理简化工具(比如ANSYS的Response Surface分析、或者CONVERGE自带的机理简化模块)把机理精简到100步以内,同时用激波管和层流火焰速度数据验证一下简化机理在常温常压和高温高压下的误差。只要着火延迟误差在10%以内,就足以支撑燃烧趋势预测。
第二,分阶段网格策略。在压缩冲程初期,缸内流场相对均匀,AMR等级可以放低;到接近上止点时,再把AMR等级迅速提高,这样才能既保证精度又控制整体网格规模。很多时候我直接在喷油开始前2°CA设置一个事件触发器,用一个更高精度的AMR网格方案去覆盖压缩上止点附近的所有时刻。
第三,多核并行与动态负载平衡。在集群上运行时经常遇到各核负载不均,特别是AMR局部加密后,有的核网格量是其他核的几倍,导致大量核空闲等待。打开动态负载均衡选项能有效改善并行效率,尤其是气体喷射和燃烧这两段最容易出现负载倾斜的阶段。实测下来,开和不开动态负载均衡,在192核的集群上总耗时差别能达到30%以上,这是很多人容易忽略的隐性成本。
4.4 常见问题速查表
| 故障现象 | 可能原因 | 排查与解决建议 |
|---|---|---|
| 计算在点火时刻附近发散 | 时间步长过大、点火核心区域网格过粗 | 点火阶段固定时间步长降至0.01°CA,局部AMR等级+2 |
| 缸压峰值远高于试验 | 壁面温度设置过低、湍流强度过高 | 核对壁温边界(缸盖/活塞/缸套分别为450-550 K),调低入口湍动能 |
| 缸压峰值远低于试验 | 燃烧模型火焰速度被低估、EGR边界值偏大 | 标定层流火焰速度系数,核对EGR率和残余废气系数 |
| NOx预测值系统性偏高 | NOx生成机理过于详细或温度边界偏高 | 检查热力NOx模型参数、峰值燃烧温度是否超过2500 K |
| 喷雾贯穿距不足 | B1破碎常数偏小、背压设置偏高 | 在定容弹数据下标定B1,核对背压条件 |
| 碳烟排放预测异常 | 碳烟前驱体模型参数不合适、局部过浓区域捕捉不足 | 检查局部当量比>2的区域,考虑增加近喷嘴区网格分辨率 |
5. 优化效果验证与工程经验延伸
5.1 从仿真到台架的闭环验证
燃烧仿真做得再漂亮,最后也要拿到台架上去验收。我在仿真优化完成后,会在台架上重点验证两个内容:一是缸压曲线对比,看实际台架的缸压峰值、CA50和放热率曲线能不能复现仿真的趋势;二是排放对比,测NOx、THC、CO和PN,看排放是否和仿真预测同向变化。在进入台架验证前,我还会把仿真优化出的几组边界条件参数(点火时刻、喷油时刻、EGR率、喷油压力)直接生成一版ECU标定建议MAP给标定工程师,这样可以大大压缩台架标定时间。
在我最近一次做增压直喷汽油机燃烧优化的项目中,仿真给出的方案是:将主喷时刻从-35°CA ATDC推迟到-28°CA ATDC(以减少燃油撞壁),同时把EGR率从12%提到16%(泵气损失降低、爆震倾向下降),点火时刻相比MBT延迟了2°CA(避免早燃)。台架验证结果显示,BSFC确实下降了4.2%,和仿真预测的下降3.8%只差0.4个百分点,NOx排放在法规限制内,缸压峰值偏差也只有4%,CA50偏差在1.5°CA以内。这个量级的吻合度,已经达到了用仿真代替盲目试错的工程目标。
5.2 燃烧仿真的边界与未来延伸
在项目里摸爬滚打几年后,我对燃烧仿真的有更清醒的认知。它并不是万能的,在极端工况(如高EGR超稀释燃烧、零排放氨燃料、氢内燃机)下,现有的经验模型往往需要重新标定,不确定性仍然很大。但这不意味着仿真无用,反而意味着要把仿真模型当成一个持续演进的工程工具去维护。我习惯在每个项目结束后,把这次标定好的模型参数、机理文件、边界文件归档入库,等下次遇到相似工况时直接调用,做到“一次标定、多次复用”。这种积累会让你的燃烧仿真能力越用越顺手,每一次项目都不是从零开始。
做燃烧仿真这些年,我最大的心得体会是:软件学起来快,真正的门槛在“对燃烧机理和流动本质的理解”上。模具设计、台架试验、标定数据、仿真模型,这几样东西只有揉在一起看,才能做出真正经得起验证的优化方案。技术文章到这里也接近尾声了,最后再分享一个小建议——仿真优化迭代前,一定要留出至少30%的时间预算给模型标定和问题排查,没有标定的仿真就是一把没有准星的枪,打不准目标的。希望大家都能在仿真和试验的相互验证中,找到自己最得心应手的那条路。