基于单片机的液体点滴控制系统设计_第1页
基于单片机的液体点滴控制系统设计_第2页
基于单片机的液体点滴控制系统设计_第3页
基于单片机的液体点滴控制系统设计_第4页
基于单片机的液体点滴控制系统设计_第5页
已阅读5页,还剩70页未读 继续免费阅读

下载本文档

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

文档简介

南京工程学院毕业设计论文作者陶峰学号202090626院系计算机工程学院专业电子信息科学与技术题目基于单片机的液体点滴控制系统设计指导者田丽鸿副教授评阅者刘勤讲师2013年5月南京毕业设计说明书(论文)中文摘要基于单片机的液体点滴速度监控系统是一个能够代替医务人员监控病人点滴速度的智能化系统。该系统提出了一种点滴监控装置的设计方法,可用按键控制点滴报警时间并通过显示装置显示当前速度,当药液低于一定标准可通过蜂鸣器报警,系统采用了STC89C52作为核心处理单元,光敏传感器检测液体的滴数,通过检测来手动调整控制点滴速度,实际上也就是采用了液位控制的方法。通过多种方案对比,最终确定的方案操作简便,特别是进行了软件仿真设计,更具科学性以及可靠性,因此可将理论运用于医疗实际中。本次毕业设计实现了基于单片机的液体点滴速度监控装置的设计。所设计系统的硬件设计合理,实时性良好,经过扩展和升级,可以用于医院给病人打点滴和工业控制中,具有良好的医用价值和市场价值。关键词液体点滴监控光电传感器STC89C52液位控制毕业设计说明书(论文)外文摘要TITLEDESIGNOFLIQUIDDROPPINGSPEEDMONITORINGDEVICEBASEDONSCMABSTRACTLIQUIDDROPSPEEDMONITORINGSYSTEMBASEDONSINGLECHIPMICROCOMPUTERISASUBSTITUTEFORMEDICALPERSONNELTOMONITORPATIENTSINTRAVENOUSDRIPSPEEDINTELLIGENTSYSTEMSTHISSYSTEMPUTSFORWARDABITMONITORINGDEVICE,THEDESIGNMETHODOFTHEAVAILABLEBUTTONSCONTROLDRIPALARMTIMEANDTHROUGHTHEDISPLAYSHOWSTHECURRENTSPEED,WHENTHELIQUIDISLESSTHANCERTAINSTANDARDCANBETHROUGHTHEBUZZERALARM,SYSTEMUSESASTC89C52ASCOREPROCESSINGUNIT,THROUGHPHOTOSENSITIVESENSORSTOMANUALLYADJUSTTHEINTRAVENOUSDRIPSPEED,ACTUALLY,THEMETHODWASADOPTTHELEVELCONTROLTHROUGHAVARIETYOFSCHEMECOMPARISON,THEFINALSOLUTIONISSIMPLE,INPARTICULAR,THROUGHTHESOFTWARESIMULATIONMAKETHEDESIGNMORESCIENTIFICANDRELIABLE,SOTHETHEORYCANBEUSEDINMEDICALPRACTICETHEGRADUATIONDESIGNHASREALIZEDTHELIQUIDDROPSPEEDMONITORINGDEVICEBASEDONSINGLECHIPTHESYSTEMSHARDWAREISREASONABLE,GOODREALTIMEPERFORMANCE,EXTENDEDANDUPGRADED,THESYSTEMCANBEUSEDINHOSPITALONTHEPATIENTANDINDUSTRIAL,HASAGOODMEDICINALVALUEANDMARKETVALUEKEYWORDSLIQUIDDROPMONITORINGPHOTOSENSITIVESENSORSTC89C52LEVELCONTROL目录前言1第一章背景知识介绍411光电传感器介绍412单片机介绍513POTEL99介绍714KEIL介绍715PROTUES介绍8第二章方案比较与论证1021方案一1022方案二1023方案比较与选择11第三章液体点滴速度监控装置的理论分析与参数计算1231液体检测1232影响测量精度的因素分析1333系统设计思路14第四章液体点滴速度监控装置硬件电路设计1541系统硬件框图1542单片机主机系统电路1643按键输入电路1944液晶显示2045报警电路2446光电传感器电路25第五章液体点滴速度监控装置系统软件设计2751系统主程序流程图2752初始化程序2753中断程序2854按键程序3055显示程序3256延时子程序34第六章液体点滴速度监控装置仿真与实现3561软件仿真3562硬件实现3663测试结果与误差分析39第七章优化及改进4271系统的问题4272系统的改进方法42参考文献43结束语44致谢45附录一中英文技术资料翻译46附录二程序清单57附录三PROTEL电路图64附录四PROTEUS仿真图65附录五基于单片机的液体点滴控制系统实物图66前言问题的提出随着现在社会医疗水平的提高,医院的的智能化水平也越来越高,很多医疗设备都需要无人照看或者说需要照看的精力变少。在打点滴的时候点滴没了需要及时告诉医生处理,但是对于一些昏迷的病人就不能即时通知医生来处理,这样就可能导致病人的血液回流进滴管,造成不必要的伤害,同时对于意外状况点滴停止输液了也需要及时报警。另外对于点滴的输液速度也需要加以监控用来针对不同病人或者不同人群。本文提出的基于单片机的液体点滴控制系统,只需要操作仪器,便可以对点滴速度进行监控,以及对点滴过程的异常状况进行报警,这装置对输液速度的监控也能进行准确监控。概述随着科学电子技术飞速的发展,单片机性能不断完善,性能价格比显著提高,技术日趋完善。由于单片机具有体积小、重量轻、价格便宜、功耗低、控制功能强及运算速度快等特点,因而在国民经济建设、军事及家用电器等各个领域均得到了广泛的应用。本设计主要任务是设计并制作一个液体点滴速度监测与控制装置,能检测出储液瓶内液体的滴速、可控制液体点滴速度,在液面降到警戒值时能发出报警。通过此次设计不仅深入了解了单片机系统设计流程,提高了对电路键盘系统及对射式光电传感器的了解。输出系统由光电传感器监控的吊瓶、LED液晶显示屏及蜂鸣报警电路共同组成。近几年来,单片机,计算机技术以及传感器技术的发展日新月异,因此使用单片机以及传感器于生活所需的物品中已经成为主流思想,已经成为当今社会发展的需要。本次设计就是使用了单片机以及传感器来设计贴近生活实际的液体点滴监控装置,该装置可以在医用方面凸显其价值,也可以用于工业等其他行业,提高医院等行业的智能化水平。通过设计加强了我的实际制作和调试能力,同时也加强对数字电路、单片机和微机原理等课程知识的实际应用能力,为同类产品的进一步发展奠定理论和实践基础。液体点滴速度监控器在生活中主要就是应用于静脉输液。随着医院管理系统趋向于电子化、网络化,如何利用计算机与现代控制技术提高医疗器械的自动化成为目前主要应用方向之一。本系统主要基于STC89C52单片机以及光电传感器来实现液体点滴的监控。该系统是以单片机作为控制中枢部分,结合外围输入输出系统组成的液体点滴速度监控装置,核心控制为STC89C52单片机,输入系统是以独立式按键来进行控制的。研究内容本设计主要研究基于单片机的液体点滴控制系统,分别对传感器检测电路、按键电路、显示电路以及系统的软、硬件各个部分进行了研究。主要研究内容如下1系统硬件电路的设计根据液体点滴的监控原理,进行液体点滴系统的整体研究与设计。针对液体点滴监控系统的整体功能设计各个模块电路。对传感器检测电路论证和设计,产生用于监测点滴的信号。对按键电路进行设计,可以实现报警功能的开关,以及异常报警的时间检测数据送入单片机进行计算,从而得出面积。LCD显示液体当前速度的值,以及已经流过的滴数,以文字显示的方式显示液体速度以及总点滴数。2系统软件的设计系统主程序的设计。按键子程序的设计。单片机计算面积的设计。LCD显示程序的设计。设计特点与创新该装置实时地监测液体点滴速度,通过单片机对信息进行分析和处理,由主机发出相应指令,调整系统工作平稳,构成了一个高性能的闭环控制系统,实现了对点滴输液速度的直观监测,同时对一些异常情况的出现可实施报警。利用该装置还能通过主控平台对各个分立系统信息实施自动化、智能化的集中处理。能方便、简易的操作和使用,对医疗具有很强的实用性。第一章背景知识介绍11光电传感器介绍111什么是光电传感器光电检测方法是具有精度高、反应快、非接触等优点的一种检测方法,而且该方法可测的参数比较多,光电传感器结构简单,形式灵活多样,因此,光电式传感器在检测参数以及控制工程中的应用十分广泛。光电传感器是各种光电检测系统中实现光电转换的关键元件,它是把光信号(红外、紫外光辐射以及可见光)转变成为电信号的器件1。光电式传感器是以光电器件作为转换元件的传感器。它可用于检测一些由于直接变化而引起光量变化的非电量,比如光强、辐射测温、气体、光照度、成分分析以及点滴等;也可用来检测能够转换成光量变化的其他非电量,比如零件直径、物体表面粗糙度、位移、振动、速度、应变、加速度,以及物体的形状、工作状态的识别等。光电式传感器具有非接触、响应快、性能可靠等特点,因此在工业自动化装置和机器人中获得广泛应用。这些年来,随着技术的进步,光电传感器的性能不断提高,特别是CCD图像传感器的产生,为光电传感器的进一步应用开创了新的一页,随着光电传感器的改进,它的应用也越来越强大。常见的光电传感器有光敏二极管等。光电传感器的光敏二极管有与普通二极管一样的外形,不同的是它的管壳上有一个嵌着玻璃的窗口,这个窗口的作用是方便光线射入,这样能够增加受光面积,因此一般情况下PN结的面积都比较大,光敏二极管在反向偏置的工作状态下工作,与负载电阻相串联。它在有光和没有光照射的情况下是不同的,当没有光时,它的性能就和普通二极管一样,反向电流很小,这就是光敏二极管的暗电流;当有光照时,载流子被激发,产生了电子以及空穴,这就是光电载流子。在外电场的作用下,光电载流子能够参于导电,形成的反向电流比暗电流大很多,这个反向电流就是光电流。由于光电流的大小与光照强度有关系,并且是成正比的,于是它的负载电阻上的电信号能够由光照的强弱来改变。光电传感器的光敏三极管不仅有二极管的把光信号转变为电信号的功能,还可以把电信号进行放大。光敏三级管与一般的三极管相差不多,一般的光敏三极管是在发射极和集电极作为引出端口,基极则没有引出口,管壳也开窗口,这样就可以方便光线射入。一般情况下基区面积都很大,发射区则比较小,当光线射入,那么光线就主要被基区吸收,这样做的原因是能够增大光照。工作时集电结反偏,发射结正偏。暗电流是在没有光照的情况下产生的,它比一般三极管的穿透电流还小;在有光照时产生大量的电子空穴对,使得基极产生的电流增大,这时产生的电流成为光电流,综上所述,三极管的灵敏度要比二极管高。112光电传感器特点光电检测方法具有精度高、反应快、非接触、性能可靠等优点,而且可测参数多,传感器的结构简单,形式灵活多样。113光电传感器应用光电传感器可以应用于条形码扫描,简易感光报警器,产品计数器,光电式烟雾报警器,防盗报警电路,液位监控,公共汽车关门安全警示器等等一系列生活中,用处已经深入到人们生活中。12单片机介绍单片微型计算机简称单片机,他的主要用途是用作于控制系统,因此可以叫它为微控制器,单片机虽然只是一小块芯片,但是说白了就相当于一台计算机,单片机含有很多的优点,使其能够在日常生活以及学习中能够得到广泛的应用。它的小巧便宜为我们实用单片机学习创造了良好的条件,它使我们学习计算机原理以及结构的最理想的选择。在二十世纪跨过了三个“电”的时代,电子时代,电子时代和现在已经进入了计算机时代。然而电脑,通常是指个人计算机。它由主机、键盘、显示器等组成。有一种电脑,大多数人都不是很熟悉,这台智能电脑就是单片机也称为微控制器。这电脑系统只用了一片集成电路,就可以简单的操作和控制一些电子器件。它在整个电子世界中,它扮演的角色就像是人类大脑,一旦它出故障了,整个设备瘫痪了。现在,这种单片机的使用领域已十分广泛,可以使用在如仪表、实时控制、通讯产品、导航仪、家用电器等地方。各种各样的产品一旦使用了单片机,它能起到产品升级的效果,因此往往能在产品名称前加上形容词“智能”,如智能小车等等。现在有些技术人员或其它业余电子开发爱好者尝试设计一些产品,结果不是电路太复杂,就是功能太简单,很容易就被人模仿。原因就在于其没有使用想单片机一样的器件。单片机内部也用和电脑功能类似的模块,比如CPU,内存,并行总线,单片机可以像硬盘一样进行存储,和我们的家用电脑很相似,它的功能虽然和我们的家用电脑很相似,但是由于种种限制,它的功能要比电脑弱很多。但是单片机也有其优点,一般的电脑体积很大价格又高,而单片机小巧而且不超过10块,因此也得到广泛使用。虽然单片机的功能不是很强大,但是用它作为一些电子器件等日常的生活用具的控制工作已经完全足够了,当然它在这些生活用具中充当的是核心部分,相当于大脑。单片机还有一个优点就是抗干扰能力强,由于这点原因使得它和普通的电脑也有了一定的区别。单片机的运行需要把程序下载进去,而且下载进去的程序可以修改。通过下载不同的程序可以实现不同的功能,通过有些程序完成的功能,可能是其它器件不能完成的或者很难完成的。单片机编写的程序可以实现高智能,高效率,以及高可靠性。由于单片机的优势就在于它的成本,所以目前占优势地位的软件还是最低级的汇编语言,它是除了二进制机器码以高级一点,那为什么要放弃使用很多已经达到可视化水平的高级语言而用这么低级的东西呢原因就是单片机结构简单没有家用计算机那样的CPU,硬盘那么大的存储设备。单片机在硬件资源方面的利用率必须很高才行,所以汇编虽然原始却还是在大量使用。一样的道理,如果把巨型计算机上的操作系统和应用软件拿到家用PC上来运行,家用PC的也是承受不了的。单片机是相对与过去的单板机来说的,单板机是CPU、存储器、I/O系统独立的。单片机是集成在一块片子上。单片机先要会编显示、键盘输入、AD、DA其他都是这些的组合。STC89C52的实物图如图11所示图11单片机芯片自从20世纪70年代推出单片机以来,随着计算机技术的发展和在控制系统中的应用,单片机在家用以及实时监监控和智能仪表等领域得到了广泛应用。单片机的出现使计算机技术从通用型数值计算领域进入带了智能化控制领域,使得嵌入式以及计算机技术的因此得到了重要发展。13POTEL99介绍PROTEL99采用全新的数据库管理方式。PROTEL99是在桌面环境下第一个以独特的设计管理和团队合作技术为核心的全方位的印制板设计系统。所有PROTEL99设计文件都被存储在唯一的综合设计数据库中,并显示在唯一的综合设计编辑窗口2。PROTEL99和以前的版本差不多,在PROTEL99中画的原理图一般都比较容易看懂,因此也比较容易理解与学习,对设计系统拥有很大的帮助,PROTEL99的内部界面与PROTEL98大体相同,不同的是增加了一些新的功能模块。PROTEL99采用了先进的技术使得PROTEL99中有一套完整的绘制原理图的工具,有了这套工具可以准确的绘制模型分析板,使用户对系统有更加深入的理解,只能更加用户设计成功的可能性。因此PROTEL是一个为设计做铺垫的工具。同时PROTEL99的友好界面使得用户很快就学会如何操作,方便用户查找到各种所需的工具。PROTEL99功能强大,含有庞大的元件库,即使找不到的原件,也可以使用它的绘图功能自制原件,这些都为我们设计电子电路的原理图以及印制板提供了良好的环境,因此在功能和特性上都比以前的版本更加强大。在PROTEL环境下可以把原理图分块,可以直观的看系统的原理图,方便用户对整个系统的理解。同时通过它自带的PCB制版功能,可以方便用户制造实物板。14KEIL介绍KEILC51一款基于C语言开发的软件,在很多功能上C语言有明显的优势,容易被用户看懂,不像汇编那样那样不易一下子看懂,通过C语言用户的学习更加容易了,C语言在可读性等方面具有很高的优势,所以C语言被广泛使用,这样KEIL也就被广泛使用。KEILC51软件有功能强大的调试工具,对用户调试代码有很大的帮助,在WINDOWS界面里面,还可以看到,与汇编比较一下就能体会到KEILC51的工作效率有多高,因此比汇编更加受人喜欢,同时KEIL含有强大的库函数也对用户学习有莫大的帮助。通过KEIL软件可以对代码进行仿真,同时通过它的断点调试功能可以对代码进行断点调试,方便用户对代码的理解,一下子使用户对整个系统的运行过程就了如指掌了。KEIL软件是众多单片机开发软件中比较优秀的一款软件,它可以编辑、编译以及仿真功能,KEIL软件友好的界面方便用户学习和应用,它在调试程序以及仿真过程中也有很强大的功能。15PROTUES介绍PROTUES软件是一款EDA工具软件。它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件,是目前最好的仿真单片机及外围器件的工具。PROTEUS功能强大,从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。它是世界上第一个能够做到几项工作都能进行的软件(包括PCB软件设计,电路仿真,虚拟模型仿真)其支持8051、HC11AVR、ARM、8086和MSP430等处理器模型,2010年即将增加CORTEX和DSP系列处理器,并持续增加其他系列处理器模型。在编译方面,它也支持IAR、KEIL和MATLAB等多种编译,由于支持的处理器比较多,加上支持的编译种类丰富,他也得到了世界上的广泛应用。PROTUS的EDA功能有(1)可以设计原理图(2)在PROTUS下进行人工或者自动布线得到PCB图(3)可以进行电路的仿真同时PROTUS含有丰富的资源(元器件资源,仪表资源等),这些都使其功能更加强大。通过PROTUS软件可以对系统进行整体仿真,方便在制造实物之前排除各种意外状况。PROTUS在产平开发,教学以及技能考评中都有重要的应用作用,PROTEUS是一个巨大的教学资源,可以用于(1)对模拟电路以及数字电路的理解与学习(2)对单片机以及嵌入式的理解以及学习(3)进行综合实验(比如说对于微控制器)(4)对于学生可以进行试验以及设计毕业设计(5)对于公司可以进行项目设计3在技能考评中易评估、易事实因此可以的应用有(1)PROTEUS能直观评估硬件电路的设计正确性(2)PROTEUS能硬件原理图直观调试软件(3)PROTEUS能验证整个设计的功能在产品开发中可以评估风险,便于项目管理与团队开发。第二章方案比较与论证本次设计开始的时候想到两种设计方案,方案一是把光电传感器装在滴瓶的瓶口,通过监测瓶口液体没有了便进行报警。方案二是把光电传感器装在输液管的聚液处,监测不再有液体或者一段时间没有液体经过便进行报警。21方案一方案一对滴瓶中的液体的液位进行监控该方案中通过光电传感器对滴瓶中的液体的液位进行监控,当没有液体时报警,该方案中光电传感器放出光束监控液面。当没有液体时没有来自液面的反射光从而进行报警。可以把光电传感器装在瓶口处)图22滴瓶22方案二方案二对滴管中的液滴进行监控,当滴管中长时间没有液体滴过,就认为是液体点完,从而报警。此方法是通过光电传感器放出光束对滴管的液滴监控,当一定时间没有来自液滴的反射光线时,便进行报警。(可以把光电传感器装在输液管聚液处)图23输液管23方案比较与选择对于上述两种方案,方案一需要把光电传感器装在点滴瓶上,方案二需要把光电传感器装在滴管上面,如果装在滴瓶上,就算是滴瓶中的液体没有了,滴管中还有很多,在实际医学应用中会会浪费药液,因此实际使用中较差。而方案二把光电传感器装在滴管上,检测一段时间没有液体流过,就会报警,由于滴管还能储存一点液体,完全来的及报警以后过去处理。因此方案二更好,贴近实际而且精度也高。因此本次毕业设计使用的是方案二。第三章液体点滴速度监控装置的理论分析与参数计算31液体检测检测是系统精度的关键部位,检测不准确将影响系统的控制精度。因此在选用检测部件时应尽量减小检测误差,经过理论分析与实验,选用了回归反射型与扩散反射型光电传感器以达到检测精度。311检测原理光电液体检测其主要利用光在通过介质时产生的反射和折射现象来改变光的方向和光量的大小来实现的。回归反射型光电传感器是将投光器同受光器按一定角度关系封装在同一传感器壳内。投光器发出的光束需经反射板反射至受光器,受光器通过检测射入光量的多少来判断物体的有无。由于红外光在通过液体时伴有反射与折射现象同时对红外线有一定的吸收作用,故从投光器发出的光束经过被测介质后再反射回来的光通量大大削弱,从而可判断出液体的有无,如图31所示。31液位监测原理扩散反射型光电传感器的投光器与受光器同样封装在一起,只是没有反射板配合其工作。液滴检测的原理图如图32所示。当投光器发出的光线遇到液滴时,将通过液滴表面的反射作用把光线反射给受光器,从而来判断物体的有无。通过这两种传感器的不同工作原理可对不同物理量进行有效的检测,从而满足题目的基本要求。图32滴速检测原理图312液滴速度的检测液滴速度的检测原理主要是检测一滴液体的经过了几个定时时间,因此只要把一滴除以一滴液体经过的定时次数而计算出的定时的时间(定时时间可以由定时的次数计算出来,该设计中定时一次时间为10MS)图33液滴检测示意图313液滴累计液滴的累计主要是通过单片机的中断口来产生的,每一次滴液便产生一次中断,然后计数,如此累加上去。32影响测量精度的因素分析本次设计主要采用的是光电传感器来监测滴管聚集液体的地方,而影响测量精度的因素也有很多,比如1如果滴管中的液体滴的比较快,呈现出水柱状,那么使用光电传感器就不能测出液体的流速,也就是不能使用图33所示的原理来实现测滴速,会使测量不准确,因此必须保持液体呈现水滴状。2必须把滴管竖直不曲折的放置,这样就不会出现因为滴管曲折而导致液体时而流动时而不流动而产生误差报警。33系统设计思路该系统的设计主要是采用光电传感器来检测滴管聚液处的液体流速,因此把光电传感器放置在滴管聚液处。然后把检测结果送入单片机的中断口,单片机则是充当了中枢环节,报警电路则使用蜂鸣器来实现,通过液体监测的结果来判断是否报警。该设计的按键部分则是用来实现异常状况出现的时候是否报警,以及出现多长异常状况的时候进行报警。因此设计4个按钮分别实现进入设置界面、异常报警时间上调、异常报警时间下调、以及是否异常报警。第四章液体点滴速度监控装置硬件电路设计硬件电路主要分为检测电路、按键电路、显示电路、报警电路以及时钟震荡电路五个部分。通过该五部分的结合组成了液体点滴速度监控装置。41系统硬件框图本设计次用STC89C52单片机为核心,通过外部的光电传感器来实现外部中断,每次中断便通过单片机的定时器/中断器来计算中断次数也就是中断时间,从而实现速度的监控,以及异常的报警,然后采用动态扫描来实现LCD动态显示,同时还能够使用按键来改变报警时间,液体点滴速度控制系统的系统框图如图41所示图41液体点滴速度控制系统的系统框图这个系统通过STC89C52单片机来协调整个系统的工作,光电传感器电路用于监测来自外界的信号送入单片机。按键电路用于设置不同的参数来控制异常报警以及是否异常报警。显示电路通过LCD显示当前的液体速度,以及液体的累计滴数。42单片机主机系统电路421STC89C52单片机介绍本次毕业设计采用STC89C52单片机,是一种低功耗、高性能单片机,由于做了很多的改进,因此它的性能比51单片机更加强力。如图42所示图42STC89C52芯片引脚图STC89C52单片机具有很多优点,首先由于其价格在各类型号的单片机中价格比较便宜,因此使用也比较广泛,其次它自身也存在许多优点,比如它支持在线下载程序,编程简单,因此适合初学者使用,概括来说这种优势就是可以用串口直接下载程序,不用ISP下载器。STC89C52拥有比51单片机更加强的性能1C系列的单片机没有看门狗,S系列的有看门狗,看门狗可以有效防止程序进入死循环。2STC89C52片内程序存储器4K字节,数据存储器128字节。AT89C52片内程序存储器8K字节,数据存储器256字节,AT89C52可存储更多程序。3STC89C52有两个定时器,6个中断源。AT89C52有三个定时器,8个中断源。STC89C52单片机有3个16位定时器/计数器(T0,T1,T2),4个外部中断,它是全双工串口,由于做了很多改进,所以它有的功能51单片机而没有。同时STC89C52单片机具有8K字节的程序存储空间以及512字节的数据存储空间以及期内带的2K字节的EEPROM存储空间,它的工作电议一般为33V到55V,工作频率一般为0到40MHZ,综上所述,它是51型单片机的改进加强型。STC89C52单片机的引脚可以分为11个部分,各个部分引脚功能的介绍1VCC电源电压。2GND地。(3)P0端口有七个口即P00P07口,所在的引脚为3932。P0口可以作为单片机的输出端口,每个引脚能驱动8个TTL负载,当P0为1时,可以看作是高阻抗输入。此外P0口也可以提供低8位地址和8位数据的复用总线,此时P0口内部上拉电阻有效。在FLASHROM编程时,P0端口接收指令字节,而在校验程序时,则输出指令字节。(4)P1端口即P10P17口,所在引脚为18引脚。P1口可以作为I/O口,而且它内带上拉电阻。P1口通过它的输出缓冲器驱动4个TTL。当用作输入口时,对端口写入高电平时,端口会变为高电位,主要是由于上拉电阻的缘故。当P1口作输入口时,有些引脚也会有电流流过。此外,P10和P11还可以作为定时器/计数器2的外部技术输入(P10/T2)和定时器/计数器2的触发输入(P11/T2EX),具体参见下表41在对FLASHROM编程和程序校验时,P1接收低8位地址。表41P10和P11引脚复用功能引脚号功能特性P10T2(定时器/计数器2外部计数输入),时钟输出P11T2EX(定时器/计数器2捕获/重装触发和方向控制)(5)P2端口即P20P27,所在引脚为2128。P2口是一个带内部上拉电阻的8位双向I/O端口。P2是通过它的输出缓冲器驱动4个TTL的输入。对端口写入1时,通过其内部的上拉电阻把端口变为高电平,P2口在这时候可以用作输入口。P2作为输入口使用时,由于上拉电阻的原因,那些被外部有些引脚会有电流流过。在对FLASHROM编程以及程序校验期间,一些高位地址和控制信号也可以由P2口进行接收。P3口可以作为一般的I/O口,这功能和其他I/O口的功能相同,不同的是还具有复用功能,P3口的复用功能如表42所示表42P3口引脚的复用功能4引脚号功能P30串行输入口即RXDP31串行输出口即TXDP32外部中断0P33外部中断1P34定时器0的外部输入即T0口P35定时器1的外部输入即T1口P36外部数据存储器写选通P37外部数据存储器读选通(6)RST即9引脚。起到复位输入的作用。RST起作用是在当输入连续两个机器周期以上高电平时进行复位,因此RST主要用来完成单片机的复位初始化操作。RST引脚复位高电平有效。(7)ALE即30引脚。ALE表示地址锁存控制信号,它是访问外部程序存储器时,锁存低8位地址的输出脉冲。在一般情况下,ALE以晶振六分之一的固定频率输出脉冲,可用来作为外部定时器或时钟使用。特例是,在每次访问外部数据存储器时,ALE脉冲将会跳过。(8)VPP即31引脚。访问外部程序存储器控制信号。为使能从0000H到FFFFH的外部程序存储器读取指令,必须接GND。注意加密方式1时,将内部锁定位RESET。为了执行内部程序指令,应该接VCC。在FLASH编程期间,也接收12伏VPP电压。(9)PSEN即29引脚。外部程序存储器选通信号。当STC89C52RC从外部程序存储器执行外部代码时,在每个机器周期被激活两次,而访问外部数据存储器时,将不被激活。(10)XTAL1即19引脚。它是振荡器反相放大器和内部时钟发生电路的输入端。(11)XTAL2即18引脚。它是振荡器反相放大器的输入端。422单片机主机系统设计单片机主机系统电路主要由时钟电路和复位电路构成。如图43所示。时钟电路采用内部震荡的方式,结构简单,所得的时钟信号稳定,采用并联谐振电路分别用电容C2和C3与单片机的XTAL1和XTAL2相连,谐振频率设定为110592MHZ。复位电路本设计采用的是手动复位和上电复位组合方式,开始时RST处于低电平而正常工作,当按键按下的时候,开关导通(是通过上电复位实现,每次上电便进行复位)这个时候电容两端形成了一个回路,电容被短路,所以在按键按下之后,电容开始释放之前充的电量。复位后系统将I/O口寄存器置为0FFH,堆栈指针SP置为07H,SBUF内置为不定值,其余的寄存器全部清0。图43单片机主机系统电路43按键输入电路按键电路主要设计成4个按钮,如图44所示,按钮的功能为KSET按钮使系统进入SET界面KUP按钮设置异常报警的时间上调KDN按钮设置异常报警的时间下调KON按钮设置是否启动报警功能图44按键部分按钮的实物图如图45所示图45按钮44液晶显示441LCD1602介绍LCD1602是工业字符型液晶,它能同时显示32个字符,内涵复位电路,可以进行清屏、字符闪烁、光标闪烁、显示移位等多种功能。LCD实物图如图46和47所示图46LCD1602实物图正面图47LCD1602实物图反面LCD1602的引脚如图48所示图48LCD1602引脚图由图48所示,LCD1602有16个引脚,16个引脚各具有不同的功能,以下是16个引脚的不同功能第1脚VSS,是电源地第2脚VCC,是5V电源正极第3脚V0,为液晶显示器对比度调整端,可以接正电源和地电源,分别得到对比度最低以及对比度最高。第4脚RS为寄存器选择,分为高电平和低电平,高电平时作为选择数据寄存器,低电平时作为选择指令寄存器。第5脚RW为读写信号线,分为高电平和低电平,高电平和低电平分别表示读和写操作。第6脚E端,为使能信号端,高电平时读取信息,负跳变时执行指令。第714脚D0D7,为8位双向数据传输端,用来传输显示的数据。第1516脚空脚或背灯电源,15脚表示背光正极,16脚表示背光负极5。LCD1602显示屏的内部指令有11条,11条指令代表不同的功能,它的指令表如图49所示图49LCD1602内部指令表指令1清除显示指令,返回00H指令2复位光标的指令,光标返回到00H指令3光标以及显示模式的设置(主要控制光标以及显示文字的移动方向)指令4表示显示开关控制。总共含有3个部分,D、C和B都有低电平和高电平之分,D、C和B分别表示控制整体显示、控制光的开关以及是否闪烁。高电平时,D表示开显示,C表示开光标,B表示闪烁。低电平时D表示关显示,C表示关光标,B表示不闪烁。指令5光标以及显示的移位(高低电平分别移动文字及光标)指令6设置功能的命令(也有高低电平之分)指令7字符发生器随机存储器的地址设置指令8双倍数据速率的动态随机存取存储器地址的设置指令9显示是否忙碌,高低平表示忙碌,低电平表示空闲,而且高电平时双行显示N,低电平时单行显示F指令10写入数据指令指令11读出数据指令442LCD1602与52单片机相连接LCD模块以及单片机模块,分别如图410,411所示图410LCD模块图411单片机与LCD相连部分443LCD1602显示设计LCD内部地址如表43所示表43LCD1602内部地址滴速系统显示电路(如图412所示)LCD1602主要显示液体滴速,累计滴数,以及报警是否打开。图412系统显示电路45报警电路报警电路采用蜂鸣器报警,如图413所示,对异常状况进行报警。报警电路原理图如图414图413蜂鸣器实物图图414报警电路原理图图中三极管主要是做驱动用的。因为单片机的IO口驱动能力不够让蜂鸣器发出声音,所以我们通过三极管放大驱动电流,从而可以让蜂鸣器发出声音,当输出为高电平,三极管导通,集电极电流通过蜂鸣器让蜂鸣器发出声音,当输出低电平时,三极管截止,没有电流流过蜂鸣器,所以就不会发出声音。46光电传感器电路本次设计主要采用的是型号为CX24的光电传感器,该光电传感器性能良好,因此适合用于该毕业设计,CX24光电传感器的特点是1小型体积22个传感器可贴近安装3防水效果好4超群的穿透力,可不受灰尘和污垢的影响5受外部光线的影响比较小CX24光电传感器实物图如图415所示图415CX24光电传感器实物图光电传感器与单片机相连原理图如图416所示图416光电传感器与单片机相连原理图光电传感器主要与单片机的中断口相连,当一滴液体进过光电传感器便产生一次中断,并送入到单片机的INT0口,便产生一次中断然后开始计算液体点滴的速度,每一次中断就计算一次,如此循环下去。第五章液体点滴速度监控装置系统软件设计51系统主程序流程图图51是系统的主程序流程图,该系统处于循环状态同时,吧光电传感器检测的信号送入单片机的P32中断口,然后通过单片机的定时器/计数器以及相关的内部计算显示当前液滴的速度以及累计滴数,通过判断还可以对异常状况实现报警处理。图51系统主程序流程图52初始化程序把初始的液滴速度、累计滴数设置为零,以及把报警设置为开状态,把异常报警间隔设置为1000(单位为10MS)INCLUDE“CONFIGH“UINT32ULCOUNT0/累计多少滴UINT16UIPPM0/滴/MINUINT8UCBUZZERON1/报警ONUINT16UIBUZZERTIMER100053中断程序硬件中断又分为外部中断和内部中断,外部中断一般是指由计算机外部设备发出的中断请求,比如键盘的中断、打印机的中断、定时器的中断等,通过光电传感器以及定时器产生的外部中断服务子程序流程图,如图52所示图52外部中断服务子程序流程图该外部中断用来计算液体点滴的速度,以及累计滴数,以及结果输出等部分工作。中断程序代码如下初始化中断代码如下VOIDINTERRUPTINITUINT8UCINTERRUPT,UINT8UCTYPEIFUCINTERRUPT0IT0UCTYPEEX01ELSEIFUCINTERRUPT1IT1UCTYPEEX11EA1关闭中断程序代码如下VOIDCLOSEINTERRUPTUINT8UCINTERRUPTIFUCINTERRUPT0EX00ELSEIFUCINTERRUPT1EX10计算速度代码,以及滴数的代码VOIDINT_0VOIDINTERRUPT0ULCOUNTUIPPM6000/GETTIMERTICK0SETTIMERTICK0,0中断次数计算的代码如下UINT16GETTIMERTICKUINT8UCTIMERIFUCTIMERFAST_KEY_DELAYS_UCFASTKEYUCKEYVALUERETURNUCKEYVALUEELSE/FAST1UIDELAY0WHILESCANKEY0KEYDELAY1MS1UIDELAYIFUIDELAYFAST_KEY_RATERETURNUCKEYVALUERETURNUCKEYVALUE55显示程序要把液体点滴的速度和累计滴数以及报警开关的状态显示在LCD液晶显示屏上,当超过异常时间没有液体流过(假定初始异常间隔为10S)则产生报警,其中涉及一些计算速度的公式为1/中断时间速度。显示流程图如图54所示图54显示流程图显示代码如下读取LCD数据代码如下UINT8LCDREADUINT8X,UINT8YIFY1RETURN0IFX15RETURN0IFY0LCD_CHECKBUSYWRITECOMPORTLCD_SET_DDRAM_ADDR|XELSELCD_CHECKBUSYWRITECOMPORTLCD_SET_DDRAM_ADDR|0X40XLCD_CHECKBUSYRETURNREADDATAPORT写LCD数据代码如下VOIDLCDWRITEUINT8X,UINT8Y,UINT8UCDATAIFY1RETURNIFX15RETURNIFY0LCD_CHECKBUSYWRITECOMPORTLCD_SET_DDRAM_ADDR|XELSELCD_CHECKBUSYWRITECOMPORTLCD_SET_DDRAM_ADDR|0X40XLCD_CHECKBUSYWRITEDATAPORTUCDATAUILCD_XX1UILCD_YYRETURN从X,Y的右下方显示字符串,X点后移,代码如下VOIDDRAWTEXTUINT8X,UINT8Y,UINT8PUCSTRGOTOXYX,YWHILE0PUCSTRLCDWRITEGETX,GETY,PUCSTRPUCSTRRETURNLCD清屏代码如下VOIDLCDCLEARVOIDLCD_CHECKBUSYWRITECOMPORTLCD_CLEAR_DISPLAYUILCD_X0UILCD_Y0RETURN56延时子程序延时子程序的作用是是显示屏在初始化的时候延迟一段时间,防止显示屏初始化出现错误。在按键部分也能起到去抖动的作用,如果按键部分不去抖动,会导致连续按下好几次的负面效果,因此按键部分必须采用延时去抖动。延时程序的代码如下所示VOIDSOFTDELAYUINT16MSWHILEMS0SOFTDELAY_1MSMSVOIDSOFTDELAY_1MSVOIDUINT16DATAIFORI110I0I第六章液体点滴速度监控装置仿真与实现61软件仿真软件调试先后分别进行了KEIL调试,以及PROTUS调试。本设计可以实现的软件仿真是KEIL软件仿真调试,PROTUS软件调试,而PROTEL只能当做原理图来进行配合理解。612KEIL软件仿真在KEIL中进行C语言的编程,把程序写好并调试,直到运行无错并且成功为止,然后自动生成HEX文件,KEIL调试图如图61所示图61KEIL调试图由图所示便可得到仿真出现零个错误,并且生成了HEX文件如图62所示,从而实现了KEIL的调试,并且为PROTUS调试做好了准备。图62软件烧录的HEX文件612PROTUS软件仿真先在PROTEL软件中画出其原理图,然后在PROTUS中根据PROTEL的原理图画出其布局,确保在PROTUS下的仿真图没有误差,由于没有光电传感器,可以模拟一个信号代替光电传感器接收的信号。把KEIL仿真烧录生成的HEX文件放入PROTUS软件原理图中的单片机中的PROGRAMFILE中,如图63所示图63放置HEX文件到PROTUS中的单片机中然后点击PLAY按钮就可以开始仿真,仿真结果如图64所示图64PROTUS仿真截图62硬件实现621元器件清单元器件清单如表61所示表61元器件清单元器件数目(个)单片机STC89C521三极管1110592MMHZ晶振133K电阻1330电阻210K电阻110UF电解电容1100UF电解电容130PF电容2电阻排1电位器2发光管1二极管2液晶屏LCD16021按键4电路板1按钮开关1三极管1蜂鸣器1TTL接口1管脚座1CX24光电传感器1可变电阻1三端稳压器1622制做实物版经过KEIL编译以及PROTUS仿真之后就可以根据PROTEL原理图焊接制作实物图如图65所示。图65焊接完成后的实物图623软件烧录程序运行运行成功以及仿真成功后把在KEIL中编译生成的HEX文件通过专用的烧录软件经过串口转USB接口送入单片机,然后进行下载,图65为软件烧录过程。图65软件烧录过程624运行与显示把实物接上电源进行运行调试,显示如图66所示图66运行显示图63测试结果与误差分析为了保证测量结果的准确性,对该系统进行了多次测量,第一次把滴管中的液体流速控制在60P/MIN然后保持各项设置不变分别再做四次测量,并且五次测量分别在一天中的不同时间段进行,所得结果如表62所示表62实际测得的液体点滴速度以及累计滴数组数实际点滴速度(P/MIN)一分钟实际累计滴数P报警(开状态)1(对照组)6061否26365否36062否45630是55655否由上表可知当设置初始速度为60P/MIN时,理想状态下一分钟应该有60滴液体经过光电传感器检测路径,而且速度为60P/MIN的时候也没有两滴液体之间超过10秒没有液体经过,因此不会报警。实际操作的时候发现虽然没有改变各项设置但是再次开启装置测试的时候,每分钟的滴数已经不一样了,而且滴数也不一样。第二、第三、第五组数据基本与第一组相似,因此可认为测试成功,但也存在误差,误差来源(1)由于测试的时候在不同时间段,因为光线原因可能导致点滴的计数产生误差。(2)可能由于检测的时候抖动人为原因不能完全接近理想状态。第四组的误差比较大,主要原因是因为,滴管曲折,导致一段时间没有液体流过而产生异常报警。63设计过程中的问题及解决问题一在PROTUS仿真时,由于PROTUS中不含有电传感器,因此不好仿真。解决方法可以在传感器接口加一个模拟信号来代替传感器信号,可以改变信号的频率来模拟传感器信号的变化。问题二本次设计主要存在的问题是不知道到底把光电传感器装在滴管还是滴瓶面,后来经过仔细,如果装在滴瓶上面,滴瓶的弧形口不适合装光电传感器,即使装上也不精确,但如果不装在弧形口,装在滴瓶中间或者中间一下部分,那么虽然试验时是可以的,但是在实际中这样就会浪费光电传感器安置部分以下的液体,因此部分和实际需求,这次毕业设计就是要体现实际,接近现实,因此这点不符合。同时装在滴瓶的,就不能精确的对液体流速进行报警,因为滴瓶直径较大,也为变化不明显,因此不合适。解决方法主要是把光电传感器安置在滴管的聚液处,在那里可以检测一滴滴的液体流过,因此适合计算速度值,也方便累计液体滴数,而且实际应用中也可以节省药液。第七章优化及改进71系统的问题711速度过快问题该系统存在的主要问题是不能对液体点滴速度过快时进行报警,即使能够报警,也不能对一个准确的水柱装的流动速度进行报警,当点滴呈现水柱状时,就无法准确测出点滴的速度,以及无法累计点滴数,该系统就会出现一个漏洞。712无速度控制装置该系统缺少一个速度控制装置,无法自动改变其速度,因此智能化水平还不够高。无法完全摆脱无人照看的情况。实际应用的时候还要根据液晶屏显示的当前速度来手动调节液体点滴的速度。72系统的改进方法对于以上问题,首先速度过快问题的解决方法可以修改程序,当呈现水柱状时便进行报警,这样便可以排除速度过快而没有进行报警的异常状况。其次对于没有速度控制装置,可以使用一个步进电机对滴管速度进行控制,使用步进电机的转动挤压管子从而改变液体的流动速度。这样便可以设定一个速度值便通过步进电机自动达到设定的速度值。通过改进便可以使系统对速度过快进行报警,也可以对速度过慢进行报警,而且能够自动调节速度到预定的值,因此智能化水平大大提高。参考文献1张琳果园枝条营养钵成型工艺及装备研究J河北农业大学学报20122隆良梁等浅谈单片机虚拟实验室的组建科学时代(上半月)20113“2010年全国PROTEUS应用技木研讨会“征文通知电子技术应用,2009年4于艳军LONWORKS技术在列车运行安全监测系统中的应用西南交通大学20085杨永等基于MSP430F247的温湿度测量仪器的设计与实现科技信息2009

温馨提示

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

评论

0/150

提交评论