关键词不能为空

当前您在: 主页 > 英语 >

智能温度控制系统设计说明

作者:高考题库网
来源:https://www.bjmy2z.cn/gaokao
2021-02-18 16:48
tags:

-

2021年2月18日发(作者:doodle)


下载可编辑















.


专业< /p>


.


整理


.


20 12


届毕业设计


(


论文


)












温度智能控制系统设计











2008


自动化


05









2


0


0


8


5


0


0


2


6


0




























































































2011



5



27

















下载可编辑


































.


专业


.


整理


.


温度智能控制系统设计



Intelligent temperature


control system design









:























:



斌< /p>



















下载可编辑







随着电子产品向智能化和微型化的不断发展


,

< br>单片机已成为电子产品研制和


开发中首选的控制器。为了更好地推广单片机在实际 生活和生产中的应用


,


本文


介绍一种基 于单片机


AT89C51


设计的温度控制系统,


以实现系统能自主调节温度


的功能。



该温度系统采用温度传感器


DS1820


来获得当前温 度,


并以数字信号的方式传


送给单片机。采集的温度与从


4X2


矩阵键盘输入的温度值进行比较,并通过液晶

< br>显示器


LCD


显示出来。如果采集温度低于设置温度,系 统将通过继电器模块自动


控制升温;如果采集温度高于设置温度,系统将通过继电器模块 自动控制降温。



文中介绍了该控制系统的硬件部分,包括:温 度采集电路、温度设置电路、


温度显示电路、


继电器电路等。< /p>


文中还着重介绍了软件设计部分。


里采用模块化

< br>结构,主要模块有:温度采集模块、键盘扫描及按键处理模块、温度显示模块、


温 度比较模块、继电器控制模块。



经实际制作表明该温度控制系 统具有体积小、操作灵活、可靠性高、实用、


成本低等特点


,< /p>


具有一定的实际意义。



关键词



单片机


AT89C51


;温度控制;温度传感器


DS1820


;液晶显示器


LCD






















.


专业


.< /p>


整理


.


下载可编辑



Abstract


With


the


electronic


products


developing


to


intelligent


and


miniaturization,



single


chip


has


become


the


first


chosen


controller


which


is


used


to


develop


and


explore


the


electronic


product.


In


order


to


promote


single chip applicating in real life and production, the paper will


introduce


a


temperature


control


system


which


is


based


on


a


kind


of


single


chip


AT89C51,


and


it


can


achieve


the


function


that


the


system


can


regulate


the temperature independently.


The temperature system adopts the temperature sensor DS1820 to get


the


current


temperature,


and


transfer


it


to


the


microcontroller


with


the


way


of


digital


signal.



The


acquised


temperature


will


be


compared


with


the


temperature


which


is


put


in


by


4X2


matrix


keyboard,


and


will


be


displayed


by


liquid


crystal


display.



If


collected


temperature


below


the


set


temperature,


the


system


will


automatically


control


to


heat


up


by


the


relay


modules.



If collected temperature higher than the set temperature, the


system will automatically control to reduce by the relay modules.



The


paper


introduces


the


hardware


which


is


part


of


the


control


system,



including:



temperature acquisition circuit,



temperature setting of the


circuit,


temperature


display


circuit,


relay


circuit


and


so


on.


The


paper


has also mainly introduced the design of software. Here use modular


construction,


the main


module:



temperature acquisition module, keyboard


scan and key processing module, temperature display module, temperature


comparison module, relay control module.


According to make it actually, I find it has these characteristics:


small volume, flexible operation, high reliability, practical, low cost


and so on. It has practical significance.


Keywords


:



Single


Chip


AT89C51





Temperature


Control




T


emperature


Sensor DS1820




Liquid Crystal Display






.


专业


.< /p>


整理


.


下载可编辑







第一章



绪论



1.1


选题背景与意义


< p>
在生产过程中,


温度的控制是十分常见的。


国已相 继出现各种以微机为核心


的温度控制系统。这种系统控制精度高、重复性好、自动化程度 高。




在日常生活中,人们为了拥 有一个更舒适的生活环境,往往需要室拥有一个


合适的温度,而单片机的准确性高、价格 低、功耗低等一系列优点,可结合升温


和降温设备,有效的应用到实际生活中。



单片机温度控制系统是单片机控制的一项简单应用。

< br>近几年来单片机因其独


特的,方便,快捷的优势被广泛的应用于各个领域之中。< /p>



1.2


选题简介



课题名称:温度智能控制系统设计



主 要任务:


将温度控制在设定的温度值,


设定围为


0-99


度,


针对在生产和日


常生活中温度智能化控制系统的实现。



开发环境:

< p>
本环境温度控制系统的软件部分是通过


KEIL


