电子发烧友网 > 控制/MCU > 正文

基于STC89C52单片机的水温控制系统设计

2020年04月13日 15:18 次阅读

目前,水温控制被广泛应用于食品、医药、化工、家电等很多领域,水温控制的好坏直接影响着产品的品质,因此,水温控制具有十分重要的意义。本设计的任务与要求为1 L 水由1 kW的电炉加热,要求水温可以在一定范围内由人工设定,并能在环境温度降低时实现自动调整,以保持设定的温度基本不变。主要性能指标:温度设定范围为25.0~100 ℃,最小区分度为0.1 ℃,温度控制的静态误差小于或等于0.1 ℃,用SMC1602A 液晶显示模块显示实际水温和PID 控制算法中的三个主要参数Kc、Ti、Td 的赋值,用串口调试精灵将PID 控制器的输出和温度采样值显示在PC 机上。

1 系统方案

本设计以STC89C52 单片机为核心,采用了温度传感器DS18B20、RS232 标准接口及PID 控制算法对温度进行控制。

该水温控制系统是一个典型的检测、控制型应用系统,它要求系统完成从水温检测、信号处理、输入、运算,到输出控制电炉加热功率以实现水温控制的全过程。本设计实现了水温的智能化控制以及提供完善的人机交互界面及PC 机与单片机通信接口,系统由PC 机与单片机通信模块、温度检测及其显示模块、PID 控制算法等模块组成,其特点在于采用PC 机与单片机通信,系统框图如图1 所示。

基于STC89C52单片机的水温控制系统设计

2 硬件电路设计

本电路总体设计包括四部分:主机控制部分(STC89C52)、温度采样与显示电路、温度控制电路、PC 机与单片机通信电路。

2.1 主机控制部分

主机控制部分是电路的核心,系统的控制采用单片机89C52.单片机89C52 内部有8 KB 单元的程序存储器以及512 B 的数据存储器,因此,系统不必扩展外部程序存储器和数据存储器,这样就可以大大减少系统硬件部分的复杂度。

2.2 温度采样与显示电路

系统的信号采集与显示电路主要由温度传感器DS18B20和SMC1602A 液晶显示模块两部分组成。

DS18B20 采用独特的单线接口方式,在与微处理器连接时,仅需要一条口线即可实现微处理器与DS18B20 的双向通信。测温范围为-55~+125 ℃,固有测温分辨率为0.5 ℃,工作电源为3~5 V/DC,在使用中不需要任何外围元件,测量结果以9~12 b 数字量方式串行传送,适用于DN15~25、DN40~DN250 各种介质工业管道和狭小空间设备的测温。

