基于单片机温度控制系统的设计.doc

上传人:文库蛋蛋多 文档编号:4144929 上传时间:2023-04-07 格式:DOC 页数:29 大小:378KB
返回 下载 相关 举报
基于单片机温度控制系统的设计.doc_第1页
第1页 / 共29页
基于单片机温度控制系统的设计.doc_第2页
第2页 / 共29页
基于单片机温度控制系统的设计.doc_第3页
第3页 / 共29页
基于单片机温度控制系统的设计.doc_第4页
第4页 / 共29页
基于单片机温度控制系统的设计.doc_第5页
第5页 / 共29页
点击查看更多>>
资源描述

《基于单片机温度控制系统的设计.doc》由会员分享,可在线阅读,更多相关《基于单片机温度控制系统的设计.doc(29页珍藏版)》请在三一办公上搜索。

1、基于单片机温度控制系统的设计 摘 要:随着社会的发展,温度的测量及控制变得越来越重要,温度是生产过程和科学实验中普遍而且重要的物理参数。本文利用单片机结合传感器技术而开发设计了这一温度监控系统。本文详细地讲述了基于单片机AT89S51和温度传感器DS18B20的温度控制系统的设计方案与软硬件实现方案。系统采用数字温度传感器DS18B20采集温度数据,数码管同步显示温度设定值和当前测量值,可通过按键以1的步进改变温度设定值,系统复位后默认设定温度值为45。当温度低于设定值时,单片机控制继电器启动加热器加热,同时点亮红色发光二极管,当温度高于设定值时,加热器停止加热,从而实现了测量和控制温度的目的

2、。系统稍微改装可以作为生物培养液温度监控系统,可以做热水器温度调节系统、实验室温度监控系统等等。系统具有控制方便、组态简单和灵活性大等优点,经过反复测试,系统能够稳定运行。关键词:单片机 温度控制 传感器 数码管Design of Temperature Control System Based on Single Chip MicrocontrollerUndergraduate:Supervisor: Abstract: With the development of the society,the control of temperature become more and more i

3、mportant. Temperature is a important physical parameters in production process and scientific experiments.The design and implementation of temperature control system based on single chipmicrocontroller AT89C51 and DS18B20 are introduced in this paper. Temperature data are collected by DS18B20, Tempe

4、rature settings and current measurements are displayed by digital tube; the temperature settings can be change By the key-presses with 1 step. The default temperature value is 45 . When the temperature is under the settings, the heater starts with the red-LED on,oppositely, the heater stopped heatin

5、g when the temperature is higher than the set value.The system is control convenient, simple, flexibility. After repeated testing, the system can operate stably.Key words: Single chip microcontroller, Temperature control,sensor,LED目录引言11.概述21.1课题研究的目的及意义21.2课题研究现状分析21.3技术指标22.总体设计32.1系统设计方案论证32.2系统结

6、构框图33.硬件设计33.1元器件的选择33.1.1单片机选择33.1.2传感器选择63.2单片机控制模块73.3温度数据采集模块83.4显示模块83.5温度设置模块103.6控制电路114.软件设计114.1主程序流程图114.2温度传感器DS18B20工作过程及时序124.2.1初始化时序124.2.2写时序134.2.3读时序145.系统调试155.1测试环境155.2测量方法155.3测试结果15结论16参考文献17致 谢18附录19附录1 系统总原理图19附录2 系统PCB图20附录3 源程序清单21引言在工业生产中,电流、电压、温度、压力、流量、流速和开关量都是常用的主要被控参数。

