温度控制系统设计报告

上传人:飞*** 文档编号:35010910 上传时间:2018-03-06 格式:DOC 页数:11 大小:524KB
返回 下载 相关 举报
温度控制系统设计报告_第1页
第1页 / 共11页
温度控制系统设计报告_第2页
第2页 / 共11页
温度控制系统设计报告_第3页
第3页 / 共11页
温度控制系统设计报告_第4页
第4页 / 共11页
温度控制系统设计报告_第5页
第5页 / 共11页
点击查看更多>>
资源描述

《温度控制系统设计报告》由会员分享,可在线阅读,更多相关《温度控制系统设计报告(11页珍藏版)》请在金锄头文库上搜索。

1、温度控制系统设计报告 TEMPERATURE AUTOCONTROL SYSTEM中国焦作王文涛、陈志超、 喻伟 2009-8-8摘要 本系统主要基于DS18B20和51单片机为核心来实现系统的温度自 动化控制,通过使用PID算法和PWM脉宽调制实现温度的精确控制,由温 度传感器返回温度值后与设定温度比较,经过单片机的处理后发出相应的 控制信号使一定空间范围内的温度保持基本恒定,通过实际应用加深对系 统设计和PID算法的理解,提高应用能力。 关键词: PID算法 DS18B20 温度控制 51单片机 Abstract: This system mainly based on DS18B20 a

2、nd 51 single-chip microcomputer as the core to realize automation control system of temperature, through the use of PID algorithm and PWM pulse width modulation realize accurate temperature control of the temperature sensor, the temperature and the temperature returned after comparison, through the

3、processing chip out the corresponding control signal after that certain space within the scope of the temperature is kept constant, through the actual application of the basic of system design and PID algorithm of understanding, improve application ability. Keyword:PID algorithm DS18B20 temperature

4、control 51-series microcomputer 设计要求: 1、基本要求 容器内环境温度设定范围:,最小区分度为1; 当容器内环境温度降低时(例如用电风扇降温),温度控制的静态误差1; 显示容器内环境的实际温度。 2、发挥部分 采用适当的控制方法,当设定容器内环境温度突变(由30提高到50)时,减小系统的调节时 间和超调量,同时自动打印其温度随时间变化的曲线; 温度控制的静态误差0.2; 采用发光二极管光柱形式和数码形式显示白炽灯灯壁上的温度; 其它。 基本设计思路: 由题目要求可知,本系统对温度控制的精度要求比较高,因此考虑使用 PID控制来控制系统温度,而热源的控制采用PW

5、M波来进行精确控制。由温度 传感器来传回温度数据,由单片机处理数据并发出相应的动作,从而保证温度 的恒定。89S52 单片机 温 度 信 号 采 集 电 路 温 度 控 制 驱 动 电 路 电热元件 单片机控制部分供 电 加热部分供电 方案论证: (1)温度传感器 方案一: 采用 AD590 作温度传感器,AD590 是一种恒流源形式的温度传 感器,只要在其二端加上一定工作电压,则其输出电流随温度变化而变化,其线性 电流输出为 1uA/K,电流信号再由运放转换为电压信号,通过 A/D 转换器将输 入的模拟电压量转换为数字量,并通过并行接口芯片将数字量送给计算机。具 体接口电路如下: 方案二:

6、DS18B20 是达拉斯公司生产的数字温度传感器,测温 范围在55125,采用单总线通信微处理器连接时仅需要一条口线即可实现微处理器与 DS18B20 的双向通讯。精度可以达到 0.0625。 因此由以上来看我们选用方案二 18B20 足以满足系统要求而且 使设计更加简单可行。 (2)主控芯片 方案一: 51 系列的 8 位单片机 方案二: DSP、ARM 等高速数据处理器 本系统对主控芯片的要求不是太高, 51 系列单片机足以胜任, 因此选用方案一 51 系列的 AT89S52。 (3)显示及键盘方案一:八位数码管显示。方案二:LCD1602 液晶显示。 由于需要显示的数据比较多,为电路设计

7、简便起见,我们选用方 案二。 系统设计概要: (1)系统外形缩略图恒温箱 控制器 热源 18B20 (3)PID算法 PID算法是本程序中的核心部分。我们采用PID模糊控制技术,通过 Pvar、Ivar、Dvar(比例、积分、微分)三方面的结合调整形成一个模糊控制 来解决惯性温度误差问题。其原理如下: 本系统的温度控制器的电热元件之一是发热丝。发热丝通过电流加热时, 内部温度都很高。当容器内温度升高至设定温度时,温度控制器会发出信号停 止加热。但这时发热丝的温度会高于设定温度,发热丝还将会对被加热的器件 进行加热,即使温度控制器发出信号停止加热,被加热器件的温度还往往继续 上升几度,然后才开始

8、下降。当下降到设定温度的下限时,温度控制器又开始 发出加热的信号,开始加热,但发热丝要把温度传递到被加热器件需要一定的 时候,这就要视发热丝与被加热器件之间的介质情况而定。通常开始重新加热 时,温度继续下降几度。所以,传统的定点开关控制温度会有正负误差几度的 现象,但这不是温度控制器本身的问题,而是整个热系统的结构性问题,使温 度控制器控温产生一种惯性温度误差。 增量式PID算法的输出量为 Un = Kp(en-en-1)+(T/Ti)en+(Td/T)(en-2*en-1+en-2) 式中,en、en-1、en-2分别为第n次、n-1次和n-2次的偏差值, Kp、Ti、Td分别为比例系数、积

