毕业论文-基于AT89C51单片机防酒后驾驶控制系统设计_第1页
毕业论文-基于AT89C51单片机防酒后驾驶控制系统设计_第2页
毕业论文-基于AT89C51单片机防酒后驾驶控制系统设计_第3页
毕业论文-基于AT89C51单片机防酒后驾驶控制系统设计_第4页
毕业论文-基于AT89C51单片机防酒后驾驶控制系统设计_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、毕业论文基于AT89C51单片机防酒后驾驶控制系统设计The Design Of Anti-drunk Driving Control System OnSingle ChipMicrocomputer2013年6月摘 要近年来,随着我国汽车的普及,汽车的安全问题已经引起了我们的注意,根据最新的数据显示,目前,酒后驾车成为车祸频发的主要原因,我国因酒后驾车而导致的死亡人数平均每年以7.3%的速度增长,酒后驾车轻则害人害己,重则车毁人亡。为了防止酒后驾车,设计一种智能电路来检测驾驶员体内的酒精含量并且能够及时切断汽车电源是非常有必要的。该设计由MQ-3酒精传感器来测量饮酒后驾驶员体内的酒精浓度,

2、通过A/D0832转换器转换成数字信号传入单片机,最后由单片机通过对数字信号的处理来显示酒精浓度。在超过阈值时,发出声光报警,并且通过控制继电器来切断汽车电源。软件方面,各个子程序的功能相对独立,便于调试和修改。当驾驶员体内酒精浓度超标时,该系统能够自动切断汽车启动系统电源,同时发出声光报警,并通过数码管实时显示酒精浓度。本系统选择AT89C51单片机、A/D0832转换器、MQ-3酒精传感器、数码管、LED、蜂鸣器、继电器等元器件通过DXP来设计硬件系统电路图,使用keil uvision4完成软件系统的编程调试。关键词: AT89C51单片机;A/D0832转换器;MQ-3酒精传感器;智能

3、电路;酒后驾车;ABSTRACTIn recent years, with the popularity of cars in China, safety problem of cars has caused our attention. According to the latest data, driving after drinking has become the main reason of the car accident, the death that cased by the car accident has been increased at the rate of 7.3%

4、. Driving after drinking is so dangerous that it cause death or hurt . To avoid the driving after drinking, it is necessary to design a intelligent circuit to check the alcohol concentration and cut off the power of the car in time. The design uses the MQ-3 alcohol sensor to measure the alcohol conc

5、entration of the drivers body and send those signals to SCM by A/D0832 converter. In the last, the SCM process the digital signal to display alcohol concentration.When the alcohol concentration beyond the mark of standard alcohol concentration, the system issues a sound light alarm and cuts off the

6、power of the car. In software aspect, every program is independent,so it is easy when debuging the program. When the drivers alcohol concentration exceeds the safety standard of the system, the design can automatically cut off the power of the car to stop its engine and send out alarm.At the meantim

7、e a digital tube real-time display the alcohol concentration.In this system, this paper chooses AT89C51 SCM, A/D0832 converter, MQ-3Alcohol sensor, Nixie tube, LED, buzzer and relay as it main parts, and through the DXP design the hardware part, use the Keil Uvision4 to complete the software part.Ke

8、y Words:AT89C51 SCM; A/D0832 converter; MQ-3 alcohol sensor; Intelligent circuit;drunk driving II目 录1绪论11.1课题研究的目的11.2课题研究的意义12系统整体设计32.1系统整体设计思路32.2系统方案设计32.2.1酒精传感器的选择42.2.2单片机的选择52.2.3 A/D转换器的选择73系统硬件设计83.1信号采集模块83.2信号转换模块83.3复位电路103.4 晶振电路113.5 数码管显示电路123.6 声光报警模块123.7 继电器驱动电路134系统软件设计144.1系统软件整

