图2.1 系统模块框图
数码管显示 报警 单片机 温度设定 温度测量
① 温度设定电路。通过一个按键产生脉冲输入单片机来调节水温的设定值。 ② 温度测定电路,采用温度传感器来测量温度。 ③ 单片机,是整个电路的控制核心,实现PID模糊控制。
④ 数码管显示,单片机通过动态扫描方式输出并利用数码管显示温度的设定值和实际测温值。
⑤ 报警电路,当实际温度高于设定温度时,报警电路报警。 基于以上模块设计出了电路的基本结构图,如图2.2
报警及显示电路 给定 单片机 SSR驱动 电烤箱 温度传感器
5
图2.2系统结构图
结构图中以单片机为核心进行系统设计。通过单片机对偏差进行PID运算,输出占空比可变的PWM波形,从而控制固态继电器的导通时间,即通过调节加热功率即可达到控制温度恒定的目的。
第3章 硬件系统设计
3.1 方案验证
目前市场上的电热水器有连续水流式,虽具有加热速度快和体积小的优点,但需要的功率大,大多数家庭供电线路难以承受。而且市场上传统的机械式电热水器控制功能不完善,而且精度低、可靠性差,因此电热水器的智能化成为必然趋势。采用单片机来实现电热水器的智能化,主要是因为其采用面向控制的指令系统,实时控制功能特别强。CPU可以直接对I/O口进行输入、输出操作及逻辑运算,并且具有很强的位处理能力,能有针对性的解决由简单到复杂各类控制任务。单片机做为嵌入式应用的微型计算机,由于其出色的性价比,极强的实用性,它取得了巨大的发展。
本课题是基于AT89S51单片机的智能电热水器的控制器的设计,要达到的控制要求有:(1)用两位数码管显示水温,两位数码管显示预设温度。(2)水温检测显示范围为00~99℃,精度为±1℃。(3)温度预设范围为30~60℃,当检测温度低于预设温度1℃时,开始加热;检测温度高于预设温度1℃时,停止加热。(4)设置3个程序按键。电源开关键:电源关闭时,4个数码管熄灭,加热元件断电,但单片机系统正常工作,热水器面板上的电源指示灯点亮。电源开启后,根据上次设定的温度(220V总电源不能关闭)自动进入工作状态。如220V总电源关闭后再开机,预设温度自动定为40℃。温度+键:每按一次该键,预设温度加1℃,长按该键(时间超过1秒以上),预设温度快速增加,当预设温度加到60℃时,按该键不起作用。温度-键:每按一次该键,预设温度减1℃,长按该键(时间超过1秒以上),预设温度快速减小,当预设
6
温度减到30℃时,按该键不起作用。(5)设置3个面板指示灯。电源指示灯(红):接通220V电源,该指示灯点亮。加热指示灯(绿):加热元件工作时,该指示灯被点亮。报警指示灯(黄):当热水器出现异常情况时,该指示灯被点亮。(6)报警设置。高温报警:当检测温度高于65℃时,自动报警。低温报警:当检测温度低于0℃时,自动报警。缺水报警:当储水箱内缺水时,自动报警。漏电报警:当热水器发生漏电情况时,自动报警。(7)设置一个蜂鸣器,当热水器出现异常情况而报警时,由蜂鸣器发出报警声,并自动切断加热元件的供电。
方案一:以AT89S51单片机为控制中心的智能电热水器
AT89S51单片机具有结构简单、控制能力强、可靠性高、体积小、价格低等优点,在许多行业都得到了广泛的应用。以AT89S51单片机为核心,配以外围电路如时钟电路、复位电路、按键、显示器件即可构成交通灯系统,结构框图如图2.1.1:
方案二:PIC16C72单片机为控制器件的智能电热水器
PIC16C72是美国微芯(Microchip)公司推出的8/11位单片机,采用宽字节单周期指令,哈佛双总线和RISC结构,其数据吞吐量最高可达6MIPS,这几乎是其它大多数8位微控制器速度的4倍128脚封装的PIC16C72单片机内集成了以下主要功能:2KB片内ROM程序存储器,128KB数据存储器;22位I/O线;5路8位A/D转换器,2个8位,1个16位多功能计数器/定时器,1个捕捉/比较/脉宽调制(CCP)部件。
以PIC16C72为控制芯片的电热水器,虽然功能很强大,但是存在一些很需要改进的地方:中断的现场保护是中断应用中一个很重要的部分由PIC16C72的指令系统中没有专门的PUSH(入栈)和POP(出栈)指令,所以要用一段程序来实现该功能。对可能用到的W寄存器和STATUS寄存器内容进行现场保护1然后在中断服务程序中对马达,继电器进行控制1漏电检测报警在中断里给出,而每50ms进入一次中断,所以发生漏电时最多50ms即可切断电源1入口→中断保护→控制马达→控制继电器如果用直流对电机进行控制,其转速太快,过调量太大,容易引起震荡。
7
漏电检测 水位检测 温度检测 电源电路 图3.1 AT89S51控制的智能电热水器
AT89S51 加热电路 显示电路 通过以上两种设计方法的比较来看,实现电热水器的智能控制可以有很多种方法。可以采用可编程序控制器PLC,各种单片机来实现。但考虑到成本控制和软硬件实现难度,采用方案一的控制系统设计,可以进一步提高电热水器的智能作用,能够保证持续的热水供应,并能够在异常情况下自动断电,可以满足人们日常生活的需要,提高了人们生活的质量。
智能电热水器将由AT89S51单片机作为控制芯片,经分析设计要求,初步确定其由8个模块组成,如下图所示:
温度检测 电源电路 AT89S51 水位检测 加热电路 漏电检测 显示电路 加热保温指示 蜂鸣器 图3.2 基于AT89S51的智能电热水器
时钟电路用来产生时钟信号供单片机工作,晶振采用12MHz,平衡电容采用33pF。
复位电路在系统上电或运行过程中对单片机进行初始化操作。按键采用独立式热键,用来扩展系统功能,分别可以实现电源开关、温度增加和温度减少三个功能。数码管用来显示水温和水位两组数据,所有数码管采用共阳接法,段控端接在单片机同一I/O口,位控端分别接在不同位的I/O口。发光二极管用来指示系统运行状态,电源指示灯(红):接通220V电源,该指示灯点亮。加热指示灯(绿):加热元件工作时,该指示灯被点亮。报警指示灯(黄):当热水器出现异常情况时,该指示灯被点亮。ISP接口通过并口与PC机连接,实现单片机与PC机通讯,用编译器对源程序进行调试及编译,通过ISP接口将形成的二进制目标程序下载到AT89S51单片机上。
依据设计要求,系统上电复位后按默认值开始运行,然后开始检测温度按键,若无按键,则按设定温度进行工作;若温度键已按下,则开始设定温度范围,并按新的设定值开始加热。接着继续检测温度按键,若无按键,则接着上一步的执行(以新的
8
设定值开始工作)。若有按键,则重新设定温度范围,如此循环。另外,在运行主程序的时候,首先要检测水位,若达不到预设值,则断电,蜂鸣器报警;若达到预设值,则开始检测水温。
3.2 硬件系统设计
单片机应用系统的硬件电路设计包含两部分内容:一是系统扩展,即单片机内部的功能单元,如ROM、RAM、I/O、定时器/计数器、中断系统等不能满足应用系统的要求时,必须在片外进行扩展,选择适当的芯片,设计相应的电路。二是系统的配置,即按照系统功能要求配置外围设备,如键盘、显示器、打印机、A/D、D/A转换器等,要设计合适的接口电路。本设计中只用最小系统加上键盘、显示、ISP接口电路,单片机本身资源可以满足设计要求,所以不必对单片机进行扩展。
系统的硬件系统以AT89S51单片机为核心,主要分两部分:直流稳压电源和智能电热水器控制电路,其原理图见附录二。直流稳压电源由变压器、整流桥、滤波电路、稳压电路组成。智能电热水器系统由时钟电路、复位电路、报警电路、ISP在线编程接口电路键盘、模数转换电路和显示接口电路组成。 3.2.1 电源电路
电源电路按元件类型可分为电子管稳压电路、三极管稳压电路、可控硅稳压电路、集成稳压电路等。根据调整元件与连接方法,可分为并联型和串联型;根据调整元件工作状态不同,可分为线性和开关稳压电路。本设计中采用了线性工作状态的线性集成稳压电源。
直流稳压电源一般由电源变压器、整流滤波电路及稳压电路所组成,设计框图:
电源变压器 输入电压U1 整流滤波电路 稳压电路 输出电压U2 图3.3 直流稳压电源
9