基于89c51的温度监控器1.docx
- 文档编号:30044421
- 上传时间:2023-08-04
- 格式:DOCX
- 页数:41
- 大小:416.81KB
基于89c51的温度监控器1.docx
《基于89c51的温度监控器1.docx》由会员分享,可在线阅读,更多相关《基于89c51的温度监控器1.docx(41页珍藏版)》请在冰豆网上搜索。
基于89c51的温度监控器1
浙江工商职业技术学院
毕业设计
题目温度监控器的设计与制作
姓名
学号
专业班级
分院
指导教师
2011年9月23日
温度监控器的设计与制作
摘要:
本设计基于AT89C51和DB18B20来实现温度控制器的制作,它以89C51单片机为核心,配以DS18B20(数字温度传感器),小风扇,金属膜电阻来完成温度的控制与显示。
系统的硬件和软件都比较简明,且易于实施。
在硬件设计方面,由AT89C51、DS18B20(数字温度传感器)、数码管,小风扇,金属膜电阻构成的电路,在软件方面,以单片机和DS18B20数字温度传感器为中心,详细的阐述了系软件设计的思想,主流程图以及相应电路模块的流程图。
关键词:
温度控制器;DS18B20;AT89C51
目录
摘要…………………………………………………………………………………1
1绪论…………………………………………………………………………………3
1.1温度控制器的意义与任务…………………………………………………3
1.2温度控制器的发展…………………………………………………………3
1.3论文设计内容………………………………………………………………4
2系统设计思路……………………………………………………………………4
2.1系统总体设计思路…………………………………………………………4
2.2核心电路介绍………………………………………………………………5
2.3DS18B20数字温度传感器……………………………………………………7
2.3.1DS18B20数字温度传感器结构介绍……………………………………8
2.3.2DS18B20数字温度传感器的特性………………………………………9
2.3.3DS18B20与AT89C51的连接电路………………………………………10
3硬件电路设计……………………………………………………………………10
3.1显示电路设计………………………………………………………………10
3.2控制电路设计………………………………………………………………12
3.3晶振电路的设计……………………………………………………………12
3.4复位电路的设计……………………………………………………………13
4软件设计…………………………………………………………………………14
4.1设计思路……………………………………………………………………14
4.2显示程序设计………………………………………………………………15
4.3温度控制程序设计…………………………………………………………16
5调试………………………………………………………………………………17
5.1调试准备…………………………………………………………………17
5.2关于温度控制器的部分调试………………………………………………18
5.3软件编程的几点体会……………………………………………………18
结论………………………………………………………………………………19
谢辞…………………………………………………………………………………20
参考文献……………………………………………………………………………21
附录A(电路元器件清单)………………………………………………………22
附录B(电路原理图)………………………………………………………………23
附录C(PCB图)……………………………………………………………………24
附录D(实物图)………………………………………………………………………25
附录E(软件程序)……………………………………………………………………………26
1绪论
1.1温度控制器的意义与任务
随着社会的发展,时代的进步,在人们的生活中对于温度的要求也越来越来要求了,而温度控制器它就可以解决人们对于这方面的要求,他可以把温度控制在人们所需要的温度范围内。
比如用在对冷部位(如空调室、冷冻水、库温等)的温度及其波动范围进行控制的电开关。
根据制冷、制热装置方式的不同,温度控制器电路的电控对象亦不同。
例如,对于制冷于制热装置(如空调器、冷饮水机、电冰箱、浴室,咖啡壶等等许多用品中)温度控制器可以根据设定温度直接控制电机或者开关的停开,使温度到达所预定的温度值。
温度控制器在实际中应用很广泛,也很实用。
温度的输出值也比较准确。
随意技术的发展,温度控制器的应用更加广泛,所应用的场合也越来越多,效率与稳定也会不断的提高,在以后的发展中会更加的完善、实用。
温度控制器的任务,具体的说就是用DS18B20(数字温度传感器)来感应被加热的电阻温度,把传感器感应到的温度传输到单片机里进行数据处理,用单片机进行准确的把温度值输出来传输到数码管中去显示当前测到的温度值。
如果所测到的温度值位达到限定最高值时就让继电器吸和把金属膜电阻加热,以至达到所规定的上限温度值,如果达到了所规定的温度值,继电器就断开。
而小风扇就开始降温工作,把加热器的温度降到所规定的最低值,之后继电器又开始吸合,开始加热工作。
就这样一直反复工作,把温度控制在所规定的温度值内活动,而数码管也会显示相应的温度值。
1.2温度控制器的发展
现代信息技术的三大基础是信息采集控制(即温度控制器技术)、信息传输(通信技术)和信息处理(计算机技术)。
温度控制器属于信息技术的前沿尖端产品,尤其是温度控制器被广泛用于工农业生产、科学研究和生活等领域,数量日渐上升。
以温度作为被控制量的反馈控制系统。
在化工、石油、冶金等生产过程的物理过程和化学反应中,温度往往是一个很重要的量,需要准确地加以控制。
除了这些部门之外,温度控制系统还广泛应用于其他领域,是用途很广的一类工业控制系统。
温度控制系统常用来保持温度恒定或者使温度按照某种规定的程序变化。
温度控制在我国电子,治金,机械等工业领域应用非常广泛,由于具有其工矿复杂,参数多变,运行惯性大,控制滞后等特点,它对控制调节器要求极高。
目前,仍有相当部分工业企业在用窖,炉,烘干生产线存在着控制精度不高,炉内温度均匀性差等问题,达不到工艺要求,造成装备运行成本费过高,产出品品质差,严重影响企业济济效益,急需进行技术改造。
严格说,多数温度控制系统中被控对象在进行热交换时的温度变化过程,既是一个时间过程,也是沿空间的一个传播过程,需要用偏微分方程来描述各点温度变化的规律。
因此温度控制系统本质上是一个分布参数系统。
分布参数系统的分析和设计理论还很不成熟,而且往往过于复杂而难于在工程实际问题中应用。
解决的途径有二:
一是把温度控制系统作为时滞系统来考虑。
时滞较大时采用时滞补偿调节,以保证系统的稳定性。
具有时滞是多数温度控制系统的特点之一。
另一途径是采用分散控制方式,把分布参数的被控过程在空间上分段化,每一段过程可作为集中参数系统来控制,构成空间上分布的多站控制系统。
采用分散控制常可获得较好的控制精度。
近年来,国内外对温度控制调节器进行了广泛,深入的研究,特别是随着计算机的发展,温度控制器的研究取得了巨大的进展,形成了一批商品化温度调节器。
自70年代以来,由于工业过程控制的需要,特别是在微电子技术和计算机技术的迅猛发展以及自动控制理论和设计方法发展的推动下,国内外温度控制系统发展迅速,并在智能化,自适应,参数自整定等方面取得成果。
在这方面,国外的技术比国内的技术领先,都生产了一批商品化的,性能优异的温度控制器及仪器仪表,并在各行业广泛应用,温度控制器具有控制精度高,抗干扰力强,鲁棒性好响应快、动态偏差小的特点,目前,国内外的温度控制系统以及仪器仪表正朝着高精度,智能化,小型化等方面快速发展。
1.3设计任务与要求
本论文详细的阐述了一个温度控制器的设计与实现,主要包括介绍温度控制器的基本理论、硬件电路的设计、软件编程、硬件软件调试等几部分。
(1)温度控制器的基本理论方面,对温度传感器加以讨论。
(2)硬件电路设计方面,完成了总体硬件电路的设计:
包括核心电路的选择(AT89C51)、数字温度传感器、显示电路、控制电路和晶振电路的设计。
(3)软件设计方面,完成了各个子程序模块的编程设计:
主控制程序、显示子程序等。
2系统设计思路
2.1系统总体设计说明
在现代工业测温的许多方面都要有对温度的处理、控制和显示。
而单片机由于它具有性能高、速度快、价格低、体积小、稳定可靠、使用方便灵活等特点。
还有温度控制器具有控制精度高,抗干扰力强,鲁棒性好响应快、动态偏差小的特点。
因而它们常常被用在职能检测装置及控制中,是本次设计的核心元件。
本文给出了基于单片机的温度控制系统的设计框图,它主要由以下几部分构成,如图2.1所示:
图2.1系统框图
①基于单片机AT89C51的核心电路部分。
即AT89C51单片机,其主要任务是将传感器输入的信号,传输到单片机中。
②传感器部分。
主要是由DS18B20(数字温度传感器)构成,主要任务是将传感器输出的温度经AT89C51进行数字处理。
③显示电路部分。
它的主要器件是由4位七段LED数码管组成,其任务是将单片机传输并处理后的数据实时显示出来。
④控制电路部分。
它主要由降温电路和加热电路组成。
其任务的是控制温度的上下限温度值。
⑤晶振电路部分。
2.2核心电路的设计
在产业化生产中硬件的价格和成本是对经济效益有关键影响的因素,因此选择一种最合适硬件电路的核心——单片机是首要任务。
单片机的价格在整个装置的价格中占有较大的比重。
因此选择一个价格低廉而且功能合适的单片机有着十分重要的意义。
经过综合考虑,本次设计采用AT89C51单片机。
AT89C51单片机:
89C51系列的单片机是当前最新的一种电擦写的8位单片机,与80C51系列完全兼容,有较强的保密功能,其片内的闪速存储器编程和擦除完全用电实现,编程的速度快,可实现在线编程。
89C51片内有4KB的—FlashROM代码存储器阵列。
有低电压编程和高电压编程(12V)两种模式。
低电压编程模式为用户在系统中编程89C51提供了一个方便的途径,而高电压编程程(12V)模式与一般常规的EPROM编程器兼容。
①主要性能:
◆内含4KB的FLASH存储器,擦写次数1000次。
◆具有6个中断源,5个中断矢量,2级优先权的中断结构。
◆AT89C51工作电源电压为5(1±0.2)V,且典型值为5V。
◆
两种低功耗工作模式,即空闲模式和掉电模式。
◆内含128字节的RAM。
◆具有32根可编程I/O线。
◆具有2个16位可编程定时器。
。
◆具有1个全双工的可编程串行通信接口。
◆具有1个数据指针DPTR。
◆具有可编程的3级程序锁定位。
◆AT89C51最高工作频率为24MHz。
◆完全定态操作:
0Hz-24Hz,可输出时钟信号
②管脚说明:
AT89C51的引脚结构图及功能的叙述。
1)电源和晶振:
VCC——运行和程序校验时加+5V。
图2.2AT89C51
VSS——接地。
XTAL1——输入到振荡器的反相放大器。
XTAL2——反相放大器的输出,输入到内部时钟发生器。
当用外部振荡器时,XTAL2不用,XTAL1接收振荡器信号。
2)制线:
共4根。
a.输入:
RST——复位输入信号,高电平有效。
在振荡器工作时,在RST上作用两个机器周期以上的高电平,将器件复位。
EA/VPP——片外程序存储器访问允许信号,低电平有效。
在编程时,其上施加21V或12V的编程电压。
b.输入、输出:
ALE/PROG——地址锁存允许信号,输出。
用作片外存储器访问时,低字节地址锁存。
ALE以1/6的振荡频率稳定速率输出,可用做对外输出的时钟或用于定时。
在EPROM编程期间,作输入。
输入编程脉冲(PROG)。
ALE可以驱动8个LSTTL负载。
c.输出:
PSEN——片外程序存储器选通信号,低电平有效。
在从片外程序存储器取指期间,在每个机器周期中,当PSEN有效时,程序存储器的内容被送上P0口(数据总线)。
PSEN可以驱动8个LSTTL负载。
3)I/O口:
4个口,32根。
P0——8位、漏极开路的双向I/O口。
当使用片外存储器(ROM及RAM)时,作地址和数据总线分时复用。
在程序校验期间,输出指令字节(这时,需加外部上拉电阻)。
P0口能驱动8个LSTTL负载。
P1——8位、准双向I/O口,具有内部上拉电阻。
在编程/校验期间,用做输入低位字节地址。
P1口可驱动4个LSTTL负载。
P2——8位、准双向I/O口,具有内部上拉电阻。
当使用片外存储器(ROM及RAM)时,输出高8位地址。
在编程/校验期间,接收高位字节地址。
P2口可以驱动4个LSTTL负载。
P3——8位、准双向I/O口,具有内部上拉电阻。
P3还提供各种替代功能。
在提供这些功能时,其输出锁存器应由程序置1。
P3口可以驱动4个LSTTL负载。
I/O口的端口自动识别功能,保证了无论是P1口(低8位地址)P2口(高8位地址)的总线复用,还是P3口的功能复用,内部资源自动选择而不需要用指令进行状态选择。
●串行口:
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,低电平有效,输出,片外数据存储器读选通。
图中VCC就是由外电源电路提供的+5V的电源。
AT89C51微控制器对于广泛的电源输入有很强的兼容性,对于供电电源的噪音也有很强的适应性。
2.3数字温度传感器—DS18B20
DS18B20是美国DALLAS公司生产的单线数字温度传感器,它具有微型化、低功耗、高性能、抗干扰能力强、易于微处理器等优点,特别适合于构成多点温度测控系统,可直接将温度转化成数字信号供微机处理,而且每个DS18B20都有唯一的产品号并可存入其ROM中,以使在构成大型温度测控系统时在单线上挂任意多个DS18B20芯片。
从DS18B20读出或写入DS18B20信息仅需要一根口线,共读写及温度变换功率来原于数据总线,该总体本身也可以向所挂接DS18B20供电,而无需额外电源。
DS18B20能提供九位温度读数,它无需任何外围硬件即可方便构成温度检测系统。
图2.3DS18B20
表1:
数字温度传感器的引脚
引脚8脚(SOIC)
引脚PR35
说明
5
1
GND
地
4
2
DQ
单线应用的数据输入/输出引脚
4
3
VDD
电源
2.3.1DS18B20数字温度传感器结构介绍
DS18B20的内部框图,它主要包括寄生电源、温度传感器、64位激光ROM单线接口,存放中间数据的高速暂存器,用于存储用户设定的温度上下限值的TH和TL解发器,存储与控制逻辑、8位循环沉余校验码(CRC)发生器等七部分组成。
图2.3.1DS18B20内部结构框图
DS18B20的读写时序和测温原理与DS1820相同,只是得到的温度值的位数因分辨率不同而不同,且温度转换时的延时时间由2s减为750ms。
DS18B20的低温度系数晶振的振荡频率受温度影响很小,用于产生固定频率的脉冲信号送给计数器1。
高温度系数晶振随温度变化其振荡率明显改变,所产生的信号作为计数器2的脉冲输入。
计数器1和温度寄存器被预置在-55℃所对应的一个基数值。
计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当计数器1的预置值减到0时,温度寄存器的值将加1,计数器1的预置将重新被装入,计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。
下图中的斜率累加器用于补偿和修正测温过程中的非线性,其输出用于修正计数器1的预置值。
图2.3.2DS18B20测温原理框图
2.3.2DS18B20数字温度传感器的特性
(1)适应电压范围更宽,电压范围:
3.0~5.5V,在寄生电源方式下可由数据线供电
(2)独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯
(3)DS18B20支持多点组网功能,多个DS18B20可以并联在唯一的三线上,实现组网多点测温
(4)DS18B20在使用中不需要任何外围元件,全部传感元件及转换电路集成在形如一只三极管的集成电路内
(5)温范围-55℃~+125℃,在-10~+85℃时精度为±0.5℃
(6)可编程的分辨率为9~12位,对应的可分辨温度分别为0.5℃、0.25℃、0.125℃和0.0625℃,可实现高精度测温
(7)在9位分辨率时最多在93.75ms内把温度转换为数字,12位分辨率时最多在750ms内把温度值转换为数字,速度更快
(8)测量结果直接输出数字温度信号,以“一线总线”串行传送给CPU,同时可传送CRC校验码,具有极强的抗干扰纠错能力
(9)负压特性:
电源极性接反时,芯片不会因发热而烧毁,但不能正常工作
2.3.3DS18B20与AT89C51的连接电路
图2.3.3DS18B20与AT89C51的连接电路
3硬件电路设计
3.1显示电路设计
在单片机应用系统中,通常用数码显示器作为输出设备显示一些需要的信息和结果。
在显示驱动电路中,每一个LED显示器需要一个译码芯片,每一段需要一个限流电阻。
而本设计所使用的传感器是数字温度传感器,它所测出来的温度为数字,就不需要A/D进行转换了,而使用的数码管又是四位数码管,简单,方便,这样,是电路大大减少了工作量,使电路简单化。
图3.1数码管
此数码管有12个脚,正面向上,点为下,前排6个脚和后排6个脚
依次从左向右数为
前为6个脚为:
E、D、DP、C、G、Vcc4
后排6个脚为:
Vcc1、A、F、Vcc2、Vcc3、B
图3.1.1数码管内部结构
图3.1.2数码管与AT89C51的连接
3.2温度控制电路的设计
此控制电路为单片机所控制的两路电路,一路为小风扇的工作电路,它的功能是当温度超过所限定的高值时,就为电路散热。
另一路为加热电阻的工作电路,它的功能是当温度低于所限定的温度值时,就为电路加热。
这两个电路就是把温度限定的温度值中工作,即进行控制温度。
图3.2AT89C51与控制电路连接图
3.3晶振电路的设计
单片机工作的时间基准是由时钟电路提供的。
在单片机的XTAL1和XTAL2两个管脚,接一只晶振及两只电容就构成了单片机的时钟电路。
电路中,电容器C1和C2对振荡频率有微调作用,通常取(30±10)pF。
石英晶体选择6MHz或12MHz都可以。
如图所示:
图3.3晶振电路
图3.3晶振电路
由图可知,晶振为12MHz,则机器周期Tc=12/12M=1µs,从而决定了执行一条一个机器周期的语句为1µs。
振荡器的工作可以由PD位(特殊功能寄存器PCON中的一位)控制。
当PD置1时,振荡器停止工作,系统进入低功耗状态。
振荡器的工作频率一般在1.2~12MHZ之间,现在,由于制造工艺的改进,频率范围正向两端延伸,高端可以达到40MHZ,低端可以达到0HZ。
图示由晶振和电容构成谐振电路,C1,C2虽没有严格要求,但电容的大小影响振荡器振荡的稳定性和起振的快速性,本设计选择0.01uF,在设计电路板时,晶振、电容等均应尽可能靠近芯片,以减小分布电容,保证振荡器振荡的稳定性。
3.4复位电路的设计
复位是单片机初始化操作。
所谓初始化,就是计算机及各芯片在启动运行时都要复位,使各单元处于一个确定的“各就各位”的初始状态,并从这个状态开始工作。
MCS—51单片机初始化后。
程序指针指向0000H单元,单片机由0000H单元开始执行程序。
图3.4复位电路
4软件设计
4.1总体思路
温度控制器系统控制程序是控制单片机系统按照预定的操作方式运行的程序,其组要任务是:
对温度的控制,把温度控制在规定的值内,以及对温度的检测。
软件总体设计包括主控制程序和子显示程序,延时程序。
主控制程序主要完成对温度的控制,检测,它通过调用各个程序模块来实现整体系统的各项功能。
MCS-51系列单片机上电复位后,(PC)=0000H,到0030H。
电路上电,首先把DS18B20初始化,然后传感器开始感应当前的温度值,并把温度采集到单片机里,让单片机把温度值传输到数码管中去显示温度值,并让单片机进行对温度的判断,如果温度达到所规定的低值时,单片机P2.4口开始工作,没达到就继续进行温度测试。
如果达到温度的高值后,单片机P2.7口开始工作,没达到就继续进行温度测试。
图4.1总体流程图
4.2显示程序设计
显示程序就电路上电开始工作,数码管就显示当前所测到的温度值。
他的工作原理是,首先把单片机的百位送到数码管显示,P2.0口置位,在把十位送到数码管显示,P2.1口置位,在那个为送到数码管显示,P2.2口置位,最后把个位送到数码管显示,P2.3口置位,就一直这样工作。
图4.2显示流程图
4.3温度控制程序设计
温度控制程序就电路上电后对温度的控制工作。
它的工作原理是,首先数码管显示当前的温度,然后DS18B20测试温度,是否有达到上限的温度值,如果达到了上限温度值,风扇启动,开始降温工作,如果没有达到就继续测试与降温工作。
如果温度达到下限温度值后就返回。
图4.3温控流程图
5系统调试
5.1系统的合成调试及准备工作
软件编好后需要通过硬件看看是否能够实现预想的功能,所以需要二者结合调试。
在调试程序的实际过程中,总是希望在一个很庞大也很复杂的用户程序中,挑选出来某一段程序或某一个子程序,单独进行调试,以便达到化繁为简,各个击破的目的。
在编写本课题程序时,采取的是反其道而行之,先简后繁,即将编写好各个子程序先在所购买的目标板上调试成功,然后在组成复杂的用户程序,最后将程序烧写到所设计的装置中,完成整个设计的程序调试工作。
调试前的准备工作:
①PC机;②.程序编制器;③.数字万用表;④.5V的电源;⑤.简易实验板(面包板);⑥.电缆;⑦.导线剪;⑧.导线剥离器;⑨.尖嘴的镊子;⑩.平头的小改锥等。
5.2关于温度传感器部分的调试
适应电压范围:
3.0~5.5V,在寄生电源方式下可由数据线供电,独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯,测温范围-55℃~+125℃,在-10~+85℃时精度±0.5℃,可编程的分辨率为9~12位,对应的可分辨温度分别为0.5℃、0.25℃、0.125℃和0.0625℃,可实现高精度测温,在9位分辨率时最多在93.75ms内把温度转换为数字,12位分辨率时最多在750ms内把温度值转换为数字,速度更快,测量结果直接输出数字温度信号,以"一线总线"串行传送给CPU,同时可传送CRC校验码,具有极强的抗干扰纠错能力,负压特性:
电源极性接反时,芯片不会因发热而烧毁,但不能正常工作。
DS18B20中的温度传感器可完成对
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 89 c51 温度 监控器