9、体流程图144.2编译语言的选择144.3A/D转换模块软件流程154.4报警程序设计16结 论17参考文献18致 谢191 绪论1.1 课题研究的目的当今,由于我国的经济和科技正在飞速发展,人民的生活水平正在日趋小康,越来越多的人拥有了自己的汽车。随着汽车的普及,交通事故已经引起了我们的注意,根据最新的数据显示,目前,道路交通死亡已经成为人类第九大死亡原因,而在2020年,道路交通死亡率预计将再翻一倍,上升为继癌症、抑郁症之后的第三大死亡原因。截至2011年,虽然国家采取了一些相应的措施来减少交通事故发生的频率,但不遵守交通规则的人依然很多,交通事故数量仍然居高不下,以下就是2008年-20

10、11年我国交通事故与死亡人数统计(如表1-1所示)。表1-1:2008-2011年交通事故数与死亡人数年份(单位:年)交通事故数(单位:数)死亡人数(单位:人)200826556573484200923835167759201021952165225201121081262387根据调查,大约50%60%的交通事故与酒后驾驶有关,酒后驾驶已经被列为车祸致死的主要原因。据统计,从1994 年到2004 年,我国因酒后车而导致的死亡人数平均每年以7.3%的速度增长。针对酒后驾车这种害人害己的行为,防酒后驾车控制系统的设计是非常必要的,它能强制酒后的驾驶员无法启动汽车,降低交通事故的发生概率。虽然我

11、国对酒后驾车的处罚越来越严重,但是还是有部分饮酒司机抱有侥幸心理,在没有交警的地方,仍就不顾自己与他人的安全继续驾车,发生事故后悔之晚矣,所以防酒后驾车控制系统的设计更增加了驾驶员的安全系数,能够有效降低交通事故的发生,保障行人以及司机的安全。1.2 课题研究的意义本设计基于AT89C51单片机而设计的防酒后驾车控制系统,它可以检测空气中酒精的含量,最重要的用途是检测司机的体内酒精的浓度。酒后驾车发生事故的机率高达27%。随着摄入酒精量的增加,选择反应错误率显著增加,当血液中酒精浓度由0.5增至1,发生车祸的可能性便增加5倍,如果增至1.5,可能性再增加6倍。驾驶员喝完酒后驾车上路,出现交通事

12、故的几率在一定程度上会大大增加, 这种行为不仅对道路交通安全产生了危害,而且也威胁着人民群众的生命与财产的安全。驾驶员饮酒后, 酒精被驾驶员体内消化系统吸收, 通过血液的流动, 肺部呼出大约90%的酒精气体, 因此想要判断司机的饮酒程度,只需要通过酒精传感器测量司机呼出的气体中酒精浓度。驾驶员只要将嘴对着传感头使劲吹气,仪器就能发上显示出酒精浓度的高低,从而判断该司机是否酒后驾车,避免事故的发生。当然,最好的办法是在车内安装这种测试仪,司机一进入车内检测仪就检测司机的酒精含量,如果超出允许值,系统控制引擎无法启动,这样就可从根本上解决酒后驾车问题。在我国道路交通事故中每死亡3个人中就有一个是因

13、为酒后驾车所致。我国现阶段仍然在较大范围内存在所谓“无酒不成席”的习俗,“喝酒不驾车,驾车不饮酒”的观念尚未深入人心。当酒精的含量达到一定浓度时人对外界的反应能力及控制能力就会下降,处理紧急情况的能力也随之下降。医学研究证明,缺少乙醛脱氢酶的中国人, 在其饮酒后极易在体内聚集乙醇,使饮酒者感觉头痛、心动过速、嗜睡、血管扩张。酒后驾车者往往认为自己的酒量很好,喝完酒后跟正常人一样,过高的相信自己的驾驶技术,于是开着车,行驶在路上,不知危险已经存在,当造成事故时,轻者则后悔不已,重者则悔之晚矣,甚至失去了生命。科学表明,未饮酒的驾驶员行驶在道路上,在前方有危险时,从发现到踩下刹车的反应间隔为0.7

14、5秒,而饮酒后依然驾车的驾驶员在同样的情况下反应的间隔要比没有饮酒的要减慢2-3倍,在相同的速度下行驶如果需要制动,其距离也要延长,这样大大增加了发生交通事故的概率。有资料表明,驾驶员在微醉的情况下行驶,其发生道路事故的概率为未饮酒的16倍。所以,酒后驾车,特别是在醉酒的状态下行驶,严重的危害道路交通安全。为给交通管理部门提供科学的管理手段,控制酒后驾车的系统显得格外的重要。该系统安装在汽车上,不用交警和其他人员就能判断司机是否酒后驾车,以确保了司机的安全,又减少了交警等人员的工作量。当司机体内酒精浓度超标时,该系统能够自动切断汽车启动系统电源,同时发出声光报警,并通过数码管实时显示酒精浓度。