7、其中,温度控制也越来越重要。在工业生产的很多领域中,人们都需要对各类加热炉、热处理炉、反应炉和锅炉中的温度进行检测和控制。采用单片机对温度进行控制不仅具有控制方便、简单和灵活性大等优点,而且可以大幅度提高被控温度的技术指标,从而能够大大的提高产品的质量和数量。因此,单片机对温度的控制问题是一个工业生产中经常会遇到的控制问题。 单片机是一种集CPU、RAM、ROM、I/O接口和中断系统等部分于一体的器件,只需要外加电源和晶振就可实现对数字信息的处理和控制。因此,单片机广泛用于现代工业控制中。随着“信息时代”的到来,作为获取信息的手段传感器技术得到了显著的进步,其应用领域越来越广泛,对其要求越来越

8、高,需求越来越迫切。传感器技术已成为衡量一个国家科学技术发展水平的重要标志之一。因此,了解并掌握各类传感器的基本结构、工作原理及特性是非常重要的。由于传感器能将各种物理量、化学量和生物量等信号转变为电信号,使得人们可以利用计算机实现自动测量、信息处理和自动控制,但是它们都不同程度地存在温漂和非线性等影响因素。传感器主要用于测量和控制系统,它的性能好坏直接影响系统的性能。因此,不仅必须掌握各类传感器的结构、原理及其性能指标,还必须懂得传感器经过适当的接口电路调整才能满足信号的处理、显示和控制的要求,而且只有通过对传感器应用实例的原理和智能传感器实例的分析了解,才能将传感器和信息通信和信息处理结合

9、起来,适应传感器的生产、研制、开发和应用。另一方面,传感器的被测信号来自于各个应用领域,每个领域都为了改革生产力、提高工效和时效,各自都在开发研制适合应用的传感器,于是种类繁多的新型传感器及传感器系统不断涌现。温度传感器是其中重要的一类传感器。其发展速度之快,以及其应用之广,并且还有很大潜力。为了提高对传感器的认识和了解,尤其是对温度传感器的深入研究以及其用法与用途,基于实用、广泛和典型的原则而设计了本系统。本文利用单片机结合传感器技术而开发设计了这一温度监控系统。文中传感器理论与单片机实际应用有机结合,详细地讲述了基于单片机AT89S51和温度传感器DS18B20的温度控制系统的设计方案与软

10、硬件实现方案。系统包括数据采集模块,单片机控制模块,显示模块和温度设置模块,驱动电路五个部分。文中对每个部分功能、实现过程作了详细介绍。本设计应用性比较强,系统稍微改装可以作为生物培养液温度监控系统,可以做热水器温度调节系统、实验室温度监控系统等等。设计后的系统具有操作方便,控制灵活等优点。1.概述1.1课题研究的目的及意义随着社会的发展,温度的测量及控制变得越来越重要。温度是生产过程和科学实验中普遍而且重要的物理参数。在工业生产过程中为了高效地进行生产,必须对生产工艺过程中的主要参数,如温度,压力,流量,速度等进行有效的控制。其中温度的控制在生产过程中占有相当大的比例。准确测量和有效控制温度

11、是优质,高产,低耗和安全生产的重要条件。在工业的研制和生产中,为了保证生产过程的稳定运行并提高控制精度,采用微电子技术是重要的途径。它的作用主要是改善劳动条件,节约能源,防止生产和设备事故,以获得好的技术指标和经济效益。本课题采用51单片机来对温度进行控制,不仅具有控制方便、组态简单和灵活性大等优点,而且可以大幅度提高被控温度的技术指标。作为控制系统中的一个典型实验设计,单片机温度控制系统综合运用了微机原理、自动控制原理、传感器原理、模拟电子技术、数字控制技术、键盘显示技术等诸多方面的知识,是对所学知识的一次综合测试。1.2课题研究现状分析由于现代工艺越来越多的需要对实时温度进行监测和控制,而

