毕业论文酒精浓度检测仪的设计.docx

上传人:小飞机 文档编号:4266105 上传时间:2023-04-12 格式:DOCX 页数:20 大小:213KB
返回 下载 相关 举报
毕业论文酒精浓度检测仪的设计.docx_第1页
第1页 / 共20页
毕业论文酒精浓度检测仪的设计.docx_第2页
第2页 / 共20页
毕业论文酒精浓度检测仪的设计.docx_第3页
第3页 / 共20页
毕业论文酒精浓度检测仪的设计.docx_第4页
第4页 / 共20页
毕业论文酒精浓度检测仪的设计.docx_第5页
第5页 / 共20页
点击查看更多>>
资源描述

《毕业论文酒精浓度检测仪的设计.docx》由会员分享,可在线阅读,更多相关《毕业论文酒精浓度检测仪的设计.docx(20页珍藏版)》请在三一办公上搜索。

1、1弓I 言2酒精浓度监测仪的硬件电路设计2. 189C51单片机系统2. 1. 1单片机片内结构2. 1.2 89C51芯片介绍.2.2传感器的选择2. 3A/D转换电路102.3.1 ADC0809的引脚及功能102. 3. 2 ADC0809的结构及转换原理112.4 LED显示电路122.4. 1 LED显示器的结构122.4.2 LED显示器的工作原理3酒精浓度监测仪的软件设计.3. 1主程序3. 2数据采集子程序131515163. 3数据处理子程序163. 4报警子程序174结论 参考文献19U前全世界绝大多数国家都采用呼气酒精测试仪对驾驶人员进行现场检测,以确定被测量者体内酒精含

2、量的多少,以确保驾驶员的生命财产安全。酒精浓度监测仪是一 种以气敏传感器和单片机为主,监测空气酒精浓度,并具有声光报警功能的空气酒精浓 度监测仪。其可监测出空气环境中酒精浓度值,并根据不同的环境设定不同的阈值,对 超过的阈值进行声光报警来提示危害。此外,空气酒精浓度监测仪还能监测某一特定环 境的酒精浓度如酒精生产车间可避免发生起火、爆炸及工业场地酒精中毒等恶性事故, 确保环境安全。关键词:单片机酒精浓度监测仪A/D转换声光报警酒精浓度监测仪的设计随着经济高速发展,越来越多的人有了自己的私家车,而酒后驾车造成的交通事故 也频繁发生。为此,需要设计一智能仪器能够检测驾驶员体内酒精含量。本论文研究的

3、 是一种以气敏传感器和单片机为主,监测空气酒精浓度,并具有声光报警功能的空气酒 精浓度监测仪。其可监测出空气环境中酒精浓度值,并可根据不同的环境设定不同的阈 值,对超过的阈值进行声光报警来提示危害。本课题分为两部分:硬件设计部分和软件设计部分。硬件部分为利用MQ3气敬传 感器测量空气中酒精浓度,并转换为电压信号经A/D转换后传给单片机系统,由单片机 及其外围电路进行信号的处理,显示浓度值以及超阈值声光报警。软件部分用汇编语言 进行编程,程序采用模块化设计思想。各个子程序的功能相对独立,便于调试和修改。 而硬件电路乂大体可分为单片机小系统电路、A/D转换电路、声光报警电路、LED显示 电路,各部

4、分电路的设计及原理将会在硬件电路设计部分详细介绍;程序的设计使用汇 编语言编程。2酒精浓度监测仪的硬件电路设计硬件设讣时,考虑酒精浓度是山传感器把非电量转换为电量,传感器输出的是05 伏的电压值并且电压值稳定,外部干扰小等。因此,可以直接把传感器输出电压值经过 ADC0809采集数据送入单片机进行处理。酒精浓度监测仪的硬件电路设计主要包括: 传感器测量电路、89C51单片机系统、A/D转换电路、声光报警电路、LED显示电路。 酒精浓度监测仪硬件设汁电路框图如图21。声光报警电被气敏A/D单片机LED显A图2-1硬件方案总体框图2.189C51单片机系统单片机是一种集成电路芯片,采用超大规模技术