进 行编译,


Proteus


7 Professional< /p>


进行仿真测试,开发板作为实际测试。技术指标:




1


)以


AT89C52< /p>


系列单片机为核心部件




2


)以数字电路和模拟电路为硬件基础


< p>


3


)以


C


语言为软件实现语言



功能概述:在该环境温度控制 系统中,单片机作为核心部件进行检测控制,


增强了设计的通用性,适时性。在该环境温 度控制系统中温度检测采用


DS18B20


温度传感器,


它不仅具有较高的精度,


而且适用电压宽。


同 时采用了


4X2


矩阵扫


描键盘输入,< /p>


显示设备等外围扩展芯片。


温度控制分为升温和降温控制,


升温控


制和降温控制分别采用继电器来控制外部的升温和降温设备。< /p>


软件部分采用流程


图来表示。







.


专业


.


整理


.


下载可编辑







第二章



系统总体设计方案



本设计是一个数字 温度测量及控制系统,


能测柜的温度,


并能在超限的情况


下进行控制、调整,并报警。保证环境保持在限定的温度中。



2.1


系统工作原理


< p>
温度控制系统采用单片机作为微处理单元进行控制。


采用温度传感器将温度


采集到单片机,


采用键盘按键把设定温度的值存入单片机的数据 存储器。


通过显


示器将


2


者温度显示出来,


然后再将两者温度进行比较。


如果 采集温度比设定温


度要低,


则加热指示灯亮起,


继电器电路中的直流电机开始转动加热;


如果采集


温度 比设定温度要高,


则降温指示灯亮起,


继电器电路中的风冷器开 始运转降温。


系统原理图如图


2-1


所 示:






单片机



AT89C51


温度采集模块




显示模块



复位电路



键盘模块



继电器控制模块





2-1


系统总体设计框图



根据系统的设计要 求,


选择


DS18B20


温度传感器作 为采集模块,


选择单片机


AT89C51


为测控系统的核心来完成数据采集、处理、显示、等功能,选择


LCD



晶显示器作为显示模块。




2.2


单片机简介



随着大规模集成电路的出现及其发展,将计算机的


CPU



RAM



ROM


、定



/

计数器和多种


I/O


接口集成在一片芯片上,形成芯片级的 计算机,因此单片


机早期的含义称为单片微型计算机,直译为单片机

[1]




.


专业


.


整理

.


下载可编辑






2.2.1


单片机的特点



1

< br>.


具有优异的性能价格比



2


.集成度高、体积小、可靠性高



、控制功能强



3


.低电压、低功耗



2.2.2


单片机的选择



微处理器是本系统的核心,


其性能的好坏直接影响系统的稳定,


鉴于本系统


为实时控制系统,


系统运行时需要 进行大量的运算,


所以单片机采用


INTEL

< br>公司


的高效微控制器


AT89C51

[2]




AT89C51


是一种带


4K


字节闪烁可编程可擦除只读存储 器(


FPEROM



Falsh


Programmable and Erasable Read Only Mem ory


)的低电压,高性能


CMOS8


位微


处理器,


俗称单片机。


该器件采用


ATMEL


高密度非易失存储器制造技术,

与工业


标准的


MCS-5


指令集和 输出管脚相兼容。


由于将多功能


8


位< /p>


CPU


和闪烁存储器组


合在单个芯片中,


ATMEL



AT89C51


是一种高效微控制器,为很多嵌入式控制系


统提供了一种灵活性高且价廉 的方案。


AT89C51


外形及引脚如图

2-1-2


所示





2-2-2 AT89C51


外形及引脚



1


.主要特性:



·与


MCS-51


兼容



·4K


字节可编程闪烁存储器



.


专业


.


整理


.


下载可编辑



·寿命:


1000



/


擦循环



·数据保留时间:


1 0




·全静态工作:


0Hz-24Hz


·三级程序存储器锁定



·128*8


位部


RAM

< p>
·32


可编程


I/O


线< /p>



·两个


16


位 定时器


/


计数器



·5


个中断源



·可编程串行通道



·低功耗的闲置和掉电模式



·片振荡器和时钟电路



2


.管教说明



·VCC:供电电压。



·GND:接地。



·P0

< p>
口:


P0


口为一个


8


位漏级开路双向


I/O


口,每脚可吸收


8TTL


门电流。



P1


口的管脚第一次写


1


时,被定义 为高阻输入。


P0


能够用于外部程序数据存

储器,


它可以被定义为数据


/


地址 的第八位。



FIASH


编程时,


P0


口作为原码输


入口,当


FIASH


进行校验时,


P0


输出原码,此时


P0


外部必须被拉高。



·P1


口:


P1

< br>口是一个部提供上拉电阻的


8


