NDIR红外气体探测器的嵌入式软件设计研究

(整期优先)网络出版时间:2023-12-15
/ 2

NDIR红外气体探测器的嵌入式软件设计研究

黎东恒

广州南方测绘科技股份有限公司       510000

摘要:NDIR红外气体探测器作为一种新型气体探测器具有寿命长、性能优越的特点,而为了保证NDIR红外气体探测器运行的稳定性,在对嵌入式软件进行设计过程中,基于光谱吸收原理和气体浓度原理对光路、接收电路以及输出电路进行设计,并通过对信号的处理采集完善软件设计框架,并在各模块设计完成后,对该应用软件进行测试,及时改进存在的问题。

关键词:NDIR红外气体;探测器;嵌入式软件

引言:在石油化工行业会产生大量常见的可燃气体如甲烷、乙烷等,而随着储存该气体设备设施腐蚀现象的加重,会导致该类气体面临泄露的风险,进而引发爆炸事故。为此,为实现对该类气体的探测和浓度报警,选择采用新型的NDIR红外气体探测器,以便能够在最短时间内探测气体泄露情况,保证石油化工行业生产活动的安全性。

  1. NDIR红外气体探测器嵌入式软件设计流程

对NDIR红外气体探测器的嵌入式软件进行设计,需要基于气体浓度原理和光谱吸收原理,并对光路、输出电路等进行规划,以便提升NDIR红外气体探测器的性能,满足气体探测的要求。

1.1光谱吸收原理和气体浓度原理

光谱学理论是NDIR红外气体探测器运行的基础理论,在其系统进行设计的过程中,主要基于光谱学理论中对气体与红外线之间关系的认定。根据光谱学理论可知,气体具备吸收红外光的能力,能够将红外光中的光能量转化为分子,形成振动和转动能力,为后续吸收奠定基础。但是在吸收过程中,气体分子只能吸收正好等于能级之差的能量,这也就说明气体会吸收不同频率的分子,而NDIR红外气体探测器的嵌入式软件就是在该原理下进行设计的[1]。另外,根据气体浓度原理,在对其进行设计过程中,利用了不同气体中红外波段的不同特征,气体本身浓度越高,能够吸收的红外光强度越大。

气体通过连续的红外光谱会导致特定频率光的吸收效果减弱,传感器在此时检测到的光强度也会减弱,为此在后续设计中,需利用传感器的电信号探测气体浓度。

1.2光路设计

在进行光路设计过程中,主要采用单光源和单探测器的对射方式。利用准直透镜吸收红外光源转换成平行光,借此加热光源探测器,直接将光源传输至接收终端,以此探测气体浓度信号的大小。基于上述原理,在对系统光路设计时,通过在气室两侧安装视窗提高探测器的透光率,隔离接收终端,以便气体直接进入探测器,不再经过接收终端。

1.3接收电路设计

在选择探测器的过程中,考虑到需要在探测器5μm的红外信号外预留出范围较广的探测域,提升探测器的反应速度,能够在对气体进行探测的过程中保持良好的温度特性,在进行设计时,利用光传导效应将光直接打到探测器上,进而影响探测器阻值的变化。光强度与阻值之间呈反比关系,随着光强度的增加,探测器的阻值会逐渐降低,一旦发现探测器阻值变化就可知光的强度变化。

1.4信号处理及采集

传感器信号是模拟信号,在设计时需要用ADC进行模数转换,即把模拟信号转换成数字信号,最终再由微处理器进行采集读取。微处理器采用32位的STM32单片机,由于STM32单片机内部集成了ADC功能,电路设计上可以不需要外挂ADC芯片进行转换。对于传感器信号的处理,电路设计方面需要使用前级放大电路和带通滤波电路,前级放大电路是把信号进一步放大,带通电路是用于滤除毛刺,为了保证探测器能精确的采集到传感器信号,传感器信号经过放大滤波后还需要经过电压跟随器,电压跟随器作用是匹配阻抗,防止因阻抗不匹配造成单片机采集到的信号不准。待微处理器采集到数据并进行软件滤波后和峰值处理后,就可以利用算法对气体进行最后的浓度测算,最终完成传感器信号的采集。