5、把具有数据处理能力(如算术运算, 逻辑运算、数拯传送、中断处理)的微处理器(CPU),随机存取数据存储器(RAM),只读 程序存储器(ROM),输入输出电路(I/O 口),可能还包括定时计数器,串行通信口(SCI), 显示驱动电路(LCD或LED驱动电路),脉宽调制电路(PWM),模拟多路转换器及A/D 转换器等电路集成到一块单块芯片上,构成一个虽小然而完善的计算机系统。这些电路 能在软件的控制下准确、迅速、高效地完成程序设计者事先规定的任务。2. 1. 1单片机片内结构51单片机的片内结构如图22所示。它把那些作为控制应用所必需的基本内容都集成在一个尺寸有限的集成电路芯片上。按功能划分,它有

6、如下功能部件组成:(1) 微处理器(CPU)o 数据存储器(RAM)。4 个 8 位并行 I/O 口(P0 口、P1 口、P2 口、P3 口)。一个审行口。2个16位定时器、计数器。(7)2个16位定时器、计数器。中断系统。特殊功能寄存器(SER)o上述功能部件都是通过片内单一总线连接而成,其基本结构依旧是CPU加上外围 芯片的传统结构模式。但CPU对各种功能部件的控制是采用特殊功能寄存器的集中控 制方式。下面对框图21中各功能部件作一简单介绍:TALPPP图2-2 51单片机片内结构1、中央处理器CPUCPU是单片机的核心部件,它通常山运算器、控制器和中断电路等器件组成。CPU 进行算术运算

7、和逻辑操作的字长有4位、8位、16位和32位之分,字长越长运算速度 越快,数据处理能力也越强。2、存储器在单片机内部,ROM和RAM存储器是分开制造的。通常,ROM存储器容量较大,RAM存储器的容量较小,这是单片机用于控制的一大特点。(1) ROM存储器ROM存储器一般为1-64K字节,用于存放应用程序,故乂称为程序存储器。(2) RAM存储器通常,单片机片内RAM存储器容量为64-256字节,最多可达48K字节 RAM存储器主要用来存放实时数据或作为通用寄存器、数据堆栈和数据缓冲器之用。3、中断系统具有5个中断源,2级中断优先权。4、定时器/计数器片内有2个16位的定时器/计数器,具有4种工

8、作方式。在应用中,往往需要精确的定时,或对外部事件进行计数,因而需在单片机内部设置定时器/计数器部件。5、I/O接口和特殊功能部件I/O接口电路有宙行和并行两种。宙行1/0用于串行通信,它可以把单片机内部的并行8位数据(8位机)变成串行数据向外传送,也可以串行接收外部送来的数据并把它 们变成并行数据送给CPU处理。并行I/O 口电路可以使单片机和存储器或外设之间并行 地传送8位数据(8位机)。通常,特殊功能部件包括:定时器、计数器、A/D、D/A. DMA 通道和系统时钟等电路。定时器、讣数器用于产生定时脉冲,以实现单片机的定时控制; A/D和D/A转换器用于模拟量和数字量之间的相互转换,以完

9、成实时数据的采集和控制, DMA通道可以使单片机和外设之间实现数据的快速传送。总之,某一单片机内部究竟包 括哪些特殊功能部件以及特殊功能部件的数量是和它的型号有关的。单片机是整个系统的核心,对系统起监督、管理、控制作用,并进行复朵的信号处 理,产生测试信号及控制整个检测过程。所以在选择单片机时,参考了以下标准。(1)运行速度。单片机运行速度一般和系统匹配即可。(2) 存储空间。单片机内部存储器容量,外部可以扩展的存储器(包括I/O F1)空间(3) 单片机内部资源。单片机内部存储资源越多,系统外接的部件就越少,这可提 高系统的许多技术指标。(4)可用性。指单片机是否能很容易地开发和利用,具体包