15、172 系统整体设计2.1 系统整体设计思路本设计研究的是酒后驾车控制系统,采用MQ-3型酒精传感器,通过该传感器检测驾驶员呼出气体的酒精含量,判断其是否超过安全驾驶标准,如果超标则通过LED以及蜂鸣器发出的声光报警来提醒驾驶员体内酒精含量已经超标,并且通过数码管来显示驾驶员体内的酒精含量,使驾驶员能够清晰的看到自己体内的酒精浓度起到警示的作用,为了防止驾驶员酒后启动汽车,本设计中还缺少一个能够自动切断汽车引擎电源的装置,本设计采用继电器来实现这个功能,通过继电器来控制汽车引擎电源。该智能系统能够通过酒精传感器来测量驾驶员体内酒精含量,并且将酒精传感器输出的模拟信号通过A/D传感器转换为数字信

16、号传送给89C51单片机,当驾驶员体内浓度超标时,单片机通过对信号的处理来控制声光报警,提醒驾驶员您酒精含量已经超标,同时继电器切断汽车引擎电源,停止启动发动机。2.2 系统方案设计基于以上的构思,设计出基于单片机防酒后驾车控制系统的系统框图系统功能框图如图2-1所示:图2-1 系统功能框图以下是我对该系统简单的介绍:本系统主要由电源模块、酒精传感器AT89C51单片机、A/D0832转换器、数码管显示模块、声光报警模块、继电器驱动模块等组成、其主要任务是采集酒精传感器的输出电压信号,经过放大后传入A/D0832模数转换器将转换后的数字信号传入AT89C51单片机进行处理,当驾驶员酒精浓度超过

17、规定的值时,单片机将酒精浓度传给数码管进行显示,并且驱动声光报警模块和继电器动作,提醒驾驶员其体内酒精浓度已经超标,并且及时切断继电器,保证驾驶员的安全。2.2.1 酒精传感器的选择酒精传感器是本系统的核心,酒精传感器将酒精的体积分数转换为电信号,探测头通过传感器对空气中的其他气体进行过滤,除杂等。本设计采用MQ-3酒精传感器,由于MQ-3传感器对酒精气体具有良好的灵敏度、长寿命、低成本,耐汽油、烟雾、水蒸气。MQ-3气体传感器所使用的气敏材料二氧化锡(SnO2)其是在空气中电导率是较低的。当传感器随着所处环境中酒精蒸汽的增加,传感器的电导率也随着酒精气体浓度的增加而增大。使用简单的电路即可将

18、电导率的变化转换为与该气体浓度相对应的输出信号。该传感器可检测多种浓度酒精气氛,是一款适合多种应用的低成本传感器。传感器有两部分回路:一是传感器加热回路;二为传感器信号输出回路,它可以精确反映传感器表面电阻的变化。传感器表面电阻RS的变化,是通过与其串联的负载电阻RL上的有效电压信号VRL出面获得的。二者之间的关系表述为:RS/RL=(VCVRL)/VRL,其中VC 为回路电压10V。负载电阻RL 可调为0.5200K,加热电压Uh为5V。这些参数使得传感器输出电压为05V。为了使测量更准确,使用时需要将传感器提前加热1-2分钟。MQ-3传感器外形图如图2-2所示:图2-2传感器外形MQ-3气

19、敏元件将微型陶瓷管、SnO2敏感层,测量电极和加热器构成的敏感元件固定在塑料或不锈钢制成的腔体内,加热器提供了必要的工作条件。封装的气敏元件6只管脚中4个管角用于信号取出,2个管角用于加热电流的供给。呼出气体中的酒精含量与血液中的酒精含量有如下关系:BAC(mg/mL)=BrAC(mg/mL)2200 公式(2-2)血液中酒精浓度的英文缩写(BAC),呼出气体中酒精浓度的缩写(BrAC ),括号中的mgmL 表示单位。驾驶员的酒驾程度等于血液中跟肺部呼吸出的气体中的酒精浓度的比值,我国规定当血液中酒精浓度大于或者等于20mg/100mL,小于80mg/100mL视为酒后驾驶。当血液中酒精浓度小