12、且需要的精度越来越高。所以温度控制系统国内外许多有关人员的重视,得到了十分广泛的应用。温度控制系统发展迅速,而且成果显著。由于单片微处理器的性能日益提高、价格又不断降低,使其性能价格比的优势非常明显。因此,如何将单片微处理器应用到锅炉温度自动控制领域,为越来越多的生产厂家所重视。目前先进国家各种炉窑自动化水平较高,装备有完善的检测仪表和计算机控制系统。其计算机控制系统已采用集散系统和分布式系统的形式,大部分配有先进的控制算法,能够获得较好的工艺性能指标。单片微型计算机是随着超大规模集成电路的技术的发展而诞生的。由于它具有体积小,功能强,性价比高等优点,所以广泛应用于电子仪表,家用电器,节能装置

13、,军事装置,机器人,工业控制等诸多领域,使产品小型化,智能化,既提高了产品的功能和质量又降低了成本,简化了设计。1.3技术指标设计并制作一个基于单片机的温度控制系统,能够对炉温进行控制。炉温可以在一定范围内由人工设定,并能在炉温变化时实现自动控制。若测量值高于温度设定范围,由单片机发出控制信号,经过驱动电路使加热器停止工作。当温度低于设定值时,单片机发出一个控制信号,启动加热器。通过继电器的反复开启和关闭,使炉温保持在设定的温度范围内。温度设定范围为099,最小区分度为1,温度控制的误差1能够用数码管精确显示当前实际温度值按键控制:设置复位键、加一键、减一键越限报警2.总体设计2.1系统设计方

14、案论证实现温度控制的方法主要有以下几种。方案一:采用纯硬件的闭环控制系统。该系统的优点在于速度较快,但可靠性比较差控制精度比较低、灵活性小、线路复杂、调试、安装都不方便。且要实现题目所有的要求难度较大。方案二:FPGA/CPLD或采用带有IP内核的FPGA/CPLD方式。即用FPGA/CPLD完成采集,存储,显示及A/D等功能,由IP核实现人机交互及信号测量分析等功能。这种方案的优点在于系统结构紧凑,可以实现复杂的测量与与控制,操作方便;缺点是调试过程复杂,成本较高。方案三:单片机与高精度温度传感器结合的方式。即用单片机完成人机界面,系统控制,信号分析处理,由前端温度传感器完成信号的采集与转换

15、。这种方案克服了方案一、二的缺点,所以本课题任务是基于单片机和温度传感器实现对温度的控制。2.2系统结构框图系统主要包括数据采集模块,单片机控制模块,显示模块和温度设置模块,驱动电路五个部分。系统框图如图1所示。温度传感器单片机键盘控制复位电路显示电路报警电路控制电路图1 系统框图 其中数据采集模块负责实时采集温度数据,采集到的温度数据传输到单片机,由单片机处理后的数据送显示部分显示。设置模块可设置预定温度,当检测到的温度低于设定温度时,单片机控制驱动电路启动加热,并发出报警声;当检测温度高于设定温度时,停止加热。3.硬件设计3.1元器件的选择3.1.1单片机选择单片机的选择在整个系统设计中至

