基于单片机的电热水器控制系统设计综述Word格式.docx
《基于单片机的电热水器控制系统设计综述Word格式.docx》由会员分享,可在线阅读,更多相关《基于单片机的电热水器控制系统设计综述Word格式.docx(16页珍藏版)》请在冰豆网上搜索。
![基于单片机的电热水器控制系统设计综述Word格式.docx](https://file1.bdocx.com/fileroot1/2022-10/12/94dede89-763d-4498-86ab-bbe58d9a142e/94dede89-763d-4498-86ab-bbe58d9a142e1.gif)
四、结论与展望20
五、心得体会及建议20
六、附录21
七、参考文献21
电热水器控制系统课程设计
一、设计要求
1.测量热水器的温度,并显示,范围0——70摄氏度。
2.可人工设置热水器内烧水温度,范围20到70摄氏度。
3.当热水器内无水时有报警提示,并且开关自动关闭。
4.可以限定烧水时间。
二、设计目的
运用我们所学的专业知识,采用单片机为主控芯片设计电热水器控制系统并辅以外围电路设计,既能加深我们对专业知识的理解,又能培养专业知识与实践相结合的实践技能,提高我们分析、解决问题的能力。
三、设计的具体实现
1.系统概述
电热水器控制系统的整体设计方案主要包括硬件设计方案和软件设计方案。
硬件是指以微控制器作为整个控制系统的核心,再外接温度信号采集电路、实时时钟电路、热水器加热控制开关、LED显示电路、键盘、复位与看门狗电路组成。
硬件设计方案如图1所示。
系统主要采用51单片机AT89C52作为整个控制系统的主控模块,利用AT89C52的引脚连接其他的外部电路。
对于温度的测量根据其环境的特殊性,温度信号的采集主要由Pt1000铂电阻温度传感器、信号放大电路和A/D转换电路组成;
对于实时时钟的实现则是采用现有的PCF8563时钟芯片,主要是取得时钟的小时和分钟;
键盘主要是用来设定开机时间、设定热水温度、定时加热时间、校准时钟,因此需设定四个按键;
而为了调高系统的性能,系统采用了看门狗复位电路;
对于温度及实时时钟的显示选择以CH451作为驱动芯片的LED显示电路。
图1系统硬件框图
2.单元电路设计
2.1微控制器模块
本系统主要是使用AT89C52现有的引脚连接外部的其它硬件电路,是一种性价比较高的单片机。
AT89C52主要性能说明如下:
32个I/O口线;
片内有8KB闪速存储器,256B内部随机存取存储器RAM;
3个16位定时/计数器,用于实现定时或计数功能;
中断系统为一个6向量两级中断结构;
一个可编程全双工串行通信口;
片内振荡器及时钟电路,全静态工作方式。
具有全静态工作方式表明它不一定要求连续的时钟定时,在等待内部事件期间,时钟频率可降至0Hz的静态逻辑操作。
AT89C52的功能引脚说明:
P0口是一组8位漏极开路型双向I/O口,也即地址/数据总线复用口;
P1、P2、P3是一个带内部上拉电阻的8位双向I/O口,其输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路,而P3口除了作为一般的I/O口线外,更重要的用途是它的第二功能;
RST是复位输入;
ALE/PROG是一个复用引脚,ALE是地址锁存允许,PROG是输入编程脉冲;
PSEN是外部程序存储器的读选通信号;
EA/VPP是外部访问允许;
XTAL1是振荡器反相放大器的及内部时钟发生器的输入端;
XTAL1是振荡器反相放大器的输出端。
2.2温度测量
温度测量是电热水器控制系统中一个至关重要的部分,其测量过程是比较复杂的。
测量温度的标尺是温度计,按照其测量方式可以分为接触式和非接触式两种。
在这里温度测量主要由Pt1000铂电阻温度传感器、信号放大电路和模数转换电路组成。
2.2.1Pt1000铂电阻温度传感器
温度传感器就是利用各种物理性质随温度变化的规律把温度信号转换为电量的仪器。
Pt1000电阻温度传感器则是热电阻式温度传感器的一种。
本系统采用的是R0=1000欧姆的铂电阻温度传感器,温度要求范围为0~70℃,所以适合式Rt=R0[1+At+Bt2]。
此外,引线电阻会影响到测温精度,而由于系统对温度测量精度要求不高,因此采用二线制接法,这种接法需要的材料少价格低,简单实用,只要直接将传感器的两根引线接到放大器的反馈电阻位置即可。
2.2.2温度信号放大电路
由温度传感器采集到的信号比较弱,难以直接进行A/D转换,所以必须一个合适的放大电路来将这个信号放大。
电子电路放大的基本特征是功率放大。
放大器的种类很多,但在模拟输入通道中使用的是一种具有高放大倍数并带有深度负反馈的直接耦合放大器,即运算放大器。
运算放大器具有输入阻抗高,增益大,可靠性高,价格低和使用方便等特点。
因此,本系统采用的是噪声小,抗干扰能力较强的TLC2201功率放大器。
Pt1000与TLC2201的接口电路如图2所示。
图2温度信号放大电路
由图2可知,运算放大器U1的连接方式是电压跟随器的方式,运放U2采用同相比例放大器的连接方式。
R1是一个限流电阻,防止电流太大而损坏稳压二极管Z2;
C1、C2分别是陶瓷电容和电解电容,主要是用于滤除电源的高频干扰和低频干扰;
R2与R3并联后再串联R4形成一个电压可调的电路,并同时输入到U1的同相输入端;
Rpt是铂电阻传感器的应变电阻值,在温度发生变化的时候,电阻相应改变。
U2的同相输入端输入的是U1输出的固定信号,其反相输入端是由R8与Rpt连接成一个负反馈的放大电路,放大后的模拟信号由CS5513-AIN+标识的引脚输出,最后将接入模数转换电路。
2.2.3模数转换电路
由于铂电阻传感器采集到的温度信号是模拟信号,不能直观的观测到,因此需要一个模数转换电路将这种模拟信号转换成数字信号后进行分析。
本系统中选用CS5513芯片作为模数转换电路的核心部分。
CS5513是20位的串行输出模数转换芯片,用它可以进行直流测量,并且使用简单。
CS5513的引脚介绍:
模拟部分的引脚
V+、V-:
为正负电源引脚,CS5513可工作于单电源或双电压源模式
AIN+、AIN-:
差分模拟输入
VREF:
参考电压输入,转换器的参考电压为VREF和V-之间的电压,此电压最低为2.5V,最高为{(V+)-(V-)}V
数字部分引脚
SDO:
串行数据输出,SDO输出的逻辑低电平是以
的逻辑低电平为基准的,所以CS5513没有专用的接地管脚
SCLK:
串行时钟输入,用于控制CS5513中的SDO引脚的输出。
当SCLK为高电平并持续2ms后,CS5513进入休眠状态,要终止这种状态只需将SCLK置为低电平即可
:
片选端,当
为高电平时,SDO串口数据输出端输出为高阻态;
当
为低电平时,SDO输出数据
CS5513与模拟输入的接口电路如图3所示,经由信号放大电路放大后的模拟信号输入到CS5513的AIN+端。
图3模数转换电路
2.3实时时钟
实时时钟的缩写是RTC(Real-TimeClock)。
RTC是集成电路,通常称为时钟芯片。
本设计采用PCF8563时钟芯片实现,它是一款工业级低功耗的CMOS实时时钟/日历芯片。
它提供一个可编程时钟输出,一个中断输出和掉电检测器,所有的地址和数据通过IC总线接口串行传递。
最大总线速度为400Kb/s,每次读写数据后,内嵌的字地址寄存器会自动产生增量。
PCF8563芯片引脚排列及功能说明如图4所示。
图4PCF863的引脚排列及功能说明
OSCI:
振荡器输入
OSCO:
振荡器输出
中断输出,开漏输出模式(获得更大的驱动),低电平有效
Vss:
接地
SDA:
串行数据I/O接口
SCL:
串行时钟输入
CLKOUT:
时钟输出,开漏模式
Vdd:
正电源
PCF8563硬件连接原理图如图5所示。
图5实时时钟电路
2.4温度、时钟显示电路
LED是LightEmitingDiode(发光二极管)的缩写,它是能将电信号转换为光信号的电子发光器件,也称数码管。
数码管有7段和8段之分,8段数码管是在7段基础上再加了一个圆点形的发光二极管,用于显示小数点。
本系统需要显示温度和时钟两个部分,温度显示需要2个数码管,时钟显示需要4个(小时、分钟)数码管。
因此需要可以驱动6个数码管的驱动电路。
本系统采用CH451芯片作为LED显示的驱动电路的核心。
CH451是一个整合了数码管显示驱动和键盘扫描控制的多功能外围芯片。
CH451内置RC振荡电路,可以直接动态驱动8位数码管或者64位数码管,具有BCD译码或不译码功能,可实现数据的左移、右移、左循环、右循环、各数字独立闪烁等控制功能;
在外部接口方面,CH451可选择简洁的1线串行接口或高速4线串行接口,且内置上电复位,可提供高电平有效复位和低电平有效复位两种输出,同时内置看门狗电路。
其引脚引脚排列及功能说明如图6所示。
Seg0~Seg7数码管的段驱动高电平有效,键盘扫描输入,高电平有效,带下拉。
Dig0~Dig7:
数码管的字驱动,低电平有效,键盘扫描输入,高电平有效,带下拉。
VCC:
正电源,持续电流不小于200mA。
GND:
接地,持续电流不小于图6CH451引脚图200mA。
DOUT:
串行接口的数据输出。
LOAD:
4线串行接口的数据输入控制,带上拉。
DIN:
DCLK:
串行接口数据时钟,带上拉。
CH451与LED连接的显示电路如图7所示。
图7CH451与外部电路连接图
如图7所示,电路中主要元件是数码管显示驱动芯片CH451,驱动6个带小数点的8段数码管。
在CH451的段输出端即Seg0~Seg7加200欧姆的限流电阻调节数码管的工作电流,CH451的位选择输出端Dig0~Dig7的输出为低电平有效,因此选用共阴极型数码管。
数码管的公共端分别接至Dig0~Dig5,由CH451控制刷新相应的位显示。
2.5看门狗复位电路
为了避免出现这些使系统不能正常运行的故障,在及时发现的同时,能够使系统自动恢复,本设计采用了看门狗电路。
本系统采用了IMP813芯片用于看门狗复位电路,IMP813主要是作为Watchdog计数器重定用的。
当程序跑飞时,如果在1.6秒内没有触发该电路(WDI无脉冲输入),则WDO输出由高电平变为低电平,并保持在140ms以上,IMP813就产生复位信号,自动复位,同时看门狗定时器清0。
若将WDO端与MR连接,则可组成上电复位及看门狗复位电路。
实际应用时,将第RST接CPU的复位脚,MR脚与WDO脚相连,WDI脚与CPU的P2.1相连。
在软件设计中,P2.1不断输出脉冲信号。
如系统死机导致P2.1无脉冲信号输出,则1.6秒后在IMP813的WDO脚输出低电平。
该低电平加到MR脚,IMP813产生复位输出,使CPU有效复位,摆脱死循环的困境。
另外,当电源电压低于门限值4.65V时,IMP813也产生复位输出,使CPU不执行任何动作直至电源电压恢复正常。
其与单片机连接方式如图8所示。
图8看门狗复位电路
3.软件程序设计
3.1整体软件设计
电热水器上电后,首先进行系统初始化,设置时钟时间;
其次显示当前的温度和时钟,并判断加热开关是否打开,执行相应的操作;
如果有功能键按下,则进入功能设定界面,包括校准时钟、设定开机时间、设定热水温度和设定加热时间4种功能,设定完毕后,再次按下功能键表示设定生效;
若无功能键按下或者功能键设定完毕后,则进行各种条件的判断并执行相应的操作;
最后各种条件判断完毕后,程序回到温度的读取与显示,进而开始新一轮的程序运行。
系统软件整体设计流程图如图9所示。
图9系统软件整体设计流程图
3.2模数转换软件设计
通电后CS5513将进行模数转换工作,同时更新输出寄存器。
当输出寄存器有新的数据,而此时
处于低电平时,SDO串口数据输