刀刀网
您的当前位置:首页温度控制系统的设计

温度控制系统的设计

来源:刀刀网
山西农业大学信息学院毕业设计说明书

温度控制系统的设计

1 引言

市场迅猛的增长使电热水壶这个本无太多看点的小家电产品开始变的很引人注目。目前国内比较智能热水壶通过温度传感器测温,将温度信号传送到单片机中进行处理,单片机根据温度传感器送来的温度信号,做出相应命令,控制热水壶的开关、功率等,但缺乏水温显示以及报警系统。

温度控制系统广泛应用于社会生活的各个领域 ,采用单片机对温度进行控制不仅具有控制方便、简单和灵活性大等优点,而且可以大幅度提高被控温度的技术指标,从而能够大大的提高产品的质量和数量。因此,单片机对温度的控制问题是一个工业生产中经常会遇到的控制问题。

单片机是一种集CPU、RAM、ROM、I/O接口和中断系统等部分于一体的器件,只需要外加电源和晶振就可实现对数字信息的处理和控制。因此,单片机广泛用于现代工业控制中。

随着社会的发展,作为获取信息的手段,传感器技术得到了显著的进步,其应用领域越来越广泛,对其要求越来越高,需求越来越迫切。传感器技术已成为衡量一个国家科学技术发展水平的重要标志之一。因此,了解并掌握各类传感器的基本结构、工作原理及特性是非常重要的。

由于传感器能将各种信号转变为电信号,使得人们可以利用计算机实现自动测量、信息处理和自动控制,但是它们都不同程度地存在一些影响因素。传感器主要用于测量和控制系统,它的性能好坏直接影响系统的性能。因此,不仅必须掌握各类传感器的结构、原理及其性能指标,还必须懂得传感器经过适当的接口电路调整才能满足信号的处理、显示和控制的要求,而且只有通过对传感器应用实例的原理和智能传感器实例的分析了解,才能将传感器和信息通信和信息处理结合起来,适应传感器的生产、研制、开发和应用。另一方面,传感器的被测信号来自于各个应用领域,每个领域都为了改革生产力、提高工效和时效,各自都在开发研制适合应用的传感器,于是种类繁多的新型传感器及传感器系统不断涌现。温度传感器是其中重要的一类传感器。其发展速度之快,以及其应用之广,并且还有很大潜力。

- 1 -

胡晓敏:温度控制系统的设计

为了提高对传感器的认识和了解,尤其是对温度传感器的深入研究以及其用法与用途,基于实用、广泛和典型的原则而设计了本系统。本文研究一个以ATS51系列单片机为控制芯片,对热水壶工作进行控制的系统。通过电加热电路加热水并用传感器DS18B20实时采样水温,将采样信号进行模数转换后送入单片机系统,经过单片机系统处理后,控制实现水温的LED显示以及超过水温的报警提示。

2.概述

2.1研究的目的及意义

随着社会的发展,温度的测量及控制变得越来越重要。温度是生产过程和科学实验中普遍而且重要的物理参数。在工业生产过程中为了高效地进行生产,必须对生产工艺过程中的主要参数,如温度,压力,流量,速度等进行有效的控制。其中温度的控制在生产过程中占有很大的比例。准确测量和有效控制温度是优质,高产,低耗和安全生产的重要条件。在工业的研制和生产中,为了保证生产过程的稳定运行并提高控制精度,采用微电子技术是重要的途径。它的作用主要是改善劳动条件,节约能源,防止生产和设备事故,以获得好的技术指标和经济效益。

本文采用51单片机来对温度进行控制,不仅具有控制方便、组态简单和灵活性大等优点,而且可以大幅度提高被控温度的技术指标。

作为控制系统中的一个典型实验设计,单片机温度控制系统综合运用了微机原理、自动控制原理、传感器原理、模拟电子技术、数字控制技术、键盘显示技术等诸多方面的知识,是对所学知识的一次综合测试。

2.2研究现状分析

由于现代工艺越来越多的需要对实时温度进行监测和控制,而且需要的精度越来越高。所以温度控制系统国内外许多有关人员的重视,得到了十分广泛的应用。温度控制系统发展迅速,而且成果显著。由于单片微处理器的性能日益提高、价格又不断降低,使其性能价格比的优势非常明显。因此,如何将单片微处理器应用到锅炉温度自动控制领域,为越来越多的生产厂家所重视。