16、关重要,要满足大内存、高速率、通用性、价格便宜等要求,本课题选择AT89S51作为主控芯片。AT89S51是一个低功耗,高性能CMOS 8位单片机,片内含4k Bytes ISP(In-system programmable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,功能强大的微型计算机的AT89S51可为许多嵌入式控制应用系统提供高性价比的解决方案。AT89S51芯片具有以下特性:指令集和芯片引脚与Intel公司的8051

17、兼容;4KB片内在系统可编程Flash程序存储器;时钟频率为033MHz;128字节片内随机读写存储器(RAM);32个可编程输入/输出引脚;2个16位定时/计数器;6个中断源,2级优先级;全双工串行通信接口;监视定时器;2个数据指针。AT89S51单片机的40个引脚中有2个专用于主电源引脚,2个外接晶振的引脚,4个控制或与其它电源复用的引脚,以及32条输入输出I/O引脚。1.电源引脚Vcc和VssVcc(40脚):接+5V电源正端;Vss(20脚):接+5V电源正端。2.外接晶振引脚XTAL1和XTAL2XTAL1(19脚):接外部石英晶体的一端。在单片机内部,它是一个反相放大器的输入端,这

18、个放大器构成采用外部时钟时,对于HMOS单片机,该引脚接地;对于CHOMS单片机,该引脚作为外部振荡信号的输入端。XTAL2(18脚):接外部晶体的另一端。在单片机内部,接至片内振荡器的反相放大器的输出端。当采用外部时钟时,对于HMOS单片机,该引脚作为外部振荡信号的输入端。对于CHMOS芯片,该引脚悬空不接。3.控制信号或与其它电源复用引脚有RST/VPD、ALE/P、PSEN和EA/VPP等4种形式。RST/VPD(9脚):RST即为RESET,VPD为备用电源,所以该引脚为单片机的上电复位或掉电保护端。当单片机振荡器工作时,该引脚上出现持续两个机器周期的高电平,就可实现复位操作,使单片机

19、复位到初始状态。当VCC发生故障,降低到低电平规定值或掉电时,该引脚可接上备用电源VPD(+5V)为内部RAM供电,以保证RAM中的数据不丢失。ALE/ P (30脚):当访问外部存储器时,ALE(允许地址锁存信号)以每机器周期两次的信号输出,用于锁存出现在P0口的地址信号。PSEN(29脚):片外程序存储器读选通输出端,低电平有效。当从外部程序存储器读取指令或常数期间,每个机器周期PESN两次有效,以通过数据总线口读回指令或常数。当访问外部数据存储器期间,PESN信号将不出现。EA/Vpp(31脚):EA为访问外部程序储器控制信号,低电平有效。当EA端保持高电平时,单片机访问片内程序存储器4

20、KB(MS52子系列为8KB)。若超出该范围时,自动转去执行外部程序存储器的程序。当EA端保持低电平时,无论片内有无程序存储器,均只访问外部程序存储器。对于片内含有EPROM的单片机,在EPROM编程期间,该引脚用于接21V的编程电源Vpp。4.输入/输出(I/O)引脚P0口、P1口、P2口及P3口P0口(39脚22脚):这8条引脚有两种不同功能,分别适用于两种不同情况。第一种情况是89S51不带片外存储器,P0口可以作为通用I/O口使用,P0.0-P0.7用于传送CPU的输入/输出数据。第二种情况是89S51带片外存储器,P0.0-P0.7在CPU访问片外存储器时用于传送片外存储器的低8位地

21、址,然后传送CPU对片外存储器的读写数据。 P1口(1脚8脚):这8条引脚和P0口的8条引脚类似,P1.7为最高位,P1.0为最低位。当P1口作为通用I/O口使用时,P1.0-P1.7的功能和P0口的第一功能相同,也用于传送用户的输入和输出数据。 P2口(21脚28脚):这组引脚的第一功能和上述两组引脚的第一功能相同,既它可以作为通用I/O口使用。它的第二功能和P0口引脚的第二功能相配合,用于输出片外存储器的高8位地址。 P3口(10脚17脚):P3.0P3.7统称为P3口。它为双功能口,可以作为一般的准双向I/O接口,也可以将每1位用于第2功能,而且P3口的每一条引脚均可独立定义为第1功能的

22、输入输出或第2功能。P3口的第2功能见表1。表1 单片机P3口管脚第2功能引脚第2功能P3.0P3.1P3.2P3.3P3.4P3.5P3.6P3.7RXD(串行口输入端0)TXD(串行口输出端)INT0(部中断0请求输入端,低电平有效)INT1(中断1请求输入端,低电平有效)T0(时器/计数器0计数脉冲端)T1(时器/计数器1数脉冲端)WR(部数据存储器写选通信号输出端,低电平有效)RD(部数据存储器读选通信号输出端,低电平有效)AT89S51单片机引脚图如图2所示图2 单片机引脚图3.1.2传感器选择本系统采用DALLAS半导体公司生产的一线式数字温度传感器DS18B20采集温度数据,DS

23、18B20属于新一代适配微处理器的智能温度传感器,可广泛用于工业、民用、军事等领域的温度测量及控制仪器、测控系统和大型设备中。它具有体积小,接口方便,传输距离远等特点。 DS18B20的性能特点:采用单总线专用技术,既可通过串行口线,也可通过其它I/O口线与微机接口,无须经过其它变换电路,直接输出被测温度值(9位二进制数,含符号位),测温范围为-55-+125,测量分辨率为0.0625,内含64位经过激光修正的只读存储器ROM,适配各种单片机或系统机,用户可分别设定各路温度的上、下限,内含寄生电源。DS18B20内部结构主要由四部分组成:64位光刻ROM,温度传感器,非挥发的温度报警触发器TH

24、和TL,高速暂存器。DS18B20的管脚排列如图3所示。 图3DS18B20引脚分布图DS18B20高速暂存器共9个存存单元,如表2所示: 表2 DS18B20高速暂存器序号寄存器名称作 用序号寄存器名称作用0123温度低字节温度高字节TH/用户字节1HL/用户字节2以16位补码形式存放以16位补码形式存放存放温度上限存放温度下限4、5678保留字节1、2计数器余值计数器/CRC以12位转化为例说明温度高低字节存放形式及计算:12位转化后得到的12位数据,存储在18B20的两个高低两个8位的RAM中,二进制中的前面5位是符号位。如果测得的温度大于0,这5位为0,只要将测到的数值乘于0.0625

25、即可得到实际温度;如果温度小于0,这5位为1,测到的数值需要取反加1再乘于0.0625才能得到实际温度。表3 温度高低字节存放形式高8位 S S S S S 26 25 24 低8位 23 22 21 20 2-1 2-2 2-3 2-4 在硬件上,DS18B20与单片机的连接有两种方法,一种是Vcc接外部电源,GND接地,I/O与单片机的I/O线相连;另一种是用寄生电源供电,此时UDD、GND接地,I/O接单片机I/O。无论是内部寄生电源还是外部供电,I/O口线要接5K左右的上拉电阻。 DS18B20有六条控制命令,如表4所示:表4 DS18B20控制命令指 令约定代码操 作 说 明温度转换

26、读暂存器写暂存器复制暂存器重新调E2RAM读电源供电方式44HBEH4EH48HB8HB4H启动DS18B20进行温度转换读暂存器9个字节内容将数据写入暂存器的TH、TL字节把暂存器的TH、TL字节写到E2RAM中把E2RAM中的TH、TL字节写到暂存器TH、TL字节启动DS18B20发送电源供电方式的信号给主CPUCPU对DS18B20的访问流程是:先对DS18B20初始化,再进行ROM操作命令,最后才能对存储器操作,数据操作。DS18B20每一步操作都要遵循严格的工作时序和通信协议。如主机控制DS18B20完成温度转换这一过程,根据DS18B20的通讯协议,须经三个步骤:每一次读写之前都要

27、对DS18B20进行复位,复位成功后发送一条ROM指令,最后发送RAM指令,这样才能对DS18B20进行预定的操作。3.2单片机控制模块控制模块是整个设计方案的核心,它控制了温度的采集、处理与显示、温度值的设定与温度越限时控制电路的启动。本控制模块由单片机AT89S51及其外围电路组成,电路如图4所示。图4 单片机控制模块电路该电路采用按键加上电复位,S2为复位按键,复位按键按下后,复位端通过51的小电阻与电源接通,迅速放电,使RST引脚为高电平,复位按键弹起后,电源通过8.2K的电阻对10KF的电容C5重新充电,RST引脚端出现复位正脉冲.AT89S51内部有一个高增益反相放大器,用于构成振

28、荡器,但要形成时钟脉冲,外部还需附加电路,本设计采用内部时钟方式,利用芯片内部的振荡器,然后在引脚XTAL1和XTAL2两端跨接晶体振荡器,就构成了稳定的自激振荡器,发出的脉冲直接送入内部时钟电路,C6和C7的值通常选择为30pF左右,晶振Y1选择12MHz.为了减小寄生电容,更好地保证振荡器稳定、可靠地工作,振荡器电容应尽可能安装得与单片机引脚XTAL1和XTAL2靠近。单片机的31脚(EA)接+5V电源,表示允许使用片内ROM。3.3温度数据采集模块温度由DALLAS 公司生产的一线式数字温度传感器DS18B20 采集。DS18B20 测温范围为-55C+125C,测温分辨率可达0.062

29、5C,被测温度用符号扩展的16 位补码形式串行输出。CPU 只需一根端口线就能与诸多DS18B20 通信,占用微处理器的端口较少,可节省大量的引线和逻辑电路。本设计采用三引脚PR-35封装的DS18B20,其引脚图见图3。Vcc接外部+5V电源,GND接地,I/O与单片机的P3.4(T0)引脚相连。3.4显示模块显示部分采用LED静态显示方式,共阴极的数码管的公共端COM连接在一起接地,每位的段选线与74HC164的8位并口相连,只要在该位的段选线上保持段选码电平,该位就能保持相应的显示字符,考虑到节约单片机的I/O资源,因而采用串行接口方式,外接8位移位寄存器74HC164构成显示电路,电路

30、如图5所示。图5 显示模块电路 74HC164的逻辑功能介绍如下:当清除端(CLEAR)为低电平时,输出端(QAQH)均为低电平。 串行数据输入端(A,B)可控制数据。当 A、B 任意一个为低电平,则禁 止新数据输入,在时钟端(CLOCK)脉冲上升沿作用下 Q0 为低电平。当 A、B 有一个为高电平,则另一个就允许输入数据,并在 CLOCK 上升沿作用下决定 Q0 的状态。真值表如表5所示。表5 74HC164真值表InputsOutputsClearClockA BQA QB .QHLHHHHXLX XX XH HL XX LL L .LQA0 QB0.QH0H QANQGNL QANQGN

31、L QANQGNH高电平 L低电平 X任意电平 低到高电平跳变 QA0,QB0,QH0 规定的稳态条件建立前的电平 QAn,QGn 时钟最近的前的电平。图6 74HC164时序图在单片机的TXD(P3.1)运行时钟信号,将显示数据由RXD(P3.0)口串行输出至74HC164的A、B端。3.5温度设置模块温度设置部分采用独立式按键,S4为温度值加1按键,与单片机的P0.0口相连;S3为温度值减1按键,与单片机的P0.1口相连。当没有键按下时,单片机与之相连的输入口线为高电平,当任何一个按键按下时,与之相连的 输入口线被置为低电平,产生外中断条件,在 中断服务程序中读取键盘值。温度设置电路如图7

32、所示。 图7 温度设置模块电路3.6控制电路控制电路与单片机的P0.2口相连,由于单片机输出控制信号非常微弱,需要用三极管来驱动外围电路,三极管选用NPN型的 9014,当检测温度低于设定温度时,在单片机的P0.2口输出高电平控制信号,使三极管9014导通,使继电器两控制端产生压差,从而使继电器吸合,常开触点接通,控制外部电路对锅炉进行加热;当检测温度高于设定温度时,单片机输出低电平信号,三极管截止,继电器不吸合,外部电路停止加热。控制电路电路图如图8所示。图8 控制电路4.软件设计系统软件要实现的功能如下:利用4只共阴数码管,LED1显示检测温度十位,LED2显示检测温度个位,LED3显示设

33、定温度十位,LED4显示设定温度个位,显示分辨率为1。单片机复位后默认设定温度为40,当每按下一次设定温度上升按钮ADD时,设定温度增加1,最高为120,当每按下一次设定温度下降按钮DEC时,设定温度减少1,最低设定为0。当设定温度大于检测温度时加热输出,当设定温度小于检测温度时加热停止。4.1主程序流程图温度控制程序的设计应考虑如下:1)键盘扫描、键码识别和温度显示;2)炉温采样;3)数据处理;4)越限报警和处理。系统流程图如图9所示。减加小于与设定温度比较开始初始化停止加热检测温度显 示判断按键设定值加设定值减显 示大于启动加热图9 系统流程图4.2温度传感器DS18B20工作过程及时序D

