酒精含量检测仪(无线酒精浓度检测仪的研制)

在食品工业、酿酒工业、石油化工和工矿企业、环境检测、公安交通管理、公共事业等国民经济生产和人民工作生活的领域和场合,经常需要检测特定环境中酒精气体的浓度,以保证工厂企业的环境安全和人民生命财产安全[1-4]。比如监测酒精生产车间和石油化工厂的酒精浓度,可以避免工厂火灾爆炸事故的发生;监测工矿企业场所的酒精浓度,可以避免工人酒精中毒等恶性事故;检测驾驶员体内的酒精含量,可以防止驾驶员酒后驾驶,减少恶性交通事故的发生。因此,研制酒精气体浓度检测仪具有非常广阔的现实和潜在的市场需求,意义重大。由于传感器性能、电路设计、数据处理算法等原因,传统酒精气体检测仪存在气体选择性低、抗干扰性能差、智能化程度低、仪器操作复杂、无法实时保存和调整数据等突出问题[3-4]。鉴于此,作者设计开发了无线智能酒精浓度检测仪,弥补了传统酒精检测仪器的缺点和不足。

1系统总体方案

酒精浓度检测仪由发射器和接收器组成,其原理框图分别如图1和图2所示。该变送器主要包括酒精浓度传感器及A/D转换电路、STC90C52RC单片机、浓度阈值设定及声音报警电路、语音播报电路、液晶显示电路和无线收发电路六个部分。接收器由无线收发电路、STC90C52RC单片机、数据接口通信电路和上位机组成。

2系统硬件电路设计

2.1传感器电路和A/D转换电路

TGS2620是日本FIGARO公司生产的半导体气体传感器,可以检测气体中的酒精浓度。具有灵敏度高、功耗低、寿命长、成本低的特点[5-6]。电路连接如图3所示,其中RH为加热器电阻,室温下为83±8ω;RS是传感器电阻,其电阻和还原气体浓度之间的数学关系如下:

通过检测VRL,可以确定气体浓度C。

电路中运算放大器OP07以电压跟随器的形式连接,将传感器与后级电路隔离,减少电源波动和外界因素对采样数据的影响。ICL7660是MAXIM公司生产的一款小功率极性反转电源转换器,用于将+5 V电源转换为-5 V电源,供OP07使用。其中,CC2采用10 μF钽电容,泄漏小,介质损耗低,提高功率转换效率。TLC1549是TI公司生产的10位分辨率逐次逼近型ADC芯片。具有自动采样保持、按比例量程校准转换量程、抗噪声干扰等功能,满量程最大总误差仅为1 LSB。

2.2液晶显示、阈值设定和声音报警电路

16×2字符液晶模块DM-162显示报警阈值和酒精浓度值。为了减少I/O口数量,简化电路结构,采用间接控制(4位数据总线),接口电路如图4上半部分所示。初始化期间,需要写入一个28H指令代码,将8位总线转换为4位数据接口模式。引脚BLA、BLK和VL分别是液晶背光的正极、负极和显示对比度调节端,RS和E分别是寄存器选择端、读/写信号线和使能端。

酒精浓度阈值设置和声音报警电路如图4下部所示。当按下设置键S1时,进入阈值设置界面(初始阈值为500 ppm),然后按下S2或S3键增加或减少阈值,步长为20 ppm。阈值设置后,写入STC90C52RC单片机上5 KB EEPROM的第一个扇区2000H和2001H的地址,这样系统就不需要复位了。如果酒精浓度值大于阈值,将P0.7口线设置为低电平,三极管8550驱动蜂鸣器报警。

2.3语音广播电路

使用华邦公司的ISD2560语音录放集成芯片播放酒精浓度值,电路如图5所示。麦克风以差分方式连接到片内前置放大器的MIC端和MIC REF端,以消除噪声并提高输入* * *模式抑制比。扬声器采用双端输出的形式连接,输出功率是单端使用的4倍。单片机的P2口、P3.0口和P3.1口线分别与地址线A0~A9相连,用于设置ISD2560芯片的480 KB EEPROM中存储的语音段的起始地址(地址为0H~257H)。记录和回放功能都从这个起始地址开始,并且在记录过程中信息段的地址自动增加。本系统需要在ISD2560中输入的语音信息包括:当前酒精浓度值为“零”、“一”、“二”、“三”、“四”、“五”、“六”、“七”、“八”、“九”、“十”、“百”。由于ISD2560的语音录放时间为60 s,按每秒3个汉字计算,可录放180个汉字,满足广播要求。另外,ISD2560的工作模式[7-8](地址:300H~3FFH)可以通过P3.0、P3.1、P2.0~P2.6端口进行配置。P3.4~P3.6端口分别用于控制芯片选择、芯片切换和录音/放音模式选择。P3.2端口用于判断芯片的存储空间是否已满或信息存储是否溢出。因为在记录期间标记被自动插入到每个信息段的末尾,所以当回放遇到标记时,产生宽度约为12.5 ms的负脉冲。在播放另一段录音之前,使用P3.3端口检测此脉冲的上升沿,以避免不连续的语音播放。

