工业酒精浓度_范文大全

工业酒精浓度

【范文精选】工业酒精浓度

【范文大全】工业酒精浓度

【专家解析】工业酒精浓度

【优秀范文】工业酒精浓度

范文一:酒精浓度使用 投稿:于燒燓

一、95%的酒精用做燃料

医疗单位常需使用酒精灯、酒精炉,点燃后用于配制化验试剂或药品制剂的加热,也可用于临时消毒小型医疗器械。

二、70%-75%的酒精用于灭菌消毒

用于包括皮肤消毒、医疗器械消毒、碘酒的脱碘等。

有人以为,酒精浓度越高,消毒效果越好,这是错误的。酒精消毒的作用是凝固细菌体内的蛋白质,从而杀死细菌。95%的酒精只能将细菌表面包膜的蛋白质迅速凝固,并形成一层保护膜,阻止酒精进入细菌体内,不能将细菌彻底杀死。如果酒精浓度低于70%,虽可进入细菌体内,但不能将其体内的蛋白质凝固,同样也不能将细菌彻底杀死。只有70%-75%的酒精即能顺利地进入到细菌体内,又能有效地将细菌体内的蛋白质凝固,因而可彻底杀死细菌。

用70%-75%的酒精消毒医疗器械应当用浸泡的方法,时间少于半小时;浸泡消毒后应用无菌生理盐水冲洗,以免器械上的残余酒精刺激机体组织。

三、40%-50%的酒精用于预防褥疮

长期卧床患者的背、腰、臀部因长期受压可引发褥疮,而且褥疮一旦形成很难愈合;其预防的方法就是要勤翻身、勤擦洗、勤按摩。

按摩时,护理人员会将少量40%-50%的酒精倒入手中,均匀地按摩患者受压部位,以达到促进局部血液循环,防止褥疮形成的目的。

四、25%-50%的酒精用于物理退热

高烧患者除药物治疗外,最简易、有效、安全的降温方法就是用25%-50%酒精擦浴的物理降温方法。用酒精擦洗患者皮肤时,不仅可刺激高烧患者的皮肤血管扩张,增加皮肤的散热能力;还由于其具有挥发性,可吸收并带走大量的热量,使体

温下降、症状缓解。

医用酒精必须到医疗机构购买,切不可误用工业酒精;因为工业酒精中不仅含有较多的杂质,还含有有毒物质(例如甲醇)。再有,酒精是易燃的危险品,保存时既要注意避光、避热、远离火源和电器、密封放在阴凉处。

范文二:酒精不同浓度作用 投稿:龙羫羬

药用酒精(乙醇)是医疗单位和家庭药箱的必备药品,是最常用的外用制剂之一。值得注意的是,不同用途的酒精要求不同的浓度。

■95%的酒精用做燃料

医疗单位常需使用酒精灯、酒精炉,点燃后用于配制化验试剂或药品制剂的加热,也可用其火焰临时消毒小型医疗器械。

■70%-75%的酒精用于灭菌消毒

用于包括皮肤消毒、医疗器械消毒、碘酒的脱碘等。

有人以为,酒精浓度越高,消毒效果越好,这是错误的。酒精消毒的作用是凝固细菌体内的蛋白质,从而杀死细菌。但95%的酒精能将细菌表面包膜的蛋白质迅速凝固,并形成一层保护膜,阻止酒精进入细菌体内,因而不能将细菌彻底杀死。如果酒精浓度低于70%,虽可进入细菌体内,但不能将其体内的蛋白质凝固,同样也不能将细菌彻底杀死。只有70%-75%的酒精即能顺利地进入到细菌体内,又能有效地将细菌体内的蛋白质凝固,因而可彻底杀死细菌。

用70%-75%的酒精消毒医疗器械应当用浸泡的方法,时间不得少于30分钟;浸泡消毒后应用无菌生理盐水冲洗,以免器械上的残余酒精刺激机体组织。

因为酒精只能杀死细菌,不能杀死芽孢和病毒,所以,医疗注射或手术前的皮肤消毒常使用效果更好的碘酒。为了减少碘对皮肤的长期刺激,一般在用碘酒消毒后,用75%的酒精脱去碘。

由于酒精具有一定的刺激性,75%的酒精可用于皮肤消毒,但不可用于黏膜和大创面的消毒。

■40%-50%的酒精用于预防褥疮

长期卧床患者的背、腰、臀部因长期受压可引发褥疮,而且褥疮一旦形成很难愈合;其预防的方法就是要勤翻身、勤擦洗、勤按摩。

按摩时,护理人员会将少量40%-50%的酒精倒入手中,均匀地按摩患者受压部位,以达到促进局部血液循环,防止褥疮形成的目的。

■25%-50%的酒精用于物理退热

高烧患者除药物治疗外,最简易、有效、安全的降温方法就是用25%-50%酒精擦浴的物理降温方法。用酒精擦洗患者皮肤时,不仅可刺激高烧患者的皮肤血管扩张,增加皮肤的散热能力;还由于其具有挥发性,可吸收并带走大量的热量,使体温下降、症状缓解。

具体方法是:将纱布或柔软的小毛巾用酒精蘸湿,拧至半干轻轻擦拭患者的颈部、胸部、腋下、四肢和手脚心。擦浴用酒精浓度不可过高,否则大面积地使用高浓度的酒精可刺激皮肤,吸收表皮大量的水分。

医用酒精必须到医疗机构购买,切不可误用工业酒精;因为工业酒精中不仅含有较多的杂质,还含有有毒物质(例如甲醇)。再有,酒精是易燃的危险品,保存时既要注意避光、避热、密封放在阴凉处,以免挥发后浓度降低;又要注意远离火源和电器,以免发生火灾。

范文三:酒精的浓度和用途 投稿:高捊捋

(一)体积分数为50%的酒精

1.1 作用:洗去浮色。

1.2 原理:苏丹Ⅲ是弱酸性染料,易溶于体积分数为50%酒精。

1.3 应用:

脂肪的鉴定实验。在该实验中,用苏丹Ⅲ对花生子叶薄片染色后,在薄片上滴1~2滴体积分数为50%的酒精溶液,可以洗去被染玻片标本上的苏丹Ⅲ染液浮色。

(二)体积分数为95%的酒精

2.1 作用:

① 解离;

② 析出提取含杂质较少的DNA。

2.2 原理:

① 解离原理:用质量分数为15%的盐酸和体积分数为95%的酒精1∶1混合,能使组织中的细胞相互分离开来;

② 析出提取含杂质较少的DNA的原理:DNA不溶于酒精,尤其是体积分数为95%的冷冻酒精,而细胞中的某些物质可以溶解于酒精。

2.3 应用

① 观察植物细胞的有丝分裂;

② DNA的粗提取与鉴定。

(三)体积分数为75%的酒精

3.1 作用:消毒杀菌。

3.2 原理:

体积分数为75%的酒精,能够顺利地渗入到细菌体内,吸收细菌蛋白的水分,使其脱水变性凝固而失去功能,以达到消毒杀菌的目的。高于体积分数为75%浓度的酒精与细菌接触时,就可能使得菌体表面迅速凝固,形成一层薄膜,阻止了酒精继续向菌体内部渗透,待到适当时机,薄膜内的细胞可能将薄膜冲破而重新复活。在此高浓度下,酒精迅速凝固蛋白质的作用往往随着其浓度升高而增强,因此,其消毒杀菌的效果也就越差。若酒精的浓度低于75%,也因不能顺利地渗入到细菌体内而彻底杀死细菌。如果使用体积分数为75%的酒精,既能使组成细菌的蛋白质凝固,又不能形成薄膜,这样,酒精可继续向内部渗透,从而达到较好的消毒效果。值得注意的是,体积分数为75%的酒精溶液的杀菌能力不是绝对很强,它对芽孢就不起作用。

3.3 应用:

学习微生物的培养技术。在接种开始时,待用肥皂将双手洗干净后,再用体积分数为75%的酒精棉球擦拭双手,然后在进行接种操作。

(四)无水酒精

4.1 作用:提取色素。

4.2 原理:

叶绿体中的各种色素均是有机物,能溶解在有机溶剂中,各色素在无水酒精中的溶解度较大,且酒精无毒,方便操作。

4.3 应用:叶绿体中色素的提取与分离。

(五)工业酒精(一般是体积分数为95%的酒精)

5.1 作用:燃烧加热。

5.2 原理:

酒精是富含能量的有机物,燃烧能产生大量的热量。

5.3 应用:

此处包括各类必须加热的实验,如生物组织中还原糖的鉴定、比较过氧化氢酶和Fe3+的催化效率、探索淀粉酶对淀粉和蔗糖的作用、DNA的粗提取与鉴定、温度对酶活性的影响、学习微生物培养的基本技术、自身固氮菌的分离等实验。

范文四:产5万吨工业酒精的高浓度淀粉酒精发酵车间的设计 投稿:钱夈変

产5万吨工业酒精的高浓度淀粉酒精发酵车间的设计

学生:蔡晶

指导老师:龚美珍

(三峡大学化学与生命科学院)

1 课题来源

本课题为07届毕业生的毕业设计(论文)课题,来源于三峡大学化学与生命科学院生物工程系。

2 课题研究的目的与意义

工业酒精是一种经济实用的清洁燃料。如今的能源危机,以及蓬勃发展的农业,都使得工业酒精产业的重新崛起、迅速发展成为必然。而生物发酵过程条件温和,转化率高,而且环保无污染,可以说是工业酒精的最理想的生产方法。生物发酵是利用淀粉质原料活糖原料,在微生物的作用下生成酒精。根据原料的不同,可分为:①淀粉原料酒精。这是我国和世界上生产酒精的主要方式,菌种利用薯类、谷物及野生植物等含淀粉的原料,在酶的作用下将淀粉水解为葡萄糖,再进一步发

酵生成酒精。整个生产过程包括原料的蒸煮、糖化剂的制备、糖化、酒母制备、发酵及蒸馏等工序。

②糖蜜原料酒精。直接利用糖蜜中的糖分,经过稀释并添加部分营养盐,借助酵母的作用发酵生成酒精。③亚硫酸盐纸浆废液原料酒精。造纸废料经也硫酸盐液蒸煮处理后,利用其中的六碳糖在酵母的作用下发酵生产酒精,主要用作工业酒精。

我国生产酒精的原料主要有三类,①淀粉质原料(粮食原料),包括谷物原料(玉米、小麦、高粱、大米等)和薯类原料(甘蔗、木薯、马铃薯等)。②糖质原料,最常用的是废糖蜜。③纤维质原料,目前用于酒精生产和研究用于酒精生产的纤维质原料有森林工业下脚料、木材工业下脚料、农作物秸秆、城市废纤维垃圾、甘蔗渣等。另外还有少量其他原料,包括亚硫酸盐纸废液、各种野生植物、乳清等。

3 国内外的研究现状和发展趋势

近年来,随着我国经济的高速发展,我国石油年消费量以13%的速度增长,2004年进口原料油量超过1亿吨,是世界第二大的石油进口国。我国燃料乙醇起步虽然较晚,但发展迅速,以成为继巴西美国之后世界第三大燃料乙醇生产国,现有酒精生产企业1100家左右,其中80%以上为小型企业,年产量在万吨以下。目前,在我国酒精的产量中,以玉米、谷物为原料的占55%,薯类为原料的占33%,糖蜜为原料的占12%。近几年,我国酒精行业平稳发展,产量逐年增加,2000年产量为230万吨。2001年4月,原国家计委发布了中国实施车用汽油添加燃料乙醇的相关办法,同时国家质量技术监督局颁布了“变性燃料乙醇”和“车用燃料乙醇汽油”2个国家标准。作为试点,国家耗资50余亿元建立4个以消化“陈化粮”为主要目标的燃料乙醇生产企业。2006年,我国燃料乙醇生产能力达到102万吨,已实现混配1020万吨燃料乙醇汽油的能力。由于用粮食为原料生产燃料乙醇需要消耗大量的粮食,为此国家燃料乙醇产业坚持非粮燃料乙醇,原料的选择遵循“因地制宜,非粮为主”的原则。2002年车用汽油消耗量占汽油产量的87.9%,如果按10%比例添加生产燃料酒精换算,需要燃料酒精381万吨,而全年酒精总产量仅为20.7万吨,如果在不久的将来,能用燃料酒精替代500万吨等量汽油,就可以为我国节省外汇15亿美元。在目前中国人均石油开采储量仅为2.6吨的低水平条件下,开发新能源成为社会发展,推动经济增长的动力,燃料酒精作为国家战略部署的新型能源之一,在我国具有广阔的市场前景。

4 研究的主要内容、途径

4.1研究的内容

传统的酒精生产采用高温高压蒸煮发,波坏植物细胞间组织和细胞壁,使淀粉粒溶解并释放出来,但能耗高,且易造成糖分损失。现代研究表明,只需在淀粉原料吸水膨

胀过程中增加低温糊化过程,即可达到理想的糊化效果。不同淀粉质原料的糊化温度各 不相同。

薯干原料淀粉的糊化温度一般为80℃,为达到淀粉溶出和灭菌的要求,宜将生产温度控制在80-85℃。现在的工业酒精很大部分都是用生物发酵的方法生产的,这就要用到酒精发酵的菌种。目前,酒精发酵的菌种主要以酵母菌为主。酒精发酵酵母的必备特性是:①能分泌一定的淀粉分解酶;②在发酵过程的第一个24h内有较高的生长率和发酵率,积累大量的酒精从而防止杂菌污染;③能耐受高浓度的酒精;④能在一个较宽的温度范围内生长和发酵;⑤能耐受酸性(pH可至2.0);⑥能在高糖条件下发酵;⑦遗传性稳定。通过糖酵解途径,酵母将葡萄糖高效转化为乙醇和二氧化碳。酵母菌的种类很多,包括孢子酵母、产冬孢子酵母、掷孢酵母和无孢子酵母等,涵盖60个属500多种。

4 .2设计内容

1)、淀粉质原料的蒸煮糖化及发酵方案的论证及设计方案的确定

2)、蒸煮糖化及发酵生产工艺流程设计

3)、蒸煮糖化及发酵生产工艺的物料衡算及热量衡算

4)、蒸煮糖化及发酵车间的带控制点的工艺流程图设计及设备布置图设计

5)、酒精发酵罐的设计及选型

4.3主要生产工艺流程

玉米→粉碎→搅拌→蒸煮(加α淀粉酶)→冷却→糖化(加糖化酶)→冷却→发酵(加酵母菌种)→蒸馏→精馏→酒精(无水乙醇)

4.4本课题的研究手段

设计以传统的酒精生产工艺为蓝本,综合毕业实习时收集的资料及查阅的大量

相关资料,力求在工艺上,设备上追求一种简单、先进、合理的过程以适应社会和市场 的需求。

本课题的设计依据结合当地原料、水源、水质、能源供应及交通运输状况的调查与研究,依据自然状况,查阅大量相关资料,遵从设计题目要求,用学过的理论知识

与实践相结合,进行这次题目的设计工作。

首先就设计题目的规格进行全厂的物料衡算;在物料衡算的基础上,进行全厂设备的设计、计算和选型,通过对标准设备的生产能力的计算,选出其功率型号、设

总量、材料及主要动力设备,列出全厂设备一览表。

在课题最后是总体平面设计,基本原则是:严格遵照上述设计文件的要求进行平面布置设计,既要结合厂地自然条件因地制宜,又要注意技术经济性,节约用地,节省投资和留有发展地。

5工作的主要阶段、进度

2010.12—2011.2.24 进行资料检索,学习响应面法的相关知识,完成外文翻译、文献综述及撰写开题报告拟订设计方案。

2011.2.25—2011.3 根据设计方案进行各项计算。

2011.3—2011.3 数据处理,书写论文,绘制设计图。

2011.5 进行毕业设计形式审查并答辩

6最终目标及完成时间

最终目标:,综合运用所学的工程学、化工原理和生物工艺学等方面的知识进行酒精发酵蒸馏车间的设计,掌握酒精生产技术发展新趋势,为以后在化学工程、生物工程、生物技术领域从事设计、生产、管理和新技术研究等方面工作打下一定的基础。

完成时间:2011年5月底

7现有条件及必须采取的措施

现有图书馆查阅的一定资料以及以前做过工厂设计的经验,必须更严格的要求自己,借鉴以前的经验,努力最好的完成本次设计。

范文五:酒精工业高浓度有机废水处理 投稿:崔输辔

酒精工业的污染以水的污染最为严重。酒精工业废水具有COD高、SS含量多、温度高、酸性大等污染特点,属于高浓度农产品加工有机废水。

酒精生产的废水主要来自蒸馏发酵成熟醪时粗馏塔底部排放的蒸馏残留物――酒精糟(即高浓度有机废水),以及生产过程中的洗涤水(中浓度有机废水)和冷却水。

高浓度有机废水的综合利用和处理

高浓度有机废水虽然无毒,但是污染负荷高成酸性。根据酒精生产的原料不同,其酒精糟的综合利用和处理采用不同的方法。

玉米酒精槽的综合利用和处理

1、固液分离(沉淀池、板框压滤机、真空回转过滤机、卧式螺旋卸料沉降离心机)

2、浓缩(强制循环蒸发器、升膜式蒸发器、降膜式蒸发器、闪蒸蒸发器)

3、干燥

薯干酒精槽的处理与综合利用

1、厌氧-好氧工艺

2、固液分离、部分厌氧与好氧处理

糖蜜酒精槽的处理与综合利用

1、农灌法

2、生产有机复合肥料法

3、浓缩燃烧回收能源

4、厌氧法

5、饲料酵母法

范文六:酒精浓度检测仪 投稿:侯蒱蒲