34、S18B20工作过程中的协议如下:(1)初始化(2)ROM操作命令(3)存储器操作命令(4)处理数据4.2.1初始化时序时序如图10所示。主机总线发送复位脉冲(最短为480S,最高时间为960S的低电平信号),接着再释放总线(置总线为高电平)并进入接收状态。DS18B20在检测到总线的上升沿后等待1560S发出器件存在脉冲(低电平持续60240S)。初始化程序如下所示:INIT:SETBP3.4 NOP CLRP3.4 MOVR0,#0FFH DJNZR0,$ SETBP3.4 MOVR0,#100LIU:JNBP3.4,IT3DJNZR0,LIUCLR38HSJMPIT7IT3: SETB3

35、8HIT7: MOV R0,#240DJNZR0,$SETBP3.4RET 单片机主动释放60-240S15-60S480-960S图10 初始化时序图此初始化程序功能为:检测DS18B20是否存在,如存在,将位地址38H置1;如不存在,将位地址38H清零。4.2.2写时序单片机写DS18B20的时序如图11所示,当主机总线从高拉至低电平时就产生写时间隙,DS18B20在检测到下降沿后15S时开始采样总线上的电平,所以15S之内应将所需写的位送到总线上,DS18B20再1560S间对总线采样,每写一位总时间必须在60120S之间完成。若低电平写入的位是0,高电平写入的位是1,连续写时位间的间隙

