李致金,李 峰,唐伟伟,杨金虎
(南京信息工程大学 电子与信息工程学院,江苏 南京 210044)
在中国,每年由于酒后驾车引发的交通事故达数万起,而造成死亡的事故中50%以上都与酒后驾车有关,酒后驾车的危害触目惊心,已经成为交通事故的第一大“杀手”,而酒后驾驶者往往存在“侥幸心理”,认识不到酒后驾驶的严重后果,发生很多侥幸酒后驾驶造成的惨剧。随着中国经济的腾飞,汽车变得越来越普遍,解决酒后驾车的问题也变得迫在眉睫。
目前主要的防控手段是通过外置的酒精仪器测试驾车人的酒精含量是否超标,由于没有安装在车内,总会有人酒后驾车而不能被发现,所以不能有效减少酒后驾车的现象。而之前设计的车载酒精检测系统由于过于单一[1],导致测量结果不太准确。
鉴于此设计这种车载酒精浓度在线测控系统,由于采用多个传感器检测,能有效检测车内的酒精浓度,同时通过无线传输数据,非常有利于在车上的装载。
该系统由3个发射机和一个接收机,其中3个发射机分别放在驾驶员区(主驾驶员的方向盘中间处,称为A区),副驾驶区(称为B区),和两个位置的中间(成为C区)。发射机以STM32F103为控制核心,由传感器采集系统、模式转换电路、无线信号发射电路组成。接收机以STM32F103为控制核心,由无线信号接收电路、语音报警电路等部分组成。系统框图如图1所示。
图1 系统结构框图Fig.1 Block diagram of system
当司机发动汽车时,系统启动,此时发动机处于被锁状态,汽车无法启动。3个酒精传感器加热后,3个发射机对酒精进行检测,由于酒精含量与酒精传感器检测后产生的电压信号成特定的比例关系,因而可根据电压信号酒精含量的判断。检测到的信号经过调零和放大后,通过微处理器内部AD转换为数字信号,由微处理器对此酒精信号进行处理,由无线模块发送给接收机,每500 ms发送一次。接收机对3个传感器发送的酒精浓度信号进行处理和判断。假设驾驶员酒精含量超标,同时车不在行驶中,则进行声音报警,控制继电器切断汽车制动系统里点火装置的电源,驾驶人员无法启动汽车。若汽车在行驶中检测到酒精含量超标,则一分钟后控制继电器切断点火装置电源,并且进行声音报警。若驾驶员酒精含量不超标,则继电器不起作用,车可以正常启动和行驶。
STM32F103RBT6是基于Cortex-M3内核的是新型的32位嵌入式微处理器[2],STM32F103系列的微处理器,有多达51个快速I/O端口,所有I/O口均可以映像到16个外部中断,几乎所有端口都允许5 V信号输入;每个端口都可以由软件配置成输出(推挽或开漏)、输入(带或不带上拉或下拉)或其他的外设功能口;内部有2个12位模数转换器,多达16个外部输入通道,其转换速率可达到1 MHz,转换范围为0~36 V,具有双采样和保持功能;内部包含多达7个定时器。它拥有非常高的性能和极低的中断延迟,在汽车电子中有着重要应用。
本设计选用STM32F103RBT6为主控芯片。在发射机处,微处理器通过控制内部自带的AD转换器把酒精传感器经过调理电路后的模拟量转为数字量,然后控制无线发射模块向接收机发射数字信号。在接收机处,微处理器控制无线接收模块接收三个位置的酒精浓度信号,经过软件处理,控制声音报警模块和汽车制动系统处的继电器。
信号的采样模块电路[3]如图2所示。MQ-3的加热电阻两端即5引脚接至+5 V直流稳压电源,用于对敏感体电阻的加热。MQ-3的两个A引脚(即4和6引脚)相连,MQ-3的两个B引脚(即3和1引脚)也连接在一起,将A端接到2.5 V的电源正极,B端接200 kΩ电阻。
图2 信号调理电路Fig.2 Signal condition circut
MQ-3型气敏传感器[4]与200 KΩ电阻串联构成分压电路,采样点为电阻的分压。MQ-3型气敏传感器的敏感部分是由金属氧化物SnO2的N型半导体微晶烧结层构成。当其表面吸附气体酒精分子时,它表面的导电电子比例会发生变化,从而表面电阻会因为被测气体浓度的变化而变化。当气敏传感器的敏感体电阻阻值发生变化时,对应的电阻两端的分压值也会发生相应的改变,即一个电压值对应着一个被测酒精气体浓度。对酒精气体浓度的采样就可以转化为对电阻两端电压的采样,实验时在试管中配置酒精水溶液r封存一段时间用来模拟呼出的酒精气体。
在采样硬件电路中考虑到MQ-3的实际技术参数,即加热电阻和敏感体电阻的大小,该部分应与2.5 V的电源正极相连。因为实验所用的MQ-3通过预热3~5 min,它的敏感体电阻为120 kΩ,所以负载电阻选用200 kΩ的电阻,构成采样部分的分压电阻。
LM324[6]是一个集成了4个通用运放放大器的集成芯片,这里使用了其中的3个运放。
采样的电压先通过一个电压跟随器,再经过一个运放调零,然后通过运放放大成0~3.6 V,使输出电压范围控制在微处理器内部AD转换器的输入电压范围内。
声音报警电路采用芯片ISD4004[7]。
ISD4004系列工作电压3 V,单片录放时间8~16 min,音质好,适用于移动电话及其他便携式电子产品中。芯片采用CMOS技术,内部含有振荡器、防混淆滤波器、平滑滤波器、音频放大器、自动静噪及高密度多电平闪烁存贮陈列。芯片设计是基于所有操作必须由微控制器控制,操作命令可通过串行通信接口(SPI或Microwire)送入。芯片采用多电平直接模拟量存储技术,每个采样值直接存贮在片内闪烁存贮器中,因此能够非常真实、自然地再现语音、音乐、音调和效果声,避免了一般固体录音电路因量化和压缩造成的量化噪声和“金属声”。片内信息存于闪烁存贮器中,可在断电情况下保存100年(典型值),反复录音10万次。
把所要播放的报警录音通过电脑合成软件合成两种语音:1“请尊重生命,杜绝酒后驾驶”,2“警告:你已经酒后驾驶,车将在一分钟后自动停止”,分别从两个语音地址把声音录入语音芯片中,根据语音地址的不同即可播放两种语音。此芯片的SS脚、MOSI脚、SCLK脚分别与微处理器的PA1、PA2、PA3相连。具体实现电路如图3所示。
2.4.1 无线传输电路1
此电路选用NRF24L01[8]作为核心芯片,实现传送酒精浓度数据的功能。此芯片是NORDIC公司生产的一款无线通信芯片,使用2.4G全球开放的ISM频段,采用FSK调制,抗干扰能力强。可以实现点对点或是1对6的无线通信,无线通信速度可以达到2 Mbps。车内3个不同位置的发射机选用不同的发射地址,接收机使用3个无线通道接收各个位置的酒精浓度(数字信号),送给微处理器处理和判断。无线传输电路1具体实现如图4所示,其中NRF芯片的CE脚、CSN脚、SCK脚、MOSI脚、MISO脚、IRQ脚分别于微处理器的 PA4、PC4、PA5、PA7、PA6、PC5 脚相连。
图3 声音报警电路Fig.3 Audible alarm circuit
图4 无线传输电路1Fig.4 Wireless transmission circuit 1
2.4.2 无线传输电路2
此电路选用PT2262/PT2272作为核心芯片[9],实现传输信号控制汽车点火装置处的继电器通断的功能。这是一对带地址、数据编码功能的无线遥控发射/接收芯片,其中PT2262为发射芯片,PT2272为接收芯片。PT2262/PT2272最多可有12位(A0-A11)三态地址端管脚(悬空,接高电平,接低电平),任意组合可提供531441地址码,PT2262最多可有6位(D0-D5)数据端管脚,设定的地址码和数据码从17脚串行输出,可用于无线遥控发射电路。解码芯片PT2272接收到信号后,其地址码经过两次比较核对后,VT脚才输出高电平,与此同时相应的数据脚也输出高电平。PT2262的2脚到8脚作为地址码,PT2262的11脚D0与微处理器的PB0相连,作为发送的数据端。PT2272的2脚到8脚作为地址码与PT2262相同,PT2272的11脚D0与控制汽车的点火装置的继电器相连。
AD转换:这里使用STM32F103RBT6内部的ADC,它是一种12位逐次逼近型的模拟数字转换器[2],它的AD最大转换速率为1 MHZ,ADC转换分为2个通道组:规则通道组和注入通道组。规则通道组相当于正常的程序,而注入通道相当于中断。规则通道组最多包含16个转换,注入通道组最多包含4个通道,可以进行很多种不同的转换模式。本次设计根据实际需要,使用规则通道组的单次转换模式。将信号调理电路输出的模拟电压与PA0相连,设置PA0为模拟输入,每隔500 ms读取AD转换输出的数值,送给微处理器处理。
判断汽车行驶状态电路:采用霍尔元件A3144[10],霍尔传感器是对磁敏感的传感元件,使用霍尔传感器可以获得脉冲信号,其机械结构较为简单,只要在转轴的圆周上粘上一粒磁钢,让霍尔开关靠近磁钢,就有信号输出,转轴旋转时,就会不断地产生脉冲信号输出。如果在圆周上粘上多粒磁钢,可以实现旋转一周,获得多个脉冲输出,以此就能够判断汽车是否处于行驶状态。显然,如果没有信号输出,则可判断汽车处于停止状态。
软件部分根据系统功能进行模块化编程。系统发射机主程序流程图如图5所示,系统初始化,对酒精传感器进行加热,然后采集酒精含量电压信号,并每隔500 ms发射给接收机。
图5 发射机流程图Fig.5 Flow chart of transmitter
接收机主程序流程图如图6所示,微处理器接收3个位置的酒精浓度信号,然后进行数据融合,可以认为酒驾的情况如下:1)A区的酒精浓度超标,且A>C>B(A区的酒精浓度大于C区的酒精浓度大于B区的酒精浓度),这是只有驾驶员喝酒的情况;2)A区的酒精浓度超标,B区的酒精浓度超标,且A>C,B>C(A区的酒精浓度和B区的酒精浓度都大于C区的酒精浓度),这是驾驶员和副驾驶都喝酒的情况。不认为酒驾的情况如下:1)A区的酒精浓度超标,但B>C>A,这是副驾驶喝酒而驾驶员没有酒驾的情况;2)A区的酒精浓度不超标。
若系统认为驾驶员酒驾,且车刚启动,则接收机发射无线控制信号,控制切断点火电路并发出声音报警1:“请尊重生命,杜绝酒后驾驶”,驾驶人员不能发动汽车;如果系统检测到车已经行驶,则在一分钟后切断汽车发动机的点火电路并发出声音报警2:“警告:你已经酒后驾驶,车将在一分钟后自动停止”。若系统不认为酒驾,则车可以正常启动和正常行驶。
图6 接收机流程图Fig.6 Flow chart of receiver
车载酒精在线测控系统是为预防交通事故发生情况而设计的。文中通过对各个电路功能及软件工作流程的阐述,对整个系统进行了介绍。由于本系统采用多传感器和无线传输数据,可以准确测量和方便安装在汽车上,智能化程度高,功耗低,可靠性高,对预防酒后驾车具有良好的效果,在实际应用中具有很好的推广价值。
[1]卢玲,胡记文,徐亮.基于酒精含量测量检测的车辆限制启动系统[J].民营科技,2010(11):17.
LU Ling,HU Ji-wen,XU Liang.Vehicle start system based on the alcoholconcentration [J].PrivateScience and Technology,2010(11):17.
[2]刘军.例说STM32[M].北京:北京航空航天大学出版社,2011.
[3]谭秋林,许姣,薛晨阳,等.基于C8051F040酒精浓度测试仪的研究[J].传感器技术学报,2009,22(10):78-80.
TAN Qiu-lin,XU Jiao,XUE Chen-yang,etal.Alcohol concentration testerbased on C8051F040 [J].Sersor Technology,2009,22(10):78-80.
[4]潘祖军,朱文胜,岳睿.汽车用酒精传感器的分析[J].汽车电子,2007(1):39-41.
PAN Zu-jun,ZHU Wen-sheng,YUE Rui.Analysis of alcohol sensor on the car[J].Automotive Electronics,2007(1):39-41.
[5]陈成新.一种校准呼气酒精测试仪的新方法 [J].计量学报,2006,27(2):172-174.
CHEN Cheng-xin.A new method of calibrating of breath alcohol tester[J].Acta Metrologica-Sinica,2006,27(2):172-174.
[6]李朔,董轶远.基于CSM020B和LM324的过流报警装置设计[J].现代电子技术,2011,34(24):63-65.
LI Shuo,DONG Yi-yuan.A design of overcurrent alarm device based on CSM020B and LM324[J].Modern Electronic Technology,2011,34(24):63-65.
[7]姚慧,来跃深,田军委.ISD4004语音芯片在淋浴车语音提示报警系统中的应用 [J].现代电子技术,2005,23(214):60-61.
YAO Hui,LAI Yue-shen,TIAN Jun-wei.An application of ISD4004 on shower car voice alarm system [J].Modern Electronic Technology,2005,23(214):60-61.
[8]潘勇,管学奎,赵瑞.基于NRF24L01的智能无线温度测量系统设计[J].电子测量技术,2010,33(2):120-122.
PAN Yong,GUAN Xue-gui,ZHAO Rui.Smartwireless temperature measurement system based on NRF24L01[J].Electronic Measurement Technology,2010,33(2):120-122.
[9]杨庆.基于PT2262/2272的输液报警系统 [J].山西电子技术,2007(6):13-14.
YANG Qing.Transfusion alarm system base on PT2262/2272[J].Shanxi Electronic Technology,2007(6):13-14.
[10]何立周,汪松年.一个使用霍尔元件的测速系统[J].工业控制计算机,1991(4):45-46.
HE Li-zhou,WANG Song-nian.A velocimetry system based on hall element[J].Industrial Control Computer,1991 (4):45-46.