基于多传感器的酒精浓度检测装置设计

目 录

摘 要 ................................................................................................................................. I

1 绪论 ................................................................................................................................. 1

1.1 设计背景 ................................................................................................................... 1

1.2 设计酒精浓度测试仪的意义 ................................................................................... 2

1.3 本文主要研究工作 ................................................................................................... 3

2 硬件电路设计与实现 ..................................................................................................... 4

2.1设计思想 ....................................................................................................................... 4

2.2 单片机开发流程 ....................................................................................................... 4

2.3 硬件系统框图 ........................................................................................................... 5

2.4 信号采集电路 ........................................................................................................... 6

2.3.1 气体传感器的选择 ............................................................................................... 6

2.3.2 信号采样电路 ....................................................................................................... 9

2.5 信号转换电路 ......................................................................................................... 10

2.6 发光二极管报警电路及蜂鸣器 ............................................................................. 17

2.7 系统整体电路图 ..................................................................................................... 18

3 软件编程 ....................................................................................................................... 19

3.1 开发环境 ................................................................................................................. 19

3.2 程序流程 ................................................................................................................. 19

3.3 程序代码编写 ......................................................................................................... 21

4 电路调试与测试结果 ................................................................................................... 26

4.1 电路调试 ................................................................................................................. 26

4.2调试结果 .................................................................................................................. 27

4.2.1 检测原理 ............................................................................................................. 27

4.2.2检测依据 .............................................................................................................. 27

4.2.3 开始测试 ............................................................................................................. 28

5 结束语与展望 ............................................................................................................... 32

致 谢 .......................................................................................... 错误!未定义书签。

参考文献 ........................................................................................................................... 34

摘 要

2000年以来,随着中国经济的高速发展,人民生活水平的迅速提高,中国逐渐步入“汽车社会”,酒后驾车行为所造成事故越来越多,对社会的影响也越来越大,酒精正成为越来越凶残的“马路杀手”。据有关资料统计,全世界每年因车祸丧生的人数就超过60万人,留下永久性伤残者在400万以上,一般受伤者不计其数。在许多国家,车祸已成为第一位意外交通死亡原因。

此外,因为交通事故造成的经济损失也相当惊人。据事故调查统计,大约50%-60%的车祸于饮酒有关。中国公安部门在2009年8月,在全国各地加强查处酒后驾驶的力度,以减少想因酒后驾驶造成的恶性交通事故。要查处就涉及到检测人体内的酒精含量和使用设备来检测的问题。

本文研究设计了一种用于公共场所具有检测及超限报警功能的酒精浓度智能测试仪。其研究方案基于89S51单片机,MQ3酒精浓度传感器。系统将传感器输出的4-20mA 的标准信号通过以ADC0809为核心的A/D转换电路调理后,经由单片机进行数据处理,最后由发光二极管显示酒精浓度是否超标。文中详细介绍了数据采集子系统以及数据处理过程和报警电路的设计方法和过程。

关键词:酒精浓度传感器,单片机,A/D转换器

1 绪论

1.1 设计背景

2008年世界卫生组织的事故调查显示,大约50%—60%的交通事故与酒后驾驶有关,酒后驾驶已经被列为车祸致死的主要原因。在中国,每年由于酒后驾车引发的交通事故达数万起;而造成死亡的事故中50%以上都与酒后驾车有关,酒后驾车的危害触目惊心,已经成为交通事故的第一大“杀手”。2010年8月,十一届全国人大常委会第十六次会议将首次审议刑法修正案(八)草案,醉酒驾驶或被判刑。

根据调查表明,40%的酒后驾车者“过高地相信自己的驾驶技术”,这类驾车者认为自己酒量大,开车技术过硬,总想用酒后驾车来“炫耀”自己的技术,结果造成险象环生。27%的酒后驾车者的“安全意识不强” 。

喝酒时酒精的刺激使人兴奋,在不知不觉中就会喝多,当酒精在人体血液内达到一定浓度时,人对外界的反应能力及控制能力就会下降,处理紧急情况的能力也随之下降。对于酒后驾车者而言,其血液中酒精含量越高,发生撞车的几率越大。当驾驶者血液中酒精含量达80mg/100mL时,发生交通事故的几率是血液中不含酒精时的2.5倍;达到100mg/100mL时,发生交通事故的几率是血液中不含酒精时的4.7倍。即使在少量饮酒的状态下,交通事故的危险度也可达到未饮酒状态的2倍左右。

人们在喝酒过后,对驾驶车辆有两项很重要的影响:

(一)视觉能力变差:一般人在平常状态下的外围视界可达180度,酒后的视觉角度将会缩减,喝越多,就越无法看清旁边的景物。

(二)运动反射神经迟钝:慢了一两秒。如车速为60km/h,一秒钟车子就已经跑了16.67米,必然会产生严重后果。

此外,酒后驾驶者存往往存在“侥幸心理”,认为自己以前饮酒驾驶从来没有出过事,也没有被抓过,而且也经常看到其他人酒后驾驶,于是便侥幸酒后驾

驶,造成惨剧。有了以上思想作怪,驾驶者往往把酒后开车不当回事,使酒后驾驶屡禁不止。

正如前言所述,酒后驾驶问题日益成为当今社会的巨大问题,其所引起的交通事故比比皆是,正是基于对这种社会状况的担忧,我们选择了“基于多传感器的酒精浓度检测装置设计”这一课题。该系统对指定地方周围的气体进行检测,一旦发现酒精浓度超过标准,就启动报警装置,提醒民众防止酒后驾驶,以最大限度地避免酒后驾驶可能给社会和个人造成的巨大损失。该系统的开发与应用不仅有利于培养我们大学生积极思考、勤于动手的能力,培养我们善于与他人合作的精神,而且造福于我们广大人民群众,对我国经济与社会的稳定起着不可忽略的作用。

1.2 设计酒精浓度测试仪的意义

本设计基于AT89S51单片机设计的酒精气体浓度探测仪,可用来检测酒精气体浓度,最主要的用途是检测司机的酒精含量。酒后驾车发生事故的机率高达27%。随着摄入酒精量的增加,选择反应错误率显著增加,当血液中酒精含量由0.5‰增至1‰,发生车祸的可能性便增加5倍,如果增至1.5‰,可能性再增加6倍。机动车驾驶人员“酒后驾车” 及“醉酒驾车”极易发生道路交通事故, 严重危害了道路交通安全和人民生命财产安全。人饮酒后, 酒精通过消化系统被人体吸收, 经过血液循环, 约有90%的酒精通过肺部呼气排出, 因此测量呼气中的酒精含量, 就可判断其醉酒程度。开车司机只要将嘴对着传感头使劲吹气,仪器就能发上显示出酒精浓度的高低,从而判断该司机是否酒后驾车,避免事故的发生。当然,最好的办法是在车内安装这种测试仪,司机一进入车内检测仪就检测司机的酒精含量,如果超出允许值,系统控制引擎无法启动,这样就可从根本上解决酒后驾车问题。

酒精气体浓度探测仪在生产生活中也有重要的应用,比如,在一些环境要求严格的生产车间,用这种酒精浓度探测仪,可随时检测车间内的酒精气体浓度,当酒精气体浓度高于允许限定值时,发出警报,提醒人们及时通风换气,做到安

全生产。

1.3 本文主要研究工作

本文以AT89S51单片机为核心,设计了用于测量酒精浓度的探测仪,主要研究工作包括以下3个方面。

(1)硬件电路方面,对气体传感器MQ-3检测电路,接上一定阻值的负载电阻,检测它的技术参数,确定MQ-3所接负载电阻的大小,完成信号采样电路的设计;采样到的模拟电压电信号通过A/D转换,得到可供单片机处理的数字信号,再由单片机作相应的数据处理,使发光二极管报警显示。

(2)软件方面,标准的确定是该部分要做的主要工作。因为原始的采样值是一个间接的负载分压值,需要将它转化为被测酒精浓度值。通过多个样品的测量确定多个浓度区间的转换标准,并将每个区间的转换关系近似线性化处理,然后通过软件编程的方法来实现。

(3)为了尽量减少设计的气体传感器的测量误差,在测量酒精溶液样品时要考虑并解决3个主要问题。一是外界环境流动空气对传感器的影响和对气体样品的稀释,二是样品的稳定性对测量带来的误差,三是水蒸气对测量的影响。针对这3个主要问题提出以下解决方案和验证方法。

测量样品时,将探头尽量放入塑料瓶内,可以在一定程度上消除流动空气的影响,同时应选择空气流动较小的室内环境来测量。水蒸气对MQ-3的影响很小,这一点可以通过对只装有纯净水的塑料瓶的多次测量来验证。用相同容量的塑料瓶配制好不同浓度的酒精溶液后,将它密封并放置一段时间,待其稳定后再测量。再通过反复多次测量多组数据,求其平均值的方法来缩小测量误差。

2 硬件电路设计与实现

2.1设计思想

思路从课题的要求出发,要求测试气体的酒精浓度,必然要用到传感器。设计出来的仪器要对酒精快速响应,预热时间短,这就对酒精传感器的性能指标有一定的要求,首先这个酒精传感器本省就有很好的灵敏度,和检测到的酒精气体发生化学反应快。本设计使用MQ3传感器来提取人呼出的气体,采集到微弱的模拟信号之后,将由ADC0809转换器把模拟信号转换成数值信号传输给AT89S51单片机,经过单片机处理过后的数值信号送到到二极管、报警器进行显示和报警。

2.2 单片机开发流程

(1)可行性调研。可行性调研的目的,是分析完成这个项目的可能性。进行这方面的工作,可参考国内外有关资料,看是否有人进行过类似的工作。如果有,则可分析他人是如何进行这方面工作的,有什么有点和缺点,有什么值得借鉴的;如果没有,则需要作进一步的调研,此时的重点应放在能否实现这个环节,首先从理论上进行分析,探讨实现的可能性,所需求的客观条件是否具备,然后结合实际情况,再决定能否立项的问题。

(2)系统总体方案的设计。在进行可行性调研后,如果可以立项,下一步工作就是系统总体方案的设计。工作的重点应放在该项目的技术难度上,此时可参考这一方面更详细、更具体的资料,根据系统的不同部分和要实现的功能,参考国内外同类产品的性能,提出合理而可行的技术指标,编写出设计任务书,从而完成系统总体方案设计。