- 2 -

山西农业大学信息学院毕业设计说明书

2.3技术指标

设计并制作一个基于单片机的温度控制系统,能够对炉温进行控制。炉温可以在一定范围内由人工设定,并能在炉温变化时实现自动控制。若测量值高于温度设定范围,由单片机发出控制信号,经过驱动电路使加热器停止工作。当温度低于设定值时,单片机发出一个控制信号,启动加热器。通过继电器的反复开启和关闭,使炉温保持在设定的温度范围内。

①温度设定范围为0~99℃,最小区分度为1℃,温度控制的误差≤1℃ ②能够用数码管精确显示当前实际温度值 ③按键控制:设置复位键、加一键、减一键 ④越限报警

3.总体设计

3.1系统设计方案

实现温度控制的方法主要有采用纯硬件的闭环控制系统、采用FPGA/CPLD或采用带有IP内核的FPGA/CPLD方式和单片机与高精度温度传感器结合的方式这三种。本次设计采用的是第三种单片机与高精度温度传感器结合的方式,即用单片机完成人机界面,系统控制,信号分析处理,由前端温度传感器完成信号的采集与转换。这种方案克服了方案和的缺点,所以本次任务是基于单片机和温度传感器实现对温度的控制。

3.2系统结构框图

系统主要包括数据采集模块,单片机控制模块,显示模块和温度设置模块,驱动电路五个部分。系统框图如图1所示。

- 3 -

胡晓敏:温度控制系统的设计

控制电路 DS18B20 温度芯片 键盘控制 ATS51 数据显示 报警电路 复位电路 图1 工作原理图

其中数据采集模块负责实时采集温度数据,采集到的温度数据传输到单片机,由单片机处理后的数据送显示部分显示。设置模块可设置预定温度,当检测到的温度低于设定温度时,单片机控制驱动电路启动加热,并发出报警声;当检测温度高于设定温度时,停止加热。

4.硬件设计

4.1元器件的选择

4.1.1单片机选择

单片机的选择在整个系统设计中至关重要,要满足大内存、高速率、通用性、价格便宜等要求,本课题选择ATS51作为主控芯片。

ATS51是一个低功耗,高性能CMOS 8位单片机,片内含4k Bytes ISP(In-system programmable)的可反复擦写1000次的Flash只读程序存储器,器件兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位处理器和ISP Flash存储单元,

- 4 -

山西农业大学信息学院毕业设计说明书

功能强大的微型计算机的ATS51可为许多嵌入式控制应用系统提供高性价比的解决方案。ATS51芯片具有以下特性:

①指令集和芯片引脚与Intel公司的8051兼容; ②4KB片内在系统可编程Flash程序存储器; ③时钟频率为0~33MHz;

④128字节片内随机读写存储器(RAM); ⑤32个可编程输入/输出引脚; ⑥2个16位定时/计数器; ⑦6个中断源,2级优先级; ⑧全双工串行通信接口; ⑨监视定时器; ⑩2个数据指针。 ATS51各引脚功能介绍:

T2T2EX12345671011121314151617181920P10P11P12P13P14P15P16P17RESETRXDTXDINT0INT1T0T1WRRDX2X1VSSVCCP00P01P02P03P04P05P06P07EA/VPALE/PPSENP27P26P25P24P23P22P21P204039383736353433323130292827262524232221AD0AD1AD2AD3AD4AD5AD6AD7RXDTXDP3.2P3.3P3.4P3.5P3.6P3.7ATS51A15A14A13A12A11A10A9A8 图2 单片机引脚图

VCC:

ATS51 电源正端输入,接+5V。 VSS:

电源地端。 XTAL1:

单芯片系统时钟的反相放大器输入端。

- 5 -

胡晓敏:温度控制系统的设计

XTAL2:

系统时钟的反相放大器输出端,一般在设计上只要在 XTAL1 和 XTAL2 上接上一只石英振荡晶体系统就可以动作了,此外可以在两引脚与地之间加入一 20PF 的小电容,可以使系统更稳定,避免噪声干扰而死机。 RESET:

ATS51的重置引脚,高电平动作,当要对晶片重置时,只要对此引脚电平提升至高电平并保持两个机器周期以上的时间,ATS51便能完成系统重置的各项动作,使得内部特殊功能寄存器之内容均被设成已知状态,并且至地址0000H处开始读入程序代码而执行程序。 EA/Vpp:

\"EA\"为英文\"External Access\"的缩写,表示存取外部程序代码之意,低电平动作,也就是说当此引脚接低电平后,系统会取用外部的程序代码(存于外部EPROM中)来执行程序。因此在8031及8032中,EA引脚必须接低电平,因为其内部无程序存储器空间。如果是使用 8751 内部程序空间时,此引脚要接成高电平。此外,在将程序代码烧录至8751内部EPROM时,可以利用此引脚来输入21V的烧录高压(Vpp)。 ALE/PROG:

ALE是英文\"Address Latch Enable\"的缩写,表示地址锁存器启用信号。ATS51可以利用这支引脚来触发外部的8位锁存器(如74LS373),将端口0的地址总线(A0~A7)锁进锁存器中,因为ATS51是以多工的方式送出地址及数据。平时在程序执行时ALE引脚的输出频率约是系统工作频率的1/6,因此可以用来驱动其他周边晶片的时基输入。此外在烧录8751程序代码时,此引脚会被当成程序规划的特殊功能来使用。 PSEN:

此为\"Program Store Enable\"的缩写,其意为程序储存启用,当8051被设成为读取外部程序代码工作模式时(EA=0),会送出此信号以便取得程序代码,通常这支脚是接到EPROM的OE脚。ATS51可以利用PSEN及RD引脚分别启用存在外部的RAM与EPROM,使得数据存储器与程序存储器可以合并在一起而共用K的定址范围。 PORT0(P0.0~P0.7):

端口0是一个8位宽的开路汲极(Open Drain)双向输出入端口,共有8个位,P0.0表示位0,P0.1表示位1,依此类推。其他三个I/O端口(P1、P2、P3)则不具有此电

- 6 -

山西农业大学信息学院毕业设计说明书

路组态,而是内部有一提升电路,P0在当做I/O用时可以推动8个LS的TTL负载。如果当EA引脚为低电平时(即取用外部程序代码或数据存储器),P0就以多工方式提供地址总线(A0~A7)及数据总线(D0~D7)。设计者必须外加一锁存器将端口0送出的地址栓锁住成为A0~A7,再配合端口2所送出的A8~A15合成一完整的16位地址总线,而定址到K的外部存储器空间。 PORT2(P2.0~P2.7):

端口2是具有内部提升电路的双向I/O端口,每一个引脚可以推动4个LS的TTL负载,若将端口2的输出设为高电平时,此端口便能当成输入端口来使用。P2除了当做一般I/O端口使用外,若是在ATS51扩充外接程序存储器或数据存储器时,也提供地址总线的高字节A8~A15,这个时候P2便不能当做I/O来使用了。 PORT1(P1.0~P1.7):

端口1也是具有内部提升电路的双向I/O端口,其输出缓冲器可以推动4个LS TTL负载,同样地若将端口1的输出设为高电平,便是由此端口来输入数据。如果是使用8052或是8032的话,P1.0又当做定时器2的外部脉冲输入脚,而P1.1可以有T2EX功能,可以做外部中断输入的触发脚位。 PORT3(P3.0~P3.7):

端口3也具有内部提升电路的双向I/O端口,其输出缓冲器可以推动4个TTL负载,同时还多工具有其他的额外特殊功能,包括串行通信、外部中断控制、计时计数控制及外部数据存储器内容的读取或写入控制等功能。 其引脚分配如下:

P3.0:RXD,串行通信输入。 P3.1:TXD,串行通信输出。 P3.2:INT0,外部中断0输入。 P3.3:INT1,外部中断1输入。 P3.4:T0,计时计数器0输入。 P3.5:T1,计时计数器1输入。

P3.6:WR:外部数据存储器的写入信号。 P3.7:RD,外部数据存储器的读取信号。

- 7 -

胡晓敏:温度控制系统的设计

4.1.2传感器选择