20、于20mg100mL时,汽车能够正常启动;当血液中酒精浓度达到20mg100mL以上时,继电器断开发动机电源,禁止启动。2.2.2 单片机的选择当今,随着科学技术的飞速发展,越来越多的电子产品趋于智能化、微型化、低功耗。单片机是一种集成电路芯片,其采用超大规模集成电路技术把能够处理数据的中央处理器CPU 随机存储器RAM、只读存储器ROM、多种I /O口和中断系统、定时器/计时器等在一块硅片上集成,构成一个微型但是相对完整的计算机系统。单片机又称微控制集成电路芯片,微处理器(CPU)能够对数据进行算术运算,逻辑运算,并且数据的传送、中断处理也通过CPU进行,随机存储数据的RAM,只读存储ROM

21、,输入输出设备接口(I/O口),定时计数器,串行通信口(SCI),显示驱动电路(LCD或LED驱动电路),脉宽调制电路(PWM),模拟多路转换器及A/D转换器等电路在一块单片芯片上进行集成,组成一个微型但是很完整的计算机系统。使用软件可以控制这些电路准确、高效、迅速地完成程序源先前设定好的的任务。本设计采用AT89系列单片机,由于89系列单片机具有以下优点:(1)内部含 Flash 存储器:修改在处于开发过程中的系统的程序是非常容易的这就大大缩短了开发系统的时间。同时,能够有效地进行对一些数据信息的存储即便当外界电源受损保存的信息也不会受到影响。 (2)和80C51底角插座完全兼容:89系列单

22、片机拥有与80C51相同的引脚,所以,当用89系列单片机被80C5替代1 时能够直接被代换 这时无论采用40引脚或是44 引脚的东西,只要89系列单片机能够完全替代80C51单片机的引脚就可以。 (3)静态时钟模式:89系列单片机拥有静态时钟方式 能够有效的节省电耗, 这对于需要降低功耗的便携式产片是非常重要的。 (4)错误编程亦无废品产生 :一般的 OTP 产品 如果编程错误就意味着成了废品而 89 系列单片机带有Flash存储器。所以,当输入错误编程后可以重新修改继续编程一直到程序无问题为止, 所以它没有使用报废问题。 (5)可对系统进行反复的试验 :基于89 系列单片机的系统设计,其可以

23、对系统进行反复的试验,编写不同的程序进行多次试验,这样能够使用户设计出来的系统达到最完美,而且,随着用户的增加和需要,对不满意的地方可以修改,使系统不断能追随用户的最新要求。AT89 C51引脚按功能可分为三类:1 电源及时钟引脚:Vcc、Vss、XTAL1、XTAL2。电源引脚接入单片机的工作电源。Vcc接+5V电源,Vss接地。时钟引脚XTAL1、XTAL2外接晶体与片内的反相放大器构成了1个晶体振荡器,它为单片机提供了时钟控制信号。2个时钟引脚也可以接独立的外部晶体振荡器。XTAL1接外部的一个引脚。该引脚内部是一个反相放大器的输入端。这个反相放大器构成了片内振荡器。如果使用外接晶体振荡

24、器时,此引脚接地。XTAL2接外部晶体的另一端,在该引脚内部接至内部反相放大器的输出端。使用外部时钟振荡器时,该引脚接收时钟振荡器的信号,该信号直接连接到内部时钟发生器的输入端。 控制引脚:、ALE、RESET(RST)。此类引脚提供控制信号,有的还具有复用功能。RST/VPD引脚:RESET(RST)是复位信号输入端,当其输入高电平时有效。当单片机运行时,在此引脚加上持的续时间大于2个机器周期(24个振荡周期)的高电平时,就可以完成复位。ALE/ 引脚:ALE引脚输出为地址锁存允许信号,当单片机上电正常工作后ALE引脚不断输出正脉冲信号。引脚:程序存储器允许输出控制端。在单片机访问外部程序存