(3)设计方案细化,确定软硬件功能。一旦总体方案确定下来,下一步的工作就是将该项目细化,即需明确哪些部分用硬件来完成,哪些部分用软件来完成。由于硬件结构与软件方案会相互影响,因此,从简化电路结构、降低成本、减少故障率、提高系统的灵活性与通用性方面考虑,提倡软件能实现的功能尽可能由

软件来完成;但也应考虑软件代硬件的实质是以降低系统的实时性、增加处理进行为代价的,而且软件设计费用、研制周期也将增加,因此系统的软硬件功能分配应根据系统的要求及实际情况而合理安排,统一考虑。在确定软硬件功能的基础上,设计者的工作就开始涉及到具体的问题,如仪器的体积及与具体技术指标相对应的硬件实现方案,软件的总体规划等。在确定人员分工、安排工作进度、规定接口参数后,就比须考虑硬件软件的具体问题了。

(4)一个单片机应用系统经过调研、总体设计、硬件软件设计、制版、元件安装后,在系统的程序存储器中放入编制好的应用程序,系统即可运行。但一次性成功的几乎是不是不可能的。由于单片机在执行程序时人工是无法控制的,为了能够调试程序,检查硬件、软件运行情况,这就需要借助某种开发工具模拟用户实际的单片机,并且能随时观察运行的中间过程而不改变运行中有的数据性能和结果,从而进行模拟现场的真实调试。

2.3 硬件系统框图

基于AT89S51单片机用MQ-3型气体传感器实现酒精气体浓度的检测,需要信号采集模块用于对酒精浓度信号的采集,该信号是通过MQ-3气体传感器和负载电压得到分压电信号。信号转换模块用来把采集到得模拟电压信号转换位可以用单片机处理的数字信号。发光二极管管显示模块是对单片机处理后的数字信号的显示,用来提示酒精的浓度。报警模块是对设定值提供报警功能,该功能用发光二极管显示。根据各功能模块的设计,可得到它的系统总框图,如图2-1所示。

图2-1 系统总框图

2.4 信号采集电路

2.3.1 气体传感器的选择

根据被检测气体的不同,气敏传感器可分为以下三类:

(1)可燃性气体气敏传感器。目前该类气敏传感器需求量最大,包含各种无机和有机类气体检测,主要用于抽油烟机、泄露报警器和空气清新剂等方面,并已经形成生产规模,在油田、矿区、化工、企业及家庭等生产和生活领域广泛用作气体泄露报普,特别是用于家庭气体泄露报警,需求量不断增加,使该类传感器有着广泛的发展空间。

(2)CO 和H 2气敏传感器。CO 气敏元件可用于工业生产、环保、汽车、家

庭等CO 泄露和不完全燃烧检测报警;H 2气敏元件除应用于工业等领域外,主要用于家庭管道煤气泄露报警。由于我国管道煤气中H 2含量很高,而氢敏元件较氧化碳元件价格低,灵敏度高,因此,用氢敏元件做城市管道煤气泄露报警更为适宜。

(3)毒性气体传感器。毒性气体传感器又称为环境有毒有害气体传感器,主要用于检测烟气、尾气、废气等环境污染气体,虽然SnO 2气敏传感器对CO ,H 2S 等有毒有害气体敏感,但应用最多的仍是电解式化学传感器。

传感器的分类方式有很多种,以上是根据被检测气体的性质进行的分类,也有根据元件的物理特性进行分类的。

一个新型的气体检测系统应该包括:

(1)基于一种或几种传感技术的气体传感器。

(2)组合了气体传感器和采样调理电路的探头。

(3)配有人机接口软件的中心监测和控制系统。

(4)在一些应用中,与其它安全系统和仪器的接口。

本设计中的酒精气体传感器采用的MQ-3型, 它属于MQ 系列气敏元件的一种。如图2-2所示:

图2-2 MQ-3

特点:检测范围为10ppm ~2000ppm ;灵敏度高,输出信号为伏特级;响应速度快,小于10秒;功耗小于0.75W ,尺寸:D17*H10。

MQ-3型气敏传感器的敏感部分是由金属氧化物(二氧化锡)的N 型半导体微晶烧结层构成。当其表面吸附有被测气体酒精分子时,表面导电电子比例就会发生变化,从而其表面电阻会随着被测气体浓度的变化而变化。由于这种变化是可逆的,所以能重复使用。MQ-3的灵敏度特性曲线如 图2-3所示。

图2-3 MQ-3灵敏度特性曲线

检测电路如图2-4所示,当电源开关S 断开时,传感器加热电流为零,实测A ,B 之间电阻大于20M Ω。S 接通,则f 与f 之间电流由开始时155mA 降至153mA 而稳定。加热开始几秒钟后A ,B 之间电阻迅速下降至10K Ω以下,然后又逐渐上升至120K Ω以上后并保持着。此时如果将酒精溶液样品靠近MQ-3传感器,我们立即可以看到数字万用表显示值马上由原来大于120K Ω降至10K Ω以下。移开小瓶过1分钟左右后,A ,B 之间电阻恢复至大于120K Ω。这种反应可以重复试验,但要注意使空气恢复到洁净状态。经实验的反复检测,MQ-3传感器可以正常工作使用,对不同浓度的酒精溶液有不同的变化,响应时间和恢复时间都正常,可以开始作信号采样模块电路的设计。

图2-4 MQ-3检测电路

2.3.2 信号采样电路

信号的采样模块电路如图2-5所示。MQ-3的加热电阻两端即H 引脚接至+5V直流稳压电源,用于电阻丝对敏感体电阻的加热。MQ-3的两个A 引脚相连,作为敏感体电阻的一个电极。MQ-3的两个B 引脚也连接在一起,作为敏感体电阻的另一个电极。将电极断A 接到电源正极,电极端B 接两个270Ω并联的电阻。

MQ-3型气敏传感器与电位器串联构成分压电路,采样点为电位器的分压。MQ-3型气敏传感器的敏感部分是由金属氧化物SnO 2的N 型半导体微晶烧结层构成。当其表面吸附有被测气体酒精分子时,表面导电电子比例就会发生变化,从而其表面电阻会随着被测气体浓度的变化而变化。由于这种变化是可逆的,所以能重复使用。当气敏传感器的敏感体电阻阻值发生改变时,对应的电位器的分压值也会发生相应的变化,即一个电压值对应着一个被测酒精气体浓度。对酒精气体浓度的采样就可以转化为对电位器分压的采样。

在采样硬件电路中实际要考虑到MQ-3的实际技术参数,即加热电阻和敏感体电阻的大小,该部分应与电源正极相连。负载电阻要根据MQ-3实际的技术参数而选择阻值合适的电阻。应为实验所用的MQ-3在预热5到10分钟后,它的敏感体电阻只有120KΩ,所以负载电阻选用一个300Ω的滑动变阻器,构成采样部分的分压电阻。

图2-5 采样模块

2.5 信号转换电路

单片微机是单片微型计算机的译名简称,在国内也常称为“单片微机”或“单片机”。它包括中央处理器CPU ,随机存储器RAM ,只读存储器ROM ,中断系统,定时器/计数器,串行口和I/O口等等。现在,单片微机已不仅指单片计算机,还包括微计算机,微处理器,微控制器和嵌入式控制器,单片微机已是它们的俗称[8]。

AT89S51是美国ATMEL 公司生产的低功耗,高性能CMOS8位单片机,片内含4K 的可系统编程的Flash 只读程序存储器,器件采用ATMEL 公司的高密度、非易失性存储技术生产,兼容标准8051指令系统及引脚。它集Flash 程序存储器,既可在线编程也可以用传统方法进行编程及通用8位微处理器于单片芯片中,可灵活应用于各种控制领域。AT89S51提供以下标准功能:4KBFlash 闪存存储器,128B 内部RAM ,32个I/O口线,看门狗,两个数据指针,两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。

根据实际需要,本次设计选用的是以8051为核心单元Atmel 公司的低耗AT89S51单片机。AT89S51芯片有40条引脚,采用双列直插式封装,如图2-6所示。下面说明各引脚功能。

图2-6 AT89S51芯片管脚

VCC :运行和程序校验时接电源正端。

GND :接地。

XTAL1:输入到单片机内部振荡器的反相放大器。

XTAL2:反相放大器的输出,输入到内部时钟发生器。

P0口:8位漏极开路的。使用片外存储器时,作低八位地址和数据分时复用,能驱动8个LSTTL 上拉电阻。

P1口:8位、准双向I/O口。

P2口:8位、准双向I/O口。当使用片外存储器(ROM 及RAM )时,输出高8位地址。可以驱动4个LSTTL 负载。

P3口:8位、准双向I/O口,具有内部上拉电路,提供各种替代功能。P3.0——

RXD 串行口输入口,P3.1——TXD 串行口输出口,P3.2——INT0 外部中断0输入,P3.3——INT1 外部中断1输入,P3.4——T0定时器/计数器0的外部输入,P3.5——T1定时器/计数器1的外部输入,P3.6——WR 低电平有效,输出,片外存储器写选通,P3.7——RD 低电平有效,输出,片外存储器读选通。 RST :复位输入信号,高电平有效。在振荡器工作时,在RST 上作用两个机器周期以上的高电平,将器件复位。 EA /VCC:片外程序存储器访问允许信号,低电平有效。高电平时选择片内程序存储器,低电平时程序存储器全部在片外而不管片内是否有程序存储器。 ALE/PROG:地址锁存允许信号,输出。ALE 以1/6的振荡频率固定速率输出,可作为对外输出的时钟或用作外部定时脉冲。

单片机最小系统的设计包括电源,晶振和复位电路三个部分。这是使单片机正常工作的必要外围电路部分。针对不同型号的单片机在最小系统设计上会有一些差别。对于选用的AT89S51单片机,根据美国ATMEL 公司提供的技术资料,可以对它的最小系统作恰当的设计。

对于电源部分,技术资料中性能参数里给出的标准工作电压是4.0~5.5V 。因此,单片机的引脚40对应的VCC 接到+5V电源的正极,引脚10对应的GND 接到+5V电源的接地端,为AT89S51单片机提供正常的工作电压。