10、括是否有合适的开发工具,是否适合于大批量生产、性能价格比,是否有充足的资源,是否有现成的技术资源 等。(5)特殊功能。一般指可鼎性、功耗、掉电保护、故障监视等。从硬件角度来看,与MCSdl指令完全兼容的新一代AT89CXX系列机,比在片外加EPROM才能相当的8031单片机抗干扰性能强,与87C51单片机技能相当,但功耗小。程序修改直接用+5V或+12V电源擦除,更显方便、而且其工作电压放宽至2.7V-6V,因而受电压波动的影响更小,而且4K的程序存储器完全能满足单片机系统的软件要求,故AT89C5I单片机是构造本检测系统的更理想的选择。2. 1.2 89C51芯片介绍掌握MCS51单片机,应

11、首先了解MCS51的引脚,熟悉并牢记各引脚的功能,MCS-51系列中各种型号芯片的引脚是互相兼容的。制作工艺为HMOS的MCS51的单片机都釆用40只引脚的双列直插封装方式,如图2-3所示。Pro匚Zl VccP1J E P00 (ADO)P12匚 POJ (ADI)P13 C P02(AD2)P14 d P03 (ADS)Pts E P04(AD4)Pre E P05 (ADS)Pl 7匚 P06(AD6)RST r P07(AD7)(RXD) P30 C甌 VPP(TXD) P31 C ALE/PROG(INTO) P32 C PSEN(INTI) P33 C P2.7(Al 5)TOP3

12、.4 匚 P26(Al 4)T1P3.5 E P2.5(Al 3)(WR) P3.6 C P2.4(Al 2)(RD) P37 匚 P2.3(All)XTAL1 E P2.2(A10)XTAL2 匚 P2.1(A9)GND E P20(A8)PDIP图2-3 AT89C51芯片管脚图40只引脚按其功能来分,可分为如下3类:(1)电源及时钟引脚:Vcc、Vss、XTALl、XTAL2o电源引脚接入单片机的工作电源。Vcc接+5V电源,Vss接地。时钟引脚XTAL1、XTAL2外接晶体与片内的反相放大器构成了 I个晶体振荡器, 它为单片机提供了时钟控制信号。2个时钟引脚也可外接独立的晶体振荡器。X

13、TAL1接 外部的一个引脚。该引脚内部是一个反相放大器的输入端。这个反相放大器构成了片内 振荡器。如果采用外接晶体振荡器时,此引脚接地。XTAL2接外部晶体的另一端,在 该引脚内部接至内部反相放大器的输出端。若采用外部时钟振荡器时,该引脚接受时钟 振荡器的信号,即把此信号直接接到内部时钟发生器的输入端。(2) 控制引脚: 酥、ALE、斎、RESET CRST)。此类引脚提供控制信号,有的 还具有复用功能。 RSTZVpd引脚:RESET (RST)是复位信号输入端,裔电平有效。当单片机运行 时,在此引脚加上持续时间大于2个机器周期(24个振荡周期)的高电平时,就可以完 成复位操作。在单片机工作

14、时,此引脚应为W0.5V低电平。VPD为本引脚的第二功能, 即备用电源的输入。当主电源发生故障,降低到某一规定值的低电平时,将+5V电源自 动接入RST端,为内部RAM提供备用电源,以保证片内RAM的信息不丢失,从而使 单片机在复位后能正常进行。 ALE/ PROG引脚:ALE引脚输出为地址锁存允许信号,当单片机上电正常工作 后ALE引脚不断输出正脉冲信号。当单片机访问外部存储器时,ALE输出信号的负跳 沿用于单片机发出的低8位地址经外部锁存器锁存的锁存控制信号。即使不访问外部锁 存器,ALE端仍有正脉冲信号输出,此频率为时钟振荡器频率的1/6。翻为该引脚 的第二功能。在对片内EPROM型单片

15、机编程写入时,此引脚作为编程脉冲输入端。 聞引脚:程序存储器允许输出控制端。在单片机访问外部程序存储器时,此 引脚输出脉冲负跳沿作为读外部程序存储器的选通信号。此引脚接外部程序存储器的 OE (输出允许端)。 斎ZVpp引脚:毎C功能为片内程序存储器选择控制端。当斎引脚为高电平时, 单片机访问片内程序存储器,但在PC值超过0FFFH时,即超出片内程序存储器的4KB 地址范W时将自动转向执行外部程序存储器内的程序。当瓦引脚为低时,单片机只访 问外部程序存储器,不论是否有内部程序存储器。(3) I/O 口引脚:P0、P1、P2、P3,为四个 8 位 I/O 口的外部引脚。POD、Pl 口、 P2