25、储器时,此引脚输出脉冲负跳沿作为读外部程序存储器的选通信号。/VPP引脚:功能为片内程序存储器选择控制端。当引脚为高电平时,单片机访问片内程序存储器,但在PC值超过0FFFH时,此时超出片内程序存储器的4KB地址范围,将自动执行外部程序存储器中存储的程序。当引脚为低时,单片机只访问外部程序存储器,而不管是否有内部程序存储器。(3)I/O口P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P0口的管脚第一次写1时,此时P0口的全部引脚浮空,可用作高阻输入。P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P2口:P2口为一个内部

26、上拉电阻的8位准双向I/O端口口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,此时可以作为输入。P3口:P3口是一个带内部上接电阻的8位准双向I/O端口,P3口的每一位能驱动4个LS型TTL负载。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。所以,本次设计采用AT89C51单片机来进行对系统的整体进行控制, AT89C51是一种带4K字节闪存可编程可擦除只读存储器的低电压,高性能CMOS8位微机处理器,它提供了一个更灵活,更廉价的解决方案为许多嵌入式控制系统。

27、由于其能够进行位传送、置位、清0、测试、逻辑运算等功能,并且有4 个I /O端口,每个端口都是8 位双向口,共占32根引脚。每个端口都包括一个锁存器( 即专用寄存器P0 P3)、一个输出驱动器和输入缓冲器。4个端口通常P0 P3。在无片外扩展存储器的系统中,这4 个端口都可以用作双向通用I /O 端口。在具有片外扩展存储器的系统中,P2 口作为高8位地址线,P0口分时作为低8 位地址线和双向数据总线。2.2.3A/D转换器的选择在单片机应用系统中,被测量对象的有关变化量,如温度、压力、流量、速度等非电物理量,须经传感器转换成连续变化的模拟电信号(电压或电流),这些模拟电信号必须转换成数字量后才

28、能在单片机中用软件进行处理。实现模拟量转换成数字量的器件称为A/D转换器(ADC)。A/D转换器大致分有三类:一是双积分A/D转换器,优点是精度高,抗干扰性好,价格便宜,但速度慢;二是逐次逼近型A/D转换器,精度、速度、价格适中;三是-A/D转换器。本设计中采用的是A/D0832模数转换器,它是一种8位分辨率、双通道A/D转换芯片、工作频率为250KHZ,转换时间为 32S、输入输出电平与TTL/CMOS相兼容、5V电源供电时输入电压在 05V 之间;由于它体积小,兼容性强,性价比高而被广泛使用。3 系统硬件设计3.1 信号采集模块MQ-3的加热电阻两端连接+5V直流稳压电源,用于电阻丝对敏感

29、体电阻的加热。电路将MQ-3的阻值变化转换成输出电压的变化,从而通过A/D0832转换器转换为相应的数字信号供单片机处理。在检测的酒精浓度值大于传感器预设值时,传感器将会报警。但是由于传感器模块内部预设值不方便通过程序改变,所欲在本设计中报警值在程序中设定,报警由单片机程序控制,这要便于修改。模拟信号输出端口能输出0到+5 的模拟信号,当检测的酒精浓度越大时输出电压越高。此端口接入AD0832转换器的2号引脚,实现AD转换。信号采集模块电路图如图3-1所示:图3-1 信号采集模块电路图3.2 信号转换模块信号转换模块电路图如图3-3所示。酒精传感器将电压通过CH0输入A/D0832转换器,A/

30、D0832转换器将输入的模拟信号转换为对应的数字信号通过D0与DI口传入单片机。ADC0832 为 8 位分辨率 A/D 转换芯片,其最高分辨可达256级,可以适应一般的模拟量转换要求。其内部电源输入与参考电压的复用,使得芯片的模拟电压输入在 05V 之间。芯片转换时间仅为 32S,据有双数据输出可作为数据校验,以减少数据误差,转换速度快且稳定性能强。独立的芯片使能输入,使多器件挂接和处理器控制变的更加方便。通过 DI 数据输入端,可以轻易的实现通道功能的选择。A/D0832芯片如图3-2所示图3-2 ADC0832芯片管脚图芯片接口说明:CS_片选使能,低电平芯片使能。CH0 模拟输入通道