位双向

I/O


口,


P1


口缓冲器能接


收输出


4TTL


门电流。

< br>P1


口管脚写入


1


后,


被部上拉为高,可用作输入,


P1


口被


外部下拉为低电平时,


将输出电流,


这是由于部 上拉的缘故。



FLASH


编程和校< /p>


验时,


P1


口作为第八位地址接收。



·


P2


口:


P2


口为一个部上拉电阻的


8


位双向


I/O


口,


P2


口缓冲器可接收,输



4

< br>个


TTL


门电流,


< p>
P2


口被写“1”时,


其管脚被部上拉电阻拉高,


且作为输


入。并因此作为输入时,


P2


口的管脚被外部拉低,将输出电流。这是由于




.


专业


.< /p>


整理


.


下载可编辑



部上拉的缘故。


P2


口当用于外部程序存储器或


16

< p>
位地址外部数据存储器进


行存取时,


P2


口输出地址的高八位。在给出地址“1”时,它利用部上拉优势,


当对外 部八位地址数据存储器进行读写时,


P2


口输出其特殊功能寄存 器的容。


P


2


口在

FLASH


编程和校验时接收高八位地址信号和控制信号。



·P3


口:


P3


口管脚是


8


个带部上拉电阻的双向


I /O


口,可接收输出


4



TT


L


门电流。当


P3


口写入“1”后,它们被部上拉为高电平,并用作输入。作为输


入, 由于外部下拉为低电平,


P3


口将输出电流(

< br>ILL


)这是由于上拉的缘故。


P3

口也可作为


AT89C51


的一些特殊功能口


[3]


。如表


2-1-3


所 示:



引脚



P3.0 RXD


P3.1 TXD


P3.2 /INT0


P3.3 /INT1


P3.4 T0


P3.5 T1


P3.6 /WR


P3.7 /RD


作用



串行输入口



串行输出口



外部中断


0


外部中断


1


记时器

< br>0


外部输入



记时器

< p>
1


外部输入



外部数据存储器写选通



外部数据存储器读选通




2-1-3 P3


口引脚功能表



·RST:复位输 入。当振荡器复位器件时,要保持


RST


脚两个机器周期的高< /p>


电平时间。


ALE/PROG



当访问外部存储器时,


地址锁存允许的输出电平用于锁存


地址的地位字节。在


FLASH


编程期间,此引脚用于 输入编程脉冲。在平时,


ALE


端以不变的频率周期输出正脉冲 信号,


此频率为振荡器频率的


1/6


。 因此它可用


作对外部输出的脉冲或用于定时目的。


然而要注意的 是:


每当用作外部数据存储


器时,将跳过一个

< br>ALE


脉冲。如想禁止


ALE


的 输出可在


SFR8EH


地址上置


0


。此


时,


ALE


只 有在执行


MOVX



MOVC


指令是


ALE


才起作用。另外,该引脚被略微拉


高。如果微处理器在外部执行状态


ALE


禁止,置位无效。



·


/PSEN< /p>


:外部程序存储器的选通信号。在由外部程序存储器取指期间,每


个机器周期两次


/PSEN


有效。但在访问外部数据存储器时, 这两次有效的


/PSEN


信号将不出现。



·


/EA/VPP


:当

< p>
/EA


保持低电平时,则在此期间外部程序存储器(


0000H-FFF


FH


),不管是否有部程序存储器。注意 加密方式


1


时,


/EA


将部锁定为


RESET



当< /p>


/EA


端保持高电平时,此间为部程序存储器。在


FLASH


编程期间,此引脚也用


于施加


12V


编程电源(


VPP


) 。



.


专业


.


整理


.


下载可编辑



·


XTAL1


:反向振荡放大器的输入及部时钟工作电路的输入。



·


XTAL2


:来自反向振荡器的 输出。




3


.振荡特性



·


/EA/VPP




/EA








< br>则














0000H-FFFFH



,不管是否有部 程序存储器。注意加密方式


1


时,


/E A


将部锁定



RESET


;当


/EA


端保持高电平时,此间部程序存储器。在


FLASH


编程期间,此


引脚也用于施 加


12V