36、应大于1S。程序如下所示:WRITER:MOVR0,#8WR1:CLRP3.4MOVR4,#6DJNZR4,$RRCAMOVP3.4,CMOVR4,#40DJNZR4,$SETBP3.4NOPDJNZR0,WR1SETBP3.4RET写060-120S写1,DS18B20在检测到下降沿15S后采样,采样时间为15-60S1560-120SDS18B20检测到下降沿15S后采样15S图11 单片机写DS18B20时序图4.2.3读时序单片机读DS18B20的时序如图12所示,单片机主动产生一个下降沿的启动信号,并维持低电平大于1S后释放总线,15S后DS18B20占主动权,DS18B20会将数据

37、按位放在总线上(低位在先,当读取两个字节的温度值时,低字节在先),这时单片机可读取信号,读取一位的时间应在60S内完成。当需要读取下一位时再产生下降沿启动信号。T60S单片机采样第二位启动脉冲T60S单片机采样第一位启动脉冲图12 单片机读DS18B20的时序图READ:SETBRS0MOVR4,#2MOVR0,#36HRE1:MOVR5,#8RE2:CLRCSETBP3.4NOPNOPCLRP3.4NOPNOPNOPSETBP3.4MOVR6,#7DJNZR6,$MOVC,P3.4MOVR6,#20DJNZR6,$RRCADJNZR5,RE2MOVR0,ADECR0DJNZR4,RE1CLR