2.4无线收发器电路

系统采用NORDIC公司生产的工作在2.4 ~ 2.483 5 GHz ISM频段的单片无线收发芯片nRF24L01,完成无线数据的发送和接收。nRF24L01的最高传输速率为2 Mb/s,电路如图6所示。稳压芯片LM1117-3.3 V将5 V输入电压转换成3.3 V给nRF24L01供电。nRF24L01与MCU的接口为四线SPI,管脚CSN、SCK、MOSI和MISO分别为SPI的片选使能线、时钟线、数据输入线和数据输出线。IRQ是一条中断信号线(低电平有效),连接到单片机的外部中断引脚。单片机主要通过这条接口线与nRF24L01进行通信,判断数据接收和数据发送是否完成。CE是芯片的RX/TX模式选择线。IREF是基准电流输入端,通过一个22kω电阻接地。引脚ANT1和ANT2为天线提供平衡的RF输出,通过简单的RF网络匹配电路获得50ω的单端阻抗输出。网络匹配电路防止发射模式中的谐波,并抑制接收模式中的本地振荡泄漏。VDD_PA引脚输出1.8 V的电压,为片内功率放大器供电。

2.5数据接口通信电路

接收端计算机与单片机的通信由串行USB接口集成电路CH340T完成,如图7所示。CH340T支持USB1.1或USB2.0/USB3.0通信,带仿真接口,可升级外设串口设备,支持常用MODEM接触信号,支持IRDA标准SIR红外通信,提供RS23RS48RS422接口等功能。CH340T内置独立的收发缓冲区,支持单工、半双工、全双工异步串行通信,通信波特率为50 b/s ~ 2 MB/s,在图7中,CH340T芯片的发送管脚TXD反接了一个二极管1N4001,防止该管脚向单片机回注入电流;在接收引脚RXD上加一个300ω的限流电阻,防止单片机向CH340T回注电流;从而防止另一个不需要供电的芯片因电流回流而继续工作。

3系统软件设计

3.1下位机的软件设计

下位机的程序开发和调试在Keil μVision4的集成开发环境下进行,包括发射机和接收机的软件设计。

3.1.1发射机的软件设计

发送器的软件流程如图8所示。单片机上电后,系统初始化,完成单片机内部系统变量和TLC154DM-16ISD2560、nRF24L01等外部设备的初始设置。然后延时5分钟左右预热传感器TGS2620,保证传感器正常工作;程序初始化后,系统进入监控状态。如果按下报警阈值设置键,则进入报警限值设置模式;如果按下录制键,则进入录制模式;然后启动A/D转换获取采样数据,经过滤波、标度转换、系统误差修正后得到测量的酒精浓度值。将该值与报警阈值进行比较,如果结果为“大于”或“等于”,则启动蜂鸣器发声程序发出声音报警,提示酒精浓度超标;然后数值实时显示在DM-162液晶模块上;最后,判断回放键是否被按下。如果按下,则根据酒精浓度值在ISD2560中搜索相应语音信息的存储地址并开始播放;回放后,该值由nRF24L01发送方发送给接收方。发送后,收集、显示并发送新一轮酒精浓度数据。

变送器软件采用抗脉冲干扰平均滤波法[9]对A/D采样数据进行预处理。其原理是:连续采样K次,然后将这K个采样数据进行比较,去掉最大值和最小值,计算剩余K-2个数据的算术平均值作为有效采样值。该方法结合了中值滤波法和算术平均滤波法的优点,既能消除脉动性的干扰,又能消除偶发性脉冲干扰引起的采样值偏差。为了加快计算速度,设计数字滤波器时K=10。

