恒温箱设计报告

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

计算机控制系统设计报告设计名称:恒温箱温度计算机控制系统设计姓名:陈卫东学号:20096264班级:自动化0903班学院:信息工程学院任课教师:聂诗良基于单片机的恒温箱控制系统设计【摘要】本课程设计是基于AT89C52单片机的恒温箱控制系统,本设计从实际应用出发选取了体积小、精度相对高的数字式温度传感元件DS18B20作为温度采集器,单片机AT89C52作为主控芯片,1602液晶显示器作为显示输出,独立按键作为键盘设置输入,并用声光报警实现对温度的实时测量与恒定控制。【关键词】单片机;温度传感器;恒温;声光报警。一、本课题设计要求(1)温度采集传感器采用热电阻或热电偶,或一体化数字温度传感器DS18B20。(2)控制灯泡亮度或发热量,采用继电器开关控制或用可控硅平滑控制。(3)采用单片机或PLC作为控制器。(4)采用LED或LCD或PC机的液晶显示器作为显示器,同时显示给定温度和实际温度。(5)采用自制按键或PC机的键盘作为温度给定值输入。(6)恒温箱实际温度达到给定值时(误差要求±1℃)需声光提示,声音时延5秒后停止。(7)恒温箱最高温度≤50℃。二、总体方案设计系统整体框图如下图:图1系统结构框图1)温度传感器方案一:使用热敏电阻作为传感器,用热敏电阻与一个相应阻值电阻相串联分压,利用热敏电阻阻值随温度变化而变化的特性,采集这两个电阻变化的分压值,并进行A/D转换,此设计方案需要A/D转换电路,增加了硬件成本而且热敏电阻的感温特性曲线并不是严格性的,会产生较大的测量误差。方案二:采用数字式温度传感器DS18B20,此类传感器为数字式传感器,而且仅需要一条数据线进行数据传输,易于与单片机连接,可以去除A/D模块,降低了硬件成本,简化系统电路。另外,数字式温度传感器还具有测量精度高,测量范围广等优点。综合以上两种方案,本设计采用第二种方案,利用数字温度计DS18B20作为温度传感器。2)显示部分方案一:温度的显示可以用数码管,但数码管只能显示简单的数字,它有电路复杂,占用资源较多,显示信息少等缺点。方案二:1602液晶也叫1602字符型液晶,它是一种专门用来显示字母、数字、符号等的点阵型液晶模块。显示字母和数字比较方便,控制简单,成本较低。我们设计的系统需要显示更多的信息,所以考虑显示功能更好的液晶显示,要求能显示更多的数据,增强显示信息的可读性,看起来更方便。综合以上两种方案,本设计采用方案二,用1602液晶显示器来显示数据。3)输出控制方案一:采用继电器,易于控制,且实行比较简单,但强电和弱电不能很好的隔离,抗干扰能力极差。方案二:采用光电藕合器,控制信号与输出信号可以很好的隔离,增强了系统的安全性和抗干扰能力。综合以上两种方案,本设计采用光电藕合器控制负载工作。三、硬件电路设计及工作原理1、系统功能及工作流程介绍根据恒温箱控制器的功能要求,并结合对51系列单片机的资源分析,即单片机软件编程自由度大,可用编程实现各种控制算法和逻辑控制。所以采用AT89C52作为电路系统的控制核心。恒温箱控制器的总体布局如图1所示。按键将设置好的温度值传给单片机,通过温度显示模块显示出来。初始温度设置好后,单片机开启输出控制模块,使电热器开始加热,同时将从数字温度传感器DS18B20测量到的温度值实时的显示出来,当加热到设定温度值时,单片机控制声光报警模块,发出声光报警,当超过设置温度关闭加热器。当自然冷却到设定温度以下时,单片机再次启动加热器,如此循环反复,以达到恒温控制的目的。系统结构框图如图1所示,系统基本硬件电路图如图2所示。Vin1GND2Vout3U1LM7805D11N4007D21N4007DLED1S8550PNP10KR210KR11KR3S0SW-SPST变压器TransCT25V/1000uFC125V/100uFC2VCC220V-1220V-2VCCjiance123红线红线蓝线蓝线黄线U2M0C30231KR4560R5BTA16VCC灯泡60W220V-2220V-1kongzhi1246123PB01PB12PB23PB34PB45PB56PB67PB78RES9VCC10GND11XL212XL113PD014PD115PD216PD317PD418PD519PD620PD721PC022PC123PC224PC325PC426PC527PC628PC729AVCC30GND31AREF32PA033PA134PA235PA336PA437PA538PA639PA740U3ATMEGA1610KR6330Rs0330Rs1330Rs2330Rs3330Rs4330Rs5330Rs6330Rs7S2SW-PBSSW-PBS1SW-PB20pFCj120pFCj21212MXTAL25V/10uFCVCCVCCkongzhiD7D0D1D2D3D4D5D6jianceDQGND1DQ2VCC3U4DS18B2010KR7Res2DQVCCBELLBELLQ1VCC图2基本硬件电路图2、系统硬件设计(1)DS18B20测温电路DS18B20数字温度计是Dallas公司生产的1-Wire器件,即单总线器件。与传统的热敏电阻有所不同,DS18B20可直接将被测温度转化成串行数字信号,以供单片机处理,具有连线简单、微型化、低功耗、高性能、抗干扰能力强、精度高等特点。因此用它来组成一个测温系统,具有电路简单,在一根通信线上可以挂很多这样的数字温度计,十分方便。目前已被众多行业进行广泛的运用(锅炉、温控表粮库、冷库、工业现场温度监控、仪器仪表温度监控、农业大棚温度监控等)。通过编程,DS18B20可以实现9~12位的温度读数。信息经过单线接口送入DS18B20或从DS18B20送出,因此从微处理器到DS18B20仅需连接一条信号线和地线。读、写和执行温度变换所需的电源可以由数据线本身提供,而不需要外部电源。每片DS18B20在出厂时都设有唯一的产品序列号,因此多个DS18B20可以挂接于同一条单线总线上,这允许在许多不同的地方放置温度传感器,特别适合于构成多点温度测控系统由于DS18B20采用的是1-Wire总线协议方式,即在一根数据线实现数据的双向传输,而对AT89S51单片机来说,硬件上并不支持单总线协议,因此,我们必须采用软件的方法来模拟单总线的协议时序来完成对DS18B20芯片的访问。112345678910111213141516P1Header16HVCCVCCGNDGND3.3kR6GND-Wire总线支持一主多从式结构,硬件上需外接上拉电阻。当一方完成数据通信需要释放总线时,只需将总线置高点平即可;若需要获得总线进行通信时则要监视总线是否空闲,若空闲,则置低电平获得总线控制权。图3DS18B20测温电路(2)输出控制电路加热电路中采用MOC3023的目的是实现强电与弱电的隔离,其在电路中的工作原理是单片机根据传感器和设定开关输入的控制指令,控制电器的电源通断。BTA16是型小型塑封双向晶闸管,当电源控制电路的输出管脚送出的开关控制指令为高电平,MOC3023截止,BTA16截止,电器被关闭;当电源控制电路送出的开关控制指令为低电平,MOC3023导通,BTA16导通,电器被打开。R4是BTA16的保护电路。图4光耦控制输出(3)显示电路1602液晶也叫1602字符型液晶它是一种专门用来显示字母、数字、符号等的点阵型液晶模块它有若干个5X7或者5X11等点阵字符位组成,每个点阵字符位都可以显示一个字符。显示电路采用LCD1602液晶显示,如图(7)所示,图GND1DQ2VCC3U4DS18B2010KR7Res2DQVCCU2M0C30231KR4560R5BTA16VCC灯泡60W220V-2220V-1kongzhi1246123中只画出了其相应的接口,3脚用于调节LCD1602的背光,4、5、6为LCD1602的控制口,用于控制其写入或是读出指令,7至14脚为LCD1602的数据口,将数传送到LCD1602中。图5LCD1602显示电路LCD1602的特性:+5V电压,对比度可调;内含复位电路;提供各种控制命令,如:清屏、字符闪烁、光标闪烁、显示移位等多种功能;有80字节显示数据存储器DDRAM;内建有160个5X7点阵的字型的字符发生器CGROM,8个可由用户自定义的5X7的字符发生器CGRAM;基本操作时序:读状态:输入:RS=L,RW=H,E=H;输出:DB0~DB7=状态字;写指令:输入:RS=L,RW=L,E=下降沿脉冲,DB0~DB7=指令码;输出:无。读数据:输入:RS=H,RW=H,E=H;输出:DB0~DB7=数据;写数据:输入:RS=H,RW=L,E=下降沿脉冲,DB0~DB7=数据;输出:无。LCD1602的各种指令不再一一说明。(4)温度越线报警电路报警电路如图8所示,该电路采用一个小功率三极管Q1驱动蜂鸣器BELL,当单片机接收到超额温度信号或危险信号时,输出脚BELL输出高点平,Q1导通,12345678910111213141516P1Header16HVCCVCCGNDGND3.3kR6GND致使蜂鸣器BELL得电工作,发出报警声。同时,电路中的发光二极管指示出电路的工作状态。图5报警电路四、系统的应用软件设计1、软件描述在软件设计时,必须先弄清恒温控制系统的操作过程和工作过程。停止加热,当温度下降到下限(小于设定值)时再自动启动加热,这样不断的循环,使温度保持在设定范围之内。启动加热以后就不能再设定温加热器开始时处于停止状态,首先设定温度,显示器显示温度,温度设定后则可以启动加热。温度检测系统不断检测并显示系统中的实时温度,当达到设定值后度,因为温度的设定可以根据实验要求改变。若要改变设定的温度,可以按设置键再重复上述过程。根据以上对操作和工作过程的分析,程序应分为两个阶段:一是通电或复位后到启动加热,程序主要是按键设定、显示器显示设定温度;二是检测并显示系统的实时温度,并根据检测的结果控制电热器,这时系统不接收键盘的输入。因此,程序可以分为以下几个功能模块:温度设定和启动;显示;温度检测;温度控制以及报警。(1)键盘管理模块当通电以后,系统进入键盘管理状态,单片机只接收设定温度和启动。当检测到有键闭合时先去除抖动,这里采用软件延时的方法,延时一段时间后,再确定是否有键闭合,然后将设定好的值送入预置温度数据区,并调用温度合法检测报警程序,当设定温度超过最大值时就会报警,最后当启动键闭合时启动加热。键盘设定:用于温度设定。共两个按键。KEY1(P3.6):设置温度“+”。BELLBELLQ1VCCKEY2(P3.7):设置温度“-”。(2)显示模块显示子程序的功能是将缓冲区的二进制数据先转换成3个BCD码,再将其分别存入百位、十位、个位3个显示缓冲区,送往串行口,利用单片机的P0口进行扫描,让数据动态的在1602上显示出来,可显示设置温度和测量温度。(3)控制模块温度控制子程序流程如图7所示,将当前温度与设定好的温度比较,当当前温度小于设定温度时,开启电热器;当当前温度大于设定温度时,关闭电热器;当二者相等时,电热器保持这一状态。图6控制模块程序流程(4)温度报警模块根据设计要求,当检测到当前温度值高于设定温度值时报警,报警的同时关闭电热器。为了防止误报,设置了报警允许标志,只有在允许报警的情况下,温度值高于设定温度值时才报警。(5)主程序和中断服务程序流程主程序采用中断嵌套方式设计,各功能模块可直接调用。主程序完成系统的初始化,温度预置及其合法性检测,预置温度的显示及定时器0设置。定时器0中断服务子程序是温度控制体系的主体,用于温度检测、控制和报警(包括启动温度转换、读入采样数据、数字滤波、越限温度报警和越限处理、输出控制脉冲等)。图7主程序流程图图8中断服务程序流程图五、系统调试与仿真1、硬件调试时,可先检查印制板及焊接的质量是否符合要求,有无虚焊点及线路间有无短路、断路。然后用万用表检测,检查无误后,可通电检查LCD液晶显示器亮度情况,一般情况下

1 / 19
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功