38、RS0NOPRET此程序功能为:读取DS18B20 A/D转换后的温度值,转换后的二进制存入36H、35H单元,默认为12位转换,低8位存入36H单元,高8位存入35H单元(35H单元的高5位均为符号位,所以判断符号只需判断低12位数据的最高位即可)。1表示为零度以下,0表示零度以上,实际有效位为11位。5.系统调试5.1测试环境 环境温度为:23测试仪器: 标准温度计、加热工具(此处选用烧热的电烙铁)、制冷工具(此处选用冰块)5.2测量方法1.系统温度测量的准确度。我们将标准温度计和温度控制系统的探头放在一起,选定若干不同温度点,记录下标准温度计的温度和温度控制系统测量显示的温度进行比较。2

39、.设定开启加热温度,改变环境温度,验证检测到的温度高于设定温度时是否停止加热,检测到的温度小于设定温度时是否启动加热。5.3测试结果1.本系统测量显示温度与标准温度计测量温度对比如表6所示。表6 温度测量准确度标准温度计测量温度()本系统测量显示温度()232530404560232530404560根据温度测量数据的对比可知,本系统能够准确地测量并显示环境温度。2.设定不同的开启加热温度,改变环境温度,系统工作情况如表7所示。表7 系统加热测量设定温度()环境温度()发光二极管(亮/灭)15151525252525404040401015302024253030394050亮灭灭亮亮灭亮亮亮