31、0,或作为 IN+/-使用。CH1 模拟输入通道 1,或作为 IN+/-使用。GND芯片参考 0 电位(地)。DI数据信号输入,选择通道控制。DO数据信号输出,转换数据输出。CLK芯片时钟输入。正常情况下ADC0832 与单片机的接口应为4条数据线,分别是CS、CLK、DO、DI。但由于DO端与DI端在通信时并未同时有效并与单片机的接口是双向的,所以电路设计时可以将DO和DI并联在一根数据线上使用。当ADC0832未工作时其CS输入端应为高电平,此时芯片禁用,CLK和DO/DI的电平可任意。当要进行A/D转换时,须先将CS使能端置于低电平并且保持低电平直到转换完全结束。此时芯片开始转换工作,同

32、时由处理器向芯片时钟输入端CLK输入时钟脉冲,DO/DI端则使用DI端输入通道功能选择的数据信号。在第1 个时钟脉冲的下沉之前DI端必须是高电平,表示启始信号。在第2、3个脉冲下沉之前DI端应输入2 位数据用于选择通道功能。当此2 位数据为“1”、“0”时,只对CH0 进行单通道转换。当2位数据为“1”、“1”时,只对CH1 进行单通道转换。当2位数据为“0”、“0”时,将CH0作为正输入端IN+,CH1作为负输入端IN-进行输入。当2 位数据为“0”、“1”时,将CH0作为负输入端IN-,CH1 作为正输入端IN+进行输入。第3个脉冲的下沉之后DI端的输入电平就失去输入作用,此后 DO/DI

33、端则开始利用数据输出 DO 进行转换数据的读取。从第4个脉冲下沉开始由 DO端输出转换数据最高位DATA7,随后每一个脉冲下沉 DO端输出下一位数据。直到第 11 个脉冲时发出最低位数据 DATA0,一个字节的数据输出完成。也正是从此位开始输出下一个相反字节的数据,即从第 11 个字节的下沉输出 DATD0。随后输出8位数据,到第19个脉冲时数据输出完成,也标志着一次 A/D 转换的结束。最后将CS置高电平禁用芯片,直接将转换后的数据进行处理就可以了。图3-3 信号转换模块3.3 复位电路单片机工作过程中有一个程序指针,它指向即将要执行的程序。单片机上电时要执行复位操作,使得程序指针指针指向程

34、序的0000H地址处,即单片机将要执行第一条语句,以后每执行完一条语句程序指针都依次增加。这样使得单片机每次执行程序都处于确定状态,如果没有程序指针,就不知道程序一开始应该从哪里开始执行,也不知道工作时应该执行哪条语句。上电时的自动复位,使得各端口的输出输入电平不会处于不确定状态,不会使外围设备产生误动作;也能防止内部一些控制寄存器的功能紊乱。上电复位的实现方法是,在接通电源时,RST引脚获得瞬间高电平,因为电容电压不能突变,随着图3-4中的电容C1的充电,RST引脚所获得的高电平逐渐下降,但能保持两个机器周期以上的时间,单片机复位。在复位电路的设计中,要选择合适的元器件参数,电阻的阻值不宜过

35、大或者过小,过大使得RST不可能获得高电平,过小也不能起到限流作用。另外电容容值也应该合适,要保证放电时,RST引脚上的高电平也能保持两个机器周期以上的高电平。图3-4 复位电路3.4晶振电路单片机必须有时钟信号控制,才能使得工作时各指令在操作上有严格的时间次序,可以通过两种方法提供时钟信号,一种是外部时钟方式,另一种是内部时钟方式。外部时钟方式是在XTAL1端引入外部已有的时钟信号,而XTAL2端悬空,外部时钟信号一般是频率小于12MHZ的方波。外部时钟方式一般是用于多台单片机协同工作时,如单片机之间的通信,这样要使单片机有统一的工作节奏。本设计采用内部时钟方式,其电路结构简单,功率消耗低。

