1、本科毕业论文(20 届)呼出气体酒精含量检测仪的设计所在学院专业班级 电子信息科学与技术学生姓名指导教师完成日期2目 录摘 要 .1Abstract .2前 言 .3第一章 酒精测试仪总体方案设计 .41.2 酒精浓度检测仪设计方案 .4第二章 硬件设计 .52.1 传感器电路 .52.2 A/D 转换电路 .52.2.1 ADC0809 的结构及转换原理 .82.2.2 ADC0809 连线图 .92.3 89C51 单片机系统 .92.3.1 单片机片内结构 .92.3.2 89C51 芯片介绍 .102.3.3 晶振电路和复位电路 .112.4 LED 显示电路 .132.5 键盘电路
2、.142.6 报警电路 .152.6.1 灯光提示电路 .152.6.2 声音报警电路 .16第三章 软件设计 .173.1 软件调试系统 .173.2 主程序框图 .183.3 数据采集子程序程序框图 .19第四章 测试结果及结论 .204.1 调试 .204.2 结论 .20参考文献致谢1摘 要近年来,我国越来越多的人有了自己的私家车,而酒后驾车造成的交通事故也频繁发生。为此,我国将酒驾列入刑法范围内,所以需要设计一智能仪器能够检测驾驶员体内酒精含量。本课程设计研究的是一种以气敏传感器和单片机 A/D 转换器为主,检测驾驶员呼出气体的酒精浓度,并具有声光报警功能的空气酒精浓度监测仪。其可检
3、测出空气环境中酒精浓度值,并可根据不同的环境设定不同的阈值,对超过的阈值进行声光报警来提示危害。本课题分为两个部分:酒精浓度测试仪硬件设计部分和软件设计部分。硬件部分是利用 MQ3 气敏传感器测量空气中的酒精浓度,并转换为电压信号,经 A/D 转换器转换成数字信号后传给单片机系统,由单片机和相应外围电路进行信号的复杂处理,显示酒精浓度值以及高于阈值进行声光报警。程序是采用模块化的设计思想,各个子程序的功能相对独立,以便做出修改和调试。而硬件电路又大体可分为 A/D 转换电路、LED 显示电路、声光报警电路、按键电路、单片机小系统电路,各个部分电路的设计及原理将会在硬件电路设计部分作出详细介绍。
4、关键词:MQ3 气敏传感器;A/D 转换;数码管;STC89C512AbstractWith the development of our country which is becoming more and more stronger ,the ordinary families members , and the car sales is increasing trend every year . But as more and more people have cars , the emergence of the traffic accident will become more an
5、d more . Among of them , the traffic accidents due to drunk driving is in the most of all of them . In order to prevent drunk driving , the national law also expressly prohibit drunk driving in our country law . However , what is the drunk driving ? Is to drink a little wine ? Drink a lot of wine ?
6、To solve this problem , we have developed the alcohol content measurement detection instrument for measuring human body alcohol . My research of curriculum design is an air alcohol concentration monitoring instrument which is based on the MCU , sensor A/D converter ,concentration detection of human
7、exhaled breath alcohol , and has sound , light alarm functions . This instrument can can detect alcohol concentration values in the air environment , and can alarm to remind people according to the different environment setting different threshold , for sound and light above threshold . My topic is
8、divided into two parts : one part is the hardware design and the other part is the software design part about concentration tester alcohol . The hardware part is measuring the concentration of alcohol in the air of MQ3 gas sensors , and converter to voltage signal , through A/D converter converts th
9、e digital signal is transmitted to the MCU system , the complex process of signal by MCU and the corresponding peripheral circuits , display and high in alcohol concentration value threshold for sound and light alarm . Is the use of modular design program , each subroutine function independently , i
10、n order to make the modification and generally can be divided into A/D conversion circuit , LED display circuit , an optic alarm circuit , key circuit ,chip system circuit , the principle and design of each part of the circuit will make a detailed introduction on the part of the hardware circuit des
11、ign .Keywords:MQ3 gas sensor;A/D conversion;digital tube;STC89C513前 言全球每天都会有车祸发生,而且全球每年有大概 50 万人因为车祸而失去生命,发生车祸的原因有许多种,比如闯红灯、不遵守交通规则、路面的原因、天气环境的原因、驾驶人的个人原因等等,然而因为驾驶员个人的原因而发生事故的占 70%。驾驶员个人原因中,酒后驾车是发生交通事故的重要因素之一。根据世界各个国家的统计,交通事故中的 30%50%是由于饮酒后驾车所导致的。根据我国相关部门报道,喝酒后驾车发生交通事故的概率比平常人要高出最少 56 倍。中国人口比较多,而且随着中
12、国经济的快速增长,越来越多的人拥有汽车,随之而来的酒驾问题也会越来越严重。为了防止此类事故的发生、也为了给所有驾驶员一个警告,我国交通法规规定:禁止酒后驾车。根据我们的调查,酒驾的驾驶员很少承认自己有喝酒,随着每个家庭越来越富裕,交际应酬越来越多,大概有 2.43%的驾驶员会酒后驾车。美国有将近一半的交通事故与酒精有关,酒后驾车是美国车祸中最主要的因素之一。以前,我国查询酒驾主要依靠的是交警在马路边发现可疑车辆进行下车检查或者在马路边随机抽查,这样查询酒驾的方式非常缓慢、也需要大量的交警人员,管理起来非常麻烦,交管部门对此也感到非常无奈。为了大家的安全,也为了尽量减少此类事故的发生,交管部门决
13、定加大处罚力度、给大家一个警告,只要发现是酒后驾驶的,就算只喝了一小口,就会处以 50 元罚款,吊扣驾驶证 3 个月,扣除6 分;发现是醉酒驾驶的,将处以 200 元罚款,吊扣驾驶证 612 个月,扣除 12 分和行政拘留 15 天。对于酒后驾车造成死亡的,将处以 3 年以上的有期徒刑。需要提醒大家的是:如果乘车的人已经知道驾驶人员是酒后驾车却依然乘坐,那么乘车人员也将被处以警告或 10 元以上 30 元以下罚款。酒后驾车是非常严重的事情,轻则发生小事故、小摩擦,重则伤害自己伤害他人,就算你这一次酒后驾车没事,不代表你以后酒后驾车就会没事,因为毕竟酒后驾车发生交通事故的概率是很高的,为了减少此
14、类事故的发生不仅需要法律文献,还需要精确的酒精测量仪器。4第一章 酒精测试仪总体方案设计1.1 酒精浓度检测仪设计要求分析设计的酒精浓度测试仪应具有如下特点:(1)软件系统采用 C 语言进行编写,在兼顾实时性处理的同时,也方便了对数据的理。(2)系统应该有以下特点:小型化、高性价比、低功耗。(3)从方便携带的角度出发,系统应用了数码管显示器以及小键盘。(4)软件设计简单通俗易懂。1.2 酒精浓度检测仪设计方案在设计酒精浓度检测仪时,首先要把被测的气体送入传感器中,传感器输出电压值,然后经过 A/D 转换器转换,得到的数据,可以送入 51 单片机进行处理。除了这些之外,还需要接入键盘设定、LED
15、 数码管显示,报警电路等。全部的设计过程如图 1-1 所示:被测环境 气敏传感器A / D 转换电路单片机 L E D 显示声光报警电路键盘图1-1设计方案图5第二章 硬件设计2.1 传感器电路我们需要测量的是人呼出的气体中的酒精含量,所以要采用气敏传感器。在所有的传感器中,因为 MQ3 对乙醚有很高的灵敏度和良好的选择性、具有信号输出指示、双路信号输出、快速的响应恢复特性、简单的驱动回路、非常可靠的稳定性和长期的使用寿命,而且考虑到人呼出气的过程中会夹杂着空气以及空气中的其它成分可能会影响到传感器测量的精确性,所以我们直接选用 MQ3 型气敏传感器。MQ3 气敏传感器对酒精的灵敏度高,可以抵
16、抗汽油、烟雾、水蒸气的干扰,而且还是一种性价比非常高的传感器。MQ3 的回路由加热回路和信号输出回路两部分组成。MQ3 型气敏传感器的外形和结构如图 2-1 所示。正常情况下在测量前需要将传感器预先加热 5 分钟左右,加热的目的是能够使测量的误差最小化,精确度能比较高。图 2-1 MQ3 结构和外形A1 F2A3 B 4F5B 6RL1MQ-3+5 GNDRA2220RA1220 GNDIN图 2-2 MQ3 结构图2.2 A/D 转换电路A/D 转换电路也称为“模拟数字转换器”,将模拟量或者连续变化的量进行量化,转换为相应的数字量的电路。A/D 转换电路包括量化、抽样和编码三个功能。因为先把
17、气体经过传感器转换成为模拟信号,然后还需要把这些模拟信号转换成数字量后才能使6用单片机中的软件进行处理,所以必须要有 A/D 转换电路。A/D 转换器大致分有三类:一是双积分 A/D 转换器,积分型 A/D 工作原理是将输入电压转换成时间( 脉冲宽度信号)或频率(脉冲频率) ,然后由定时器 /计数器获得数字值。其优点是用简单电路就能获得高分辨率 ;二是逐次比较型 A/D 转换器,逐次比较型 AD从 MSB 开始,顺序地对每一位将输入电压与内置 DA 转换器输出进行比较,经 n 次比较而输出数字值,其优点是速度较高、功耗低,在低分辩率(12 位)时价格便宜 ;三是 - A/D 转换器,原理上近似
18、于积分型,将输入电压转换成时间(脉冲宽度)信号,用数字滤波器处理后得到数字值 ,优点是容易做到高分辨率。在考虑到三类 A/D 转换器的工作原理和优缺点时发现逐次比较型 A/D 转换器速度快、功耗低、在选择低分辨率时价格也比较便宜,所以决定采用逐次比较型 A/D 转换器。选择的芯片是 ADC0809,下面介绍一下 ADC0809 的引脚及功能。芯片如图 2-3 所示:图 2-3 ADC0809 的引脚ADC0809 可以和单片机直接接口。看图可知,ADC0809 总共有 28 个引脚,采用的是双列直插式封装。主要引脚功能如下:1:D0-D7 是 8 位数字量输入端;IN0-IN7 是 8 路模拟
19、信号输入端 ;2:REF(+) 、REF(-):基准电压;3:A、B 、C 与 ALE 控制 8 路模拟通道的切换,A、B、C 分别与 3 根地址线或数据相连,3 位编码对应 8 个通道地址端口;4:VCC:电源,单一 +5V;5:GND:地;ADDA、ADDB、ADDC:地址输入线,用于选通 8 路模拟输入中的一路6:EOC:转换结束信号输出引脚,开始转换时为低电平,转换结束时为高电平7:ALE:地址锁存允许信号,输入,高电平有效;8:CLK:时钟信号输入端,一般为 500KHZ;79:START:A/D 转换启动脉冲输入端;10:OE:输出允许控制端,用以打开三态数据输出锁存器。当通道选择
20、地址有效时,ALE 信号一出现,地址立马被锁定,在这个时候转换启动信号紧随 ALE 出现。START 的上升沿将逐次逼近寄存器复位,在该上升沿的之后的 2 微秒加 8 个时钟周期内,EOC 信号将变为低电平,指示转换正在进行,直到转换完成,EOC 变为高电平。微处理器收到变为高电平的 EOC 信号后,立即送出 OE 信号,打开三态门,读取转换结果。在与微机接口时,有两种方法选择输入通道:一种是通过地址总线选择,一种是通过数据总线选择。数据传送的关键问题是怎样确认 A/D 转换的完成,因为只有完成确认后,才能进行传送。为此可以采用下面三种方式:(1)定时传送方式对于每种 A/D 转换器来,转换时
21、间作为一项固定的和已知的技术指标。如 ADC0809转换时间为 128s。可以根据这个设计一个延时子程序,当启动转换后,CPU 就可以调用此子程序或者用定时器定时,延时时间或者定时时间稍微大于 A/D 转换所需要的时间。等延迟时间一到,转换已经完成了,就可以从“三态输出锁存器”读取数据。(2)中断方式采用中断方式传送数据时,将转换结束信号接到单片机的中断申请端,当转换结束时申请中断,CPU 响应中断后,通过执行中断服务程序,使 OE 引脚变为高电平,以提取 A/D 转换后的数字量。(3)查询方式采用查询法就是将转换结束信号接到 I/O 接口的某一位,或经过三态门接到单片机的数据总线上。A/D
22、转换开始之后, CPU 就查询 EOC 引脚的状态,若它为低电平,表示A/D 转换正在进行,则 MCS-51 应继续查询;如查询到 EOC 变为高电平,则给 OE 送一个高电平,以便于从线上提取 A/D 转换后的数字量。还需要引起注意的是:ADC0809 虽然允许可以同时输入 8 路模拟信号,但只共用一个转换器转换。译码电路与地址锁存完成对 A、 B、C 3 个地址位进行译码和锁存,其译码输出用于通道选择,其转换结果通过三态输出锁存器存放、输出,因此可以直接与系统数据总线相连,图 2-4 为通道选择表。8图 2-4 通道选择表(4)CLK、OE、START 为控制信号端,START 为启动信号
23、输入端,CLK 为时钟信号输入端,OE 为输出允许端。(5)V R(+)和 VR(-)为参考电压输入端。2.2.1 ADC0809 的结构及转换原理ADC0809 的结构框图如图 3-6。片内有锁存功能的 8 路选 1 的模拟开关,由C、B、A 引脚的功能来决定所选的通道。 ADC0809 采用逐次比较的方法完成 A/D 转换的,由单一的+5V 电源供电。 0809 完成一次转换需 100s 左右,输出具有 TTL 三态锁存缓冲器,可直接连接到 MCS-51 的数据总线上。START CLKOEVR(+) VR()VCCGNDEOCD0.D7三态输出锁存器8 位A/D 转换器地址锁存与密码CBAALE8 路模拟量开 关IN7.IN0