40、灭灭发光二极管亮表示启动加热,灭表示停止加热。根据表7可知,系统可以自由设定不同的加热温度,温度设定当环境温度低于设定温度时系统启动加热,当环境温度高于或等于设定温度时,系统停止加热。经过反复测试,系统温度设定范围为0120,最小区分度为1,温度控制的误差1;能够测量并用数码管显示当前实际温度值;通过复位键可以使系统设定温度还原默认值,通过加一键和减一键可以以1步进设置预定温度;环境温度低于设定温度时,启动加热,红色发光二极管点亮,环境温度高于或等于设定温度时,停止加热,红色发光二极管灭。达到了课题要求的技术指标。结论本文详细介绍了基于单片机AT89S51的温度控制系统的设计方案与软硬件实现。

41、系统包括数据采集模块,单片机控制模块,显示模块和温度设置模块,驱动电路五个部分。文中对每个部分功能、实现过程作了详细介绍。完成了课题既定的任务,达到了预期的目标。系统具有如下特点:.采用智能温度传感器DS18B20采集温度数据,简化了硬件电路设计,温度采集数据更加精准;.AT89S51单片机的采用,有利于功能扩展;.电路设计充分考虑了系统可靠性和安全性。本系统没有增加外部存储器,设定温度不能保存,断电复位后必须重新设置温度;采用静态显示方式,从而使用了较多的驱动芯片,增加了硬件电路的复杂性;只使用两位显示,即显示温度的十位、个位,没有充分发挥DS18B20的特性。本课题软件和硬件相结合,有相当

42、大的难度,同时也有很大的实用性。在做毕业设计的过程中,我的理论和实践水平都有了较大的提高。在本课题的设计中,我熟练掌握了单片机硬件设计和接口技术,同时对温度传感器的原理及应用有了一定的了解,掌握了各种控制电路及其相关元器件的使用。通过这次毕业设计,我不仅学会如何将所学专业知识运用到实际生活中,还学会如何克服未知的困难,解决难题的方法。参考文献1 童诗白,华成英.模拟电子技术基础M. 北京:高等教育出版社,20062 张齐,杜群贵.单片机应用系统设计技术M.北京:电子工业出版社,20073 中国机械工业教育协会 组编.单片机原理与应用.机械工业出版社.20014 杨金岩等.8051单片机数据传输

43、接口扩展技术与应用实例M北京:人民邮电出版社,20055 求是科技单片机通信技术与工程实践M北京:人民邮电出版社,20056 7 杨金岩等.8051单片机数据传输接口扩展技术与应用实例M北京:人民邮电出版社,20058 郭永贞主编 数字电子技术M 西安电子科技大学出版社 20009 李广弟 单片机基础M,北京:北京航空航天大学出版社,200110 张洪润 电子线路与电子技术M.清华大学出版社M,200511 张齐,杜群贵 单片机应用系统设计技术M.电子工业出版社,200412 13 致 谢四年的本科学习生涯即将结束,在本人做毕业设计中,得到了我的导师的悉心指导和无私帮助。他严谨的治学态度和谦和的为人给我留下了深刻的印象。虽然老师公务繁忙,教学任务重,但在我做

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号