做旋风分离器的朋友应该都有体会,设备体积不大、结构看着也简单,但真要判断它对某个粒径段颗粒的分离效率,靠手算或者经验公式往往心里没底。特别是有时候现场反馈“效率怎么上不去”,你很难直观看到颗粒到底是从排气管跑掉的,还是在内壁反弹之后又被气流重新卷走了。这时候用CFD做一次DPM颗粒轨迹仿真,就能把这些看不见的过程拉出来看清楚。
这篇文章用Ansys Fluent把旋风分离器的颗粒轨迹仿真完整走一遍,覆盖建模、网格、DPM参数设置、求解控制到后处理的全流程。你如果是正在做毕业设计的学生,或者是刚接触气固两相流的工程师,可以照着这套思路直接复现。文里涉及的关键参数和操作判断,我会把“为什么这么设”也一起讲清楚,而不是只给一份死板的操作截图。
1. 项目背景与核心原理拆解
1.1 旋风分离器到底是怎么把颗粒分开的
旋风分离器本身没有运动部件,它的分离能力完全来自气流旋转产生的离心力。含尘气体从入口切向进入圆筒段后,会在壁面附近形成一个向下运动的外旋流,到锥体底部后再折返,形成向上运动的内旋流从排气管排出。颗粒在这个过程里因为密度比气体大,离心效应明显,会被甩向壁面,然后沿壁面滑落到灰斗。
这里有个关键点:颗粒能不能被捕获,取决于离心力和气动阻力的相对大小。小颗粒质量轻,更容易被湍流脉动带着跑,所以分离效率曲线通常呈“L形”或者“V形”,存在一个切割粒径(d50),也就是分离效率刚好50%的粒径。DPM模型要做的,就是把这个d50和整条效率曲线通过数值计算算出来。
从工程角度说,这类设备最大优势是结构简单、维护成本低,适合处理高温高浓度工况,但对细颗粒的效率不太理想——5微米以下颗粒往往只有百分之四五十的效率。所以仿真的时候,细颗粒跑掉是正常的,重点在于能不能定量预测,以及在改变入口速度、筒体直径后,效率变化趋势对不对。
1.2 DPM模型选型的判断依据
气固两相流的模拟方法有好几种,DPM只是其中一种。用DPM的核心前提是颗粒相体积分数足够低,一般要求低于10%,这样颗粒与颗粒之间的碰撞可以忽略,颗粒的存在也不会显著改变连续相流场,最多通过双向耦合考虑颗粒对气流动量、能量的反作用就够了。
旋风分离器入口浓度通常在每立方米几克到几十克,换算成体积分数大致在万分之几到千分之几,完全满足DPM的适用条件。反过来,如果你算的是流化床、气力输送密相段这种颗粒浓度很高的场景,DPM就不合适了,那时候要考虑欧拉双流体模型或DEM-CFD耦合。
DPM框架下,Fluent会追踪每个颗粒的运动方程,受力项里最重要是曳力,其次是重力,偶尔考虑虚拟质量力或者Saffman升力。写进软件里的曳力公式有好几套,默认的球形颗粒曳力(Schiller-Naumann关联式)在绝大部分旋风分离器工况下够用;如果你处理的颗粒形状偏离球形明显,后续再换非球形曳力模型。
另外要注意耦合方式。“单向耦合”是指先算连续相流场,收敛后释放颗粒,颗粒只感受流场,但不会影响气流;“双向耦合”则是颗粒反过来也改变流场。旋风分离器颗粒浓度低、粒径细,多数情况下单向耦合已经能给合理趋势。不过在颗粒浓度稍高或者要做效率定量对比时,我建议至少开双向耦合对比一版,算算结果差异有多大,这个代价是可接受的。
2. 仿真前处理与模型设置全流程
2.1 几何建模与网格划分要点
几何建模这块,旋风分离器的结构虽然简单,但建模时有两个容易让结果跑偏的地方。一个是入口的形式:实际设备进气口一般是矩形截面、切向接入,有的还带导流板,如果你把这些细节简化成“一个圆管从侧面伸进去”,入口流场的射流形态就完全不一样了,颗粒初始位置分布也会偏。
另一个是排气管插入深度。排气管(升气管)的插入深度直接决定内旋流的长度和短路流的大小,这是旋风分离器性能的核心结构参数,建模时务必按实际尺寸画。灰斗也不能省略——有些简化模型只算筒体加锥体,把灰斗去掉,结果就是颗粒在锥底处直接堆积,气流回流路径错误,分离效率会严重失真。我一般建议,灰斗至少保留1.5倍排气管直径的高度。
网格划分上,旋风分离器速度场有几个梯度很大的区域:入口射流剪切层、排气管下缘的短路流、涡核中心。这些位置应该局部加密。主体结构如果能切成六面体网格,质量会更好;入口段和锥体过渡处用四面体往往更省事。整体网格数量建议从60万起步做一遍,再加密到120万、200万做网格无关性验证,观察切向速度和颗粒分离效率的变化,两者差异不超过5%就可以认为网格够了。
网格质量方面,Fluent里的评判标准是正交质量大于0.1、偏斜率小于0.9、最小正交质量不低于1e-4。旋风分离器的涡核区域容易出现高扭曲网格,尤其在中心轴线附近,画网格时注意给中心区域留出足够网格密度,不要出现过度拉伸的长条单元。
2.2 边界条件与物性参数设定
旋风分离器的边界条件设置,整体思路不复杂:入口设速度入口,排气管出口设压力出口,所有壁面按无滑移壁面处理,颗粒相按需要设置捕获或反弹。
速度入口要给出真实的入口速度。以一台处理风量约0.5 m³/s的小型旋风分离器为例,入口尺寸如果是150mm×60mm,入口速度算下来约55 m/s,这个数值对常温常压空气工况比较典型。如果速度给太小(比如套用了管道风速3 m/s),旋流强度不够,颗粒基本都被带出去了,算出来的分离效率没有参考意义。
压力出口相对压力设0 Pa,空气物性按常温常压取,密度1.225 kg/m³,粘度1.789e-5 kg/(m·s)。如果处理高温烟气,记得把密度和粘度改成对应温度下的值,或者直接用不可压缩理想气体让软件自己算。温度的差异对粘度影响很大,而粘度直接决定雷诺数和颗粒曳力,不能忽略。
颗粒相材料在Materials面板里新建一种inert particle,密度按实际粉尘取。以最常见的石英粉尘为例,密度约2650 kg/m³。如果没有实测数据,宁可取一个中等偏上的密度,也不要默认用水的密度——忘记改颗粒密度是我见过最多的低级错误之一,算出来的轨迹完全不对劲。
2.3 DPM离散相参数配置详解
DPM设置看起来选项多,其实拆开就三步:注入方式、颗粒属性、边界条件。
注入方式选surface injection,注入面选入口面,这样颗粒会均匀分布在入口截面上,接近真实工况。颗粒初始速度和气流速度保持一致,如果是从静止状态启动,会让颗粒加速段失真,影响进入旋流场的初始位置。
颗粒粒径按实际粉尘的粒度分布给。工程上最常见的做法是用Rosin-Rammler分布,需要给最小粒径、最大粒径、中位粒径和分布指数n。比如某水泥厂除尘器入口粉尘分布:最小1微米,最大50微米,中位粒径大约12微米,n大概1.2。这几个数怎么来?最好用激光粒度仪实测,没条件就从相关行业文献里找相似工况的典型值。
颗粒的随机性也要考虑。实际旋风分离器中,同一直径的颗粒进入入口时具体从什么位置、什么微小的速度扰动进去,都是随机的,这会显著影响单个颗粒轨迹——相同直径的颗粒有的被捕获,有的逃逸了。Fluent里用随机轨道模型(stochastic tracking)配合离散随机游走(DRW)来模拟这种湍流扩散效应。启用后每个颗粒会被赋予一个随机速度脉动,相同直径颗粒走不同轨迹。这个一定要开启,否则你算出来的分离效率是一条光滑到不真实的曲线。
DPM壁面边界条件设置很容易理解:排气管顶部的壁面设reflect,模拟颗粒撞击后反弹;灰斗底面和锥体壁面设trap,一旦颗粒碰到就认为被捕获;排气管出口面设escape,颗粒从这个面出去就算逃逸。颗粒在壁面上的反弹需要设置恢复系数(restitution coefficient),法向和切向一般取0.9左右,这个值来自实验数据,如果没有,按0.9经验值处理是可以接受的。
注意:DPM设置的面边界条件和连续相的壁面边界条件是在同一个面板里操作的。启动Discrete Phase模型后,每个边界面上都会多出“Discrete Phase BC”选项,别漏掉。
双向耦合还要设置“每多少个连续相迭代步更新一次颗粒轨迹”。常规设置是每10步更新一次,这个值越大计算越快但耦合效果越粗糙,越小越精确但耗时剧增。做旋风分离器我一般设5-10步,基本够用。
3. 求解策略与计算过程把控
3.1 求解器和湍流模型怎么选
旋风分离器内部流场是强旋流,湍流模型选择直接影响结果可信度。标准k-epsilon模型基于湍流各向同性的假设,计算强旋流时会显著高估湍流粘度,导致旋流衰减太快、切向速度偏低,分离效率被算低。所以不建议用标准k-epsilon。
方案有两种。一是用RSM(雷诺应力模型),它对旋流、涡流等强各向异性流动的描述更准确,是旋风分离器仿真的“标准答案”级的模型。缺点是方程数量多,收敛慢,对网格质量要求高。二是用RNG k-epsilon并开启swirl modification选项。RNG本身改进了一部分旋流预测能力,加上修正项后,在成本可控的前提下能给出比较合理的旋流场。工程上用RNG k-epsilon + Swirl Modified已经是很多论文和工程项目的默认配置。
我的建议是做最终结果用RSM,但前期调试模型、检查边界设置时先用RNG k-epsilon,流场稳定后再切换RSM续算几百步,这样兼顾了效率和质量。切换模型前先保存一份case和data,免得模型切换失败后回不去。注意切换湍流模型后会重新计算湍流量,残差会上涨,这是正常的,迭代几百步后会逐渐降下来。
压力速度耦合选SIMPLE就够了,压力插值方式推荐用PRESTO!,它在旋流和强压力梯度流动中的表现比默认的Standard好很多。动量、湍动能等方程的空间离散用二阶迎风,一阶迎风数值耗散太大,会把涡核细节抹平。如果你用一阶算完发现排气管出口附近速度场比较“糊”,大概率就是数值耗散导致的。
3.2 松弛因子与收敛判断
松弛因子是很多人调不明白的参数。它的作用是控制每次迭代的变量更新幅度,设置太大会导致计算振荡,太小则收敛极慢。默认值在稳态问题里通常可以直接用,但在强旋流这种收敛困难的情况下,把压力松弛因子从0.3降到0.2,动量从0.7降到0.5,会有明显帮助。
收敛判据不能只看残差。残差降到1e-4通常说明方程求解趋于稳定,但对旋风分离器来说,更关键的指标是进出口质量流量平衡。具体做法:在入口和出口分别建监测面,在Reports里监控入口质量流量、出口质量流量和两者差值。当差值小于入口流量的0.1%时,流场才算真正收敛。
还有一个经常被忽略的指标是壁面平均压力或者排气管中心线速度的监控值是否趋于平稳。流场收敛后,再开启DPM计算。如果连续相流场没收敛就急着放颗粒,颗粒轨迹会被不真实的旋流场带飞,后面的处理全白做。
3.3 中途暂停与恢复计算的正确姿势
这个问题稍微有点实用——之前后台收到一个朋友问“Fluent算到一半,电脑能直接关机吗?下次还能继续吗?”。这里统一回答一下。
Fluent的稳态计算是迭代过程,计算中途强行关机,当前这步迭代数据不会自动保存,下次打开只能从上次保存的case和data继续。所以标准做法有两种:
第一种,如果只是临时要停一会,不是关机,点“Calculate”活动面板上的Interrupt按钮(红色方块)。这个按钮是优雅停止,它会等当前迭代步结算完,数据仍保留在内存里,你可以继续迭代。
第二种,如果需要关机或者长时间离开,直接强行关掉软件不可取,正确操作是:先Interrupt停止当前计算,然后File → Write → Data保存dat文件(case文件如果没改过网格和模型设置就不用重复保存),最后再退出关机。下次启动时读入case和dat,在迭代面板里把迭代步数接着往下填就行。
进阶一点的做法是利用自动保存功能。在求解器设置里打开Autosave,每500步或1000步自动存一个dat文件。这样即使软件崩溃或者误操作,损失最多是几千步的计算量,不至于从头再来。个人建议稳态计算每500步保存一次,瞬态按实际周期定,至少保证每隔几小时有一份备份。
颗粒轨迹计算本身也耗时间。单向耦合计算时,等连续相收敛后释放颗粒,几千个颗粒也就几分钟的事。双向耦合则意味着每做几步连续相迭代就要重新追踪一轮颗粒,计算量成倍增加,这时候自动保存更是必不可少。
4. 结果分析与颗粒轨迹解读
4.1 颗粒轨迹可视化怎么调
计算完成后,最直观的产出就是颗粒轨迹图。后处理有两种路径:一是在Fluent自带的后处理里直接生成,二是导出到CFD-Post或ParaView里处理。Fluent新版计算完成点击左侧树形菜单的“Particle Tracks”,选择对应的injection,点击Display就能看到轨迹。
轨迹显示有三个参数值得花时间调:变量(Variable)选颗粒速度或粒径,颜色按粒径区分能让效率对比一目了然;每颗粒子绘制步数(Particle Step Size)决定轨迹线条的平滑程度,步长太大轨迹是折线,步长太小线条密集到看不清;再一个是绘制的颗粒数量,显示太多反而乱,选几百条代表性轨迹观察规律即可。
在视觉呈现上有一些套路的做法值得推荐。把颗粒轨迹按粒径着色,10微米以下的颗粒用冷色,50微米以上的用暖色,一眼就能看出细颗粒在涡核内转圈、粗颗粒在壁面聚集的规律。再叠加壁面压力或者切向速度云图作为背景,能直观看出颗粒分离与流场的对应关系。
轨迹图可以是动态的,用Animation功能按时间步逐帧播放颗粒运动。这个更适合汇报场合,想象一下向领导或甲方展示颗粒在旋风分离器内一圈圈螺旋向下、贴壁滑落的过程,比嘴上说一百句“离心分离原理”都有说服力。
4.2 分离效率的定量计算方法
轨迹图只能定性看,定量评估分离效率需要用数值说话。
办法其实不复杂:注入时统计总颗粒数,计算完后查看每一个边界上“逃逸”和“捕集”的颗粒数。具体操作是,在Fluent中通过Report → Discrete Phase → Summary里查看每个DPM边界条件捕获的颗粒数量统计,或者自定义监测出口颗粒数量。分离效率公式是:
η = N_trapped / N_injected × 100%
这只能给出总效率。如果要看分级效率,需要按粒径范围分多个injection分别注入,分别统计。比如分别注入5微米、10微米、20微米、30微米、50微米五组单分散颗粒,每组都统计逃逸率,就能画出一条分级效率曲线。
这里面有个细节要注意:Fluent的injection总颗粒数,软件默认是按“流率”推算的,如果每个粒径颗粒个数不同,统计效率时要用各组的权重去折算,否则平均效率数值没有意义。
还有一个实用指标是d50切割粒径。在分级效率曲线中找到效率等于50%对应的粒径,这个值可以和实验值对比验证仿真精度。工程上d50相差20%以内,模型已经算比较可靠。
4.3 颗粒轨迹的物理合理性检查
这部分是很容易被忽略但有很有价值的内容。仿真结果再好看,如果物理上不合理,那就只是数字游戏而已。拿到轨迹图后,我建议你先问自己三个问题:
第一,粗颗粒是否都在壁面附近螺旋向下?这是旋风分离器最基本的行为特征。如果50微米颗粒出现在涡核中心直接冲上排气管,说明颗粒的初始位置或壁面反弹设置有问题。第二,颗粒被捕获的位置是在锥体还是灰斗?理论上颗粒绝大多数应该在锥体和灰斗壁面被分离,如果入口段壁面捕获了一大堆,说明入口射流冲顶或短路流异常。第三,细颗粒的轨迹是否出现明显随机抖动?DRW开启后细颗粒轨迹应该有些自然的不规则波动,如果完全是平滑螺旋线,可能是湍流扩散效果没起作用或者颗粒对速度场的响应太迟钝。
颗粒的驻留时间也要看。粗颗粒在分离器内的驻留时间通常明显小于细颗粒——粗颗粒很快被离心力甩到壁面然后滑落,细颗粒会被内旋流带着反复循环,甚至绕圈很久才逃逸。如果你看到细颗粒驻留时间反而比粗颗粒短,说明颗粒的受力设置需要重新核查。
5. 常见问题排查与避坑实录
5.1 我踩过的常见坑
前面是完整流程,这里把实操中容易响的问题集中说一下。
第一个坑是几何模型从CAD导入Fluent后发现尺寸不对。SolidWorks或者SpaceClaim画图时习惯用毫米单位,而Fluent默认用米。如果没有统一单位就导入网格,50mm的入口直径会被当成50m,气流速度、雷诺数、颗粒弛豫时间全乱了套。我的习惯是在SpaceClaim里就把单位设定好,导出前再确认一次模型尺寸处于“一眼就觉得数量级正确”的程度。
第二个坑是连续相流场没算收敛就着急释放颗粒。有一次赶进度,残差卡在1e-3降不下去,我在“只有4个数量级下降”的状态下放了一组颗粒,结果出来细颗粒全被吹到排气管出口,粗颗粒也有不少逃逸。回过头来把流场多迭代500步,颗粒轨迹完全变了个样。从此我给自己定了一个硬规矩:颗粒注入前,先看出口和入口流量差小于0.1%。残差数字是参考,流量守恒才是底线。
第三个坑是网格加密后效率反而出现异常波动。这通常不是模型本身的问题,而是网格数量增加后局部速度峰值变高,颗粒与壁面碰撞点分布被识别得更精细。遇到这种情况,不要急着怀疑模型对不对,先把不同网格密度下的结果做对比,确认关键参数(壁面恢复系数、湍流分散强度)在合理范围,再看结果变化是否有物理趋势。
第四个坑不常遇到但很致命:尝试用非稳态求解DPM。旋风分离器虽然内部流动本质上是强旋甚至不稳定,但如果只是为了算分离效率,稳态流场加稳态DPM已经足够。开了非稳态后,计算时间从个小时级变成天级,而且需要极小的物理时间步长才能解析旋流脉动,普通电脑跑不动。
5.2 常见问题速查表
| 常见现象 | 直接原因 | 检查项与解决思路 |
|---|---|---|
| 颗粒轨迹全部直接穿透壁面 | DPM边界条件设置遗漏或错误 | 检查壁面是否设置reflect/trap,而不是默认的escape |
| 所有颗粒都从入口回流逃逸回来 | 入口边界DPM设置为escape | 入口应该设为escape但方向要朝向内部,检查颗粒初始速度方向 |
| 颗粒轨迹发散或飞到天上 | 颗粒密度或曳力设置错误 | 确认颗粒材料密度、直径单位是否合理,检查是否误用无质量颗粒 |
| 分离效率严重偏低 | 连续相旋流强度不够 | 检查入口速度、湍流模型是否合适,RNG k-epsilon是否开了Swirl Modification |
| 细颗粒几乎没有任何随机扩散 | DRW未开启或湍流强度过低 | 启动残余速度脉动的随机轨道追踪,加大入口湍流强度 |
| 不同网格密度下效率差异巨大 | 网格数不足或关键区域没有加密 | 对入口、排气管下缘、涡核中心做局部加密,核对网格无关性 |
5.3 基于经验的参数建议
最后给一组经过实践验证、用于常规常温常压空气-石英粉尘工况的参数组合,方便直接抄作业。湍流模型用RSM;压力插值PRESTO!;动量、湍动能、雷诺应力方程全部二阶迎风;压力松弛0.2,动量松弛0.5,湍动能和湍流耗散松弛0.4;DPM模式开启随机轨道和DRW;颗粒恢复系数法向和切向取0.9;Rosin-Rammler分布参数按实测粒度分布输入。
这套参数在多个旋风分离器项目中得到过验证,分离效率与实测值偏差在10%以内(对于5-30微米粉尘)。当然不能保证适用于所有结构,但我每次开始新项目时都会先拿这套参数打底,再根据工况微调。
提示:这里给出的是一组经验性默认参数,不构成对任意工况的最优推荐。不同结构、不同物性下,务必进行模型验证和参数敏感性分析后再下结论。
我在做旋风分离器仿真的过程中,最强烈的感受是:数值模拟的真正价值不在于让你得到一张好看的轨迹图,而在于帮助建立“流动与分离”的直觉。当你反复观察不同粒径颗粒在旋流场中的响应差异,再回头看现场设备怎么改、运行参数怎么调,思路会比以前纯粹靠经验清晰很多。
这个内容后续还可以继续扩展,比如不同锥角结构对分离效率的影响规律、入口含尘浓度对分级效率的修正、灰斗返混现象的瞬态模拟,都是很值得做的方向。你手头如果有自己跑出来的案例,也建议试着在社区里分享出来,工程问题讨论起来比单看教程收获大得多。