本系统采用一线式数字温度传感器DS18B20采集温度数据,DS18B20属于新一代适配微处理器的智能温度传感器,可广泛用于工业、民用、军事等领域的温度测量及控制仪器、测控系统和大型设备中。它具有体积小,接口方便,传输距离远等特点。 DS18B20的性能特点:

①采用单总线专用技术,既可通过串行口线,也可通过其它I/O口线与微机接口,无须经过其它变换电路,直接输出被测温度值(9位二进制数,含符号位);

②测温范围为-55℃-+125℃,测量分辨率为0.0625℃; ③在使用中不需要任何外围元件。

④持多点组网功能。多个DS18B20可以并联在唯一的单线上,实现多点测温 ⑤供电方式灵活。DS18B20可以通过内部寄生电路从数据线上获取电源,因此,当数据线上的时序满足一定的要求时,可以不接外部电源,从而使系统结构更简单,可靠性更高。

⑥测量参数可配置。DS18B20的测量分辨率可通过程序设定为9-12位。 ⑦负压特性。电源极性接反时,温度计不会因发热而烧毁,但不能正常工作。 ⑧掉电保护功能。DS18B20内部含有EEPROM,在系统掉电以后,它仍可保存分辨率及报警温度的设定值。

DS18B20内部结构主要由四部分组成:位光刻ROM,温度传感器,非挥发的温度报警触发器TH和TL,高速暂存器。DS18B20的管脚排列如图3所示。

图3 DS18B20引脚分布图

DS18B20高速暂存器共9个存存单元,如表1所示:

- 8 -

山西农业大学信息学院毕业设计说明书

表1 DS18B20高速暂存器

序号 0 1 2 3

温度低字节 温度高字节

以16位补码形式存放

4、5 保留字节1、2 6 7 8

计数器余值 计数器/℃ CRC

寄存器名称

作 用

序号

寄存器名称

作 用

TH/用户字节以16位补码形式存1

HL/用户字节存放温度上限 2

以12位转化为例说明温度高低字节存放形式及计算:12位转化后得到的12位数据,存储在18B20的两个高低两个8位的RAM中,二进制中的前面5位是符号位。如果测得的温度大于0,这5位为0,只要将测到的数值乘于0.0625即可得到实际温度;如果温度小于0,这5位为1,测到的数值需要取反加1再乘于0.0625才能得到实际温度。

表2 温度高低字节存放形式

高8位 S 低8位 23

在硬件上,DS18B20与单片机的连接有两种方法,一种是Vcc接外部电源,GND接地,I/O与单片机的I/O线相连;另一种是用寄生电源供电,此时UDD、GND接地,I/O接单片机I/O。无论是内部寄生电源还是外部供电,I/O口线要接5KΩ左右的上拉电阻。

DS18B20有六条控制命令,如表3所示:

表3 DS18B20控制命令

指 令

约定代码

温度转换 读暂存器

44H BEH

启动DS18B20进行温度转换 读暂存器9个字节内容

操 作 说 明

S 22

S 21

S 20

S 2-1

26 2-2

25 2-3

24 2-4

存放温度下限

- 9 -

胡晓敏:温度控制系统的设计

写暂存器 复制暂存器 重新调E2RAM 读电源供电方式

4EH 48H B8H B4H

将数据写入暂存器的TH、TL字节 把暂存器的TH、TL字节写到E2RAM中 把E2RAM中的TH、TL字节写到暂存器TH、TL字节

启动DS18B20发送电源供电方式的信号给主CPU

CPU对DS18B20的访问流程是:先对DS18B20初始化,再进行ROM操作命令,最后才能对存储器操作,数据操作。DS18B20每一步操作都要遵循严格的工作时序和通信协议。如主机控制DS18B20完成温度转换这一过程,根据DS18B20的通讯协议,须经三个步骤:每一次读写之前都要对DS18B20进行复位,复位成功后发送一条ROM指令,最后发送RAM指令,这样才能对DS18B20进行预定的操作。

4.2电源转换电路

电源电路图

T1为电为源变压器,它将交流电网电压220V变成整流电路要求的交流电压,电压经过转换就可以将原来交流220V的电压转换成直流电压为+5V,即可以得到报警电路和温度检测电路所需要的电压值。

4.3单片机控制电路

