




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
太阳能热水器智能控制系统摘要本文设计了一个太阳能热水器智能控制系统。它以89C52单片机为核心,配合电阻型4档水位传感器、负温度系数NTC热敏电阻温度传感器、8255A扩展键盘和显示器件、驱动电路(电磁阀、电加热、报警)等外围器件,完成对太阳能热水器容器内的水位、水温测量、显示;时间显示;缺水时自动上水,水溢报警;手动上水、参数设置;定时水温过低智能电加热等功能。其中本文第一章主要说明了太阳能热水器智能控制系统的研究现状和本课题的主要任务,第二章对系统的整体结构作了简单介绍,第三章重点介绍了水位水温测量电路,第四章介绍了时钟电路,第五章介绍了显示和键盘电路,第六章对其他电路作了介绍,第七章是对水位测量电路的硬件调试。本系统对于水位传感器、水温传感器的电阻数据的处理均采用独特的RC充放电的方法。它与使用A/D转换器相比,电路简单、制造成本低。特别适用于对水位、水温要求不精确的场合。关键词:太阳能,热水器,控制器,89C52,RC充放电AbstractUlisarticlehasdesignedaintelligencecontrolsystemforsolar-poweredwaterheater.Ittakethe89C52microcontrollerintegratedcircuitasthecore,thecoordinate4giadesofwaterslevelresistancesensor,thenegativetemperahirecoefficientNTCthennistortemperahiresensoi\the8255Aexpansionkeyboardandthedemonstrationcomponent,theachiatecircuit(solenoidvalve,electricheating,warning)andotherperipheiycomponent,completestothewaterlevelandtemperaturemeasureanddemonstrate;thetimedemonstrate;lackofwaterautomaticallyupstream,thewateroveidflowwarn;fixedtimeintelligencelyelectricheat.Hiefirstchapteroftliisarticlemainlyexplainedtheresearchsituationofthesolar-poweredwaterheaterintelligencecontrolsystemandtheprimarymissionoftliistopic.Thesecondchapterhasmadethesimpleintroductiontotheoverallconstnictionofthesystem.Hietliirdchapterintroducedwithemphasisonthewaterlevelandwatertemperaturemeteringcircuit.Tliefourthchapterintroducedtheclockcircuit・Thefifthchapterintroducedthedemonstrationandthekeyboardcircuit,.ThesixthchapterhasmadetheintroductiontoothercirciHts.Hieseventhchapteristhehardwaredebuggingofthewaterlevelmeasuringcircuit.RegardingtheprocessofthewaterlevelsensorandwatertemperaturesensorresistancedatatliissystemusesthemethodoftheuniqueRCelectricsufficientanddischarging.ComparedtousingtheA/Dconverter,theelectriccircuitissimple,theproductioncostislow.Speciallyitissuitableforthewaterlevelandthewatertemperaturemeasuringrequestedimprecisesituation・Keyword:Solarenergy,waterheater,controller,89C52,RCelectricsufficientanddischarge目录目录目录TOC\o"1-5"\h\z\o"CurrentDocument"摘要I\o"CurrentDocument"AbstractII目录HI\o"CurrentDocument"第一章引言1\o"CurrentDocument"1.1课题的背景意义1\o"CurrentDocument"1.2太阳能热水器和其控制器的发展现状1\o"CurrentDocument"1.3课题的研究内容3\o"CurrentDocument"第二章太阳能热水器智能水位控制系统整体结构介绍4\o"CurrentDocument"第三章水位和水温测量电路硬件设计5\o"CurrentDocument"3.1水位测量电路5\o"CurrentDocument"3.1.1方案比较选择5\o"CurrentDocument"3.1.2水位测量电路的具体设计及优化8\o"CurrentDocument"3.2水温测量电路15\o"CurrentDocument"3.2.1方案比较选择15\o"CurrentDocument"3.2.2水温测量电路的设计及温度计算方法16\o"CurrentDocument"3.3水位、水温测量电路的整体设计20\o"CurrentDocument"第四章显示电路21\o"CurrentDocument"4.1方案选择21\o"CurrentDocument"8255A芯片介绍21\o"CurrentDocument"8255A在太阳能热水器控制电路中的作用24\o"CurrentDocument"4.2显示电路工作原理25\o"CurrentDocument"8255A显示电路的硬件结构。258255A实现显示方法27\o"CurrentDocument"第五章其他硬件电路设计30\o"CurrentDocument"5.1上水电磁阀、电加热、报警等驱动电路30\o"CurrentDocument"5.1.1上水控制电路30\o"CurrentDocument"5.1.2电加热控制电路30\o"CurrentDocument"5.1.3报警控制电路30\o"CurrentDocument"5.1.4水位显示电路31\o"CurrentDocument"5.2电源电路31\o"CurrentDocument"参考文献33\o"CurrentDocument"致谢34\o"CurrentDocument"附录35第一章引言第一章引言第一章引言1.1课题的背景意义随着太阳能热水器的迅速推广,广大消费者对太阳能热水器特别是太阳能热水器控制器的要求越來越高,太阳能热水器商家为使自己的产品能在市场上生存和发展,在不断提高太阳能热水器热水性能的同时,也不断加大力度满足消费者对于太阳能使用方便的要求,于是太阳能热水器的智能化程度越來越高。本设计追踪科技应用前沿,跟踪市场,根据论文资料及市场现有产品模型,在加上自己的理解和创意,模仿出了一套智能化的太阳能热水器控制系统。本系统完全跟随太阳能热水器本身智能化程度和成本的要求,为太阳能热水器提供了一套智能化程度高、性能良好、使用方便、经济实惠的配套控制系统。1.2太阳能热水器和其控制器的发展现状中国太阳能热水产业的发展始于上世纪80年代,当时的市场定位是农村或中小城镇的低收入家庭。90年代后期,住宅商品化的发展以及家庭对热水需求的大幅度增长为太阳能热水器的发展提供了市场空间,太阳能热水器的生产规模进一步扩大,形成了一些有一定知名度的产品和品牌。自上世纪90年代以來,我国太阳能热水器行业保持了10多年的快速增长,2005年太阳能热水器年生产量为1500万平方米,是2000年640万平方米的2倍多,到2005年底,我国太阳能热水器保有量超过7500万平方米是2000年2600万平方米的近3倍。目前,我国既是世界上最大的太阳能热水器生产国,同时也拥有世界上最大的太阳能热水器市场。至2005年,全国有1000多家有一定规模的太阳热水器生产企业,年总产值达150多亿元,出口创汇2000万美元,全行业提供约30多万个就业机会,产生了显著的经济、环境和社会效益⑴。到目前已有许多太阳能品牌为大家耳熟能详,如皇明、桑乐、四季牧歌、力诺等。总之,太阳能热水器已是一件和电视机、洗衣机一样必不可少的家用电器。进步源于竞争,在我国太阳能拥有广阔的市场,当然也有更大的竞争,各大商家为了使自己的产品在市场上立足并长远发展,不断提高太阳能热水器的性能,其中太阳能热水器控制器以其灵活、贴近客户成为商家竞争的热点。目前,各大商家纷纷提高太阳能热水器的智能化程度來满足消费者的需求。许多太阳能热水器的功能有:开机自检、温控上水、强制上水、水位预置、水质设置、水温指示、低水压上水、水位显示、防高温空晒、缺水报警、自动防溢流、缺水上水、手动上水、故障提示等许多贴近客户需求的功能。目前太阳能控制器的控制器基本实现数字化,以单片机为控制核心的控制系统占领太阳能热水器的主要市场。在市场调查中发现,太阳能控制单片机的型号较多,其中应用最多的是51系列和PIC系列单片机。其基本框图如图1-1所示。TN0TN0~IN]图1-1市场太阳能热水器基本框图⑵太阳能热水器控制系统可以实现水位显示、水位控制、温度显示、防冻等多种功能,其中对水位的检测、控制,实现水位显示、自动上水、超限报警是太阳能热水器控制系统的核心。目前大多数太阳能热水器的水位传感器都釆用分段式水位传感器,因为太阳能热水器对水位精确度的要求不高,并且分段式传感器的成本很低。图1-2是常用的一种分段式热水器传感器的基本原理。对于温度的检测便于用户的使用和控制电加热。目前,温度传感器的应用种类较为繁杂,有直接使用热电阻、热电偶的,也有使用数字温度变送器(如MAX6674)的。在显示方面多采用LED显示或LCD液晶显示。♦12W10XVII430k4MikVCX?VCCDILED花OSEAD2-H-LED♦12W10XVII430k4MikVCX?VCCDILED花OSEAD2-H-LEDDSEB4MikW12J4MikW12J丁"W—i__oLEDIrosecW134MikD4W134MikD4图1-2—种分段式水温传感器⑶1.3课题的研究内容本课题主要是对市场现有产品的仿制,要能够实现太阳能热水器的完整功能。本课题以89C52单片机为核心配合传感器、显示器件、电磁阀、电加热器、报警器等外围器件,釆集热水器储水箱中的水位、水温信号,通过控制电动机的运转、电加热器加热來控制储水器的水位、温度,并完成水位、水温显示,时间显示,水溢报警等功能。另外配有键盘,可以实现手动上水、手动电加热、设置水位、设置温度等功能。第二章太阳能热水器智能水位控制系统整体结构介绍第二章太阳能热水器智能水位控制系统整体结构介绍太阳能热水器整体结构大致可以分为四大部分:水位、水温测量电路。这部分用于釆集水位水温信号给单片机,是太阳能热水器控制器最关键的部位。时间、水位、温度显示和键盘电路。这部分用于系统和人的信息交互,有对太阳能热水器状态的直观显示,也有用于人对系统控制的键盘电路。时钟电路。给系统提供时间显示和参考时间。驱动电路。包括电加热、上水电磁阀、报警电路,是整个系统的执行部分。系统的整体结构图如图2-1所示。图2-1太阳能热水器控制系统整体结构图结论结论第三章水位和水温测量电路硬件设计水位测量和水温测量是太阳能热水器控制系统的最重要部分,是实现其他功能的基础,此部分性能好坏将关系到整个系统的优良程度,所以设计一个性能良好的水位、水温测量系统是本设计的重点。3.1水位测量电路水位测量可以有多种方法,需从性能和成本两方面进行考虑,选择合适的方案。3.1.1方案比较选择排阻分档键盘式水位传感器在许多资料中都介绍了一种类似键盘电路的分档水位传感器,其原理图如图3-1所不。+5V89C52图3・1排阻式水位测试电路示意图⑷它的工作原理类似于键盘的工作原理,用5根不锈钢针分别置于水箱内的四种不同高度的位置,当某个钢针不接触水面时,其输出为高电平;当其与水面接触时则输出低电平。它们的输出接至电子开关CD4069,经过CD4069反向并经74LS244驱动后分别接入89C52的P1.0〜P1.3引脚。CPU对这些引脚进行判断后,送去显示相应的水位值。显示共分4档,每档为满水位的25%。这种方法简单,易实现,省去了传统的A/D转换器,成本低,虽然不精确但可以满足使用要求冏。RC充放电式水位传感器测量电路这种电路资料较少,但我们在市场上购买的桑乐太阳能的水位和水温传感器就是基于这种原理,其基本形状如图3-2所示。图3-2桑乐太阳能水位水温传感器外形图从图3・2中我们可以清楚的地看到传感器外形非常简单,一共只有4个端口,其中一个是防冻接口,没有使用,使用的只有3个端口,在可用的三个端口上分别标有公共、水位、水温标志,由此可知测量水位、水温都只用了一个端口。观察传感器可知水位传感器有5个与水接触点,我们从上到下依次命名它们为1一5触点。我们分别测量了触点不同接法时公共和水位两端口之间的电阻,数据如表3-1所示。由上述测试结果的电阻值得出这样的规律,那就是电阻的并联短接,其原理如图3・3所示。表3・1输出电阻值表短接方式无短接1、2K2、31、2、3、41、2、3、4、5输出电阻值(kQ)极人25公共水位o公共水位oo图3-3桑乐太阳能水位传感器原理它的工作原理是,水面每接触一个钢针就会多并联一个电阻,电阻随水位变化而规律的变化。利用单片机的一个口周期性的给电容电路充放电,然后用储水箱储水箱厂充放电口检测口充放电口检测口图3・4RC充放电式水位传感器测量电路原理图单片机监测电容两端电压的变化,因为电容电压的上升或下降时间t=RC,所以用单片机记录这个时间就能判别电阻的变化,进而转化为水位的变化进行显示及其他动作。传感器选择RC充放电式水位传感器测量电路,明显优于排阻分档键盘式水位传感器的地方有:(1)接线简单,排阻分档键盘式水位传感器需要四根导线传输水位信号,而RC充放电式水位传感器仅需要两根就能完成,这对于线路较长的太阳能热水器传输信号电路來说能节省相当多的导线资源。(2)给水温测量电路设计带來方便,RC充放电式水位传感器的原理可以同样运用到热电阻温度测量电路中。(3)占用较少的I/O口,仅需两个I/O口就能完成水位检测任务,极大地节约了单片机的I/O口资源。综上比较可见选用第二种方案较为优越。3.1.2水位测量电路的具体设计及优化直接接单片机I/O口检测单片机中的定时器可以提供电压变化时间的纪录,接下来就是如何将电压的变化传递给单片机。一种简单的方案是:用P1.0口给RC电路周期性的充放电,然后用P1.1口监测电容的电平变化,完成计时,这种方案看上去简单易实现,但实际则行不通。按刚才提到的方法接图如图3-5o这样做得到的结果是P1.1的电压一直保持高电平,即电容电压一直保持高点平。这与单片机内部电路有关,单片机的内部电路如图3・6所示。31.031.0水位4x?5k======星===一======星===一■=■■二图3・5直接用I/O检测电容电压测量水位电路原理图内部总线写入VCC内部总线写入VCC图3・6P1口的位结构⑸从图中可见,P1口只有高电平和低电平两种状态,当P1.1口为高电平时,将电容端与P1.1连接,VCC会通过内部上拉电阻持续给电容充电,所以监测电容电压一直为高电平。而当将其置低电平时,P1口相当于接地,将会出现相反的情况,其通过地一直给电容放电,电容电压一直低电平。釆取与I/O隔离并用中断监测电容电压的电路这样需要将电容电压与单片机监测端口隔离,采取如图3・7所示电路。
P1.0水位电阻+5V丁+12V跟随器LM35S比较器INTOP1.0水位电阻+5V丁+12V跟随器LM35S比较器INTO图3-7水位测量电路LM358的应用LM358的正向输入端接电容电压正端,反向输入端与输出端相连,构成电压跟随器。电压跟随器的显著特点就是,输入阻抗高,而输出阻抗低,一般来说,输入阻抗要达到儿兆欧姆是很容易做到的。输出阻抗低,通常可以到儿欧姆,英至更低,也就是说电压跟随器有较好的隔离作用,使输出对输入影像较小,正好满足我们的要求回。LM358的输出电压幅度为0至VCC-1.5V,而要跟随的电压范围为0-5V,所以应选用大于+6.5V的电源供电,这里选用+12V单电源供电LM393的作用给比较器设置+3V的参考电压,将电容电压的指数曲线变成矩形波,波形图如图3・8所示。将参考电压接同相输入端,比较电压接反相输入端,从而实现电容电压在上升到参考电压时比较器产生下降沿信号,作为单片机的外部中断信号。如图3・8所示。根据LM393的特性本设计电源电路提供的电压,选用+5v给其供电。由LM393的内部原理图可知LM393的输出为集电极开路,它的输出高电平与LM393的电源无关,但须接外部电源和上拉电阻。在图3・7所示的水位测量电路中并未有这样的上拉电压电路,是因为单片机内部INTO、INT1口已经具备了这样的电路。INTO、INTI的内部电路类似于Pl口如图3・6所示。另外LM393的同相输入端输入和反相输入端输入之间有相互嵌位作用,+5V电源和分压电阻提供的+3V参考带电平对反相输入端输入有嵌位作用,如果不接LM358电源跟随器而与电容直接相连,显然会影响电容电压的变化,这就是要加电压跟随器进行隔离的原因。0比较器输出信号•0比较器输出信号•电容电压波形1|■1■■||■||■aaiiliaIiiii1iitiliiia□112.00VCII22.00V2OT.0”血加诚图3・8电容电压与比较器输出信号(仿真和实测)充电时间的设定和电容的选择电容充电时间的计算公式为:T=RC(3-1)T即位电容电压上升时间。编程使P1.0口输出周期性的方波,给电容充放电,方波半周期(充电或放电时间)为T',应使方波半周期大于电容电压上升时间,即:T>T(3-2)如果使用单片机主程序一直循环给P1.4口输出方波,方波的周期可以很大,超过儿秒其至儿十秒,但是这样主程序就只能干这一项工作,影响单片机的其他工作。所以要用定时器來实现方波输出。这样用定时器就可以用定时中断使P1.4口输出方波,乂不影响单片机的其他工作。这样方波的周期就受定时器定时时间的限制。89C52单片机定时器共有4种定时方式,其中定时时间最长的为定时方式lo当定时器/计数器在方式1下做定时器用时,其定时时间计算公式为:T=(N-计数初值)X晶振周期x1:(3-3)采用12M的晶振,晶振周期为l/12xlO^S,因为采取定时器终端方式,所以N=0XFFFF=65536o所以:T=(65536-计数初值)us(3-4)那么当T二30ms,计数初值为0X8AD0二35536。定时输出30ms其程序如下:voidmainO{initial。;wliile(l)displayO;}voidtimertlOinternipt3{THl=0X8A;〃重新给定时器1赋值TLl=0XD0;P1_4=!P1_4;〃充放电变换if(Pl_4)//充电开始时启动定时器0{TL0=TH0=0X00;//定时器0赋初值0TR0=l;〃启动定时器0}}如图3・6,这里用INTO中断來监视记录电容变化,内部编程实现计时器对电容电压上升时间的记录,所以可以通过将计时器寄存器里的值显示出來的方式直观显示电容电压结果,來确定合适的电容。以下是编程实现这一过程的结果。表3-2不同电容大小时计•数器寄存器中的值一水位二水位三水位四水位THOTLOTHOTLOTHOTLOTHOTLO2uFA0-B485-9870-836365luF64^7049-5038-4032-340.22uFo18gA3172-80164-72由表格数据可见当选用2uF电容时,应需较大的充放电时间,充放电不够充分,所以计数器寄存器中的值大而不准;而当取0.22UF电容式计数寄存器THO的值仅为1或2,非常不利用区分;当取1UF电容时,数据大小合适,分段明显,所以应选用luF电容。另外,电容两端的最高电压为+5V,最低电压为OV,所以所选电容的耐压留有一定裕量为最大电压的3倍,所以应选取耐压为15V以上的电容。由表3・2知R最大值为25KQ,所以:T>T=RC=25nis(3-5)乂由式3・8得:0us<T<2160us<T<216(65536)us(3-6)这样由公式3・5、3・6得到T<T<65536uSo因此取充电和放电时间为30mso4、编程实现水位处理由于水电阻的波动性和电容的不稳定性等原因,计数器中的数值会有一定的波动,所以需要对数据进行相应的处理显示水位。其中bufll]为计数器0寄存器中的值。voidLvReadO{if(buf[l]>60){WTLV=1;〃显示1水位L3=0;L2=l;Ll=l;L0=l;}elseif(buf{l]>45){WTLV=2;〃显示2水位L3=1;L2=;L1=1;LO=1;}elseif(buf{l]>36){WTLV=3;//显示3水位L3=1;L2=1;L1=O;LO=1;elseWTLV=4;//显示4水位L3=l;L2=l;Ll=l;L0=0;}}3.2水温测量电路水温测量电路的设计包括传感器的选择和测量电路的选择。考虑到性价比等原因,市场上大部分太阳能热水器的温度传感器都选用NTC负温度系数热电阻,本系统也选用这种。下面主要论述测量电路。3.2.1方案比较选择温度测量方案很多,下面通过比较选择合适的测量方法。热电阻A/D转换式水温传感器01234567DDDDDDDD01234567DDDDDDDD图3-9热电阻A/D转换电路原理图A/D转换式水温传感器的原理是,利用热敏电阻的阻值随温度变化的特性,将随温度变化的电阻信号转化为变化的电压信号,然后将这个电压信号经运放放大处理成0—5V的电压信号,电压信号经A/D转换变成数字信号送给单片机。这种电路测量比较精确,但需用A/D转换器,而A/D转换的价格较贵,会加大成本,另外A/D转换需占用8个数据口和两个片选口及两个控制口共12个I/O口。RC充放电式热电阻水温传感器测量电路RC充放电式热电阻水温传感器测量电路的原理与前面提到的RC充放电式水位传感器测量电路原理完全相同,只要把水位电阻换成热电阻就可以了。其缺点是不够精确,但成本很低,对于对温度要求不算精确的太阳能热水器系统,完全可以满足我们的需要。另外与A/D转换式温度传感器相比,其优势还是十分突出的:仅需2个I/O口就能完成对温度的检测,节约了单片机的I/O,有利于降低成本。实现起来也十分简单。3.2.2水温测量电路的设计及温度计算方法图3-10水温测量电路原理图对太阳能热水器中水的温度进行控制及显示,需对热水器水温与出水温度进行检测。对于热水器來说温度控制与显示的精度要求并不高,因此本设计采用负温度系数NTC热敏电阻作为测温元件,利用NTC热敏电阻阻值随温度变化而改变的特性实现测温。水温计算方法NTC热敏电阻的阻值与温度的准确关系为:RrTexp"*—*(3-7)・I丄“丿.式中R0为温度为TO时的电阻值,TO为基准温度29&15K,即25°C。0为材料系数。RO与0由热敏电阻生产厂家给出⑴。由式3・7可得:由式3・3和式3・4可得;(3-9)Rl=Nt(3-9)%No经测试T0=25°C的计数器寄存器中的值No=16384o将TO、N。、0值代入上式并用摄氏温度表示时水胆温度为;亠亠+丄405016384亠亠+丄405016384298.15-273.1(340)因为89C52单片机无法进行直接的对数运算,按上述公式计算温度值将是十分困难的。在这里查表法是一种经常釆用的解决办法,即事先计算出所有可能的计时结果所对应的温度值以表格形式写入控制程序,每次转换完毕后查表得出所对应的温度值。但此种方法需占用较多的程序储存空间本设计釆用一次线性插值法对温度与A/D转换结果之间的关系进行分段线性化,以少量单片机能直接进行的运算的组合去逼近目标函数。图3・11为温度T与计时器计时结果
N之间的关系曲线。908070605040302010X:5.N之间的关系曲线。908070605040302010X:5.Y:0■1OoX10图3・11计时寄存器值N与温度T的关系曲线其中圆滑曲线为实际的T-N关系曲线设计中根据使用要求将曲线在0・90范围内分3段釆用图中的3段直线断代替实际曲线。曲线按式3・10计算出图中各线段端点坐标值为:N1二1000,T1二90(°C);N2=7549,T2=43(°C);N3=20000,T3=20(°C);N4二56450,T4二0(°C);分段线性化后温度T的近似计算公式:1000<N<7549,T=90-(9。1000<N<7549,T=90-(9。-43)(N-1000)=97.2-0.0072N(°C)65497549<N<20000,T=43-(43—20)(N-7549)12451=50.549-0.001N(°C)(3-11)(3-⑵20000.N<56450,-20—型驾严w.05(C)(5)为了能在单片机上进行计算,将以上三式进一步变换成如下形式(其中ii】t为取整函数):T=97-int(NM:8/1000),1000<N<7549(3-14)T=50-int(N/1000),7549<N<20000(3-15)T=30-int(N*5/10000),20000<N<56450(3-16)式3-14.3-15和3・16的计算过程仅需通过简单的儿步移位与加减法操作即可实现,与通过式3・10计算并进行四舍五入圆整的结果相比较单片机通过式3・14、3-15和3-16计算出的温度值在0〜20范围内误差不超过2°C,在20〜90范围内误差不超过1°C,并且计算出的温度值与A/D转结果之间保持良好的单调递增关系。程序实现测量水温程序与水位程序类似,由单片机口给电容发矩形波充放电,然后检测中断计时,根据计数器中的值來判断当前温度。也就是水温测量程序包含中断计时和数据处理两部分。定时器0和1已经被水位测量电路,和充电定时占用,所以这里需可以编程序实现水位和水温中断轮流开关,來轮流使用定时器0,计算温度传感器的上升时间。数据处理公式己在上面列出。下面列出数据处理程序,其中buf[3]、buf[2]为中断1得到的定时器1中的值,中断程序见附件。voidTmReadO{uintval;val=buf[3]M:256+buf[2];if(val<7549)TMP=97-int(val*8/1000);elseif(val<20000)TMP=5O-int(val/lOOO);elseTMP=30-int(val*5/10000);}3.3水位、水温测量电路的整体设计由上面的分析知道,两者的电路原理一样,都是用pi口给电容充电,用中断检测电容电压变化。作为充电口pi口的作用相当于电源(充电时)或地(方电时),所以可以用同一个口为两个冲放电回路充电,两个回路是独立的。LM393和LM358都是双运放、8脚DIP封装,恰好用于水位和水温检测两路。下面图3-12是实际的水位和水温测量电路图。!♦19O12J4-C1-C7P1円P1P1P1P1P1P1X1X2KD-89C32O12J4-3C7POPOPOPOPOWPOPO01234,67P21刃刃!♦19O12J4-C1-C7P1円P1P1P1P1P1P1X1X2KD-89C32O12J4-3C7POPOPOPOPOWPOPO01234,67P21刃刃P2P2'刃刃P21XDXXDALK-PP那3$3736”J3)231D26272$3910~TF~Jo~图3・12水位和水温测量电路实际电路图以P1.0口作为水位和水温电路的公共充0放电口,以INTO作为水位测量电路的中断检测口,以INT1作为水温测量电路的中断检测第四章显示电路键盘和显示电路是太阳能热水器水位控制系统与用户的接口,用户通过显示來观察水温、水位、时间等状态值,再根据观察到的值,通过键盘对太阳能热水器进行控制。本章设计了较为合理的键盘和显示电路完成这些功能。4.1方案选择太阳能热水器系统需要用数码管显示时间和温度,时间精确到分,24或12小时制,这就需要4位显刀P;而温度显7JP范围为0—99度,这乂需雯2位显示。对于六位显示,采用占用I/O较少的动态扫描方式,也需要六位位选码数据线,八位段选码数据线,共需14个I/O口。键盘釆用复用方式,仍需要至少4个I/O口。键盘和显示电路共需18个I/O口,89C52单片机共有4X8个I/O口,而乂有8个口有特殊功能,也就是常用的共有3X8个I/O口,该系统的其他设置也还要占用大量I/O口,显然这样太浪费资源。4.1.18255A芯片介绍Intel公司生产的可编程并行接口芯片8255A己广泛应用于实际工程中,例如8255A与A/D、D/A配合构成数据釆集系统,通过8255A连接的两个或多个系统构成相互之间的通信,系统与外设之间通过8255A交换信息,等等,所有这些系统都将8255A用作为并行接口。1.8255A的引脚功能定义8255A的原理结构如图5-1所示。它采用40脚的DIP封装,其引脚定义如表5・1所示。8255A为一可编程的通用接口芯片。它有三个数据端口A、B、C,每个端口为8位,并均可设成输入和输出方式,但各个端口仍有差异:端口A(PA0〜PA7):8位数据输出锁存/缓冲器,8位数据输入锁存器;端口B(PBO〜PB7):8位数据I/O锁存/缓冲器,8位数据输入缓冲器;端口C(PCO〜PC7):8位输出锁存/缓冲器,8位输入缓冲器(输入时没有ESET锁存)。U=Cp7~D0控制寄存器VCCGNDRDcs端口A端口cPA7-PA0高四位低四位PC7-PC4ESET锁存)。U=Cp7~D0控制寄存器VCCGNDRDcs端口A端口cPA7-PA0高四位低四位PC7-PC4PC3〜PCOPB7-PB0心口纟11端口BPB7-PB0心口纟11端口B图4・18255A输入输出口和编程模型表4・18255A引脚定义引脚名功能连接去向D0-D7数据总线(双向)CPURESET复位输入CPUCS片选信号译码电路RD读信号CPUW写信号CPUAO,Al端门地址CPUPA0-PA7--'i'j1'A外设
PBOPB7端11B外设PCOPC7端11C外设VCC电源(+5V)/GND地/在模式控制下这个端口乂可以分成两个4位的端口,它们可单独用作为输出控制和状态输入。端口A、E、C乂可组成两组端口(12位):A组和B组,参见图5・2。在每组中,端口A和端口B用作为数据端口,端口C用作为控制和状态联络线。在8255A中,除了这三个端口外,还有一个控制寄存器,用于控制8255A的工作方式。因此8255A共有4个端口寄存器,分别用Ao、A】指定:Ai=O,Ao=O,表示访问端口A;Ai=O,Ao=l,表示访问端口B;Ai=l,Ao=O,表示访问端口C:Ai=l,Ao=l,表示访问控制寄存器。2.8255的工作方式图4-2方式控制字8255A有三种基本工作方式:方式0:基本的输入/输出
方式1:有联络信号的输入/输出;方式2:双向传送。A组可釆用方式0〜方式2,而E组只能釆用方式0和方式1,这由8255A的方式控制字控制。当向Ai=l.Ao=l的端口寄存器(即控制寄存器)发送D7=l的控制字时,其作用为方式控制字,各个位的含义如图5・2所示。工作方式介绍方式0——基本的输入/输出将端口信号线分成4组,分别由方式控制字的D4、D3、DI、DO控制其传送方向,当某位为1时,相应的端口数据线设置成输入方式;当某位为0时,相应的端口数据线设置成输出方式。特别注意,当将C口的低4位设置成同一传送方向时,则端口C可用作为独立的端口,因此,8255A提供了3个独立的8为端口[刃。方式1——有联络信号的输入/输出方式2——双向传送本设计用方式0,所以方式1、方式2不再详细介绍。4.1.28255A在太阳能热水器控制电路中的作用单片机与8255A的连接如图5・3所示,如图所示分别将8255A的读、写、复位端口与单片机的读、写、复位端口相连。AO、A1、西为8255A的地址口,D0・D9为数据口。P2.5与A1相连,P2.6与A2相连,P2.7与丙相连,提供8255的端口地址信号。单片机的P0口为8255A提供数据输出输入。8255A共占用单片机11个常用I/O口,比直接显示键盘电路节省了7个I/O口。U2234567813亠】2二1514311918F10/TpurrP12P13P14P15P16P17INTIINTO234567813亠】2二1514311918F10/TpurrP12P13P14P15P16P17INTIINTOT1TOeaTvpXIX2RESET而WRPOOPO1P02P03PO4P05P06P07P20P21P22P23P24P25P26P27RXDTXDALE/PPSEN38333?32363135303429332832272152236348T2?28WIT302989C52RDWRAOAlRESETCS32140393837181920212223242514151613456701234367AAAAAAAAppppppppPPPPPPPP01234567CCCCCCCCpppppppp图5・3单片机与8255A连接图4.2显示电路工作原理4.2.18255A显不电路的硬件结构。8255A扩展显示及键盘电路如图5・4所示。2(0JAU4AA74F07riri人LMEA人LUFA/\74F07/\图5・3单片机与8255A连接图4.2显示电路工作原理4.2.18255A显不电路的硬件结构。8255A扩展显示及键盘电路如图5・4所示。2(0JAU4AA74F07riri人LMEA人LUFA/\74F07/\74F07remJ〔cmt-cm9cmRESET«2$5APAOPA1PA2
PA;PA4
PASPA6PA7PBO
PH1PB2PB3PB4PBSPB6PB7PCO
PC1PC2PC3PC4PCSPC6PC7LH>I1JD2\unT\j=_40LH>5、391:】:,•、*5U5\T19*Ld^57r1;DRr10KIS2AlmIX1/193flA?B2ai172/20416/21sAddJRdIS4/226AS14/23wJA6156/24imA7B7127/259A911s/Artwa1474LS24S15
?613•••一:io"*5ISISR)l«uR4鼻SW^>B鼻畑灿■oO4SW^>BW川热.ia图4・4用8255A扩展的键盘和显示电路在显示电路中用8255A的PA口输出位选信号,通过74F07接LED显示器的片选引脚。7407是TEL门集成的八路输出缓冲器/驱动器,因为本系统采用的是共阴极LED显示器,位选应接低电平,可能有儿十毫安的电流输出,而单片机的I/O口最大能承受儿毫安的灌电流,所以需用7407來接受较大的输出电流。PB口输出的段选信号,通过74LS245芯片接LED段码引脚,因为8255A的输出电流一般是微安级的,而LED—般则要求5到儿十毫安的电流,不能直接驱动LED,而74LS245的高电平输出电流在15毫安左右,可以驱动LED显示。另外74LS245的输出接上拉电阻,帮助驱动显示器。LED显示器是由发光二极管显示子段组成的显示器件。在单片机系统中通常使用的是七段LED显示器,这种显示器有共阴极共阳极两种,在这次设计中选用共阴极LED显示器。共阴极七段LED显示器的管脚如图5-5所示CdefgCdefgM
HHMHHb-丄一飞Up-二-——tlH)rrt1二■■二i、---1_1__1__1__1eIIIr-dcomc-dp-图4・5共阴极LED显示器的原理和管脚图表4-1共阴极LED显示器七段码显示字符共阴极七段码显示字符共阴极七段码03FH96F106A77n5BB7C34FC39466D5E56DE7967DF71707P7387FU3E4.2.28255A实现显示方法8255A的PA、PB口作为输出口驱动数码管显示;PC口用作输入口监测键盘输入,所以这里须用工作方式0—一基本输入输出口工作方式,其方式控制字为10001001o8255A的RESET引脚与单片机的RESET引脚直接相连,当单片机复位时,8255A同时复位。单片机的P2.7口与8255A的片选信号西相连,显示期间一直输出低电平,选中8255。在P2.5、P2.6都输出高电平时,即Al=l,A2=l时,融=0,单片机输出写信号,访问控制寄存器,将方式控制字10001001通过单片机的P0口与8255A的D0-D7数据口送给8255的控制字寄存器。由图5・3的连接方式知控制字寄存器地址为:0111111111111111,即0X7FFF,向该地址写入控制字即可。当P2.5、P2.6都输出低电平时,Al=0,A2=0时,宓=0,单片机输出写信号,访问端口A,将位选码送出,选中要显示的位,即端口A地址为:000111111111llll=0xlFFF,向该地址写入位选码即可。然后将P2.5=0,P2.6=l,即Al=0,A2=l,融=0,单片机输出写信号,访问端口E,将段选码送出,保持几毫秒的延时,使LED显示。即端口(3地址为:010111111111llll=0x5FFF,向该地址写入段选码即可。显示程序如下:严定义8255A字符型字位口*/#defineDIGPORTXBYTE[OxlFFF]//PA口地址,位选码地址#defineWORDPORTXBYTE[0X3FFF]//PB口地址,段选码地址#defineCCOMXBYTE[0X7FFFF]//控制字寄存器地址#defineKPORTXBYTE[OX5FFF]//PC口,键盘扫描地址voiddisplay(void)uchari;〃显示缓冲区首址uchardelay;〃显示延时uchardisp;〃显示内容uchardigit;〃定义数码管显示位digit=OxO8;for(i=0;i<2;i++)if(BUFFER[i]>100)disp=BUFFER[i]%10+10;elsedisp=BUFFER[i]%10;DIGPORT=digit;WORDPORT=TABLE[disp];for(delay=O;delay<=200;delay++);digit=digit»l;disp=BUFFER[i]/10;DIGPORT=digit;WORDPORT=TA.BLE[disp];for(delay=O;delay<=200;delay++);digit=digit»l;}}第五章其他硬件电路设计上水、电加热、报警电路属于大功率驱动电路,需用开关控制外部电源的关断。水位显示是简单的三极管驱动电路。电源电路微单片机的主电路及部分驱动开关提供电源。本章对这些综合介绍。5.1上水电磁阀、电加热、报警等驱动电路上水电磁阀、电加热开关、水位显示、报警开关等驱动电路均采用9013三极管进行放大驱动,如图6・1所示。5.1.1上水控制电路由单片机P1.1口的输出來控制上水电磁阀。单片机P1.1口通过一个2.2K的电阻接9013三极管的基极,9013的集电极通过一个单刀继电器接正12V电源,9013射极接地。当P1.1输出低电平时,三极管截至,儿乎没有电流通过三极管的基极到射极、集电极到射极,即Ic«0,IB«0,所以此时流过继电器的电流儿乎为0,继电器打开。当P1.1口输出高电平时,三极管9013导通,有较大的饱和电流流过继电器,使其吸合、关闭,从而开启电磁阀。5.1.2电加热控制电路电加热的继电器釆用双开关继电器,一个开关控制电加热器的火线,另一个控制零线。当P1.0输出低电平时,三极管不导通,继电器无电流通过,开关开启,电加热器不工作。当P1.0输出高电平时,三极管导通,继电器有较大电流通过,开关闭合,电加热器开始工作。。5.1.3报警控制电路报警输出三极管的集电极接蜂鸣器,蜂鸣器的另一端接正5伏电源。有P1.2口控制报警电路,当水位超标时P1.口输出高电平报警,不报警时将P1.2口置低电平。
5.1.4水位显示电路水位显示电路由P2.0-P2.4口来控制,其中P2.4口输出高低电平控制水位的显示与否,P2.0-P2.3口输出高低电平控制二极管的亮灭來显示水位。卜水碉划jpiHHADhR2FIO1POOBillroiPI2P02Bl)卜水碉划jpiHHADhR2FIO1POOBillroiPI2P02Bl)P034PII4BlSP05PI61'II6PITCO7INTIP20INTOP21P22TlP23TOP24V2SrxvrXIX2P26P2?KESETRXDTXD»nrALLrI'SENZ3iJETJ»[Ofv~3。JMH>Th4h;/图5・1主要驱动电路电路图5.2电源电路对于太阳能用户來讲,最常用、最方便的电源当然是220V的工频交流电源,但太阳能容热水器控制系统需要的是稳定的+5V和+12V电源,所以要为控制系统设计直流电源电路。由于本设计由+5V和+12V两个不同的电压供电,并且+5V是主电源。变压器分别釆用220/8和220/15的变压器,稳压电路分别采用集成稳压器件7805和7812进行稳压。图6-2为系统+5V直流电源的整体图,+12V电源与它基本相同。图6・2系统直流电源总图结论本课题设计了一个以89C52单片机为核心配合其他外围电路的太阳能热水器智能控制系统,完成了对太阳能热水器容器内的水位、水温测量、显示;时间显示;缺水时自动上水,水溢报警;手动上水、参数设定;定时水温过低智能电加热等功能模块的设计。完成了太阳能热水器水位、水温的测量和显示电路的设计,并作了硬件调试,调试结果较为理想,得到了准确的分档水位测量,和误差较小的温度测量,验证了RC充放电测量电阻的可行性。通过对水位、水温的测量监控,实现了自动上水、水溢报警、智能加热等功能。完成了用8255A扩展键盘和显示电路的设计,实现了温度时间共六位动态显示,和4个独立键盘输入。完成了时钟电路设计,为系统提供了准确的时间显示,显示时、分。并为定时加热提供了时间参考,从而完成自动电加热。用键盘实现了手动上水、电加热、参数设置等功能。参考文献参考文献胡润青.蓬勃发展的太阳能热水器产业可再生能源.袁小平,陈跃.一种智能型太阳能热水器控制器的研制.江苏煤炭.⑶范延滨,王正彦.太阳能热水器控制器中测量模型.电子测量技术,2004,3.唐德礼,鲍连升.太阳能热水器水温水位控制器.十堰职业技术学院学报,2002,15(4).姜志海,黄玉青等.单片机原理及应用.电子工业出版社,2005.113-120.⑹刘润华,刘立山.模拟电子技术.石油人学出版社,2003.250-254.[7]孙东胜.新型电热水器控制器的研制:[硕士学位论文]上海:上海交通人学,20041001.⑻欧阳乔.时钟芯片DS1302的原理及其Proteus仿真设计•计算机与信息技术,2006,6.周荷琴,吴秀清.微型计算机原理.中国科学技术人学出版社,2004325-354.SandrineCLAQUIN,AlainCARRIERE,FranqoisROCARIESModellingandApplicationofAdaptiveConti'oltoaGasHeater.The3rdIEEEConferenceonControlApplications(CCA'94),Glasgow(U.K)24-26August1994PopovicD,VPBhatkar.Disti'ibutedComputerConti'olforIndustrialAutomationMarcelDekkerInc,1992.王兆安,黄俊.电力电子技术.机械工业出版社,2005LatticeDateBook.LATTICESEMICONDATEBOOKCORPORATION.1994致谢致谢致谢在本次课程设计过程中和其他与*老师的接触中,水老师对我们都是悉心教导、躬亲示范,在生活上对我们也是十分关怀,特别是水老师博学的知识、耐心的教诲给了我极大的支持和鼓舞。在即将离开大学的时候,在水老师教诲下度过的这段时光将成为终生受益的经历。在此,对边老师致以衷心的感谢和崇高的敬意,愿边老师学术攀高峰,桃李满天下。在此也特别感谢在毕业设计中给我很大帮助的水杯等同学。对实验室的其他老师给予的大力支持和指导表示真诚的谢意。附录附录附录附录1主程序流程图和程序太阳能热水器智能控制系统程序://定义头文件和各个输入管脚以及变量声明#include<reg52.h>#include<absacch>#include<stdio.h>#include<inti'insh>#defineuintunsignedmt//定义变量类型名#defineucharunsignedchar/水定义8255a字符型字位II*/#defineDIGPORTXBYTE[OxlFFF]/ZPAII地址,位选码地址#defineWORDPORTXBYTE[0X3FFF]//PB丨I地址,断选码地址#defineCCOMXBYTE[0X7FFFF]〃控制字寄存器地址#defineKPORTXBYTE[0X5FFF]//PCII,键盘打描地址/ZDS13O2_RST=1//定义DS1302时钟芯片引脚操作#defineSet_DS13O2_RSTDS1302_RST=l/ZDS13O2_RST=O#defineClr_DS1302_RSTDS1302_RST=0/ZDS1302_SDA=l#defineSet_DS1302_SDADS1302_SDA=l/ZDS1302_SDA=0#defineClr_DS1302_SDADS1302_SDA=0//DS1302_SCLK=l#defineSet_DS1302_SCLKDS1302_SCLK=l/ZDS13O2_SCLK=O#defineClr_DS1302_SCLKDS1302_SCLK=0〃定义读时间控制字#defineDS1302_SEC_Reg0x80#defineDS1302>IIN_Reg0x82#defineDS1302_HR_Reg0x84#defineDS1302_DATE_Reg0x86#defineDS1302_MONTH_Reg0x88#defineDS1302_DAY_Reg0x8a#defineDS1302_YEAR_Reg0x8c#defineDS1302_CONTROL_Reg0x8e#defineDS1302_CHARGER_Reg0x90#defineDS1302_CLKBURST_RegOxbe〃全局变量〃为了方便,我把个位和十位分开了ucharyearl=0x8&ucharyear0=0x88,ucharmontli=0x88,uchardate=0x88,ucharday=0x88,ucharhour=0x8&ucharminute=0x88,ucharsecond=0x8&/*定义Pl11各管脚*/sbitL0=P2A0>sbitLl=PSl,sbitL2=P2A2>sbitL3=P2A3>sbitK0=PM4,sbitPl_O=Pl八0,sbitPl_1=P1A1;sbitPl_2=PlT,sbitHig=PlA4,sbitDS1302_SDA=PlA5,//定义DS1302时钟引脚与单片机引脚的连接sbitDS13O2_SCLK=P1A6,sbitDS1302__RST=PlA7,严声明调用函数*/voidinital(void),voidtimei'l_svr(void),voiddisplayCvoid),voiddelay(ucharj),voidDS1302_Wnte(ucharreg,uchardat),ucharDS1302_Read(ucharreg),voidDS1302_Init(void),voidReadTnne(void),voidWtTmCrO,voidLvReadO,voidTmReadQ,voidkey(void),ucharkbscan(void),voidDS1302(void),voidintO_int(void),voidintl_int(void),/*定义调用存储单元*/严显示缓冲区(依次为高位低位)*/ucharBUFFER]3]={0Q0},ucharWTLV,//水位值ucharTNIP,//水温值ucharWTLVSET,//水位设定值ucharTNIPSET,//水温设定值ucharbuf[4]={0,0,0,0},/*数码管显示编码"0忙・9H,HAB,B」♦/ucharcodeTABLE[]={0x7B,0x30,0xEA,0xF8,0xBl,0xD9,0xDB,0x70,0xFB,0xF9,0xF3,0x80},mainO{initalO;//初始化中断、定时器、I/OIIkbscanO,//®盘扫描keyO,//键盘处理TmRead。,//读取温度LvRead。,//读取水位DS1302Q//读取时间displayO,//显示}voidlnitalQPl0=Pl1=P12=K0=0,〃初始化外部驱动IIDS13O2_InitO,EA=1;〃开外部中断ITO=1;//外部中断下降沿触发EXO=1,//允许外部中断0Hig=l;P1.3输出高电平TMOD=Oxll;定时器工作于方式1TH1=OX8A,//定时器1赋初值TL1=OXDO,工作方式0〃若有键按卜〃延时抖动ET1=1;定时器1开定时中断TR1=1,〃工作方式0〃若有键按卜〃延时抖动CCOM=0X80;//初始化8255A,送控制字,}ucharkbscan(void){ucharrecode,if((KPORT&OXOF0!=0X0F){delayC),if((KPORT&0X0F)!=0X010{recode=KPORT>retum(recode),}}elseretum(O),}voidkey(void)ucharkey,key=kbscanO,deiay(2),if(key=0x01){Pl」=1,//上水}if(key=0x02)//设置水位{if(WTLVSET=4)WTL7SET=0,elseWTL7SET+=WTLVSET,BUFFER[O]=WTLVSET,//显示设置水位displayO,}if(key=0x04)//电加热{Pl_0=l;}if0cey=Ox08)//设置温度{if(TMPSET>=80)TMPSET=30;elseTMPSET=TMPSET+10,/〃曾加十度BUFFER[0]=TMPSET,显示设置水温displayO,}voidtimei'l_svrOinterrupt1{TH1=OX8A,//重新给定时器1赋值TL1=OXDO,Hig=iHig,〃充放电变换if®g)//充电开始时启动定时器0{TL0=TH0=0X00,//定时器0赋初值0TRO=1,//启动定时器0}}voidintO_int(void)lntenxipt0〃外部中断0,测水位{EX0=0,EX1=1,TR0=0,buflO]=TLO,bufIl]=TH0,}voidintl_int(void)mtenxipt2〃外部中断1,测水温{EX1=0,EX0=l,TR0=0,buf[2]=TL0,buf[3]=TH0,voidTmReadO〃水温值处理{uintval,val=buf[3]*256+buf[2];if(val<7549)TMP=97-int(val*8/l000),elseif(val<200
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 办公设备维护与维修电子教案 模块三 商务办公 项目二 办公设备日常维护
- 2025年转租的房屋租赁合同范本
- 2025标准供货合同范本参考
- 小儿获得性免疫缺陷综合征肾病的临床护理
- 先天性肝囊肿的临床护理
- 2025房屋租赁合同书范本
- 2025新款房屋抵押贷款合同范本
- 2025年消防设施操作员之消防设备中级技能提升训练试卷A卷附答案
- 2025年初级银行从业资格之初级个人理财模考预测题库(夺冠系列)
- 2025年注册测绘师之测绘综合能力能力检测试卷B卷附答案
- 河北省唐山市、廊坊市2025届高三第二次模拟演练语文试卷(含答案)
- 民法典知识竞赛课件
- 绞车工考试题及答案
- MOOC 大学英语听说译-河南理工大学 中国大学慕课答案
- 外科学试题库及答案(共1000题)
- 事业单位干部自传和干部履历表范文
- D502-15D502等电位联结安装图集
- 2022年本科教学工作合格评估整改工作方案
- 广东省建设工程造价咨询服务收费项目和收费标准表[粤价函(2011)742号]
- 小学二年级三位数竖式计算800题
- DL/T 5203-2005《火力发电厂煤和制粉系统防爆设计技术规程》简介
评论
0/150
提交评论