北京乐氏联创科技有限公司

基于ARM的烟气分析仪的研制与开发

为了满足我国日益严格的烟气排放监测要求,基于自身在电力环保领域的技术积累和丰富经验,国电科学技术研究院(国电环境保护研究院)于2009年11月2日对固定污染源烟气(SO2、NOX、烟尘)排放DOAS法直接测量技术研究及系统研制项目予以正式立项,目的在于研制出可广泛应用于火力发电厂、各种工业窑炉锅炉、垃圾焚烧厂等场合的更高性能的烟气浓度直接测量仪器。烟气分析仪就是在这样的背景下产生的,它的基本构成就是数据采集系统。

数据采集系统是计算机在工业控制系统中最为普遍的应用系统。在生产工程中,应用这一系统可对生产现场的工艺参数进行采集、监视和记录,为提高产品质量、降低成本提供信息和手段。在科学研究中,应用数据采集系统可获得大量的动态信息,是研究瞬间物理工程的有力工具,也是获取科学奥秘的重要手段之一。总之,不论在哪个应用领域中,数据采集与处理越及时,工作效率就越高,取得的经济效益就越大。

1 烟气分析仪原理

本系统分为下位机和上位机两部分。

下位机主要完成信号的采集与传输功能;上位机主要完成信号的分析处理与存储功能。

下位机需要采集温度、湿度、浓度等各种量。传感器的标准输入信号为4-20MA的电流信号。通过A/D转换,转变为数字信号。经过ARM处理器LPC2103的分析处理,在液晶屏上显示。通过RS232串行接口与上位机进行通信[1]。

上位机通过RS232接口接收下位机传来的数据,通过VB编程实现数据的处理与存储功能。

系统框图如图1所示:

2 系统硬件设计

烟气分析仪的硬件包括处理器模块、温度测量模块、湿度测量模块、浓度测量模块、液晶显示模块。

本设计采用的处理器为ARM7系列的LPC2103,它是一个支持实时仿真的16/32位ARM7 TDMI-S CPU的微控制器,并带有8kB,16kB或32kB嵌入的高速Flash存储器。128位宽度的存储器接口和独特的加速结构使32位代码能够在最大时钟速率下运行。较小的封装和很低的功耗使LPC2103特别适用于访问控制和POS机等小型应用中[2]。

本系统所用的液晶显示屏CM12864-2是一种图形点阵液晶显示器,它主要由行驱动器/列驱动器及128×64全点阵液晶显示器组成。可完成图形显示,也可以显示8×4个(16×16点阵)汉字。

本系统所用的湿度传感器DHT11是一款含有已校准数字信号输出的温湿度复合传感器。它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性与卓越的长期稳定性。单线制串行接口,使系统集成变得简易快捷。超小的体积、极低的功耗,信号传输距离可达20米以上,使其成为各类应用甚至最为苛刻的应用场合的最佳选择。产品为4针单排引脚封装[3]。

本系统所用的热电偶是一种感温元件,是一种仪表。它直接测量温度,并把温度信号转换成热电动势信号,通过电气仪表(二次仪表)转换成被测介质的温度[4]。

K型热电偶可以直接测量各种生产中从0℃到1300℃范围的液体蒸汽和气体介质以及固体的表面温度。K型热电偶通常由感温元件、安装固定装置和接线盒等主要部件组成。

烟气浓度传感器输入的是标准的4-20MA电流信号,通过A/D转换,转变为数字信号。

3 系统软件设计

系统软件流程图如图2所示:

在测量时,LPC2103发送一次开始信号后,DHT11从低功耗模式转换到高速模式,等待主机开始信号结束后,DHT11发送响应信号,送出40bit的数据,并触发一次信号采集,用户可选择读取部分数据。从模式下,DHT11接收到开始信号触发一次温湿度采集,如果没有接收到主机发送开始信号,DHT11不会主动进行温湿度采集。采集数据后转换到低速模式。

进行温度和湿度的测量时,由传感器输入的标准4-20MA电流信号,通过150欧姆的电阻,转变为0.6-3V的电压信号。LPC2103通过A/D转换功能转变成数字信号。

下位机与上位机通信通过RS232串行接口进行连接。上位机采用VB进行编程。

在VB6.0编程环境下,新建工程并引用MSComm控件,在窗体中添加所需控件,构建一个合理的收发界面。在窗体中还需要添加以下几个基本控件[5]:

1)MSComm控件,主要用于软件对串口的访问。

2)定时器控件,用于使PC机定时向下位机发送命令,使其定时回传实时数据。

3)非周期命令发送按钮,用于非周期性指令的传送启动。

4)数据保存按钮,用于将采集到数据保存为文本文件,便于数据处理。

5)用于接收数据和发送数据的文本框。

利用MSComm控件实现计算机通信的关键是理解并正确设置MSComm控件众多属性和方法。以下是MSComm控件的常用属性和方法:

Commport:设置或返回串口号,类型short。

Settings:以字符串的形式设置或返回串口通信参数。

Portopen:设置或返回串口状态。

InputMode:设置或返回接收数据的类型。

Inputlen:设置或返回一次从接收缓冲区中读取字节数,类型short。

Input:从接收缓冲区中读取数据并清空该缓冲区,该属性设计时无效,运行时只读。

Output:向发送缓冲区发送数据,该属性设计时无效,运行时只读。

Rthreshold:当接收缓冲区中字符数达到该值时,MSComm控件设置Commevent属性为ComEvRe-ceive,并产生OnComm事件。

Sthreshold:当发送缓冲区中字符数小于该值时,MSComm控件设置Commevent属性为ComEvSend,并产生OnComm事件。若Sthreshold属性设置为0,则不产生OnComm事件。

CommEvent:串口事件,该属性设计时无效,运行时只读。一旦串口发生通信事件或产生错误,依据产生的事件和错误,MSComm控件为CommEvent属性赋不同的代码,同时产生OnComm事件。用户程序就可在OnComm事件处理程序中针对不同的代码,进行相应的处理。

4 总结

本文设计的基于ARM的烟气分析仪,采用高速嵌入式CPU做为核心模块,具有很高的模块化程度和可扩展性,并极大地提高了系统的稳定性与准确性。该系统已调试通过,运行正常。适用于火力发电厂、各种工业窑炉锅炉、垃圾焚烧厂等场合的更高性能的烟气浓度直接测量等领域,因此具有广阔的应用前景。


Tags: