3. 气体泄漏的物理机制:扩散模型、重气与轻气行为、泄漏源强计算、通风对扩散的影响
各位同行,咱们今天聊点硬核的——气体泄漏后到底怎么跑?
说实话,我干这行二十年,见过太多人把“泄漏”想得太简单。总觉得阀门一开,气体就“呼”一下散开了。哪有这么容易?
气体怎么扩散,是往上飘还是往下沉,泄漏量到底多大,通风能不能把它吹走——这些搞不清楚,你做的应急预案就是一张废纸。
3.1 扩散模型:气体是怎么“跑”的?
先说说扩散模型。说白了,就是描述气体从泄漏点出来后,浓度在空间和时间上怎么变化的数学工具。
我个人习惯把扩散模型分成两类:
- 高斯扩散模型:最经典,也最常用。假设气体像烟羽一样,在风的作用下呈正态分布扩散。适合连续泄漏、中性浮力气体。
- 重气扩散模型:专门对付密度比空气大的气体。比如氯气、液化石油气。它们会贴着地面“爬”,不能用高斯模型硬套。
- 箱模型:把泄漏区域想象成一个“箱子”,气体在里面均匀混合。适合快速估算,但精度一般。
- CFD模型:计算流体动力学。精度最高,但计算量大,适合复杂地形或障碍物多的场景。
重要提醒:选模型不是越复杂越好。我见过有人用CFD算一个简单的管道泄漏,结果算了两天,还不如高斯模型五分钟的结果准。关键看场景。
举个例子。一个储罐连续泄漏氢气,风速3m/s,大气稳定度D级。用高斯模型算下风向50米处的浓度:
# 高斯扩散模型简化计算(Python示例)
import math
Q = 0.1 # 泄漏源强,kg/s
u = 3.0 # 风速,m/s
x = 50.0 # 下风向距离,m
y = 0.0 # 侧风向距离,m
z = 2.0 # 高度,m
# 扩散参数(D级稳定度,城市地形)
sigma_y = 0.16 * x * (1 + 0.0004 * x)**(-0.5)
sigma_z = 0.14 * x * (1 + 0.0003 * x)**(-0.5)
# 地面浓度计算
C = (Q / (2 * math.pi * u * sigma_y * sigma_z)) * \
math.exp(-0.5 * (y / sigma_y)**2) * \
(math.exp(-0.5 * ((z - 0) / sigma_z)**2) + math.exp(-0.5 * ((z + 0) / sigma_z)**2))
print(f"下风向{x}米处浓度:{C:.4f} kg/m³")
嗯,这里要注意。高斯模型有个前提——气体密度和空气差不多。你要是拿它算氯气泄漏,那结果就离谱了。
3.2 重气与轻气行为:往上飘还是往下沉?
这个问题,我建议每个安全工程师都刻在脑子里。
气体密度比空气大,就是重气。比空气小,就是轻气。但这里有个坑——温度。
我曾经在项目上遇到过,一个液氨储罐泄漏。氨气本身比空气轻,但泄漏时是低温液体,瞬间气化后温度极低,密度反而比空气大。结果呢?氨气贴着地面“爬”了200多米,差点把下风向的巡检人员放倒。
所以,判断重气还是轻气,不能只看分子量,还要看实际温度下的密度。
| 气体 | 分子量 | 常温下密度(kg/m³) | 行为 |
|---|---|---|---|
| 氢气 | 2 | 0.09 | 轻气,快速上升 |
| 甲烷 | 16 | 0.72 | 轻气,向上扩散 |
| 氯气 | 71 | 3.21 | 重气,贴地扩散 |
| 液化石油气 | 44 | 1.97 | 重气,低洼处聚集 |
| 低温氨气 | 17 | 约1.5(-33℃) | 重气行为,贴地扩散 |
重气有个特点——它会“下沉”,沿着地面或低洼处流动。你想想看,如果氯气泄漏,你往高处跑是对的。但如果是氢气泄漏,你往高处跑反而可能撞上它。
避坑指南:我曾经在化工厂做风险评估,发现他们把氯气探测器装在屋顶。我说你们这是给谁看呢?氯气比空气重三倍,它只会往下沉。探测器应该装在离地面30厘米的位置。后来他们改了,半年后真用上了,救了一条命。
3.3 泄漏源强计算:到底漏了多少?
源强,就是单位时间内泄漏的质量。这个数算不准,后面的扩散分析全是扯淡。
我常用的计算方法分几种:
- 小孔泄漏:气体通过小孔流出,用伯努利方程。适合管道、储罐上的小孔。
- 管道断裂:两端都开口,流量更大。适合管道完全断裂的场景。
- 液体闪蒸:过热的液体泄漏后瞬间气化。比如液氯、液氨。
- 两相流:气体和液体同时泄漏。最复杂,也最接近真实情况。
举个例子。一个储罐压力10 bar,罐壁有个直径10 mm的小孔,泄漏的是氮气。怎么算?
# 小孔泄漏源强计算
import math
P = 10e5 # 储罐压力,Pa
P0 = 1e5 # 环境压力,Pa
d = 0.01 # 小孔直径,m
A = math.pi * (d/2)**2 # 小孔面积,m²
gamma = 1.4 # 氮气的绝热指数
R = 297 # 氮气的气体常数,J/(kg·K)
T = 300 # 储罐内温度,K
Cd = 0.62 # 流量系数
# 判断是否临界流
pressure_ratio = P0 / P
critical_ratio = (2 / (gamma + 1)) ** (gamma / (gamma - 1))
if pressure_ratio <= critical_ratio:
# 临界流
Q = Cd * A * P * math.sqrt(gamma / (R * T) * (2 / (gamma + 1)) ** ((gamma + 1) / (gamma - 1)))
print("临界流状态")
else:
# 亚临界流
Q = Cd * A * P * math.sqrt((2 * gamma) / ((gamma - 1) * R * T) * \
((P0 / P) ** (2 / gamma) - (P0 / P) ** ((gamma + 1) / gamma)))
print("亚临界流状态")
print(f"泄漏源强:{Q:.4f} kg/s")
算出来大概0.12 kg/s。这个数看着不大,但你要知道,氮气虽然无毒,但大量泄漏会造成缺氧。在一个1000立方米的房间里,这个泄漏速率,十分钟就能把氧气浓度降到危险水平。
个人经验:我建议做源强计算时,永远取一个安全系数。理论计算值乘以1.5到2倍,作为设计依据。为什么?因为小孔可能被腐蚀变大,阀门可能关不严,这些意外你都得考虑进去。
3.4 通风对扩散的影响:风往哪吹,气往哪跑
通风,说白了就是给气体“指路”。
自然通风靠风力和温差。机械通风靠风机。但不管哪种,核心就一句话:通风的方向和速度,决定了气体的扩散路径。
我遇到过最典型的案例,是一个半导体工厂的特气间。他们装了排风机,但排风口就在工人操作位的正上方。结果呢?一旦泄漏,气体直接被排风机吸上去,经过工人头顶。这不是通风,这是“送毒”。
通风设计有几个关键点:
- 气流方向:重气泄漏,排风口要设在低处。轻气泄漏,排风口要设在高处。
- 换气次数:一般特气间要求每小时12-20次换气。但这不是死数,要看气体种类和泄漏量。
- 负压维持:特气间要保持负压,防止气体外泄到其他区域。
- 应急通风:泄漏发生时,通风系统要自动切换到最大风量。
| 气体类型 | 排风口位置 | 推荐换气次数(次/小时) | 备注 |
|---|---|---|---|
| 轻气(H₂、CH₄) | 屋顶或高处 | 12-15 | 注意氢气有爆炸风险 |
| 重气(Cl₂、LPG) | 地面附近 | 15-20 | 排风口要防堵塞 |
| 毒性气体 | 根据密度定 | 20以上 | 必须联动报警系统 |
通风对扩散的影响,可以用一个简单的概念理解——稀释时间。
假设一个房间体积V,通风量Q,那么理论上,把房间里的气体浓度稀释到1/e(约37%)所需的时间是V/Q。比如1000立方米的房间,通风量5000立方米/小时,稀释时间就是0.2小时,也就是12分钟。
但这是理想情况。实际上,房间里有死角,有障碍物,气体不会均匀混合。所以实际稀释时间要长得多。
核心观点:通风不是万能的。它只能稀释,不能消除。如果泄漏量太大,通风反而可能把有毒气体吹到更远的地方。我建议,通风系统一定要和泄漏检测、紧急切断联动。检测到泄漏,先切断气源,再启动通风。顺序搞反了,后果很严重。
好了,这一章的内容就这些。扩散模型、重气轻气、源强计算、通风影响——这四个点,你吃透了,气体泄漏的物理机制就基本掌握了。
下一章,咱们聊聊泄漏检测与报警系统的选型和布置。那个更实战,我有很多故事可以讲。