编程电源(


VPP

< p>



·


XTAL1


:反向振荡放大器的输入及部时钟工作电路的输入。



·


XTAL2


:来自反向振荡器的输出。




4


.芯片擦除



整个


PEROM


阵列和三个锁定位的电擦除可通过正确的控制 信号组合,


并保持


ALE


管脚处于低电 平


10ms


来完成。


在芯片擦操作中 ,


代码阵列全被写“1”且在


任何非空存储字节被重复编程以前 ,该操作必须被执行。此外,


AT89C51


设有稳

< p>
态逻辑,可以在低到零频率的条件下静态逻辑,支持两种软件可选的掉电模式。

在闲置模式下,


CPU


停止工作。但


RAM


,定时器,计数器,串口和中断系统仍在


工作。在掉电 模式下,保存


RAM


的容并且冻结振荡器,禁止所用其他芯片功 能,


直到下一个硬件复位为止。




5


.串口通讯



SBUF


数据缓冲寄存器这是一个可以直接寻址的串行口专用 寄存器。有朋友


这样问起过“为何在串行口收发中,都只是使用到同一个寄存器


SBUF


?而不是


收发各用一个寄存器。”实际 上


SBUF


包含了两个独立的寄存器,一个是发送寄


存,另一个是接收寄存器,但它们都共同使用同一个寻址地址-


99H< /p>



CPU


在读


SBUF


时会指到接收寄存器, 在写时会指到发送寄存器,而且接收寄存器是双缓


冲寄存器,


这 样可以避免接收中断没有及时的被响应,


数据没有被取走,


下一 帧


数据已到来,


而造成的数据重叠问题。


发送器则不需要用到双缓冲,


一般情况下


我们在写发送程序时 也不必用到发送中断去外理发送数据。操作


SBUF


寄存器的< /p>



.


专业


.


整理


.


下载可编辑



方法则很简单,只要把这个


99H


地 址用关键字


sfr


定义为一个变量就可以


对其进行读写操作了,如


sfr SBUF = 0x99;


当然你也可以用其它的名称。通常


在标准的


reg51.h



at89x51.h


等头文件中已对其做了定义,只要用


#include


引用就可以了。



SCON


串行口控制寄存器通常在芯片或设备中为了监视或控制接口状态,都


会引 用到接口控制寄存器。


SCON


就是


51


芯片的串行口控制寄存器。 它的寻址


地址是


98H


,是一个可以位 寻址的寄存器,作用就是监视和控制


51


芯片串行口


的工作状态。


51


芯片的串口可以工作在几个不同的工作模式下,其工作模式的


设置就是 使用


SCON


寄存器。


它的各个位的 具体定义为:


SM0


SM1


SM2


REN


TB8


RB8


TI RI




·


SM2


在模式

2


、模式


3


中为多处理机通信使能位。在模式


0


中要求该位



0




·


REM


为允许接收位,


REM



1


时串口允许接收,



0


时禁止接收。


REM



由软件置位或清零。如果在一个电路中接收和发送引脚


P3.0,P3.1


都和上位机


相连,


在软件上有串口中断 处理程序,


当要求在处理某个子程序时不允许串口被


上位机来的 控制字符产生中断,那么可以在这个子程序的开始处加入


REM=0

< br>来


禁止接收,在子程序结束处加入


REM=1


再次打开串口接收。大家也可以用上面


的实际源码加入

< br>REM=0


来进行实验。



·


RB8


接收数据位


8


,在模式


2



3


是已接收数据的第


9


位。该位可能是


奇偶位,


地址


/


数据标识位。


在模式


0


中,


RB8


为保留位没有被使用。


在模式


1


中,



SM2=0



RB8


是已接收数据的停止位。



·


TI


发送中断标识位。在模式


0


,发送完第


8


位数据时,由硬件置位。其


它模式中则是在发送停止位之初,由硬件置位。


TI


置位后,申请中断,


CPU



应中断后,发送下一帧数据。在任何模式下,


TI


都必须由软件来清除,也就是


说在数据写入到

< br>SBUF


后,


硬件发送数据,


中断响应


(如中断打开)



这时


TI=1



表明发送已完成,


TI


不会由硬件清除,所以这时必须用软件对其清零。



·


RI


接收中断标识位。在模式


0


,接收第


8


位 结束时,由硬件置位。其它


模式中则是在接收停止位的半中间,


由硬件置位。


RI=1



申请中断,< /p>


要求


CPU



走数据。


但在模式


1


中,

< p>
SM2=1


时,


当未收到有效的停止位,


则不会对


RI


置位。



.


专业


.


整理


.


下载可编辑



同样


RI


也必须要靠软件清除。常用的串口模式


1


是传输


10


个位的,


1



起始位为


0,8


位数据位,


低位在先,


1

< p>
位停止位为


1



它的波特 率是可变的,其


速率是取决于定时器


1


或定时器


2


的定时值


(溢出速率)



AT89C51



AT89C2051



51


系列芯片只有两个定时器,


定时器


0


和定时器


1



而定时器


2



89C52



列芯片才有的。




6


.中断系统



8051


单片机的中断系统简单实用,其基本特点是:有


5< /p>


个固定的可屏蔽中


断源,


3


个在片,


2


个在片外,它们在程序存储器中各有固定 的中断入口地址,


由此进入中断服务程序;


5

< br>个中断源有两级中断优先级,可形成中断嵌套;


2



特殊功能寄存器用于中断控制和条件设置的编程。


5


个中断源的符号、名称及产


生的条件如下


:


·


INT0


:外部中断


0


,由


P3



2


端口线引入,低电平或下跳沿引起。



·


INT1


:外部中断


1

< p>
,由


P3



3

< p>
端口线引入,低电平或下跳沿引起。



·


T0


:定时器/计数器


0


中断,由


T0


计满回零引起。



·


T1


:定时器/计数器

< br>l


中断,由


T1


计满回零引起。



·


TI


/< /p>


RI


:串行


I



O


中断,串行端口完成一帧字符发送/接收后引起。

< p>














.


专业


.< /p>


整理


.


下载可编辑



第三章



硬件模块



3.1


温度采集模块



温度采集模块硬件图如 图


3-1


所示





3-1


温度采集模块



3.1.1 DS18B20


简介



传统的温度检 测大多以热敏电阻为传感器,采用热敏电阻,可满足


40


℃至< /p>


90


℃测量围,但热敏电阻可靠性差,测量温度准确率低,对小于


1


℃的温度信号


不适合,还得经过专门 接口电路转换成数字信号才能由微处理器进行处理


[5]




DS18B20


数字式温度传感器,与传 统的热敏电阻有所不同的是,使用集成芯


片,采用单总线技术,其能够有效的减小外界的 干扰,提高测量的精度。同时,


它可以直接将被测温度转化成串行数字信号供微机处理, 接口简单,



使数据传


输和处理简单化 。


部分功能电路的集成,


使总体硬件设计更简洁,


能有效地降低


成本,


搭建电路和焊接电路时更快,< /p>


调试也更方便简单化,


这就缩短开发的周期。


3.1.2 DS18B20


的特点



·采用单总线 的接口方式与微处理器连接时仅需要一条口线即可实现微处


理器与


DS18B20


的双向通讯。单总线具有经济性好,抗干扰能力强,适合于恶劣


环境的现场温度测量,使用方便等优点,使用户可轻松地组建传感器网络。


·测量温度围宽,测量精度高。


DS18B20


的测量围为


-55



~+125




;在

< br>-10~+85




围,精度为 ±


0.5






·在使用中不需要任何外围元器件即可实现测温。


< p>
·多点组网功能。多个


DS18B20


可以并联在 惟一的三线上,实现多点测温。



.


专 业


.


整理


.


下载可编辑



·供电方式灵活。


DS18B20


可以通过部寄生电路从数据线上获取电源。

< p>
因此,


当数据线上的时序满足一定的要求时,


可以 不接外电源,


从而使系统结构更趋简


单,可靠性更高。



·测量参数可配置。


DS18B20


的测量分辨率可通过程序设定


9~12


位。< /p>



·负压特性。


电源极性接反时,


温度计不会因发热而烧毁,


但不能正常工作。



·掉电保护功能。


DS18B20


部 含有


EEPROM



在系统掉电以后,


它仍可保存分


辨率及报警温度的设定值


[9]




3.1.3 DS18B20


的引脚介绍



DS18 B20


实物图与管脚图如图


3-1-3


所示,


DQ


为数字信号输入


/


输出端;


GND


为电源地;

VDD


为外接供电电源输入端,


电源供电

< br>3.0~5.5V


(寄生电源接线方式


时接地)。





3-1-3 DS1820


实物图和管脚图



3.1.4 DS18B20


部结构和原理



DS18B20


的部结构如图


3-1 -4


所示,


主要由四部分组成:


64


位光刻


ROM



度传感器、


非挥发的温度报警触发器

TH



TL


< br>配置寄存器。


光刻


ROM


中的


64



序列号是出厂前被光刻好的,它可以看作是该


DS18B20


的地址序列码。


64


位光



ROM


的排列是:开始


8


位(地址:


28H


)是产品类型标号,接着的


48


位是



DS18B20


自身的序列号,


并且每个


DS18B20


的序列号都不相同,


因此它可以


看作是该


DS18B20


的地址序列码;最后


8


位则是前面


56


位的循环冗余校验码



CRC=X8+X5+X4+1




由于每一个


DS18B20



ROM


数据都各不相同,


因此微控


制器就可以 通过单总线对多个


DS18B20


进行寻址,从而实现一根 总线上挂接多



DS18B20


的 目的


[10]



.


专业


.


整理

.


下载可编辑



I/O


VD1



内部


VDD


C


VD2




64



ROM






单总线接口



存储器与控制逻辑












温度传感器


高温触发器



低温触发器



配置存储器



GND


电源检测



VDD

< br>8



CRC


发生器




3-1-4 DS18B20


部结构图




64



ROM


的位结构 如表


3-1-5


所示。开始


8


位是产品类型的编号;接着是


每个器件的唯一的序号,

< br>共有


48


位;


最后


8


位是前面


56


位的


CRC


检验码,


这也


是多个


DS18B20


可以采用单线进行通信的原因。非易失性 温度报警触发器


TH



TL

< p>
,可通过软件写入用户报警上下限数据。






MSB







LSB





MSB






LSB





MSB









LSB



3-1-5 64



ROM


的位结构图



8


位检验


CRC


48


位序列号



8


位工厂代码



10H




DS18B20


温度传 感器的部存储器还包括一个高速暂存


RAM


和一个非易失性的< /p>


可电擦除的


E2PROM




高速暂存


RAM


的结构为


9


字节的存储器,


结构如图

< p>
3-1-7


所示。



2< /p>


字节包


含测得的温度信息。


< p>
3


和第


4


字节是


TH



TL


的拷贝,< /p>


是易失的,


每次上电复


位时被刷新。第< /p>


5


字节为配置寄存器,其容用于确定温度值的数字转换分辨率,< /p>


DS18B20


工作时按此寄存器中的分辨率将温度转换为相应精 度的数值。


该字节各


位的定义如图


3- 1-6


所示,其中,低


5


位一直为


1



TM


是测试模 式位,用于设置


DS18B20


在工作模式还是在测试模式,在


DS18B20


出厂时,该位被设置为


0


,用



户不要去改动;


R1



R0


决定温度转换的 精度位数,即用来设置分辨率。



R1


R0


分辨率


/




温度最大



转换时间


/ms


.

< br>专业


.


整理


.


下载可编辑










0


0


1


1


0


1


0


1


9


10


11


12


93.75


187.5


375


750



3-1-6 DS18B20


分辨率的定义和规定





TM


R1




3-1-7 DS18B20


配置寄存器



R0


1


1


1


1


1


1



由表可见,


DS18B20


温度转换的 时间比较长,而且设置的分辨率越高,所需


温度数据转换时间就越长。

< br>因此,


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



高速暂存


RAM


的第

< br>6



7



8


字节保留未用,表现为全逻辑


1


。 第


9


字节是前



8


字节的


CRC


码,可用来检验数据 ,从而保证通信数据的正确性。




DS18B20


接收到温度转换命令后,


开始启动转换。


转换完成后的温度值就



16


位带符号扩展的二进制补码形式存储在高速暂存


RAM


的第


1



2


字节中。



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


[11]


。读数据时,低位在先,高位在后,


数据格式以


0.0625


°


C/LSB


形式表示。温度值格式如图


3-1-8


所示:



23


S


22


S


21


S


20


2-1


2-2


2-3


2-4


S


S


26


25


24



3-1-8


配置寄存器



DS18B20


测温原理如图


3-1-9


所示。


图中低温度系数晶振的振荡频率受温度


影响很小,用于产生固定频率的脉冲信号 送给计数器


1


。高温度系数晶振随温度


变化其振荡率明显改变,


所产生的信号作为计数器


2

< p>
的脉冲输入。


计数器


1


和 温


度寄存器被预置在-


55


℃所对应的 一个基数值。


计数器


1


对低温度系数晶 振产生


的脉冲信号进行减法计数,


当计数器

1


的预置值减到


0


时,

< p>
温度寄存器的值将加


1



计数器


1


的预置将重新被装入,


计数 器


1


重新开始对低温度系数晶振产生的


.


专业


.


整理


.


下载可编辑



脉冲信号进行计数,


如此循环直到计数器


2


计数到


0


时,


停止温度寄存器值的累

< br>加,


此时温度寄存器中的数值即为所测温度。



2


中的斜率累加器用于补偿和修


正测温过程中的 非线性,其输出用于修正计数器


1


的预置值。

< br>



预置



斜率累加器



比较计数器



低温度系数振荡器



减法计数器



预置



增加



减到


0


温度寄存器



停止



高温度系数振荡器



减法计数器


2



3-1-9 DS18B20


测温原理图



减到


0



3.1.5 DS18B20


使用中注意事项



DS18B20


虽然具有测温系统简单、

测温精度高、


连接方便、


占用口线少等优

< br>点,但在实际应用中也应注意以下几方面的问题:



(< /p>


1



每一次读写之前都要对


DS18B20


进行复位,


复位成功后发送一条


ROM


指令,


最后发送


RAM


指令,


这样才能对


DS18B20


进行预定的操作。


复位要求主



CPU


将数据线下拉


500 us


,然后释放,


DS18B20


收到信号后等待


16 ~60 us



右,后发出


60~240 us


的存在低脉冲,主


CPU


收到此信 号表示复位成功。(所


有的读写时序至少需要


60us


,且每个独立的时序之间至少需要


1us

< br>的恢复时


间。


在写时序时,


主机 将在下拉低总线


15us


之释放总线,


并向单总线器件写


1



若主机拉低总线后能保持至少


60us


的低电平,


则向单总线器件写


0



单总线仅


在主机发出读写时序时才向主机 传送数据,


所以,


当主机向单总线器件发出读数


据指令后,必须马上产生读时序,以便单总线器件能传输数据。)


< p>


2


)在写数据时,写


0


时单总线至少被拉低


60us





1


时,


15us


就得


释放总线。



3


)转化后得到的