9、分系数和微分系数,T为采样周期。 计算机每隔固定时间 T将现场温度与用户设定目标温度的差值带入增量式 PID算法公式,由公式输出量决定PWM方波的占空比,后续加热电路根据此PWM 方波的占空比决定加热功率。现场温度与目标温度的偏差大则占空比大,加热 电路的加热功率大,使温度的实测值与设定值的偏差迅速减少;反之,二者的 偏差小则占空比减小,加热电路加热功率减少,直至目标值与实测值相等,达 到自动控制的目的。 硬件设计1、单片机最小系统单元主控机系统采用了Atmel 公司生产的 AT89S52单片机,它含有256 字节数 据存储器,内置8K 的电可擦除FLASH ROM,可重复编程,大小满足主控机

10、软件 系统设计,所以不必再扩展程序存储器。复位电路和晶振电路是AT89S52 工作 所需的最简外围电路。单片机最小系统电路图如下图所示。 单片机最小系统图AT89S52 的复位端是一个史密特触发输入,高电平有效。RST端若由低电 平上升到高电平并持续2个周期,系统将实现一次复位操作。在复位电路中, 按一下复位开关就使在RST端出现一段时间的高电平,外接24M 晶振和两个 30pF 电容组成系统的内部时钟电路。 2、18B20温度传感器 美国DALLAS公司的产品可编程单总线数字式温度传感器DS18B20可实现室 内温度信号的采集,有很多优点:如直接输出数字信号,故省去了后继的信号 放大及模数转

11、换部分,外围电路简单,成本低;单总线接口,只有一根信号线作 为单总线与CPU连接,且每一只都有自己唯一的64位系列号存储在其内部的 ROM存储器中,故在一根信号线上可以挂接多个DS18820,便于多点测量且易于 扩展。由图可知,18B20只占用一个IO口,只要将传感器的第二脚接到单片机的P3.7 口即可向单片机传输数据。 3、键盘显示部分电路 独立按键设计比起中断键盘相对简单很多,因为本系统只有两个按键,及 用程序扫描键盘即可,液晶的八个数据口接 P0 口,三个控制端口 R/S、R/W、E 分别接 P1.2、P1.3、P1.4。 4、PWM 驱动电路驱动部分主要采用 IRF540N 场效应管,

12、它最大可以通过 28A 电流,驱动能 力相当强悍,由 R3 的的一端接单片机 I/O 口,高压部分和低压部分使用用光电 耦合器隔离,信号单向传输,输入端与输出端完全实现了电气隔离隔离,输 出信号对输入端无影响,抗干扰能力强,工作稳定,无触点,使用寿命长, 传输效率高。 5、光柱部分电路 光柱由 74HC373 来驱动,由于锁存器可以灌输较大的电流,从而可以保证 LED 灯的亮度,通过 LE 锁存端得锁存作用,可以防止灯柱因 IO 口电平快速变 化而造成灯柱闪烁。当锁存端 LE 为高电平时,锁存器直通,灯柱跟随 IO 口的 电平变化,结束后 LE 变回低电平锁存数据。 软件设计 1、系统主程序本

13、系统的系统主程序采用 C 语言编写,基本流程如下:检测系统温度 向液晶输出当前温度 键盘扫描 响铃 2S 定时器 0、1初始化 液晶初始化 是否达到 设定温度 PID 控制输出量 灯柱控制 Start END 是否有按 键按下 温度设定值步进 1 是 否 是 否 主程序开始后进行各个模块初始化,启动定时器 0和定时器 1分别用作 PWM 发生器和响铃时间控制器,而后 18B20 开始检测系统环境温度,液晶显 示函数输出当前的系统温度,接着键盘扫描函数开始扫描键盘,判断是否有按键按下,并且判断提高设定温度还是降低设定温度,响铃控制函数判断温度是 否已达到设定温度,当达到时开启蜂鸣器响铃 2S,P

14、ID 控制器通过 18B20 的返 回值和设定值相比较,通过改变 PWM 的占空比来改变输出量的大小。灯柱显 示当前的 PWM 波的占空比。 (1) 定时器 0中断程序在定时器 0中断程序中加入控制 PWM 占空比的计数变量,当 这个变量值在 1至 71,在 PID 控制函数中只要改变这个变量的值 就可以改变输出 PWM 的占空比。变量取 1时占空比最小,此时输 出功率最小,当变量取 70时占空比最大,此时的输出功率最大。 (2) 蜂鸣器响铃程序如果响铃程序仅仅简单的判断是否达到设定温度响铃的话,铃 声可能就会响很长时间,这是我们不愿看到的情况,因此响铃程序 是这样实现的: 响亮标志 flag=1 响铃 2S 系统温度高于设定温 度&flag=0 为真 温度低于 设定温度 响铃标志 flag=0 是 否 是 否 响铃标志 flag=1 通过响铃标志位 flag 的作用,只有温度从低温到达高温的时候系统 才会响铃。 (3) 灯柱控制函数灯柱所显示的就是当前 PWM 的占空比,当占空比越高的时候 灯柱上的灯亮的越多,这个功能的实现主要通过多路条件选择来实 现,(4) (5) (6) (7)

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 质量控制/管理

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号