16、口、P3 口是3个8位准双向的I/O 口,各口线在片内均有固定的上拉电阻。当这3 个准双向I/O 口作输入口使用时,要向该口先写1,另外准双向口 I/O 口无高阻的浮 空”状态。山于单片机具有体积小、质量轻、价格便宜、耗电少等突出特点,所以本系统采用 89C51单片机,硬件设汁电路图如图1所示。89C51内部有4KB的EPROM, 128字节的RAM,所以一般都要根据所需存储容量的大小来扩展ROM和RAMo本电路接高 电平,没有扩展片外ROM和RAMo2.2传感器的选择山于本系统直接测量的是呼气中的酒精浓度,再转换为血液中的酒精含量浓度,故 采用气敏传感器。考虎到周圉空气中的气体成分可能影响传

17、感器测量的准确性,所以传 感器只能对酒精气体敏感,对其他气体不敏感,故选用MQ3型气敏传感器。其有很高 的灵敏度、a好的选择性、长期的使用寿命和可靠的稳定性。MQ3型气敏传感器山微 型AI2O3,陶瓷管和SnO2敬感层、测量电极和加热器构成的敏感元件固定在塑料或不 锈钢的腔体内,加热器为气敬元件的工作提供了必要的工作条件。传感器的标准回路有两部分组成。其一为加热回路,其二为信号输出回路,它可以准确反映传感器表面电阻 值的变化。传感器的表面电阻RS的变化,是通过与其审联的负载电阻RL的有效电 压信号VRL输出面获得的。二者之间的关系表述为:RS / RL=(VC-VRL) / VRL,其中 VC

18、为回路电压为10V。负载电阻RL可调为0. 5-200Ko加热电压Uh为5vo 述这些 参数使得传感器输出电压为0-5Vo MQ3型气敏传感器的结构和外形、标准回路、传感 器阻值变化率与酒精浓度、外界温度的关系图如图24所示。为了使测量的精度达到最商,误差最小,需要找到合适的温度,一般在测量前需将传感器预热5分钟。传8霍1变化单与洒n浓度、外界as之闵的吳慕图24传感器电路、结构及关系图2.3 A/D转换电路在单片机应用系统中,被测量对象的有关变化量,如温度、压力、流量、速度等非 电物理量,须经传感器转换成连续变化的模拟电信号(电压或电流),这些模拟电信号 必须转换成数字量后才能在单片机中用软

19、件进行处理。实现模拟量转换成数字量的器件 称为A/D转换器(ADC) OA/D转换器大致分有三类:一是双积分A/D转换器,优点是精度高,抗干扰性好, 价格便宜,但速度慢;二是逐次逼近式A/D转换器,精度、速度、价格适中;三是并行 A/D转换器,速度快,价格也昂贵。该设计中选用的是ADC0809属第二类,是8位A/D转换器。毎采集一次需100 u s。 0809具有8路模拟信号输入端口,地址线(23-25脚)可决定那一路模拟信号进行A/D 转换。22脚为地址锁存控制,当输入为高电平时,对地址信号进行锁存。6脚为测试控 制,当输入一个2US的高电平脉冲时,就开始A/D转换。7引脚为A/D转换结束标

20、志, 当A/D转换结束时,7脚输出高电平。9脚为A/D转换数据输出允许端,当OE脚为高 电平时,A/D转换数据输出。10脚为0809的时钟输入端。2.3.1 ADC0809的引脚及功能根据A/D转换器的转换原理可将A/D转换器分为两大类。一类是直接型A/D转换 器,另一类是间接型AZD转换器。该设计中的ADC0809属于直接A/D转换器中的逐次 比较型A/D转换器。逐次比较型A/D转换器在精度、速度、和价格上都适中,是最常 用的A/D转换器件。芯片采用的是ADC0809,以下介绍ADC0809的引脚及功能。芯片 如图2-4所示。N3IN2IN4INIIN5INOIN6ADDAIN7STARTl