毕业论文

酒精浓度检测仪设计

摘要

从工厂企业到居民家庭,酒精泄露的检测、监控以及对酒后驾车的监测对居民的人身和财产安全都是十分重要且必不可少的。同时,随着我国经济的高速发展,人民的生活水平迅速提高,越来越多的人有了自己的私家车,酒后驾车是导致交通事故的一个主要因素,资料显示,我国近几年发生的重大交通事故中,有将近三分之一是由酒后驾车引起的。由于人们安全意识增强,对环境安全性和生活舒适性要求的提高,为了防止机动车辆驾驶人员酒后驾车,现场实时对人体呼气中酒精含量的检测已日益受到重视,酒精浓度测试仪逐渐得到广泛应用。此外,酒精测试仪也可应用于食品加工、酿酒等需要监控空气中酒精浓度的场合。如今,气体传感器向低功耗、多功能、集成化方向的发展,因此,酒精浓度检测仪具有十分广阔的现实市场和潜在的市场要求。

综观现有的酒精检测器,系统实现方案上大部分以单片机为基础,并借助相应的外围电路,将检测结果通过LED、LCD 等显示方式告知使用者。本设计用的MQK2酒精传感器就是一种对气体敏感的化学传感器,它能随着外部气体的浓度或不同而改变敏感膜的电阻。系统选AT89S52单片机为控制核心,对检测到的气体状况进行相应的处理分析、处理和显示,并通过报警进行提示。

关键词:酒精传感器 MQK2 AT89S52单片机 报警

第一章 气敏传感器

2. 1 气敏传感器工作原理

气敏电阻是一种半导体敏感器件,它是利用气体的吸附而使半导体本身的 电导率发生变化这一机理来进行检测的。人们发现某些氧化物半导体材料如SnO2、ZnO、Fe2O3、MgO、NiO、BaTiO3等都具有气敏效应。

气敏传感器是一种检测特定气体的传感器。它主要包括半导体气敏传感器、接触燃烧式气敏传感器和电化学气敏传感器等,其中用的最多的是半导体气敏传感器。它的应用主要有:一氧化碳气体的检测、瓦斯气体的检测、煤气的检测、氟利昂(R11、R12)的检测、呼气中乙醇的检测、人体口腔口臭的检测等等。它将气体种类及其与浓度有关的信息转换成电信号,根据这些电信号的强弱就可以获得与待测气体在环境中的存在情况有关的信息,从而可以进行检测、监控、报警;还可以通过接口电路与计算机组成自动检测、控制和报警系统。半导体气敏传感器对于低浓度气体具有很高的灵敏度,具有嗅觉功能,能自动检测瓦斯浓度。一旦瓦斯超限,气敏传感器即可自动报警,然后采取先抽后采的原则,即可防止瓦斯爆炸事故的发生。

半导体气敏传感器是利用待测气体在半导体表面的氧化和还原反应导致敏感元件阻值变化来检测气体的种类和浓度的。当半导体器件被加热到稳定状态,在气体接触半导体表面而被吸附时,被吸附的分子首先在表面自由扩散,失去运动能量,一部分分子被蒸发掉,另一部分残留分子产生热分解而固定在吸附处时,如果半导体的功函数大于吸附分子的离解能,吸附分子将向器件释放电子,而形成正离子吸附。如H2、CO、碳氢化合物等,被称为还原型气体。当还原型气体吸附到N型半导体上时,载流子增多,使半导体电阻值下降。

2.2 气敏传感器

气敏传感器是酒精检测系统的核心,通常安装在探测头内。从本质上讲气敏传感器是一种将某种气体的体积分数转化成对应电信号的转换器。探测头通过气敏传感器对气体样品进行调理,通常包括滤除杂质和干扰气体、干燥或制冷处理、样品抽吸,甚至对样品进行化学处理,以便化学传感器进行更快速的测量。

目前普遍使用的气敏传感器有燃料电池型(电化学型)和半导体型两种。他

们能够制造便携型呼气酒精浓度测试器,适合于现场使用。与半导体传感器相比,燃料电池酒精传感器具有稳定性好、精度高、抗干扰性好等优点。由于燃料电池酒精传感器的结构要求很精密,制造难度大,目前世界上只有美国、德国、英国等少数几个国家能够生产。

本测试器采用MQK2酒精浓度传感器,检测人体呼出气体中酒精浓度并且输出电压信号。MQK2酒精浓度传感器主要由气敏元件和电阻丝组成, MQK2传感器外接+5V电压时,能将电阻丝加热到270℃~300℃。,电路将MQK2传感器的阻值变化转化成输出电压的变化,从而可以通过A/D转换成数字量供单片机处理。

根据分析,乙醇浓度增加时元件电阻R减小反之异亦反,所以呼出气体中的气态乙醇逐渐扩散后元件电阻R敏感的变化。

第二章 酒精浓度检测仪发展的现状

在应用方面,目前最广泛的是可燃性气体气敏元件传感器,已普及应用于气体泄漏检测和监控,从工厂企业到居民家庭,应用十分广泛。

一是气体传感器向低功耗、多功能、集成化方向发展 国外气体传感器发展很快。二是增强可靠性,实现元件和应用电路集成化,多功能化,发展MEMS技术,发展现场适用的变送器和智能型传感器。

2.5.1 气体传感器向低功耗、多功能、集成化方向发展

国外气体传感器发展很快,一方面是由于人们安全意识增强,对环境安全性和生活舒适性要求提高;另一方面是由于传感器市场增长受到政府安全法规的推动。因此,国外气体传感器技术得到了较快发展,据有关统计猜测,美国1996年—2002年气体传感器年均增长率为(27~30)%。

目前,气体传感器的发展趋势集中表现为:一是提高灵敏度和工作性能,降 低功耗和成本,缩小尺寸,简化电路,与应用整机相结合,这也是气体传感器一直追求的目标。如日本费加罗公司推出了检测(0.1~10)×10-6硫化氢低功耗气体传感器,美国IST提供了寿命达10年以上的气体传感器,美国FirstAlert公司推出了生物模拟型(光化反应型)低功耗CO气体传感器等。二是增强可靠性,实现元件和应用电路集成化,多功能化,发展MEMS技术,发展现场适用的变送器和智能型传感器。如美国GeneralMonitors公司在传感器中嵌入微处理器,使气体传感器具有控制校准和监视故障状况功能,实现了智能化;还有前已

涉及的美国IST公司的具有微处理器的“MegaGas”传感器实现了智能化、多功能化。

气敏元件传感器作为新型敏感元件传感器在国家列为重点支持发展的情况下,国内已有一定的基础。其现状是:

(1)烧结型气敏元件仍是生产的主流,占总量90%以上;接触燃绕式气敏元件已具备了生产基础和能力;电化学气体传感器有了试制产品;

(2)在工艺方面引入了表面掺杂、表面覆膜以及制作表面催化反应层和修隔离层等工艺,使烧结型元件由广谱性气敏发展成选择性气敏;在结构方面研制了补偿复合结构、组合差动结构以及集成化阵列结构;在气敏材料方面SnO2和Fe2O3材料已用于批量生产气敏元件,新研究开发的Al2O3气敏材料、石英晶体和有机半导体等也开始用于气敏材料;

(3)低功耗气敏元件(如一氧化碳,甲烷等气敏元件)已从产品研究进入中试;

(4)国内气敏元件传感器产量已超过“九五”初期的400万支。产量超过20万支的主要厂家有5家,黑龙江敏感集团、太原电子厂、云南春光器材厂、天津费加罗公司(合资)、北京电子管厂(特种电器厂),其中前四家都超过100万支,据行业协会统计,1998年全国气敏元件总产量已超过600万支。

总的看来,我国气敏元件传感器及其应用技术有了较快进展,但与国外先进水平仍有较大的差距,主要是产品制造技术、产业化及应用等方面的差距,与日本比较仍要落后10年。

2.5.3 市场需求分析

气敏元件、传感器及其应用产品具有十分广阔的现实市场和潜在的市场需求。

以4类气敏元件传感器为例,作简要市场需求分析。

(1)可燃性气体气敏元件传感器

这是需求量最大的一类气敏元件传感器,包含各种烷类和有机蒸气类(VOC)气体,目前大量应用于抽油烟机、泄漏报警器和空气清新机,已形成批量生产规

模,每年约有500万支以上的市场。随着在油田、矿区、化工企业及家庭等生产生活领域广泛用作气体泄漏报警,非凡是用于家庭气体泄漏报警,如液化石油气、天燃气及其他可燃性气体的检测报警等,预计在2001年—2005年将会有成倍需求。

(2)一氧化碳和氢气气敏元件传感器

这两种也是最有需求量的气敏元件传感器。一氧化碳气敏元件可用于工业生产、环保、汽车、家庭等一氧化碳泄漏和不完全燃烧检测报警;氢气气敏元件除工业等领域应用外也同一氧化碳气敏元件一样,广泛用于家庭管道煤气泄漏报警。由于我国管道煤气中氢气含量高,而氢敏元件较之一氧化碳元件价格低,灵敏度高,因此,用氢敏元件做城市管道煤气泄漏报警更为适宜。由于管道煤气泄漏、灶具不合格导致不完全燃烧而造成CO中毒等灾难事故是十分严重的,每年都给我们留下惨痛的后果,仅哈尔滨市1998年11月2日一次管道煤气泄漏事故就造成37人中毒,8人死亡。因此,安装煤气报警器已成为政府为保护人民生命财产安全而强制推动的一项措施。目前我国已有黑龙江省、山西省、哈尔滨市、青岛市等发布文件。随着城市燃气化的扩大、政府立法和人民安全保护意识的提高,城市家庭安装气体报警器必将很快推广普及,一氧化碳、氢气敏元件传感器的需求量将会急剧增加。美国已有7个州11个城市通过立法要求家庭安装CO报警器。据统计,按一间卧室安装一台CO报警器计算,美国CO报警器市场应该是9400万台,按目前价格计算是38亿美元,而且每年可新增40万台。早在1994年,我国城市燃气用户就达到2978万户,用气人口10421.8万人。我国660个城市,有液化石油气的城市513个,同时兼有人工煤气的城市170个,有天然气城市55个,国家计划到2000年城市人口平均气化率达到60%~70%。目前大约有1.2亿居民、约(3000~4000)万户使用燃气,按这些燃气用户的40%安装气体报警器计算,需求量就达1200万台以上。而随着城市燃气应用的扩大,用气人口增多,报警器需求量必将迅速增加。

另一个需要安装气体报警器的是使用燃气热水器非凡是直排式燃气热水器的场所。由于燃气热水器使用不当或质量变坏发生不完全燃烧,造成CO中毒现象时有发生,南京、上海、福洲、北京、衡阳等都有过报道。仅据来自中国消费者协会的投诉统计,1998年全国就有16人死于燃气热水器事故,伤4人,残2人,比1997年上升了200%。为防止灾难事故,安装CO报警器十分重要。目前

我国颁发燃气热水器生产许可证企业153家,燃气热水器社会拥有量已在3000万台以上,其中50%以上是直排式。为了安全,国家技术监督局已发布强制性标准(GB6932-94),要求燃气热水器必须有防止不安全燃烧的保护装置。要求上述热水器5年内安装完CO报警(控制)器,仅此每年就需要600万台。显然,其需求量是相当大的。

(3)氧传感器

氧传感器应用很广泛,在环保、医疗、冶金、交通等领域需求量很大。以汽车用氧传感器为例,为提高汽车性能,降低排气污染,国外已采用电子燃油喷射系统(EFI)代替化油器,如美国、德国和日本,EFI系统的装车率已分别达100%、98%和90%。我国八五期间将EFI列入国家科委攻关计划。经过攻关,现已在切诺基、小红旗、桑塔纳等轿车上成功安装了EFI,在一个发动机电子喷射系统中要使用温度、压力、气体、爆震、位置等传感器(6~8)个,其中氧气传感器是控制发动机点火和尾气排放的最主要的传感器。一套闭环控制系统要用(1~2)氧传感器。目前我国尚不能生产汽车用氧传感器,主要依靠进口。预计到2000年后,国内氧传感器配套将有大的需求,如上海汽车电子有限公司,EFI系统年产能力为120万套,全部配套传感器就要240万支。我国1998年汽车生产超过10万辆的有上海大众、一汽、天汽、东风、长安、柳州五菱等六家企业。按此估计,仅用于汽车的氧传感器,我国年需量也要在500万支以上。

第三章 系统硬件设计

1.1 系统整体设计方案

单片机酒精浓度测试仪用MQK2酒精传感器采集气体信号,并通过数模转换器将模拟信号转换成数字信号送至单片机,单片机对数字信号进行分析处理,并将所得的结果显示出来,可以通过键盘设置不同环境下酒精浓度的不同阀值,如果所检测出的酒精浓度超过了所设定的阀值,那么单片机就能控制蜂鸣器发出声音报警。键盘采用3个独立键盘进行数据输入设定;显示部分用5个数码管显示当前数据,数码管分别用2个74HC573锁存器控制段选和位选。温度采集采用DS18B20,与传统的热敏电阻相比,它能够直接读出被测温度,并且可根据实际要求通过简单的编程实现9~12位的数字值读数方式,并且从DS18B20读出的信息或写入DS18B20的信息仅需要一根口线(单线接口)读写,温度变换功率来源于数

据总线,总线本身也可以向所挂接的DS18B20供电,而无需额外电源。经过软件处理送至数码管显示当前环境温度。

图1、系统方框图

2.4 MQK2传感器的特性及性能指标

一、特性

l、对酒精气体有很高的灵敏度。

2、具有良好的重复性和长期的稳定性。

3、抗干扰,对酒精气体有很好的选择性。

二、应用

对酒精气体的检测。

三、特性参数

l、回路电压:(Vc) 5-24V

2、取样电阻:(RL) 0.5-20KΩ

3、加热电压:(VH)5±0.1V

4、加热功率:(P)约750mW

5、灵敏度:R0(air)/RS (100ppmC2H5OH)>5

6、响应时间:Tres<10秒

7、恢复时间:Trec<30秒

四、注意事项: 气敏元件开始工作时,需预热3-5分钟后方可正常使用。不要在 蚀性气体环境下工作。

五、工作环境:温度-10-+50℃、相对湿度0-90%RH。

六、传感器输出电压与酒精浓度关系

通过测量MQK2输出信号同酒精浓度为近似的线性关系,如图1所示。

图1 酒精浓度同输出电压的近似关系

3.1 传感器信号采集电路

电路的前端部分MQK2传感器按照常规设计即可,如图2所示。MQK3外接+5V电压将时,可将电阻丝加热至270℃~300℃.电路将MQK2的阻值变化转换成输出电压的变化,从而可以通过A/D转换成数字信号供单片机处理。

在酒精浓度为0时,其输出电压为3v。但由于其输出的电压范围超过了AT89S52的输入电压范围,所以在本设计中加入了一个调整电路来使其输出的电压能够满足AT89S52的输入要求。其调整电路的原理图如图3。采用LM336~2.

5

图2 MKQ2酒精传感器电路

作为一个2.5 V的基准电压,采用差动输入使得Vout=V酒精-2.5V从而使得传感器信号的输出符合AT89S52的范围。

图3 传感器处理电路

3.2 A/D转换电路

模数转换电路的功能是将连续变化的模拟量转换为离散的数字量,是架起模拟系统跟数字系统之间连接的桥梁。对于本系统而言,就是用于快速、高精度地对输入的酒精浓度信号进行采样编码,将其转换成单片机所能够处理的数字量。模数转换电路是本系统的关键部分,其性能的好坏直接影响整个系统的质量。 模数转换采用ADC0804,对输入模拟量要求:信号单极性,电压范围是0-5V,若信号太小,必须进行放大;输入的模拟量在转换过程中应该保持不变,如若模拟量变化太快,则需在输入前增加采样保持电路。ADC0804有20个引脚,其中11-18管脚为数字信号输出端,与单片机P1口相连;cs为片选端,接单片机P3.5口,当cs接低电平时ADC0804开始工作,WR接P3.6口,当WR变为低电平再跳变为高电平后启动A/D转换,RD接单片机P3.7口,当RD由低电平跳变为低电平时,单片机读 走A/D转换完的数字信号。CLK为时钟输入信号线, 因ADC0804的内部没有时钟电路,所需时钟信号必须由外界提供,通常使用频率为500KHZ,VREF(+),VREF(-)为参考电压输入。INTR为中断控制信号,接单片机外部中断端口,当A/D转换完后向单片机发出中断信号,等待读走数字信号,INTR也空可置不接,因为当启动A/D后一段时间后模数转换完后,等待一段时间后单片机也可以读走数字量。原理图如图4。

图 4 A/D转换电路

3.3单片机系统

AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K 在系统可编程Flash 存储器。使用Atmel 公司高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于 常规编程器。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。

AT89S52具有以下标准功能: 8k字节Flash,256字节RAM,32 位I/O 口线,看门狗定时器,2 个数据指针,三个16 位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89S52 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。其电路如图5。

报警电路采用单片机I/O口外接三极管驱动蜂鸣器,发出报警信号,如图6所示。

图5 单片机基本电路

图6 蜂鸣器电路 图7 独立键盘电路