12


位数据,存储在


18B20


的两个


8


比特的


RAM


中,二


进制中的前面


5


位是符号位,


如果测得的温度大于


0




5


位为


0



只要将


.


专业


.


整理


.


下载可编辑



测到的数值乘于


0.0625


即可得到实际温度;如果温度小于


0


,这


5


位为


1


,测


到的数值需要取反加


1


再乘于


0.0625


即可得到实际温度。




4


)较小的硬件开销需要相对复杂的软件进行补偿,由于

DS1820


与微处


理器间采用串行数据传送,


因此,


在对


DS1820


进行读写编程时,


必须严格的保


证读写时序,


否则将无法读取测温结果。


在使用


PL/M



C


等高级语言进行系统


程序设计时,对


DS1820


操作部分最好采用汇编语言实现。


< p>


5




DS1820


的有关资料中均未提及单总线上所挂


DS1820

< p>
数量问题,



易使人误认为可以挂任意多个


DS1820



在实际应用中并非如此。


当单总线上所



DS1820


超过


8


个时,


就需要解决微处理器的总线驱动问题,


这一点在进行多


点测温 系统设计时要加以注意。




6



连接


DS1820


的总线电缆是有长度限制的。


试验中,


当采用普通信号电


缆传输长度超过


50m


时,读取的测温 数据将发生错误。当将总线电缆改为双绞


