当前位置:文档之家› 基于51单片机的温度控制系统说明书

基于51单片机的温度控制系统说明书

中北大学课程设计说明书学生姓名:学号:学院:机械与动力工程学院专业:机械电子工程题目:基于51单片机的温度控制系统设计职称: 讲师2015 年 1 月 19 日目录第1章绪论 (2)1.1 题目背景 (2)1.2 题目简介 (2)第2章系统总体设计及方案 (3)2.1单片机的介绍 (3)2.2系统功能的确定 (3)2.3温度传感器DS18B20的介绍 (3)2.3.1DS18B20的内部结构 (4)2.3.2 DS18B20的引脚介绍 (6)2.4人机交互与串口通信 (6)第3章硬件设计 (8)3.1系统结构框图 (8)3.2人机交互与串口通信单元设计 (9)3.2.1 键盘输入电路 (9)3.2.2 串口通信电路 (9)3.2.3 LED七段数码动态显示电路 (10)3.2.4 控制执行单元设计 (11)第4章软件设计 (12)4.1设计思路、程序代码 (12)结束语 (22)参考文献 (23)第1章绪论1.1 题目背景不论是对于工业生产还是对于人们的日常生活,温度的变化都会对其产生一定程度的影响。

所以,适时和恰当的温度控制对生产生活具有非常重要的作用。

在过去,对温度的控制总是采用常规的模拟调节器,然而,这种调节器存在的缺点是控制精度低,具有滞后、非线性等特点。

-本文将采用微电子技术来提高温度控制的精度,因为微电子技术的电路设计简单,控制效果好,具有很强的实用性。

众所周知,在现代工业以及家用电器测控领域中,单片机系统的开发和运用给其带来了全新的技术创新和变革。

而且,自动化和智能化程度的高低均依赖于是否使用单片机。

试想:将单片机的温度控制方法如果能够运用到温度控制系统中的话,那么,就可以在一定程度上缓减和克服温度控制系统中存在的滞后现象,同时在很大程度的上,单片机的使用可以提高温度的控制效果以及控制精度。

在工业自动化控制中,温度的控制一直都占有非常特殊的地位。

在本文中作者针对电烤箱的温控系统利用单片机进行设计,从而达到精确控制电烤箱温度目的。

1.2 题目简介课题名称:基于51单片机的温度控制系统设计主要任务:(1)电烤箱由1kW电炉加热,最高温度为120℃;(2)电烤箱温度可设置,电烤过程恒温控制,温度控制误差≤±2℃;(3)实时显示温度和设置温度,显示精确为1℃;(4)温度超出设置温度±5℃时发出超限报警,对升温和降温过程不作要求。

开发环境:本环境温度控制系统的软件部分是通过KEIL进行编译,并由Proteus 7 Professional进行仿真测试。

技术指标:(1)以AT89C51系列单片机为核心部件(2)以数字电路和模拟电路为硬件基础(3)以C语言为软件实现语言功能概述:在该温度控制系统中,单片机作为核心部件进行检测控制。

在该环境温度控制系统中温度检测采用DS18B20温度传感器将实时温度传送至单片机,并加以显示。

再通过按键来设定温度,并实时显示。

按下确定键后将实际温度与设定温度进行比较,如果实际温度大于设定温度,则进行降温过程,反之,则进行升温过程,实现温度控制和报警等目的,按复位键后,从新开始。

第2章系统总体设计及方案2.1单片机的介绍随着大规模集成电路的出现及其发展,将计算机的CPU 、RAM 、ROM 、定时/计数器和多种I/O 接口集成在一片芯片上,形成芯片级的计算机,因此单片机早期的含义称为单片微型计算机,直译为单片机。

单片机具有以下特点:1.具有优异的性能价格比2.集成度高、体积小、可靠性高3.控制功能强4.低电压、低功耗2.2系统功能的确定一个控制系统是否能被大众所接受,在于该控制系统是否拥有人性化的操作功能。

为了使本次设计的环境温度控制系统具有操作简单、灵活及高可靠性等特点,确定了该系统功能:1.独立键盘输入。

2.单总线温度传感器DS18B20进行温度采集。

3.温度显示。

4.温度控制执行,温度超限进行报警。

5.温度测量范围为-55-125度,温度有效范围为2-98度,允许误差为1度。

2.3温度传感器DS18B20的介绍DS18B20温度传感器是DALLAS公司生产的1-Wire,即单总线器件,具有线路简单,体积小的特点。

因此用它来组成一个测温系统,在一根通信线,可以挂很多这样的温度传感器,十分方便。

DS18B20具有以下的的特点:1.只要求一个端口即可实现通信。

2.在DS18B20中的每个器件上都有独一无二的序列号。

3.实际应用中不需要外部任何元器件即可实现测温。

4.测量温度范围-55到+125。

5.数字温度计的分辨率用户可以从9位到12位选择。

6.内部有温度上、下限告警设置。

2.3.1DS18B20的内部结构DS18B20采用3脚PR-35封装或8脚SOIC封装,其内部结构框图如图2.1所示。

图2.1 DS18B20内部结构框图64位ROM的位结构如图2.2所示。

开始8位是产品类型的编号;接着是每个器件的唯一的序号,共有48位;最后8位是前面56位的CRC检验码,这也是多个DS18B20可以采用单线进行通信的原因。

非易失性温度报警触发器TH和TL,可通过软件写入用户报警上下限数据。

MSB LSB MSB LSB MSB LSB图2.2 64位ROM的位结构图DS18B20温度传感器的内部存储器还包括一个高速暂存RAM和一个非易失性的可电擦除的E2PROM。

高速暂存RAM的结构为9字节的存储器,结构如图2.3所示。