- 10 -

山西农业大学信息学院毕业设计说明书

控制模块是整个设计方案的核心,它控制了温度的采集、处理与显示、温度值的设定与温度越限时控制电路的启动。本控制模块由单片机ATS51及其外围电路组成,电路如图4所示。

SW-PBS2+5VC510uF+5VU19R388.2K101114RSTVCCEAP3.0/RXDP3.1/TXDP0.0P3.4/T0P0.1P0.2XTAL2XTAL1GNDATS514031R375139383P0.72C630PC730PY112M181920

图4 单片机控制模块电路

该电路采用按键加上电复位,S2为复位按键,复位按键按下后,复位端通过51Ω的小电阻与电源接通,迅速放电,使RST引脚为高电平,复位按键弹起后,电源通过8.2KΩ的电阻对10KμF的电容C5重新充电,RST引脚端出现复位正脉冲.

ATS51内部有一个高增益反相放大器,用于构成振荡器,但要形成时钟脉冲,外部还需附加电路,本设计采用内部时钟方式,利用芯片内部的振荡器,然后在引脚XTAL1和XTAL2两端跨接晶体振荡器,就构成了稳定的自激振荡器,发出的脉冲直接送入内部时钟电路,C6和C7的值通常选择为30pF左右,晶振Y1选择12MHz.为了减小寄生电容,更好地保证振荡器稳定、可靠地工作,振荡器电容应尽可能安装得与单片机引脚XTAL1和XTAL2靠近。

单片机的31脚(EA)接+5V电源,表示允许使用片内ROM。

4.4温度数据采集模块

温度由一线式数字温度传感器DS18B20 采集。DS18B20 测温范围为-55°C~+125°C,测温分辨率可达0.0625°C,被测温度用符号扩展的16 位补码形式串行输出。CPU 只需一根端口线就能与诸多DS18B20 通信,占用微处理器的端口较少,可节省大量的引线和逻辑电路。

- 11 -

胡晓敏:温度控制系统的设计

本设计采用三引脚PR-35封装的DS18B20,其引脚图见图3。Vcc接外部+5V电源,GND接地,I/O与单片机的P3.4(T0)引脚相连。

4.5显示模块

显示部分采用LED静态显示方式,共阴极的数码管的公共端COM连接在一起接地,每位的段选线与74HC1的8位并口相连,只要在该位的段选线上保持段选码电平,该位就能保持相应的显示字符,考虑到节约单片机的I/O资源,因而采用串行接口方式,外接8位移位寄存器74HC1构成显示电路,电路如图5所示。

aabcfbgdeecddpfgpdaabcfbgdeecddpfgpdaabcfbgdeecddpfgpd333aabcfbgdeecddpfgpdDPYDPYDPYDPY3LED172119072119055LED27211905LED37211905LED4R1R2R3R4R5R6R7R33220*8R8R9R10R11R12R13R14R34220*8R15R16R17R18R19R20R21R35220*8R22R23R24R25R26R27R28R36220*8345610111213345601111213345610111213QAAQBBQCCLKCLRQDQEQFGNDQGVCCQHQAAQBBQCCLKCLRQDQEQFGNDQVCCGQHQAAQBBQCCLKCLRQDQEQFGNDQVCCGQH174174174+5V+5V+5V17412121212QAAQBBQCCLKCLRQDQEQFGNDQVCCGQHC174HC1C274HC1C374HC1345610111213C474HC1+5VP3.0P3.1R292K+5V 图5 显示模块电路

74HC1的逻辑功能介绍如下:

当清除端(CLEAR)为低电平时,输出端(QA-QH)均为低电平。 串行数据输入端(A,B)可控制数据。当 A、B 任意一个为低电平,则禁 止新数据输入,在时钟端(CLOCK)脉冲上升沿作用下 Q0 为低电平。当 A、B 有一个为高电平,则另一个就允许输入数据,并在 CLOCK 上升沿作用下决定 Q0 的状态。真值表如表5所示。

- 12 -

山西农业大学信息学院毕业设计说明书

表5 74HC1真值表

Inputs

Clear L H H H H

Clock X L ↑ ↑ ↑

X X X X H H

L L ………….L QA0

QB0………….QH0 H

QAN…………QGN L