线带屏蔽电缆时,


正常 通讯距离可达


150m



当采用每 米绞合次数更多的双绞线


带屏蔽电缆时,


正常通讯距离进一步加 长。


这种情况主要是由总线分布电容使信


号波形产生畸变造成的 。


因此,


在用


DS1820


进行长距离测温系统设计时要充分


考虑总线分布电容和阻抗匹配问题。 测温电缆线建议采用屏蔽


4


芯双绞线,其

< br>中一对线接地线与信号线,另一组接


VCC


和地线,屏蔽层在源端单点接地。




7


)在


DS1820


测温程序设计中,向


DS1820


发出温度转换命令后,程序


总要等待


DS182 0


的返回信号,一旦某个


DS1820


接触不好断线,当程序读该


DS1820


时,将没有返回信号,程序进入死循环。这一点在进行


DS1820


硬件连


接和软件设计时也要给予重视

< p>
[12]




3.2


显示模块



显示模块采用


LCD


液晶显示器来完成显示功能。



液晶显示器,或称


LCD



Liquid Crystal Display


),为平面超薄的显示设


备,


它由一定数量的彩色或黑白像素组成,


放置于光 源或者反射面前方。


液晶显


示器功耗很低,

因此倍受工程师青睐。


它的主要原理是以电流刺激液晶分子产生