21、匚DCD3OECLKVcc4We4GNDDI608savADDBADDCe 匚 仑 L7S54OV2 A D D D D D - D图2-4 ADC0809的引脚ADC0809是一种逐次比较式8路模拟输入、8位数字量输出的A/D转换器。山图 可见,ADC0809共有28个引脚,采用双列直插式封装。主要引脚功能如下:(1) IN0-IN7是8路模拟信号输入端。D0-D7是8位数字量输入端。A、B、C *J ALE控制8路模拟通道的切换,A、B、C分别与3根地址线或数据线相连,3位编码对应8个通道地址端口。C、A、B = 000-111分别对应IN0-IN7通道的地址。需要注总的是:ADC0809

22、虽然有8路模拟通道可以同时输入8路模拟宿号,但每 个瞬间只能换I路,各路之间的切换山软件改变C、A、B引脚上的代码来实现。OE、START. CLK为控制信号端,OE为输出允许端,START为启动信号输入 端,CLK为时钟信号输入端。(5) Vr(+)和Vr()为参考电压输入端。2. 3. 2 ADC0809的结构及转换原理ADC0809的结构框图如图2-5O ADC0809采用逐次比较的方法完成A/D转换的, 由单一的+5V电源供电。片内有锁存功能的8路选I的模拟开关,Ilf C. B、A引脚的 功能来决定所选的通道。0809完成一次转换需lOOus左右,输出具有TTL三态锁存缓 冲器,可直

23、接连接到MCS-51的数据总线上。通过适当的外接电路,0809可对0-5V的模拟信号进行转换。2.4 LED显示电路89C51的P3.O-P3.3端口作为四位LED数码管显示控制。P3.5端口用作单路显示/ 循环显示转换按钮,P3.6端口用作单路显示时选择通道。P0端口作0809的A/D转换数 据读入用,P2端口用作0809的A/D转换控制。VTARTN70CBAVr(+)Vr(-)图2-5 ADC0809的结构框图2.4. 1 LED显示器的结构8段比7LED显示器是山发光二极管构成的,常用的LED显示器为8段(或7段,段多了 1个小数点“dp”段),每一个段对应1个发光二极管。为了使LED

24、显示器显示不同的符号或数字,就要把不同段的发光二极管点亮,这样就要为LED显示器提供代码,因为这些代码可使LED相应的段发光,从而显示不同字型,因此该代码称之为段码(或称之为字型码)。7段发光二极管,再加上1个小数点位,共计8段。因此提供给LED显示器的段码正好是IBo表2-1各段与字节中各位对应个关系代码位D7D6D5D4D3D2DIDO显示段dpgfedcbacX aeKcK n图2-6 4位LED显示器的构成| N个LED显示块可拼成N位的LED显示器。图2-6是4位的LED显示器的结构原理图。N个LED显示块山N位位选线和8XN根段码线。段码线控制显示字符的字型, 而位选线为各个LED

25、显示块中各段的公共端,它控制该LED显示位的亮或暗。2. 4. 2 LED显示器的工作原理LED显示器有静态显示和动态显示2种显示方式。静态显示电路中,各位可独立显 示,只要在该位的段码线上保持段码电平,该位就能保持相应的显示字符。山于各位分 别山I个8位的数据输出口控制段码线,故在同一时间里,每一位显示的字符可以不相 同。这种显示方式虽然接口编程容易,但付出的代价是占用口线较多。若用I/O 口线接 口,则要占用4个8位I/O 口,若用锁存器接口,则要用4片74L373芯片。如果显示的位数增多,则需要增加锁存器。因此在显示位较多的悄况下,一般都采用动态显示方 式。该设计中釆用的就是LED动态显

26、示方武,原理如下。在多位LED显示时,为简化ii更件电路,通常将所有位的段码线相应段并联在一起, 由1个8位I/O 口控制,形成段码线的多路复用,而各位的共阳极或共阴极分别山相应的 I/O线控制,形成各位的分时选通。山于各位的段码线并联,8位I/O 口输出的段码对各 个显示位来说是相同的。因此,在同一时刻,如果各位位选线都处于选通状态的话,4 位LED将显示相同的字符。若要各位LED能够同时显示出与本位相应的显示字符,就 必须釆用动态显示方式,即在某一时刻,只让某一位的位选线处于选通状态,而其他各 位的位选线处于关闭状态,同时,段码线上输出相应位要显示的字符的段码。这样,在 同一时刻4位LED

