基于单片机的热水器温度控制系统设计内容摘要:
方案二: 采用 AT89S52 单片机 AT89S52 是美国 ATMEL 公司生产的低功耗、高性能 CMOS 8 位单片机,片内含 8k bytes 的可反复擦写的只读程序存储器 (PEROM)和256 bytes 的随机存取数据存储器 (RAM ),器件采用 ATMEL 公司的高密度、非易失性存储技术生产,与标准 MCS51 指令系统及 8052 产品引脚兼容,片内置通用 8位中央处理器 (CPU)和 Flash存储单元, 32 个I/O,看门狗定时器, 2 个数据指针, 3 个 16 位 定时器 /计数器,一个 6 向量 2 级中断结构,全双工串行口, 片内晶振及时钟电路。 另外, AT89S52 可降至 0Hz 静态逻 辑操作,支持 2 种软件可选择节电模式。 空闲模式下, CPU 停止工作,允许 RAM、定时器 /计数器、串口、中断继续工 作。 掉电保护方式下, RAM 内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。 功能强大的 AT89C52 单片机适合于许多较为复杂控制应用场合。 AT89S52 的高性能、成本低 ,使得其在实际应用中颇受青睐。 综合比较上述两种方案,本系统选择方案二。 方案一: 采用热电偶温差电路测温,温度检测部分可以使用低温热偶,热长沙航空职业技术学院 2020 届毕业生毕业设计(论文) 基于单片机的温度控制系统设计 —— 第 10 页 共 45 页 电偶由两个焊接在一起的异金属导线所组成,热电偶产生的热电势由两种金属的接触电势和单一导体的温差电势组成。 通过将参考结点保持在已知温度并测量该电压,便可推断出检测 结点的温度。 数据采集部分则使用带有 AD通道的单片机,在将随被测温度变化的电压或电流采集过来,进行 AD转换后,就可以用单片机进行数据的处理,在显示电路上,就可以将被测温度显示出来。 热电偶的优点是工作温度范围非常宽,且体积小,但是它们也存在着输出电压小、容易遭受来自导线环路的噪声影响以及漂移较高的缺点,并且这种设计需要用到 AD转换电路,感温电路比较麻烦。 方案二: 采用数字温度芯片 DS18B20 测量温度,输出信号全数字化。 便于单片机处理及控制,省去传统的测温方法的很多外围电路。 且该芯片的物理化学性很稳定,它能 用做工业测温元件,此元件线形较好。 在0— 100℃时,最大线形偏差小于 1℃。 DS18B20 的最大特点是采用了单总线的数据传输,由数字温度计 DS18B20和微控制器 AT89S52构成的温度测量装置 ,它直接输出温度的数字信号 ,可直接与计算机连接。 这样 ,测温系统的结构就比较简单 ,体积也不大。 采用 51 单片机控制,软件编程的自由度大,可通过编程实现各种各样的算术算法和逻辑控制,而且体积小,硬件实现简单,安装方便。 既可以单独对多 DS18B20控制工作,还可以与 PC 机通信上传数据,另外 AT89S52 在工业控制上也有 着广泛的应用,编程技术及外围功能电路的配合使用都很成熟。 综合上述 两种方案 ,虽然 方案一的测温装置可测温度范围宽、体积小,但是线性误差较大。 方案二的测温装置电 路简单、精确度较高、实现方便、软件设计也比较简单,故本次设计选择 方案二。 温度控制模块电路方案的选择与论证 方案一: 采用 PID 控制 PID 温度控制 结构 如 图 所示。 由图可知 PID 调节器是一种线性调节器,这种调节器是将设定值 w 与实际输出值 y 进行比较构成偏差 图 模拟 PID 控制 ywe 并 将其比例、积分、微分通过线性组合构成控制量。 其动态方程为: 长沙航空职业技术学院 2020 届毕业生毕业设计(论文) 基于单片机的温度控制系统设计 —— 第 11 页 共 45 页 dt tdeKdtteKteKtu dip )()()()( ( 1) 其中 pK 为调节器的比例放大系数 iK 为积分时间常数 dK 为微分时间常数 PID 调节器的离散化表达式为 )]1()([)()()( kekeTKkTeKkeKku dip 其增量表达形式为: )1()()( kukuku )]2()1(2)([)()]1()([ kekekeTKkTeKkekeK dip 其中 T 为采样周期。 可见温度 PID 调节器有三个可设定参数,即比例放大系数 pK 、积分时间常数 iK 、微分时间常数 dK。 比例调节的作用是使调节过程趋于稳定,但会产生稳态误差。 积分作用可消除被调 量的稳态误差,但可能会使系统振荡甚至使系统不稳定 ; 微分作用能有效 的减小动态偏差。 在实际使用中 ,在满足生产过程需要的前提下 ,应尽量选择简单的调节器 ,这样 ,既节省投资 ,又便于维护。 常规 PID 控制调节器是一种应用广泛技术成熟的控制方法,它能满足一般工业控制的要求,其优点是原理简单、使用方便、适应性广。 采用 PID 控制,控制效果的好坏很大程度上取决于 PID 三个控制参数的确定。 方案二: 采用 自动控制 由单片机从 DS18B20 读取出所测量出的温度数值,然后通过软件程序进行判断,控制固态继电器 SSR 的通断,再控制加热棒是否加热,从而实现实时 检测 并精准控制温度的目的。 而且,固态继电器具 有可靠性高、灵敏度高、转换速度快、成本低等特点。 综上所述 , PID 控制虽然简单实用、应用广泛,但 其参数一旦出现变化,其控制精度和质量便无法保证。 因此,本系统选择 方案二。 温度设置模块电路方案的选择与论证 方案一: 采用矩阵键盘 矩阵式键盘又叫行列式键盘。 用 I/O 口线组成行列结构,按键设置在行列的交叉点上。 一个 4x4 的行、列可以构成一个含有 16 个按键的键盘,在按键较多时,矩阵式键盘可以节省 I/O 口。 其 结构 如下图 所示。 长沙航空职业技术学院 2020 届毕业生毕业设计(论文) 基于单片机的温度控制系统设计 —— 第 12 页 共 45 页 方案二: 采用独立式按键 每个按键的电路都是 独立的,占用一条数据线,上拉电阻保证了按键 断开时, I/O 口线有确定的高电平。 当其中任意一键按下时,它所对应的数据线的电平就变成低电平,若无键按下,则所有数据线就是高电平。 这种键盘电路配置灵活,占用 I/O 口多,适合少量按键的情况。 其结构如下图所示。 综上所述 ,本系统只需要三个按键,故选择方案二。 温度显示模块电路方案的选择与论证 方案一: 采用 LCD 液晶显示 液晶显示器是一种被动式的显示器,即液晶本身并不发光,而是利用液晶经过处理后能改变光线通过方向的特性,而达到白底黑字或黑底白字显示的目的。 LCD 液晶的像素单元是整合在同一块液晶版当中分隔出 来的小方格。 通过数码控制这些极小的方格进行显像。 显示非常细腻,但相对来说,成本也较高。 长沙航空职业技术学院 2020 届毕业生毕业设计(论文) 基于单片机的温度控制系统设计 —— 第 13 页 共 45 页 方案二: 采用 LED 数码管 LED 数码显示中每一个像素单元就是一个发光二极管,单色数码管一般是红色发光二级管。 彩色数码管,一般是三个三原色小二极管组成的一个大二级管。 这些二级管组成的矩阵由数码控制实时显示文字或者图像,造价相对低廉,组成的显像面积大。 综上所述 ,考虑到本系统只需要对温度进行显示,故选择方案二。 加热器方案的选择与论证 方案一: 采用热得快 采用现在市场上常见的加热器(俗称热得快),功率 大 约在1000~2020W左右,这种加热器功率大,加热速度比较快,但是也正是因为如此,使得其温度难以控制。 方案二: 采用加热棒 另一种方案是采用加热棒,功率在 250W 左右,这种加热棒的功率不大,加热速度虽然相比大功率的加热器要慢一些,但是其温度更容易控制,适合简易实用的热水器温度控制系统。 综上所述,本系统考虑到希望能对水温尽可能的实现更为精准的控制,故选择方案二。 第 3 章 系统总体框图 设计 系统硬件 框图设计 此次设计旨在 开发一种 简单 实用、性能稳定可靠的 热水器温度 控制 系统 ,控制对象 为 250W 左右 的加热 棒。 其基本工作原理 是 系统通过 DS18B20 实时 检测 电热棒所加热的水温温度,由单片机 AT89S52 从DS18B20 读取出所测量出的温度数值,然后通过软件程序进行判断,控制固态继电器 SSR 的通断,再控制加热棒是否加热,从而实现实时检测 并精准控制水温的目的。 利用软件编程和外围电路,结合智能温度传感器 DS18B20,通过按键能够任意设置温度上下限报警,当温度低于所设置的下限温度值时, LED 发光 、蜂鸣器发声报警;当温度高于所设置的上限温度值时, LED 发光、蜂鸣器发声报警。 同时, 显示电路采用四位 LED 共阴数码管来显示 检测 的水温数值。 本系统主要分 七 大模块:微处理器模块、温度检测模块、温度控制模块、显示模块、按键模块、电源模块、报警模块,电路整体框图如图 所示。 长沙航空职业技术学院 2020 届毕业生毕业设计(论文) 基于单片机的温度控制系统设计 —— 第 14 页 共 45 页 图 系统 硬件 框图 第 4 章 系统硬件 模块 电路 设计 系统电源模块电路设计 系统 的各个模块电路都需要外部电源,经过分析,单片机系统模块、温度控制模块、温度检测模块、温度设置模块、温度显示模块、蜂鸣报警模块,都需要用 DC+5V 电源方能正常工作。 故电源模块需设计一个能够满足整个系统需要的稳定的 DC+5V 电源。 整个 电源模块 电路的 工作原理是: AC220V 通过 6V 变压器变压之后从 IN 端 输入, 经过 D D D D4 组成的桥式整流,把交流电变成脉动直流电,再经 C5 滤波,得到比较平缓的 9V 直流电,再 经过 直流稳压模块 LM7805后,得到一个比较稳定的 DC+5V 电压,给整个系统的各模块电路供电。 其电路原理图如图 所示。 图 电源模块 单片机最小系统模块电路设计 AT89S52 是一种低功耗、高性能 CMOS8 位微控制器,具 有 8K 在 CPU AT89S52 时钟 电路 复位 电路 SSR 固态继电器 电源 电路 报警 电路 DS18B20 温度传感器 LED 数码管 按键输入 250W加热棒 长沙航空职业技术学院 2020 届毕业生毕业设计(论文) 基于单片机的温度控制系统设计 —— 第 15 页 共 45 页 系统可编程 Flash 存储器。 使用 Atmel 公司高密度非易失性存储器技术制造,与工 业 80C51 产品指令和引脚完全兼容。 片上 Flash 允许程序存储器在系统可编程,亦适于常规编程器。 AT89S52 具有以下标准功能 : 8k 字节 Flash, 256 字节 RAM, 32 位 I/O 口线,看门狗定时器, 2 个数据指针,三个 16 位 定时器 /计数器,一个 6 向量 2级中断结构,全双工串行口,片内晶振及时钟电路。 另外, AT89S52 可降至 0Hz 静态逻 辑操作,支持 2 种软件可选择节电模式。 空闲模式下, CPU 停止工作,允许 RAM、定时器 /计数器、串口、中断继续工作。 掉电保护方式下, RAM 内容被保存,振荡器被冻 结,单片机一切工作停止,直到下一个中断或硬件复位为止。 单片机最小系统由AT89S5时钟电路和复位电路组成。 其电路原理图如图 所示。 图 单片机最小系统 模块电路 长沙航空职业技术学院 2020 届毕业生毕业设计(论文) 基于单片机的温度控制系统设计 —— 第 16 页 共 45 页 温度检测模块电路设计 系统 采用 DS18B20 温度传感器作为温度数据采集工具,因为在传统的模拟信号远距离温度测量系统中,需要很好的解决引线误差补偿问题、多点测量切换误差问题、各种信号干扰问题、以及放大器零点漂移误差问题,才能达到较高的测量精度。 因此,在温度测量中采用抗干扰能力较强的新型数字温度传感器是解决这些问题的最佳方案 ,改进型智能 温度传感器 DS18B20 具有体积小、精度高、使用电压宽、采用一线总线、可以组网等优点。 温度检测 模块电路如图 所示。 图 检测 模块电路 温度传感器 DS18B20 的介绍 DS18B20 是美国 Dallas 半导体 单总线温度 传感器 ,是世界上第一片支持“一线总线”接口的温度传感器,全部传感与元件以及转换电路都集成在形如一只三级管的集成电路内。 内部 结构主要由四部分组成: 64 位光刻 ROM、温度传感器、非挥发的温度报警触发器 TH 和TL、配置寄存器, DS18B20 管脚排序如图 所示。 长沙航空职业技术学院 2020 届毕业生毕业设计(论文) 基于单片机的。基于单片机的热水器温度控制系统设计
相关推荐
本;温度传感器采用的总线负载能力如何,能否满足多点测温的需要;占用 MCU 的 I/O 引脚数情况如何,因为 MCU 的系统资源非常宝贵,输入通道有限,多点温度测量时,如果测量的点数超过了输入通道时,就要添加多路复用器,这将增加成本和开发时间,应尽量节约;与 MCU 的通信协议应尽量简单,温度测量的软件开发难度、成本要尽量小。 目前在数字温度传感器中采用的串行总线主要有 Philips 公司的
时进行高低电平的转变,而不 为 用软件延时。 应用此 方案 时编程相对复杂。 (3) 利用单片机自带的 PWM控制器。 在 STC12系列单片机中自身带有 PWM控制器,但本系统所用到得 AT89系列单片机无此 性能。 对于方案一,该方案能够实现对直流风扇电机的无级调 速, 速率 变化灵敏,但 为 D/A转化 芯片的价格较高,与其温控状态下无级调速 性能 相比性价比不高。 对于方案二
部分设计用到了温度传感器 DS18B20,这种传感器是单数据总线传感器,一共有三只引脚,一个引脚接电源 VCC,一个引脚接地 GND,还有一个就是数据总线引脚 DQ 接到单片机的其中一只引脚。 设计图如下。 图 5 DS18B20 原理图 14 这个是 DS18B20 传感器的硬件设计。 1 脚接电源 VCC, 2 脚是数据总线的引脚用于接到单片机 ATmega16 的 PB3 引脚, 3
P 27P 28P 32P 33P 34P 35P 36P 37P 38P 39T11589 C 51I N T 012R E S E T9RD17WR16E A /V P P31A L E /P30P S E N29V C C40GND20P 1 . 0 P 1 . 1 P 1 . 2 P 1 . 3P 1 . 4P 1 . 5P 1 . 6P 1 . 7abcdefgABCD744710
,8EH MOV DS1302_DATA,00H LCALL WRITE MOV DS1302_ADDR,80H MOV DS1302_DATA,80H LCALL WRITE GWAIT: LCALL DISPLAY JNB ,GWAIT SETG1: LCALL DISPLAY JNB ,SETG2 JNB ,GADDYEAR AJMP SETG1 GADDYEAR: MOV R7,66H
ay1ms(500)。 break。 } } } 音 乐播放 程序 流程图 开 始创 建 新 的 频 率 表计 算 歌 曲 长 度读 音 符根 据 音 符 对 应 求 出发 音 长 度蜂 鸣 器 发 声判 断 音 符 是 否 读 完或 暂 停 键 是 否 按 下否蜂 鸣 器 停 止 发 音结 束是 14 图 9 音乐播放程序流程图 音乐播放程序 void Play(unsigned char