点、线、面配合背部灯管组成画面。



LCD



LED


比有以下优点::



1


、造价比


LED

低廉;



2


、制造工艺比


LED


简单;



.


专业


.


整理


.


下载可编辑



3


、技术臻于成熟;



4


、维修或更换发光件非常简单,价格相对较低;



5


、省电,不产生高温;


< p>
6


、低辐射,益健康,画面柔和,不伤眼。



显示模块硬件电路图如图


3-2


所示


[8]





3-2


显示模块



3.3


键盘模块



本论文采用


4X4


的矩阵按键,实现对温度的设定。如图


3-4< /p>


所示





3-3


键盘模块



图中,按键


1


控制温度数值的加法,按一下加


1

< br>;按键


2


控制温度数值的减


.< /p>


专业


.


整理


.


下载可编辑



法,按一下减

< p>
1


;按键


5


控制


LCD


显示的光标移动,按一下向左移一位;按键


6


也控制


LCD


显示的光标移动,按 一下向右移一位。由此来实现对温度的设定。



3.4


继电器模块



如图

3-4


所示,继电器模块有


2


个开 关,


2


个发光二级管组成。当采集温度


低于设置温度时,二极管


D3


管发光,提示温度过低,开关


RL1


闭合,电直流电


机开始转动加热;当 采集温度高于设置温度时,二极管


D4


管发光,提示温度过


