基于GPRS的智能酒精浓度检测仪设计与应用
2013-12-23卓郑安朱文立
卓郑安,朱文立,黄 敏
(上海工程技术大学电子电气工程学院,上海 201620)
酒驾的最佳判断方法是检查驾驶员血液中的酒精浓度,但现场抽血往往做不到,而事后血检又增加执法时间。简单可行的是检测驾驶员呼气中酒精浓度[1]。一般是先确定酒驾并登记身份信息,再到相关部门查询验证。信息检测或保存若不及时易产生纠纷。
酒驾者的检测装置存在不足:有的是在测试仪主体中安装多个吹气压力或气流感应器,主要检测被测者是否在吹气;有的报警装置安装在汽车表盘内,而酒精测试仪安装在汽车点火开关一侧,要求驾驶者呼气启动汽车,而开启汽车的各项酒精含量指标模糊[2];有的检测仪仅用在酒厂和食品工厂发酵监控等场所[3]。
基于GPRS通信网络的智能呼气酒精浓度检测仪,通过GPRS通信网络与远程主机交互各类数据,无线查询和验证酒驾人身份并实时保存信息,使现场执法更合理公正。装置结构简单、低功耗、易携带,具有较好的应用前景[4]。
1 系统总体设计
基于GPRS通信网络的智能呼气酒精浓度检测系统总体设计框图见图1。系统组成模块有:数据采集模块(气体酒精传感器、键盘)[5];微处理器控制模块(GPRS无线网络模块等);上位机控制模块(监测中心接收到系统通过GPRS通信模块上传的数据,同时也向各分中心发送相应指令);辅助模块(电源模块、蜂鸣器、数据显示器等)。系统主要功能是气体酒精传感器的数据采集和GPRS传输协议的实现。
2 主控电路设计
主控电路中MSP430F149型单片机是控制核心,它将酒精传感器[6]、键盘、蜂鸣器与显示器、GPRS模块等关联在一起。主控电路框图如图2所示[7]。
图1 系统总体设计框图
图2 主控电路框图
根据国家质量监督检验检疫总局发布并实施的《车辆驾驶人员血液、呼气酒精含量阈值与检验标准GB19522—2004》,血液中酒精质量浓度为0.2g/L时,对应的呼气酒精质量浓度为0.909μg/L,是饮酒驾车的临界值;血液中酒精质量浓度为0.8g/L时,对应的呼气酒精质量浓度为363.6μg/L,是醉酒驾车的临界值[8]。半导体型酒精测试仪价格低廉,常用在自我检测、一般定性检测方面[9]。呼气酒精浓度检测器仪作为强制检定计量器具,由法定计量技术机构执行检定[10]。
2.1 数据采集与处理
首先,气体酒精传感器MQ303B 采集信号,通过LM358电压跟随器对传感器和后级电路隔离,而电压跟随器输出端接单片机A0通道,由其内部的12位模数转换器进行AD 转换。其次,采样电压值经过数字均值滤波和限幅滤波后保存在相应数组中。单片机运用查表法,按保存在其内部的国标GB19522—2004方法,将气体酒精浓度换算成血液酒精浓度并在显示器上显示。将采集的信号和阈值比较后,若检测到酒驾(醉驾)时报警器鸣叫,显示器提示交警输入机动车驾驶证号或个人身份证号。最后,单片机将所有数据打包,通过GPRS无线通信网络上传到监测中心保存。
主控电路显示器可以显示GPRS网络信息、呼气者酒精浓度值和键盘输入的机动车驾驶证号或身份证号。
2.2 数据无线传输
GPRS无线网络通信过程需要采用TCP 或UDP方式进行数据传输,因此,选择内嵌TCP/IP协议栈的GPRS模块的SIM300,插入SIM 卡后就能进行GPRS通信。GPRS模块SIM300接线图如图3所示。
GPRS模块SIM300 要用锂电池、镍氢电池或其他外部直流电源供电,电压范围为3.3~4.6V,至少要具有2A 峰值电流输出能力。因此,电源模块采用MIC29302,该电源模块输出工作电压为4V,瞬时电流3A。电源模块MIC29302接线图见图4。
图3 GPRS模块SIM300接线图
图4 模块MIC29302接线图
单片机命令GPRS模块SIM300经GPRS无线网络发送数据到远程主机。用AT 指令集(一种控制通信模块动作的标准化指令)编程。通过硬件连接,用单片机串口收发数据。单片机控制模块通过RS232串行接口传递AT 指令。初始化GPRS模块,使之附着在GPRS网络上,通过拨号建立PPP 连接,获取网络运营商ISP动态分配给移动终端的IP地址,并与服务器的固定IP 地址之间建立Socket链接;一旦链接成功,移动终端可以通过GPRS网络向上位机收发数据或指令。单片机控制模块接线图如图5所示。
3 软件设计
GPRS(general packet radio service)是通用分组无线服务技术的简称,是GSM 移动电话用户可用的一种移动数据业务。GPRS 以封包(packet)方式传输,传输速率可提升至56Kbit/s,甚至114Kbit/s[11]。
图5 单片机控制模块接线图
3.1 单片机编程软件设计
基于GPRS通信网络的智能酒精浓度检测仪中单片机编程软件,用于对酒驾者信息的快速处理和管理。单片机编程软件客户端用单片机C 语言编写,在TI MSP430F149单片机上执行;开发软件是IAR,软件环境是具有Windows操作系统。单片机编程软件程序流程图如图6所示。
单片机编程软件主要功能和技术特点:通过SIM300与主机连接;当检测到酒驾后,及时将信息由键盘发送到主机;显示器背光可方便地通过键盘开或闭。
3.2 上位机编程软件设计
检测仪监控中心的上位机编程软件客户端是在微软的.NET Framework平台下开发的典型C/S架构,即客户端与服务器交互的程序[12];实现语言C#(C Sharp)是微软(Microsoft)为.NET Framework 量身订做的程序语言;开发软件是Microsoft Visual Studio 2010。软件运行于.NET Framework2.0 上,通过文本文档保存测试仪终端传送的酒驾者信息。软件环境具有Windows操作系统,版本至少为Windows XP。上位机编程软件程序流程图如图7所示。
图6 单片机编程软件程序流程图
上位机从物理网卡接收到SIM300 发来的数据后,将数据发送至软件文本框,并在电脑显示屏上显示接收到的驾驶证号或身份证号、折算后被检测者的血液酒精浓度值,以及交警正在处理的时间等。一旦有新数据接收,就自动将TXT 文件存档。
图7 上位机编程软件程序流程图
上位机编程软件主要功能和技术特点:界面登录信息不完整时窗口会提醒;文本框内容发生变化时自动更新并保存信息;为保存数据设有导出日志键;有新信息时自动读取计算机时间;显示本机IP 信息,可设置端口号;显示已连接主机的GPRS模块IP地址。图8为监控中心上位机软件界面图之一。
4 结论
(1)实现了对机动车酒驾或醉驾者的实时监测与及时处置。
(2)无线通信系统解决了架线困难、抗干扰性能差、传感器可扩展性差和成本高等问题。随着GPRS网络的不断改善和通信费用进一步降低,GPRS无线通信链路将有更广阔的应用前景。
图8 监控中心上位机软件界面图
(3)上位机软件实现了数据库存取、显示实时数据变化、超标智能报警,提高了工作效率。
(
)
[1]林放,周立平.电子酒精检测装置简述[J].科技情报开发与经济,2011(2):214.
[2]张艳丽,张绍楠,张猛.基于MSP430F149的酒精浓度检测仪的设计[J].自动化技术与应用,2009(10):112-114.
[3]徐良雄.酒精浓度超标报警器设计与分析[J].电子设计工程,2011(7):82-84.
[4]林一鸣,赵新波,祝诗平,等.酒后驾驶与超速行驶智能监测系统设计[J].西南师范大学学报:自然科学版,2010(12):132-136.
[5]麻欣娟.高精度酒精浓度数据采集系统的设计[J].仪器仪表用户,2006(4):31-32.
[6]李丽华,黄秋野,王琦.基于单片机的酒精浓度检测仪设计[J].科技广场,2009(3):166-168.
[7]谭秋林,许姣,薛晨阳,等.基于C8051F040酒精浓度测试仪的研究[J].传感技术学报,2009(10):1378-1381.
[8]厉开平.对交通肇事者体内酒精含量的检测[J].河南公安高等专科学校学报,2006(4):60-61.
[9]岳睿.警用呼气式酒精传感器的研究进展[J].化学传感器,2006(3):6-11.
[10]王广成.酒后驾车酒精含量界定标准的判定[J].中国计量,2010(5):29-30.
[11]任泰明.TCP/IP网络编程[M].北京:人民邮电出版社,2009.
[12]李文强.C#程序设计[M].北京:清华大学出版社,2010.