为了提高系统的实时性,软件采用分段线性插值法[10-11]进行尺度变换。过程如下:(1)根据传感器TGS2620的标定曲线,将曲线分成非等距段(当曲率变化较大时(轻微),采样点间距较小时(较大)),选取各段的坐标(VRLi,Ci)(I = 0,1,...,m),其中:(2)计算相邻采样点间拟合直线的斜率Ki =(ci+1-ci)/(vrli+1-vrli)(I = 0,1,…,m-1);(3)在片上EEPROM的第二扇区(地址:2200H~23FFH)存储M组坐标数据(VRLi,Ci)和对应的斜率ki;(4)每采集一个电压值VRL,查询EEPROM表,找出VRL所在的区间(VRLi,Ci)~(VRLi+1,Ci+1),取出区间(VRLi,Ci)和ki数据,用线性插值公式C=Ci+ki(VRL-VRLi)计算。

将采集到的n个采样数据(xi,易)代入式(5)得到系数A和B的值,并存储在单片机的存储单元中。在系统测量中,将换算后的酒精浓度测量值X代入误差修正方程y=ax+b,即可得到修正后的酒精浓度值Y,从而消除系统误差。

3.1.2接收机软件设计

接收器MCU的软件流程如图9所示。接收器上电后,程序初始化nRF24L01和串口,然后进入监控场景。当nRF24L01接收到一帧完整的酒精浓度数据后,立即通过串口发送给上位机。接收端单片机与PC机的数据交互采用异步通信方式。独立波特率,串口协议设置为:波特率9 600 b/s,8位数据位,1位停止位,无校验位。

3.2上位机软件设计

上位机用户界面采用通用的基于对象的编程语言Microsoft Visual Basic 6.0开发,实现了酒精浓度数据的接收、显示和存储。软件使用了串行通信控件MSComm。MSComm控件是微软公司提供的用于Windows下串行通信编程的ActiveX控件。通过对该控件的属性和事件进行编程,可以很容易地实现串行通信。串行通信协议与接收端完全相同。上位机软件的程序流程如图10所示。

4系统测试

为了测试本系统的测量性能,用无水酒精和纯净水按一定的体积比配制标准酒精溶液,测试结果见表1。式中:单位ppm=μg/mL代表1 mL酒精溶液中的酒精含量。从测量结果可以看出,测试数据覆盖了传感器的量程,测试的最大相对误差小于2%,优于同类设计产品[3-5]。

为了获得该仪器发射机与接收机之间的最大无错通信距离,在室外进行了nRF24L01的误码率(临界区间)随距离变化的测试实验,结果见表2。其中,每米错误率为10次测试后计算的平均值。可以看出nRF24L01的传输距离可以达到100 m,略高于RFID、ZIGBEE、蓝牙无线通信技术[12]。

5主要技术指标

该仪器的主要技术指标如下:(1)测量范围:50 ~ 5000 ppm;;(2)灵敏度(传感器电阻变化率):0.3 ~ 0.5;(3)测量精度:≤2%;(4)传输距离:≤100m;(5)工作电源:DC+5v;;(6)工作环境温度:-40℃~+70℃;(7)工作环境的相对湿度:0 ~ 85% RH。

6结束语

本文设计开发了一种基于STC90C52RC微控制器、TGS2620酒精传感器和nRF24L01无线通信芯片的酒精浓度检测仪。该仪器已投入成都某小型啤酒厂的实际生产中。现场工作表明,该系统运行正常,工作可靠。该系统具有气体选择性高、灵敏度高、稳定性好、智能化高、通信距离远、功耗低、抗工业干扰能力强、性价比高等优点。该仪器可用于食品加工业、工矿企业、石油化工、环境检测与保护、社会公用事业、高空作业人员、公安交通管理(如酒驾、交警执法)等需要现场检测或无线遥测酒精气体浓度的场合,具有广阔的市场应用前景和较高的推广价值。

参考

李海涛。基于QNX的酒驾远程车载智能监控系统[J].电子技术应用,2014,40 (8): 136-139。

[2]宋晓瑜,高国伟,李石川,等.基于单片机的酒精浓度检测系统的设计[J].传感器世界,2017,23 (8): 18-23。

陆,陶大金。基于单片机的酒精浓度检测仪的设计[J].微型计算机及应用,2014,33 (22): 34-36。

葛宇。基于GPRS/GPS的车载酒精检测控制电路设计[D].南昌:南昌大学,2010。

[5]张哲,金童,陈东会,等.基于空气传感器阵列的电子鼻在牛肉新鲜度检测中的应用[J].仿生工程学报,2008,5(1):67-73。

[6]费加罗集团。TGS传感器的一般信息[EB/OL]。(2008-04-23)[2019-07-03]./2065 438+08 _ 05/d78-ffddd 177 E3 BCA . html

胡世兵、陈

(成都信息工程大学电子工程学院,四川成都610225)