Outputs

A B QA QB ………...QH

L X QAN…………QGN X L L

QAN…………QGN

H-高电平 L-低电平 X-任意电平 ↑-低到高电平跳变 QA0,QB0,QH0 -规定的稳态条件建立前的电平 QAn,QGn -时钟最近的↑前的电平。

图6 74HC1时序图

- 13 -

胡晓敏:温度控制系统的设计

在单片机的TXD(P3.1)运行时钟信号,将显示数据由RXD(P3.0)口串行输出至74HC1的A、B端。

4.6温度设置模块

温度设置部分采用式按键,S4为温度值加1按键,与单片机的P0.0口相连;S3为温度值减1按键,与单片机的P0.1口相连。当没有键按下时,单片机与之相连的输入口线为高电平,当任何一个按键按下时,与之相连的 输入口线被置为低电平,产生外中断条件,在 中断服务程序中读取键盘值。温度设置电路如图7所示。

+5VR302KR312KP0.0P0.1S3DECS4ADD 图7 温度设置模块电路

4.7控制电路

控制电路与单片机的P0.2口相连,由于单片机输出控制信号非常微弱,需要用三极管来驱动外围电路,三极管选用NPN型的 9014,当检测温度低于设定温度时,在单片机的P0.2口输出高电平控制信号,使三极管9014导通,使继电器两控制端产生压差,从而使继电器吸合,常开触点接通,控制外部电路对锅炉进行加热;当检测温度高于设定温度时,单片机输出低电平信号,三极管截止, 继电器不吸合,外部电路停止加热。

- 14 -

山西农业大学信息学院毕业设计说明书

图8 控制电路

控制电路电路图如图8所示。

4.8 加热电路和报警装置

4.8.1加热电路

电热器件由双向可控硅KS控制,KS由光电耦合器 4N25和晶体管9013触发。 单片机的P2.0端输出的触发信号,经7407后,送到光电耦合器4N25。P2.0端输出高电平时,4N25没有电流输入,晶体管T截止,双向晶闸管KS关断,电热器不加热。当P2.0端输出低电平时,7407输出低电平,4N25的输入电流约为18mА,输出端的电流大3.6mА,经晶体管9013放大后,双向可控硅门极的电流可达200 mА,双向可控硅导通,电热器加热。电阻R3的作用是触发电流,当双向可控硅KS的功率较小时,

R3的值可由30Ω改为100Ω。

+5V+5VD1IN4007452Q231R391KP0.2R322KQ19014JDQ- 15 -

胡晓敏:温度控制系统的设计

R8C10T2J221CON20.1ufU154N25R?RES2U16A7407INT100KP202vccR17-5V100K3D6Q29013TRANS524BRIDGE11C123300ufR15100K1R16RES1Q3TRIAC

图12 加热电路图

过零检测电路由变压器B的其中一个绕组L3和电容器C2组成。L3产生2.5V的交流电压,通过C2交连到INT0和INT1端。INT0是过零检测端,它可对过零的上升信号检测而产生中断;INT1也是过零检测端,它可对过零的下降信号检测而产生中断。把INTO和INT1产生的中断综合处理,即可得到电源电压过零的时刻。

选用不同的电热器件,启动的过程也不一样。对于电阻率不随温度变化的电热器件,可以直接启动,即在电压过零时触发双向可控硅KS。对于电阻率随温度变化的电热器件,通常使用降压启动方式,即开始通电时,电压逐渐上升,使电热器的工作电流在KS允许的范围以内。过一定的时间后,电热器件的工作电压才达到额定电压。 4.8.2报警装置

首先通过按键对要达到的温度进行设定,通过加热装置对水进行加热,当加热温度达到或超过设定值时,将加热信号送到8051中,通过微处理器处理后,输出到P1口报警,并通过三极管驱动扬声器或蜂鸣器报警。

- 16 -

山西农业大学信息学院毕业设计说明书

U14R5100KBUZZERQ1R7100KP1PNPVCC 图13 报警装置的硬件电路图

5.软件设计

系统软件要实现的功能如下:

利用4只共阴数码管,LED1显示检测温度十位,LED2显示检测温度个位,LED3显示设定温度十位,LED4显示设定温度个位,显示分辨率为1℃。单片机复位后默认设定温度为40℃,当每按下一次设定温度上升按钮ADD时,设定温度增加1℃,最高为120℃,当每按下一次设定温度下降按钮DEC时,设定温度减少1℃,最低设定为0℃。当设定温度大于检测温度时加热输出,当设定温度小于检测温度时加热停止。

5.1主程序流程图

温度控制程序的设计应考虑如下: 1)键盘扫描、键码识别和温度显示; 2)水温采样; 3)数据处理; 4)越限报警和处理。 系统流程图如图9所示。

- 17 -

胡晓敏:温度控制系统的设计

图9 系统流程图

启动加热 小于 显示 与设定温度比较 显示 检测温度 大于 设定增设定减值 停止加热 判断按键 初始化 开始 5.2温度传感器DS18B20工作过程及时序

DS18B20工作过程中的协议如下:

初始化——ROM操作命令——存储器操作命令——处理数据 5.2.1初始化时序

时序如图10所示。主机总线发送复位脉冲(最短为480μS,最高时间为960μS的低电平信号),接着再释放总线(置总线为高电平)并进入接收状态。DS18B20在检测到总线的上升沿后等待15—60μS发出器件存在脉冲(低电平持续60—240μS)。初始化程序如下所示:

INIT: SETB P3.4

NOP

- 18 -

山西农业大学信息学院毕业设计说明书

LIU:

CLR

P3.4

MOV R0,#0FFH DJNZ R0,$ SETB P3.4 MOV R0,#100 JNB

P3.4,IT3

DJNZ R0,LIU CLR

38H

SJMP IT7

IT3: SETB 38H IT7: MOV R0,#240

DJNZ R0,$ SETB P3.4 RET

60-240μS 480-960μ15-60μS 单片机主动释放

图10 初始化时序图

此初始化程序功能为:检测DS18B20是否存在,如存在,将位地址38H置1;如不存在,将位地址38H清零。 5.2.2写时序

单片机写DS18B20的时序如图11所示,当主机总线从高拉至低电平时就产生写时间隙,DS18B20在检测到下降沿后15μS时开始采样总线上的电平,所以15μS之内应将所需写的位送到总线上,DS18B20再15—60μS间对总线采样,每写一位总时间必须在60—120μS之间完成。若低电平写入的位是0,高电平写入的位是1,连续写时位间的间隙应大于1μS。程序如下所示:

WRITER: MOV R0,#8

- 19 -

胡晓敏:温度控制系统的设计

WR1:

写0 DS18B20检测到下15μS CLR P3.4

MOV R4,#6 DJNZ R4,$ RRC

A

MOV P3.4,C MOV R4,#40 DJNZ R4,$ SETB P3.4 NOP

DJNZ R0,WR1 SETB P3.4 RET

写1,DS18B20在检测到下降沿151μS后采样,采样时间为15-60μS 60-120μS 降沿15μS后采样 60-120μS 图11 单片机写DS18B20时序图

5.2.3读时序

单片机读DS18B20的时序如图12所示,单片机主动产生一个下降沿的启动信号,并维持低电平大于1μS后释放总线,15μS后DS18B20占主动权,DS18B20会将数据按位放在总线上(低位在先,当读取两个字节的温度值时,低字节在先),这时单片机可读取信号,读取一位的时间应在60μS内完成。当需要读取下一位时再产生下降沿启动信号。

启动脉冲 单片机采样第一位 启动脉冲 单片机采样第二位 T<60μS T<60μS 图单片机读

12

- 20 -

山西农业大学信息学院毕业设计说明书

DS18B20的时序图

READ: SETB RS0

MOV R4,#2 MOV R0,#36H MOV R5,#8 CLR

C

RE1: RE2:

SETB P3.4 NOP NOP CLR NOP NOP NOP SETB P3.4 MOV R6,#7 DJNZ R6,$ MOV C,P3.4 MOV R6,#20 DJNZ R6,$ RRC

A P3.4

DJNZ R5,RE2 MOV @R0,A DEC

R0

DJNZ R4,RE1 CLR NOP RET

RS0