SMC1602 液晶显示器以其微功耗、小体积、使用灵活等诸多优点在袖珍式仪表和低功耗应用系统中得到越来越广泛的应用。液晶显示器通常可分为两大类,一类是点阵型,另一类是字符型。点阵型液晶通常面积较大,可以显示图形; 而一般的字符型液晶只有两行,面积小,只能显示字符和一些很简单的图形,简单、易控制且成本低。目前,市面上的字符型液晶绝大多数是基于HD44780 液晶芯片的,所以控制原理是完全相同的,为HD44780 写的控制程序可以很方便地应用于市面上大部分的字符型液晶。字符型LCD 通常有14 条引脚线( 市面上也有很多16 条引脚线的LCD,多出来的2 条线是电源线VCC(15 脚) 和地线GND.

2.3 温度控制电路

此部分电路主要由光电耦合器三极管继电器组成。

光电耦合器的耐压值为400 V,它的输出级经三极管将功率放大后控制继电器常开触点的通断,从而最终达到控制电炉子的目的,100 Ω电阻与0.01 μF 电容组成双向可控硅保护电路

2.4 PC 机与单片机通信电路

为了使系统具有更好的人机交换界面,在系统设计中我们通过Visual Basic 语言设计了微机控制界面。系统与微机的通信大大提高了系统的各方面性能。

由于单片机89C52 串行口为TTL 电平, 而PC 机为RS232 电平,因此,系统采用了MAX232 电平转换芯片来进行电平转换。

因为系统设计了通信功能,即主系统(89C52)和PC 机的通信,所以在观察PID 控制器的输出时更加明显,很大程度上降低了参数整定的难度。另外,通过可视化窗口能够看到系统的采样值。

3 软件设计

本系统的软件设计主要包括三大部分:PC 机与单片机通信模块的软件设计、温度采样与显示电路模块的软件设计、温度控制模块的软件设计。

3.1 主程序流程图

基于STC89C52单片机的水温控制系统设计

(1) 初始化:设定各参数的初始值,设定串行口、定时器以及液晶显示模块。

(2) PC 机与单片机通信:此部分程序主要完成数据在PC 机和单片机间的相互发送,其主要通过89C52 单片机的半双工串行口完成,从而完成与微机控制接口RS232 的连接及通信的控制。

(3) 温度采集及其显示:主要完成温度信号的采集及其对转换后的数字量进行处理,进而用字符型液晶显示模块将实时温度进行显示。

3.2 PID 控制算法

PID 算法是此温控系统性能好坏的决定性因素。其一般算式及模拟控制规律表达式如下:

式中,u(t)为控制器的输出;e(t)为偏差,即设定值与反馈值之差;Kc 为控制器的放大系数,即比例增益;TI 为控制器的积分常数;Td 为控制器的微分时间常数。PID 算法的原理即调节Kc、TI、Td 三个参数,使系统达到稳定。

由于PID 的一般算式不易与单片机处理,因此,在设计中采用了增量型PID 算法。将式(1)转换成:

式(3)中的u(k) 即输出PWM 波的导通时间。其控制算法如图3 所示。

4 测试方法与测试结果

4.1 测试方法

在电炉子中放入1 L 清水,电炉子和控制系统相连,给系统上电,系统进入准备工作状态。分别设定温度为35.3 ℃、40.2 ℃、45 ℃、60 ℃、74.0 ℃、81 ℃,观察设定温度和实际温度,并记录数据。填写表1,同时观察水温变化的动态情况,并记录温度稳定的时间,填写表2.

4.2 测试结果

设定温度与实测温度的数据对比如表1 所列。表2 所列是温度稳定和时间的关系,表2 中的设定温度为50℃,每隔30 s 记录实测温度。

5 结 论

从表1 中的数据可知,系统的误差基本稳定在±0.3 ℃,因而能很好地满足系统的设计要求。从表2 所得的数据可知,系统运行5 min 时,基本达到了稳定,说明系统能很好地控制温度达到理想值,为需要精确控制温度的任务提供了参考。同时,系统实现了PC 机与单片机的通信,把控制参数和控制结果显示PC 机上,方便监控,实现了温度的控制和智能监控。
责任编辑;zl

下载发烧友APP

打造属于您的人脉电子圈

关注电子发烧友微信

有趣有料的资讯及技术干货

关注发烧友课堂

锁定最新课程活动及技术直播

电子发烧友观察

一线报道 · 深度观察 · 最新资讯
收藏 人收藏
分享:

评论

相关推荐

基于STC89C52单片机的温度计显示系统设计

机测量和控制技术在经济迅速发展的今天,已被广泛应用于人类生活中,如工业控制、自动检测、智能仪器仪表、....
发表于 2020-03-31 15:46 194次阅读
基于STC89C52单片机的温度计显示系统设计

基于STC89C52单片机为控制中心的高精度温度...

机测量和控制技术在经济迅速发展的今天,已被广泛应用于人类生活中,如工业控制、自动检测、智能仪器仪表、....
发表于 2019-12-06 15:34 902次阅读
基于STC89C52单片机为控制中心的高精度温度...

STC89C52单片机和EEPROM存储器的编程...

我们可以通过 UART串口通信来改变 EEPROM 内部的这个数据,并且同时也改变了 1602 显示....
发表于 2019-10-15 15:53 632次阅读
STC89C52单片机和EEPROM存储器的编程...

STC89C52单片机的水温控制系统设计

该水温控制系统是一个典型的检测、控制型应用系统,它要求系统完成从水温检测、信号处理、输入、运算,到输....
发表于 2019-10-12 16:45 866次阅读
STC89C52单片机的水温控制系统设计

基于stc89c52单片机和gsm模块的电力变压...

tc35模块主要由gsm基带处理器、gsm射频模块、供电模块(asic)、闪存、zif连接器、天线接....
发表于 2019-08-12 15:50 534次阅读
基于stc89c52单片机和gsm模块的电力变压...

如何利用STC89C52单片机做一个多种信号发生...

原件清单:STC89C52单片机X1、DAC0832转换器X1、12M晶振X1、电容22pfX2、1....
发表于 2019-07-07 10:36 1226次阅读
如何利用STC89C52单片机做一个多种信号发生...

LCD1602和DS1302在一起什么会导致LCD显示乱码

首先是如果不启用Ds1302的初始化,会正常显示,代码如下,运行结果如图片1 #include #include"lcd.h" #include"...
发表于 2019-03-14 19:17 817次阅读
LCD1602和DS1302在一起什么会导致LCD显示乱码

如何修改撰写STC89C52单片机开发板的红外线串口通讯代码

将遥控器上的2,4,6,8按键定义为电脑上显示的相应按键的数值为01,03,02,04 #include "reg52.h"  &nb...
发表于 2019-03-02 17:49 842次阅读
如何修改撰写STC89C52单片机开发板的红外线串口通讯代码

单片机串行通信与数码管显示

题目:通过串口向单片机发送十进制数字,将数字十六进制显示在数码管上 我写了下面的程序,可运行的时候第一位数码管...
发表于 2019-02-21 10:57 386次阅读
单片机串行通信与数码管显示

STC89C52单片机对数字温度计显示系统的设计

机测量和控制技术在经济迅速发展的今天,已被广泛应用于人类生活中,如工业控制、自动检测、智能仪器仪表、....
发表于 2019-02-20 14:52 1847次阅读
STC89C52单片机对数字温度计显示系统的设计

STC89C52RC单片机内部系统结构及功能详解

有源晶振是一个完整的谐振振荡器,它是利用石英晶体的压电效应来起振,所以有源晶振需要供电,当我们把有源....
发表于 2018-12-14 15:03 14295次阅读
STC89C52RC单片机内部系统结构及功能详解

STC89C52单片机的UART串行通信设计

通信过程:在UART 通信的时候,一个字节是 8 位,规定当没有通信信号发生时,通信线路保持高电平,....
发表于 2018-11-28 16:37 3591次阅读
STC89C52单片机的UART串行通信设计

采用STC89C52单片机实现智能电子密码锁的控制功能

[table] [tr][td] 以往个人资料保存、部门文件档案多用机械锁,需携带多把钥匙,使用极不方便,钥匙丢失后安全性差。...
发表于 2018-07-19 02:04 625次阅读
采用STC89C52单片机实现智能电子密码锁的控制功能

大神手把手教你:单片机DS18B20水温控制系统...

在一些温控系统电路中,广泛采用的是通过热电偶、热电阻或PN结测温电路经过相应的信号调理电路,转换成A....
发表于 2018-05-25 15:09 4667次阅读
大神手把手教你:单片机DS18B20水温控制系统...