《基于51单片机的高精度恒温控制系统设计毕业论文.doc》由会员分享,可在线阅读,更多相关《基于51单片机的高精度恒温控制系统设计毕业论文.doc(40页珍藏版)》请在三一办公上搜索。
1、毕业设计(论文)课题名称:基于51单片机的高精度恒温控制系统设计 专 业(系 电气工程系 班 级 智能电子102 学 生 姓 名 指 导 老 师 日 期 2012.11 摘要温度是工业生产过程和实验过程中比较重要的一个参数,精确的温度是很重要的。目前温度测量系统种类繁多,功能参差不齐。提出采用单总线数字式温度传感器DS18B20和单片机组成的新型高精度温度测量仪的设计。介绍了温度传感器DS18B20的结构,特点和工作原理,数字温度测量传感器DS18B20是单一总线的高精度测量器件,设计了DS18B20和ST89C52单片机的温度测量系统引荐电路和软件编程,主要包括温度采集,温度显示及报警控制等
2、功能,它克服了以前模拟式传感器与微机接口时需要的A/D转换器及其他复杂外围电路的缺点。整个系统具有结构简单,测量精度高,传输距离远,抗干扰能力强,温度读取方便和造价低等一系列优点,本文就是运用单片机及其接口和集成单总线温度传感器DS18B20国建一个高精度温度测量和显示系统,并且通过开关进行温度上限的位置,设计的电路简单,易于实现。关键词:单片机;DS18B20;A/D转换;温度测量AbstractTemperature is the process of industrial production and experimental process is a relatively import
3、ant parameters, precise temperature is very important. The system for measuring the temperature variety, functional uneven. The single bus digital temperature sensor DS18B20 and single-chip microcomputer model of high precision temperature measuring instrument design. Introduces the temperature sens
4、or DS18B20 structure, characteristic and working principle of digital temperature sensor DS18B20, is a single bus device design of high precision measurement, DS18B20 and AT89C52 SCM temperature measurement system introduced circuit and software programming, mainly including temperature collection,
5、temperature display and alarm control and other functions, it overcomes the previous analog sensor and computer interface to A/D converter and other complex peripheral circuit. The whole system has the advantages of simple structure, high measuring precision, long transmission distance, strong anti-
6、interference ability, low cost and convenient temperature reading a series of advantages, this paper is the use of microcomputer and its interface and integrated single bus temperature sensor DS18B20 to build a high precision temperature measurement and display system for lady, and through the switc
7、h temperature upper limit position, the design of the circuit is simple, easy to realize.Key words: single chip microcomputer; DS18B20; A/D transform; temperature measurement引言重温度是工业生产过程和实验过程中比较重要的一个参数,精确的温度是很要的。目前温度测量系统种类繁多,功能参差不齐。不论是在生活中还是在工业生产中,温度的变化对生活、生产的某些细节都会造成不同程度上的影响,所以适时的对温度控制具有有重要的意义。过去多采
8、用常规的模拟调节器对温度进行控制,具有纯滞后、非线性等特点。导致传统方式调节时间长,控制精度低。温度控制,在工业自动化控制中占有非常重要的地位。单片机系统的开发应用给现代工业测控领域带来了一次新的技术革命,自动化、智能化均离不开单片机的应用。将单片机控制方法运用到温度控制系统中,可以克服温度控制系统中存在的严重滞后现象,同时在提高采样频率的基础上可以很大程度的提高控制效果和控制精度。现代自动化控制越来越朝着智能化发展,在很多自动控制系统中都用到了工控机,小型机、甚至是巨型机处理机等,当然这些处理机油一个很大的特点,那就是很高的运行速度,很大的内存,大量的数据存储器。单随之而来的时巨额的成本。在
9、很多的小型系统中,处理机的成本占系统成本的比例高达20%,二对于这些小型的系统来说,配置一个如此告诉的处理机没有任何必要,因为这些小系统最求经济效益,而不是嘴在乎系统的快速性。所以用成本低廉的单片机控制小型,而又不是很复杂,不需要大量复杂运算运算的系统中时非常适合的。将单片机控制方法运用到温度控制系统中,尅克服温度控制系统中存在的严重滞后现象,同时在提高采样频率的基础上可以很大程度提高控制效果和控制精度。随着电子技术以及应用需求的发展,单片机技术得到了迅速的发展,在高集成度,高精度,低功耗以及高性能方面取得了很大的进展,伴随着科学技术的发展,电子技术有了更高的飞跃。目录摘要1Abstract2
10、引言3第一章 绪论61.1. 课题背景61.2. 设计内容及设计目的7 12.1 设计内容:7 12.2 设计目的:71. 2.3 设计要求:7第二章 传感器调研8 2. 1 AD590 - 主要特性922 DS1612简介:1023 DS18B20简介:1123.1 DS18B20的主要特性:1123.2 DS18B20的工作时序12第三章 设计模块器件比较、选型1431 传感器的选型:143. 2 单片机的选用15第四章 设计方案17总体设计框图17第五章 硬件设计1851 18B20温度采集模块:1852 显示模块:2053 温度控制模块:2154 晶振控制电路:2255 复位电路:23
11、第六章 软件设计2461 系统程序流程图246. 2 18B20测温原理26第七章 调试2871 在实验板上调试电路2872 电路板与器件的焊接及调试2873 调试反馈29心得体会30参考文献31致谢32附录33附图1:程序33 附图2:原理38附图3:PCB图39附图4:元件清单40第一章 绪论1.1. 课题背景现代信息技术的三大基础是信息采集(即传感器技术)、信息传输(通信技术)和信息处理(计算机技术)。传感器属于信息技术的前沿尖端产品,尤其是温度传感器被广泛用于工农业生产、科学研究和生活等领域,数量高居各种传感器之首。本课题采用温度传感器采集温度,由单片机控制,在一定的算法基础上实现一定
12、空间范围内温度的精密控制,从而实现一种高精度的温控系统。通过此课题的设计,熟悉单片机C语言的应用,掌握单片机控制的一般方法和处理问题的思路,特别是一些常用的技术手段,在实践教学环节中,积累设计经验,开拓思维空间,全面提高个人的综合能力。随着社会的发展,科技的进步,以及测温仪器在各个领域的应用,智能化已是现代温度控制系统发展的主流方向。特别是近年来,温度控制系统已应用到人们生活的各个方面,但温度控制一直是一个未开发的领域,却又是与人们息息相关的一个实际问题。针对这种实际情况,设计一个温度控制系统,具有广泛的应用前景与实际意义。温度是科学技术中最基本的物理量之一,物理、化学、生物等学科都离不开温度
13、。在工业生产和实验研究中,像电力、化工、石油、冶金、航空航天、机械制造、粮食存储、酒类生产等领域内,温度常常是表征对象和过程状态的最重要的参数之一。比如,发电厂锅炉的温度必须控制在一定的范围之内;许多化学反应的工艺过程必须在适当的温度下才能正常进行;炼油过程中,原油必须在不同的温度和压力条件下进行分馏才能得到汽油、柴油、煤油等产品。没有合适的温度环境,许多电子设备就不能正常工作,粮仓的储粮就会变质霉烂,酒类的品质就没有保障。因此,各行各业对温度控制的要求都越来越高。可见,温度的测量和控制是非常重要的。单片机在电子产品中的应用已经越来越广泛,在很多的电子产品中也用到了温度检测和温度控制。随着温度
14、控制器应用范围的日益广泛和多样,各种适用于不同场合的智能温度控制器应运而生1.2. 设计内容及设计目的12.1 设计内容:本设计的内容是温度测试控制系统,控制对象是温度。温度控制在日常生活及工业领域应用相当广泛,比如温室、水池、发酵缸、电源等场所的温度控制。而以往温度控制是由人工完成的而且不够重视,其实在很多场所温度都需要监控以防止发生意外。针对此问题,本系统设计的目的是实现一种可连续高精度调温的温度控制系统,它应用广泛,功能强大,小巧美观,便于携带,是一款既实用又廉价的控制系统。 利用单片机对被控对象进行精确的温度控制(控制精度0.1),而且能把测量的温度传送到单片机上显示,不仅能精确测量被
15、测系统的温度,而且能数字显示温度大小,具有动态显示、性能稳定,控制精度高等特点12.2 设计目的: 本设计的内容是温度测试控制系统,控制对象是温度。温度控制在日常生活及工业领域应用相当广泛,你如温室、水池、发酵缸、电源等场所的温度控制。而以往温度控制是由人工完成的而且不够重视,其实在很多场所温度都需要监控以防止发生意外。针对此问题,本系统设计的目的是实现一种可连续高精度调温的温度控制系统,他应用广泛,功能强大,小巧应用方便,是一款既实用又廉价的控制系统。 本设计是对温度进行实时监测与控制,设计的温度控制系统实现了基本的温度控制功能:当温度低于设定下限温度时,系统自动启动加热继电器加温,使温度上
16、升,同时绿灯亮。当温度上升到下限温度以上时,停止加温;当温度高于设定上限温度时,系统自动启动风扇降温,使温度下降,同时红灯亮。当温度下降到上限温度以下时,停止降温。温度在上下限温度之间时,执行机构不执行。数码管即时显示温度,精确到小数点一位。12.3 设计要求:(1) 实时采集温度(2) 温度控制范围为48度;(3) 可软件设置控制温度值,并显示:(4) 数字显示测量的实际温度:(5) 设置温度控制值和检测值之间的误差在0.5度: 第二章 传感器调研在本文中,要运用到温度传感器,而且是高精度的、误差只能在0.1,所以在选用温度传感器中,要慎重的选择能符合我们设计要求的一款;下面介绍一下我们常见
17、的集中温度传感器: AD590简介:AD590是美国ANALOG DEVICES公司的单片集成两端感温电流源,其输出电流与绝对温度成比例。在4 V至30 V电源电压范围内,该器件可充当一个高阻抗、恒流调节器,调节系数为1 µA/K。片内薄膜电阻经过激光调整,可用于校准器件,使该器件在298.2K (25C)时输出298.2 µA电流。AD590适用于150C以下、目前采用传统电气温度传感器的任何温度检测应用。低成本的单芯片集成电路及无需支持电路的特点,使它成为许多温度测量应用的一种很有吸引力的备选方案。应用AD590时,无需线性化电路、精密电压放大器、电阻测量电路和冷结补偿
18、。除温度测量外,还可用于分立器件的温度补偿或校正、与绝对温度成比例的偏置、流速测量、液位检测以及风速测定等。AD590可以裸片形式提供,适合受保护环境下的混合电路和快速温度测量。AD590特别适合远程检测应用。它提供高阻抗电流输出,对长线路上的压降不敏感。任何绝缘良好的双绞线都适用,与接收电路的距离可达到数百英尺。这种输出特性还便于AD590实现多路复用:输出电流可以通过一个CMOS多路复用器切换,或者电源电压可以通过一个逻辑门输出切换。AD590实物图2.1 AD590 - 主要特性 1、 流过器件的电流(mA)等于器件所处环境的热力学温度(开尔文)度数,即:mA/K式中: 流过器件(AD5
19、90)的电流,单位为mA;T热力学温度,单位为K。2、AD590的测温范围为-55+150。3、AD590的电源电压范围为4V30V。电源电压可在4V6V范围变化,电流 变化1mA,相当于温度变化1K。AD590可以承受44V正向电压和20V反向电压,因而器件反接也不会被损坏。4、输出电阻为710MW。5、精度高。AD590共有I、J、K、L、M五档,其中M档精度最高,在-55+150范围内,非线性误差为0.3。 DS1612简介:DS1612是美国达拉斯半导体公司生产的CMOS数字式温度传感器。内含两个不发挥性存储器,可以在存储器中任意的设定上限和下限温度值进行恒温器的温度控制,由于这些存储
20、器具有不发挥性,因此一次定人后,即使不用CPU也仍然可以独立使用。它可测量的温度范围为-55+125,在0+70范围内,测量精度为0.5,输出的9为编码直接与温度相对应。DS1612同外部电路的控制信号和数据的通信是通过双向总线来实现的,有CPU生成串行时钟脉冲(SCL),SDA是双向数据线。通过地址引脚A0、A1、A2将8个不同的地址分配给各器件。通过设定寄存器来设置工作方式,并对工作状态进行监控。被测的温度数据被存储在温度传感器寄存器中,高温(TH)和低温(TL)阈值寄存器存储了恒温器输出(Tout)的阈值。20-PIN TSSOP封装引脚图DS1612内部方框图 DS18B20简介:DS
21、18B20是美国DALLAS半导体公司继DS1820之后最新推出的一种改进型智能温度传感器。与传统的热敏电阻相比,他能够直接读出被测温度并且 可根据实际要求通过简单的编程实现912位的数字值读数方式。可以分别在93.75 ms和750 ms内完成9位和12位的数字量,并且从DS18B20读出的信息或写入DS18B20的信息仅需要一根口线(单线接口)读写,温度变换功率来源于数据总 线,总线本身也可以向所挂接的DS18B20供电,而无需额外电源。因而使用DS18B20可使系统结构更趋简单,可靠性更高。 DS18B20的主要特性:(1) 独特的单线接口方式:DS18B20与微处理器连接时仅需要一条口
22、线即 可实现微处理器与DS18B20的双向通讯。 (2)在使用中不需要任何外围元件。 (3)可用数据线供电,电压范围: 3.0 5.5 V。 (4) 测温范围:-55 125 。固有测温分辨率为0.5 。 (5) 通过编程可实现912位的数字读数方式。(6) 用户可自设定非易失性的报警上下限值。 (7) 支持多点组网功能,多个DS18B20可以并联在惟一的三线上,实现多点测温。 (8) 负压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作。 DS18B20内部结构 DS18B20的工作时序 DS18B20的工作时序包括初始化时序、写时序和读时序。(1) 初始化:单片机将数据线的电平
23、拉低480960us后释放,等待1560us, 单总线器件即可输出一持续60240us的低电平(存在脉冲)单片机收到此应答后即可进行操作。(2) 写时序:当主机将数据线的电平从高拉到低时,形成写时序,有“0”和写“1”两种时序。写时序开始后,DS18B20在15us60us期间从数据线上采样。如果采样到低电平,则向DS18B20写“0”;如果采样到高电平,则向DS18B20写“1”。两个独立的时序间至少需要1us的恢复时间(拉高总线电平)。(3) 读时序:当主机从DS18b20读取数时,产生时序。此时,主机将数据线的电平从高拉到低使读时序被初始化。如果此后15us内,主机总线上采样到低电平,则
24、DS18B20读“0”;如果此后15us内,主机在总线上采样到高电平,则DS18B20读“1”。第三章 设计模块器件比较、选型根据上面几种传感器的介绍中,我们可以选出我们设计中要用到的温度传感器,下面我们从以下几点来选择传感器类型:传感器的选型AD590共有I、J、K、L、M五档,其中M档精度最高,在-55+150范围内,非线性误差为0.3。DS1612它可测量的温度范围为在0+70范围内,测量精度为0.5DS18B20测量温度范围为-55 C至+125 ,精度可达0.5摄氏度。运用的简易程度:AD590特别适合远程检测应用, AD590输出电流223A电路中串接采样电阻R时,R两端的电压可作
25、为喻出电压。注意R的阻值不能取得太大,以保证AD590两端电压不低于3V。AD590输出电流信号传输距离可达到1km以上。DS1612:在芯片上分别设置了一个振荡频率温度系数较大的振荡器(OSC1)和一个温度系数较小的振荡器(OSC2)。在温度较低时,由于OSC2的开门时间较短,因此温度测量计数器计数值(n)较小;而当温度较高时,由于OSC2的开门时间较长,其计数值(m)增大。DS18B20采用一线通信接口。因为一线通信接口,必须在先完成ROM设定,否则记忆和控制功能将无法使用。描述该DS18B20的数字温度计提供9至12位(可编程设备温度读数。信息被发送到/从DS18B20 通过1线接口,所
26、以中央微处理器与DS18B20只有一个一条口线连接。为读写以及温度转换可以从数据线本身获得能量,不需要外接电源。 因为每一个DS18B20的包含一个独特的序号,多个ds18b20s可以同时存在于一条总线。价格比较:AD590单价:19DS1612单价:6.5DS18B20单价:4.19从上面一系列的比较重,我最后选择了DS18B20温度传感器,虽然它的精度没有AD590的高,但是在测量上它运用起来更加的方便,不需要放大电路和A/换,而且非常的便宜。3. 2 单片机的选用针对一定的用途,恰当的选择所使用的单片机是十分重要。对于明确的应用对象,选择功能过少的单片机,无法完成控制任务;选择功能国强的
27、单片机,则会造成资源浪费,使产品的性能价格比下降。目前,市面上的单片机不仅种类繁多,而且在性能方面也各有不同。在实际应用中,针对不同的需求选择合适的单片机,选择单片机时要注意下几点: 单片机的基本性能参数,例如指令执行速度,程序存储器容量,中断能力及I/O口引脚数量等; 单片机的增强功能,例如看门狗,双串口,RTC(实时时钟),EEPROM,CAN接口等; 单片机的存储介质,对于程序存储器来说,Flash存储器和OTP(一次性可编程)存储器相比较,最好是选择Flash存储器; 芯片的封装形式,如DIP封装,PLCC封装机表面贴装封装等。选择DIP封装在搭建实验电路时会更加方便一些; 芯片工作温
28、度范围符合工业级、军品级还是商业级,如果涉及户外产品,必须选用工业级芯片; 单片机的工作电压范围,例如设计电视机遥控器时,使用2节干电池供电,至少选择的单片机能够在1.8V3.6V电压范围内工作; 单片机的抗干扰性能好; 编程器以及仿真器的价格,单片机开发是否支持高级语言以及编程环境要好用易学; 供货渠道是否畅通,价格是否低廉,是否具有良好的技术服务支持。根据上面所述的原则,结合本系统实际情况综合考虑,本文的温度控制系统选用ATMEL公司生产的AT89C52单片机作为主控模块的核心芯片。 单片机选型本系统选用ATMEL公司生产的AT89溪流单片机中的AT89C52,AT89C52单片机是一种新
29、型的低功耗、高性能的8位CMOS微控制器,与工业标准MCS-51指令溪流和引脚完全兼容。具有超强的三级加密功能,其片内闪电存储器(Flash Memory)的编程与檫除完全用电实现,数据不易挥发,编程/檫除速度快。第四章 设计方案主控模块电路由ST89C52单片机、温度采集、数码管显示、温度控制、外部时钟电路、复位电路、PL2303下载。4.1 总体设计方案4.1.1 方案一测温电路的设计,可以使用热敏电阻之类的器件利用其感温效应,在将随被测温度变化的电压或电流采集过来,进行A/D转换后,就可以用单片机进行数据的处理,在显示电路上,就可以将被测温度显示出来,这种设计需要用到A/D转换电路,感温
30、电路比较麻烦。4.1.2 方案二考虑使用温度传感器,结合单片机电路设计,采用一只DS18B20温度传感器,直接读取被测温度值,之后进行转换,依次完成设计要求。比较以上两种方案,很容易看出,采用方案二,电路比较简单,软件设计容易实现,故实际设计中拟采用方案二。在本系统的电路设计方框图如图1.1所示,它由三部分组成:控制部分主芯片采用单片机AT89S52;显示部分采用4位LED数码管以动态扫描方式实现温度显示;温度采集部分采用DS18B20温度传感器。首先由温度传感器DS18B20采集温度数据,经A/D转换后送入ST89C52单片机进行运算处理,并三位数码管显示当前温度,同时与键盘输入的设定温度值
31、(上限与下限)进行比较,由单片机控制是否发出控制信号,控制继电器(加热或降温)工作,从而实现恒温控制。在整个过程中,温度始终都能得以显示。设定温度过程中显示设定温度值,以便于操作:设定完毕后,改为显示当前测试温度值:本系统的电路设计方框图,它主要由五部分组成; 主控制部分主芯片采用单片机ST89C52(包括时钟和复位电路); 显示部分采用3为LED数码管以动态扫描方式实现温度显示; 温度采集部分采用DS18B20温度传感器; 按键输入部分主要功能是实现设定温度值的输入; 控制电路实现对继电器的控制;数码管显示温度控制模块DS18B20采集温度ST89C52 控制PL2303下载模块总体设计框图
32、第五章 硬件设计系统的硬件设计部分主要由以下几部分组成:(1)单片机最小系统:采用ST89C52 单片机;(2)温度采集模块:采用DS18B20 温度传感器;(3)温度显示模块:采用4 位一体共阳数码管显示; 18B20温度采集模块:DS18B20温度传感器是美国DALLAS半导体公司最新推出的一种改进型智能温度传感器,与传统的热敏电阻等测温元件相比,它能直接读出被测温度。这一部分主要完成对温度信号的采集和转换工作,由DS18B20数字温度传感器及其与单片机的接口部分组成。数字温度传感器DS18B20把采集到温度通过数据引脚传到单片机的P1.0口,单片机接受并储存。此部分只用到DS18B20和
33、单片机,硬件很简单。DS18B20通常可以采用两种方式供电,一种是寄生电源供电方式,另一种是采用外部电源供电方式,此时DS18B20的1引脚接地,2引脚作为信号线,3引脚接电源。本设计采用外部电源供电方式,外部电源供电方式是DS18B20最佳的工作方式,工作稳定可靠,抗干扰能力强,而且电路也比较简单,可以开发稳定可靠的多点温度监控系统。DS18B20单片机P1.0GNDVCCDS18B20与单片机的接口电路DS18B20的工作原理:DS18B20工作时序根据DS18B20的通讯协议,主机控制DS18B20完成温度转换必须经过三个步骤:1.每一次读写之前都必须要对DS18B20进行复位;2.复位
34、成功后发送一条ROM指令;3.最后发送RAM指令,这样才能对DS18B20进行预定的操作。复位要求主CPU将数据线下拉500微秒,然后释放,DS18B20收到信号后等待1560微秒左右后发出60240微秒的存在低脉冲,CPU主收到此信号表示复位成功。其工作时序包括初始化时序、写时序和读时序,初始化时序:总线上的所有传输过程都是以初始化开始的,主机响应应答脉冲。应答脉冲使主机知道,总线上有从机设备,且准备就绪。主机输出低电平,保持低电平时间至少480us,以产生复位脉冲。接着主机释放总线,4.7K上拉电阻将总线拉高,延时1560us,并进入接受模式,以产生低电平应答脉冲,若为低电平,再延时480
35、us。写时序: 写时序包括写0时序和写1时序。所有写时序至少需要60us,且在2次独立的写时序之间至少需要1us的恢复时间,都是以总线拉低开始。写1时序,主机输出低电平,延时2us,然后释放总线,延时60us。写0时序,主机输出低电平,延时60us,然后释放总线,延时2us。读时序: 总线器件仅在主机发出读时序是,才向主机传输数据,所以,在主机发出读数据命令后,必须马上产生读时序,以便从机能够传输数据。所有读时序至少需要60us,且在2次独立的读时序之间至少需要1us的恢复时间。每个读时序都由主机发起,至少拉低总线1us。主机在读时序期间必须释放总线,并且在时序起始后的15us之内采样总线状态
36、。主机输出低电平延时2us,然后主机转入输入模式延时12us,然后读取总线当前电平,然后延时50us。显示模块:数码管显示模块,利用四位一体共阳数码管,用来显示18B20采集来的温度,经传输后发送到数码管上进行显示,而数码管利用PNP型三极管驱动。显示电路采用四位一体共阳LED数码管,从P0口扫描。AT89C52单片机的P0口和P2口分别分配给显示模块数码管的段选和位选。DS18B20数字温度传感器及其与单片机的接口部分组成。数字温度传感器DS18B20把采集到的温度通过数据引脚传到单片机的P1.0口,单片机接受温度并存储。此部分只用到DS18B20和单片机,硬件很简单 常用的数码管显示器为8
37、段,每一段对应一个发光二极管,分为共阳和共阴两种。共阴极LED显示的发光二极管的阴极连接在一起,通常此公共阴极接地。当发光二极管的阳极为高电平时,发光二极管被点亮,相应的段被显示。同样,共阳极LED的发光二极管的样机连接在一起,通常此公共阳极接高电平,当某个发光二极管的阴极接低电平时,发光二极管被点亮,相应的段被显示。 LED显示器有静态显示和动态显示两种显示方式。本设计考虑实际应用情况,采用动态显示方式。选用了4位一体共阳数码管,这种显示器有12个引脚,其8个为段选的引脚。4个是位选的引脚。若只让一位选通,而其他位选处于关闭状态,同时在段选引脚上输出相应信号,就能在一个时刻内,显示出要求在选
38、通位显示的字符。同样,不同时刻选通不同的位选引脚,传送需要显示的字符的段码,只要选通频率快,就能利用LED显示的余晖和人眼睛的“视觉暂留”作用,造成“多位同时亮”的假象,达到同时显示的效果。温度控制模块:本设计是通过控制灯泡的亮灭来调节温度的,所以采用对继电器的控制来控制灯泡的亮灭,从而实现对温度的调节,继电器用PNP型三极管驱动。继电器是一种电子控制器件,它具有控制系统(又称输入回路)和被控制系统(又称输出回路),通常应用于自动控制电路中,它实际上是用较小的电流去控制较大电流的一种“自动开关”。故在电路中起着自动调节、安全保护、转换电路等作用。电磁继电器一般由 电磁铁,衔铁,弹簧片,触点 等
39、组成的,其工作电路由低压控制电路和高压工作电路两部分构成。只要在线圈两端加上一定的电压,线圈中就会流过一定的电流,从而产生电磁效应,衔铁就会在电磁力吸引的作用下克服返回弹簧的拉力吸向铁芯,从而带动衔铁的动触点与静触点(常开触点)吸合。当线圈断电后,电磁的吸力也随之消失,衔铁就会在弹簧的反作用力返回原来的位置,使动触点与原来的静触点(常闭触点)释放。这样吸合、释放,从而达到了在电路中的导通、切断的目的。对于继电器的“常开、常闭”触点,可以这样来区分:继电器线圈未通电时处于断开状态的静触点,称为“常开触点”;处于接通状态的静触点称为“常闭触点”。给继电器低电平,三极管导通,电磁铁触头放下来开始工作
40、,在继电器两端跨接电容,防止因继电器触点跳动产生很大的反向感应电动势击穿驱动电路,造成整个应用系统的损坏。发光二极管为工作显示。晶振控制电路:单片机工作的时间基准是由时钟电路提供的,单片机的内部时钟电路如图所示:电路中的器件选择可以通过计算和实验确定,也可以参考一些典型电路参数。电路中,电容器C101和C102对震荡频率有微调作用,帮组震荡器起振,通常的取值范围3010PF;石英晶体选择6MHZ或12MHZ都可以。其结果只是机器周期不同,从而影响计数器的计算初值。复位电路:单片机的RST引脚为主机提供一个外部复位信号输出端口。复位信号时高电平有效,高电平有效持续时间应为2个机器周期以上。复位电
41、路图第六章 软件设计一个应用系统要完成各项功能,首先必须有较完善的硬件作保证,同时还必须得到相应设计合理的软件的支持,尤其是微机应用高速发展的今天,许多由硬件完成的工作,都可通过软件编程而代替。甚至有些必须采用很复杂的硬件电路才能完成的工作,用软件编程有事会变得很简单,如数字滤波,信号处理等。因此充分利用其内部丰富的硬件资源和软件资源,采用与C52系列单片机相应的51汇编语言和结构化程序设计方法进行软件编程。MCS-51指令系统的指令长度较短,它在存储空间和执行空间方面具有较高的效率,编程的程序占用内存单元少,执行也非常的快捷,与本系统的应用要求很合适。而且MCS-51指令系统有丰富的位操作(
42、或称位处理)指令,可以形成一个相当完整的位操作指令子集,这是MCS-51指令系统主要的优点之一。对于要求反应灵敏与控制及时的工控,检测等实时控制系统以及要求体积小、系统小的许多“电脑化”产品,可以充分体现出汇编语言简明、整齐、执行时间短和易于使用的特点。本系统采用 AT89S52 作为核心处理器件,把经过DS18B20 现场实时采集到的温度数据,存入AT89S52 的内部数据存储器,并送四位一体 数码管显示,并与温度的设定值进行比较,然后由单片机输出控制信号去控制外部设备。当采集到的温度值与温度的设置值进行比较后,若发现当前温度值越限,则停止加热。当温度低于下限温度时,则继续加热。与硬件电路相
43、关联,本温度控制系统的软件设计主要分为以下几个部分:主程序,温度上下限值设定子程序、温度读取子程序、温度显示子程序、串口通信子程序、输出控制子程序等。其中温度上下限值设定子程序完成对温度范围值的设定及数据保存;温度读取子程序完成对温度传感器数据的读取,并通过温度显示子程序显示温度值;串口通信子程序将采集到的温度数据传送到PC 机,以实现远程监控;输出控制子程序根据采集到的温度数据完成对外部设备的控制 系统程序流程图系统程序主要包括主程序,读出温度子程序,复位应答子程序,写入子程序等。主程序的主要功能是负责温度的实时显示,读出并处理DS18B20测量的当前温度值,温度测量每1s进行一次。这样可以
44、再一秒之内测量一次呗测量温度,其程序流程图如图所示。通过调用读温度子程序把存入内存储中的整数部分与小数部分分开存放在不同的两个单元中,然后通过调用显示子陈谷显示出来。 开始终止读RAM9字节数据跳过ROM匹配命令DS18B20复位、应答子程序显示子程序(延时)写入子程序启动温度转换命令跳过ROM匹配命令DS18B20复位、应答子程序开始初始化调用读温度子程序数据变换程序显示子程序主程序流程图 读出温度子程序图6.2 DS18B20测温原理DS18B20的测温原理每一片DSl8B20在其ROM中都存有其唯一的48位序列号,在出厂前已写入片内ROM中。主机在进入操作程序前必须用读ROM(33H)命
45、令将该DSl8B20的序列号读出。程序可以先跳过ROM,启动所有DSl8B20进行温度变换,之后通过匹配ROM,再逐一地读回每个DSl8B20的温度数据。DS18B20的测温原理如图所示,低温度系数晶振的振荡频率受温度的影响很小,用于产生固定频率的脉冲信号送给减法计数器1,高温度系数晶振随温度变化其震荡频率明显改变,所产生的信号作为减法计数器2的脉冲输入,还隐含着计数门,当计数门打开时,DS18B20就对低温度系数振荡器产生的时钟脉冲后进行计数,进而完成温度测量。计数门的开启时间由高温度系数振荡器来决定,每次测量前,首先将48所对应的基数分别置入减法计数器1和温度寄存器中,减法计数器1和温度寄存器被预置在48所对应的一个基数值。减法计数器1对低温度系数晶振产生的脉冲信号进行减法计数,