此程序功能为:读取DS18B20 A/D转换后的温度值,转换后的二进制存入36H、35H单元,默认为12位转换,低8位存入36H单元,高8位存入35H单元(35H单元的高5

- 21 -

胡晓敏:温度控制系统的设计

位均为符号位,所以判断符号只需判断低12位数据的最高位即可)。1表示为零度以下,0表示零度以上,实际有效位为11位。

结论

本文详细介绍了基于单片机ATS51的温度控制系统的设计方案与软硬件实现。系统包括数据采集模块,单片机控制模块,显示模块和温度设置模块,驱动电路五个部分。文中对每个部分功能、实现过程作了详细介绍。完成了课题既定的任务,达到了预期的目标。系统具有如下特点:

⑪.采用智能温度传感器DS18B20采集温度数据,简化了硬件电路设计,温度采集数据更加精准;

⑫.ATS51单片机的采用,有利于功能扩展; ⑬.电路设计充分考虑了系统可靠性和安全性。

本系统没有增加外部存储器,设定温度不能保存,断电复位后必须重新设置温度;采用静态显示方式,从而使用了较多的驱动芯片,增加了硬件电路的复杂性;只使用两位显示,即显示温度的十位、个位,没有充分发挥DS18B20的特性。

本课题软件和硬件相结合,有相当大的难度,同时也有很大的实用性。在做毕业设计的过程中,我的理论和实践水平都有了较大的提高。在本课题的设计中,我熟练掌握了单片机硬件设计和接口技术,同时对温度传感器的原理及应用有了一定的了解,掌握了各种控制电路及其相关元器件的使用。通过这次毕业设计,我不仅学会如何将所学专业知识运用到实际生活中,还学会如何克服未知的困难,解决难题的方法。

- 22 -

山西农业大学信息学院毕业设计说明书

参考文献

[1] 郭文川.单片机原理与接口技术[M]. 中国农业出版社,2007 [2] 童诗白,华成英.模拟电子技术基础[M]. 北京:高等教育出版社,2006 [3] 张齐,杜群贵.单片机应用系统设计技术[M]. 北京:电子工业出版社,2007 [4] 中国机械工业教育协会 组编.《单片机原理与应用》.机械工业出版社.2001

[5] 杨金岩等.8051单片机数据传输接口扩展技术与应用实例[M].北京:人民邮电出版社,2005 [6] 求是科技.单片机通信技术与工程实践[M].北京:人民邮电出版社,2005

[7] 杨金岩等.8051单片机数据传输接口扩展技术与应用实例[M].北京:人民邮电出版社, 2005 [8] 郭永贞主编 数字电子技术[M] 西安电子科技大学出版社 2000 [9] 李广弟 单片机基础[M],北京:北京航空航天大学出版社,2001 [10] 张洪润 电子线路与电子技术[M].清华大学出版社[M],2005 [11] 张齐,杜群贵 单片机应用系统设计技术[M].电子工业出版社,2004

- 23 -

胡晓敏:温度控制系统的设计

致谢

四年的读书生活在这个季节即将划上一个句号,而于我的人生却只是一个逗号,我将面对又一次征程的开始。感谢我教书育人的老师,我不是你们最出色的学生,而你们却是我最尊敬的老师。

在这里尤其要感谢李志伟老师,在做毕业设计中,得到了我的导师的悉心指导和无私帮助。他严谨的治学态度和谦和的为人给我留下了深刻的印象。

其次要感谢大学四年来所有的授课老师,为我们打下电气专业知识的基础;同时还要感谢所有的同学们,正是因为有了你们的支持和鼓励。此次毕业设计才会顺利完成。

最后我要深深地感谢我的家人,正是他们含辛茹苦地把我养育成人,在生活和学习上给予我无尽的爱、理解和支持,才使我时刻充满信心和勇气,克服成长路上的种种困难,顺利的完成大学学习。

还有许许多多给予我学业上鼓励和帮助的师长、朋友,在此无法一一列举,在此也表示忠心地感谢!

最后再一次感谢所有在毕业设计中曾经帮助过我的良师益友和同学,以及在设计中被我引用或参考的论著的作者。

大学生活的结束,也是我人生新的生活起点,我将谨记老师们的教诲,将自己的所学奉献给社会。

- 24 -

因篇幅问题不能全部显示,请点此查看更多更全内容