【图文】CEMS烟气分析仪中氮氧化物NOx的计算方法(含氧量折算法)国家环保总局环函[2004]273号

前言:NOx计算不太简单,很多仪器计算方法不太正确和完整。

最近山东一个客户找我们说:你们湖南日科的VOC仪器做的那么专业,为什么没看到你家的便携式烟气分析仪呢?

我说:有啊,比如我们PV604 PV606就是烟气分析仪,只不过没有专门的名字。目前来说,烟气分析仪我们了解的不够深入,所以没有大力气推广他。

客户说:德图的340太贵了,听其他人说国内的烟气分析仪都不怎么好,但是听大学的人说你们日科有多合一气体检测仪,所以问问,我们后期这个量很大,如果你们的和德图的340一样好,那就以后都用你们的,还帮你在山东推荐。

我说:是的,德图做这个还是很厉害的,我们国内很多企业做多合一泵吸式气体仪器做的都不怎么样,但是我们公司的仪器内部结构还是比较优秀的,特别是气罩的设计非常有利于响应速度。那这样,我做一台给您,您和您的德图340对比对比,好用就用,不好用就退给我们。



烟气分析仪CEMS我们没有深入研究过他,主要里面有些NOx计算和折算什么来的,听着显得很复杂。既然客户要,而且他能拿他去和德图的比较,那就趁这个契机深入了解一下。

我们的基础:仪器已经支持多合一,可以安装6个气体电化学传感器,比如O2氧气、CO一氧化碳、CO2二氧化碳、SO2二氧化硫、NO一氧化氮、NO2二氧化氮,并且仪器上可以设置公式NOx=NO+NO2(事实上这个在中国是错误的),可以设置每个气体的mg/m3转换系数,有曲线图等等,我们也有烟气高温环境用的降温探杆和除水器。所以做起来应该没那么难。

待解决的问题:

1. NOx到底怎么得来的: 因为曾经有个客户说我们的NOx公式好像不太对,不应该是NO+NO2,好像需要折算系数.

2. 折算系数 含氧量啥的.

--------------------------------------------------------------------------------

解决问题:

去百度搜索烟气分析仪的NOX是如何计算的, 好在居然搜索到了相关文章(环保局的).

国家环保总局环函[2004]273号: NOx= NO x (46/30)+ NO2 ;  其中PPM转mg/m3, 用分子量除以22.4即可.

但是大家看一下下列截图:

来源:http://wenku.baidu.com/link?url=az14HzejV7XSPSG-XVLISy7EzlFUnFb4B9Joe9WtS8svAa7lO0HHt8qYzywxCtWwZqYMnO4kHviL8k4ZU1Dmcs5Mi3aQCK3TT1uUOqTxYUO&qq-pf-to=pcqq.c2c

可以这么理解:

1. 市面上很多仪器都只支持一个传感器,那么就会出现他们要么安装NO,要么安装NO2,但是烟气里面主要是NO。所以只能用NO的mg/m3值 X 1.5333

2. 有些仪器不能安装多个传感器,比如O2氧气,那么将无法使用折算系数。

3. 德图350和我们一样,有NO和NO2传感器,根据国外使用的ppm单位,那么NOx= NO+NO2,这也是我们早期的理解,但是他并不符合国家环保局的文件要求。

所以我们在仪器上修改一下公式计算方法就好了:

($id04$ * 1.5333 * (21 / (21-$id01$)) /1.91)  + $id05$

其中:$id01$ 是氧气值, $id04$是NO值,  $id05$是NO2值.

对于其他的计算, 比如排放量,或者不是标准的含氧量, 我们的仪器还可以自己定义公式. 在检测界面打开计算器, 然后从传感器读取数据,自己输入一些环境参数(比如横截面积), 即可完成计算.

当然: 烟气分析仪最重要的还有个就是: 降温除水!  

  

时间: 2024-08-03 10:23:32

【图文】CEMS烟气分析仪中氮氧化物NOx的计算方法(含氧量折算法)国家环保总局环函[2004]273号的相关文章

图文详解Unity3D中Material的Tiling和Offset是怎么回事

