太阳能热水器控制器的软硬件设计.docx
- 文档编号:27637506
- 上传时间:2023-07-03
- 格式:DOCX
- 页数:45
- 大小:1.03MB
太阳能热水器控制器的软硬件设计.docx
《太阳能热水器控制器的软硬件设计.docx》由会员分享,可在线阅读,更多相关《太阳能热水器控制器的软硬件设计.docx(45页珍藏版)》请在冰豆网上搜索。
太阳能热水器控制器的软硬件设计
编号
本科生毕业设计(论文)
题目:
太阳能热水器控制器
的软硬件设计
物联网工程学院电子信息工程专业
学号0703090325
学生姓名于昆才
指导教师于凤芹教授
二〇一三年六月
设计总说明
在全世界能源都高度紧张的今天,传统的燃气和电热水器使用成本越来越高,太阳能热水器凭借着太阳能取之不尽的优点越来越受到人们的欢迎.但与太阳能热水器发展日趋成熟的现状不同,与之配套的热水器控制器还存在着很多问题.有些热水器控制器无法自动控制水温和水位,经常出现干烧、过烧或水温不适等情况.针对这个现状,设计一种单片机控制的太阳能热水器控制器.该控制器可以让热水器功能更加的完善,也使得热水器使用更加安全,因此这是一个具有实用价值的课题.
本课题以单片机控制为基础,提出了一种通过传感器实时检测温度和水位,再由单片机控制继电器驱动相应控制模块来实现温度和水位智能控制的系统方案,核心是设计出一个太阳能热水器控制器.该控制器在太阳能热水器原有的温度和水位显示功能基础上,新增了温度控制、水位控制、防干烧和过烧警报等功能.控制器的设计又分硬件部分和软件部分.硬件部分由STC89C52单片机主控模块、DS18B20温度传感器测温模块、干簧管水位传感器测水位模块、继电器驱动的温控和水位控制模块、键盘输入和液晶显示模块等部分组成.软件部分由单片机主控,通过程序分析传感器检测的当前温度和水位,再通过与预设值的比较来发出信号驱动相应的控制模块,实现对温度和水位的自动控制.此外本设计的程序也采用模块化结构,将整个程序设计分成若干功能模块.先将每个模块的功能实现,然后再组合到一起,使其逻辑关系更清晰易读,而且增强了程序的可移植性.
关键词:
热水器控制器;单片机;软件设计;硬件设计
DESIGNSUMMARY
Todaytheworld'senergyarehighlystrained,Traditionalgasandelectricwaterheatersuseincreasinglyhighercosts.Withtheadvantagesofinexhaustiblesolarenergy,thesolarwaterheatersaremoreandmorepopular.However,differentfromtherapiddevelopmentofsolarwaterheaters,theresearchofwaterheatercontrollerhasbeenininfancy.Manywaterheatercontrollercannotautomaticallycontrolthetemperatureorwaterlevel,causethedry-burning,over-burningormakingthetemperatureofthewateruncomfortable.Forthissituation,designamicroprocessorcontrolledsolarwaterheatercontroller.Thecontrollernotonlymaketheheater’sfunctionmoreperfect,butalsomakeitmoresave.So,itisavaluableissue.
Theobjectisbasedonmicrocontroller,proposedasystemsolutionwhichmakethesensordetectthetemperatureandwaterlevelatreal-time,andMCUcontroltherelaystomakeitdrivethecorrespondingmodule.Thecoreistodesignasolarwaterheatercontroller.Itnotonlyhasthefunctionoftemperatureandwaterleveldisplay,butalsohastemperaturecontrol,waterlevelcontrolandalarmingthedry-burningorover-burning.Thedesignofthecontrollerisdividedintohardwarecomponentsandsoftwarecomponents.ThehardwarepartisconsistofSTC89C52MCUcontrolmodule,DS18B20temperaturesensortemperaturemeasurementmodule,waterlevelmeasuremodule,temperatureandwaterlevelcontrolmodule,keyboardinputandLCDdisplaymodule.ThesoftwarepartisdispatchedbyMCU.Throughprogramanalyzesthecurrenttemperatureandwaterleveldetectedbysensor,toachievetheautomaticcontroloftemperatureandwaterlevel.Inaddition,theprogramisalsodesignedwithmodularstructure,thewholeprogramdesignisdividedintoseveralfunctionalmodules.Realizingthefunctionofeachmodulefirst,andthengroupthemtogether.Makingitwiththeclearandunderstandablestructure,butalsoenhancingtheportabilityofprograms.
Keywords:
waterheatercontroller;MCU;softwaredesign;hardwaredesign
第1章绪论
1.1课题背景
我们所处的时代堪称“能源时代”.人们从来没有像今天这样重视能源,世界上的大多数国家都在极力的在寻求新的廉价的可再生能源,以求得可持续发展和在日后的竞争中获取优势地位.太阳能则以其巨大、长久、广泛、无害等显著优势得到的广泛的关注.
在众多的太阳能产品中,太阳能热水器无疑是技术最成熟的也是与人们日常生活最密切相关的.太阳能热水器将太阳能转化为热能,利用太阳的光和热使水温升高,以满足人们日常需求.它不但有效利用了太阳能,节约了能源,而且相比传统的用煤炭或者电力对水进行加热的方式,更具有环保无污染的优点.所以太阳能热水器一经产生便受到广大人民的青睐.
前几年的热水器市场上,太阳能、电、燃气三种加热方式的热水器三分天下.但是随着世界能源危机的日益加重,有着可再生优势的太阳能加热方式逐渐打破了这一平衡,取代了传统的电能和燃气加热方式的热水器.2008年,太阳能热水器市场占有率首次超过了电热水器和燃气热水器之和,到2009年,其占有率达到56.7%.如表1-1所示为2001-2009年三种热水器市场占有率[1].
表1-12001-2009年三种热水器市场占有率
年份
电热水器(%)
燃气热水器(%)
太阳能热水器(%)
2001
30
54.8
15.2
2003
44.23
37.57
22.2
2005
45.2
26.57
28.23
2007
42.3
19.2
38.5
2008
49.2
50.8
2009
43.3
56.7
1.2太阳能热水器控制器国内外现状
我国太阳能热水器产业发展迅速,目前已经成为世界上最大的太阳能热水器生产国,但与热水器配套的控制器却一直处于研究和开发阶段[2].近几年来,市场上陆续出现了一些太阳能热水器控制器产品,但是大多数存在着诸如性能不稳定,容易产生误操作,温度、水位可以检测但是无法自动控制,数码管显示器经常出现乱码等问题,严重影响了用户使用.更有甚者,有些控制器质量较差,会经常发生故障,如加热温度过高时无法自动停止加热或者水箱内已经没水了但是还在加热,形成了过烧和干烧的情况,安全性无法保证.基于上述原因,太阳能热水器控制器这个有着广阔发展前景的产品,由于产品开发投入的较少,一直没有得到广泛的推广,从而也影响了太阳能热水器使用的用户体验.因此,在太阳能热水器控制器方面,应该引起足够的重视,要加大人力和财力的投入,开发出一款高质量高性能的控制器.
国外的太阳能热水器起步很早,世界上第一台热水器是美国马里兰州的肯普于1891年发明的.到20世纪40年代,人们创造了各式各样被统称为“闷晒式”的太阳能热水器[3].第二次世界大战之后人们的注意力又开始转向发展经济.一些缺少常规能源的国家如日本等最先开始投入到太阳能的开发和利用.经过人们的努力,一些简易的平板太阳能集热器
在当时在市场上出现.到了20世纪70年代,世界性能源危机日益严重,迫使人们对太阳能的开发和利用越来越重视.许多国家开始投入到太阳能开发的行列,其中太阳能热水器是典型的代表性的产品.到了70年代末期,太阳能热水器在美国、澳大利亚、日本、德国等国家得到了很大的发展.在随后的十几年中,平板集热器型热水器在一些国家得到了较快发展.1975年美国欧文斯--伊利诺伊公司发明了全玻璃真空管太阳能热水器并推向市场[3].当时,集热管的选择性吸收涂层平均阳光吸收率约为83%,后来由于采用了高真空技术,使得集热器的了损失比普通的平板式太阳能集热器热损失降低了两个数量级,从而太阳能热水器得到了进一步快速发展,到了上世纪90年代,这种热水器成为推广应用的主流产品.90年代末,为了进一步提高效率、提高性能,德国研制了热管式真空管太阳能热水器,一些国家研制了一些高质量的太阳能热水器专用的零部件,另一些国家为优化设计专门开发了太阳能热水器的应用软件.还有一些国家开始着手开发全天候使用的太阳能热水器控制器系统.总之在西方的发达国家,太阳能热水器领域的开发研究一直比较活跃.
1.3本论文研究内容
文章首先对太阳能热水器控制器的背景做了简单介绍并分析了当前国内外现状,发现国内的太阳能热水器产业已日趋成熟,但是与之相配套的太阳能热水器控制系统却存在很多问题.之后又对设计进行了需求分析,列出了控制器需要实现的主要功能,然后根据相应的功能来选择对应的芯片或器件来设计功能模块.本设计的硬件部分主要由单片机控制电路、温度传感器模块、水位传感器模块、温度控制和水位控制模块、键盘和液晶显示模块、警报装置等组成.软件部分通过对功能的设计和分析,制作了各模块的流程图.最后对本设计所做的工作进行总结,并给出建议和展望.
本论文的核心是设计一种太阳能热水器控制器,使热水器具有温度显示、水位显示、温度自动控制、水位自动控制和智能警报的功能.
温度检测部分通过DS18B20传感器来实现,DS18B20是一种数字式温度传感器,仅需要一条数据线与单片机连接来进行数据传输,而且不需要A/D转换模块,可以很大程度上简化电路.
水位检测部分通过干簧管水位传感器来实现,本论文共设计了四个检测点,分别对应水箱中的“下”、“中下”、“中上”、“上”的位置,当水没过检测点时,干簧管被磁化形成通路,对应的水位输出级会被拉低,单片机可以通过读各个检测点水位输出极的电平来判断水箱中水位.
温度和水位的控制部分分两种情况讨论,一种是人工操作,另一种是自动控制.本论文设计了四个控制按键,分别用来实现“加热”、“停止加热”、“上水”、“停止上水”功能.其中温度和水位的控制按键(如“加热”和“停止加热”)用两个按键来分别实现,是因为本论文中也设计了自动加热和上水的功能,如果每组只设计一个按键(即开关闭合为加热,断开为停止),当系统故障出现干烧或者过烧时,就无法通过人为操作使其停止了.自动控制部分由程序预先设定,在特定的条件下系统会自动对温度和水位进行调节.此外,本设计的控制模块都是通过单片机触发继电器来驱动相应大功率电路来实现的.
警报部分.本设计设置了两种情况报警:
干烧和过烧.当水位低于“下”而且还在加热的时候,系统发出干烧警报.无论水位如何,当温度高于80摄氏度且还在加热时,系统发出过烧警报.
第2章需求分析及总体设计
2.1需求分析
本课题设计的热水器控制器需要实现如下功能:
1温度显示.水温范围0~100摄氏度,精确到1摄氏度.
2水位显示.在水箱内设置4个检测点,分别代表水位“上”、“中上”、“中下”、“下”四个级别.
3温度自动控制.当系统检测到水温低于20摄氏度并且水位在“中下”以上时,系统启动加热装置,升高水温.当水温高于80摄氏度时,系统关闭加热装置,停止加热.这样可以使水箱里边的水温控制在一个合适的温度.
4水位自动控制.当系统检测到水位低于“下”时,启动自动上水装置,开始上水.当水位到“上”时,停止上水.
5智能警报.当系统检测到水位低于“下”,且此时还在加热时,启动警报装置,警报干烧.无论水位如何,当温度高于80摄氏度且还在加热时,系统启动警报装置,警报过烧.
2.2总体设计方案
系统的硬件通过单片机控制,其他部分由键盘模块、温度传感器模块、水位传感器模块、液晶显示模块、警报装置、继电器驱动的温度和水位控制电路等组成.
如图2-1所示,该控制器选用STC89C52单片机主控,供电部分通过电源模块将220V的交流电转化成5V直流电压.本设计设置了6个按键,分别实现电源、复位、加热、上水、停止加热、停止上水功能,人们可以通过外部按键的控制它们来实现相应的功能.温度传感器选用了防水的DS18B20,将其放入水箱中来实时检测水温.水位检测部分选用干簧管水位传感器,在水箱中设置4个检测点,用来帮助判断水箱中水位.显示部分用1602液晶显示器,主要显示当前水温和水位状况.温度和水位控制部分通过控制继电器驱动相应的加热装置或电磁阀来实现对温度和水位的调控.本系统还设计了警报装置,用来警报干烧和过烧情况,增强了系统的安全性.
图2-1系统的总体设计框图
2.3芯片选择方案论证
2.3.1单片机芯片的选择方案和论证
方案一:
采用89C51芯片作为硬件核心,采用FlashROM,内部具有4KBROM存储空间,能于3V的超低压工作,而且与MCS-51系列单片机完全兼容,但是运用于电路设计中时由于不具备ISP在线编程技术,当在对电路进行调试时,由于程序的错误修改或对程序的新增功能需要烧入程序时,对芯片的多次拔插会对芯片造成一定的损坏.
方案二:
采用STC89C52[4].该芯片内部存储器为8KBROM存储空间,同样具有89C51的功能,且具有在线编程可擦除技术,当在对电路进行调试时,由于程序的错误修改或对程序的新增功能需要烧入程序时,不需要对芯片多次拔插,所以不会对芯片造成损坏.另外,STC系列单片机的P0口不需要上拉电阻,可使电路更加简洁.
综上所述,本设计选择采用STC89C52作为主控制系统.
2.3.2温度传感器的选择方案和论证
方案一:
使用热敏电阻作为传感器,用热敏电阻与一个相应阻值电阻串联分压,利用热敏电阻阻值随着温度的变化而变化的特性,采集这两个电阻变化的分压值,并进行A/D转换.此设计方案需要用到A/D转换电路,增加硬件成本而且热敏电阻的感温特性曲线不是严格线性的,这样会产生较大的测量误差.
方案二:
采用数字式温度传感器DS18B20,此类传哪去为数字式传感器,仅需要一条数据线进行数据传输,易于与单片机连接,也不需要A/D转换模块,降低硬件成本和系统的复杂度.此外,数字式温度传感器具有精度高,测量范围广等优点.
从电路简化和系统稳定性角度考虑,本设计采用DS18B20传感器.由于是测热水器水箱内的水温,所以选择防水型DS18B20.
2.3.3水位传感器的选择方案和论证
方案一:
投入式液位传感器.把传感器探头投入液体中间,利用探头检测到的液体压力来测量出液体的深度.这种方案的缺点是长时间使用时探头会被腐蚀,不适合长期在水箱中使用.
方案二:
干簧管水位传感器.如图2-2所示在一段密封塑料管内分上、中上、中下、下四处放置四个干簧管作为四个检测点.在塑料管外套一个内部有环形磁铁的浮子,当水位变化时浮子也上下滑动,当浮子经过干簧管检测点时会触发其闭合,形成通路,使对应的水位输出级输出低电平,这样便可知道水箱内水位了.本方案干簧管的接触点与大气隔绝,管内有稀有气体,可有效防止水蒸气和尘埃等对其的腐蚀.
图2-2干簧管水位传感器示意图
由于方案一的探头易被腐蚀,所以本设计采用方案二.
2.4太阳能热水器的组成及工作原理简介
在进行太阳能热水器控制器硬件设计之前,先来补充一下太阳能热水器的组成和工作原理,熟悉其基本结构和工作过程.
图2-3太阳能热水器工作原理
如图2-3所示太阳能热水器主要由集热管,循环水箱和补给水箱三大部分组成.其中集热管主要用来吸收太阳能热量,加热过的水通过上升水管进入循环水箱.循环水箱中的冷水通过下降水管进入集热管中进行加热.自来水管用来往补给水箱中注水,补给水箱是用来给循环水箱提供冷水的.最终的热水通过热水输出管输出.
太阳能热水器的最主要器件是集热管[5],在热水器的集热管表面有一特殊涂层,它在太阳发出的可见光波长范围对光有极大的吸收率,吸收的光能转化为热能.而在集热器散热辐射的波长范围下,该涂层对长波的发射率很低,这样又可以保留吸收的太阳能热量,从而逐渐将冷水加热成热水.此外,集热管的结构也十分讲究.它像一根被拉长的热水壶内胆,是由两只玻璃管套合而成,外层是透明的,内层才是涂有光谱选择性的吸收涂层,内外管之间是真空的,可以防止散热.套管下边还有一块反射光板,这样使得玻璃管背光部分也会被照射到.通过这么多精心的设计,使得集热管可以能够最大限度的吸收光能而且最小限度的散失热量,所以即使在高寒地区,太阳能热水器也可以一年四季都正常使用.
集热管内的水通过吸收太阳能的热量温度上升,由于热水的密度要小于冷水,所以循环水箱中的冷水会通过下降水管进入集热管,而热水会通过上升水管进入循环水箱.循环水箱中的热水通过热水出水管输出时,循环水箱的水位会下降,这时补给水箱中的来自自来水管中的冷水会进入循环水箱,这样保证了冷水也是一直可以提供的.太阳能热水器就是通过这样的水循环原理实现不断将冷水加热成热水的.这种热水器利用循环加热的原理,因此又称循环热水器.
第3章硬件电路设计
3.1总述
该控制器以单片机核心,结合其他模块来实现温度、水位的控制和显示等功能.系统上电后,会首先初始化和扫描按键,当检测到来自键盘的信号时,单片机会通过控制相应的引脚电平来驱动相应的控制电路.温度传感器DS18B20和干簧管水位传感器用来检测实时的温度和当前的水位.当温度过高或水位高出或低于设定值时,单片机也会做出的反馈如:
停止加热、控制上水等,并会在一定条件下做出相应的警报.LCD液晶显示模块用来显示当前的温度和水位状况.
硬件系统原理图如图3-1所示,单片机的P1.0口与温度传感器DS18B20的数据线DQ相连.P1.1和P1.2均连接继电器驱动电路,P1.1连的继电器用来驱动一个电磁阀,以实现水位控制功能.P1.2的继电器驱动一个加热装置用来实现温度控制.P1.3引脚连接警报装置,当水位低于中下且还在加热或者当水温高于70摄氏度还在加热的时候,警报装置启动,以防止出现干烧和过烧的情况.P1.4~P1.7四个引脚分别连接水位传感器的下、中下、中上、上四个水位探针的输出极.P0.0~P0.7与1602显示器的数据线相连,1602显示器的使能端接在单片机的P2.0口,读写控制端分别接P2.7和P2.6.单片机的P2.1~P2.4分别接停止上水开关、上水开关、停止加热开关和加热开关,当按下相应的按键时,单片机对应I/O口接收到信号再通过程序控制来做出相应的反馈.
图3-1硬件系统原理框图
3.2温度传感器模块设计
3.2.1DS18B20简介
温度传感器是最常用的传感器之一.早期的温度传感器都是模拟传感器,如热敏电阻,随着环境温度的变化,它的阻值也发生线性变化,用处理器采集电阻两端的电压,然后根据特定的公式就可计算当前环境温度.随着科技的进步,现代的温度传感器已经走向数字化,并广泛的应用到生产实践的各个领域,为我们生活提供了很大的便利条件.随着现代仪器的发展,微型化、集成化、数字化正在成为传感器的一个重要方向.美国DALLAS半导体公司推出的数字化温度传感器DS18B20[4]采用单总线协议,即与单片机接口仅需占用一个I/O端口,无须任何外部元件,直接将环境温度转化为数字信号,以数字码方式串行输出,从而大大的简化了传感器与单片机的接口联系.
DS18B20只有电源、数据和地线三个引脚,使用起来非常方便.电路连接如3-2所示.GND接地线,VCC接电源.信号输入输出端DQ与单片机P1.0引脚相连,并且连有10K欧的上拉电阻,确保总线空闲时一直处于高电平.
图3-2DS18B20电路连接
3.2.2DS18B20工作原理
硬件电路连接好以后,接下来的问题就是单片机如何将DS18B20中的温度数据读取出来.本设计只需要一个温度传感器,就不需要读取ROM编码以及匹配ROM编码了,只要用跳过ROM(CCH)命令,就可以开始进行温度转换和读取的操作[6].
DS18B20在出厂时默认配置为12位,其中最高位为符号位,即温度值共11位,单片机在读取数据时,一次会读2字节共16位,读完后将低11位的二进制数转化为十进制数后再乘以0.0625边为所测的实际温度值.另外,还需要判断温度的正负.由于温度值只占用了11位,所以前五位均为符号位,这五位同时变化.前五位位1时,读取的温度为负值,此时测量的数值需要取反加1再乘以0.0625才可得得到实际温度值.前五位为0时,读取的温度为正值,此时仅需要将测量的数值直接乘以0.0625即为实际温度值.表3-2所示为常用的DS18B20指令
表3-2常用DS18B20指令
读ROM
33H
读DS18B20中的编码(即64位地址)
符合ROM
55H
发出此命令后,接着发出64位ROM编码,访问单总线上与该编码相对应的DS18B20,使之作出响应,为下一步对该DS18B20的读写作准备
搜索ROM
0F0H
用于确定挂接在同一总线上DS18B20的个数和识别64位ROM地址,为操作各器件作好准备
跳过ROM
0CCH
忽略64位ROM地址,直接向DS18B20V温度转换命令,适用于单个DS18B20工作
告警搜索命令
0ECH
执行后,只有温度超过预设值上限或下限的片子才做出响应
温度转换
44H
启动DS18B20进行温度转换,转换时间最长为500ms(典型为200ms),结果丰入内部9字节RAM中
读暂存器
BEH
读内部RAM中9字节的内容
写暂存器
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 太阳能热水器 控制器 软硬件 设计