钱国虎 王长春
摘 要:随着现今社会的不断发展,购买小轿车的人也日益增加。酒后驾驶事故是当今社会面临的一大难题同时也是造成道路交通事故的主要原因之一。本设计使用STM32F103C8T6作为主控芯片,采用MQ-3酒精传感器对空气中的其他气体进行过滤,除杂等,将空气中酒精的体积分数转换为电信号,通过MCU处理,将车内当前的空气中酒精浓度显示在OLED上面,若酒精浓度超过预设值,则系统判断为酒后驾车,将会直接输出指令,通过继电器控制火花塞的供电,不允许汽车启动,能够避免酒驾现象的发生,对于道路交通安全能够做出很大的贡献,减少了因酒驾造成的交通事故。
关键词:STM32F103C8T6;MQ-3;OLED继电器
中图分类号:TB472 文献标志码:A 文章编号:2095-2945(2018)36-0027-02
Abstract: With the continuous development of modern society, the number of people who buy cars is increasing day by day. Drunk driving accident is one of the most difficult problems and one of the main causes of road traffic accidents in today's society. In this design, STM32F103C8T6 is used as the main control chip, MQ-3 alcohol sensor is used to filter the other gases in the air, remove impurities and so on, and the volume fraction of alcohol in the air is converted into electrical signal, which is processed by MCU. The current concentration of alcohol in the air of the car is displayed on the OLED. If the concentration of alcohol exceeds the preset value, then the system judges that the driver is drunk, and the system will directly output instructions to control the power supply of the spark plug through a relay, and the car will not be allowed to start. This can avoid the occurrence of drunk driving phenomenon, bring benefits to road traffic safety, and reduce the traffic accidents caused by drunk driving.
Keywords: STM32F103C8T6; MQ-3; OLED relay
1 概述
在现代生活中,汽车几乎己经成为了家家户户出门必不可少的代步工具。交通安全问题也随之成为了我们必须要面对的重中之重。对于酒驾、醉驾总有部分司机存在侥幸心理,认为自己不会被查到或者认为自己驾驶技术熟练不会发生事故。因此,一个能够实时监测驾駛员饮酒状态的设备是非常必要的。防酒驾方向盘通过传感器的探头通过检测司机呼出的气体中的酒精成分的浓度来判断是否存在酒后驾驶的安全隐患,并及时对汽车的发动机进行控制。能够避免酒驾,减少因酒驾而引起的交通事故,对社会发展与安全具有重大意义。
2 系统组成
设计的系统组成框图如图1所示,从设计的要求来分析该设计须包括如下结构,酒精传感机探头电路、复位电路、OLED显示电路、继电器控制发动机电路,以及外部晶振电路。当司机打开车门锁的时候,检测系统进行复位操作,通过酒精传感器地检测,OLED显示屏显示当前车内酒精浓度,一旦酒精浓度超过预设值,将视为酒驾,此时触发MUC控制继电器切断机动车点火装置、锁死方向盘。
3 硬件设计
3.1 主电路设计
此设计以STM32F103ZET6作为主控芯片,相比较8位的MCU来说在价格上有一定的提高的,但是对于本次设计,在数据的处理和显示时效性要求特别高,必须采用内核处理速度非常快的MCU来做主控芯片,STM32F103Z
ET6单片机是非常好的选择,使用了8MHz的晶振和32.768K的低速晶振来控制设计系统提供稳定的时钟信号,经过程序中的频率加倍,整个系统的时钟最高可达到72MHz,使得MCU可快速处理从酒精检测传感器传来的电信号,保证信号的时效性。MCU是3.3V供电的,而外在供电是5V的,所以用了一个AMS1117降压稳压芯片和数个滤波电容对电压进行设定,保障了一个供电电源多用,提高了产品的实用性。为了方便系统的软件调试,预留了插针连接单片机的NRST、TDI、TDO、TMS、TCK引脚,设计了JTAG下载仿真电路,在测试电路板时,方便软件调试的烧录。复位电路是由一个10uF电容和一个10K电阻组成,每当系统上电后电源对电容充电,此时电流经过电阻,复位脚被拉高,MCU进行复位,在单片机工作中,有一个程序指针,它指向即将要执行的程序。单片机上电时要执行复位操作,使得程序指针指向程序的0000H地址处,即单片机将要执行第一条语句,以后每执行完一条语句程序指针都依次增加。这样使得单片机每次执行程序都处于确定状态,如果没有程序指针,就不知道程序一开始应该从哪里开始执行,也不知道工作时应该执行哪条语句。上电时的自动复位,使得各端口的输出输入电平不会处于不确定状态,不会使外围设备产生误动作;也能防止内部一些控制寄存器的功能紊乱。对电信号的处理是运用MCU自带的ADC,在高速的晶振下,AD转换可以满足对酒精传感器传来的电信号的时效性处理。显示使用了OLED屏幕,OLED显示技术具有自发光、广视角、几乎无穷高的对比度、较低耗电、极高反应速度等优点,非常适合作为此装置的显示屏。
3.2 酒精传感器介绍
酒精传感器是本系统的核心,酒精传感器将酒精的体积分数转换为电信号,探测头通过传感器对空气中的其他气体进行过滤,除杂等。本设计采用MQ-3酒精传感器,由于MQ-3传感器对酒精气体具有良好的灵敏度、长寿命、低成本,耐汽油、烟雾、水蒸气。MQ-3气体传感器所使用的气敏材料二氧化锡(SnO2)其是在空气中电导率是较低的。当传感器随着所处环境中酒精蒸汽的增加,传感器的电导率也随着酒精气体浓度的增加而增大。使用简单的电路即可将电导率的变化转换为与该气体浓度相对应的输出信号。传感器表面电阻RS的变化,是通过与其串联的负载电阻RL上的有效电压信号VRL获得的。二者之间的关系表述为:RS/RL=(VC-VRL)/VRL,其中VC 为回路电压10V。负载电阻RL 可调为0.5~200K,加热电压Uh为5V。这些参数使得传感器输出电压为0~5V。
4 软件设计
系统软件部分采用模块化设计,分为主控模块、信息采集模块、AD转换模块、OLED显示模块、继电器控制模块。程序流程图如图2所示,当系统开启时,硬件复位,酒精检测模块获取空气中的酒精浓度,通过AD转换,AD转换用的是MCU自带的ADC,为了使得空氣中酒精浓度测得值准确性高,用的精度是10位的运算值,经过反复检测,10位的精度值不仅程序运算快,而且误差小。将模拟量转换为数字量,换算为当前空气中的酒精浓度,与主程序所设计的标准酒精浓度进行对比,不超过标准浓度,不触发继电器,车辆可正常打火,若超过标准值,继电器断开,车辆无法启动。OLED显示屏显示车内当前酒精浓度值,同时显示标准的浓度值,当超过标准浓度值时,会有“超标”的报警提示信息显示,OLED显示采用的是IIC协议,只需要SDA和SCL两个数据线即可与单片机进行通讯,在硬件上简化了电路图,软件上简化了程序,使得程序运行准确,信息传递快速。
5 结论
此篇文章介绍了防酒驾方向盘系统的设计,分别从硬件和软件两部分做了详细的介绍。整套系统的结构是嵌入方向盘内部的,禁止了使用者的操控,大大提高了实用性和安全性。驾车司机饮酒后,系统能很快地检测出空气中酒精浓度的超标,快速地断开继电器,阻止司机打火。通过本次设计,我对数据采集与处理技术有了进一步的了解和更深层次的学习,只有在调试与实践中才能体会到数据的神奇和独特的魅力。各种公式的计算与解析,让我明白理论依据也是非常重要的,数学工具是解决数据处理的最好方法,只有不断地学习,才能研究出非常快速准确的机器语言算法!
参考文献:
[1]李朝青.单片机原理及接口技术[M].北京航天航空大学出版社.
[2]刘迎春.传感器原理设计及应用[M].哈尔滨工业大学出社.
[3]谭浩强.C程序设计[M].北京:清华大学出版社,2005.
[4]王晓明,胡晓柏.电动机的单片机控制(第1版)[M].北京航空航天大学出版社,2002:181-208.