前2字节包含测得的温度信息。

第3和第4字节是TH和TL的拷贝,是易失的,每次上电复位时被刷新。

第5字节为配置寄存器,其内容用于确定温度值的数字转换分辨率,DS18B20工作时按此寄存器中的分辨率将温度转换为相应精度的数值。

该字节各位的定义如图2.4所示,其中,低5位一直为1;TM是测试模式位,用于设置DS18B20在工作模式还是在测试模式,在DS18B20出厂时,该位被设置为0,用户不要去改动;R1和R0决定温度转换的精度位数,即用来设置分辨率,其定义方法见表2.1。

由表可见,DS18B20温度转换的时间比较长,而且设置的分辨率越高,所需要的温度数据转换时间就越长。

因此,在实际应用中要将分辨率和转换时间权衡考虑。

高速暂存RAM 的第6、7、8字节保留未用,表现为全逻辑1。

第9字节是前面8字节的CRC 码,可用来检验数据,从而保证通信数据的正确性。

当DS18B20接收到温度转换命令后,开始启动转换。

转换完成后的温度值就以16位带符号扩展的二进制补码形式存储在高速暂存RAM 的第1、2字节中。

单片机可以通过单线接口读出该数据。

读数据时,低位在先,高位在后,数据格式以0.0625°C/LSB 形式表示。

温度值格式如图2.5所示:E 2PROM图2.3 高速暂存RAM 结构图 表2.1 DS18B20分辨率的定义和规定 图 2.4 配置寄存器位低字节232221202-12-22-32-4高字节S S S S S 262524图2.5 温度数值格式2.3.2 DS18B20的引脚介绍T O-92封装的DS18B20的引脚排列见图2.6,其引脚功能描述见表2.2。

图2.6(底视图)表2.2 DS18B20详细引脚功能描述序号名称引脚功能描述1 GND 地信号2 DQ 数据输入/输出引脚。

开漏单总线接口引脚。

当被用着在寄生电源下,也可以向器件提供电源。

3 VDD 可选择的VDD引脚。

当工作于寄生电源时,此引脚必须接地。

2.4人机交互与串口通信该热炉温度控制系统由温度采集、独立键盘输入、温度显示、温度控制执行等四大模块组成。

1. 温度采集:由温度传感器DS18B20完成,并通过串口通信技术与单片机进行数据传输,使用单片机P2.2端口。

2.独立键盘输入:将键盘扫描程序设置在主函数中while循环函数的第一条语句,不断刷新获得设定温度,按下确定键后执行温度比较和温度控制。

使用单片机的P2.1,P2.3,P2.4,P2.5端口。

3.温度显示:通过8个7段LED数码显示管显示当前温度值和设定的温度值,及时反应当前温度的变化与设置温度的关系,使用单片机P0.0--P0.7端口。

4.温度控制执行:系统根据当前温度与设置的温度自动进行相应的升温或降温的操作,在系统自动进行升温或降温处理的同时显示相应的指示灯,在本文的设计中,考虑到加入升温降温设备也不会使得DS18B20传感器有所感应,故而没有添加升降温设备。

只是通过两个升温降温指示灯来表示升降温过程,同样能让使用者知道系统正在进行的操作,使更加简洁。

但是,在实际的生产中升降温度设备是必须添加的。

两个指示灯使用单片机P1.4,P1.5端口。

5.超限报警:在任务书要求中,当温度超出设置温度±5℃时发出超限报警,但是由于作者能力所限,未能达到要求的±5℃,我选择了比较设置温度和实际温度的十位数据的方法,将误差控制在了±10℃以内,在仿真过程中影响是很小的。

第3章 硬件设计3.1系统结构框图图3.1系统硬件总体框图 该系统由核心部件AT89C51来处理从键盘输入电路和温度采集电路送入的数据,并通过温度显示电路进行温度显示,由温度控制电路来进行相应的升温或降温的操作。

如果超出温度限制则激发报警模块。

图3.2 系统硬件原理图AT89C51 显示模块温控执行模块 报警模块键盘模块 传感器模块3.2人机交互与串口通信单元设计在该系统中,人机交互技术主要应用在恒定温度的设置,以及当前温度与设置温度的显示;串口通信技术应用在对温度的采集。

3.2.1 键盘输入电路在本系统中,键盘输入主要采用四个独立按键来实现温度的设定。

如图3.3所示,当按下“加一”键时,恒定温度从0开始加一,按下“减一”键,设定温度从现有值减一。

按下“清零”键,设置温度清零。

按“确定”键,保存设置并退出键盘输入,进入温度控制状态。

只有按下“确定”后才开始执行温度控制和超限报警。

图3.3 键盘输入原理图3.2.2 串口通信电路为了使测得的温度更准确,在本系统中采用了温度传感器DS18B20来获取当前温度,而DS18B20是采用I²C总线进行通信的,如图3.4所示,单片机使用P2.2端口与DS18B20的数据通讯端口相连接,并通过软件实现P2.2控制DS18B20的读和写。

图3.4温度传感器原理图3.2.3 LED七段数码动态显示电路在本系统中采用了LED七段数码动态显示电路来显示温度值,设定温度显示范围在0-99之间,实时温度显示范围在-55--120之间。

该电路由显示、位选锁存器、段选锁存器三部分组成。

显示部分:由两个四位的LED七段共阴数码管构成,用来显示当前温度和设置温度,如图3.5所示。

图3.5 LED七段共阴数码管位选和段选部分:如图3.6所示,由两片74HC573锁存器构成,单片机的P2.6和P2.7分别输出段选和位选信号,然后再将P0口信号传递到锁存器,并完成段选。

相关主题