高,开关


RL2


闭合,风冷器开始转动降温


[6]






3-4


继电器模块














.


专业< /p>


.


整理


.


下载可编辑



第四章



软件设计



本系统软件主要由主流程、 功能子程序组成。采用主程序调用功能子程序,


子程序尽可能少的调用其它子程序,以保 证系统的稳定运行。



4.1


主程序



主程序由初始化,温度采集, 温度显示,温度设定和继电器子程序组成,为


系统软件的主干部分,其流程图如图


4-1


所示


[7]








系统初始化



发送温度采集指




读出温度值



设置温度值



显示采集温度和


设置温度



直流电机转动升温



Y


采集温度


小于



设置温度



N


风冷器转动降温





4-1


主程序流程图



.


专业


.


整理

.


下载可编辑



4.2


温度采集子程序



温度采集子程序主要 负责驱动外部的温度传感器


DS18B20


进行工作,


通过串


口通信方式向


DS18B20

< p>
写入


ROM


命令,


并读取 当前温度值,


将读取的数据存放在


26H-2EH


存储单元,其中


26H


单元存放温度值的低位,


27H


单元存放温度值的高


位,程序流程图 如图


4-2


所示。








DS1820


复位


< br>向


DS1820


写入


相应的


ROM



读出温度值并进

< br>行校验










4-2


温度采集子程序流程图




4.3


温度显示子程序


< p>
在温度控制系统中采用了


LCD


液晶显示器的左< /p>


4


位来显示采集温度,右


4

< p>
位显示键盘设定温度,这样便于两者进行比较。流程图如图


4-3


所示



LCD


初始化



温度采集



温度设置



采集数据送入


LCD


P0

< p>
口在


0X03


位显示



设置数据送入


LCD


P0

< p>
口在


0X4A


位显示



数据锁存





数据锁存





4-3


温度显示子程序流程图



.

< p>
专业


.


整理


.


下载可编辑



4.4


键盘子程序



这里主要判断键盘是否按 下以及去抖。流程图如图


4-4


所示








N


按键


1


是否


按下



Y


按键标示符为


1


延时


10ms


N

< br>按键


1


是否


按下



Y


按键


1


按下标识


符为


0


,按键有












4-4


键盘子程序流程图




4.5


温度比较子程序


< p>
温度比较子程序的任务是将采集温度和设置温度两者进行比较。


如果采集温


度比设定温度要低,则加热指示灯


D3


亮起,继电器电路中的直流电机开始转动


加热;如果采集温度比设定温度要高,则指示灯


D4


亮起,继电器电路中的风冷


器开始 运转降温。温度比较子程序流程图如图


4-5


所示





.

< br>专业


.


整理


.


下载可编辑










当前温度



判断温度是否过高


(设置温度减当前


温 度)



Y


N


指示灯


D3


亮起



风冷器转动



Y

判断温度是否过低


(当前温度减设置


温度)



指示灯


D4


亮起

< p>


直流电机转动










4-5


温度比较子程序流程图




4.6


继电器子程序



当采集温度低于设置温度时,二极管


D3


管发光,提 示温度过低,开关


RL1


闭合,电直流电机开始转动加热;当采 集温度高于设置温度时,二极管


D4


管发


光,提示温度过高,开关


RL2


闭合,风冷器开始转动降温。 继电器流程图比较简


单,这里就不给出。






.


专业


.


整理


.


下载可编辑



第五章



仿真结果与结论分析



5.1


仿真结果




通过结合硬件电路以及程序,在开发板上实现了仿真,仿真结果与理论较


一致。仿真结 果如图


5-1


和图


5-2


所示。在图


5-1


中,


LC D


液晶显示器左上角显


示的是


DS18 20


采集的室温度,在右下角显示的是由图右下方


4X2


的黑色按键设


置的温度。


K5


表示温度加


1



K6


表示温度减


1



K7< /p>


表示光标左移,


K8


表示光标

< p>
右移。采集温度显示的是


28


℃,而设置的是


20


℃,小于采集温度。这时指示灯


D1< /p>


亮起,


电机开始工作加热。


在图


5-2


中,


LCD


液晶 显示器左上角显示的是


DS1820


采集的室温度,在右下角依 然显示的是由图右下方


4X2


的黑色按键设置的温度。


采集温度显示的是


28


℃,

而设置温度是


40


℃。


这时指示灯


D4


亮起,


电机开始工


作降温。






5-1


温度过低






.


专业


.< /p>


整理


.

-


-


-


-


-


-


-


-



本文更新与2021-02-18 16:48,由作者提供,不代表本网站立场,转载请注明出处:https://www.bjmy2z.cn/gaokao/665617.html

智能温度控制系统设计说明的相关文章