键盘分编码键盘和非编码键盘。键盘上闭合键的识别由专用的硬件编码器实现,并产生键编码号或键值的称为编码键盘,如计算机键盘。而靠软件编程来识别的称为非编码键盘;在单片机组成的各种系统中,用的最多的是非编码键盘。非编码键盘有分为:独立键盘和行列式(又称为矩阵式)键盘。本设计采用3个独立键盘来输入数字量,如图7。3个键盘分别接单片机P2.0,P2.1,P2.2。使用时先将键盘借口初始化,即将P2.0~P2.2全部置1,然后判断是否有键按下,若键盘输入端变为低电平,表明此键盘按下,在软件编程时,注意键盘消抖。 显示部分用4个数码管显示当前数据,数码管分别用2个74HC573锁存器控制段选和位选,锁存器与单片机I/O口连接,位锁存器输出端分别与数码管片选连接,段锁存器输出端接数码管段输入端连接。锁存器片选输入端为高电平时,I/O口数据输入锁存器,当输入为低电平时,锁存器关闭并将数据保持住。如图8所示。段选接单片机P2.6,位选接单片机P2.7。

图8 显示电路部分

3.4 DS10B20温度采集电路

温度采集采用DS18B20, DS18B20是美国DALLAS半导体公司最新推出的一种数字化单总线器件,属于新一代适配微处理器的改进型智能温度传感器。与传统的热敏电阻相比,它能够直接读出被测温度,并且可根据实际要求通过简单的编程实现9~12位的数字值读数方式。可以分别在93.75 ms和750 ms内完成9位和12位的数字量,并且从DS18B20读出的信息或写入DS18B20的信息仅需要一根口线(单线接口)读写,温度变换功率来源于数据总线,总线本身也可以向所挂接的DS18B20供电,而无需额外电源。因而使用DS18B20可使系统结构更趋简单,可靠性更高。同时其“一线总线”独特而且经济的特点,使用户可轻松地组建传感器网络,为测量系统的构建引入了全新的概念。DS18B20“一线总线”数字化温度传感器支持“一线总线”接口,测量温度范围为-55℃~125℃,在-10~+85℃范围内,精度为±0.5℃。现场温度直接以“一线总线”的数字方式传输,用符号扩展的16位数字量方式串行输出,大大提高了系统的抗干扰性。DS18B20可以直接通过DQ端口向单片机输入温度信号(如图9)。DQ接单片机P2.4口。

图9 DS18B20温度采集系统

DSl8B20 数字温度计提供9 位(二进制)温度读数,指示器件的温度信息经过

单线接口送入DSl8B20 或从DSl8B20 送出,因此从主机CPU 到DSl8B20 仅需一条线(和地线)。 DSl8B20 的电源可以由数据线本身提供而不需要外部电源。因为每一个DSl8B20 在出厂时已经给定了唯一的序号,因此任意多个DSl8B20 可以存放在同一条单线总线上。这允许在许多不同的地方放置温度敏感器件。DSl8B20 的测量范围从-55 到+125,增量值为0.5 可在l s(典型值)内把温度变换成数字。

DS18B20 用9 位存贮温值度最高位S为符号。负温度S=1,正温度S=0 。

第四章 软件处理部分

4.1 酒精测量处理部分

将传感器输出经调整后的模拟电压输入转换器进行A/D转换,采用ADC0804其操作时序图如下

转换时序

读走数字信号时序

图10 ADC0804控制信号时序图

MQK2酒精传感器输出电压与酒精浓度近似为线性关系,由图1可得酒精浓度与输出电压函数近似为 V=2.78*C+3,C表示酒精浓度,单位为mg/L。

本设计中加入了一个调整电路来使其输出的电压能够满足单片机的输入要求,其输入与输出关系为VOUT=Vin-2.5V。因此输入模拟电压与呼出气体中的酒精浓度的函数关系为V=2.78*C+0.5。

当开始检测时,采样传感器的输出信号,并准备A/ D 转换。每隔50 ms 采集一个电压值,共采集10 个,取其中最大的3 个结果,并计算其平均数。由于传感器信号处理电路中酒精浓度值和输出电压值之间有线性关系,确定电压值和酒精浓度的对应关系,最后输出酒精浓度值。整个过程流程图如图11所示。

图11 酒精浓度检测子程序流程图

大量的统计研究结果表明,如果被测者深吸气后以中等力度呼气达三秒钟上,这时呼出的气就是从肺部深处出来的气体。呼气中的酒精含量与血液中的酒

精含量有如下关系:

BAC(in mg/L)=BrAC(in mg/L)x 2200

其中,BAC代表血液酒精浓度,BrAC表示呼气酒精浓度,in mg/L表示以每升中多少毫克为单位。也就是说,以毫克/升为单位的血液酒精浓度在数值上相当于以毫克/升为单位的呼气酒精浓度乘上系数2200(由于各国的情况不同,在美国此系数采用2000,而欧洲很多国家采用2100)。由于BrAC受到环境温度、湿度以及被测试者个体差异等多方面影响,其测试结果不如直接检测BAC准确,但是该结果仍可作为判断饮酒程度的重要参考。我国对酒后驾驶的判定界限为10~30 g/100 L (血液中的酒精浓度)。

4.2 温度处理部分

本系统软件部分主要包括:DS18B20 的初始化子程序、向DS18B20 中写数据子程序,从DS18B20 中读数据子程序、温度转换子程序和通信子程序。软件系统流程图如图12所示。

图12 DS18B20温度转换软件流程图

DSl820 工作过程及时序

DSl820 工作过程中的协议如下:

初始化RoM 操作命令存储器操作命令处理数据。

1 初始化

单总线上的所有处理均从初始化开始。

2 ROM 操作品令

总线主机检测到DSl820 的存在,便可以发出ROM 操作命令之一,这些命令如 指令 代码

Read ROM(读ROM) [33H]

Match ROM(匹配ROM) [55H]

Skip ROM(跳过ROM] [CCH]

Search ROM(搜索ROM) [F0H]

Alarm search(告警搜索) [ECH]

3 存储器操作命令

指令 代码

Write Scratchpad(写暂存存储器) [4EH]

Read Scratchpad(读暂存存储器) [BEH]

Copy Scratchpad(复制暂存存储器) [48H]

Convert Temperature(温度变换) [44H]

Recall EPROM(重新调出) [B8H]

Read Power supply(读电源) [B4H]

4 时 序

主机使用时间隙(time slots)来读写DSl820 的数据位和写命令字的位

(1)初始化

时序见图10。主机总线to 时刻发送一复位脉冲(最短为480us的低电平信号), 接着在tl 时刻释放总线并进入接收状态,DSl820在检测到总线的上升沿之后,等待15-60us,接着DS1820 在t2 时刻发出存在脉冲(低电平持续60-240 us) 如图13中虚线所示。

图13 初始化时序

以下子程序在MCS51 仿真机上通过其晶振为12M.。初始化子程序:

RESET:

PUSH B ; 保存B 寄存器

PUSH A 保存A 寄存器

MOV A,#4 ; 设置循环次数

CLR P1.0 ; 发出复位脉冲

MOV B,#250 ; 计数250 次

DJNZ B,$ ; 保持低电平500us

SETB Pl.0 ; 释放总线

MOV B,#6 ; 设置时间常数

CLR C ; 清存在信号标志

WAITL: JB Pl.0,WH ;若总线释放跳出循环

DJNZ B,WAITL ; 总线低等待

DJNZ ACC,WAITL; 释放总线等待一段时间

SJMP SHORT

WH: MOV B,#111

WH1: ORL C,P1.0

DJNZ B,WH1 ; 存在时间等待

SHORT: POP A

POP B

(2)写时间隙

当主机总线to时刻从高拉至低电平时就产生写时间隙见图14、图15

4 ,从to 时刻开始15us 之内应将所需写的位送到总线上,DSl820 在t0 后

15-60us 间对总线采样。若低电平写入的位是0,见图14;若高电平写入的位是1,见图15。连续写2位间的间隙应大于1us。

图14 写0时序 图15 写1时序

写位子程序(待写位的内容在C 中)

WRBIT:

PUSH B ; 保存B

MOV B,#28 ; 设置时间常数

CLR P1.0 ; 写开始

NOP ;1us

NOP ;1us

NOP ;1us

NOP ;1us

N0P ;1us

MOVPl.0,C ; C 内容到总线

WDLT: DJNZ B,WDLT;等待56Us

POP B

SETB Pl.0 ; 释放总线

RET ;返回

写字节子程序(待写内容在A 中):

WRBYTB:

PUSH B : 保存B

MOV B #8H ; 设置写位个数

WLOP: RRC A ; 把写的位放到C

ACALL WRBIT ; 调写 1 位子程序

DJNZ B WLOP ; 8 位全写完?

POP B

RET

(3)读时间隙

见图16主机总线to 时刻从高拉至低电平时,总线只须保持低电平l7ts ,之后在t1 时刻将总线拉高产生读时间隙读时间隙在t1 时刻后t2 时刻前有效,tz 距to为15捍s,也就是说,tz 时刻前主机必须完成读位,并在to后的60 尸s 一120 fzs 内释放总线。

读位子程序(读得的位到C 中);

图16 读时序

RDBIT:

PUSH B ; 保存B

PUSH A ; 保存A

MOV B,#23 ; 设置时间常数

CLR P1.0 ; 读开始图2 25 5 的t0

NOP ;1us

NOP ;1us

NOP ;1us

NOP ;1us

SETB Pl.0 ; 释放总线

MOV A,P1 ; P1 口读到A

MOV C,EOH ; P1.0 内容C

NOP ;1us

NOP ;1us

NOP ;1us

NOP ;1us

RDDLT: DJNZ B,RDDLT ;等待46us

SETB P1.0

POP A

POP B

RET

读字节子程序(读到内容放到A 中)

RDBYTE:

PUSH B ; 保存B

RLOP MOV B,#8H ; 设置读位数

ACALL RDBIT ; 调读1 位子程序

RRC A ; 把读到位在C 中并依次送给A DJNZ B,RLOP ; 8 位读完? POP B ; 恢复B RET

读写函数实例如下所示(C语言)

复位实例

读字节实例

读位实例

写字节实例

4.3 系统整体软件设计

为充分加热传感器的电热丝,在系统初始化完成后,首先启动DS18B20,显示

当前环境温度同时开始预热,时间大约30 s 。30 s 计时到后,并等待用户的按键操作,若未检测到任何按键按下,系统进入待机状态。考虑到手持设备节能的要求,采用无键按下时睡眠待机的设计,睡眠过程中关闭系统时钟,大大节约了能耗,唤醒操作可利用触键实现。主程序流程如图17所示。

系统共分3个按键K1、K2、K3 , 分别接至单片机P2.0-P2.2口,初始化时将P2.0-P2.2置1,当检测到输入端为低电平时表示有键按下,通过软件5ms延时,消除键盘抖动。

在待机状态时若按下K1键提示被测者吹气,若检测过程中需要取消测试,可按K2键,此时系统放弃测试,并可回到待机状态。考虑到环境、湿度以及被测试者的个体差异等因素,有时需要修改浓度的警戒值,在待机状态下,按下K3,数码管上将显示当前设置值,此时按下K1、K2可调节警戒值。每按一次K1值可将报警浓度上调0.02mg/L(最高到0.72mg/L),按下K2则下调0.02mg/L(最低到0.04mg/L),调整完后在按下K3值可保存新的警戒值。

图19 主程序流程图

结 论

本文设计了基于单片机的酒精浓度检测仪,设计过程包括了硬件电路设计和软件程序的编写两部分。硬件电路部分结构简单、使用方便、适合大众化使用。软件部分采用模块化设计思想,各个子程序的功能相对独立,便于调试和修改。通过软、硬件联合调试,实验结果满足设计基本要求,达到设计目标。仪器电 路设计合理,体积小,且灵敏度、分辨率和抗干扰能力适用于驾驶员自测是否饮酒过量的测量,也可用于酒精浓度监控。

考虑到技术先进性和人性化设计的需要,如果能在上述方案中加入语音提示、语音播报检测结果等新功能,将是非常有益的。从技术的角度看,在现有方案中加入专用的语音处理芯片(如AC48105) ,从而实现语音功能,并不是非常复杂,但是这样会使原有的系统结构上变得不够精简,且导致性价比下降。如果选用的单片机本身就方便地处理语音信号,那么实现语音功能就将变得相对简单。

总体上,本设计以52单片机为基础,采用廉价的酒精传感器采集信号(若需要提高测试精度,可选用燃料电池型传感器),实现了一种新型的酒精浓度检测器设计,操作过程中带有温度显示示,测试结果可通过数码管显示,可进行报警,还可根据实际情况对测试警戒值作出调整,体现出一定的人性化、智能化特点,系统性价比较高,具有一定的实用价值和推广价值。

DS18B20 单总线温度传感器硬件设计简单、可靠。温度采集系统,以抗干扰能力强、对环境要求不高,以低廉的价格换取良好的温度显示效果,实现起来简单而且可靠性较强。

参 考 文 献(小3号黑体,居中)

[1] 岳睿.呼气式酒精传感器的研究进展 [J].化学传感器,2006(3):6-9。 [2] 刘丰年.气体传感器测试系统[D].硕士学位论文.吉林:哈尔滨理工大学,

2003。

[3] 何希才.传感器技术与应用[M]. 北京:北京航空航天大学出版社,2005。 [4] 纪宗南.单片机外围器件使用手册——输入通道器件分册[M].北京;北京航空航天大学出版社,2005。

[5] 张培仁. MCS-51单片机原理与应用[M].北京:清华大学出版社,2003. [6] 王幸之.AT89系列单片机原理与接口技术[M].北京:北京航空航天大学出版社,2004。

[7] 何立民.单片机高级教程应用与设计[M]. 北京:北京航空航天大学出版社,2000。

[8] 魏英智.DS18B20在温度控制中的应用.煤矿机械。2005,(3):92—93。 [9] 陶冶,袁永超,罗平.基于DS18B20的单片机温度测量系统.农机化研究.2007,5-2:166-168。

酒后驾车测试仪的设计

摘 要

以单片机和气体传感器为核心,设计了酒精浓度检测仪,实现了不同环境下酒精浓度的检测。本文主要介绍了酒精浓度检测仪整体结构,设计了系统硬件电路,阐述了各模块功能并着重研究了气体传感器的选择。 关键词:单片机;A/D 转换;酒精传感器

Abstract

An alcohol concentration detector is designed taken single chip computer and gas sensor as kernel. The alcohol concentration in different environment can be measured . In this paper , the whole construct of the alcohol concentration detector is introduced ; the system hardware circuit is designed ; the function of each model and how to select the gas sensor are discussed especially .

Keywords : Single Chip Computer ; A/D Transformer ; Alcohol

Sensor

目 录

摘 要 .............................................................................................................................. 2 Abstract .......................................................................................................................... 2 1 引言 ............................................................................................................................ 4

1.1 1.2 2

课题的背景和意义 ...................................................................................... 4 本论文主要工作 .......................................................................................... 4

总体设计方案 ......................................................................................................... 4 2.1 2.2 2.3 2.4

酒精浓度检测仪整体结构设计 .................................................................. 4 硬件设计及功能概述 .................................................................................. 5 硬件电路设计 .............................................................................................. 6 各功能模块的设计 ...................................................................................... 6

3 总结与展望 ............................................................................................................ 10 参考文献 .................................................................................... 错误!未定义书签。0

1、引言

1.1课题的背景和意义

近年来,随着我国经济的高速发展,人民的生活水平迅速提高,越来越多的人有了自己的私家车,而酒后驾车造成的交通事故也频频发生。酒后驾车引起的交通事故是由于司机的过量饮酒造成人体内酒精浓度过高,麻痹神经,造成大脑反应迟缓,肢体不受控制等症状。少量饮酒并不会有上述症状,即人体内酒精浓度比较低时,而人体内酒精超过某一个值时就会引起危险。为此,需要设计一智能仪器能够监测驾驶员体内酒精含量。目前全世界绝大多数国家都采用呼气酒精测试仪对驾驶人员进行现场检测,以确定被测量者体内酒精含量的多少,以确保驾驶员的生命财产安全。此外,空气酒精浓度监测仪还能监测某一特定环境的酒精浓度如酒精生产车间可避免发生起火、爆炸及工业场地酒精中毒等恶性事故,确保环境安全。

1.2本论文主要工作

本课题研究的是一种以气敏传感器和单片机为主,监测空气酒精浓度,并具有声光报警功能及LCD显示功能的空气酒精浓度监测仪。其可监测出空气环境中酒精浓度值,并根据不同的环境设定不同的阈值,对超过的阈值进行声光报警.来提示危害。采用汇编语言来实现其软件功能。该仪器硬件电路设计简单、软件功能完善、灵敏度高、工作性能好,并且具有尺寸小、方便携带的优点。此外,低功耗、低成本的特点可以使其吸引更多的市场目光。

2、总体设计方案

2.1酒精浓度检测仪整体结构设计

(1)数据采集系统以单片机为控制核心,外围电路带有LCD 显示以及键盘响应电路,无需要其他计算机,用户就可以与之进行交互工作,完成数据的采集、存储、计算、分析等过程。

(2)系统具有低功耗、小型化、高性价比等特点。

(3)从便携式的角度出发,系统成功使用了大屏幕液晶显示器以及小键盘。由单片机系统控制键盘和LCD 显示来实现人机交互操作,界面友好。

(4)软件系统采用汇编语言编写,在兼顾实时性处理的同时也能很方便地进行数据处理。

2.2硬件设计及功能概述

本文设计的酒精浓度检测仪主要是以酒精传感器和单片机为平台设计而成的,其硬件系统功能框图如图一所示。

图一硬件系统功能框图

酒精浓度检测仪主要是用来检测酒精浓度的,它主要由酒精传感器、模数转换器、单片机、LCD 显示、键盘以及声音报警构成。