36、本系统中为了尽量降低功耗的原则,采用了内部时钟方式。晶振全称为晶体振荡器,其作用在于产生原始的时钟频率。内部时钟方式的电路实现方法是在XTAL1和XTAL2引脚外接石英晶体,与单片机片内震荡电路形成震荡回路,图3-5中电容C3和C4的容值为22pF,它们的作用是加快起振和稳定频率。图3-5 晶振电路3.5数码管显示电路本设计采用共阴极四位一体数码管,单片机通过程序将A/D转换器输入的数字信号转换为酒精的浓度实时显示在数码管上其电路如图3-6所示图3-6 数码管显示模块3.6声光报警模块A/D0832转换器通过P1.1口将数字信号输入单片机,单片机对信号进行分析判断驾驶员体内酒精浓度是否超过阈值

37、,通过P2.0口点亮二极管同时蜂鸣器发出声音报警,其电路图如图3-7所示:图3-7 声光报警电路3.7继电器驱动电路当驾驶员体内酒精浓度超标,如果驾驶员想要启动汽车,那么单片机的P2.1口将会控制继电器,切断汽车电源,使汽车无法启动,有效的防止酒后驾车。本设计中继电器采用单刀双掷小功率电磁继电器,额定电压5V28V。继电器驱动电路如图3-8所示图3-8 继电器驱动电路4 系统软件设计4.1 系统软件整体流程图系统程序主要完成A/D转换、数码管显示、声光报警等功能。软件通过酒精传感器的测量结果进行A/D转换,将转换后的数值与标准值比较判断驾驶员的饮酒程度,对不同的酒精浓度进行显示以及报警。酒精浓

38、度采集,当传感器检测到有酒精的时候,传感器两脚之间的电阻减小,对应与气体传感器负载的电阻分压变大,将这一变化的数值送入模数转换模块中,之后通过软件编写对数据进行处理,再将这一变化值成功的通过驱动数码管显示。判定浓度是否超标,一旦被测浓度超过了这一数值,启动蜂鸣器发出警示音。系统软件整体流程图如图4-1所示:图4-1 系统软件整体流程图4.2 编译语言的选择对于单片机的编程来说,C语言是比较常见的一种高级语言。汇编语言的可控性较高级语言来说更具优越性。程序编写语言比较常见的有C语言、汇编语言。汇编语言的机器代码生成效率高,控制性好,但就是移植性不高。C语言编写的程序比用汇编编写的程序更符合人们的

39、思考习惯。还有很多处理器都支持C编译器,这样意味着处理器也能很快上手。且具有良好的模块化、容易阅读、维护等优点,且编写的模块程序易于移植。基于C语言和汇编语言的优缺点,本系统采用C语言编写方法。软件编写的主体思路是将系统按功能模块化划分,然后根据模块要实现的功能写各个子程序。4.3 A/D转换模块软件流程ADC0832的数据宽度为8位,数据最快转换时间为32S,其频率为250KHZ。ADC0832转换器将CHO口输入的模拟信号转换为对应的数字量00H-FFH,然后将对应数值存储到内存单元。程序框图如图4-2所示图4-2 A/D转换模块流程4.4 报警程序设计报警电路分为蜂鸣器报警电路和LED发

40、光报警电路组成。当输入端P2.0为低电平时,有电流通过蜂鸣器,蜂鸣器发出声音报警。而当输入端为高电平时不报警。其程序图如图4-3所示图4-3 报警模块流程图结 论本文设计了基于单片机的酒精浓度检测仪,设计过程包括了硬件电路设计和软件程序的编写两部分。硬件电路部分结构简单、使用方便、适合大众化使用。软件部分采用模块化设计思想,各个子程序的功能相对独立,便于调试和修改。通过软、硬件联合调试,实验结果满足设计基本要求,达到设计目标。依据方案设计思想,设计了基于 AT89C51单片机的硬件系统,实现了语音报警模块、数码管显示和继电器驱动等的控制电路功能。报警模块功能为当检测到酒精浓度超标时,能够经蜂鸣器发出警告提示;数码管显示模块能够显示呼出气体中酒精含量值;继电器能够在检测到酒精浓度超标时,及时切断汽车引擎,禁止启动汽车; 使用 keil uvision4编译器基础上编写了整个软件系统,主要包括酒精传感器模拟电压输出采集处理子程序、转换程序、报警及继电器驱动等子程序; 通过软硬件的系统设计和整个系统的实验检验表明:采用酒精传感器能够准确测得

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论