对于晶振部分,AT89S51单片机中有一个用于构成内部振荡器的高增益反相放大器,引脚19对应的XTAL1和18对应的XTAL2分别是该放大器的输入端和输出端。这个放大器与作为反馈元件的片外石英晶体或陶瓷谐振器一起构成自激振荡器。石英晶体及电容C1和C2接在放大器的反馈回路中构成并联谐振电路。石英晶体的两端分别接到引脚XTAL1 和引脚XTAL2,同时石英晶体的两端分别接一个电容C1和C2,电容的另一端接地。对于外接电容C1和C2的大小虽然没有十分严格的要求,但电容容量的大小还是会对振荡频率的高低、振荡器工作的

稳定性、起振的难易程度和温度稳定性带来一定的影响。根据技术资料的推荐,使用石英晶体推荐电容容量为30pF±10pF ,使用陶瓷谐振器推荐电容容量为40pF±10pF 。因为电路中接的是石英晶体,所以设计中接的两个电容C1和C2的容量都为33pF 。

对于复位电路部分,AT89S51技术资料给出,当振荡器工作时,RST 引脚出现两个机器周期以上的高电平将使单片机复位。复位是单片机的初始化操作,当由于程序运行出错或操作错误使系统处于死锁状态时,为了摆脱困境,可以按复位键以重新启动,所以复位电路的设计很有必要。复位操作有上电自动复位、按键电平复位和外部脉冲复位三种方式,本设计选用按键电平复位方式。如图2-7所示,10μF的电容C3与270Ω的电阻并联后再与一个10KΩ的电阻串联,电容的正极端接到电源的正极,电容的另一端接至引脚RST 。设计中选用的石英晶体大小为11.0952MHz , 但复位键按下后,电容和电阻选用的参数值能够保证给复位端RST 提供大于2个机器周期的高电平复位信号[10]。

图2-7 AT89S51单片机最小系统设计电路

ADC0809是CMOS 单片型逐次逼近式A/D转换器,内部结构如图2-8所示,

它由8路模拟开关、地址锁存与译码器、比较器、8位开关树型A/D转换器、逐次逼近寄存器、三态输出锁存器等其它一些电路组成。因此,ADC0809可处理8路模拟量输入,且有三态输出能力,既可与各种微处理器相连,也可单独工作。输入输出与TTL 兼容。

图2-8 ADC0809内部结构

ADC0809芯片有28条引脚,采用双列直插式封装,如图2-9所示。下面说明各引脚功能。

图2-9 ADC0809芯片

IN0~IN7:8路模拟量输入端。

2-1~2-8:8位数字量输出端。

ADDA 、ADDB 、ADDC :3位地址输入线,用于选通8路模拟输入中的一路。如表1所示。

ALE :地址锁存允许信号,输入,高电平有效。

START :A/D转换启动信号,输入,高电平有效。

EOC :A/D转换结束信号,输出,当A/D转换结束时,此端输出一个高电平(转换期间一直为低电平)。

OE :数据输出允许信号,输入,高电平有效。当A/D转换结束时,此端输入一个高电平,才能打开输出三态门,输出数字量。

CLK :时钟脉冲输入端。要求时钟频率不高于640KHZ 。

REF (+)、REF (-):基准电压。

Vcc :电源,单一+5V。

GND :地。

ADC0809的工作过程是:首先输入3位地址,并使ALE=1,将地址存入地址锁存器中。此地址经译码选通8路模拟输入之一到比较器。START 上升沿将逐次逼近寄存器复位。下降沿启动 A/D转换,之后EOC 输出信号变低,指示转换正在进行。直到A/D转换完成,EOC 变为高电平,指示A/D转换结束,结果数据已存入锁存器,这个信号可用作中断申请。当OE 输入高电平 时,输出三态门打开,转换结果的数字量输出到数据总线上。

当检测到酒精气味时,气体传感器的A-B 间电阻变小,则ADC0809的模拟输入端IN0的电压变大。采用查询方式对输入模拟信号进行A/D转换,然后将数据通过发光二极管显示。

表1 ADC0809通道地址

ADDC ADDB ADDA 选通通道

0 0 0 0 0 1

0 1 0

0 1 1

1 0 0

1 0 1

1 1 0

1 1 1 IN0 IN1 IN2 IN3 IN4 IN5 IN6 IN7

ADC0809芯片内部没有时钟脉冲源,可以用单片机提供的地址锁存控制输入信号ALE 经D 触发器二分频后,作为 ADC0809的时钟输入。ALE 端信号的频率是单片机时钟频率的1/6。单片机的时钟频率是11.0952MHz ,则ALE 端输出信号的频率为1.8492MHz ,再二分频后为0.9246Hz ,符合ADC0809对时钟频率的要求。由于ADC0809具有三态输出数据琐存器,其8位数据输出端可以直接与

数据总线相连。地址选通端ADDA ,ADDB ,ADDC 分别与单片机地址总线的低三位A0,A1,A2相连,用于选通IN0-IN7中的某一通道。由于ALE 和START 连在一起,ADC0809在锁存通道地址的同时启动A/D转换。在读取A/D转换结果时,OE 产生的正脉冲信号用于打开三态输出锁存器。ADC0809的EOC 信号与单片机的P0.1相连,作为A/D转换是否结束的状态信号供单片机查询。

2.6 发光二极管报警电路及蜂鸣器

工作原理:由于本次试验没有要求使用数码显示管显示具体的酒精浓度测试数值,所以只选用3个发光二极管和蜂鸣器报警来显示酒精浓度是否超标。由ADC0809反馈的信号经AT89S51接受,输出至分别为红色和蓝色的发光二极管和蜂鸣器。

当绿色二极管发亮,则酒精浓度没有超标;当红色二极管发亮,则酒精浓度超标,蜂鸣器报警。如图2-10,2-11所示。

图2-10 发光二极管连接方式

图2-11 蜂鸣器连接方式

2.7 系统整体电路图

信号采样模块电路将采样信号输出端接至A/D转换芯片的输入端,再加上单片机最小系统电路、单片机与模数转换芯片的连接和单片机与发光二极管的连接,即可作出它的整体电路图,如图2-12所示。

图2-12 整体电路图

3 软件编程

3.1 开发环境

选用的开发平台为MedWin 单片机集成开发环境,需在PC 机上安装MedWin 和Keil C51软件,然后在MedWin 软件代码编辑器编辑程序代码,经汇编,修改,产生代码,形成输入输出口实验十六进制.HEX 文件。

打开Microcontrmller ISP Software,在菜单options 选项中选择select device,在弹出的窗口中选择器件AT89S51,并选Byte Mode 点击OK 。初始化器件后,将经过编译生成的.HEX 十六进制文件下载到单片机。

对于8051系列单片机,现有四种语言支持,即汇编、PL/M、C 和BASIC 。本设计软件编程部分选用C 语言来写程序代码。

3.2 程序流程

当检测到酒精气味时,气体传感器MQ-3两个电极端A-B 间电阻将变小,对应与气体传感器负载电阻的分压将变大。因为ADC0809的模拟输入端IN0与负载电阻的一端用导线连在了一起。所以单片机在启动测试模数转换芯片之前要选择通道0,写入模数转换芯片,并将用作查询的单片机引脚P3.3置位,然后启动对通道IN0端输入的采集电压信号作模数转换,等待转换的结束。利用单片机丰富的I/O口可以采用查询方式来检测模数转换是否结束,当单片机引脚P3.3为1时转换未结束等待,当查询到P3.3为0时表示模数转换已经结束,可以开始读取数据了。单片机通过I/O口与模数转换芯片的数据输出口相连读取转换后的数据。读取后的数据送到数据存储器单元中,经过单片机作相应的处理,即要将该电压值转换为酒精浓度值,然后处理后的数据转换成三位十进制BCD 码用数码管显示。程序流程图如图3-1所示。

图3-1 程序流程图

3.3 程序代码编写

根据程序流程图和各个子程序的编写可以得到整个设计的总程序代码,打开实验开发平台MedWin 单片机集成开发环境,在MedWin 软件代码编辑器编辑程序代码,经编辑,修改,产生代码。

#include

unsigned char code

bitcode[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};

unsigned char dispbuf[4];

unsigned int i;

unsigned int j;

unsigned char getdata;

unsigned int temp;

unsigned int temp1;

unsigned char count;

unsigned char d;

sbit ST=P3^0;

sbit OE=P3^1;

sbit EOC=P3^2;

sbit CLK=P3^3;

sbit P34=P3^4;

sbit P35=P3^5;

sbit P36=P3^6;

sbit P20=P2^0;

sbit P21=P2^1;

sbit P22=P2^2;

sbit P23=P2^3;

sbit P17=P1^7;

void TimeInitial();

void Delay(unsigned int i);

void TimeInitial()

{ TMOD=0x10;

TH1=(65536-200)/256;

TL1=(65536-200)%256;1

EA=1;

ET1=1;

TR1=1;

}

void Delay(unsigned int i)