图文详解Unity3D中Material的Tiling和Offset是怎么回事 Tiling和Offset概述 Tiling表示UV坐标的缩放倍数,Offset表示UV坐标的起始位置. 这样说当然是隔靴搔痒. 下面用*.3ds文件作为模型,介绍Tiling和Offset到底是怎么回事. 3DS格式解析 比如我有这样一个tank_player.3ds模型.右侧的'select'处的图片就是贴图. *.3ds文件最基本的内容包括顶点列表Vertices.贴图坐标列表UVs.面列表Faces.其中Ve

Direct3D中常用的数学计算方法

Direct3D中常用的数学计算方法总结 FLOAT D3DXVec3Length(CONST D3DXVECTOR3* pV) D3DXVECTOR3* WINAPI D3DXVec3Normalize(D3DXVECTOR3* pOut,CONST D3DXVECTOR3* pV) FLOAT D3DXVec3Dot(CONST D3DXVECTOR3* pV1,CONST D3DXVECTOR3* pV2) D3DXVECTOR3* D3DXVec3Cross(D3DXVECTOR3* p

图文介绍MyEclipse (2015) 中创建简单的Maven项目的步骤(用于生成可运行jar文件)

利用MyEclipse的引导,能够非常方便的创建简单的.用于生成可运行jar文件的Maven项目: (原创文章,转载请注明转自Clement-Xu的博客:http://blog.csdn.net/clementad/article/details/46954277) 1.New -> Project... 选择 Maven Project, 点击Next > 2.在Select projrect name and location界面,各选项例如以下图,点击Next > 3.在Selec

图文详解MyEclipse中新建Maven webapp项目的步骤

MyEclipse中创建新的Maven项目(webapp目录结构)过程如下: 1. New -> Project... -> Maven Project 2. Next, 3. Next, 选择“maven-archetype-webapp”创建一个webapp目录结构的项目 4. 填Group Id,Artifact Id,和Package(请参考后面的“关键词”),点击“Finish” 5. 休息片刻,等待MyEclipse创建项目 创建完成后,文件目录结构如下: 6. (如果不喜欢现在的

(转)图文详解MyEclipse中新建Maven webapp项目的步骤

转:https://blog.csdn.net/ClementAD/article/details/46592557 MyEclipse中创建新的Maven项目(webapp目录结构)过程如下: 1. New -> Project... -> Maven Project 2. Next, 3. Next, 选择“maven-archetype-webapp”创建一个webapp目录结构的项目 4. 填Group Id,Artifact Id,和Package(请参考后面的“关键词”),点击“F

C语言在linux内核中do while(0)妙用之法

为什么说do while(0) 妙?因为它的确就是妙,而且在linux内核中实现是相当的妙,我们来看看内核中的相关代码: #define db_error(fmt, ...) do { fprintf(stderr, "(error): "); fprintf(stderr, fmt, ##__VA_ARGS__); } while (0) 这只是个普通的调试信息的输出,有人便会认为,你这不是多此一举吗?去掉do while(0)不一样也实现了吗?其实不然,我们看看例子就清楚了,尽管很

Python中参数多个值的表示法

今天在写Python脚本时,调用了数据管理-制图综合-融合工具,在ArcGIS里操作的参数设置如下: 如果融合字段只有一个那好办,如果融合字段有多个我该怎么表达,查看帮助文档中的示例代码明白了: 所以,我这里获取所有字段,剔除不需要的FID.OBJECTID.SHAPE.HAPE_LENGTH和SHAPE_AREA等,用字符串操作函数得到:["NAME","CODE"] 这样输入应该没有问题的,哪知居然报错,说找不到["NAME","C

PS中图层混合模式的计算方法

https://zhuanlan.zhihu.com/p/23905865 长久以来一直用中文版本的PS,对于软件中的一些专业名字都是顾名思义,容易误入歧途,但当你真正看到英文版本的名字的时候才有豁然开朗的感觉. 比如,正片叠底这个术语,是啥意思?对应的英文竟然是multiple,相乘,意思是把两个像素相乘之后得到一个新的像素,这效果就是正片叠底,很简单.

数据结构:链表 >> 链表按结点中第j个数据属性排序(冒泡排序法)

创建结点类,链表类,测试类 1 import java.lang.Object; 2 //结点node=数据date+指针pointer 3 public class Node { 4 Object iprop; 5 public Object getIprop(int i){ 6 switch(i){ 7 case 1:iprop=num;break; 8 case 2:iprop=name;break; 9 case 3:iprop=score;break; 10 } 11 return i