恒温箱温度计算机控制系统设计报告(25页).docx
《恒温箱温度计算机控制系统设计报告(25页).docx》由会员分享,可在线阅读,更多相关《恒温箱温度计算机控制系统设计报告(25页).docx(24页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、-恒温箱温度计算机控制系统设计报告-第 24 页计算机控制系统设计报告设计名称: 恒温箱温度计算机控制系统设计 姓 名: 学 号: 班 级: 学 院: 信息工程学院 任课教师: 基于单片机的恒温箱控制系统设计 摘要: 本设计是基于AT89S52单片机的恒温箱控制系统,系统分为硬件和软件两部分,其中硬件包括:电源、温度传感器、显示、控制、晶闸管驱动和报警的设计;软件包括:键盘管理程序设计、显示程序设计、PID控制程序设计和温度报警程序设计。编写程序结合硬件进行调试,能够实现设置和调节初始温度值,进行液晶显示,当加热到设定值后立刻报警。本设计从实际应用出发选取了体积小、精度相对高的数字式温度传感元
2、件DS18B20作为温度采集器,单片机AT89S52为主控芯片,液晶作为显示输出,实现了对温度的实时测量与恒定控制。关键词:单片机、温度传感器、恒温、声光报警、PID。引言: 温度控制是工业生产过程中经常遇到的过程控制,特别是在冶金、化工、建材、食品、机械、石油等工业中,具有举足重轻的作用,其温度的控制效果直接影响着产品的质量,因而设计一种较为理想的温度控制系统是非常有价值的。对于不同场所、不同工艺、所需温度高低范围不同、精度不同,则采用的测温元件、测温方法以及对温度的控制方法也将不同;产品工艺不同、控制温度的精度不同、时效不同,则对数据采集的精度和采用的控制算法也不同。因而,对温度的测控方法
3、多种多样。随着电子技术和微型计算机的迅速发展,微机测量和控制技术也得到了迅速的发展和广泛的应用。利用微机对温度进行测控的技术,也便随之而生,并得到日益发展和完善,越来越显示出其优越性。然而现有的温度传感元件大多为模拟器件(热电耦)体积大、应用复杂、而且不容易实现数字化等缺点,阻碍了应用领域的扩展。本设计从实际应用出发选取了体积小、精度相对高的数字式温度传感元件DS18B20作为温度采集器,单片机AT89S52作为主控芯片,数码管作为显示输出,实现了对温度的实时测量与恒定控制。一、 本课题设计要求 如下图所示,恒温箱采用木箱或纸箱(外形尺寸不大于30cm30cm30cm),内置白炽灯泡(功率不大
4、于100W)用于加热。30cm30cm木箱或纸箱白炽灯泡100W 自制恒温箱要求(1)温度采集传感器采用热电阻或热电偶,或一体化数字温度传感器DS18B20。(2)控制灯泡亮度或发热量,采用可控硅平滑控制。(3)采用单片机作为控制器。(4)采用LCD的液晶显示器作为显示器,同时显示给定温度和实际温度。(5)采用自制按键的键盘作为温度给定值输入。(6)恒温箱实际温度达到给定值时(误差要求1)需声光提示,声音延时5秒后停止。(7)恒温箱最高温度50。二、总体方案设计系统整体框图如下图: 图1 系统结构框图1.电源模块首先是电源模块,利用变压器把220V的交流电转为正负12V的交流电,再用二极管桥式
5、整流电路,整流出直流电。之后用大电容平波,小电容滤波,之后在用7805稳压芯片稳出5V的直流电,供给各个部分。其次是单片机的外围电路,其中包括有单片机最小系统、LCD显示、按键、晶闸管控制电路以及温度采集电路。2.温度传感器方案一:使用热敏电阻作为传感器,用热敏电阻与一个相应阻值电阻相串联分压,利用热敏电阻阻值随温度变化而变化的特性,采集这两个电阻变化的分压值,并进行A/D转换,此设计方案需要A/D转换电路,增加了硬件成本而且热敏电阻的感温特性曲线并不是严格性的,会产生较大的测量误差。方案二:采用温度传感器铂电阻 Pt1000。铂热电阻的物理化学性能在高温和氧化性介质中很稳定,它能用作工业测温
6、元件,且此元件线性较好。在 0100 摄氏度时,最大非线性偏差小于 0.5 摄氏度。铂热电阻与温度关系是,Rt = R0(1+At+Bt) ;其中 Rt 是温度为 t 摄氏度时的电阻;R0 是温度为 0 摄氏度时的电阻;t 为任意温度值,A,B 为温度系数。方案三:采用模拟温度传感器AD590K,AD590K具有较高精度和重复性(重复性优于0.1),其良好的非线性可以保证优于0.1的测量精度。但其测量的值需要经过运算放大、模数转换再传给单片机,硬件电路较复杂,调试也会相对困难,所以本系统不宜采用此法。 方案四:采用数字式温度传感器DS18B20,此类传感器为数字式传感器,而且仅需要一条数据线进
7、行数据传输,易于与单片机连接,可以去除A/D模块,降低了硬件成本,简化系统电路。另外,数字式温度传感器还具有测量精度高,测量范围广等优点。综合以上四种方案,本设计采用第四种方案,利用数字温度计DS18B20作为温度传感器。3.显示部分方案一:温度的显示可以用数码管,但数码管只能显示简单的数字,它有电路复杂,占用资源较多,显示信息少等缺点。方案二:1602液晶也叫1602字符型液晶,它是一种专门用来显示字母、数字、符号等的点阵型液晶模块。显示字母和数字比较方便,控制简单,成本较低。我们设计的系统需要显示更多的信息,所以考虑显示功能更好的液晶显示,要求能显示更多的数据,增强显示信息的可读性,看起来
8、更方便。综合以上两种方案,本设计采用方案二,用1602液晶显示器来显示数据。4.输出控制方案一:采用继电器,易于控制,且实行比较简单,但强电和弱电不能很好的隔离,抗干扰能力极差,开关频率不能太高,灯泡会一直闪烁。方案二:采用固态继电器,易于控制,电路简单,但需要PWM波来进行控制,普通51单片机无PWM口,故不采用此法。方案三:采用晶闸管,控制信号与输出信号可以很好的隔离,增强了系统的安全性和抗干扰能力。综合以上三种方案,本设计采用晶闸管控制负载工作。三、硬件电路设计及工作原理1.系统功能及工作流程介绍根据恒温箱控制器的功能要求,并结合对51系列单片机的资源分析,即单片机软件编程自由度大,可用
9、编程实现各种控制算法和逻辑控制。所以采用AT89C52作为电路系统的控制核心。恒温箱控制器的总体布局如图1所示。按键将设置好的温度值传给单片机,通过温度显示模块显示出来。初始温度设置好后,单片机开启输出控制模块,使电热器开始加热,同时将从数字温度传感器DS18B20测量到的温度值实时的显示出来,当加热到设定温度值时,单片机控制声光报警模块,发出声光报警,当超过设置温度关闭加热器。当自然冷却到设定温度以下时,单片机再次启动加热器,如此循环反复,以达到恒温控制的目的。系统结构框图如图1所示,系统基本硬件电路图如图2所示。 图2 基本硬件电路图2. 系统硬件设计(1)DS18B20测温电路DS18B
10、20数字温度计是Dallas公司生产的1Wire器件,即单总线器件。与传统的热敏电阻有所不同,DS18B20可直接将被测温度转化成串行数字信号,以供单片机处理,具有连线简单、微型化、低功耗、高性能、抗干扰能力强、精度高等特点。因此用它来组成一个测温系统,具有电路简单,在一根通信线上可以挂很多这样的数字温度计,十分方便。目前已被众多行业进行广泛的运用(锅炉、温控表粮库、冷库、工业现场温度监控、仪器仪表温度监控、农业大棚温度监控等)。通过编程,DS18B20可以实现912位的温度读数。信息经过单线接口送入DS18B20或从DS18B20送出,因此从微处理器到DS18B20仅需连接一条信号线和地线。
11、读、写和执行温度变换所需的电源可以由数据线本身提供,而不需要外部电源。每片DS18B20在出厂时都设有唯一的产品序列号,因此多个DS18B20可以挂接于同一条单线总线上,这允许在许多不同的地方放置温度传感器,特别适合于构成多点温度测控系统由于DS18B20采用的是1Wire总线协议方式,即在一根数据线实现数据的双向传输,而对AT89S52单片机来说,硬件上并不支持单总线协议,因此,我们必须采用软件的方法来模拟单总线的协议时序来完成对DS18B20芯片的访问。1Wire总线支持一主多从式结构,硬件上需外接上拉电阻。当一方完成数据通信需要释放总线时,只需将总线置高点平即可;若需要获得总线进行通信时
12、则要监视总线是否空闲,若空闲,则置低电平获得总线控制权。 图3 DS18B20测温电路(2)输出控制电路加热电路中采用MOC3023的目的是实现强电与弱电的隔离,其在电路中的工作原理是单片机根据传感器和设定开关输入的控制指令,控制电器的电源通断。BTA16是小型塑封双向晶闸管,当电源控制电路的输出管脚送出的开关控制指令为高电平,MOC3023截止,BTA16截止,电器被关闭;当电源控制电路送出的开关控制指令为低电平,MOC3023导通,BTA16导通,电器被打开。R4是BTA16的保护电路。 图4 光耦控制输出(3)显示电路1602液晶也叫1602字符型液晶 它是一种专门用来显示字母、数字、符
13、号等的点阵型液晶模块 它有若干个5X7或者5X11等点阵字符位组成,每个点阵字符位都可以显示一个字符。显示电路采用LCD1602液晶显示,如图(7)所示,图中只画出了其相应的接口,3脚用于调节LCD1602的背光,4、5、6为LCD1602的控制口,用于控制其写入或是读出指令,7至14脚为LCD1602的数据口,将数传送到LCD1602中。 图5 LCD1602显示电路LCD1602的特性:+5V电压,对比度可调;内含复位电路;提供各种控制命令,如:清屏、字符闪烁、光标闪烁、显示移位等多种功能;有80字节显示数据存储器DDRAM;内建有160个5X7点阵的字型的字符发生器CGROM,8个可由用
14、户自定义的5X7的字符发生器CGRAM;基本操作时序: 读状态:输入:RS=L,RW=H,E=H;输出:DB0DB7=状态字 ;写指令:输入:RS=L,RW=L,E=下降沿脉冲,DB0DB7=指令码 ;输出:无。读数据:输入:RS=H,RW=H,E=H;输出:DB0DB7=数据 ;写数据:输入:RS=H,RW=L,E=下降沿脉冲,DB0DB7=数据 ;输出:无。LCD1602的各种指令不再一一说明。(4)温度越线报警电路报警电路如图8所示,该电路采用一个小功率三极管Q1驱动蜂鸣器BELL,当单片机接收到超额温度信号或危险信号时,输出脚BELL输出高点平,Q1导通,致使蜂鸣器BELL得电工作,发
15、出报警声。同时,电路中的发光二极管指示出电路的工作状态。 图6 报警电路 (5)过零检测 TLP521-2是一个内部集成两个光耦的芯片,主要用于过零检测,当电源的正弦交流电过零时,在三极管的集电极的会产生一个下降沿和一个上升沿,这样单片机的外部中断口可以识别到,最终用于控制晶闸管的导通角。图7过零检测电路四、系统的应用软件设计软件描述本程序的主要功能就是控制晶闸管的导通角,来控制白炽灯的亮度,最终达到控制温度的目的。设置有两个按键,一个按键可以增加期望温度,另一个可以减少期望温度,步进最小是0.1摄氏度。有一个LCD显示屏,可以显示当前温度和期望,当实际温度达到期望温度时,蜂鸣器和LED灯报警
16、5s后停止。运用的控制策略是PID算法,PID算法的精华之处就是利用偏差进行控制。P代表的是比例,这个参数可是使调节更快速,I是积分,这个参数可以消除稳态误差,D是微分,可以超前控制。根据以上对操作和工作过程的分析,程序应分为两个阶段:一是通电或复位后到给定温度;二是检测并显示系统的实时温度,并根据检测的结果控制电热器,这时系统不接收键盘的输入。因此,程序可以分为以下几个功能模块:温度设定和启动;显示;温度检测;温度控制以及报警。(1)键盘管理模块当通电以后,系统进入键盘管理状态,单片机只接收设定温度和启动。当检测到有键闭合时先去除抖动,这里采用软件延时的方法,延时一段时间后,再确定是否有键闭
17、合,然后将设定好的值送入预置温度数据区,并调用温度合法检测报警程序,当设定温度超过最大值时就会报警,最后当启动键闭合时启动加热。键盘设定:用于温度设定。共两个按键。 KEY1(P3.6): 设置温度“+”。KEY2(P3.7): 设置温度“-”。 (2)显示模块显示子程序的功能是将缓冲区的二进制数据先转换成3个BCD码,再将其分别存入百位、十位、个位3个显示缓冲区,送往串行口,利用单片机的P0口进行扫描,让数据动态的在1602上显示出来,可显示设置温度和测量温度。(3)控制模块温度控制子程序流程如图7所示,将当前温度与设定好的温度比较,当当前温度小于设定温度时,开启电热器;当当前温度大于设定温
18、度时,关闭电热器;当二者相等时,电热器保持这一状态。图8控制模块程序流程(4)温度报警模块根据设计要求,当检测到当前温度值高于设定温度值时报警,报警的同时关闭电热器。为了防止误报,设置了报警允许标志,只有在允许报警的情况下,温度值高于设定温度值时才报警。(5)主程序和中断服务程序流程主程序采用中断嵌套方式设计,各功能模块可直接调用。主程序完成系统的初始化,温度预置及其合法性检测,预置温度的显示及定时器0设置。定时器0中断服务子程序是温度控制体系的主体,用于温度检测、控制和报警(包括启动温度转换、读入采样数据、数字滤波、越限温度报警和越限处理、输出控制脉冲等)。图9 主程序流程图 图10 中断服
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 恒温箱 温度 计算机 控制系统 设计 报告 25
限制150内