酒精传感器将检测到的酒精浓度转化为电信号,然后将电信号传送给模数转换器,经过模数转换器转换后,把转换后得到的数字信号传给单片机,单片机对所输入的数字信号进行分析处理,最后将分析处理的结果通过显示器显示出来。由于不同的环境对酒精浓度的要求也不一样,所以,可以通过键盘来设定不同环境中酒精浓度的不同阀值。如果所检测到的空气中的酒精浓度超过了所设定的阀

值,那么单片机将会控制蜂鸣器发出声音报警,用来提示危害。

2.3硬件电路设计

依据硬件系统功能框图设计出系统硬件的整体电路图如图二和图三所示。其中图二是单片机与LCD、键盘以及声音报警电路的电路连接图。

图二单片机与LCD、键盘及声音报警电路的电路连接图 2.4各功能模块的设计

2.4.1 AT89S52的特性

AT89S52 是低功耗、高性能、采用CMOS 工艺的8 位单片机,其片内具有8KB 的可在线编程的Flash 存储器。该单片机采用了ATMEL 公司的高密度、非易失性存储器技术,与工业标准型80C51 单片机的指令系统和引脚完全兼容;片内的Flash 存储器可在线重新编程,或者使用通用的非易失性存储器编程;通用的8 位CPU 与在线可编程Flash 集成在一块芯片上,从而使AT89S52 功能更加完善,应用更加灵活;具有较高的性能价格比,使其在嵌入式控制系统中有着广泛的应用前景。

2.4.2 ADC的选择

模数转换电路的功能是将连续变化的模拟量转换为离散的数字量,是架起模拟系统跟数字系统之间连接的桥梁。对于本系统而言,就是用于快速、高精度地对输入的酒精浓度信号进行采样编码,将其转换成单片机所能够处理的数字量。模数转换电路是本系统的关键部分,其性能的好坏直接影响整个系统的质量。

根据A/D 转换器的工作原理可将A/D 转换器分成两大类:一类是直接型A/D 转换器;另一类是间接型A/D 转换器。在直接型A/D 转换器中,输入的模拟电压被直接转换成数字代码,不经任何中间变量。在间接型A/D 转换器中,首先把输入的模拟电压转换成某种中间变量(时间、频率、脉冲宽度等等),然后再把这个中间变量转换为数字代码输出。

2.4.3 气体传感器的选择

气体传感器是气体检测系统的核心,通常安装在探测头内。从本质上讲,气体传感器是一种将某种气体体积分数转化成对应电信号的转换器。探测头通过气体传感器对气体样品进行调理,通常包括滤除杂质和干扰气体、干燥或制冷处 理、样品抽吸,甚至对样品进行化学处理,以便化学传感器进行更快速地测量。

在选择传感器的时候,一定要考虑到稳定性、灵敏度、选择性和抗腐蚀性,本系统选择MQ3 型酒精传感器。

MQ3 酒精传感器是气敏传感器,其具有很高的灵敏度、良好的选择性、长期的使用寿命和可靠的稳定性。MQ3 型气敏传感器由微型Al2O3、陶瓷管和SnO2 敏感层、

测量电极和加热器构成的敏感元件固定在塑料或者不锈钢的腔体内,加热器为气敏元件的工作提供了必要的工作条件。传感器的标准回路有两部分组成:其一为加热回路;其二为信号输出回路,它可以准确反映传感器表面电阻的变化。传感器表面电阻RS 的变化,是通过与其串联的负载电阻RL 上的有效电压信号VRL 出面获得的。二者之间的关系表述为:RS/RL=(VC-VRL)/VRL,其中VC 为回路电压,10V。

负载电阻RL 可调为0.5~200K,加热电压Uh 为5V。上述这些参数使得传感器输

出电压为0~5V。MQ3 型气敏传感器的结构和外形如图三所示,标准回路如图四所示,传感器阻值变化率与酒精浓度、外界温度的关系如图五所示。为了使测量的精度达到最高,误差最小,需要找到合适的温度,一般在测量前需要将传感器预热5 分钟。

图三MQ3 的结构和外形

图四MQ3 标准回路

图五传感器阻值变化率与酒精浓度、外界温度之间的关系 为了更好地使用酒精传感器MQ3,现将MQ3 的标准工作条件和环境条件进行介绍,如表一和表二所示。

表一标准工作条件

表二酒精传感器MQ3 的环境条件

3、总结与展望

本文设计了基于单片机的酒精浓度检测仪,设计过程包括了硬件电路设计和软件程序的编写两部分。硬件电路部分结构简单、使用方便、适合大众化使用。软件部分采用模块化设计思想,各个子程序的功能相对独立,便于调试和修改。通过软、硬件联合调试,实验结果满足设计基本要求,达到设计指标。

应用单片机编写不同的程序嵌入各种仪器中便形成不同功能的智能仪器。作为广泛应用于工程中的智能仪器将有更大的运用空间。空气酒精浓度监测仪将越来越深入的运用到普通人民的生活中。 参考文献

[1]王幸之.AT89 系列单片机原理与接口技术[M].北京:北京航空航天大学出版社,2004.

[2]郑学坚,周斌.微型计算机原理及应用[M].北京:清华大学出版社,2006.

[3]纪宗南.单片机外围器件使用手册—输入通道器件分册[M].北京:北京航空航天大学出版社,2005.

[4]郑义,陈俊.用AT89C52 和TLC1543 实现数据采集系统[J].电子世界,2004,

(12):24-25.

[5]卢丽君.基于TLC1543 的单片机多路采样监测系统的设计[J].仪器仪表与分析监测,2007,(04):5-7.

[6]何希才.传感器技术与应用[M].北京:北京航空航天大学出版社,2005.

范文七:酒精浓度测试 投稿:蔡鮙鮚

课程设计报告

设计题目: 酒精溶度测试仪

智能酒精浓度检测仪的设计

摘 要:随着科技的进步,智能产品在社会生产和人们生活等方面扮演着越来越重要的角色。本文介绍的是一款智能酒精浓度检测仪的设计方案,以STC89C52单片机和酒精传感器为核心,具有声光报警和LCD显示功能。为了满足不同环境下的监测,可根据不同的环境设置不同的阀值,超过阀值即进行声光报警,提示危害。该设计方案的优点是硬件电路设计简单,软件功能采用C语言进行调试,方便灵活。而该仪器具有灵敏度高、工作性能好、低功耗、低成本,较高的性价比等优点。可用于交通检测、酒厂和食品工厂发酵监控等场所。

关键词:智能;酒精浓度;检测仪;STC89C52单片机;阀值;C语言;交通检测

I

Design for Intelligent Alcohol Concentration Detector

Abstract: With the progress of science, intelligent products gradually play an important role in many aspects, such as social produce, people’s daily life. This paper introduces an intelligent alcohol concentration detector, which is based on STC89C52 single-chip microcomputer and alcohol sensor (transducer). It has several functions, including detecting alcohol concentration in different environment, giving an alarm with voice and glowing, and LCD display, except for this, we can also set the valve number of alcohol concentration to meet different environment’s detecting, namely, when the detecting num over the value, the detector can suggest danger. The excellences of this design precept : easy hardware circuit ,software function adopt to

C language to test, which is convenient and flexible .what’s more, the detector with high delicacy, low energy consumption and spending. It can be used in traffic detect, wine factory, food factory and so on.

Key words: intelligent; alcohol concentration; detector; STC89C52 single-chip microcomputer; value ;C language; traffic detect

II

目 录

第1章 绪 论 .................................................................................. 错误!未定义书签。

1.1 选题的依据和课题的意义 ............................................... 错误!未定义书签。

1.2 国内外研究概况 ........................................................................ 错误!未定义书签。

1.3 课题研究方法 ............................................................................. 错误!未定义书签。

1.4 设计构成及研究内容 ............................................................... 错误!未定义书签。

第2章 系统的工作原理与结构 .................................................... 错误!未定义书签。

2.1 工作原理 ...................................................................................... 错误!未定义书签。

2.2 结构框图 ...................................................................................... 错误!未定义书签。

2.3 智能酒精浓度检测仪的整体结构特点 ............................... 错误!未定义书签。

第3章 检测仪的硬件设计 ............................................................. 错误!未定义书签。

3.1 单片机的选择 ............................................................................. 错误!未定义书签。

3.2 酒精浓度检测的设计 ............................................................... 错误!未定义书签。

3.2.1 MQ-3气敏传感器的结构和外形 ................................... 错误!未定义书签。

3.2.2 MQ-3灵敏度特性曲线 ..................................................... 错误!未定义书签。

3.2.3 MQ-3的标准工作条件和环境条件 .............................. 错误!未定义书签。

3.2.4酒精浓度信号的采集 ........................................................ 错误!未定义书签。

3.3 模数转换电路的设计 ............................................................... 错误!未定义书签。 III

3.3.1 ADC0809的特点 ................................................................ 错误!未定义书签。

3.3.2 模数转换电路 ..................................................................... 错误!未定义书签。

3.4 按键设定阈值及阈值存储电路的设计 ............................... 错误!未定义书签。

3.5 液晶接口电路的设计 ............................................................... 错误!未定义书签。

3.6 声光报警电路的设计 ............................................................... 错误!未定义书签。

3.7 单片机与PC机串口通讯 ....................................................... 错误!未定义书签。

3.8 晶振电路的设计 ........................................................................ 错误!未定义书签。

3.9 复位电路的设计 ........................................................................ 错误!未定义书签。

3.10 附加功能电路的设计 ............................................................. 错误!未定义书签。

第4章 检测仪的整体原理图和实物图 ...................................... 错误!未定义书签。

第5章 检测仪的软件实现 ........................................................... 错误!未定义书签。

5.1 A/D转换的软件实现 ................................................................ 错误!未定义书签。

5.2 阈值设定及显示的软件控制 ................................................. 错误!未定义书签。

5.3 整体软件控制流程 .................................................................. 错误!未定义书签。

第6章 检测仪的软件功能调试 .................................................... 错误!未定义书签。

6.1 按键修改酒精阈值程序........................................................... 错误!未定义书签。

6.2 模数转换测试 ............................................................................. 错误!未定义书签。

6.3 液晶显示程序设计 .................................................................... 错误!未定义书签。

6.4 声光报警测试 ............................................................................. 错误!未定义书签。

6.5 整体功能调试程序 .................................................................... 错误!未定义书签。

第7章 结 论 ...................................................................................... 错误!未定义书签。 参考文献.............................................................................................. 错误!未定义书签。 致谢 ...................................................................................................... 错误!未定义书签。 附录 ...................................................................................................... 错误!未定义书签。 附录A:全局变量头文件和延时模块 ................................... 错误!未定义书签。 附录B:AD转化模块 ................................................................ 错误!未定义书签。 附录C:24c08存储模块 ........................................................... 错误!未定义书签。 附录D:LCD显示模块 ............................................................. 错误!未定义书签。

IV

附录E:主函数 ............................................................................ 错误!未定义书签。 V

第1章 绪 论

1.1 选题的依据和课题的意义

根据WTO数据,全球2003年得人均纯酒精消费量为6.2L,其中欧洲地区人均达11.9L,美洲地区人均为8.7L。俄罗斯及其周边的东欧国家酒精消费量最高,其次为欧洲其他国家。在人均国民生产总值(GDP)低于7000美元的低收入国家,酒精消费量与人均GDP有关,GDP越高这个国家或者地区的酒精消费量也就越高。而随着我国近年来高速发展的经济水平和居民生活水平,私家车的占有率直线上升,各式各样的汽车已经成为人们的代步工具。同时伴随而来的是频频发生的交通事故,尤其是因为酒后驾车所引发的交通事故,给自己和人们的生命财产安全带来威胁,同时也给国家和社会带来了严重的经济损失。因此,对于每个驾驶人来说拥有一个酒精浓度检测仪,在每次驾驶之前自行检测酒精浓度再决定是否安全驾驶,这是对自己、对家庭、对社会有责任感的体现。此外,从工厂企业到居民家庭,酒精泄露的检测、监控对居民的人身和财产安全都是十分重要和必不可少的。因此,酒精浓度检测仪具有十分广阔的实际应用价值和潜在的市场要求。

1.2 国内外研究概况

受20世纪信息技术快速发展的影响,传感技术逐渐走向成熟,在生活生产中得到了广泛的应用。由于传感器在各个领域都有着举足轻重的作用,因此,高精度、高可靠性、微型化、低功耗和智能数字化成了其发展方向。为了检查酒驾,警察常常使用一种便携式的酒精呼吸检测仪。通过检测驾驶员呼出的气体判断驾驶者是否饮酒,而目前使用的酒精呼吸检测仪只能初步显示驾驶员是否饮酒,具体酒精浓度含量还得通过血检才能测得。为了简化其流程,英国内部已推出一种超级酒精呼吸检测仪,能够根据体温、呼吸频率等情况,当场判断出驾驶员体内的酒精含量。由此可见,高精度、高可靠性、微型化以及低功 1

耗是酒精浓度检测仪今后发展的主流方向。迄今为止,对气体中酒精含量进行检测的设备有燃料电池型、半导体型、红外线型、气体色谱分析型和比色型五种类型,但由于使用方便的原因,目前常用的有燃料电池型和半导体型两种。

燃料电池是当前世界都在广泛研究的环保型能源,它可以直接把可燃气体转变成电能,而不产生污染。酒精传感器只是燃料电池的一个分支。燃料电池酒精传感器采用贵金属白金作为电极,在燃烧室内充满特种催化剂,是进入燃烧室内的酒精充分燃烧转变为电能,也就是在两个电极上产生电压,电能消耗在外接负载上,此电压与进入燃烧室内气体的酒精浓度成正比。与半导体型相比,燃料电池型呼气酒精测试仪具有稳定性好,精度高,抗干扰性好的优点,但是由于燃料电池酒精传感器的结构要求非常精密,制造难度相当大,目前仅有美国、英国、德国等少数几个国家能够生产,加上材料成本高,因此价格相当昂贵,通常是半导体传感器的几十倍。

1.3 课题研究方法

(1)文献索引法:利用学校图书馆资料和文献及通过网络查询相关资料对本课题有足够深的了解,为本设计的具体模块电路做好理论准备。

(2)调查法:与身边的同学和朋友进行交流,充分考虑本设计实现的功能,尽可能完善该设计的功能。

(3)对比分析法:与目前市场上相关产品进行比较,发现该酒精检测仪存在的不足以及可以优化的部分,加以改进。

1.4 设计构成及研究内容

本文设计的智能酒精浓度检测仪采用的是气敏传感器,属于半导体型,该传感器实质是个可变电阻,在它两端加以固定的电压,随着所处环境酒精浓度的升高阻值将进行线性变化,从而将酒精浓度的含量转变为电压的变化。该酒精检测仪以C51单片机和气敏酒精传感器为核心,具有声光报警和LCD显示功能。为了满足不同环境下的监测,可根据不同的环境设置不同的阈值,超过阈值即进行声光报警,提示危害。采用C语言来实现其软件功能。本设计只要包括以下内

2

容:

(1)主控芯片的选择;在此设计中选择了C51系列单片机,熟悉C51系列芯片怎样控制外围硬件电路。

(2)酒精浓度检测模块的设计;酒精浓度常用酒精传感器来检测,了解该传感器的工作原理,制作数据采集模块完成数据的采集。

(3)A/D转换模块的设计;A/D转换器的选择,将采集的酒精浓度模拟信号进行转换后送至单片机存储、处理。

(4)键盘模块的设计;要通过键盘完成设定不同环境中酒精浓度的阈值。

(5)声光报警模块的设计;超过设定的阈值直观地给予警示。

(6)液晶显示模块的设计;准确显示出检测到的数据。

(7)各个硬件模块电路衔接。

(8)PCB的布板、元件焊接及功能调试。

第2章 系统的工作原理与结构

2.1 工作原理

酒精浓度检测仪是用来检测所处环境中的酒精浓度的,并显示出检测的结果数值。而本设计所做的智能酒精浓度酒精检测仪除具有这个基本功能外,还可通过手动随意设置酒精浓度的阀值,以划定不同环境条件下酒精的安全界限,同时具有声光报警功能。它主要由酒精传感器、模数转换器、单片机、LCD显示、键盘模块以及声光报警部分组成。

数据的采集由酒精传感器完成,酒精传感器将检测的酒精浓度转换为电信号,然后将电信号传递给模数转换器,经过模数转换器转换后,把转换后得到的数字信号传给单片机,单片机对所输入的数字信号进行分析处理,最后将分析处理的结果通过显示器显示出来。同时与根据键盘设定的酒精浓度阀值进行比对,如果检测到所处环境中的酒精浓度超过设定的界线,那么单片机将会控制蜂鸣器发出声音报警和发光LED不断闪烁,以提示危害。

3

2.2 结构框图

硬件系统结构框图如下图2-1所示

图2-1 系统结构框图

2.3 智能酒精浓度检测仪的整体结构特点

本文设计的智能酒精浓度检测仪具有如下特点:

(1)数据采集系统以单片机为控制核心,外围电路带有LCD显示和键盘响应电路,无需其他计算机,用户就可与之进行交互工作,完成数据的采集、存储、计算、分析等过程。

(2)系统具有低功耗、小型化、高性价比、灵敏度高等特点。

(3)从便携式的角度出发,系统通过键盘设置酒精浓度的阀值,结合单片机的控制,实现了人机交互操作、界面友好。

(4)软件系统采用C语言进行编写,在兼顾实时性处理的同时,也方便了对数据的处理。

第3章 检测仪的硬件设计

3.1 单片机的选择

MCS-51单片机是美国Intel公司于1980年推出的一款相当成功的产品,该

4