27、中只有选通的那一位显示出字符,而其他3位则是熄灭的。同样, 在下一时刻,只让下一位的位选线处于选通状态,而其他各位的位选线处于关闭状态, 在段码线上输出将要显示字符的段码,则同一时刻,只有选通位显示出相应的字符,而 其他各位则是熄灭的。如此循环下去,就可以使各位显示出将要显示的字符。虽然这些 字符是在不同时刻出现的,而在同一时刻,只有一位显示,其他各位熄灭,但山于LED 显示器的余辉和人眼的视觉暂留作用,只要每位显示间隔足够短,则可以造成多为同时亮的假象,达到同时显示的效果。4位8段LED动态显示电路如图27所示。段码线侍讲纯4图2-7 4位8段LED动态显示电该设计中采用了 4位LED显示,

28、如图21数字电压表1件设讣电路图所示,第一个 显示通道位,第二个显示所测电压的个位数值,第二和第三个显示小数位数值,精确度 为 O.OlVo3.1主程序3酒精浓度监测仪的软件设计主程序流程图如下图3-1所示。开始图31主程序流程图3.2数据采集子程序A/D转换子程序流程图如下图3-2所示。ADC0809初始化后,把0通道输入的0-5V 的模拟信号转换为对应的数字量00H-FFH,然后将对应数值存储到3FH内存单元。图3-2 A/D转换子程序流程图3.3数据处理子程序数据处理子程序主要是系数调整和数制转换,将ADC0809采集的模拟电压值转换 为8位二进制数。系数是酒精浓度的最大测量值1500/

29、255=5.88确定。(89C51为8位处 理器,当0809输入电压为5.00V时输入数据为255 (FFH)。)系数调整是为了使十六进 制与十进制转换方便,将转换系数-5.88放大10倍取整后为59即3BH作为转换系数。图3-3数据处理子程序流程图34报警子程序系统设定阈值并保存在以50H开始的3个单元,为了便于比较和显示,阈值的千位 放入50H中,百位和十位放入51H,个位放人52H中。报警电路分为蜂鸣器报警电路和LED发光报警电路组成。当输入端P1.0为低电平时,有电流通过蜂鸣器,蜂鸣器发出声音报警。而当输入端为高电平时不报警。当输人端P1为低电平时,LED点亮报警, 反之输入端P1.1

30、为高电平则不报警。报警子程序执行之前,将报警阈值转换为压缩的BCD码并存放在两个存储单元中。传感器输入值A/D转换后,调用比较程序,经过数据处理后显示的测量值与阈值比较, 小于阈值则继续执行显示程序。若大于阈值则将单片机的P1O、Pll两端口清零进行声 光报警。40H、4旧、42H单元存放A/D转换后,并进行十进制转换后的结果。40H和50H分别存放的是处理后的测量值与阈值的千位的压缩BCD码,41H和51H分别存放的是处理后的测量值与阈值的白位、十位压缩的BCD码,42H和52H分别存放的是处 理后的测量值与阈值的个位的压缩BCD码。程序首先对40H、50H中的值进行比较大 小,如果40H中

31、的值大于50H中的值,则进行报警。依此类推,比较4iH和51H, 42H和52H本设汁过程包括了硬件电路设计和软件程序的编写两部分。硬件电路部分结构简 单,使用方便,适合大众化使用。软件部分采用模块化设计思想,各个子程序的功能相 对独立,便于调试和修改。由于时间和条件的限制,该系统还可以进一步完善,实现更 多功能。参考文献1张毅刚单片机原理及应用M高等教育出版社黄惠媛单片机原理与接口技术M海洋出版社3徐新民单片机原理与应用M浙江大学出版社何道清传感器与传感器技术M 科学出版社 电子制作.2007年第6期J-北京:电子制作编辑部,4243 电子制作.2007年第12期J-北京:电子制作编辑部,62

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号