1.5输出电路设计

在对输出电路进行设计过程中,采用了工业领域常用的20mA输出电路,用以连接探测器的控制器,以便提升气体浓度探测数值的直观性。并且,在设计输出电路的过程中,还利用上位机检测仪器参数,将其调节至探测器要求的设备参数,待对数据采样后再进行观察。

1.6软件设计

软件设计的关键在于主处理器单片机程序的设计,采用C语言编程。首先,构建嵌入式软件框架图,大体可将其分为主控层、组件层和驱动层三部分。初始化、系统自检以及主流程模块组成主控层。初始化,主要负责信号采集、信号处理,待至自检系统完成后,会进入到主流程模块,经由前台处理程序的串联中断完成对信号的处理。组件层则是由诸多子模块组成,每个子模块都是独立的功能模块,在对其划分的过程中,依靠功能特性对其进行连接,以便其既可独立使用,又可组合使用。例如,光驱动管理模块,通过对通讯信号的接收、解析,研究光的PWM波形,而加热棒驱动管理模块则主要掌管热量的产生频率、占比空间,以便在监测到异常情况后,立即关闭驱动加热棒[2]。驱动层可以分为两个级别,一是项目级,另一个是芯片级。组件层的各个组件,负责驱动和封装芯片级。芯片级则可划分为内驱动和外驱动两个级别,内驱动和外驱动具有不同的功效,但是在底层驱动运行的过程中,可以实现在项目内的共享。

  1. NDIR红外气体探测器嵌入式软件实际应用测试

为保证NDIR红外气体探测器嵌入式软件的实际应用效果,基于上述软件设计方案,对NDIR红外气体探测器进行检测,优化软件性能,以便NDIR红外气体探测器能够快速投入使用。

2.1实验概况

在对嵌入式软件进行验证过程中,部分问题集中在软件和硬件的交联过程,且主要是由各功能算法错误导致的。因此,在对其进行验证时,未免其将这些问题带到后续使用中,利用变量定义类型以及变量正负等实际关系,探究其出现的问题,并对程序进行改进。

2.2问题描述

在对嵌入式软件产品进行实验时发现,软件控制组件接收外部信号时,未能按照预设的程序进行运行,而是在半途出现中断,导致报寄存器错误,影响了其他组件的正常运行。

2.3机理分析

基于上述问题描述,分析控制组件出现的问题,通过对载机数据的获取发现,由于导引头数据出现错误,导致飞行控制组件中断。其中载机数据中还包含了非周期性数据和周期性数据,而出现问题的导引头数据属于周期性数据。终端执行消耗大是载机非周期数据传输中断的原因。导引数据到达时,载机数据已经先于导引数据中断,为此无法实现数据的有效传输,组件只能优先响应载机中断数据,而对导引头数据进行后续处理,由此出现错误现象。

2.4改进措施

为改进载机数据错误,选择对组件算法进行优化设计,并将耗时较多的算法集中在主中断中,以便减少载机数据中断的工作量和载机数据的运行时间。通过检测更改后程序发现,载机数据运行时间远远小于导引头数据,有效解决了载机数据中断以及组件运行中断的问题,且还保证了软件组件的运行效率。

结语:总而言之,在对NDIR红外气体探测器嵌入式软件进行设计过程中,为了能够精准探测气体浓度,确保检测结果达到预期,在进行设计时采用一种单光源单探测器的甲烷气体检测装置,其相较于传统的检测装置能够更为快速响应气体浓度变化,检测气体泄漏情况,具备精度高,使用寿命长等优点,能够在化工以及环保领域得到广泛应用,具有广阔的市场前景。

参考文献:

[1]李浩,张亚琳,关冰.应用以太网总线的嵌入式软件远程升级系统设计及实现[J].微型电脑应用,2022,38(10):189-193.

[2]张萍.嵌入式软件设计实现案例分析[J].电脑编程技巧与维护,2022(05):50-53.