版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 本科毕业设计说明书(论文) 第 PAGE 41 页 共 35 页1 绪论(xln)1.1 课题(kt)背景如今中国的经济发展迅猛(xnmng),人均收入普遍提升,这使得人们在追求生活品质方面有了资金的保障。伴随着科学技术水平的显著发展,智能家电逐渐被人们认可,并很快与人们家庭的日常生活紧密相连。由于罐装液化气以及地方管道燃气价格的增长,而城镇居民所使用的家用电却很便宜,这使得多数家庭纷纷转向比较经济便利的电器产品。据统计我国约有82.5%的城镇居民在使用热水器,约46%的城市居民家庭里表示有购买热水器的计划,市场平均一年需要1000多万台热水器维持其运行1,除太阳能热水器制造商外,规模可观的
2、热水器制造工厂也接近有200家。从这一点可以看出热水器在中国市场有着广阔的前景,但我们也不得不面对其产生的诸多问题,如漏电,环保等。这些年,电热水器发生漏电危害用户甚至致用户死亡事件频繁发生,消费者所考虑的已经从热水器的便利性问题转向其安全性问题,因此对热水器性能的改善是目前的首要问题。随着我国人民所积累的财富越来越大,人民在追求物质生活和精神生活方面相对以前有了巨大的心理变化,花样翻新的智能家用电器逐步进入家庭生活的每个角落,家庭日常生活必需品热水器的品种更是数见不鲜,正是在当今人民生活质量有巨大变化的情况下,本课题选择基于STC89C51单片机的电热水器控制器的设计。1.2 课题研究的目的
3、及意义本设计是为了满足用户安心、便利大众、安全可靠的需要而设计出一款经济、精准,实现控制要求的电路。 (1) 单片机做为控制核心,即能实现所要求的目的,又缩小了设计的成本,使得到的热水器安全便利。 (2) 键盘电路的应用,可以方便用户根据自己的需要调节水温,从而增加了热水器的可操作性。 (3) 当温度过高时实施保护,能有效避免热水器干烧而发生意外事故。 (4) 有安全(nqun)保护(boh)功能(gngnng),可实现自动断电,使用户能放心享受沐浴,保证用户的安全。1.3 国内外研究成果及发展状况国外对智能电热水器的研发开展的比较早,追溯到19世纪70年代,那时在国外就对热水器开展研发,经过
4、100多年的努力,涌现出许多性能优良的产品,西门子智能电热水器,采用最新的计算机控制技术,保证出水温度恒定,让用户可以真正享受到沐浴带来的酷爽。西门子家电集团在西门子电站技术的防漏电安全技术的基础上,研发了独特的德国安全专家模式功能2,这种模式不但具有正常的防止漏电的功能,而且还能自测电流是否会对人体造成危害,时刻工作检测防漏电系统是否运行正常,这使得个体和电源完全分开,防止事故发生。随着樱花电热水器室内信息精确定位系统的应用,打破了旧式的只能够单一时间段实现节能的模式,其工作过程越来越人性化,系统可以自主记录、分析用户一段时间(一个月)的用水量,然后选择一种相对节能的模式为使用者提前备好热水
5、,实现了24小时都可以节能供水的要求2。先进的智能中温保温系统,完全填补了旧式的弊端,依据用户设定理想的温度、外界环境、所处的季节等因素的不同,系统会自主选取最为经济节能的保温状态,防止因恒定的中温保持技术产生巨大的温差造成本来可以避免的浪费,并可以减少加热时间,彻底实现了节能的功效。我国对电热水器开展研发已经比西方发达国家晚了几十年,20世纪60年代的热水器在中国对国人来说属于闻所未闻的稀有高档产品,周总理的出国访问带回了两台日本生产的燃气热水器,总理希望这一产品在中国能普及,并多次督促有关部门制定热水器研发方案。由于种种缘由这一要求一直没有被执行,20世纪80年末90年代初历经十余年的努力
6、热水器终于进入中国市场2。很快热水器在中国得到普及,随着科技的发展,国内热水器经历了好几代的更新,每次更新的产品其性能都有很大提升,在产品使用的便利性和舒适度等方面都有了很大的改良。现在许多热水器都具备恒温保持功能,燃气不流出时热水器会自动停止工作,水量高于设定值时会自动泄压处理,此外还有安全防护功能,暂时停气时,仍有储存的热水可供使用。随着智能化程度越来越高,将来的产品将带来更多的益处,然而更加的便利和节能却是制造商始终追求目标。将来的产品会根据使用者的习惯提前加热,方便使用者随时享受沐浴,不用时自动开启中温保温模式,系统依据用户所设定的理想目标温度得到可以实现有效节能的保温温度,缩小热水器
7、表里温差,可大大减少因保温问题而增加的加热次数,确实做到不用拔掉热水电器插头却更省电的功能2。将来的电热水器将会往更加(gnji)的人性化,智能化方向发展,人们会感受到热水器带来无尽(w jn)的便利。1.4 本文内容(nirng)安排本次设计的主要任务是设计出在单片机的控制下电热水器能实现设计要求的功能。本次论文一共有五章内容,顺序如下:第一章为绪论,主要对热水器的发展概况进行了详细的介绍。第二章为系统分析,分析出系统需实现的功能,并依据相关要求选择合适的器件。第三章为系统的硬件设计,主要对系统原理图进行分模块设计与介绍。第四章讲述了单片机控制下的电热水器的软件设计,从系统的工作流程上设计和
8、编写相关程序。第五章为系统在上电运行后的测试结果与简要的分析。2 设计方案设计(shj)方案(fng n)便是基于(jy)主体的要求对系统的硬件电路和软件程序进行相关的设计策划,并选择其中最理想的解决方案去实现目标。硬件设计就是通过对设计要求进行分析,了解各独立元器件,它包括对各种元器件的引脚和发展状况的了解,以及对各种元器件在具体电路中使用时具体连接方法的了解,便于设计顺利进行,同时需要合理规划这些元器件的布局,焊接在电路板上时能够实现空间利用率的最大化。软件设计是通过编程使得设计方案更加的直观,方面用户了解系统的具体工作流程。2.1 设计要求本设计是制作一套基于单片机控制的电热水器控制系统
9、,根据人的需要让电热水器能迅速、稳定的达到所设置的温度,以体现本系统的独特优势。2.2 总体方案设计 具体方案设计的思路如下:首先用系统按键来设定水温上下限值,然后用温度传感器采集实际的水温值,通过采集得到的温度值与设定的温度值进行比较,决定系统的工作过程。如果采集的实际水度低于设定的温度值,则加热器会持续工作,当实际水温高于设定上限温度时,蜂鸣器报警,加热器立即暂停工作,通过键盘设定的温度值和温度传感器采集的实际水温值可以通过数码管直接显示3。根据系统功能分析,基于单片机的电热水器控制器的设计主要包括MCU核心控制模块,外围由用户设定温度的按键模块,温度传感器温度采集模块、电源时钟复位模块、
10、加热模块、LED显示模块,报警电路模块组成3,其系统总模块框图如图2.1所示。 温度检测按键输入电源单片机蜂鸣报警LED显示加热控制图2.1 系统(xtng)模块图 (1) 微控制器控制(kngzh)模块(m kui)微控制器的俗名叫单片机。它是将计算机的CPU、一定容量的程序存储器和数据存储器、定时计数器、多种I/O接口和其它一些外围电路集成在一块芯片上,形成的芯片级的计算机3。MCU为控制的核心,整个系统,以及系统外围设备的操作都是由它支配实现的。 (2) 复位模块 初始化单片机,清除单片机在上一轮工作里缓存的数据与程序,便与单片机稳定工作。 (3) 键盘设定模块键盘电路使用主要目的是为了
11、便于操作者设定和修改所需的温度。下文有具体温度设定的过程。 (4) 温度测量模块 检测温度模块,使用温度传感器来采集温度,采集到的温度值通过I/O口发送给单片机,单片机控制LED显示模块显示对应温度。 (5) 加热模块当温度传感器采集到的温度低于或高于设定值时,单片机会控制继电器工作进而控制加热模块,启动或停止加热器。(6) LED显示模块系统将温度(wnd)传感器检测的温度通过数码管显示,便于操作者直接观察水温的变化。2.3 主要(zhyo)元件介绍(jisho)本课题设计中核心元件的是单片机,所以选用合适的单片机是设计智能电热水器的关键,最终能否按照操作者的意愿实现相应功能都要看单片机能否
12、与外设之间进行稳定的信息交流。所以本设计的当务之急是要根据系统的控制要求选择合适的单片机,然后再根据系统设计的功能要求选择性能优良的其它元器件。2.3.1 STC89C51单片机单片机是一种集成 HYPERLINK /view/134362.htm t _blank 电路芯片,是一个体积很小功能却相当完善的 HYPERLINK /view/1130583.htm t _blank 计算机系统。当前在电子产品中使用的单片机数量和种类都很多,所以对于单片机类型的选择至关重要。选择单片机时需各个角度去分析考虑,如单片机将要应用的场合、外界环境以及单片机本身存储器的容量、软件编写是否简单等4。因此,在
13、单片机芯片在选择时需要考虑其是否具备以下主要性能: (1) 集成化度高,体积小,可靠性高 单片机把功用各异的元件集成在一块晶体芯片上,具有相当高的集成度,在体积上也就小很多。芯片本身是在严格工业测试条件要求的条件下研发的,片内元器件排列紧凑,其抗干扰性能比普通的中央处理器要高出很多。单片机中所有的数据和程序等固化在程序存储器中,很难因受到外界的因素而改变,片内存在着众多信号通道,故其抗干扰性能极高。 (2) 控制功能强 为了能够达到对目标的控制要求,单片机的指令系统拥有极其丰富的功能5:分支转移功能,输入/输出口的逻辑操作和位处理功能,十分适合特殊的控制系统。 (3) 工作电压低,相应的功耗也
14、非常低,易于小体积实用产品的生产 大多数单片机工作电压仅约为1.8V3.6V,其电流也很小,仅约为几百微安,所有其功耗很低,产品成型后使用寿命很长。 (4) 易扩展 单片机本身就是一个微型的计算机控制系统,片内元器件齐全,片外有大量可供扩展的三总线和串行、并行的I/O管脚,易于形成各类形式的计算机控制系统。 (5) 优异(yuy)的性价比 单片机的性能极高。精简指令集计算机流水线及数字信号处理等技术的应用(yngyng),为的是提升单片机的运行速率及效率。因为(yn wi)目前可应用单片机场合很多,所有市场对单片机的需求量很高,各大制造商为了能在当今这个异常激烈的市场竞争中脱颖而出,迫不得已降
15、低单片机成本,使其性价比极大极高5。 考虑到硬件设计与软件方案之间会相互作用的影响,所以应把二者结合在一起。综上分析,有以下两个方案:方案一:使用STC89C51单片机作为控制核心,其片内有4KB 的程序存储器存储空间,512字节数据存储器的存储空间,还带有2KB的EPROM存储空间,可以和MCS-51系列完全兼容,此单片机能够通过串口下载数据。方案二:使用AT89S51,芯片内具有4KB的RAM存储空间,256字节的ROM存储空间但是没有EPROM存储空间,其也可以和MCS-51系列单片机完美兼容。虽然两款单片机都能够达到设计的要求,但STC89C51与ATS89C51相比价格更低廉,且下载
16、更容易。考虑便利且经济的因素,所以本设计选择STC89C516。其相关功能如表2.1所示,塑料直插式封装如图2.2所示。主要功能特性兼容MCS51指令系统8KB的可反复擦写动态数据存储器32个双向输入输出接口2048位内部程序存储器3个16位可编程定时/计数器中断时钟频率为0-24MHz两个串行中断可编程通用异步收发传输器串行通道超低能耗空闲与掉电模式通过软件设定休眠与唤醒功能表2.1 STC89C51主要功能表 图2.2 STC89C51封装图2.3.2 DS18B20传感器众所周知传感器在当今的检测(jin c)技术中有着不可撼动的重要地位,虽然计算机对数据进行运算的能力已经十分高超,却不
17、能对真实存在中的非数字量进行处理7。倘若没有各式各样的精准稳定的传感器对物理量和模拟量进行检测,并将检查结果传输给计算机,那计算机失去它重要的作用。传感器可以将非电量(dinling)转变为电量,再将得到的电量进行信号放大,转换为相应的数字量传输给计算机,最后通过计算机对数字量进行分析处理。传感技术与计算机技术交叉结合,在自动化和信息化技术领域起重要作用7。各种传感技术与微处理(chl)技术的应用可以简化不同工业生产测量控制和检测过程,可以精确判断出产品的性能,并第一时间检查出存在的危害。由于系统大多会在相当严酷的环境下在工作,而对采集目标要求却相当高,所以对性能是否优良的传感器的选用是决定系
18、统是否能完成严格工作要求的关键。DS18B20恰是沿着这种高精度、多功能、总线标准化、可靠性及安全性极高、研究单片机测温系统等先进控制方向快速发展7,DS18B20作为温度检测设备在人们的家庭起居和工农业生产等方面早已得到普遍的使用。由达拉斯公司(n s)制造的 DS18B20温度传感器芯片外部配有金属保护管封装,具有高耐磨性,具有各式各样的封装组成,其体积小,容易(rngy)使用,适合应用在各类狭窄领域的测温和监控。具备独有的单线接口方式,在与CPU相连时只需要(xyo)一条口线即可达到双向通讯功能;其检测温度的范围为 55125,自身测量温度的分辨率可达到0.5;多个并联使用时,可实现多点
19、测温功能;工作在直流35V电压下,使用时不需借助任何外围元件8。DS18B20除具备以上特性外还有如下特点: (1) 可以用程序来完成9到12位的数字读数;(2) 用户可以设定不容易变化的报警限值;(3) 当不小心将工作电压的极性接反时,自带系统电路可以使DS18B20不会因自身的温度太高而毁坏,芯片将进入保护状态暂停工作;(4) 转换速度相当高,在很短时间内就可以完成高位的温度转换;当单线总线上串接多个DS18B20时,可以形成多点测温的大规模温控系统9,其引脚如图2.3所示。图2.3 DS18B20引脚图 2.4 本章(bn zhn)小结 本章(bn zhn)对系统的方案设计需考虑(kol
20、)的因素以及重要元件的选择做了详细的介绍,本系统选性价比较高的STC89C51和性能稳定的DS18B20作为本次设计的关键元件,得到系统的架构图。3 系统硬件设计依照本系统(xtng)的总体设计方案,对各电路(dinl)组成部分(z chn b fn)进行分模块设计,主要包括单片机最小系统、键盘与显示电路、模数转换电路等,系统硬件结构图如图3.1所示。电源时钟复位电路DS18B20测温电路STC89C51单片机键盘设定温度电路加热器控制电路数字显示电路图3.1 系统硬件结构图3.1 单片机最小系统 单片机系统的拓展多数情况下在其小系统的基础上进行拓展的。最小系统指的是单片机中的一个真正可用的最
21、小配置系统10。对于STC89C51单片机,因为单片机内部带有ROM,所以只需要在单片机外部对应引脚上连接一个时钟电路与一个复位电路就可以实现最小系统了,如图3.2所示。 图3.2 单片机最小系统(xtng)电路 在单片机的引脚XTAL1和XTAL2上对应(duyng)接上微调电容(dinrng)与晶振,这就行成所谓的时钟电路。图中,用电容C1、C2来限制振荡频率以及协助振荡器起振,一般取范围在20pf60pf的电容,30pf电容值是其具体的典型值。根据所选用的单片机类型的不同,晶振的频率范围也不同,本系统选用的是频率是12MHz的晶振。单片机运行前的必要准备工作就是复位。当单片机上电工作时,
22、首先要对单片机进行复位,系统有故障时也要复位单片机,这就需要所用系统的复位电路必须能做到精准工作。在本系统里应用的是最为容易的上电复位电路10,即微分电路,由一个电阻和一个电容串联而成。系统上电时,电容充电,电容充电的过程,系统进行复位,伴随着电容充电结束系统的复位也结束了,系统开始正常工作。因此,复位时间完全是由电阻值和电容值二者决定的。参考目前所使用的大量的复位电路,并在本系统实际电路调试后,最终,电容一选用22uf,电阻用1k的即可10。3.2 键盘设定与接口显示电路 在本系统里键盘电路的选用,其主要的目的是为了方便用户选择想要的温度值。12个按键构成矩阵键盘,09按键用于温度的输入和修
23、改。功能键,即“*”号键,一键多用,按一次功能键为“设定”温度,此时进入了温度的设定模式,再按一次功能键为“确认”温度,用于温度设定完成后的确定。“#”号键还没有进行定义,可用其来作扩展模块。12个键盘做成3*4的矩阵。设计时将键盘的4根行线与单片机的P2口的P2.0P2.3相连接,P2.5P2.7则与键盘的3根列线相连接11。 显示电路的接口显示有彩屏和数码管两个选择,考虑到成本,本系统选择了 LED数码管显示电路,此数码管使用的是4位共阳LED数码管,其段码从对应串口输出11,正常工作时,系统驱动三极管使其为数码管相应的段位供电,这时只要P0口有数字显示代码的发送信号,对应的数码管就会被点
24、亮,进而显示出对应的数字,数码管显示电路如图3.3所示。图3.3 数码管显示(xinsh)电路3.3 温度采集(cij)模块 采用(ciyng)数字温度传感器DS18B20,DS18B20为数字式温度传感器,无需其他外加电路,直接输出数字量,可直接与单片机通信,读取测温数据,电路简单。DS18B20与传统的热敏电阻相比,他能够直接读出被测温度并且可根据实际要求通过简单的编程实现912位的数字值读数方式,并且从DS18B20读出的信息或写入DS18B20的信息仅需要一根线,因而使用DS18B20可使系统结构更趋简单,可靠性更高。他在测温精度、转换时间、传输距离、分辨率等方面带来了令人满意的效果1
25、2。3.4 加热器控制电路该部分在本系统设计中采用日常家庭常用的热得快来代替真实电热水器中的加热器,并配合继电器的使用来实现给水加热的效果,将热得快中的一根导线剪断,得到的两根端子分别与继电器对应的COM口相连接,构成闭合回路,当DS18B20采集到的温度值低于设定温度,这时单片机的引脚发出一个低电平信号给继电器,继电器的常开触点闭合,加热器工作,为水加热,当温度达到对应设定的水温时,温度传感器会将这一温度信号通过一系列部件的转换与传递,最终到达单片机,单片机控制继电器停止工作,进而控制加热器停止加热13,图3.4为电磁继电器的具体原理图。图3.4 电磁(dinc)继电器原理图3.5 报警(b
26、o jng)电路热水器一般工作在比较潮湿(chosh)的环境下,为了确保用户的安全,所采用的系统必须具有防漏电检测功能。在热水器正常工作时,流经报警电路对应的磁环电流的大小相等,方向相反,则磁环检测线圈中不存在因感应而产生的电流信号,漏电检测集成电路系统就会输出一低电平信号13,而当系统发生漏电情况时,由于流经磁环的电流大小不均衡,因此在磁环检测线圈里会因电磁感应而产生对应的漏电信号,此漏电信号再通过集成电路的放大,输出高电平信号,再由三极管的倒相作用将信号发送给单片机,单片机在判断得知系统存在漏电情况后,会立刻让加热器暂停工作、保温和键盘操作也会被暂停执行,结束本次程序并通过蜂鸣器发出连续的
27、报警警示。如果发生漏电保护和自我检查不达标的情况,只能通过切断电源在修复故障之后,重新连接电源系统才能恢复正常工作13,图3.5为报警电路原理图。图3.5 报警(bo jng)电路3.6 系统硬件(yn jin)结构原理图系统的各个(gg)模块,在单片机的联通下整合为以完整系统,其具体原理图如图3.6所示。图3.6 系统硬件原理图3.7 本章小结本章主要对基于单片机的电热水器控制器设计的硬件核心部分,硬件原理图进行分块详细介绍。4 系统软件设计系统(xtng)的软件设计主要(zhyo)对包括(boku)主程序,键盘扫描处理子程序,温度采集程序,定时器中断子程序在内的四大程序进行设计分析。 初始
28、化开始清温度缓存区输出显示温度键盘扫描处理十进制转换调整启动DS18B20有键按下下?延时YYNN4.1 主程序流程图 图4.1 主程序流程图在主程序图4.1中,系统上电后进行初始化操作,清零当前DS18B20中的缓存的温度值14,使DS18B20接收信号后工作,同一时刻检查是否有按键在设定系统需要的温度,有就跳至键盘扫描,处理子程序,没有则需要等待一定的读取的延时时间,最后将结果写入数据累加器,然后进行数据类型的转换,最终把转换得到的数值传输至数码管。4.2 键盘(jinpn)扫描处理子程序当系统(xtng)判断有按键被按下的信息(xnx)后,就会跳转到键盘扫描处理对应子程序,读取当前的按键
29、值,读取按键值后,判断“*”号键是否按下,按下则表示系统已经进入温度设定模式,LED会显示实时温度值,没有则跳回到主程序。一旦进入温度设定模式,系统就会对键盘不停的扫描,判断当前的按键值,如果检测到的是“*”号键,则说明温度设置成功,不是则需要更新温度显示缓存区14,具体程序流程图如图4.2所示。P2右移扫描行按键扫描识别按键值显示设定温度设定温度值识别按键值是“*”键按键放开?有无键按下?是否按“*”键键是“#”键送行扫描值P2.3=0消抖延时P2左移检测列返回检测有按键按下键?4行扫描完?3列扫描完?YYYYYYYYNNNNNNNN 图4.2 键盘扫描处理子程序4.3 温度传感器工作(gn
30、gzu)程序(chngx)流程图(1) 复位(f wi):使用前一定要让DS18B20芯片复位,复位即单片机给温度传感器发送一持续时间约480uS的低电平信号,温度传感器接收到低电平信号后会响应单片机。 (2) 存在脉冲:DS18B20复位后,单片机会将数据单总线提高,目的是为了在后能够接收到存在脉冲,这样以后,通信双方初步完成基本协议,接着单片机和DS18B20之间将进行通信。倘若出现复位信号时间过短或单总线的电路开路,这两种情况下的任何一种发生单片机都不会接收到存在脉冲,因此在设计时需要留心意外情况发生的处理。 (3) 单片机发送程序存储器指令:通信双方接触后就将要完成信息的交换,程序存储
31、器一共有5条指令,单片机会于每一工作周期内发送一个这些指令。程序存储器指令的长度为8位,主要目的是就片内64位激光程序存储器实施控制,判断一条总线上连接的元器件数目,并作出适当的处理。显然,一条总线上可以在同一时刻连接许多元器件,用独特的ID号来区分各个元器件,正常情况下,单总线只连接一个DS18B20芯片时能跳过程序存储器指令,程序存储器指令在下文会有详细描述。 (4) 单片机发送存储器操作指令:在程序存储器指令发送到DS18B20后,接下来(连续工作)就是发送存储器操作指令。存储器操作指令的目的是指引温度传感器做出相应的动作,是芯片控制的核心14。 (5) 数据的读写操作指令:每个存储器执
32、行完指令会将刚刚的指令或数据进行读写,这个操作过程需要相应的执行指令来确定。如果操作的是温度转换指令,单片机需等待500uS的时间,等待温度传感器操作指令结束。如果执行的是数据读写指令,此时必须要严格按照温度传感器的读写顺序来执行。 如果想获取实时温度值,则需在两个工作周期内连续工作两次,第一个周期里需要操作的有:复位、跳读程序存储器指令、实施温度转换指令。接下来要在第二个周期需要执行复位、跳读程序存储器、读取数据存储器、读数据(最长9bit,可以在操作过程中暂停读取,只需读取一般温度值时则读取前2个字节就可完成)等一系列指令14,其具体流程图如图4.3所示。读入温度值数据发出读温度指令写入1
33、8B20延时返回DS18B20存在?发出温度转换指令DS18B20复位延时写入18B20读温度前复位显示测温点位 置开始NY图4.3 DS18B20工作(gngzu)流程图4.4 定时器中断(zhngdun)子程序定时器会在每一工作周期(50us)中断一次,系统会自动的将采集到的温度与设定的温度进行比较,当采集的温度低于设定的温度时,P3.1口发送一低电平信号,加热器开始工作,当采集的温度高于设定的温度高时,对应接口则输出一高电平信号,切断加热器,具体(jt)程序流程图如图4.3所示:入口保护现场重设定时时间恢复现场返回加热状态灯亮加热器工作加热状态灯灭加热器停止当温度小于设定温度?NY图4.
34、4 定时器中断(zhngdun)子程序4.5 本章(bn zhn)小结本章完成了对系统软件的分析(fnx)以及分模块设计,对一系列流程图进行分析设计与绘制,并且对主程序与各个子程序进行了简要的描述。5 系统运行结果与分析电路图绘制好及对应(duyng)程序导入单片机后要对系统进行运行分析。5.1 仿真软件(run jin)介绍本次(bn c)仿真使用的是Proteus软件,它是电路分析实物仿真系统软件,可以满足仿真各种电路的功能要求,并支持各种单片机的使用,其元器件库完整齐全,使用时简单方便,是一款很不错的专业的单片机软件仿真系统15,其特点有: (1) 完全满足本次方案设计单片机仿真使用的要
35、求,与其他仿真软件相比具有独特的优势。 (2) 具备各种电路组成的模拟系统,元器件库十分齐全,可供使用的模拟元器件各式各样。 (3) 支持的单片机类型与系列众多。 Proteus软件一种可对单片机和电路极模拟程序分析的仿真软件,在一款很实用的专业软件。Keil软件主要用于程序的编译, Keil C51在使用时生成目标代码快,生成的汇编代码很容易被用户理解,它一定程度上反映了在大规模软件开发时高级语言的优越性15。5.2 Keil仿真程序分析运用keil软件编译本系统的C语言程序,其在运行后的结果如图5.1所示,这表明该程序在编译上没有语法上的错误。将此程序生成*.hex文件后,在Proteus
36、仿真系统界面导入单片机中,然后即可运行调试仿真。 图5.1 Keil编译(biny)C语言(yyn)程序5.3 Proteus仿真(fn zhn)结果 在Proteus中的系统原理图中,双击图中的单片机中,将生成的“水温.hex”文件导入单片机中,点击确认按钮,接着点击仿真界面左下角中间的开始按钮,系统进行初始化,具体界面如图5.2所示。图5.2 仿真初始化程序(chngx)初始化结束(jish)后,温度传感器会采集当前(dngqin)温度值,仿真时可以用加减按钮调节所需的温度数值,数码管会显示所设定的温度值,例如45.5,其结果如图5.3所示。 图5.3 实际温度仿真图 图5.4 设定温度上
37、限值仿真图 图5.5 设定温度(wnd)下限仿真图此时点击设置按钮,进入(jnr)温度设定模式,可以通过按“加”“减”按键(n jin)来设定电热水器的上下限温度值,如上限55,下限39,仿真情况可以如图5.4,5.5所示。图5.6 实际检测温度低于下限温度仿真图图5.7 实际检测(jin c)温度高于上限温度仿真图当DS18B20温度传感器检测温度低于下线温度时,LED红灯亮起,发出警报,如图5.6所示。当检测到水温超过设置的上限温度时,蜂鸣器发出警报。在仿真(fn zhn)图里可以看出蜂鸣器正在发出警报,如图5.7 所示。用Proteus仿真可将实物(shw)效果通过画面逼真表现出了来,从
38、而使用户可以从系统的内部结构了解学习系统,极大的提高了单片机的系统的设计效率,比实际硬件系统相比,仿真系统可以缩短系统设计时间,极大的缩小成本,同时避免了意外的发生。5.4 本章小结本章讲述系统的仿真调试,对仿真过程进行了详细的讲述。采用Keil配合Proteus的使用,得到系统预期效果。结 束 语本设计(shj)基于单片机的电热水器控制器设计,以STC89C51单片机为控制核心,在温度传感器,键盘设定与LED显示等一系列外设模块的协调配合下完成系统(xtng)。系统正常工作时,可按操作者的需要达到设定的水温,当温度与设定温度不同时,单片机会控制加热器,使水温达到目标值。这样的设计也普遍使用在
39、现在的家用电热水器上,给家庭生活带来便利。四年对自动化专业知识的接触(jich)学习,我认识到许多所学专业课对我以后的工作有极大的帮助,这次的毕业设计就是一次检验与考核的过程,这培养了我查阅文献的能力和书面表达的能力,同时还提升自己对待任务的专注度。本次毕业设计,我对单片机相关知识有了新的认识,以前上课只是为了考试而学习单片机,觉得它难,在单片机上投入的时间也少之又少,对单片机的了解也只是冰山一角,但是这次的毕业设计,我不得不去面对自己的弱项,既然学了单片机就要会使用,同学给我推荐了几本对初学者很有帮助的书,这使我对单片机有了更深一步的了解,知道了小小的一块单片机只要有程序可以实现许多的功能,
40、而且单片机的性价比极高,在许多领域都有应用,可以简化很多工业流程,极大的便利了现代控制。单片机没有被历史淘汰,这说明了它有自己独特的优势在竞争激烈的环境存活下来。从这次的毕业设计中,我真正的体会到,一个人要想取得成功,一定要有吃苦耐劳的工作素养,在焊接实物的时候使我深刻体会到认真细心的重要性,特别是在面对错综复杂的电路图时。专业知识的学习也很重要,特别是要能将理论与实际联系在一起,把我们所学的理论知识运用到实际的操作中去,要用知识去改变一切。致 谢 时间(shjin)不可逆转的向前(xin qin)流逝,不知不觉(b zh b ju)我就要和我的大学的学习生活说声再见了。一切来得似乎太快,新生
41、军训的日子似乎就在不久前,但是现在的我该和过去说声再见了。回首往昔,无数个走过的日子历历在目,打开抽屉翻开泛黄的日记,无数画面在脑海浮现,心理感慨万千,充满不舍。四年的大学生活,我学到了很多东西,不论是学习上还是生活上都较以前有了长足的进步,在这里我要感谢四年里帮助我的人。首先,感谢学校四年来对我的教育培养,为我营造了一个良好的学习氛围,学习设施优良,使我倍感自豪的融入其中。其次,感谢我的指导老师冯钧老师,有了他的谆谆教诲,处处提点,才使我的毕业设计的前期材料以及后期的论文能够顺利的完成。做毕业设计期间,所有自动化老师都对我的毕设给予了极大的帮助,这为我之后论文与设计能够顺利完成消除了不少麻烦
42、,在这里由衷的感谢辛勤的老师们。最后,感谢父母这么多年一直对我充满信心,让我在面对困难时没有退缩,同时感谢三位舍友以及朋友对我极大的帮助。参 考 文 献 1 姜坪. 商城现代化J. 商业资讯,2010(6):34-37. 2 空气能热水器周刊J. 制冷(zhlng)快报,2014(101):1-3. 3 赵君. 基于(jy)8051单片机的温度控制系统D. 吉林:吉林大学,2012. 4 杨丹丹,杨风,马慧卿. 基于(jy)单片机的温度采集系统设计J. 山西电子技 术应用实践,2014,19(3):19-21. 5 R.Tawegoum, R.Teixeira and G.Chassriaux
43、.Simulation of humidity control and greenhouse temperature tracking in a growth chamber using a Passive air conditioning unit J.Control Engineering Practice,2006,8(4):853-861. 6 王海宁. 基于单片机的温度控制系统的研究D. 安徽:合肥工业大学,2008 . 7 周景润,郝晓霞. 传感器与检测技术M. 电子工业出版社,2009. 8 翟敏焕. 基于单片机的即热式电热水器控制系统的设计A. 现代计算 机,2012. 9 A
44、rtori S,ZHANG G X. Geometric Error Measurement and Compensation of Machines.Annals of the CIRP. 1995 10 何宏. 单片机原理及接口技术M. 北京:国防工业出版社,2006. 11 许思达. 基于51单片机的TFT液晶显示设计J. 电子元器件应用, 2010,12(10):38-44. 12 朱智鹏. 基于单片机温度采集控制系统的设计J. 高科技产品研发, 2014,161(17),27-28. 13 杨欣电子设计从零开始M. 北京:清华大学出版社,2005.28-102 . 14 周建春. 基
45、于单片机和PC串口通信的温度采集系统设计D. 苏州大学, 2010. 15 丁明亮. 51单片机应用设计与仿真_基于Keil C与ProteusM. 北京: 北京航空航天大学出版社,2009.附录(fl)#include /包含(bohn)头文件#define uint unsigned int#define uchar unsigned char /宏定义(dngy)sbit SET=P31; /定义调整键sbit DEC=P32; /定义减少键sbit ADD=P33; /定义增加键sbit BEEP=P36; /定义蜂鸣器sbit ALAM=P17;sbit ALAM1=P14;/定义加
46、热制冷继电器sbit DQ=P37; /定义DS18B20总线I/Obit shanshuo_st; /闪烁间隔标志bit beep_st; /蜂鸣器间隔标志sbit DIAN = P05; /小数点uchar x=0; /计数器signed char m; /温度值全局变量uchar n; /温度值全局变量uchar set_st=0; /设置状态标志signed char shangxian=45; /上限报警温度,默认值为38signed char xiaxian=40; /下限报警温度,默认值为5/uchar code LEDData=0 xC0,0 xF9,0 xA4,0 xB0,0
47、 x99,0 x92,0 x82,0 xF8,0 x80,0 x90,0 xff;uchar code LEDData=0 x5F,0 x44,0 x9D,0 xD5,0 xC6,0 xD3,0 xDB,0 x47,0 xDF,0 xD7,0 xCF,0 xDA,0 x9B,0 xDC,0 x9B,0 x8B; /数码管显示码表/*18b20延时子程序*/void Delay_DS18B20(int num) while(num-) ;/*初始化DS18B20*/void Init_DS18B20(void) unsigned char x=0; DQ = 1; /DQ复位 Delay_DS1
48、8B20(8); /稍做延时 DQ = 0; /单片机将DQ拉低 Delay_DS18B20(80); /精确(jngqu)延时,大于480us DQ = 1; /拉高总线(zn xin) Delay_DS18B20(14); x = DQ; /稍做延时后,如果(rgu)x=0则初始化成功,x=1则初始化失败 Delay_DS18B20(20);/*读一个字节*/unsigned char Read One Char(void) unsigned char i=0; unsigned char dat = 0; for (i=8;i0;i-)/循环8次,读出一个字节 DQ = 0; / 给脉冲
49、信号 dat=1;/数据右移一位 DQ = 1; / 给脉冲信号 if(DQ)/如果该位为1 dat|=0 x80;/将数据 | 0 x80后,存入dat Delay_DS18B20(4); /延时 return(dat);/返回一字节数据/*写一个字节*/void Write One Char(unsigned char dat) unsigned char i=0; for (i=8; i0; i-) /循环8次,写入一个字节 DQ = 0; /拉低 DQ = dat&0 x01; /将dat数据&0 x01后,送入IO口 Delay_DS18B20(5); /保持一会 DQ = 1; /
50、io口拉高 dat=1; /dat右移一位 /*读取温度*/unsigned int Read Temperature(void) unsigned char a=0; unsigned char b=0; unsigned int t=0; float tt=0; Init_DS18B20(); Write One Char(0 xCC); /跳过读序号列号的操作(cozu) Write One Char(0 x44); /启动温度(wnd)转换 Init_DS18B20(); Write One Char(0 xCC); /跳过读序号列号的操作(cozu) Write One Char(0
51、 xBE); /读取温度寄存器 a=Read One Char(); /读低8位 b=Read One Char(); /读高8位 t=b; /将高8位数据存入t t=8; /t左移8位 t=t|a; /将t|a得到一个16位的温度数据 tt=t*0.0625; /一个最低位代表0.0625C,所以要*0.0625得到实际温 度,因为有小数运算,所以定义的tt是float浮点型变量 t= tt*10+0.5; /放大10倍输出并四舍五入(将温度放大10倍可以得到小数部分) return(t);/返回得到的温度值/*延时子程序*/void Delay(uint num) while( -num
52、);/*初始化定时器0*/void Init Timer(void) TMOD=0 x1; /工作方式1 TH0=0 x3c; TL0=0 xb0; /50ms(晶振12M)/*读取温度*/void check_wendu(void) uint a,b,c; c=Read Temperature()-5; /获取温度值并减去DS18B20的温漂误差 a=c/100; /计算得到十位数字 b=c/10-a*10; /计算得到个位数字 m=c/10; /计算得到整数位 n=c-a*100-b*10; /计算得到小数位 if(m99)m=99;n=9; /设置温度显示上限 /*显示开机初始化等待画面
53、*/void Disp_init(void) P0 = 0 x80; /显示 P2 = 0 x7F; /依次(yc)打开各位 Delay(200); /延时 P2 = 0 xDF; Delay(200); P2 = 0 xF7; Delay(200); P2 = 0 xFD; Delay(200); P2 = 0 xFF; /关闭(gunb)显示/*显示(xinsh)温度子程序*/void Disp_Temperature(void) /显示温度 P0 = 0 x98; /显示C P2 = 0 x7F; /打开位 Delay(400); /延时 P2 = 0 xff; /关闭显示 P0=LED
54、Datan; /显示个位 P2 = 0 xDF; Delay(400); P2 = 0 xff; /关闭显示 P0 =LEDDatam%10; /显示十位 DIAN = 0; /显示小数点 P2 = 0 xF7; Delay(400); P2 = 0 xff; /关闭显示 P0 =LEDDatam/10; /显示百位 P2 = 0 xFD; Delay(400); P2 = 0 xff; /关闭显示/*显示报警温度子程序*/void Disp_alarm(uchar baojing) P0 =0 x98; /显示C P2 = 0 x7F;/选中位 Delay(200); P2 = 0 xff; /关闭显示 P0 =LEDDatabaojing%10; /显示十位 P2 = 0 xDF; Delay(200); P2 = 0 xff; /关闭显示 P0 =LEDDatabaojing/10; /显示百位 P2 = 0 xF7; Delay(200); P2 = 0 xff; /关闭(gunb)显示 if(set_st=1)P0 =0 xCE; /设置上限(shngxin)时显示H else if(set_st=2)P0 =0 x1A; /设置下限(xixin)时显示L P2 =
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度企业项目管理顾问合同3篇
- 2025年度公司员工数字化转型合伙协议2篇
- 2025年度电子商务平台劳务合作合同
- 二零二五年度农业劳务用工服务合同范本(含农业绿色防控技术)3篇
- 二零二五年度环保项目融资抵押合同3篇
- 二零二五年度农村林地林业工程承包合同书
- 2025年度公司个人借款合同社会责任及可持续发展协议3篇
- 二零二五年度养老服务行业员工劳动合同范本3篇
- 2025年度农村自建房拆除与重建一体化服务协议合同书
- 二零二五年度文化场馆租赁及活动组织合同3篇
- 高中物理电磁学经典例题
- YY 0286.1-2007专用输液器第1部分:一次性使用精密过滤输液器
- GB/T 4423-2020铜及铜合金拉制棒
- GB/T 28035-2011软件系统验收规范
- 动物生理学第十二章 泌乳课件
- 史记·秦始皇本纪课件
- 化妆品产品召回模拟演练记录表格
- 痤疮示意图课件
- 综合管理部负责人(部长)岗位职责
- 人才培养方案汇报课件
- 检验科15项质量控制指标(检验科质控小组活动记录)
评论
0/150
提交评论