0 引 言
目前气体检测仪的种类很多,一般利用传感器对某一已知气体的浓度的线性响应进行量
的分析。本文介绍的智能气体识别仪是用以识别某气体为何种气体。该检测仪是一种可以模
拟人类思维和判断决策过程的仪器,它可以识别多种气体,必要时还可进行浓度的半定量检
测;具有学习识别新气体的能力;仪器体积小,重量轻,便于携带。
1 仪器的结构及工作原理
智能气体识别仪由手持式检测探头和小型主机两部分组成。检测探头由8个半导体气敏传
感器阵列组成。小型主机由一块核心电路板、SP—15直流稳压电源模块、TPUP—A16S微
型打印机组成。主机长25cm、宽18cm、高13cm,重1.6kg。
该仪器用单片微型计算机对传感器阵列中的各个单元产生的信号进行采集处理,运用模
式识别技术,准确识别多种气体。
选用n个气敏器件组成一个n单元的传感器阵列,若存在某种气体(即模式),则这n个器件
都会产生相应的信号。信号经数值化处理后,成为一个n维数组,则这个n维数组可作为该类
气体的特征矢量。当有m类气体时,传感器阵列中的n个气敏器件都会产生一定的信号,相应
的数值构成一个n×m阶矩阵,对矩阵进行运算处理,再用模式识别技术,就能对被测气体进
行分析和识别。本文采用模式识别中最常用的Knn方法,即最近领域法,其公式为:[1]:

(1)
式中 Xi——为被测气体的特征值;
i——气体模式矢量的维数(i=1,2,……,n);
Aij——标准样本气体的特征值;
j——气体的种类(j=1,2,……,m);
dj——被测气体的特征矢量到第j个标准样本矢量的距离;
Mindj——dj的最小值。
对一种已知的气体(或气味),即前面提到的模式,根据确定的算法和程序,得到一个n维(与
传感器阵列中的传感器数目相同)数组,作为标准样本,存入存贮器中。当有m种气体(或气味)
时,把它们逐一做为标准样本,所有这些标准样本的集合称为标准样本库,为一个n×m阶矩
阵。当对某一未知气体(或气味)进行检测和鉴别时,将得到的数值与标准样本库中的数值比较,
若该数值与某一标准样本的值最接近或相等时,则确定这一未知气体(或气味)就是该标准样本
所代表的气体(或气味)。计算机根据判别的结果,执行相应的程序,实现显示、报警、打印等
识别输出过程。
对金属氧化物半导体气敏器件而言,其电阻与气体浓度的关系用下式表示[2]:
Ri/Roi=Kij(Cj)αij
(2)
式中 Roi——半导体气敏器件i在纯净空气中的阻值;
Ri——器件在气体j浓度为Cj时的阻值;
Kij——与器件的特性有关的常数;
αij——与气体有关的参数。
2 系统硬件的设计
仪器的系统由手持式检测探头、核心电路板、微型打印机和电源4大部分构成(图1)。

图1
2.1 部件的功能与作用
将传感器阵列设计成手持式检测探头,便于灵活、方便地操作。微型打印机用于输出测量
数据。电路部分是以16位单片微型计算机87C196KD为核心设计的[3,4],具有3位液
晶数字显示屏、2路光报警指示灯、1路可控蜂鸣器、2个复用控制键、2路RS—232串行接
口、8路预处理电路接口等。8路模拟信号输入口,最多可处理8个探头。各路模拟信号经过
采样保持电路,由一个10位A/D变换器,将模拟信号变为数字信号,供单片机处理;两路串
行通讯接口,可实现单片机与微型打印机连接及单片机与个人计算机的连接[5]。
2.2 电路的特点
核心电路紧凑简洁,体积小,整个电路被设计在一块8cm×8cm的电路板上,达到了袖
珍化的要求,且功耗低。仪器操作简单,功能齐全,可靠性高;并可根据需要减少传感器阵
列中传感器的个数或改换其它类型的传感器,故可扩性强。硬件成本低,易于推广使用。
3 系统软件的程序设计
3.1 软件程序的设计[6]
系统软件由主控程序及6个过程模块、10个子程序组成,6个模块是:背景测试模块;气
体测试模块;模块1处理模块;模块2处理模块;模块1检测模块;模块2检测模块。10个子
程序是:数字打印子程序;字符打印子程序;八路信号采集子程序;数字信号处理子程序;
报警子程序;模式1样本库子程序;模式2样本库子程序;时间中断子程序;仪器自检子程序
;出错处理子程序。过程模块调用子程序、过程模块间还可以相互嵌套。软件共有16K字节。
主控程序示于图2。

图2
表1 仪器识别气体的试验结果
| 气体种类 |
气体浓度 (mg/m3) |
识别情况 |
| 15S采样 |
60S采样 |
| 1 |
0.04 |
+* |
+ |
| 0.1 |
+ |
+ |
| 1.0 |
+ |
+ |
| 2 |
0.1 |
+ |
+ |
| 0.9 |
+ |
+ |
| 3 |
2.9 |
- |
+ |
| 3.3 |
+ |
+ |
| 4 |
10.0 |
+ |
+ |
| 10.0 |
+ |
+ |
| 30.0 |
+ |
+ |
| 5 |
10.0 |
+ |
+ |
| 10.0 |
- |
|
识别准 确率(%) |
- |
83 |
100 |
* +表示识别正确;-表示识别错误。
3.2 系统软件的特点
软件程序充分发挥和利用了单片机的内部硬件和功能,使仪器的硬件电路大为减少。这也
就减少了硬件出错的可能性,从而确保了整机的高可靠性。
全部软件用PL/M96高级语言编写,具有占用内存小、运行速度快、代码转换效率高、
编程速度快等PL/M语言的全部特点。
软件结构设计采用了面向目标功能的块式结构,层次清晰、可读性好、便于理解。软件
实现了8×m阶矩阵的对数、指数、开方、乘方等复杂的浮点运算,使仪器的运算误差可以忽
略不计。同时实现了一机多种模式识别算法共存的工作方法,增加了仪器的实用性。
4 实验与检测
4.1 制作标准样本库
设定检测探头为8个。分别在气体实验箱中发生气体Ⅰ、Ⅱ、Ⅲ、Ⅳ、Ⅴ,并测定或换算
出它们的浓度。首先测试探头在空气中的数值,得到一个8维数组;经过仪器处理后,可得到
一组8维空间矢量;将其存入仪器的内存中,作为空气的标准样本。再将探头分别置于不同浓
度的上述气体中,在15S、60S时,仪器进行采样处理,得到这5种气体在不同浓度、不同时
间条件下的特征矢量,构成这5种气体在不同浓度下的标准样本库。
4.2 检测未知气体
将探头置于待测气体中,在TEST状态下按执行键,仪器迅速采集数据,得到其特征矢量。
将这一特征矢量与标准样本库中的特征量逐一对比,按欧氏距离分类法,识别气体种类。
实验中对前述5种气体进行了识别,结果列于表1。
这里,是以8单元阵列式传感器和模式识别原理为基础,采用87C196KD单片机为核心
的硬件电路和PL/M96语言编写的结构式软件,成功地实现了对多种气体的识别,识别准确
性高。同时,由于该仪器对气体有其特殊的识别方法,故它可以学习和认识新气体,并对其
进行检测。目前该仪器已成功地应用于有毒气体的识别,以及酒类、香水类的识别。