版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
PAGEPAGEPAGEII阳泉职业技术学院毕业设计说明书毕业生姓名:李文海专业:电气自动化技术学号:0507241070指导教师:刘爱萍所属系(部):信息系二〇〇八年五月阳泉职业技术学院毕业设计评阅书题目:快热式家用电热水器的设计信息系电气自动化技术专业姓名李文海设计时间:2008年03月17日~2008年05月18日评阅意见:成绩:指导教师:(签字)职务:200年月日阳泉职业技术学院毕业设计答辩记录卡信息系电气自动化技术专业姓名李文海答辩内容问题摘要评议情况记录员:(签名)成绩评定指导教师评定成绩答辩组评定成绩综合成绩注:评定成绩为100分制,指导教师为30%,答辩组为70%。专业答辩组组长:(签名)200年月PAGEPAGEiii摘要随着生活节奏的加快,快热式电热水器省时的特性越来越被生活忙碌的人群所认可。随着用电环境的改善,不少新建楼房都可以安装即快热式电热水器,这催生了即热式电热水器的快速增长。本设计的快热式电热水器系统以单片机为核心,辅以键盘,显示电路,利用热敏电阻对热水器出口温度进行检测,将温度转换成频率,并将其反馈到单片机,用单片机测出频率大小,从而间接测出温度值,温度/频率转换电路简单可靠,成本低廉。对于加热功率的控制,本文采用了双向可控硅控制,单片机通过光耦给可控硅触发信号,控制可控硅的导通角,从而控制电热丝的有效加热功率。为了在关机和超温保护的状态下能可靠地关断加热电源,电路中加入了继电器来控制加热电源。其中串联在继电器线圈回路的熔丝为105℃时,热保险丝会熔断,防止加热管干烧。与电热丝并联的LED发光管用来指示电热丝的工作状态。快热式电热水器它体积小,重量轻,要使用热水时,即开即热,无须等待,省去了加热多余的热水,因此它具有省时、省电、省水的优点。正是基于以上原因,快热式电热水器在今后有着极为广阔的发展前景。关键字:单片机温度双向可控硅继电器AbstractWiththepaceoflifespeedsup,Quickhot-waterheaterinthebusylivesofmoreandmorerecognizedbythecrowd.Withelectricitytheimprovementoftheenvironment,manynewbuildingsthatcanbeinstalledfasterheat-typeheaters,whichhastenedthebirthofhot-waterheaterthatistherapidgrowth.ThedesignofthefastheatofthewaterheatersystemtoSCMastheSupplementedbykeyboardsupplementedbythekeyboard,displaycircuit,theuseofthermalresistanceofthewaterheatertemperaturedetectionexports,thetemperaturewillbeconvertedtofrequency,andfeedbacktothemicrocontroller,withSCMsizemeasuredfrequency,thusindirectlymeasuredtemperatureandtemperature/frequencyconversioncircuitissimpleandreliable,lowcost.Theheatingpowerofcontrol,thepaperadoptedatwo-waySCRcontrol,SCMthroughOptocouplerSCRtriggersignaltothecontroloftheSCRon-angleandthuscontroltheeffectiveelectricwireheatingpower.Inordertoshutdownandover-temperatureprotectionofthestatecanbereliablyheatedpowershutdown,joinedthecircuitintherelaytocontroltheheatingpower.Oneseriesintherelaycoilcircuitforthefuse105℃,thefusewillbehotlinkstopreventtheheatingofGanshao.ParallelwiththeelectricwireLEDLEDelectricwireusedtoindicatetheworkofstate.Quickhot-waterheateritssmallsize,lightweight,tousethehotwater,-theheat,donothavetowaitandsavetheextrahotwaterheating,soithasatime-saving,energysaving,theprovincialwateradvantages.Itispreciselybecauseofthesereasons,fasterheat-typeheatersinthefuturehasaverybroadprospectsfordevelopment.Keyword:MCUtemperatureSCRtwo-wayrelay目录第一篇绪论 1第一章选题目的和意义 1第二章国内外发展情况 1第三章本设计研究的内容和所做的工作 2第二篇元件选择 3第一章80C51单片机的介绍 3第二章共阳极数码管的结构和工作原理 4第三章其它元件的介绍 4第三篇方案论证 7第四篇系统硬件电路设计 9第一章加热控制电路 9第二章温度检测电路 9第五篇硬件电路制作 13第六篇控制系统的软件设计 14第一章主程序 14第二章显示扫描子程序 14第三章按键扫描处理子程序 14第四章加热控制程序 14第五章温度检测程序 15第七篇控制程序编制和调试 23第八篇硬件和软件综合调试及性能分析 34结论 36一.工具书: 37二.参考资料: 37附录1快热式热水器控制系统电路图 38致谢 39阳泉职业技术学院毕业设计说明书PAGE40第一篇绪论第一章选题目的和意义近年来,热水器行业的发展趋势可以用一句话来概括,即仍将呈现出以电热水器为主导,燃气燃水器为辅,太阳能热水器为补充,三者互相共生。对电热水器而言,它具有安全、环保的特点,而且全国电网的改造、电的普及、电价的大幅度下调,以及用电设施的改善,均为电热水器的迅速普及提供了便利的条件。尤其三峡工程的建设、核电站的建设,更是为电热水器的推广和普及起到了助推剂的作用。电热水器对安装的要求也比较简单,它不受空间限制,可以因地制宜。快热式家用电热水器的问世是家用电热水器具领域一次新的进步,它具有使用安全、卫生、不受水压限制,随时可供热水,水温易调节等优点,弥补了其它热水器的不足,属传统型热水器的替代产品,是家庭、公用住宅、小型饭店、宾馆理想的配套服务设施。随着气价的上涨,电价的不断下降。相信今后几年中我国电热水器市场仍将会呈现强劲增长势头。本设计主要通过80C51单片机来实现对电热水器的温度、功率显示及加热控制和继电保护,80C51单片机体积小,结构简单,功耗低。相信今后几年低功耗必将成为电热水器这一行业的热点。第二章国内外发展情况快热式电热水器在国外使用相当广泛,尤其是在欧美和东南亚地区。前些年,快热式产品在国内市场上曾经出现过一段时间,由于当时国内电力条件不成熟,对大功率的电产品一般无法正常使用,也没有好技术来保证其质量与安全,种种因素限制了其在国内的发展。近几年来,随着人们生活水平的不断提高,国家电网改造和相关规定的出台,电力工业迅速发展,预示了即热式产品在国内的广泛前景。根据国家住宅设计规范(GF500%-1999)现有商品住房的电器线路导线必须采用铜芯线,每套住宅进线截面积不小于10m㎡,分支引线不得小于2.5㎡,电表规格不得小于20(40)A,所以现购新标准住宅用户,都有条件使用上述这种安全、方便的快热式电热水器,确保产品万无一失,安全系数达100%,通过检测,快热式比传统的热水器可节省40%的能耗,用多少热水加热多少,没有热水用不完时的浪费和使用中途热水供应不足的现象,热水利用率100%,因为它既不需要提前预热,也不需保温,省去了大量的额外开支,给用户带来真正的实惠。即热式产品作为新型环保产品在我国广泛使用已是大势所趋,符合现代消费潮流。一切迹象都在预示着快热式的春天就要来临了。第三章本设计研究的内容和所做的工作(一)用2位数码管显示出水温度,能显示设定功率档位。(二)温度测试显示范围为00-99℃,精度为±1℃。(三)设置3个功率档位指示灯,1-4档1个灯亮,5-8档2个灯亮,9档3个灯全亮,0档无功率输出,档位灯不亮。(四)设置3个轻触按钮,分别为电源开关键、“+”键和“-”键。加热功率分为0-9档,按“+”键依次递增至9档,按“-”键依次递减至0。(五)出水温度超过65℃时停止加热,并蜂鸣报警,温度降至45℃以下时恢复。(六)内胆温度超过105℃时停止加热,防止干烧。第二篇元件选择第一章80C51单片机的介绍80C51或其兼容系列的单片机:80C51是INTEL公司MCS-51系列单片机中最基本的产品,它采用INTEL公司可靠的CHMOS工艺技术制造的高性能8位单片机,属于标准的MCS-51的HCMOS产品。它结合了HMOS的高速和高密度技术及CHMOS的低功耗特征,它继承和扩展了MCS-48单片机的体系结构和指令系统。
80C51内置中央处理单元、128字节内部数据存储器RAM、32个双向输入/输出(I/O)口、2个16位定时/计数器和5个两级中断结构,一个全双工串行通信口,片内时钟振荡电路。
此外,80C51还可工作于低功耗模式,可通过两种软件选择空闲和掉电模式。在空闲模式下冻结CPU而RAM定时器、串行口和中断系统维持其功能。掉电模式下,保存RAM数据,时钟振荡停止,同时停止芯片内其它功能。单片机系统的扩展原则:一个单片机应用系统的硬件电路设计包含两部分内容:一是系统扩展,即单片机内部的功能单元,如ROM、RAM、I/O、定时器/计数器、中断系统等不能满足应用系统的要求时,必须在片外进行扩展,选择适当的芯片,设计相应的电路。二是系统的配置,即按照系统功能要求配置外围设备,如键盘、显示器、打印机、A/D、D/A转换器等,要设计合适的接口电路。
系统的扩展和配置应遵循以下原则:
(一)尽可能选择典型电路,并符合单片机常规用法。为硬件系统的标准化、模块化打下良好的基础。
(二)系统扩展与外围设备的配置水平应充分满足应用系统的功能要求,并留有适当余地,以便进行二次开发。
(三)硬件结构应结合应用软件方案一并考虑。硬件结构与软件方案会产生相互影响,考虑的原则是:软件能实现的功能尽可能由软件实殃,以简化硬件结构。但必须注意,由软件实现的硬件功能,一般响应时间比硬件实现长,且占用CPU时间。
(四)系统中的相关器件要尽可能做到性能匹配。如选用CMOS芯片单片机构成低功耗系统时,系统中所有芯片都应尽可能选择低功耗产品。
(五)可靠性及抗干扰设计是硬件设计必不可少的一部分,它包括芯片、器件选择、去耦滤波、印刷电路板布线、通道隔离等。
(六)单片机外围电路较多时,必须考虑其驱动能力。驱动能力不足时,系统工作不可靠,可通过增设线驱动器增强驱动能力或减少芯片功耗来降低总线负载。
(七)尽量朝“单片”方向设计硬件系统。系统器件越多,器件之间相互干扰也越强,功耗也增大,也不可避免地降低了系统的稳定性。随着单片机片内集成的功能越来越强,真正的片上系统SoC已经可以实现,如ST公司新近推出的μPSD32××系列产品在一块芯片上集成了80C32核、大容量FLASH存储器、SRAM、A/D、I/O、两个串口、看门狗、上电复位电路等等。共阳极数码管的结构和工作原理共阳极数码管:共阳数码管是指将所有发光二极管的阳极接到一起形成公共阳极(COM)的数码管。共阳数码管在应用时应将公共极COM接到+5V,当某一字段发光二极管的阴极为低电平时,相应字段就点亮。当某一字段的阴极为高电平时,相应字段就不亮。其它元件的介绍12MHz的晶振:晶振的作用是为系统提供基本的时钟信号。通常一个系统共用一个晶振,便于各部分保持同步。有些通讯系统的基频和射频使用不同的晶振,而通过电子调整频率的方法保持同步。晶振用一种能把电能和机械能相互转化的晶体在共振的状态下工作,以提供稳定,精确的单频振荡。在通常工作条件下,普通的晶振频率绝对精度可达百万分之五十。高级的精度更高。有些晶振还可以由外加电压在一定范围内调整频率,称为压控振荡器。双向可控硅:可控硅也称作晶闸管,它是由PNPN四层半导体构成的元件,有三个电极,阳极A,阴极K和控制极G。可控硅在电路中能够实现交流电的无触点控制,以小电流控制大电流,并且不象继电器那样控制时有火花产生,而且动作快、寿命长、可靠性好。在调速、调光、调压、调温以及其他各种控制电路中都有它的身影。
可控硅分为单向的和双向的,符号也不同。单向可控硅有三个PN结,由最外层的P极和N极引出两个电极,分别称为阳极和阴极,由中间的P极引出一个控制极。单向可控硅有其独特的特性:当阳极接反向电压,或者阳极接正向电压但控制极不加电压时,它都不导通,而阳极和控制极同时接正向电压时,它就会变成导通状态。一旦导通,控制电压便失去了对它的控制作用,不论有没有控制电压,也不论控制电压的极性如何,将一直处于导通状态。要想关断,只有把阳极电压降低到某一临界值或者反向。双向可控硅的引脚多数是按T1、T2、G的顺序从左至右排列(电极引脚向下,面对有字符的一面时)。加在控制极G上的触发脉冲的大小或时间改变时,就能改变其导通电流的大小。与单向可控硅的区别是,双向可控硅G极上触发脉冲的极性改变时,其导通方向就随着极性的变化而改变,从而能够控制交流电负载。而单向可控硅经触发后只能从阳极向阴极单方向导通,所以可控硅有单双向之分。三极管:三极管是一种控制元件,主要用来控制电流的大小,以共发射极接法为例(信号从基极输入,从集电极输出,发射极接地),当基极电压UB有一个微小的变化时,基极电流IB也会随之有一小的变化,受基极电流IB的控制,集电极电流IC会有一个很大的变化,基极电流IB越大,集电极电流IC也越大,反之,基极电流越小,集电极电流也越小,即基极电流控制集电极电流的变化。但是集电极电流的变化比基极电流的变化大得多,这就是三极管的放大作用。IC的变化量与IB变化量之比叫做三极管的放大倍数β(β=ΔIC/ΔIB,Δ表示变化量。),三极管的放大倍数β一般在几十到几百倍。三极管在放大信号时,首先要进入导通状态,即要先建立合适的静态工作点,也叫建立偏置,否则会放大失真。在三极管的集电极与电源之间接一个电阻,可将电流放大转换成电压放大:当基极电压UB升高时,IB变大,IC也变大,IC在集电极电阻RC的压降也越大,所以三极管集电极电压UC会降低,且UB越高,UC就越低,ΔUC=ΔUB。继电器:继电器是一种电子控制器件,它具有控制系统(又称输入回路)和被控制系统(又称输出回路),通常应用于自动控制电路中,它实际上是用较小的电流去控制较大电流的一种“自动开关”。故在电路中起着自动调节、安全保护、转换电路等作用。电磁继电器的工作原理和特性:电磁式继电器一般由铁芯、线圈、衔铁、触点簧片等组成的。只要在线圈两端加上一定的电压,线圈中就会流过一定的电流,从而产生电磁效应,衔铁就会在电磁力吸引的作用下克服返回弹簧的拉力吸向铁芯,从而带动衔铁的动触点与静触点(常开触点)吸合。当线圈断电后,电磁的吸力也随之消失,衔铁就会在弹簧的反作用力返回原来的位置,使动触点与原来的静触点(常闭触点)吸合。这样吸合、释放,从而达到了在电路中的导通、切断的目的。对于继电器的“常开、常闭”触点,可以这样来区分:继电器线圈未通电时处于断开状态的静触点,称为“常开触点”;处于接通状态的静触点称为“常闭触点”。振荡电路:能够产生振荡电流的电路叫做振荡电路。一般由电阻、电感、电容等元件和电子器件所组成。由电感线圈l和电容器c相连而成的lc电路是最简单的一种振荡电路,
振荡电路主要是用来稳定频率和选择频率。此外电路中还用到5V的自鸣式蜂鸣器、稳压器(7805)、轻触小按纽、热保险丝、RC多谐振荡器、热敏电阻等元件。第三篇方案论证按快热式电热水器的功能要求,决定采用如图1所示的模块组成系统,主要包括电源电路、单片机控制器、温度检测电路、按键输入电路、LED数码管及指示电路、报警电路和加热控制电路。图1快热式电热水器系统组成框图快热式电热水器为了达到“快热”的效果,取消了储水罐,使冷水在进入加热管后立即被加热,着就要求加热管有较大的功率。家用电热水器一般采用方便,可靠的电热丝加热方法。根据热学及流体力学原理,结合实际实验室测试,可以得到水温与流量、加热功率之间的关系如表1所列表1水温与流量、加热功率之间的关系对于加热功率的控制,最简单的方法是由若干不同功率的电热丝组合得到几种加热功率,但由于快热式热水器的加热功率较普通的大,且档位设置较多,用电热丝组合的方法需要几组电热丝和继电器,成本增高且工作可靠性降低,所以比较理想的是采用可控硅控制功率,电路简单又控制方便。温度检测的方法较多,最经典的方法就是用热敏电阻(或热敏传感器)组成电桥来采集信号,再经放大,A/D转换后送单片机。目前比较先进的方法是采用专门的集成测温传感器(如DS18B20),直接将温度转换成数字信号传送给单片机。为了简化电路,降低成本,本文采用了温度/频率转换测温法,直接将温度信息转换成频率信号,用单片机测出频率大小,从而间接测出温度值,温度/频率转换电路简单可靠,成本低廉。第四篇系统硬件电路设计快热式热水器控制系统电路2(附录4)所示。它由七部分电路组成:单片机系统及外围电路、按键输入电路、LED数码管及指示电路、报警电路和加热控制电路和温度检测电。控制器采用成本低廉且工作可靠的89C51或其兼容系列的单片机,采用12MHz的晶振。加热控制电路图3放在论文中所示为加热控制电路原理图,电热丝的加热功率由双向可控硅控制,单片机通过光耦给可控硅触发信号,控制可控硅的导通角,从而控制电热丝的有效加热功率。为了在关机和超温保护的状态下能可靠地关断加热电源,电路中加入了继电器来控制加热电源。其中串联在继电器线圈回路的熔丝为105℃时,热保险丝会熔断,防止加热管干烧。与电热丝并联的LED发光管用来指示电热丝的工作状态。可控硅触发信号中需要对市电进行过零检测,以实现出发脉冲的相位延时。本电路中利用三极管8050和一个“非”门实现过零检测的,电路如图4放在论文中所示。温度检测电路温度检测电路如图5放在论文中所示,温度/频率变换电路是利用反相器组成的RC多谐振荡器,其中的R24是一个热敏电阻,当温度变化时引起热敏电阻的阻值变化,从而改变了振荡器输出的方波频率。该频率的估算可用如下的公式:f≈1.1RC图1加热控制电路图图2过零检测电路图图3温度检测电路图第五篇硬件电路制作制作硬件电路首先应根据电路原理图,使用计算机绘图软件,如protel,绘制出PCB印制板图,其次将购买的器件焊接在线路板上,为保证所设计系统能在现场可靠工作,制作时要注意以下几点。(一)尽量采用高质量的印制电路板,孔化电阻、线距、熔剂、阻焊剂、打孔精度、镀金厚度、基板质量、是否数控打孔和热风整平等因素,都会影响应用系统的调试、使用和寿命,差的板半年左右就出问题,而且时好时坏,很难维修。(二)在电路板上尽量多加去耦电容,一般在电路板电源入口处并上22~47μF的低频电容,在中间的电源与地线间并上0.1μF左右的高频小电容去耦,每四个14脚以上的芯片附近也须加上22μF电解电容和0.1μF的高频小电容去耦。这样能保证减小电源线及地线上的毛刺,保证可靠工作。(三)很好的安排地线、电源线走线,电源线尽量粗、尽量多、尽量组成网络。模拟地、数字地、电源地、大地分开走线,在一点上可靠连接。小信号、模拟信号用屏蔽线,在板上走线时尽量靠近地线,远离大电流信号线、电源线。数字部分既会干扰小信号线,又会受大电流信号及电源线干扰,也要很好安排。(四)直流供电尽量使用开关电源,开关电源很少受市电的电压波动、频率波动的影响,也能隔离从电源线进入的传导干扰。输入输出接口应尽量采用光电隔离器,使控制系统做成全浮空的系统,使之不受传导干扰的影响。(五)某些小信号线、器件、电路板应加电磁屏蔽板或罩。第六篇控制系统的软件设计快热式热水器的功能,系统程序必须实现显示扫描、按键扫描处理、加热控制和温度检测(包括超温报警)4项任务。51系列单片机实现多任务运行的方法就是分时复用,在程序设计时要相应地分配好各任务的CPU占用时间。对于以上几个任务稍加分析可以看出,显示扫描、按键扫描和加热控制任务相对而言有实时要求,而温度检测任务则可用定时(0.5~1s实现)。主程序系统在上电复位后,先对温度寄存器、档位寄存器赋默认值,并进行清除超温标志,设置定时器及中断系统的工作方式等初始化工作。由于51系统单片机没有停机指令,所以可以利用主程序设置死循环反复运行各个任务。把有实时要求的子程序(显示扫描、按键扫描、加热控制)约占用5msCPU时间,运行测温子程序的时间间隔为0.5s,那么循环次数应为100次。图6所示为主程序流程图。显示扫描子程序显示扫描子程序完成两位共阳数码管的扫描显示任务。图7所示为显示扫描子程序流程图。第三章按键扫描处理子程序按键扫描子程序负责逐个扫描档位“+”键、档位“-”键和开关键是否被按下,若有键被按下,则作出相应处理。图8所示为按键扫描子程序流程图。第四章加热控制程序加热控制程序根据用户设定的加热档位和系统当前的状态,决定是否加热和控制加热的功率并点亮相应的指示灯,若有超温标志,还应打开蜂鸣器报警。图9所示为加热控制程序流程图。加热控制程序通过控制继电器的通断来决定是否给电热丝通过加热,而加热的功率大小则由双向可控硅的导通角决定。系统程序利用外中断INT1检测市电的过零点,检测到过零点后,立即根据设定的加热档位给定时器T1赋一个延时参数,并打开定时器T1,允许其中断。当定时器T1计满益出后触发中断,T1中断程序就会给可控硅发一个触发信号,使 其导通。图10和11所示分别为过零检测程序流程图和可控硅触发信号控制程序流程图。第五章温度检测程序温度检测程序的基本原理就是将温度/频率转换电路测得的频率与事先建立好的温度/频率表进行比较,查找出与该频率相应的温度值。在实验测试后建立的温度/频率表是0~100℃温度所对应的频率值。它是一个频率对应于温度递减的非线性函数,在C语言中用一个一维数组Tab[101]来表示,下标为温度,数组元素为频率值。计算温度的方法采用高效、准确的二分法查表,查表的过程如下:(一)先给定查找的温度最大值Tmax和最小值Tmin,即查找的范围,根据已有的温度表默认最大值Tmax=100,最小值Tmin=0。(二)假定测得温度Temp为最大值与最小值饿中间值,即Temp=(Tmax+Tmin)/2。(三)将实际测得的频率值T0rig与假定温度Temp在表格中对应的频率Tab[temp]相比较,如果相等,那么假定温度就是当前实际温度,即完成查找。(四)若T0rig>Tab[temp],说明实际温度应该在Tmin与Temp之间(因为递减函数特性),则修改查找范围,令Tmax=Temp;同理,若T0rig<Tab[temp],说明实际温度应该在Temp与Tmax之间,则令Tmin=Temp;(五)检测查找范围,若Tmax-Tmin≤1,则判断T0rig更接近最大值对应的频率Tab[Tmax]还是最小值对应的频率Tab[Tmin],实际温度值取频率更接近的那个值即完成查找。(六)若Tmax-Tmin>1,则重复第步骤、直到完成查找。温度检测程序完成温度计算后,便刷新系统当前温度寄存器,并判断有无超温、置位或清除相应的标志位。图12所示为温度检测程序流程图。单片机使用外中断INT0和计时器T0检测输入频率的大小。为了减少测量的系统误差相对值和随机误差对测量精度的影响,程序中取100个方波周期的和作为检测结果。程序中使用静态变量px0count进行外中断的计数,在测量开始时,给px0count赋值2是为了让频率测量有准确的起点。另外,为了区分测频的开始和结束,还使用了测频开始标志位T0tst和测频完成标志位Testok.图13所示为频率测试程序流程图。图6所示为主程序流程图图7显示扫描子程序流程图图10零检测程序流程图图8按键扫描子程序流程图图9加热控制程序流程图图11可控硅触发信号控制程序流程图图12温度检测程序流程图图13所示为频率测试程序流程图第七篇控制程序编制和调试控制源程序清单以下是快热式电热水器控制源程序清单,采用C51编写,在KeilVision2μV2.30(C51.exeV7.0)环境下调试通过,并下载到AT89C51测试运行成功。/*快热式热水器程序MCUAT89C51XAL12MHzBuildbyGavinHu,2005.3.18*///#pragmasrc#include<reg51.h>#include<intrins.h>#include<math.h>voiddelay(unsignedint);//延时函数voiddisplay(void);//显示函数unsignedcharkeyscan(void);//按键扫描处理函数voidheatctrl(void);//加热控制函数voidtemptest(void);//测温函数sbitswkey=P1^0;//开关键sbitupkey=P1^1;//加热档位“+”键sbitdownkey=P1^2;//加热档位“-”键sbitbuzz=P1^05;//蜂鸣器输出端sbittriac=P1^6;//可控硅触发信号输出端sbitrelay=P1^7;//继电器控制信号输出端sbitled1=P2^5;//加热档位指示灯1sbitled2=P2^6;//加热档位指示灯2sbitled3=P2^7;//加热档位指示灯3signedchardatactemp;//当前测得水温寄存器unsignedchardatadispram[2]={0x10,0x10};//显示区缓存unsignedchardataheatpower,px0count;//加热档位寄存器、外中断0计数器bittempov,t0tst,testok;//超温标志、测温开始标志、测温完成标志/*主函数voidmain(void)无参数,无返回值循环调用显示、键扫描、温度检测、加热控制函数*/voidmain(void){unsignedchari,j;ctemp=15;//初始化水温寄存器heatpower=5;//初始化加热档位为5当tempov=0;//清除超温标志swkey=0;//默认开关键被按下,进入待机状态TMOD=0x11;//设定T0和T1工作方式为16位定时器TCON=0x05;//设置外中断0和1为下降沿触发IP=0x01;//设置外中断0优先IE=0x80;//打开总中断while(1){i=1;do{for(j=0;j<100;j++)//循环100次约0.5s{if(keyscan())i=6;//如果有键按下,显示当前档位3sdisplay();//调用显示函数一次约4msheatctrl();//调用加热控制函数}//endfor(b=0;b<100;b++)temptest();//每0.5s进行一次测温}while(--i);//通过改变循环次数i的大小决定是否刷新显示j=abs(ctemp);//取温度绝对值dispram[1]=j%10;//取个位数送显示j/=10;//取十位数dispram[0]=j?j:0x11;//送显示(带灭零)}//endwhile(1)}/*延时函数voiddelay(unsignedintdt)参数:dt,无返回值延时时间=dt*500机器周期*/voiddelay(unsignedintdt){registerunsignedcharbt;//定义寄存器变量for(;dt;dt--)for(bt=250;--bt;);//此句编译时以“DJNZ”实现,250*2=500机器周期}/*显示函数voiddisplay(void)无参数,无返回值两位共阳数码管扫描显示*/voiddisplay(void){unsignedcharcodetable[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,\0x88,0x83,0xc6,0xa1,0x86,0x8e,0xbf,0xff};unsignedchari,a;a=0xfe;//位选赋初值for(i=0;i<2;i++)//循环扫描两位数码管{P2|=0x1f;//清除位选P0=table[dispram[i]];//送显示段码P2&=a;//选通一位delay(4);//延时2msa=_crol_(a,1);//改变位选字P0=0xff;//消影}}/*按键扫描处理函数unsignedcharkeyscan(void)无参数,返回值:无符号字符型,无键按下为0,有键按下为其它影响全局变量:heatpower*/unsignedcharkeyscan(void){unsignedchari,ch;if(upkey==0)//“+”键{buzz=0;//打开蜂鸣器(发出按键音)for(i=0;i<5;i++)display();//延时消抖buzz=1;//关闭蜂鸣器if(heatpower<9)heatpower++;//档位加一dispram[0]=0;dispram[1]=heatpower;//显示当前档位while(upkey==0)display();//等待键释放return(1);//返回有键按下}elseif(downkey==0)//“-”键{buzz=0;//打开蜂鸣器(发出按键音)for(i=0;i<5;i++)display();//延时消抖buzz=1;//关闭蜂鸣器if(heatpower>0)heatpower--;//档位减一dispram[0]=0;dispram[1]=heatpower;//显示当前档位while(downkey==0)display();//等待键释放return(2);//返回有键按下}elseif(swkey==0)//开关键{buzz=0;//打开蜂鸣器(发出按键音)for(i=0;i<30;i++)display();//延时消抖buzz=1;//关闭蜂鸣器swkey=1;//置位开关键while(swkey==0)display();//等待键释放ch=IE;//暂存中断控制字IEIE=0x00;//禁止中断P0=0xff;P1=0xff;P2=0xff;//清除端口输出dispram[0]=0x10;dispram[1]=0x10;//显示“--”display();while(1){while(swkey)display();//等待开关键按下buzz=0;//打开蜂鸣器(发出按键音)for(i=0;i<10;i++)display();//延时消抖buzz=1;//关闭蜂鸣器if(swkey==0)break;//确认开关键被按下}while(swkey==0)display();//等待键释放IE=ch;//还原中断控制字IEreturn(0);//返回无键按下}elsereturn(0);//无任何键按下时由此返回}/*加热控制函数voidheatctrl(void)无参数,无返回值判断是否加热、加热功率及档位指示灯处理*/voidheatctrl(void){if(!tempov)//当没有超温标志时{relay=0;//接通继电器buzz=1;//关闭蜂鸣器switch(heatpower)//判断加热档位{case0:{EX1=0;ET1=0;triac=1;led1=1;led2=1;led3=1;break;}//0档不加热,指示灯不亮case1:case2:case3:case4:{led1=0;led2=1;led3=1;EX1=1;break;}//1~4档1号指示等亮case5:case6:case7:case8:{led1=0;led2=0;led3=1;EX1=1;break;}//5~8档1号、2号指示灯亮case9:{EX1=0;ET1=0;led1=0;led2=0;led3=0;triac=0;break;}//9档全功率,指示灯全亮}}else//当有超温标志时{relay=1;//断开继电器EX1=0;ET1=0;triac=1;//关闭可控硅buzz=0;//蜂鸣报警}}/*测温函数voidtemptest(void)无参数,无返回值,影响全局变量:ctemp,tempov测量并查表计算温度,判断是否超温*/voidtemptest(void){signedchartemp,tempmin,tempmax;unsignedintt0rig;unsignedintcodetemptab[]={0x6262,0x61eb,0x6171,0x60f7,0x6047,0x5ff7,0x5f6e,0x5eef,0x5e53,0x5dbe,0x5d4b,0x5ca5,0x5c17,\0x5b6b,0x5ada,0x5a5c,0x599b,0x58ff,0x5869,0x57b0,0x570d,0x5663,0x55c6,0x550e,0x5444,0x5396,\0x52dd,0x5240,0x5189,0x50b0,0x5005,0x4f20,0x4e69,0x4db1,0x4cef,0x4c42,0x4b64,0x4aaa,0x49e1,\0x48fc,0x4847,0x476c,0x46b1,0x4604,0x4503,0x4449,0x4356,0x4299,0x41c0,0x40ce,0x3ff0,0x3f2b,\0x3e33,0x3d86,0x3ca6,0x3bd2,0x3b26,0x3a39,0x3973,0x38a6,0x37ef,0x373f,0x3687,0x35c3,0x3507,\0x3487,0x33bc,0x32ed,0x324f,0x319e,0x3106,0x3053,0x2fa6,0x2f2a,0x2e88,0x2e00,0x2d63,0x2cd6,\0x2c65,0x2bae,0x2b28,0x2a97,0x2a07,0x298e,0x2914,0x287a,0x280d,0x278a,0x2703,0x2687,0x2626,\0x25e5,0x256d,0x24ee,0x2489,0x2414,0x23bc,0x2356,0x22d9,0x2278,0x2203};//温度频率表px0count=2;//测频中断函数参数t0tst=1;//置测频程序开始标志EX0=1;//打开测频外中断testok=0;//清除测频程序完成标志while(!testok)display();//等待测试完成t0rig=(unsignedint)TH0<<8|TL0;//字节合成字tempmin=0;//以下是二分查表法计算温度值tempmax=100;//tempmin和tempmax为温度表的范围while(1){temp=(tempmax+tempmin)/2;//假定当前温度为最大值与最小值之中点值if(t0rig==temptab[temp])break;//若实际值等于假定值结束查找elseif(t0rig>temptab[temp])tempmax=temp;//若实际值大于假定值,减小查找范围的最大值elsetempmin=temp;//若实际值小于假定值,增大查找范围的最小值if(tempmax-tempmin<=1)//若查找范围已缩小到1度之间,{//判断实际值更接近哪个端点if(temptab[tempmax]+temptab[tempmin]>2*t0rig)temp=tempmax;//接近最大值取最大值elsetemp=tempmin;//接近最小值取最小值break;//结束查找}}ctemp=temp;//刷新当前温度寄存器if(temp>65)tempov=1;//如果温度超过65度置位超温标志elseif(temp<45)tempov=0;//当温度回落到45度以下时清除超温标志}/*测温频率测试函数voidtempfrequency(void)使用外部X0中断,寄存器组1测出温度——频率转换电路的频率*/voidtempfrequency(void)interrupt0using1{if(--px0count)return;//找齐起点或计数if(t0tst)//如果是起点{t0tst=0;//清除测频开始标志px0count=100;//取100个方波为一次测频TH0=0;TL0=0;//清除计时器T0TR0=1;//开始计时}else//如果是终点{TR0=0;//停止计时EX0=0;//停止测频外中断testok=1;//置位测频完成标志}}/*加热控制过〇检测函数voidpass0(void)使用外部X1中断,寄存器组2检测过〇点,给定时器T1赋初值*/voidpass0(void)interrupt2using2{unsignedcharcodepowertab[]={0xd8,0xf0,0xe2,0x63,0xe5,0x25,0xe8,0x3e,0xeb,0x16,0xed,0xda,0xf0,0xb2,0xf3,0xcb,0xf7,0x8d,0xf7,0x8d};//10个功率档位的可控硅导通角延时参数表TH1=powertab[2*heatpower]-1;TL1=powertab[2*heatpower+1];//市电过零后,根据当前设置的档位给定时器T1赋延时参数ET1=1;//允许定时器T1中断TR1=1;//打开定时器T1}/*可控硅触发信号控制函数voidtriacctrl(void)使用定时器T1中断,寄存器组3向可控硅送出触发信号*/voidtriacctrl(void)interrupt3using3{registerunsignedchari;triac=0;//输出可控硅导通信号ET1=0;//关闭定时器T1中断TR1=0;//终止定时器运行for(i=0;i<2;i++);//延时,保证导通信号有足够的宽度triac=1;//完成可控硅导通信号}第八篇硬件和软件综合调试及性能分析快热式热水器硬件电路不包含任何可调节元件,因此只要器件质量可靠,引角焊接正确,硬件电路无须调试。该电路中的测温部分的振荡电路对电容C1容量比较敏感,若此电路要批量化生产,可在敏感电阻R24再串应该可变电阻,以补偿C1的容量变化。在初次试做本电路或关键硬件参数有调整时,应对系统软件中控制加热功率的可控硅导通角延时参数表和温度/频率转换表这两部分进行调试。可控硅导通角延时参数主要由市电的频率和过零检测电路的脉冲宽度决定,可以先根据市电频率,按等功率的要求计算理论值,再根据过零检测电路的脉冲宽度加以调整。温度/频率转换表可以用对照标准温度计实测的办法进行测试。图14所示为用实际电路在实验室测得的温度/频率曲线图。图14温度/频率曲线图用这个方案设计的快热式家用电热水器,电路简单,成本较低,经试验运行证明工作稳定、可靠,在无须改变硬件的条件下,如加入PID等自动控制程序还可以升级成自动控温的电热水器。结论在克服了种种的困难之后,我终于完成了毕业设计,所设计的电路在通电情况下能正常完成温度、功率显示功能,加热控制电路在出水温度超过65℃时停止加热,并蜂鸣报警,温度降至45℃以下时恢复。继电保护使内胆温度超过105℃时停止加热,防止干烧。通过这次对快热式家用电热水器的毕业设计,我学到了很多东西而且也使自己的身心得到磨练,摆脱了单纯的理论知识学习状态,和实际设计的结合锻炼了我的综合运用所学的专业基础知识,解决实际工程问题的能力,同时也提高我查阅文献资料、设计手册、设计规范以及电脑制图等其他专业能力水平,而且通过对整体的掌控,对局部的取舍,以及对细节的斟酌处理,都使我的能力得到了锻炼,经验得到了丰富,并且意志品质力,抗压能力及耐力也都得到了不同程度的提升。这是我们都希望看到的也正是我们进行毕业设计的目的所在。提高是有限的但提高也是全面的,正是这一次设计让我又积累了一定的实际经验,使我的头脑更好的被知识武装了起来,也必然会让我在未来的工作学习中表现出更高的应变能力,更强的沟通力和理解力。顺利如期的完成本次毕业设计给了我很大的信心,让我了解专业知识的同时也对本专业的发展前景充满信心,今后我更会关注新技术新设备新工艺的出现,并争取尽快的掌握这些先进的知识,更好的为祖国的四化服务。主要参考文献资料一.工具书:[1]余锡存.单片机原理及接口技术[M].西安:西安电子科技大学出版社,2000[2]贾好来.MCS-51单片机原理及应用[M].北京:机械工业出版社,2006[3]楼然苗.单片机课程设计指导[M].北京:北京航空航天大学出版社,2007[4]电子电气综合实训系统使用说明书[M].北京:精仪达盛科技有限公司,2000[5]胡健.单片机原理及接口技术[M].北京:机械工业出版社,2005[6]戴佳,戴卫恒.51单片机C语言应用程序设计[M].北京:电子工业出版社,2006[7]胡辉.单片机原理及应用设计[M].北京:水利水电出版社,2005[8]蔡明文,冯先成.单片机课程设计[M].武汉:华中科技大学出版社,2007[9]彭为.单片机典型系统设计实例精讲[M].北京:电子工业出版社,2006二.参考资料:[1]张川平,许兴广.基于单片机电热水器模糊控制系统设计[J].单片机开发与应用2007,11[2]梁志星.浅谈家用电热水器.小家电[J].2002,1[3]苗红蕾.一种新型的智能家用电热水器[J].邢台职业技术学院学报,2005,2[4]韩欣欣.如何保养电热水器[J].2007,1[5]田玉林.电热水器内胆的保护方法[J].家庭电子2005,22,13[6]李忠,李咏梅.浅谈电子防干烧结构在电热水器上的应用[J].现代电.2005,13[7]史密斯节能系列电热水器[J].电器评介.2005,2[8]丁威,叶浓.热水器节能舒适是个大趋势[J].现代家电.2005,7[9]庄晓梅,潘建森.节能型多功能电热水器的研究[J].家电科技.200510附录1快热式热水器控制系统电路图致谢本文是在刘爱萍老师精心指导和大力支持下完成的。刘老师以其严谨求实的治学态度、高度的敬业精神、兢兢业业、孜孜以求的工作作风和大胆创新的进取精神对我产生重要影响。她渊博的知识、开阔的视野和敏锐的思维给了我深深的启迪。同时,在此次毕业设计过程中也感谢刘老师的爱人王爱乐老师,谢谢他耐心的给我们讲解一些专业方面的知识。另外,还要感谢何国杰和淮孟同学对我的无私帮助,使我得以顺利完成毕业设计。最后,再次对关心、帮助我的老师和同学表示衷心地感谢。基于C8051F单片机直流电动机反馈控制系统的设计与研究基于单片机的嵌入式Web服务器的研究MOTOROLA单片机MC68HC(8)05PV8/A内嵌EEPROM的工艺和制程方法及对良率的影响研究基于模糊控制的电阻钎焊单片机温度控制系统的研制基于MCS-51系列单片机的通用控制模块的研究基于单片机实现的供暖系统最佳启停自校正(STR)调节器单片机控制的二级倒立摆系统的研究基于增强型51系列单片机的TCP/IP协议栈的实现基于单片机的蓄电池自动监测系统基于32位嵌入式单片机系统的图像采集与处理技术的研究基于单片机的作物营养诊断专家系统的研究基于单片机的交流伺服电机运动控制系统研究与开发基于单片机的泵管内壁硬度测试仪的研制基于单片机的自动找平控制系统研究基于C8051F040单片机的嵌入式系统开发基于单片机的液压动力系统状态监测仪开发模糊Smith智能控制方法的研究及其单片机实现一种基于单片机的轴快流CO〈,2〉激光器的手持控制面板的研制基于双单片机冲床数控系统的研究基于CYGNAL单片机的在线间歇式浊度仪的研制基于单片机的喷油泵试验台控制器的研制基于单片机的软起动器的研究和设计基于单片机控制的高速快走丝电火花线切割机床短循环走丝方式研究基于单片机的机电产品控制系统开发基于PIC单片机的智能手机充电器基于单片机的实时内核设计及其应用研究基于单片机的远程抄表系统的设计与研究基于单片机的烟气二氧化硫浓度检测仪的研制基于微型光谱仪的单片机系统单片机系统软件构件开发的技术研究基于单片机的液体点滴速度自动检测仪的研制基于单片机系统的多功能温度测量仪的研制基于PIC单片机的电能采集终端的设计和应用\t"_
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 蜂箱细分市场深度研究报告
- 精密经纬仪产品供应链分析
- 带集成式洁身冲洗器的马桶产业链招商引资的调研报告
- 2024南通海关综合技术中心招聘劳务派遣人员2人笔试模拟试题及答案解析
- 2023-2024学年北京朝阳区高三(上)期中政治试题和答案
- 学期教学工作具体实施计划
- 急诊时间管理与调度方法计划
- 个体工商户购置商品借款协议三篇
- 学生社团活动的引导与支持计划
- 新零售策略计划
- 第三单元达标练习(单元练习)2024-2025学年统编版语文一年级上册
- 摩托车个人租车协议书模板
- 历年中国农业发展银行秋季校园招聘笔试真题及答案
- 2024年统编版新教材语文小学一年级上册第二单元测试题(有答案)
- 2023-2024学年广东省深圳市福田区北师大版三年级上册期中考试数学试卷(原卷版)
- 2024年山东省高考物理试卷(真题+答案)
- 汉语词汇与文化智慧树知到期末考试答案章节答案2024年浙江师范大学
- 水利安全生产风险防控“六项机制”右江模式经验分享
- 2023-2024学年教科版三年级上学期科学期中检测试卷(含答案)
- 2024年北京京能清洁能源电力股份有限公司招聘笔试参考题库含答案解析
- 第四单元《逻辑的力量》一等奖创新教案-高中语文统编版选择性必修上册
评论
0/150
提交评论