{

unsigned int j;

for(;i>0;i--)

{

for(j=0;j

{;}

}

}

void Display()

{

P1=dispbitcode[dispbuf[3]];

P20=0;

P21=1;

P22=1;

P23=1;

Delay(10);//避免闪烁

P1=0x00; //关闭一下,否则显示不全

P1=dispbitcode[dispbuf[2]];

P17=1;

P20=1;

P21=0;

P22=1;

P23=1;

Delay(10);

P1=0x00;

P1=dispbitcode[dispbuf[1]];

P20=1;

P21=1;

P22=0;

P23=1;

Delay(10);

P1=0x00;

P1=dispbitcode[dispbuf[0]];

P20=1;

P21=1;

P22=1;

P23=0;

Delay(10);

P1=0x00;

}

void main()

{

TimeInitial();

while(1)

{

ST=0;

OE=0;

ST=1;

ST=0; //只需要启动一下,不需要一直保持

P34=0; //地址通道

P35=0;

P36=0;

while(EOC==0);

OE=1;

getdata=P0;

OE=0;

temp=getdata*1.0/255*500;

dispbuf[0]=temp%10;

dispbuf[1]=temp/10%10;

dispbuf[2]=temp/100%10;

dispbuf[3]=temp/1000;

Display();

}

}

void t1(void) interrupt 3 using 0

{

TH1=(65536-200)/256;

TL1=(65536-200)%256;

CLK=~CLK;

}

4 电路调试与测试结果

4.1 电路调试

根据各个模块功能的设计和绘制的整体电路图,找到各功能模块的连接点。按照设计的步骤,并对照总电路图,在面包板上连接电路。电路的连接顺序是,先连接好各个模块,在调试检查正确的前提下再把各个模块连接起来。

打开MedWin 软件,将写好的调试程序代码在计算机上输入、编辑、修改、产生代码,形成输入输出口实验.HEX 文件。打开打开Microcontrmller ISP Software软件,在菜单options 选项中选择select device,在弹出的窗口中选择器件AT89S51,并选Byte Mode点击OK 。初始化器件后,将经过编译生成的,HEX 十六进制文件下载到单片机。

电路连接好,并将调试程序代码(注释电压到酒精浓度转换关系代码)烧写到AT89S51单片机上后,接上+5V电源开始调试。先把气体传感器探头用一个阻值为20k Ω的电阻替代,复位单片机,观察数码管上的显示数据和发光二极管的点亮情况。用万用表测量采样点的电压值,看用万用表测得的电压值与数码管上显示数据是否一致。因为各导线和元器件对电压电流的影响,数码管显示的数据与万用表测得的数据存在一定的偏差,但在可接受的范围内。调节电位器,观察数码管数据显示的变化,同样用万用表测量电压值作比较。测量数据与数码管显示数据基本一致,说明电路数码管显示部分连接正确。然后,再把电位器阻值从0开始逐渐调大,在每过一个0.12V 电压后观察相应发光二极管点亮,说明发光二极管显示部分电路连接正确。

调试电路其他功能模块正确后,将预热足够长时间能正常工作的气体传感器MQ-3换上原来20kΩ的电阻。准备好若干个不同浓度的酒精气体样品,检测气体传感器是否能正常工作。

4.2调试结果

4.2.1 检测原理

利用便携式酒精含量测试仪来判断人体内血液酒精浓度的依据为:人饮酒后,酒精通过消化系统被人体吸收,经过血液循环,约有90%的酒精通过肺部呼气排出,因此测量呼气中的酒精含量,可以判断人的醉酒程度。另外更重要的依据是人体呼气中的酒精含量与血液中的酒精含量有如下关系:BAC( in mg/L)=Br AC(in mg/L)×2200,上式中,BAC 是血液酒精浓度的英文缩写,BrAC 则是呼气酒精浓度的缩写,括号中的mg/L表示以每升中多少毫克为单位。即以mg/L为单位的血液酒精浓度在数值上相当于以mg/L为单位的呼气酒精浓度乘以系数2200(由于各国的情况不同,在美国此系数采用2000,而欧洲很多国家采用2100)。基于这种关系,根据驾驶员呼出气体中的酒精含量来确定被测量者体内酒精含量的多少,研究表明,当驾驶员呼气中酒精浓度超过0.25mg/L时,驾驶员就会在复杂技巧上出现障碍、驾驶能力变坏,肇事率是无酒精状态的2倍,驾驶员驾车容易肇事,以此标准来衡量司机是否能够安全驾驶,当驾驶员呼气中酒精浓度超过0.40mg/L时,驾驶员出现多话、感觉障碍,肇事率是无酒精状态的6倍。这时驾车就比较危险了,需进行报警。呼出气体中酒精含量检测的方法为:被测者对准传感器进行吹气7秒即可。

4.2.2检测依据

到底身体中的酒精浓度要达到多少才需要禁止其驾驶车辆?由于人种的不同,对酒精的代谢速率也不一样,再加上各国的社会风俗习惯不同,因此订定的标准也不完全一样。以下表2和表3分别是世界各国法定酒精浓度限制和体内酒精浓度与肇事率的关系。

表2:世界各国法定酒精浓度限制

表3:体内酒精浓度与肇事率的关系

4.2.3 开始测试

(1)思路是定量配制多个浓度的酒精溶液,使得测量误差控制在一定浓度范围内,浓度范围经过多次分段后,可以把每一段当成是线性来处理;这几种溶液

的浓度已知,且有一定的浓度差配制;在每个浓度的酒精溶液挥发气体中,测量五次,求得本浓度下传感器采集到的平均电压值。拟合出浓度与电压关系的分段函数,求出各段方程,就可以定标了。

(2)准备实验器材:95%(按体积比例)浓度的酒精溶液一瓶(100mL ), 75%浓度的酒精溶液一瓶(100mL ),20mL 注射器一支(充当量筒用,度量准确),小空瓶若干;特别说明下小瓶子的选择,实验表明:瓶口口径最好和传感器大小差不多,容积最好在100mL 左右,这样在传感器与酒精气体接触时能够充分接触,减小误差;瓶口太大,酒精气体容易跑掉,导致结果偏低;瓶口太小,传感器接触面积不够大,测试结果也是偏低;瓶子容积太大,挥发出来的酒精气体被瓶中空气稀释,测试结果也会不准。

(3)配制几种浓度的溶液,在每个浓度下测试5次。酒精溶液A 是用5%浓度的酒精溶液加一定量的水稀释而成,浓度大约是2.5%;酒精溶液B 是用75%浓度的酒精溶液加一定量水稀释而成,浓度大约是15%;酒精溶液C 是用95%浓度的酒精溶液加一定量水稀释而成,浓度大约是40%;酒精溶液D 是用95%浓度的酒精溶液加一定量水稀释而成,浓度大约是85%。测试数据如表4:

表4:不同浓度酒精溶液测试数据

浓度为2.5%的酒精溶液A 在测试5次后绿灯亮,没有报警;

浓度为15%的酒精溶液B 在测试前2次后红灯亮,蜂鸣器报警;第3、4次后绿灯亮;测试第5次是红灯亮,蜂鸣器报警

浓度为40%的酒精溶液C 在测试5次后红灯亮,蜂鸣器报警; 浓度为85%的酒精溶液D 在测试5次后红灯亮,蜂鸣器报警。

由此看出,酒精浓度在15%以下时,测试仪显示为绿灯,安全;酒精浓度在15%以上时,测试仪显示为红灯,蜂鸣器报警,不安全;酒精浓度在15%左右时,测试仪测试红灯,绿灯都亮,而且红灯亮时蜂鸣器还有一次没有报警,推断可能是传感器的测试临界度。

图4-1 红灯亮

图4-2 绿灯亮

5 结束语与展望

当设计做完后,发现本此设计只知道了测试气体是否酒精浓度超标,没有知道具体的酒精浓度数值,应该把程序写的更完善一点,用数码二极管来显示数值,这样更好的得到精确的结果。

当然可以对本系统作一定改进,并在此基础上制作酒精检测钥匙。即在车钥匙上设计一个小吹管,由一组信号发射器连接至车上的电子控制组件,如果驾驶者在开门之前所做的酒精吹气测试样本被发现超过法定允许的标准值,则系统将使引擎维持在静止状态无法启动。当驾驶者按下遥控器上的开门按钮,酒精探测仪也随之启动,然后驾驶者对着小管口吹气,酒精浓度会经由感应器上的小绿灯或小红灯显示出来。当显示绿灯时,钥匙将传送允许信号至车辆的电子控制系统,也就是通过检测,可以上路了;但是如果测试结果为红灯,则车辆将维持在锁定状态,即使钥匙插入钥匙孔也无法发动车子。

半导体气敏传感器和电化学固体电解质气敏传感器具有测量精度高、所需试样少、响应快等特点,广泛应用于化工、建筑、环保、医疗、家电、安全保卫等领域。随着纳米技术、薄膜技术等新材料研制成功,微机械与微电子技术、计算机技术等的综合应用,高性能的气敏传感器将会不断出现。

参考文献

[1] 司士辉.生物传感器[M].化学工业出版社,2003.

[2] 吴桂秀.传感器应用制作入门[M].浙江科学技术出版社,2004. [3] 彭军.传感器与检测技术[M].西安电子科技大学出版社,2003. [4] 陈杰,黄鸿.传感器与检测技术[M].北京:高等教育出版社,2003. [5] 吴桂秀.传感器应用制作入门[M].浙江科学技术出版社,2004. [6] 张锡富.传感器[M].北京:机械工业出版社,2002.

[7] 郁有文.传感器原理及工程应用[M].西安:西安电子科技大学出版社,2003. [8] 楼然苗,李光飞.51系列单片机设计实例[M].北京航空航天大学出版社,2003. [9] 朱定华,戴汝平.单片微机原理与应用[M].清华大学出版社,2003. [10] 胡乾斌,李光斌,李玲.单片微型计算机原理与应用[M].华中科技大学出版社,2002.

[11] 胡汉才.单片机原理与借口技术[M].清华大学出版社,2004. [12] 余家春.Protel 99 SE电路设计实用教程[M].中国铁道出版社,2004. [13] 张培仁.基于汇编语言编程MCS-51单片机原理与应用[M].北京:清华大学出版社,2003.

[14] 王静霞.单片机应用技术(C语言版)[M] .北京:电子工业出版社2010.

目 录

摘 要 ................................................................................................................................. I

1 绪论 ................................................................................................................................. 1

1.1 设计背景 ................................................................................................................... 1

1.2 设计酒精浓度测试仪的意义 ................................................................................... 2

1.3 本文主要研究工作 ................................................................................................... 3

2 硬件电路设计与实现 ..................................................................................................... 4

2.1设计思想 ....................................................................................................................... 4

2.2 单片机开发流程 ....................................................................................................... 4

2.3 硬件系统框图 ........................................................................................................... 5

2.4 信号采集电路 ........................................................................................................... 6

2.3.1 气体传感器的选择 ............................................................................................... 6

2.3.2 信号采样电路 ....................................................................................................... 9

2.5 信号转换电路 ......................................................................................................... 10

2.6 发光二极管报警电路及蜂鸣器 ............................................................................. 17

2.7 系统整体电路图 ..................................................................................................... 18

3 软件编程 ....................................................................................................................... 19

3.1 开发环境 ................................................................................................................. 19

3.2 程序流程 ................................................................................................................. 19

3.3 程序代码编写 ......................................................................................................... 21

4 电路调试与测试结果 ................................................................................................... 26

4.1 电路调试 ................................................................................................................. 26

4.2调试结果 .................................................................................................................. 27

4.2.1 检测原理 ............................................................................................................. 27

4.2.2检测依据 .............................................................................................................. 27

4.2.3 开始测试 ............................................................................................................. 28

5 结束语与展望 ............................................................................................................... 32

致 谢 .......................................................................................... 错误!未定义书签。

参考文献 ........................................................................................................................... 34

摘 要

2000年以来,随着中国经济的高速发展,人民生活水平的迅速提高,中国逐渐步入“汽车社会”,酒后驾车行为所造成事故越来越多,对社会的影响也越来越大,酒精正成为越来越凶残的“马路杀手”。据有关资料统计,全世界每年因车祸丧生的人数就超过60万人,留下永久性伤残者在400万以上,一般受伤者不计其数。在许多国家,车祸已成为第一位意外交通死亡原因。

此外,因为交通事故造成的经济损失也相当惊人。据事故调查统计,大约50%-60%的车祸于饮酒有关。中国公安部门在2009年8月,在全国各地加强查处酒后驾驶的力度,以减少想因酒后驾驶造成的恶性交通事故。要查处就涉及到检测人体内的酒精含量和使用设备来检测的问题。

本文研究设计了一种用于公共场所具有检测及超限报警功能的酒精浓度智能测试仪。其研究方案基于89S51单片机,MQ3酒精浓度传感器。系统将传感器输出的4-20mA 的标准信号通过以ADC0809为核心的A/D转换电路调理后,经由单片机进行数据处理,最后由发光二极管显示酒精浓度是否超标。文中详细介绍了数据采集子系统以及数据处理过程和报警电路的设计方法和过程。

关键词:酒精浓度传感器,单片机,A/D转换器

1 绪论

1.1 设计背景

2008年世界卫生组织的事故调查显示,大约50%—60%的交通事故与酒后驾驶有关,酒后驾驶已经被列为车祸致死的主要原因。在中国,每年由于酒后驾车引发的交通事故达数万起;而造成死亡的事故中50%以上都与酒后驾车有关,酒后驾车的危害触目惊心,已经成为交通事故的第一大“杀手”。2010年8月,十一届全国人大常委会第十六次会议将首次审议刑法修正案(八)草案,醉酒驾驶或被判刑。

根据调查表明,40%的酒后驾车者“过高地相信自己的驾驶技术”,这类驾车者认为自己酒量大,开车技术过硬,总想用酒后驾车来“炫耀”自己的技术,结果造成险象环生。27%的酒后驾车者的“安全意识不强” 。

喝酒时酒精的刺激使人兴奋,在不知不觉中就会喝多,当酒精在人体血液内达到一定浓度时,人对外界的反应能力及控制能力就会下降,处理紧急情况的能力也随之下降。对于酒后驾车者而言,其血液中酒精含量越高,发生撞车的几率越大。当驾驶者血液中酒精含量达80mg/100mL时,发生交通事故的几率是血液中不含酒精时的2.5倍;达到100mg/100mL时,发生交通事故的几率是血液中不含酒精时的4.7倍。即使在少量饮酒的状态下,交通事故的危险度也可达到未饮酒状态的2倍左右。

人们在喝酒过后,对驾驶车辆有两项很重要的影响:

(一)视觉能力变差:一般人在平常状态下的外围视界可达180度,酒后的视觉角度将会缩减,喝越多,就越无法看清旁边的景物。

(二)运动反射神经迟钝:慢了一两秒。如车速为60km/h,一秒钟车子就已经跑了16.67米,必然会产生严重后果。

此外,酒后驾驶者存往往存在“侥幸心理”,认为自己以前饮酒驾驶从来没有出过事,也没有被抓过,而且也经常看到其他人酒后驾驶,于是便侥幸酒后驾

驶,造成惨剧。有了以上思想作怪,驾驶者往往把酒后开车不当回事,使酒后驾驶屡禁不止。

正如前言所述,酒后驾驶问题日益成为当今社会的巨大问题,其所引起的交通事故比比皆是,正是基于对这种社会状况的担忧,我们选择了“基于多传感器的酒精浓度检测装置设计”这一课题。该系统对指定地方周围的气体进行检测,一旦发现酒精浓度超过标准,就启动报警装置,提醒民众防止酒后驾驶,以最大限度地避免酒后驾驶可能给社会和个人造成的巨大损失。该系统的开发与应用不仅有利于培养我们大学生积极思考、勤于动手的能力,培养我们善于与他人合作的精神,而且造福于我们广大人民群众,对我国经济与社会的稳定起着不可忽略的作用。

1.2 设计酒精浓度测试仪的意义

本设计基于AT89S51单片机设计的酒精气体浓度探测仪,可用来检测酒精气体浓度,最主要的用途是检测司机的酒精含量。酒后驾车发生事故的机率高达27%。随着摄入酒精量的增加,选择反应错误率显著增加,当血液中酒精含量由0.5‰增至1‰,发生车祸的可能性便增加5倍,如果增至1.5‰,可能性再增加6倍。机动车驾驶人员“酒后驾车” 及“醉酒驾车”极易发生道路交通事故, 严重危害了道路交通安全和人民生命财产安全。人饮酒后, 酒精通过消化系统被人体吸收, 经过血液循环, 约有90%的酒精通过肺部呼气排出, 因此测量呼气中的酒精含量, 就可判断其醉酒程度。开车司机只要将嘴对着传感头使劲吹气,仪器就能发上显示出酒精浓度的高低,从而判断该司机是否酒后驾车,避免事故的发生。当然,最好的办法是在车内安装这种测试仪,司机一进入车内检测仪就检测司机的酒精含量,如果超出允许值,系统控制引擎无法启动,这样就可从根本上解决酒后驾车问题。

酒精气体浓度探测仪在生产生活中也有重要的应用,比如,在一些环境要求严格的生产车间,用这种酒精浓度探测仪,可随时检测车间内的酒精气体浓度,当酒精气体浓度高于允许限定值时,发出警报,提醒人们及时通风换气,做到安

全生产。

1.3 本文主要研究工作

本文以AT89S51单片机为核心,设计了用于测量酒精浓度的探测仪,主要研究工作包括以下3个方面。

(1)硬件电路方面,对气体传感器MQ-3检测电路,接上一定阻值的负载电阻,检测它的技术参数,确定MQ-3所接负载电阻的大小,完成信号采样电路的设计;采样到的模拟电压电信号通过A/D转换,得到可供单片机处理的数字信号,再由单片机作相应的数据处理,使发光二极管报警显示。

(2)软件方面,标准的确定是该部分要做的主要工作。因为原始的采样值是一个间接的负载分压值,需要将它转化为被测酒精浓度值。通过多个样品的测量确定多个浓度区间的转换标准,并将每个区间的转换关系近似线性化处理,然后通过软件编程的方法来实现。

(3)为了尽量减少设计的气体传感器的测量误差,在测量酒精溶液样品时要考虑并解决3个主要问题。一是外界环境流动空气对传感器的影响和对气体样品的稀释,二是样品的稳定性对测量带来的误差,三是水蒸气对测量的影响。针对这3个主要问题提出以下解决方案和验证方法。

测量样品时,将探头尽量放入塑料瓶内,可以在一定程度上消除流动空气的影响,同时应选择空气流动较小的室内环境来测量。水蒸气对MQ-3的影响很小,这一点可以通过对只装有纯净水的塑料瓶的多次测量来验证。用相同容量的塑料瓶配制好不同浓度的酒精溶液后,将它密封并放置一段时间,待其稳定后再测量。再通过反复多次测量多组数据,求其平均值的方法来缩小测量误差。

2 硬件电路设计与实现

2.1设计思想

思路从课题的要求出发,要求测试气体的酒精浓度,必然要用到传感器。设计出来的仪器要对酒精快速响应,预热时间短,这就对酒精传感器的性能指标有一定的要求,首先这个酒精传感器本省就有很好的灵敏度,和检测到的酒精气体发生化学反应快。本设计使用MQ3传感器来提取人呼出的气体,采集到微弱的模拟信号之后,将由ADC0809转换器把模拟信号转换成数值信号传输给AT89S51单片机,经过单片机处理过后的数值信号送到到二极管、报警器进行显示和报警。

2.2 单片机开发流程

(1)可行性调研。可行性调研的目的,是分析完成这个项目的可能性。进行这方面的工作,可参考国内外有关资料,看是否有人进行过类似的工作。如果有,则可分析他人是如何进行这方面工作的,有什么有点和缺点,有什么值得借鉴的;如果没有,则需要作进一步的调研,此时的重点应放在能否实现这个环节,首先从理论上进行分析,探讨实现的可能性,所需求的客观条件是否具备,然后结合实际情况,再决定能否立项的问题。

(2)系统总体方案的设计。在进行可行性调研后,如果可以立项,下一步工作就是系统总体方案的设计。工作的重点应放在该项目的技术难度上,此时可参考这一方面更详细、更具体的资料,根据系统的不同部分和要实现的功能,参考国内外同类产品的性能,提出合理而可行的技术指标,编写出设计任务书,从而完成系统总体方案设计。

(3)设计方案细化,确定软硬件功能。一旦总体方案确定下来,下一步的工作就是将该项目细化,即需明确哪些部分用硬件来完成,哪些部分用软件来完成。由于硬件结构与软件方案会相互影响,因此,从简化电路结构、降低成本、减少故障率、提高系统的灵活性与通用性方面考虑,提倡软件能实现的功能尽可能由

软件来完成;但也应考虑软件代硬件的实质是以降低系统的实时性、增加处理进行为代价的,而且软件设计费用、研制周期也将增加,因此系统的软硬件功能分配应根据系统的要求及实际情况而合理安排,统一考虑。在确定软硬件功能的基础上,设计者的工作就开始涉及到具体的问题,如仪器的体积及与具体技术指标相对应的硬件实现方案,软件的总体规划等。在确定人员分工、安排工作进度、规定接口参数后,就比须考虑硬件软件的具体问题了。

(4)一个单片机应用系统经过调研、总体设计、硬件软件设计、制版、元件安装后,在系统的程序存储器中放入编制好的应用程序,系统即可运行。但一次性成功的几乎是不是不可能的。由于单片机在执行程序时人工是无法控制的,为了能够调试程序,检查硬件、软件运行情况,这就需要借助某种开发工具模拟用户实际的单片机,并且能随时观察运行的中间过程而不改变运行中有的数据性能和结果,从而进行模拟现场的真实调试。

2.3 硬件系统框图

基于AT89S51单片机用MQ-3型气体传感器实现酒精气体浓度的检测,需要信号采集模块用于对酒精浓度信号的采集,该信号是通过MQ-3气体传感器和负载电压得到分压电信号。信号转换模块用来把采集到得模拟电压信号转换位可以用单片机处理的数字信号。发光二极管管显示模块是对单片机处理后的数字信号的显示,用来提示酒精的浓度。报警模块是对设定值提供报警功能,该功能用发光二极管显示。根据各功能模块的设计,可得到它的系统总框图,如图2-1所示。

图2-1 系统总框图

2.4 信号采集电路

2.3.1 气体传感器的选择

根据被检测气体的不同,气敏传感器可分为以下三类:

(1)可燃性气体气敏传感器。目前该类气敏传感器需求量最大,包含各种无机和有机类气体检测,主要用于抽油烟机、泄露报警器和空气清新剂等方面,并已经形成生产规模,在油田、矿区、化工、企业及家庭等生产和生活领域广泛用作气体泄露报普,特别是用于家庭气体泄露报警,需求量不断增加,使该类传感器有着广泛的发展空间。

(2)CO 和H 2气敏传感器。CO 气敏元件可用于工业生产、环保、汽车、家

庭等CO 泄露和不完全燃烧检测报警;H 2气敏元件除应用于工业等领域外,主要用于家庭管道煤气泄露报警。由于我国管道煤气中H 2含量很高,而氢敏元件较氧化碳元件价格低,灵敏度高,因此,用氢敏元件做城市管道煤气泄露报警更为适宜。

(3)毒性气体传感器。毒性气体传感器又称为环境有毒有害气体传感器,主要用于检测烟气、尾气、废气等环境污染气体,虽然SnO 2气敏传感器对CO ,H 2S 等有毒有害气体敏感,但应用最多的仍是电解式化学传感器。

传感器的分类方式有很多种,以上是根据被检测气体的性质进行的分类,也有根据元件的物理特性进行分类的。

一个新型的气体检测系统应该包括:

(1)基于一种或几种传感技术的气体传感器。

(2)组合了气体传感器和采样调理电路的探头。

(3)配有人机接口软件的中心监测和控制系统。

(4)在一些应用中,与其它安全系统和仪器的接口。

本设计中的酒精气体传感器采用的MQ-3型, 它属于MQ 系列气敏元件的一种。如图2-2所示:

图2-2 MQ-3

特点:检测范围为10ppm ~2000ppm ;灵敏度高,输出信号为伏特级;响应速度快,小于10秒;功耗小于0.75W ,尺寸:D17*H10。

MQ-3型气敏传感器的敏感部分是由金属氧化物(二氧化锡)的N 型半导体微晶烧结层构成。当其表面吸附有被测气体酒精分子时,表面导电电子比例就会发生变化,从而其表面电阻会随着被测气体浓度的变化而变化。由于这种变化是可逆的,所以能重复使用。MQ-3的灵敏度特性曲线如 图2-3所示。

图2-3 MQ-3灵敏度特性曲线

检测电路如图2-4所示,当电源开关S 断开时,传感器加热电流为零,实测A ,B 之间电阻大于20M Ω。S 接通,则f 与f 之间电流由开始时155mA 降至153mA 而稳定。加热开始几秒钟后A ,B 之间电阻迅速下降至10K Ω以下,然后又逐渐上升至120K Ω以上后并保持着。此时如果将酒精溶液样品靠近MQ-3传感器,我们立即可以看到数字万用表显示值马上由原来大于120K Ω降至10K Ω以下。移开小瓶过1分钟左右后,A ,B 之间电阻恢复至大于120K Ω。这种反应可以重复试验,但要注意使空气恢复到洁净状态。经实验的反复检测,MQ-3传感器可以正常工作使用,对不同浓度的酒精溶液有不同的变化,响应时间和恢复时间都正常,可以开始作信号采样模块电路的设计。

图2-4 MQ-3检测电路

2.3.2 信号采样电路

信号的采样模块电路如图2-5所示。MQ-3的加热电阻两端即H 引脚接至+5V直流稳压电源,用于电阻丝对敏感体电阻的加热。MQ-3的两个A 引脚相连,作为敏感体电阻的一个电极。MQ-3的两个B 引脚也连接在一起,作为敏感体电阻的另一个电极。将电极断A 接到电源正极,电极端B 接两个270Ω并联的电阻。

MQ-3型气敏传感器与电位器串联构成分压电路,采样点为电位器的分压。MQ-3型气敏传感器的敏感部分是由金属氧化物SnO 2的N 型半导体微晶烧结层构成。当其表面吸附有被测气体酒精分子时,表面导电电子比例就会发生变化,从而其表面电阻会随着被测气体浓度的变化而变化。由于这种变化是可逆的,所以能重复使用。当气敏传感器的敏感体电阻阻值发生改变时,对应的电位器的分压值也会发生相应的变化,即一个电压值对应着一个被测酒精气体浓度。对酒精气体浓度的采样就可以转化为对电位器分压的采样。

在采样硬件电路中实际要考虑到MQ-3的实际技术参数,即加热电阻和敏感体电阻的大小,该部分应与电源正极相连。负载电阻要根据MQ-3实际的技术参数而选择阻值合适的电阻。应为实验所用的MQ-3在预热5到10分钟后,它的敏感体电阻只有120KΩ,所以负载电阻选用一个300Ω的滑动变阻器,构成采样部分的分压电阻。

图2-5 采样模块

2.5 信号转换电路

单片微机是单片微型计算机的译名简称,在国内也常称为“单片微机”或“单片机”。它包括中央处理器CPU ,随机存储器RAM ,只读存储器ROM ,中断系统,定时器/计数器,串行口和I/O口等等。现在,单片微机已不仅指单片计算机,还包括微计算机,微处理器,微控制器和嵌入式控制器,单片微机已是它们的俗称[8]。

AT89S51是美国ATMEL 公司生产的低功耗,高性能CMOS8位单片机,片内含4K 的可系统编程的Flash 只读程序存储器,器件采用ATMEL 公司的高密度、非易失性存储技术生产,兼容标准8051指令系统及引脚。它集Flash 程序存储器,既可在线编程也可以用传统方法进行编程及通用8位微处理器于单片芯片中,可灵活应用于各种控制领域。AT89S51提供以下标准功能:4KBFlash 闪存存储器,128B 内部RAM ,32个I/O口线,看门狗,两个数据指针,两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。

根据实际需要,本次设计选用的是以8051为核心单元Atmel 公司的低耗AT89S51单片机。AT89S51芯片有40条引脚,采用双列直插式封装,如图2-6所示。下面说明各引脚功能。

图2-6 AT89S51芯片管脚

VCC :运行和程序校验时接电源正端。

GND :接地。

XTAL1:输入到单片机内部振荡器的反相放大器。

XTAL2:反相放大器的输出,输入到内部时钟发生器。

P0口:8位漏极开路的。使用片外存储器时,作低八位地址和数据分时复用,能驱动8个LSTTL 上拉电阻。

P1口:8位、准双向I/O口。

P2口:8位、准双向I/O口。当使用片外存储器(ROM 及RAM )时,输出高8位地址。可以驱动4个LSTTL 负载。

P3口:8位、准双向I/O口,具有内部上拉电路,提供各种替代功能。P3.0——

RXD 串行口输入口,P3.1——TXD 串行口输出口,P3.2——INT0 外部中断0输入,P3.3——INT1 外部中断1输入,P3.4——T0定时器/计数器0的外部输入,P3.5——T1定时器/计数器1的外部输入,P3.6——WR 低电平有效,输出,片外存储器写选通,P3.7——RD 低电平有效,输出,片外存储器读选通。 RST :复位输入信号,高电平有效。在振荡器工作时,在RST 上作用两个机器周期以上的高电平,将器件复位。 EA /VCC:片外程序存储器访问允许信号,低电平有效。高电平时选择片内程序存储器,低电平时程序存储器全部在片外而不管片内是否有程序存储器。 ALE/PROG:地址锁存允许信号,输出。ALE 以1/6的振荡频率固定速率输出,可作为对外输出的时钟或用作外部定时脉冲。

单片机最小系统的设计包括电源,晶振和复位电路三个部分。这是使单片机正常工作的必要外围电路部分。针对不同型号的单片机在最小系统设计上会有一些差别。对于选用的AT89S51单片机,根据美国ATMEL 公司提供的技术资料,可以对它的最小系统作恰当的设计。

对于电源部分,技术资料中性能参数里给出的标准工作电压是4.0~5.5V 。因此,单片机的引脚40对应的VCC 接到+5V电源的正极,引脚10对应的GND 接到+5V电源的接地端,为AT89S51单片机提供正常的工作电压。

对于晶振部分,AT89S51单片机中有一个用于构成内部振荡器的高增益反相放大器,引脚19对应的XTAL1和18对应的XTAL2分别是该放大器的输入端和输出端。这个放大器与作为反馈元件的片外石英晶体或陶瓷谐振器一起构成自激振荡器。石英晶体及电容C1和C2接在放大器的反馈回路中构成并联谐振电路。石英晶体的两端分别接到引脚XTAL1 和引脚XTAL2,同时石英晶体的两端分别接一个电容C1和C2,电容的另一端接地。对于外接电容C1和C2的大小虽然没有十分严格的要求,但电容容量的大小还是会对振荡频率的高低、振荡器工作的

稳定性、起振的难易程度和温度稳定性带来一定的影响。根据技术资料的推荐,使用石英晶体推荐电容容量为30pF±10pF ,使用陶瓷谐振器推荐电容容量为40pF±10pF 。因为电路中接的是石英晶体,所以设计中接的两个电容C1和C2的容量都为33pF 。

对于复位电路部分,AT89S51技术资料给出,当振荡器工作时,RST 引脚出现两个机器周期以上的高电平将使单片机复位。复位是单片机的初始化操作,当由于程序运行出错或操作错误使系统处于死锁状态时,为了摆脱困境,可以按复位键以重新启动,所以复位电路的设计很有必要。复位操作有上电自动复位、按键电平复位和外部脉冲复位三种方式,本设计选用按键电平复位方式。如图2-7所示,10μF的电容C3与270Ω的电阻并联后再与一个10KΩ的电阻串联,电容的正极端接到电源的正极,电容的另一端接至引脚RST 。设计中选用的石英晶体大小为11.0952MHz , 但复位键按下后,电容和电阻选用的参数值能够保证给复位端RST 提供大于2个机器周期的高电平复位信号[10]。

图2-7 AT89S51单片机最小系统设计电路

ADC0809是CMOS 单片型逐次逼近式A/D转换器,内部结构如图2-8所示,

它由8路模拟开关、地址锁存与译码器、比较器、8位开关树型A/D转换器、逐次逼近寄存器、三态输出锁存器等其它一些电路组成。因此,ADC0809可处理8路模拟量输入,且有三态输出能力,既可与各种微处理器相连,也可单独工作。输入输出与TTL 兼容。

图2-8 ADC0809内部结构

ADC0809芯片有28条引脚,采用双列直插式封装,如图2-9所示。下面说明各引脚功能。

图2-9 ADC0809芯片

IN0~IN7:8路模拟量输入端。

2-1~2-8:8位数字量输出端。

ADDA 、ADDB 、ADDC :3位地址输入线,用于选通8路模拟输入中的一路。如表1所示。

ALE :地址锁存允许信号,输入,高电平有效。

START :A/D转换启动信号,输入,高电平有效。

EOC :A/D转换结束信号,输出,当A/D转换结束时,此端输出一个高电平(转换期间一直为低电平)。

OE :数据输出允许信号,输入,高电平有效。当A/D转换结束时,此端输入一个高电平,才能打开输出三态门,输出数字量。

CLK :时钟脉冲输入端。要求时钟频率不高于640KHZ 。

REF (+)、REF (-):基准电压。

Vcc :电源,单一+5V。

GND :地。

ADC0809的工作过程是:首先输入3位地址,并使ALE=1,将地址存入地址锁存器中。此地址经译码选通8路模拟输入之一到比较器。START 上升沿将逐次逼近寄存器复位。下降沿启动 A/D转换,之后EOC 输出信号变低,指示转换正在进行。直到A/D转换完成,EOC 变为高电平,指示A/D转换结束,结果数据已存入锁存器,这个信号可用作中断申请。当OE 输入高电平 时,输出三态门打开,转换结果的数字量输出到数据总线上。

当检测到酒精气味时,气体传感器的A-B 间电阻变小,则ADC0809的模拟输入端IN0的电压变大。采用查询方式对输入模拟信号进行A/D转换,然后将数据通过发光二极管显示。

表1 ADC0809通道地址

ADDC ADDB ADDA 选通通道

0 0 0 0 0 1

0 1 0

0 1 1

1 0 0

1 0 1

1 1 0

1 1 1 IN0 IN1 IN2 IN3 IN4 IN5 IN6 IN7

ADC0809芯片内部没有时钟脉冲源,可以用单片机提供的地址锁存控制输入信号ALE 经D 触发器二分频后,作为 ADC0809的时钟输入。ALE 端信号的频率是单片机时钟频率的1/6。单片机的时钟频率是11.0952MHz ,则ALE 端输出信号的频率为1.8492MHz ,再二分频后为0.9246Hz ,符合ADC0809对时钟频率的要求。由于ADC0809具有三态输出数据琐存器,其8位数据输出端可以直接与

数据总线相连。地址选通端ADDA ,ADDB ,ADDC 分别与单片机地址总线的低三位A0,A1,A2相连,用于选通IN0-IN7中的某一通道。由于ALE 和START 连在一起,ADC0809在锁存通道地址的同时启动A/D转换。在读取A/D转换结果时,OE 产生的正脉冲信号用于打开三态输出锁存器。ADC0809的EOC 信号与单片机的P0.1相连,作为A/D转换是否结束的状态信号供单片机查询。

2.6 发光二极管报警电路及蜂鸣器

工作原理:由于本次试验没有要求使用数码显示管显示具体的酒精浓度测试数值,所以只选用3个发光二极管和蜂鸣器报警来显示酒精浓度是否超标。由ADC0809反馈的信号经AT89S51接受,输出至分别为红色和蓝色的发光二极管和蜂鸣器。

当绿色二极管发亮,则酒精浓度没有超标;当红色二极管发亮,则酒精浓度超标,蜂鸣器报警。如图2-10,2-11所示。

图2-10 发光二极管连接方式

图2-11 蜂鸣器连接方式

2.7 系统整体电路图

信号采样模块电路将采样信号输出端接至A/D转换芯片的输入端,再加上单片机最小系统电路、单片机与模数转换芯片的连接和单片机与发光二极管的连接,即可作出它的整体电路图,如图2-12所示。

图2-12 整体电路图

3 软件编程

3.1 开发环境

选用的开发平台为MedWin 单片机集成开发环境,需在PC 机上安装MedWin 和Keil C51软件,然后在MedWin 软件代码编辑器编辑程序代码,经汇编,修改,产生代码,形成输入输出口实验十六进制.HEX 文件。

打开Microcontrmller ISP Software,在菜单options 选项中选择select device,在弹出的窗口中选择器件AT89S51,并选Byte Mode 点击OK 。初始化器件后,将经过编译生成的.HEX 十六进制文件下载到单片机。

对于8051系列单片机,现有四种语言支持,即汇编、PL/M、C 和BASIC 。本设计软件编程部分选用C 语言来写程序代码。

3.2 程序流程

当检测到酒精气味时,气体传感器MQ-3两个电极端A-B 间电阻将变小,对应与气体传感器负载电阻的分压将变大。因为ADC0809的模拟输入端IN0与负载电阻的一端用导线连在了一起。所以单片机在启动测试模数转换芯片之前要选择通道0,写入模数转换芯片,并将用作查询的单片机引脚P3.3置位,然后启动对通道IN0端输入的采集电压信号作模数转换,等待转换的结束。利用单片机丰富的I/O口可以采用查询方式来检测模数转换是否结束,当单片机引脚P3.3为1时转换未结束等待,当查询到P3.3为0时表示模数转换已经结束,可以开始读取数据了。单片机通过I/O口与模数转换芯片的数据输出口相连读取转换后的数据。读取后的数据送到数据存储器单元中,经过单片机作相应的处理,即要将该电压值转换为酒精浓度值,然后处理后的数据转换成三位十进制BCD 码用数码管显示。程序流程图如图3-1所示。

图3-1 程序流程图

3.3 程序代码编写

根据程序流程图和各个子程序的编写可以得到整个设计的总程序代码,打开实验开发平台MedWin 单片机集成开发环境,在MedWin 软件代码编辑器编辑程序代码,经编辑,修改,产生代码。

#include

unsigned char code

bitcode[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};

unsigned char dispbuf[4];

unsigned int i;

unsigned int j;

unsigned char getdata;

unsigned int temp;

unsigned int temp1;

unsigned char count;

unsigned char d;

sbit ST=P3^0;

sbit OE=P3^1;

sbit EOC=P3^2;

sbit CLK=P3^3;

sbit P34=P3^4;

sbit P35=P3^5;

sbit P36=P3^6;

sbit P20=P2^0;

sbit P21=P2^1;

sbit P22=P2^2;

sbit P23=P2^3;

sbit P17=P1^7;

void TimeInitial();

void Delay(unsigned int i);

void TimeInitial()

{ TMOD=0x10;

TH1=(65536-200)/256;

TL1=(65536-200)%256;1

EA=1;

ET1=1;

TR1=1;

}

void Delay(unsigned int i)

{

unsigned int j;

for(;i>0;i--)

{

for(j=0;j

{;}

}

}

void Display()

{

P1=dispbitcode[dispbuf[3]];

P20=0;

P21=1;

P22=1;

P23=1;

Delay(10);//避免闪烁

P1=0x00; //关闭一下,否则显示不全

P1=dispbitcode[dispbuf[2]];

P17=1;

P20=1;

P21=0;

P22=1;

P23=1;

Delay(10);

P1=0x00;

P1=dispbitcode[dispbuf[1]];

P20=1;

P21=1;

P22=0;

P23=1;

Delay(10);

P1=0x00;

P1=dispbitcode[dispbuf[0]];

P20=1;

P21=1;

P22=1;

P23=0;

Delay(10);

P1=0x00;

}

void main()

{

TimeInitial();

while(1)

{

ST=0;

OE=0;

ST=1;

ST=0; //只需要启动一下,不需要一直保持

P34=0; //地址通道

P35=0;

P36=0;

while(EOC==0);

OE=1;

getdata=P0;

OE=0;

temp=getdata*1.0/255*500;

dispbuf[0]=temp%10;

dispbuf[1]=temp/10%10;

dispbuf[2]=temp/100%10;

dispbuf[3]=temp/1000;

Display();

}

}

void t1(void) interrupt 3 using 0

{

TH1=(65536-200)/256;

TL1=(65536-200)%256;

CLK=~CLK;

}

4 电路调试与测试结果

4.1 电路调试

根据各个模块功能的设计和绘制的整体电路图,找到各功能模块的连接点。按照设计的步骤,并对照总电路图,在面包板上连接电路。电路的连接顺序是,先连接好各个模块,在调试检查正确的前提下再把各个模块连接起来。

打开MedWin 软件,将写好的调试程序代码在计算机上输入、编辑、修改、产生代码,形成输入输出口实验.HEX 文件。打开打开Microcontrmller ISP Software软件,在菜单options 选项中选择select device,在弹出的窗口中选择器件AT89S51,并选Byte Mode点击OK 。初始化器件后,将经过编译生成的,HEX 十六进制文件下载到单片机。

电路连接好,并将调试程序代码(注释电压到酒精浓度转换关系代码)烧写到AT89S51单片机上后,接上+5V电源开始调试。先把气体传感器探头用一个阻值为20k Ω的电阻替代,复位单片机,观察数码管上的显示数据和发光二极管的点亮情况。用万用表测量采样点的电压值,看用万用表测得的电压值与数码管上显示数据是否一致。因为各导线和元器件对电压电流的影响,数码管显示的数据与万用表测得的数据存在一定的偏差,但在可接受的范围内。调节电位器,观察数码管数据显示的变化,同样用万用表测量电压值作比较。测量数据与数码管显示数据基本一致,说明电路数码管显示部分连接正确。然后,再把电位器阻值从0开始逐渐调大,在每过一个0.12V 电压后观察相应发光二极管点亮,说明发光二极管显示部分电路连接正确。

调试电路其他功能模块正确后,将预热足够长时间能正常工作的气体传感器MQ-3换上原来20kΩ的电阻。准备好若干个不同浓度的酒精气体样品,检测气体传感器是否能正常工作。

4.2调试结果

4.2.1 检测原理

利用便携式酒精含量测试仪来判断人体内血液酒精浓度的依据为:人饮酒后,酒精通过消化系统被人体吸收,经过血液循环,约有90%的酒精通过肺部呼气排出,因此测量呼气中的酒精含量,可以判断人的醉酒程度。另外更重要的依据是人体呼气中的酒精含量与血液中的酒精含量有如下关系:BAC( in mg/L)=Br AC(in mg/L)×2200,上式中,BAC 是血液酒精浓度的英文缩写,BrAC 则是呼气酒精浓度的缩写,括号中的mg/L表示以每升中多少毫克为单位。即以mg/L为单位的血液酒精浓度在数值上相当于以mg/L为单位的呼气酒精浓度乘以系数2200(由于各国的情况不同,在美国此系数采用2000,而欧洲很多国家采用2100)。基于这种关系,根据驾驶员呼出气体中的酒精含量来确定被测量者体内酒精含量的多少,研究表明,当驾驶员呼气中酒精浓度超过0.25mg/L时,驾驶员就会在复杂技巧上出现障碍、驾驶能力变坏,肇事率是无酒精状态的2倍,驾驶员驾车容易肇事,以此标准来衡量司机是否能够安全驾驶,当驾驶员呼气中酒精浓度超过0.40mg/L时,驾驶员出现多话、感觉障碍,肇事率是无酒精状态的6倍。这时驾车就比较危险了,需进行报警。呼出气体中酒精含量检测的方法为:被测者对准传感器进行吹气7秒即可。

4.2.2检测依据

到底身体中的酒精浓度要达到多少才需要禁止其驾驶车辆?由于人种的不同,对酒精的代谢速率也不一样,再加上各国的社会风俗习惯不同,因此订定的标准也不完全一样。以下表2和表3分别是世界各国法定酒精浓度限制和体内酒精浓度与肇事率的关系。

表2:世界各国法定酒精浓度限制

表3:体内酒精浓度与肇事率的关系

4.2.3 开始测试

(1)思路是定量配制多个浓度的酒精溶液,使得测量误差控制在一定浓度范围内,浓度范围经过多次分段后,可以把每一段当成是线性来处理;这几种溶液

的浓度已知,且有一定的浓度差配制;在每个浓度的酒精溶液挥发气体中,测量五次,求得本浓度下传感器采集到的平均电压值。拟合出浓度与电压关系的分段函数,求出各段方程,就可以定标了。

(2)准备实验器材:95%(按体积比例)浓度的酒精溶液一瓶(100mL ), 75%浓度的酒精溶液一瓶(100mL ),20mL 注射器一支(充当量筒用,度量准确),小空瓶若干;特别说明下小瓶子的选择,实验表明:瓶口口径最好和传感器大小差不多,容积最好在100mL 左右,这样在传感器与酒精气体接触时能够充分接触,减小误差;瓶口太大,酒精气体容易跑掉,导致结果偏低;瓶口太小,传感器接触面积不够大,测试结果也是偏低;瓶子容积太大,挥发出来的酒精气体被瓶中空气稀释,测试结果也会不准。

(3)配制几种浓度的溶液,在每个浓度下测试5次。酒精溶液A 是用5%浓度的酒精溶液加一定量的水稀释而成,浓度大约是2.5%;酒精溶液B 是用75%浓度的酒精溶液加一定量水稀释而成,浓度大约是15%;酒精溶液C 是用95%浓度的酒精溶液加一定量水稀释而成,浓度大约是40%;酒精溶液D 是用95%浓度的酒精溶液加一定量水稀释而成,浓度大约是85%。测试数据如表4:

表4:不同浓度酒精溶液测试数据

浓度为2.5%的酒精溶液A 在测试5次后绿灯亮,没有报警;

浓度为15%的酒精溶液B 在测试前2次后红灯亮,蜂鸣器报警;第3、4次后绿灯亮;测试第5次是红灯亮,蜂鸣器报警

浓度为40%的酒精溶液C 在测试5次后红灯亮,蜂鸣器报警; 浓度为85%的酒精溶液D 在测试5次后红灯亮,蜂鸣器报警。

由此看出,酒精浓度在15%以下时,测试仪显示为绿灯,安全;酒精浓度在15%以上时,测试仪显示为红灯,蜂鸣器报警,不安全;酒精浓度在15%左右时,测试仪测试红灯,绿灯都亮,而且红灯亮时蜂鸣器还有一次没有报警,推断可能是传感器的测试临界度。

图4-1 红灯亮

图4-2 绿灯亮

5 结束语与展望

当设计做完后,发现本此设计只知道了测试气体是否酒精浓度超标,没有知道具体的酒精浓度数值,应该把程序写的更完善一点,用数码二极管来显示数值,这样更好的得到精确的结果。

当然可以对本系统作一定改进,并在此基础上制作酒精检测钥匙。即在车钥匙上设计一个小吹管,由一组信号发射器连接至车上的电子控制组件,如果驾驶者在开门之前所做的酒精吹气测试样本被发现超过法定允许的标准值,则系统将使引擎维持在静止状态无法启动。当驾驶者按下遥控器上的开门按钮,酒精探测仪也随之启动,然后驾驶者对着小管口吹气,酒精浓度会经由感应器上的小绿灯或小红灯显示出来。当显示绿灯时,钥匙将传送允许信号至车辆的电子控制系统,也就是通过检测,可以上路了;但是如果测试结果为红灯,则车辆将维持在锁定状态,即使钥匙插入钥匙孔也无法发动车子。

半导体气敏传感器和电化学固体电解质气敏传感器具有测量精度高、所需试样少、响应快等特点,广泛应用于化工、建筑、环保、医疗、家电、安全保卫等领域。随着纳米技术、薄膜技术等新材料研制成功,微机械与微电子技术、计算机技术等的综合应用,高性能的气敏传感器将会不断出现。

参考文献

[1] 司士辉.生物传感器[M].化学工业出版社,2003.

[2] 吴桂秀.传感器应用制作入门[M].浙江科学技术出版社,2004. [3] 彭军.传感器与检测技术[M].西安电子科技大学出版社,2003. [4] 陈杰,黄鸿.传感器与检测技术[M].北京:高等教育出版社,2003. [5] 吴桂秀.传感器应用制作入门[M].浙江科学技术出版社,2004. [6] 张锡富.传感器[M].北京:机械工业出版社,2002.

[7] 郁有文.传感器原理及工程应用[M].西安:西安电子科技大学出版社,2003. [8] 楼然苗,李光飞.51系列单片机设计实例[M].北京航空航天大学出版社,2003. [9] 朱定华,戴汝平.单片微机原理与应用[M].清华大学出版社,2003. [10] 胡乾斌,李光斌,李玲.单片微型计算机原理与应用[M].华中科技大学出版社,2002.

[11] 胡汉才.单片机原理与借口技术[M].清华大学出版社,2004. [12] 余家春.Protel 99 SE电路设计实用教程[M].中国铁道出版社,2004. [13] 张培仁.基于汇编语言编程MCS-51单片机原理与应用[M].北京:清华大学出版社,2003.

[14] 王静霞.单片机应用技术(C语言版)[M] .北京:电子工业出版社2010.


相关内容

  • 基于单片机的酒精浓度检测仪的设计
  • 第13卷第4期2013年12月 南通纺织职业技术学院学报(综合版) JournalofNantongTextileVocationalTechnologyCollegeVol.13,No.4Dec.2013 基于单片机的酒精浓度检测仪的设计 李建荣,薛亚平,钱 松 (扬州工业职业技术学院,扬州225 ...

  • 基于ARM和MiniGUI的呼气式酒精测试仪研究
  • 智能仪表与传感器 计算机测量与控制. 2009. 17(8) C omputer Measurement &Control 1667 文章编号:1671 4598(2009) 08 1667 04 中图分类号:T P216 文献标识码:A 基于ARM 和MiniGUI 的呼气式酒精测试仪研究 ...

  • 酒精检测系统开题报告
  • 大学毕业设计(论文)开题报告 题目: 基于单片机的酒精检测系统设计 专业: 电子信息工程 指导教师: 学院: 信息学院 学号: [1**********]24 班级: [1**********]2 姓名: 一. 课题任务与目的 随着生活节奏的加快,城市机动车保有量越来越大,越来越多的人们选择开成出行 ...

  • 高选择性酒精传感器
  • 擎轳移蠖渊嚣案s擎◇穰<鳞擎澄 机动车驾驶人 员"酒后驾车"及"醉 级氨水作沉淀剂,充分洗涤沉淀物,直到用O.1mof的硝酸银 酒驾车"极易发生道 路交通事故,严重危害了道路交通安全 溶液检验不到cI一为 止,再{叠1氐温处理.干燥.350℃-800℃ ...

  • 室内有害气体检测及处理方法研究
  • 堡量堡塞用皇 doi:10.3969/j.issn.1671-1041.2010.03.001 室内有害气体检测及处理方法研究 张国胜,杜坚.杨志明 (西南石油大学研究生院,成都610500) 摘要:本设计是气体处理与报警于一体的检测系统.由室内处理系统和电话报警系统组成,起到既能自动排除有害气体又 ...

  • 酒精浓度检测器
  • 酒精浓度检测器 为了能实现酒精浓度的检测,本论文以STC12C5A32AD作为核心控制芯片,进行了酒精浓度检测仪的设计与制作.论文详细地叙述了系统电路的工作原理并对核心控制芯片STC12C5A32AD作出了介绍,以及对各核心器件的工作原理和在电路中的主要作用进行了详细介绍,并阐述了应用Protel实 ...

  • 室内环境监控系统
  • 常州信息职业技术学院 学生毕业设计(论文)报告 系 别: 电子与电气工程学院 专 业: 电气自动化技术 班 级: 电气111 学 生 姓 名: 踪娜 学 生 学 号:设计(论文)题目: 室内环境监测系统 指 导 教 师: 宋艳 设 计 地 点: 常州信息职业技术学院 起 迄 日 期: 2013.09 ...

  • 酒精浓度测试仪
  • 酒精浓度测试仪 目 录 酒精浓度测试仪设计报告 ............................................................................................................... 1 一. 设计意义 .... ...

  • 传感器的论文
  • 传感器 摘要:随着计算机技术的不断发展,信息处理技术也在不断发展完善.但作为提供信息的传感器,它的发展相对于计算机的信息处理功能来说就落后了.这使得自动检测技术受到影响,而检测技术是人类认识世界和改造科技不可少的重要手段.基于上述因素,越来越多的科技工作者对传感器技术予以了高度的重视,促使传感器技术 ...