系列或其兼容的单片机仍是应用的主流产品之一,该系列单片机主要包括8031,8051,8751和89C51等通用产品。本次设计选用的是STC89C52单片机,STC89C52是低功耗、高性能的CMOS8位微控制器,具有8K在系统可编程Flash存储器。使用宏晶高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。片上Flash允许程序存储器在系统上可编程,亦适于常规编器。在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。STC89C52具有以下标准功能:8字节的Flash,256字节的RAM,32位的I/O口线,看门狗定时器,2个数据指针,3个16位定时器/计数器,1个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。除此,STC89C52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,内容被保存,振荡器被冻结。

STC89C52单片机作为控制核心,为了提高IO口的利用率,通过扩展一片8255芯片来实现液晶显示的功能。单片机的IO口控制图如下图3-1-1所示

图3-1-1 STC89C52的接口控制图

P0口用于接收模数转换的输出,P2.0用于模数转换的时钟控制,8255的扩展通过P2.1,P2.2,P2.5口来控制, P2.3用于作为模数转换的使能控制,P2.6,P2.7口用 5

于模拟I2C连接外部存储芯片AT24C08,P3.3口为外部中断控制口,由它来控制酒精阈值的设定,液晶显示模块通过单片机控制8255来实现相应的功能.

8255芯片的引脚控制图如图3-1-2所示:

图3-1-2 8255的引脚控制图

8255芯片是一种典型的可编程通用并行接口芯片,用来扩展单片机的端口,它具有3个8位的并行口,有三位工作方式,可作为单片与各种外部设备连接的接口电路。

CS:片选信号线,当该引脚为低电平时,8255被选中,允许8255与CPU通讯。

RESET:复位输入线,当该引脚为高电平时,内部寄存器被清除,所有I/O口均被置成输入方式。

A0、A1:地址输入线。

当A0A1=00时,PA口被选中;

当A0A1=01时,PB口被选中;

当A0A1=10时,PC口被选中;

当A0A1=11时,控制寄存器被选中。

3.2 酒精浓度检测的设计

酒精浓度的准确检测是决定该设计成功与否的关键因素,而酒精的检测依靠酒精传感器来实现信号的采集。在本设计中选用灵敏度高、稳定性好的MQ-3气

6

敏传感器,该传感器对乙醇蒸汽有很高的灵敏度和良好的选择性,快速的响应和恢复特性,长期的寿命和可靠的稳定性,以及简单的驱动电路。它的工作原理是在确定的环境条件下,环境中的酒精浓度变化将会引起电阻值的变化,且这两种变化存在着线性关系。

3.2.1 MQ-3气敏传感器的结构和外形

MQ-3气敏元件的结构和外形如图3-2-1所示

图3-2-1 MQ3气敏元件结构外形图

在上图中,由微型AL2O3陶瓷管、SnO2敏感层,测量电极和加热器构成的敏感元件固定在塑料或不锈钢制成的腔管内,加热器为敏感元件提供必要的工作条件。封装好的气敏元件有6只针状管脚,其中4只用于信号提取,2只用于提供加热电流。

7

3.2.2 MQ-3灵敏度特性曲线

图 3-2-2 MQ-3气敏元件的灵敏度特性曲线

在图3-2-2中给出了MQ-3气敏元件的灵敏度曲线,其中:温度20℃;相对湿度:65%;氧气浓度:21%; RL:200kΩ. Rs:气敏元件在不同气体、不同浓度时的电阻值。R0:气敏元件在洁净空气中的电阻值。

3.2.3 MQ-3的标准工作条件和环境条件

图3-2-3 MQ-3气敏传感器阻值变化率与酒精浓度、外界温度的关系

为了更好地使用酒精传感器MQ-3,现将MQ-3的标准工作条件和环境条件进行介绍,分别如表3-2-1和表3-2-2所示:

8

表3-2-1 工作条件

3.2.4 酒精浓度信号的采集

详细的酒精浓度采集电路见下图3-2-4所示:

图3-2-4 酒精浓度采集电路

在上图中传感器将环境中的酒精浓度转化电压信号,在第4引脚直接输出电压信号模拟量,该模拟量将送到模数转换,通过单片机控制最终得出环境中酒精的含量,同时可以通过对电位器WR1的调节来改变输出的灵敏度。

9

3.3 模数转换电路的设计

由于本设计中所用的是单一电源+5V,故由酒精浓度转化的电压信号也将在0~5V范围,并且考虑到转换的速度应该要快,在此我们选用典型的8位逐次逼近型A/D转换器ADC0809.

3.3.1 ADC0809的特点

该转换器具有如下特点:

(1) 分辨率为8位;

(2) 转换时间为100us;

(3) 很容易与微处理器连接;

(4) 无须零位或者满量程调整;

(5) 带有锁存控制逻辑的8通道多路转换开关,便于选择8路中的任一路

进行转换;

(6) 带锁存器的三态数据输出。

3.3.2 模数转换电路

具体模数转换电路见图3-2-1所示

图3-2-1 模数转换

在该检测仪的设计中只用到两路通道,即通道IN0和IN1.分别为酒精浓度的电压模拟信号和电压比较器LM393的基准电压信号,D0~D7为由酒精浓度引起

10

而产生的电压数字量输出,结果将送至单片机进行分析和处理。

3.4 按键设定阈值及阈值存储电路的设计

为了适应对不同环境中酒精浓度的检测和监控,必须调整该仪器的酒精浓度阀值以符合既定的工作要求。同时为了节省硬件资源的消耗,于是在此通过外部中断的按键操作来改变酒精浓度的不同阀值,外部中断电路见下图3-4-1所示

图3-4-1 外部中断按键电路

阈值存储电路的添加,既可以明确地看出具体设定的酒精浓度值,又能以备调出来与检出的酒精浓度作比较,增强了直观性。于此选用了AT24C08作为存储器件,用单片机的P2.6,P2.7口模拟I2C与之通信,从而完成数据的读写操作。相应的电路如图3-4-2所示

图3-4-2 AT24C08存储电路

3.5 液晶接口电路的设计

酒精浓度的显示采用1602液晶,LCD1602可显示两行英文字符,且内带ASCII字符库。LCD1602模块内部可完成显示扫描,单片机只要向LCD1602发送命令和显示内容的ASCII码。

具体的接口电路见图3-5所示

11

图3-5 液晶接口电路图

控制信号RS、R/W和E分别由单片机控制8255的PA4,PA5,PA6口实现,要显示的信息通过调用数据处理程序传到8255的PB口。

3.6 声光报警电路的设计

当酒精浓度超过所设定标准时,通过控制单片机的P3.3口的电平来实现警报功能。其电路见图3-6所示

图3-6 声光报警电路

如上图所示,酒精浓度超过设定的阀值时,给单片机的P3.3口低电平,则三极管导通,同时蜂鸣器工作,发光二极管也亮。否则,单片机的P3.3口维持在高电平,三极管截止,蜂鸣器不工作,二极管也不发光。

12

3.7 单片机与PC机串口通讯

“串行通信”是系统之间用一根数据信号线,数据在这根数据线上一位一位地进行传输,每一位数据都占据一个固定的时间长度。目前个人的PC机上都有这种接口(COM1,COM2),即RS-232口。

电脑的RS-232口共9根线,在简单的应用中,需要三根线即可完成通信,分别是第2脚RXD,第3脚TXD,第5脚GND.串行通信与单片机之间的接口:由于串行通信的电平逻辑定义是+15V(高电平1),-15V(低电平0),而单片机中分别用5V,0V来表示高电平1,低电平0.它们之间必须通过电平转换才能完成通信。最常用的是MAX32电路,该连接图见图3-7所示

图3-7 串口通信电路

单片机串口通信原理:51系列单片机内部集成了两个同名不同地址的串口缓冲区SBUF,一个是发送缓冲区,一个是接收缓冲区。发送数据时MCU将数据写到发送SBUF,接收到的数据自动放到接收SBUF,无需程序指定。串口发送和接收事件发生时,由硬件标志来通知处理器,RI为接收事件发生标志,TI为发送完成标志,“1”为事件发生。在串口中断打开的条件下,两者任意一种情况发生都会引起中断,单片机程序可以根据RI=1和TI=1进行相应的处理。

本检测仪需要用串口线将程序下载到单片机中,以对之进行初始化过程。

3.8 晶振电路的设计

本系统采用的是12MHZ的晶振,其电路图如图3-8所示:

13

图3-8 晶振电路图

XTAL1:振荡器反相放大器和内部时钟发生电路的输入端。

XTAL2:振荡器反相放大器的输出端。

3.9 复位电路的设计

单片机的复位电路如图3-9示:

图3-9 复位电路图

RST:复位输入。晶振工作时,RST脚持续2个机器周期高电平将使单片机复位。看门狗计时完成后,RST脚输出96个晶振周期的高电平。特殊寄存器AUXR上的DISRT0位可以使此功能无效。DISRT0默认状态下,复位高电平有效。

3.10 附加功能电路的设计

由于酒精浓度的检测在很大程度上受到温度的影响,为了更直观地测出不同环境中酒精的含量,这里增加一个温度传感器,以对应不同温度下酒精传感器所对应的线性关系。

DS18B02数字温度计DALLAS公司生产的单总线器件,具有线路简单、体积小的特点。实际应用中不需要外部任何器件即可实现测温,测量温度范围在-5~+125。C之间,数字温度计的分辨率可以从9位到12位选择,且内部有上、下限告警设置,使用非常方便。数字温度计接口的电路图如3-10所示

14

图3-10 DS18B02电路

P17为数字信号输入/输出端,将程序下载至单片机,开机运行,用手触摸DS18B02温度传感器,液晶上将会显示当时所处环境的温度值。

第4章 检测仪的整体原理图和实物图

智能酒精检测仪的整体原理图见4-1所示

图4-1 整体原理图

15

酒精检测模块实物图如图4-2所示

图4-2 酒精检测模块实物图

智能酒精检测仪的实物图见4-3所示

图4-3 酒精检测仪的实物图

第5章 检测仪的软件实现

5.1 A/D转换的软件实现

A/D转换的软件控制流程如图5-1所示

16

图5-1 AD转换流程控制

A/D转换的启动必须依靠下降沿触发,在START置低后延时一段时间(约10ms)转换才正式开始.转换过程中的所需输入时钟允许范围为10KHZ~1280KHZ,在本次设计中选用500KHZ,通过定时器产生,转换完成后得到的数字量即为由酒精传感器检测到环境中的酒精含量而产生的电压值,调用数据处理程序从而可得到酒精浓度的真实值.

5.2 阈值设定及显示的软件控制

酒精浓度的阈值设定及显示的具体软件控制流程如图5-2所示

17

图5-2 酒精浓度的阈值设定及LCD显示的软件控制流程

当系统进行完初始化后,该检测仪在将检测到的酒精浓度进行A/D转换的同时,还在时刻检测有无外部中断的响应,一旦有按键按下,将会根据按键按下的次数选择酒精浓度表中的酒精浓度值,而且这个值将会立刻被保存于外部存储单元(AT24C08),以便与监测到的环境中的酒精浓度进行比较,完成接下来的声光报警功能.

5.3 整体软件控制流程

本酒精检测仪的软件流程图见图5-3所示

18

图5-3 软件方案总体流程图

该仪器软件程序主要使用C语言编写,采用了模块化结构程序设计方法,包括主程序、中断程序等。系统在开机或者复位后,首先进行初始化、自检,然后进入中断等待,A/D转换,液晶显示三个状态,最终根据所得结果判断是否执行声光报警。中断子程序包括预设阀值、数据存储、信息显示等操作,在进行阀值判断时用到了LM393电压比较器,程序的绝大部分时间处在数据处理上,而STC89C52单片机在一次处理数据的时间约为6us,故总体的平均功耗低。

19

第6章 检测仪的软件功能调试

本检测仪的软件功能通过方便灵活、移植性好的C语言编程来实现,采用分模块化程序设计思想,对不同模块分别进行调试后,最后再进行整合调试。总体说来包括6个模块,即:按键设置阀值模块、模数转换模块、液晶显示模块、声光报警模块、存储模块、延时模块。

6.1 按键修改酒精阈值程序

下面这段程序是用来设置酒精浓度的阈值的,检测仪只要处在工作状态中,不停地扫描按键,一旦检测有按键按下,通过检测按下的次数调用酒精浓度值数组就可知道酒精浓度设在哪个阈值。那么只要阈值在没修改前,检测仪实时检测的酒精浓度值就会跟该值进行比对,超过界限蜂鸣器将会就会发出响声,同时蜂鸣器旁边的灯会亮。经测试,虽然整个反应过程慢了点,但是效果还是符合预定的思路。 程序6-1:

Static unsigned char set_Value=6; void INTER0(void) interrupt 0 { }

set_Value++;

I2c_Write_Char(DEV_24c08ID,0x00,set_Value); if(set_Value>20)

set_Value=0;

6.2 模数转换测试

选择第0通道作为酒精浓度模拟量输入端,首先得对ADC0809的初始化,初始化完后,进行酒精浓度的监测、分析、运算和处理,最终结果通过单片机控制8255输至液晶上显示出来,同时这个值还将与所设定的阈值进行比对以判断

20

是否超标。下面是关于A/D转化的模块化程序(程序6-2). 程序6-2:

uchar AD_Convert(void) {

Start=LOW; delay(2); Start=HIGH; delay(2); Start=LOW; while(!EOC); OE=HIGH; temp=P0; return temp; }

6.3 液晶显示程序设计

该仪器用到的是LCD1602液晶,即可显示两行字符,每行16个字符。以下

是对其的初始化程序,为了达到实时正确显示所需要的信息,我们将对检测仪的液晶显示模块进行单独的测试。要想1602液晶正常显示,得对其进行写命令操作和写数据操作,以下的程序可以在液晶的第一行显示“My college!”. 程序6-3:

#include #include #include "ABSACC.H"

#define a8255_PA XBYTE[0xD1FF] /*PA口地址*/ #define a8255_PB XBYTE[0xD2FF] /*PB口地址*/ #define a8255_PC XBYTE[0xD5FF] /*PC口地址*/ #define a8255_CON XBYTE[0xD7FF] /*控制字地址*/ #define uchar unsigned char

21

#define uint unsigned int

uchar code table[]={"My collge!"}; void delay(int ms)

{ int i; while(ms--) {

for(i = 0; i

/*遇忙等待函数*/ void WaitForEnable(void) {

_nop_(); _nop_();

while(a8255_PA&0x40); a8255_PA=0xbf; }

/*写命令*/

void write_com(uchar com) { a8255_CON=0x80; WaitForEnable( ); a8255_PA=0x8f;

a8255_PB=com;

//1忙 //10111111

//10001111

22

delay(2); a8255_PA=0xcf; delay(2);

//10001111

//11001111

a8255_PA=0x8f; }

/***********写数据函数*************/ void write_data(uchar dat) {

a8255_CON=0x80; WaitForEnable();

//10011111

a8255_PA=0x9f;

a8255_PB=dat; delay(2);

a8255_PA=0xdf;

delay(2);

//11011111

a8255_PA=0x9f; }

/***************LCD1602初始化*****************/ void lcdinit (void) { }

23

a8255_PA=0xff; a8255_CON=0x80; a8255_PA=0x9f; write_com(0x38);

write_com(0x0f); //00001111 开显示,开光标,不闪烁 write_com(0x06); //00000111 指针加1 write_com(0x01); //清屏 write_com(0x80); //write_com(0x80);

void main( ) { int num; lcdinit();

for(num=0;num

{ }

write_data(table[num]); delay(20);

while(1);

6.4 声光报警测试

为了达到设定的要求,酒精浓度超过阀值时,由单片机控制实现声光报警功

能,给单片机的P3.3口一个低电平,蜂鸣器就会响,灯会亮。以下是相应的模块程序。 程序6-4: Sbit Beep=P3^3; if(j>=set_Value)

{ }

Beep=0; delay_ms(200); Beep=1; delay_ms(20);

6.5 整体功能调试程序

本设计采用模块化程序设计结构,方便调试,易于查错,可移植性强。详细的模块程序请查看相应的附录,该检测仪的整体功能实现即由每个模块的分工协作来实现。将程序在Keil编译器中编译成功后,生成HEX文件,然后将程序烧

24

录到单片机中,上电即可进行工作了。上电后该酒精检测仪将按照初始化的程序进行工作,酒精浓度阈值为当初设定的,超过阈值则会产生报警。 一旦有设定酒精浓度阈值的按键按下,并且检测按键按下的次数,则酒精浓度的阈值即被重新设定,在没被下一次设定前,实时检测的酒精浓度将与它进行比较,超过该界限值即报警,同时酒精浓度值一直将会显示出来。

第7章 结 论

经过近半年时间的不断查找资料、设计原理图、布板、焊接以及软、硬件调试,该检测仪基本实现了既定的功能。可以进行酒精浓度阈值设定、声光报警、以及酒精浓度的显示,不过整个检测仪的反应速率相对较慢,经分析可能与单片机的处理的位数、环境的温度有关,因为环境的温度会对酒精传感器的灵敏度造成很大的影响,但酒精传感器良好的稳定性和选择性使得检测仪抗干扰性很强。结构简单、体积小、携带方便等优点相信会使它具有很好的市场前景。总之,虽然在这过程当中遇到过很多阻碍,比如原理图中有些元件设置不对导致没有导入PCB工程中,还有部分因为封装问题导致生成的PCB出现错误,不过有了这些错误同时让自己对知识有了更深一层的了解,培养了自己独立思考问题、解决问题的能力。

25

参考文献

[1]纪宗南.单片机外围器件实用手册-输入通道器件分册(M).北京:北京航空航天大学出版社,2005:225-230.

[2]赵家贵.新编传感器电路设计手册(M).北京:中国计量学出版社,2002:23-26.

[3]张鑫.单片机原理及应用(M).北京:电子工业出版社,2005:161-258.

[4]清源计算机工作室.Protel99SE原理图与PCB及仿真(M).北京:机械工业出版社,2004:10-345.

[5]Neamen,D.A[美]电子电路分析与设计(M).北京:电子工业出版社,2003:86-104.

[6]李伟諟.EPSON单片系列液晶显示器(M).北京:北京航空航天大学出版社,2001:142-150.

[7]黄智伟.全国大学生电子设计竞赛电路设计(M).北京:北京航空航天大学出版社,2006:127-140.

[8]韩广兴.电子元器件与实用电路基础(修订版(M)). 北京:电子工业出版社,2005:340-356.

[9]沙占友.中外集成传感器实用手册(M). 北京:电子工业出版社,2005:200-210.

[10]Huddleston,C.[美].Intelligent Sensor Design:Using the Microchip dsPIC(智能传感器设计(M)).北京:人民邮电出版社,2000:827-1124.

[11]乔林.Visual C++6.0程序设计(M):精通篇.北京:中国铁道出版社,1999:20-64.

[12]先锋工作室.单片机程序设计实例(M).北京:清华大学出版社,2002:46-50.

[13]张大明.单片机控制实训指导及综合应用实例(M).北京:机械工业出版社,2007:668-710.

[14]康华光.电子技术基础模拟部分(第五版(M)).北京:高等教育出版社,2006:123-340.

[15]康华光.电子技术基础数字部分(第五版(M)).北京:高等教育出版社,2006:10-256.

26

附录

附录A:全局变量头文件和延时模块

/*----------------------------------------------globle.h----------------------------------------------------------*/ #ifndef _GLOBLE_H

#define _GLOBLE_H

#include

#include "ABSACC.H"

#define a8255_PA XBYTE[0xD1FF] /*PA口地址*/

#define a8255_PB XBYTE[0xD2FF] /*PB口地址*/

#define a8255_PC XBYTE[0xD5FF] /*PC口地址*/

#define a8255_CON XBYTE[0xD7FF] /*控制字地址*/

typedef unsigned char uchar;

typedef unsigned int uint;

typedef bit BOOL;

#define HIGH 1

#define LOW 0

#define I2C_TIME 3

27

#define DEV_24c08ID 0xa0 //24c08的i2c地址

sbit Start = P2 ^ 7;

sbit EOC = P3 ^ 4;

sbit OE = P2 ^ 3;

sbit CLK = P2 ^ 0;

sbit Beep=P3^3;

sbit SCL=P2^6;

sbit SDA=P2^7;

#endif

/*----------------------------------------------------延时模块---------------------------------------------*/ #include

#include"globle.h"

void delay_ms(uchar ms)

{

uchar i;

while(ms--)

{

for(i = 0; i

{

_nop_();

_nop_();

_nop_();

_nop_();

}

}

}

void delay(uchar us) //2us

{

28

uchar i;

while(us--)

{

for(i = 0; i

{

_nop_();

}

}

}

附录B:AD转化模块

/*--------------------------------------------------AD.h---------------------------------------------*/ #ifndef _AD_H

#define _AD_H

uchar AD_Convert(void);

#endif

/*---------------------------------------------------AD.c--------------------------------------------*/ #include"globle.h"

extern void delay(uchar ms);

uchar temp;

uchar AD_Convert(void)

{

Start=LOW; delay(2); Start=HIGH; delay(2); Start=LOW; 29

OE=HIGH; temp=P0;

return temp;

}

附录C:24c08存储模块

/*-------------------------------------------------------i2c.h-----------------------------------------------------*/ #ifndef _i2c_h

#define _i2c_h

void i2c_init();

void I2c_Start(void);

void I2c_Stop(void);

void respons();

void noACK();

void I2c_Send(uchar u8_data);

uchar I2c_Read(void);

void I2c_Write_Char(uchar u8_deviceID,uchar reg,uchar u8_data);

uchar I2c_Read_Char(uchar u8_deviceID, uchar reg);

#endif

/*---------------------------------------------------------I2C.c--------------------------------------------------*/ #include"globle.h"

#include"i2c.h"

extern void delay(uchar us);

void i2c_init()

30

SCL=1;

delay(I2C_TIME);

SDA=1;

delay(I2C_TIME);

}

void I2c_Start(void)

{

SDA=1;

delay(I2C_TIME);

SCL=1;

delay(I2C_TIME);

SDA=0;

delay(I2C_TIME);

SCL=0;

delay(I2C_TIME);

}

void I2c_Stop(void)

{

SCL=0;

delay(I2C_TIME);

SDA=0;

delay(I2C_TIME);

SCL=1;

delay(I2C_TIME);

SDA=1;

delay(I2C_TIME);

}

31

void respons()

{

uchar i=0;

SCL=1;

delay(I2C_TIME);

while((SDA==1)&&(i

i++;

SCL=0;

delay(I2C_TIME);

}

void noACK()

{

SDA=1;

delay(I2C_TIME);

SCL=1;

delay(I2C_TIME);

SCL=0;

delay(I2C_TIME);

}

void I2c_Send(uchar u8_data)

{

uchar i;

for (i=0;i

{

SDA = (bit)(u8_data & 0x80);

u8_data=u8_data

}

} delay(I2C_TIME); SCL=0; delay(I2C_TIME);

uchar I2c_Read(void)

{

uchar i,u8_data=0; SCL=0; delay(I2C_TIME);

SDA=1;

}

void I2c_Write_Char(uchar u8_deviceID,uchar reg,uchar u8_data)

{

for(i=0;i

}

I2c_Send(reg); respons(); I2c_Send(u8_data); respons(); I2c_Stop();

uchar I2c_Read_Char(uchar u8_deviceID, uchar reg)

{

}

I2c_Start(); I2c_Send(u8_deviceID); respons(); I2c_Send(reg); respons(); I2c_Start(); I2c_Send(u8_deviceID+1); respons(); u8_out=I2c_Read(); noACK(); I2c_Stop(); return u8_out; uchar u8_out;

附录D:LCD显示模块

/*------------------------------------------------------Lcd.h-----------------------------------------------------*/

34

#ifndef _LCD_H

#define _LCD_H

void WaitForEnable(void);

void write_com(uchar com);

void write_data(uchar dat);

void lcdinit (void);

void Display(uchar i);

void Display1(uchar i);

void Display2(uchar i);

void Display3(uchar i);

#endif

/*-----------------------------------------------------Lcd.c------------------------------------------------------*/ #include"globle.h"

#include"Lcd.h"

#include

extern void delay(uchar ms);

uchar code Alcohol_DataGroup[][3]={{'0','.','1'}, /*0.1*/

{'0','.','2'}, /*0.2*/ {'0','.','3'}, /*0.3*/ {'0','.','4'}, /*0.4*/ {'0','.','5'}, /*0.5*/ {'0','.','6'}, /*0.6*/ {'0','.','7'}, /*0.7*/ {'0','.','8'}, /*0.8*/ {'0','.','9'}, /*0.9*/ {'1','.','0'}, /*1.0*/ {'1','.','7'}, /*1.7*/ {'2','.','0'}, /*2.0*/ {'2','.','5'}, /*2.5*/ 35

{'4','.','0'}, /*4.0*/ {'5','.','0'}, /*5.0*/ {'6','.','0'}, /*6.0*/ {'7','.','0'}, /*7.0*/ {'8','.','0'}, /*8.0*/ {'9','.','0'}, /*9.0*/ {'1','0',0xa0} /*10 */ }; // alcohol concerntration data

uchar unit_group[]={0x6d,0x67,0x2f,0x4c}; /*(mg/L)*/

//uchar unit_group[]={'m','g','/','L'};

/*遇忙等待函数*/

void WaitForEnable(void)

{

_nop_();

_nop_();

while(a8255_PA&0x40); //1忙

a8255_PA=0xbf;

}

/*写命令*/

void write_com(uchar com)

{ a8255_CON=0x80;

WaitForEnable( ); a8255_PA=0x8f; a8255_PB=com;

36 //10111111 //10001111

a8255_PA=0xcf; delay(2);

//10001111 //11001111 a8255_PA=0x8f;

}

/***********写数据函数*************/

void write_data(uchar dat)

{

a8255_CON=0x80; WaitForEnable();

//10011111 a8255_PA=0x9f;

a8255_PB=dat; delay(2);

a8255_PA=0xdf;

delay(2); //11011111

a8255_PA=0x9f;

}

/***************LCD1602初始化*****************/

void lcdinit (void)

{

a8255_PA=0xff; a8255_CON=0x80; a8255_PA=0x9f; write_com(0x38); write_com(0x0f); //00001111 开显示,开光标,不闪烁 write_com(0x06); //00000111 指针加1 //write_com(0x01); //清屏 //write_com(0x80); //write_com(0x80); 37

void Display(uchar i) //displaying the alcohol concentration detected

{

uchar j;

uchar *p=&Alcohol_DataGroup[i][0];

uchar *t=&unit_group[0];

lcdinit();

write_com(0x80);

for(j=0;j

{

write_data(*p++);

delay(20);

}

write_com(0x80+3);

for(j=0;j

{

write_data(*t++);

delay(20);

}

//delay(2);

}

void Display1(uchar i) //displaying the

{

uchar j;

uchar *p=&Alcohol_DataGroup[i][0];

uchar *t=&unit_group[0];

lcdinit();

38 alcohol concentration set

}

write_com(0xc0); //第二行显示设定的阈值 for(j=0;j

void Display2(uchar i) //used for point out which num in Alcohol_DataGroup will be chosen

{

}

void Display3(uchar i) //used for displaying the setting num changed by pressing keys 39 uchar m,n; m=i/10+0x30; n=i%10+0x30; lcdinit(); write_com(0x8a); write_data(m); delay(2); write_data(n); delay(2);

} uchar m,n; m=i/10+0x30; n=i%10+0x30; lcdinit(); write_com(0xca); write_data(m); delay(2); write_data(n); delay(2);

附录E:主函数

/*------------------------------------------------------Main.c---------------------------------------------------*/ #include"globle.h"

#include"Lcd.h"

#include"AD.h"

#include"i2c.h"

extern void delay_ms(uchar ms);

static uchar set_Value=6;

void main()

{

/*uchar num; */ for(num=0;num

40

//uchar MSB,LSB; CLK=0; //脉冲信号初始值为0 //定时器中断0 TMOD|=0x01; TH0=(65536-25)/256; //定时时间高八位初值 TL0=(65536-25)%256; //定时时间低八位初值 EX0=1; IT0=1; ET0=1; TR0=1; EA=1;//开CPU中断 //开T/C0中断 Beep=1; set_Value=I2c_Read_Char(DEV_24c08ID,0x00); //set_Value=Scan_Keyboard(); Display1(set_Value); Display3(set_Value); i=AD_Convert(); while(1)

{

if(i>=126) { j=20; Display(j); Display2(j); } else if(i>=124) { j=19; Display(j); 41

}

else if(i>=118) {

j=18; Display(j); Display2(j); }

else if(i>=116) {

j=17; Display(j); Display2(j); }

else if(i>=112) {

j=16; Display(j); Display2(j); }

else if(i>=108) {

j=15; Display(j); Display2(j); }

else if(i>=104) {

j=14; Display(j); 42

}

else if(i>=98) {

j=13; Display(j); Display2(j); }

else if(i>=96) {

j=12; Display(j); Display2(j); }

else if(i>=82) {

j=11; Display(j); Display2(j); }

else if(i>=76) {

j=10; Display(j); Display2(j); }

else if(i>=68) { j=9;

Display(j); 43

}

else if(i>=64) {

j=8;

Display(j); Display2(j); }

else if(i>=62) {

j=7;

Display(j); Display2(j); }

else if(i>=58) {

j=6;

Display(j); Display2(j); }

else if(i>=54) {

j=5;

Display(j); Display2(j); }

else if(i>=52) {

j=4;

Display(j); 44

范文八:酒精浓度测定仪 投稿:程焑焒

专业方向课程设计

课题: 酒精浓度检测仪

班 级 测控1082 学生姓名 沈中华 学号 1081203216 指导教师 李洪海 张青春

淮阴工学院电子与电气工程学院

1.系统方案设计

1.1概述

随着经济高速发展,越来越多的人有了自己的私家车,而酒后驾车造成的交通事故也频繁发生。为此,需要设计一智能仪器能够检测驾驶员体内酒精含量。本论文研究的是一种以气敏传感器和单片机为主,监测空气酒精浓度,并具有声光报警功能的空气酒精浓度监测仪。其可监测出空气环境中酒精浓度值,并可根据不同的环境设定不同的阈值,对超过的阈值进行声光报警来提示危害。 本课题分为两部分:硬件设计部分和软件设计部分。硬件部分为利用气敏传感器测量空气中酒精浓度,并转换为电压信号经A/D转换后传给单片机系统,由单片机及其外围电路进行信号的处理,显示浓度值以及超阈值声光报警。软件部分用汇编语言进行编程,程序采用模块化设计思想。各个子程序的功能相对独立,便于调试和修改。而硬件电路又大体可分为单片机小系统电路、A/D转换电路、声光报警电路、LED显示电路,各部分电路的设计及原理将会在硬件电路设计部分详细介绍;程序的设计使用汇编语言编程。 1.2系统方案框图

图1-1系统方案总体框图

总体方案设计时,考虑酒精浓度是由传感器把非电量转换为电量,传感器输出的是0-5伏的电压值并且电压值稳定,外部干扰小等。因此,可以直接把传感器输出电压值经过ADC0809采集数据送入单片机进行处理。酒精浓度监测仪的硬件电路设计主要包括:传感器测量电路、89C51单片机系统、A/D转换电路、声光报警电路、LED显示电路。酒精浓度监测仪总体设计电路框图如图1-1。

2.工作原理

对气体传感器MQ-3按检测电路,接上一定阻值的负载电阻,检测它的技术参数,确定MQ-3所接负载电阻的大小,完成信号采样电路的设计;采样到的模拟电压电信号通过A/D转换,得到可供单片机处理的数字信号,再由单片机作相应的数据处理;发光二极管报警显示和3个单位8段共阴数码管浓度值显示。 2.1传感器的选择

本系统直接测量的是呼气中的酒精浓度,再转换为血液中的酒精含量浓度,故采用气敏传感器。考虑到周围空气中的气体成分可能影响传感器测量的准确性,所以传感器只能对酒精气体敏感,对其他气体不敏感,故选用MQ3型气敏传感器。其有很高的灵敏度、良好的选择性、长期的使用寿命和可靠的稳定性。MQ3型气敏传感器由微型Al2O3,陶瓷管和SnO2敏感层、测量电极和加热器构成的敏感元件固定在塑料或不锈钢的腔体内,加热器为气敏元件的工作提供了必要的工作条件。传感器的标准回路有两部分组成。其一为加热回路,其二为信号输出回路,它可以准确反映传感器表面电阻值的变化。传感器的表面电阻RS的变化,是通过与其串联的负载电阻RL上的有效电压信号VRL输出面获得的。负载电阻RL可调为0.5-200K。加热电压Uh为5v。上述这些参数使得传感器输出电压为0-5V。MQ3型气敏传感器的结构和外形、标准回路、传感器阻值变化率与酒精浓度、外界温度的关系图如图2-3所示。为了使测量的精度达到最高,误差最小,需要找到合适的温度,一般在测量前需将传感器预热5分钟。

图2-1 MQ3 结构和外形

图2-2 MQ3 结构图

图2-2 MQ3 结构图

图2-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.2 A/D转换电路

在单片机应用系统中,被测量对象的有关变化量,如温度、压力、流量、速度等非电物理量,须经传感器转换成连续变化的模拟电信号(电压或电流),这些模拟电信号必须转换成数字量后才能在单片机中用软件进行处理。实现模拟量转换成数字量的器件称为A/D转换器(ADC)。

A/D转换器大致分有三类:一是双积分A/D转换器,优点是精度高,抗干扰性好,价格便宜,但速度慢;二是逐次逼近型A/D转换器,精度、速度、价格适中;三是∑-△A/D转换器。

该设计中选用的是ADC0809属第二类,是8位A/D转换器。0809具有8

模拟信号输入端口,地址线(23-25脚)可决定那一路模拟信号进行A/D转换。22脚为地址锁存控制,当输入为高电平时,对地址信号进行锁存。6脚为测试控制,当输入一个2μs的高电平脉冲时,就开始A/D转换。7引脚为A/D转换结束标志,当A/D转换结束时,7脚输出高电平。9脚为A/D转换数据输出允许端,当OE脚为高电平时,A/D转换数据输出。10脚为0809的时钟输入端。 2.2.1 ADC0809的引脚及功能

逐次比较型A/D转换器在精度、速度、和价格上都适中,是最常用的A/D转换器件。芯片采用的是ADC0809,以下介绍ADC0809的引脚及功能。芯片如图2-5所示。

图2-5 ADC0809的引脚

ADC0809是一种逐次比较式8路模拟输入、8位数字量输出的A/D转换器。由图可见,ADC0809共有28个引脚,采用双列直插式封装。主要引脚功能如下:

⑴ IN0-IN7是8路模拟信号输入端。 ⑵ D0-D7是8位数字量输入端。

⑶ A、B、C与ALE控制8路模拟通道的切换,A、B、C分别与3根地址线或数据线相连,3位编码对应8个通道地址端口。

需要注意的是:ADC0809虽然有8路模拟通道可以同时输入8路模拟信号,但每个瞬间只能换1路,共用一个A/D转换器进行转换,各路之间的切换由软件改变C、A、B引脚上的代码来实现。地址锁存与译码电路完成对 A、B、C 3

地址位进行锁存和译码,其译码输出用于通道选择,其转换结果通过三态输出锁存器存放、输出,因此可以直接与系统数据总线相连,图2-5为通道选择表。

图2-5 通道选择表

⑷ OE、START、CLK为控制信号端,OE为输出允许端,START为启动信号输入端,CLK为时钟信号输入端。

⑸ VR(+)和VR(-)为参考电压输入端。 2.2.2 ADC0809的转换原理

ADC0809采用逐次比较的方法完成A/D转换的,由单一的+5V电源供电。片内有锁存功能的8路选1的模拟开关,由C、B、A引脚的功能来决定所选的通道。0809完成一次转换需100μs左右,输出具有TTL三态锁存缓冲器,可直接连接到MCS-51的数据总线上。

通过适当的外接电路,0809可对0-5V的模拟信号进行转换 2.3 89C51单片机系统

单片机是一种集成电路芯片,采用超大规模技术把具有数据处理能力(如算术运算,逻辑运算、数据传送、中断处理)的微处理器(CPU),随机存取数据存储器(RAM),只读程序存储器(ROM),输入输出电路(I/O口),可能还包括定时计数器,串行通信口(SCI),显示驱动电路(LCD或LED驱动电路),脉宽调制电路(PWM),模拟多路转换器及A/D转换器等电路集成到一块单块芯片上,构成一个虽小然而完善的计算机系统。这些电路能在软件的控制下准确、迅速、高效地完成程序设计者事先规定的任务。 2.3.1单片机片内结构

51单片机的片内结构如图2-6

所示。它把那些作为控制应用所必需的基本

内容都集成在一个尺寸有限的集成电路芯片上。按功能划分,它有如下功能部件组成:

⑴ 微处理器(CPU)。 ⑵ 数据存储器(RAM)。 ⑶ 程序存储器(ROM/EPROM)。

⑷ 4个8位并行I/O口(P0口、P1口、P2口、P3口)。 ⑸ 一个串行口。

⑹ 2个16位定时器、计数器。 ⑹ 2个16位定时器、计数器。 ⑺ 中断系统。

⑻ 特殊功能寄存器(SFR)。

图2-6 51单片机片内结构

上述功能部件都是通过片内单一总线连接而成,其基本结构依旧是CPU加上外围芯片的传统结构模式。但CPU对各种功能部件的控制是采用特殊功能寄存器的集中控制方式。

从硬件角度来看,与MCS-51指令完全兼容的新一代AT89CXX系列机,比在片外加EPROM才能相当的8031单片机抗干扰性能强,与87C51单片机技能相当,但

功耗小。程序修改直接用+5V或+12V电源擦除,更显方便、而且其工作电压放宽至2.7V-6V,因而受电压波动的影响更小,而且4K的程序存储器完全能满足单片机系统的软件要求,故AT89C51单片机是构造本检测系统的更理想的选择。 2.3.2 89C51芯片介绍

掌握MCS-51单片机,应首先了解MCS-51的引脚,熟悉并牢记各引脚的功能,MCS-51系列中各种型号芯片的引脚是互相兼容的。制作工艺为HMOS的MCS-51的单片机都采用40只引脚的双列直插封装方式,如图2-7所示。

P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7RST

(RXD) P3.0(TXD) P3.1(INT0) P3.2(INT1) P3.3T0 P3.4T1 P3.5(WR) P3.6(RD) P3.7

XTAL1XTAL2GND

Vcc

P0.0 (AD0)P0.1 (AD1)P0.2 (AD2)P0.3 (AD3)P0.4 (AD4)P0.5 (AD5)P0.6 (AD6)P0.7 (AD7)EA/VPPALE/PROGPSEN

P2.7 (A15)P2.6 (A14)P2.5 (A13)P2.4 (A12)P2.3 (A11)P2.2 (A10)P2.1 (A9)P2.0 (A8)

PDIP

图2-7 AT89C51芯片管脚图

2.3.3 晶振电路和复位电路 电路图如图2-8

图2-8 晶振与复位电路

2.4 LED显示电路

LED显示有静态显示和动态显示两种显示方式。本设计使用并行输入硬件译码静态显示电路,静态显示电路中,各位可独立显示,只要在该位的段码线上保持段码电平,该位就能保持相应的显示字符。电路中采用了锁存译码器MC14495将P1口低4位输出的BCD码译成七段字型码,利用P1口高四位做为各锁存译码器的所存信号,实现稳定显示。LED使用的是共阴极7段数码管。

数码管显示电路如图2-9

图2-9 数码管显示电路

2.5键盘电路

键盘有两种工作方式:编码式键盘和非编码式键盘。处理方式有扫描法和线反转法。本设计采用的是非编码键盘,并利用扫描法处理按键,消抖由软件实现。

键盘扫描电路如图2-10

图2-10 按键电路

2.6报警电路

报警电路如图2-11

图2-11 报警电路 2.7 误差分析与修正

误差产生的原因主要有三个方面的因素:一是外界环境流动空气对传感器的影响和对气体样品的稀释,二是样品的稳定性对测量带来的误差,三是水蒸气对测量的影响。

针对这三个主要问题提出以下解决方案和验证方法。

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

3.系统软件设计

3.1主程序框图

主程序流程图如下图3-1所示。

图3-1 主程序框图

3.2 数据采集子程序程序框图

A/D转换子程序流程图如下图3-2所示。ADC0809初始化后,把0通道输入的0-5V的模拟信号转换为对应的数字量OOH-FFH,然后将对应数值存储到内存单元。程序框图如图3-2。

图3-2 数据采集子程序框图

3.3报警子程序程序框图

系统设定阈值并保存在以50H开始的3个单元,为了便于比较和显示,阈值的千位放入50H中,百位和十位放入5lH,个位放人52H中。报警电路分为蜂鸣器报警电路和LED发光报警电路组成。当输入端P3.5为低电平时,有电流通过蜂鸣器,蜂鸣器发出声音报警。而当输入端为高电平时不报警。

报警子程序执行之前,将报警阈值转换为压缩的BCD码并存放在两个存储单元中。传感器输入值A/D转换后,调用比较程序,经过数据处理后显示的测量值与阈值比较,小于阈值则继续执行显示程序。若大于阈值则将单片机的P3.5口清零进行声光报警。40H、4lH、42H单元存放A/D转换后,并进行十进制转换后的结果。40H和50H分别存放的是处理后的测量值与阈值的千位的压缩BCD码,41H和51H分别存放的是处理后的测量值与阈值的百位、十位压缩的BCD码,42H和52H分别存放的是处理后的测量值与阈值的个位的压缩BCD码。程序首先对40H、50H中的值进行比较大小,如果40H中的值大于50H中的值,则进行报警。依此类推,比较41H和51H,42H和52H。程序框图如3-3所示。

图3-3 报警子程序流程框图

4.系统安装与调试

按下图4-1安装电路

图4-1 5.课程设计体会与总结

经过一周的努力,终于完成了课程设计。这是一次基于单片机的课程设计,,老师只给出了大致要求。这对于我来说是很有挑战性的。

首先这是一个基于单片机的课程设计,单片机是这学期学习的课程,虽然不陌生,但是用起来还发现很多的问题。硬件方面还好解决,弄明白就可以了,但软件方面就非常困难了,虽然以前还做过这方面的实验,但那都是是些简单应用。这次设计真的让我长进了很多,单片机课程设计重点就在于软件算法的设计,需要有很巧妙的程序算法,有好多的东西,只有我们去试着做了,才能真正的掌握,只学习理论有些东西是很难理解的,更谈不上掌握。

其次,就是使用到的各种元器件。这次我使用的基本上都是已经学过的元件,但真正用起来才发现自己还差的很多,所以我又重新对所用到的器件仔仔细细,认认真真的研究了一遍从引脚,到时序,再到最后的电路整体构成,下了非常大的功夫才最后弄出来。

回顾起此次单片机课程设计,我仍感慨颇多。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。这让我学到了很多课本上没有的东西,扩展了自己的视野,增强了自己的动手能力,清醒的认识到自己的不足,培养了小心谨慎的作风,使自己对课题设计了解进一步加深。总之,此次的课程设计使我收获颇丰,也是我上大学来难忘的一次经历。

附录:

1.参考资料

(1).程德福,王君.传感器原理及应用. 北京:机械工业出版社,2007 (2).赵广林. protel99电路设计与制版.北京:电子工业出版社,2005 (3).王艳秋.单片机原理及接口技术.北京:清华大学出版社.2010 (4).陈杰,黄鸿.传感器与检测技术[M].北京:高等教育出版社,2003 (5).余家春.Protel 99 SE电路设计实用教程[M].中国铁道出版社,2004 (6).楼然苗,李光飞.51系列单片机设计实例[M].北京航空航天大学出版社,

2003

(7).司士辉.生物传感器[M].化学工业出版社,2003 2.元器件表

3.程序代码 初始化子程序:RESET:

PUSH B ; PUSH A 保存B 寄存器 保存A 寄存器

MOV A,#4 ; 设置循环次数 CLR P1.0 ; 发出复位脉冲 MOV B,#250 ; 计数250 次 DJNZ B,$ ; 保持低电平500us SETB Pl.0 ; 释放总线 MOV B,#6 ; 设置时间常数 CLR C ; 清存在信号标志 WAITL: JB Pl.0,WH ;若总线释放跳出循环 DJNZ B,WAITL ; 总线低等待

DJNZ ACC,WAITL; 释放总线等待一段时间 SJMP SHORT WH: MOV B,#111 WH1: ORL C,P1.0

DJNZ B,WH1 ; 存在时间等待 SHORT: POP A POP B

写位子程序(待写位的内容在C 中) WRBIT:

PUSH B ; 保存B MOV B,#28 ; 设置时间常数 CLR P1.0 ; 写开始 NOP ;1us NOP ;1us NOP ;1us NOP ;1us N0P ;1us

MOVPl.0,C ; C 内容到总线 WDLT: DJNZ B,WDLT;等待56Us POP B

SETB Pl.0 ; 释放总线 RET ;返回

写字节子程序(待写内容在A 中): WRBYTB:

PUSH B : 保存B MOV B #8H ; 设置写位个数 WLOP: RRC A ; 把写的位放到C ACALL WRBIT ; 调写 1 位子程序DJNZ B WLOP ; 8 位全写完? POP B RET

读位子程序(待写位的内容在C 中);RDBIT:

PUSH B ; 保存B PUSH A ; 保存A MOV B,#23 ; 设置时间常数 CLR P1.0 ; 读开始图2 25 5 的t0 NOP ;1us NOP ;1us NOP ;1us NOP ;1us

SETB Pl.0 ; 释放总线 MOV A,P1 ; P1 口读到A MOV C,EOH ; P1.0 内容C NOP ;1us NOP ;1us NOP ;1us NOP ;1us

RDDLT: DJNZ B,RDDLT ;等待46us

SETB P1.0 POP A POP B RET

读字节子程序(读到内容放到A 中) RDBYTE:

PUSH B ; 保存B RLOP MOV B,#8H ; ACALL RDBIT ; RRC A ; DJNZ B,RLOP ; 8 POP B ; RET

设置读位数 调读1 位子程序

把读到位在C 中并依次送给A 位读完? 恢复B

范文九:酒精浓度监测 投稿:戴艓艔

辽 宁 工 业 大 学

课程设计

题目:酒精浓度监测

院 系: 电气工程学院 专 业:电气工程及其自动化 姓 名: 学 号: 指导教师

日 期: 2012年12月31日

目 录

第1章 绪论 .......................................................... 1

1.1 PVC应用概述 ................................. 错误!未定义书签。 1.2 本文研究内容 ................................................. 1 第2章 CPU最小系统 .................................................. 2

2.1 酒精浓度监测仪总体设计方案 ................................... 2 2.2 CPU的选择 .................................................... 3 2.3 复位电路设计 ................................................. 5 2.4 时钟电路设计 ................................................. 5 2.5 CPU最小系统图 ................................................ 6 第3章 酒精浓度监测仪输入输出接口电路设计 ............................ 7

3.1 酒精浓度监测仪传感器的选择 ................................... 7 3.2 酒精浓度监测仪检测接口电路设计 ............................... 8

3.2.1 A/D转换器选择 ...................................................................................... 8 3.2.2 模拟量检测接口电路图 ...................................................................... 12 3.3 酒精浓度监测仪输出接口电路设计 .............................. 12 第4章 酒精浓度监测仪软件设计 ....................................... 16

4.1 软件实现功能综述 ............................................ 16 4.2 流程图设计 .................................................. 17

4.2.1 主程序流程图设计 .............................................................................. 17 4.2.2 模拟量检测流程图设计 ...................................................................... 18 4.2.3 酒精浓度监测仪显示流程图设计 ...................................................... 18

第5章 系统设计与分析 ............................................... 19

5.1 系统原理 .................................................... 19 第6章 课程设计总结 ................................................. 20 参考文献 ............................................................ 21

第1章 绪论

1.1 本文研究意义

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

1.2 本文研究内容

本文是设计一个基于AT89S51单片机的酒精浓度探测仪系统,可用来检测酒精气体浓度,最主要的用途是检测司机的酒精含量。其中酒精传感器采用MQ-3型,利用该传感器将酒精气体浓度信号转化为电信号,选择适当的放大器放大其电压信号,驱动发光二极管显示酒精浓度的高度,同时利用模数转换芯片将模拟信号进行转化,并由单片机控制,最后用数码管显示。

第2章 CPU最小系统

2.1 酒精浓度监测仪总体设计方案

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

图2.1 系统总框图

2.2 CPU的选择

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

图2.2 51单片机片内结构

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

说明各引脚功能。

图2.3 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的振荡频率固定速率输出,可作为对外输出的时钟或用作外部定时脉冲。

2.3 复位电路设计

对于复位电路部分,AT89C51技术资料给出,当振荡器工作时,RST引脚出现两个机器周期以上的高电平将使单片机复位。复位是单片机的初始化操作,当由于程序运行出错或操作错误使系统处于死锁状态时,为了摆脱困境,可以按复位键以重新启动,所以复位电路的设计很有必要。复位操作有上电自动复位、按键电平复位和外部脉冲复位三种方式,本设计选用按键电平复位方式。

图2.4 复位电路图

如图2.4所示,10μF的电容C3与270Ω的电阻并联后再与一个10KΩ的电阻串联,电容的正极端接到电源的正极,电容的另一端接至引脚RST。设计中选用的石英晶体大小为11.0952MHz,但复位键按下后,电容和电阻选用的参数值能够保证给复位端RST提供大于2个机器周期的高电平复位信号[10]。

2.4 时钟电路设计

对于晶振部分,AT89S51单片机中有一个用于构成内部振荡器的高增益反相放大器,引脚19对应的XTAL1和18XTAL2

分别是该放大器的输入端和输出端。

2

1

C1

图2.5 时钟电路图

这个放大器与作为反馈元件的片外石英晶体或陶瓷谐振器一起构成自激振荡器。如图2.5所示,石英晶体及电容C1和C2接在放大器的反馈回路中构成并联谐振电路。石英晶体的两端分别接到引脚XTAL1 和引脚XTAL2,同时石英晶体的两端分别接一个电容C1和C2,电容的另一端接地。对于外接电容C1和C2的大小虽然没有十分严格的要求,但电容容量的大小还是会对振荡频率的高低、振荡器工作的稳定性、起振的难易程度和温度稳定性带来一定的影响。根据技术资料的推荐,使用石英晶体推荐电容容量为30pF±10pF,使用陶瓷谐振器推荐电容容量为40pF±10pF。因为电路中接的是石英晶体,所以设计中接的两个电容C1和C2的容量都为33pF。

2.5 CPU最小系统图

图 2.6 最小系统图

第3章 酒精浓度监测仪输入输出接口电路设计

3.1 酒精浓度监测仪传感器的选择

本设计中的酒精气体传感器采用河南汉威电子有限公司的MQ-3型,它属于MQ系列气敏元件的一种。如图3.1所示:

图3.1 MQ-3实物图

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

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

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

图3.3 MQ-3检测电路

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

3.2 酒精浓度监测仪检测接口电路设计

3.2.1 A/D转换器选择

ADC0809是CMOS单片型逐次逼近式A/D转换器,内部结构如图3.4所示,它由8路模拟开关、地址锁存与译码器、比较器、8位开关树型A/D转换器、逐次逼近寄存器、三态输出锁存器等其它一些电路组成。因此,ADC0809可处理8路模拟

量输入,且有三态输出能力,既可与各种微处理器相连,也可单独工作。输入输

出与TTL兼容。

图3.4 ADC0809内部结构图

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

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.5 ADC0809芯片

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

当检测到酒精气味时,气体传感器的A-B间电阻变小,则ADC0809的模拟输入端IN0的电压变大。采用查询方式对输入模拟信号进行A/D转换,然后将数据通过三位八段数码管显示。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信号与单片机的P3.3相连,作为A/D转换是否结束的状态信号供单片机查询。

表3.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与AT89S51单片机的接口电路如图10所示。单片机引脚P3.6与P2.7进过或非门后于模数转换芯片的ALE端和START端子用导线相连接,用于对模数转换芯片写入数据的写信号。单片机的RD端P3.7与P2.7进过或非门后于模数转换芯片的OE端子用导线相连接,作为单片机读取模数转换数据的读信号。单片机引脚P3.3与模数转换芯片的EOC端经过或非门后的输出端用导线相连接,用于单片机对模数转换是否结束的查询,模数转换结束后可以查询到P3.3为高电平,为单片机读取数据作准备。单片机的ALE端口接到D触发器的时钟信号输入端CK,D触发器的反相输出端与触发信号输入端用导线相连,D触发器的清零和复位端为低电平有效,分别接高电平,D触发器的正向输出端与模数转换芯片的CLK端子用导线相连接,为模数转换芯片提供正常的时钟信号。把模数转换芯片的A2﹑A1﹑A0端分别用导线连接到地址锁存器的低三位,用于选择模数转换的通道。模数转换芯片的IN0端子用导线与信号采样部分的负载电阻端相连,作为要模数转换的输入端。单片机引脚P0.0-P0.7连接到模数转换芯片的数据输出端D0﹑D1﹑D2﹑D3﹑D4﹑D5﹑D6﹑D7端,用于读取模数转换后的数据。地址地址锁存芯片74LS373的输入端低三位分别与单片机引脚P0.0-P0.2连接,用于锁存选择模数转换通道的地址。

3.2.2 模拟量检测接口电路图

模拟量检测借口电路如图3.6所示

NOR

图3.6 ADC0809与单片机AT89S51接口电路

3.3 酒精浓度监测仪输出接口电路设计

发光二极管集成驱动芯片LM3914的管脚图如图3.7所示。其内部的缓冲放大器最大限度的提高了该集成电路的输入电阻(5脚),电压输入信号经过缓冲器(增益为零)同时送到10个电压比较器的异相(-)输入端。10个电压比较器的同相输入(+)端分别接到10个等值电阻(1KΩ)串联回路的10个分压端。因为与串联回路相接的内部参考电压为1.2V,所以相邻分压端之间的电压差为1.2V/10=0.12V。为了驱动LED1发光,集成电路

LM3914的1脚输出应该为低电平,因此要求电压比较器异相(-)端的输入电压应大于0.12V。同理,要使LED2发光,异相端输入电压应大于0.12*2=0.24V;要使LED10发光,异相端输入电压应大于0.12*10=1.2V。

LM3914的9脚为点,条方式选择端,当9脚与11脚相接为点状显示;当9脚与3脚相接,则为条状显示。本系统采用条状显示方式,即将引脚9和引脚3都

接到电源的正极。

图3.7 LM3914管脚图

如图3.8所示,LM3914的3和9引脚接电源正极,使发光二极管成柱状显示,7和8引脚接一个2K的电阻,控制发光二极管的亮度,5引脚为采样信号的输入端,10到18引脚和1引脚分别接发光二极管的负极端,4和2引脚与发光二极管的正极间接一个10μF的电容,作为发光二极管的虚电源,驱动要反光的二极管点亮。

当检测到酒精气味时,气敏传感器的A-B间电阻变小,LM3914的5端电位升高,通过比较放大,驱动发光二极管依次发光,从而区分出酒精含量的高低,直观的看出所测的酒精浓度达到了哪个水平值,起到报警的作用。

输入灵敏度可以通过负载电阻的调节来实现,即对地电阻调小时灵敏度下降;反之,灵敏度增加。改变7脚与8脚之间电阻的阻值可以调节发光二极管的显示亮度,当阻值增加亮度减弱,反之加强。

发光二极管一般是砷化镓半导体二极管,在发放光二极管两端加上正向电压,则发光二极管发光。数码管是由若干发光二极管组合而成的,有共阴极和共阳极两种结构形。8段共阴数码管由a﹑b﹑c﹑d﹑e﹑f﹑g、dg这8个发光二极管组成。把8个发光二极管的阴极连接在一起构成共阴极端,接进电路时,共阴极端接地,给要发光显示的二极管的阳极端接高电平可使该发光二极管导通点亮。如图13所示。用单片机驱动数码管有静态显示和动态显示,静态显示就是显示驱动电路具有输出锁存功能,单片机将所要显示的数据送出后就可以驱动数码管显示数据,直到下一次显示数据需要更新时再传送一次新的数据就可以了。静态显示数据稳

定,占用CPU时间少。动态显示需要时刻对显示器件进行数据刷新,显示数据有闪烁感,占用的CPU时间多。

图3.8 发光二极管显示

这两种显示方式各有利弊;静态显示虽然数据稳定,占用很少的CPU 时间,但每个显示单元都需要单独的显示驱动电路,使用的硬件较多;动态显示虽然有闪烁感,占用的CPU时间多,但使用的硬件少,能节省线路板空间。

设计选用3个单位8段共阴数码管来显示输出的数据,因为电路硬件相对较简单,所以选择静态显示方法。选用3个移位寄存器74LS164驱动数码管发光点亮。电路连接如图3.9所示。移位寄存器在电路中一是驱动数码管点亮,二是对输入的串行数据并行输出,起到串并转换的作用。移位寄存器74LS164串行数据输入端与前一位的并行输出最高位相连,第一位移位寄存器的数据输入端与单片机的数据输出端P1.7连接。单片机引脚P1.6用于给移位寄存器提供移位的时钟脉冲,该引脚与三个移位寄存器的时钟输入端CLK相连。因为每位数据串行输出

先输出的是低位,所以数码管引脚a、b、c、d、e、f、g、dg应顺序与对应位的移位寄存器并行输出端的Q7、Q6、Q5、Q4、Q3、Q2、Q1、Q0连接。

图3.9 数码管显示电路

第4章 酒精浓度监测仪软件设计

4.1 软件实现功能综述

根据总体设计方案,酒精浓度检测系统包括主程序、模数转换子程序、显示报警子程序。

图4.1 主程序流程图

主程序主要用来进行初始化,设置口地址和控制字,并对检测结果进行核对和控制,模数转换子程序用来读取酒精浓度检测电路的输入数据进行分析显示。显示报警子程序,利用芯片进行译码显示,转为BCD码后输出。

4.2 流程图设计

4.2.1 主程序流程图设计

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

图4.2 模拟量检测流程图

单片机通过I/O口与模数转换芯片的数据输出口相连读取转换后的数据。读取后的数据送到数据存储器单元中,经过单片机作相应的处理,即要将该电压值转换为酒精浓值,然后处理后的数据转换成三位十进制BCD码用数码管显示。

4.2.2 模拟量检测流程图设计

A/D转换子程序流程图如下图3-2所示。ADC0809初始化后,把0通道输入的0-5V的模拟信号转换为对应的数字量OOH-FFH,然后将对应数值存储到内存单元,程序框图如图4.2。

4.2.3 酒精浓度监测仪显示流程图设计

图4.3 显示电路软件流程图

从读取到的电压值得到酒精浓度值后,还要把该值转换为3位10进制BCD码,存储到特定的存储单元以供数码管显示数值。数码管显示选用的是静态显示的方法,要在每次显示数据时把要显示的3个位按顺序串行送到数码管集成驱动电路74LS164并行输出,以同时驱动3个数码管同时点亮。程序流程图如图4.3所示。

第5章 系统设计与分析

5.1 系统原理

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

图 5.1 系统原理图

第6章 课程设计总结

单片机技术基础是实用性很强的一门课程。本次单片机技术课程设计,让我们有机会将课堂上所学的理论知识运用到实际中。并通过对知识的综合利用,进行必要的分析、比较,从而进一步验证了所学的理论知识。同时,本次课程设计也为我们以后的学习打下了良好的基础,还让我们知道了最重要的是心态,在你拿到题目时会觉得困难,但是只要有信心,就肯能能完成的。

通过本次单片机技术课程设计,我们不仅加深了对课本专业知识的理解,同时增强了自己的自学能力。因为平时上课时只知道被动的学习理论知识,在这个过程中也不是一蹴而就的,我也遇到了各种困难。但是通过查阅资料、和同学讨论,我及时的发现自己的错误并纠正了。这也是本次单片机课程设计的一大收获,使我们的实践动手能力有了进一步的提高,同时也增强了我们对以后学习的信心。 课程设计开始,思绪全无,举步维艰。对于理论知识学习不够扎实的我深感“书到用时方恨少”,于是重拾教材与实验手册,对知识进行了系统而全面的梳理,而且领悟诸多平时学习难以理解的知识,对于知识的理解更深了一层。 课程设计结束了,在这次的课程设计中不仅检验了我所学习的知识,也培养了我如何去把握一件事情,如何去做一件事情,又如何完成一件事情。在这里我感谢所有给予我帮助的老师和同学,在我遇到困难的时候是他们耐心的帮助我。我会在以后的学习和生活中发扬不怕苦的精神,努力学习。

参考文献

[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.

范文十:酒精浓度测试仪 投稿:潘敎敏

酒后驾车测试仪的设计

摘 要

以单片机和气体传感器为核心,设计了酒精浓度检测仪,实现了不同环境下酒精浓度的检测。本文主要介绍了酒精浓度检测仪整体结构,设计了系统硬件电路,阐述了各模块功能并着重研究了气体传感器的选择。

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

Abstract

An alcohol concentration detector is designed taken single chip computer and gas sensor as kernel. The alcohol concentration in different environment can be measured . In this paper , the whole

construct of the alcohol concentration detector is introduced ; the system hardware circuit is designed ; the function of each model and how to select the gas sensor are discussed especially .

Keywords : Single Chip Computer ; A/D Transformer ; Alcohol Sensor

目 录

摘 要.............................................................................................................................. 2

Abstract .......................................................................................................................... 2

1 引言............................................................................................................................ 4

1.1

1.2 课题的背景和意义 ...................................................................................... 4 本论文主要工作 .......................................................................................... 4

2 总体设计方案......................................................................................................... 4

2.1

2.2

2.3

2.4 酒精浓度检测仪整体结构设计 .................................................................. 4 硬件设计及功能概述 .................................................................................. 5 硬件电路设计 .............................................................................................. 6 各功能模块的设计 ...................................................................................... 6

3 总结与展望............................................................................................................ 10 参考文献.................................................................................... 错误!未定义书签。0

1、引言

1.1课题的背景和意义

近年来,随着我国经济的高速发展,人民的生活水平迅速提高,越来越多的人有了自己的私家车,而酒后驾车造成的交通事故也频频发生。酒后驾车引起的交通事故是由于司机的过量饮酒造成人体内酒精浓度过高,麻痹神经,造成大脑反应迟缓,肢体不受控制等症状。少量饮酒并不会有上述症状,即人体内酒精浓度比较低时,而人体内酒精超过某一个值时就会引起危险。为此,需要设计一智能仪器能够监测驾驶员体内酒精含量。目前全世界绝大多数国家都采用呼气酒精测试仪对驾驶人员进行现场检测,以确定被测量者体内酒精含量的多少,以确保驾驶员的生命财产安全。此外,空气酒精浓度监测仪还能监测某一特定环境的酒精浓度如酒精生产车间可避免发生起火、爆炸及工业场地酒精中毒等恶性事故,确保环境安全。

1.2本论文主要工作

本课题研究的是一种以气敏传感器和单片机为主,监测空气酒精浓度,并具有声光报警功能及LCD显示功能的空气酒精浓度监测仪。其可监测出空气环境中酒精浓度值,并根据不同的环境设定不同的阈值,对超过的阈值进行声光报警.来提示危害。采用汇编语言来实现其软件功能。该仪器硬件电路设计简单、软件功能完善、灵敏度高、工作性能好,并且具有尺寸小、方便携带的优点。此外,低功耗、低成本的特点可以使其吸引更多的市场目光。

2、总体设计方案

2.1酒精浓度检测仪整体结构设计

(1)数据采集系统以单片机为控制核心,外围电路带有LCD 显示以及键盘响应电路,无需要其他计算机,用户就可以与之进行交互工作,完成数据的采集、存储、计算、分析等过程。

(2)系统具有低功耗、小型化、高性价比等特点。

(3)从便携式的角度出发,系统成功使用了大屏幕液晶显示器以及小键盘。由单片机系统控制键盘和LCD 显示来实现人机交互操作,界面友好。

(4)软件系统采用汇编语言编写,在兼顾实时性处理的同时也能很方便地进行数据处理。

2.2硬件设计及功能概述

本文设计的酒精浓度检测仪主要是以酒精传感器和单片机为平台设计而成的,其硬件系统功能框图如图一所示。

图一硬件系统功能框图

酒精浓度检测仪主要是用来检测酒精浓度的,它主要由酒精传感器、模数转换器、单片机、LCD 显示、键盘以及声音报警构成。

酒精传感器将检测到的酒精浓度转化为电信号,然后将电信号传送给模数转换器,经过模数转换器转换后,把转换后得到的数字信号传给单片机,单片机对

所输入的数字信号进行分析处理,最后将分析处理的结果通过显示器显示出来。

由于不同的环境对酒精浓度的要求也不一样,所以,可以通过键盘来设定不同环境中酒精浓度的不同阀值。如果所检测到的空气中的酒精浓度超过了所设定的阀值,那么单片机将会控制蜂鸣器发出声音报警,用来提示危害。

2.3硬件电路设计

依据硬件系统功能框图设计出系统硬件的整体电路图如图二和图三所示。其中图二是单片机与LCD、键盘以及声音报警电路的电路连接图。

图二单片机与LCD、键盘及声音报警电路的电路连接图

2.4各功能模块的设计

2.4.1 AT89S52的特性

AT89S52 是低功耗、高性能、采用CMOS 工艺的8 位单片机,其片内具有8KB 的可在线编程的Flash 存储器。该单片机采用了ATMEL 公司的高密度、非易失性存储器技术,与工业标准型80C51 单片机的指令系统和引脚完全兼容;片内的Flash 存储器可在线重新编程,或者使用通用的非易失性存储器编程;通用的8 位CPU 与在线可编程Flash 集成在一块芯片上,从而使AT89S52

功能更加完善,

应用更加灵活;具有较高的性能价格比,使其在嵌入式控制系统中有着广泛的应用前景。

2.4.2 ADC的选择

模数转换电路的功能是将连续变化的模拟量转换为离散的数字量,是架起模拟系统跟数字系统之间连接的桥梁。对于本系统而言,就是用于快速、高精度地对输入的酒精浓度信号进行采样编码,将其转换成单片机所能够处理的数字量。模数转换电路是本系统的关键部分,其性能的好坏直接影响整个系统的质量。

根据A/D 转换器的工作原理可将A/D 转换器分成两大类:一类是直接型A/D 转换器;另一类是间接型A/D 转换器。在直接型A/D 转换器中,输入的模拟电压被直接转换成数字代码,不经任何中间变量。在间接型A/D 转换器中,首先把输入的模拟电压转换成某种中间变量(时间、频率、脉冲宽度等等),然后再把这个中间变量转换为数字代码输出。

2.4.3 气体传感器的选择

气体传感器是气体检测系统的核心,通常安装在探测头内。从本质上讲,气体传感器是一种将某种气体体积分数转化成对应电信号的转换器。探测头通过气体传感器对气体样品进行调理,通常包括滤除杂质和干扰气体、干燥或制冷处 理、样品抽吸,甚至对样品进行化学处理,以便化学传感器进行更快速地测量。

在选择传感器的时候,一定要考虑到稳定性、灵敏度、选择性和抗腐蚀性,本系统选择MQ3 型酒精传感器。

MQ3 酒精传感器是气敏传感器,其具有很高的灵敏度、良好的选择性、长期的使用寿命和可靠的稳定性。MQ3 型气敏传感器由微型Al2O3、陶瓷管和SnO2 敏感层、

测量电极和加热器构成的敏感元件固定在塑料或者不锈钢的腔体内,加热器为气敏元件的工作提供了必要的工作条件。传感器的标准回路有两部分组成:其一为加热回路;其二为信号输出回路,它可以准确反映传感器表面电阻的变化。传感器表面电阻RS 的变化,是通过与其串联的负载电阻RL 上的有效电压信号VRL 出面获得的。二者之间的关系表述为:RS/RL=(VC-VRL)/VRL,其中VC 为回路电压,10V。

负载电阻RL 可调为0.5~200K,加热电压Uh 为5V。上述这些参数使得传感器输

出电压为0~5V。MQ3 型气敏传感器的结构和外形如图三所示,标准回路如图四所示,传感器阻值变化率与酒精浓度、外界温度的关系如图五所示。为了使测量

的精度达到最高,误差最小,需要找到合适的温度,一般在测量前需要将传感器预热5 分钟。

图三MQ3 的结构和外形

图四MQ3 标准回路

图五传感器阻值变化率与酒精浓度、外界温度之间的关系 为了更好地使用酒精传感器MQ3,现将MQ3 的标准工作条件和环境条件进行介绍,如表一和表二所示。

表一标准工作条件

表二酒精传感器MQ3 的环境条件

3、总结与展望

本文设计了基于单片机的酒精浓度检测仪,设计过程包括了硬件电路设计和软件程序的编写两部分。硬件电路部分结构简单、使用方便、适合大众化使用。软件部分采用模块化设计思想,各个子程序的功能相对独立,便于调试和修改。通过软、硬件联合调试,实验结果满足设计基本要求,达到设计指标。 应用单片机编写不同的程序嵌入各种仪器中便形成不同功能的智能仪器。作为广泛应用于工程中的智能仪器将有更大的运用空间。空气酒精浓度监测仪将越来越深入的运用到普通人民的生活中。 参考文献

[1]王幸之.AT89 系列单片机原理与接口技术[M].北京:北京航空航天大学出版社,2004.

[2]郑学坚,周斌.微型计算机原理及应用[M].北京:清华大学出版社,2006.

[3]纪宗南.单片机外围器件使用手册—输入通道器件分册[M].北京:北京航空航天大学出版社,2005.

[4]郑义,陈俊.用AT89C52 和TLC1543 实现数据采集系统[J].电子世界,2004,

(12):24-25.

[5]卢丽君.基于TLC1543 的单片机多路采样监测系统的设计[J].仪器仪表与分析监测,2007,(04):5-7.

[6]何希才.传感器技术与应用[M].北京:北京航空航天大学出版社,2005.

站点地图