智能温度报警系统课程设计文档格式.docx
《智能温度报警系统课程设计文档格式.docx》由会员分享,可在线阅读,更多相关《智能温度报警系统课程设计文档格式.docx(34页珍藏版)》请在冰豆网上搜索。
![智能温度报警系统课程设计文档格式.docx](https://file1.bdocx.com/fileroot1/2022-12/14/0a8b2f46-a980-405f-a5dc-af1c4cf8c3a7/0a8b2f46-a980-405f-a5dc-af1c4cf8c3a71.gif)
3.印刷电路图PCB一份。
完成期限:
指导教师签名:
课程负责人签名:
2013年12月
摘要
随着社会的发展和技术的进步,人们越来越注重温度检测与显示的重要性。
温度检测与状态显示技术与设备已普遍应用于各行各业,市场上的产品层出不穷。
温度检测及显示也逐渐采用自动化控制技术来实现监控。
对现代社会来说,不管是医学还是工业,温度的检测与监控尤为重要。
本文设计了一种基于51系列单片机的无线智能精密温控系统,可对外界温度进行测量、误差修正、判定传感器故障与高温报警,并具有键盘控制数码管显示功能。
该系统采用了智能数字温度传感器DSl8820来对温度数据进行采集,并把采集的信号直接送入单片机进行处理,实时显示温度值,可以通过按键切换摄显示摄氏或华氏温度,并且拥有记忆同能,关机或者复位后设置温度仍然不变。
本系统由单片机最小系统、温度采集、自动报警以及显示模块组成。
实现功能:
温度实时显示;
可设定温度的上限或下限,当温度超过设定域值时发出声光报警信号;
测量温度值可通过警报鸣响和报警灯发出讯息。
关键词:
单片机;
DSl8B20;
报警
Abstract
Withthesocialdevelopmentandtechnologicalprogress,thereisagrowingemphasisontheimportanceoftemperaturemeasurementanddisplay.Temperaturedetectionandstatusdisplaytechnologyandequipmenthavebeenwidelyusedinvariousindustries,productsonthemarketafteranother.Temperaturemeasurementanddisplaytechnologyhasgraduallyachievedbyautomaticcontrolmonitoring.Modernsociety,whethermedicalorindustrialtemperaturedetectionandcontrolisparticularlyimportant.
Thispaperpresentsaseriesofsingle-chipbasedon51wirelessintelligentprecisiontemperaturecontrolsystem,whichcanbemeasuredontheoutsidetemperature,errorcorrection,andtemperaturesensorfailurealarmdeterminationandkeyboardcontrolwithdigitaldisplay.ThesystemusesanintelligentdigitaltemperaturesensorDSl8820tocollectdataonthetemperatureandthesignalacquisitiondirectlyintothemicrocontrollerforprocessing,real-timedisplaytemperaturevalues,accordingtotheparameterssettocompletethecorrespondingintelligentcontrol.Thesystemconsistsofthesmallestsingle-chipsystems,temperatureacquisition,automaticalarmanddisplaymodule.Functions:
Real-timetemperaturedisplay;
maysetupperorlowertemperatureaudiblealarmsignalwhenthetemperatureexceedsthesetthreshold;
measuringtemperaturevaluescanbesentamessagebysirensandwarninglights.
KeywordsMicroprocessor;
nRF905
1绪论
1.1背景及意义
对现代社会来说,不管是医学还是工业温度的检测与监控尤为重要。
本课题就是一个温度检测及状态显示监控系统,该系统由无线接收和发射模块、语音播报、温度采集、自动报警以及显示模块组成。
由于单片机技术比较成熟,在价格方面也比较低廉,而且易于控制,所以选用一块8051单片机来控制外围的电路。
系统硬件设计主要包括温度传感器模块、单片机系统模块、显示电路模块等。
系统利用了当今成熟的先进技术,具有高度的可靠性,其温度显示、各种报警功能及各项可用性指标均达到相关的规定。
同时简洁、实用、性能价格比高也是其优点。
另外,在单片机程序设计方面采用C语言。
该课题的设计是对电子信息工程专业主干课程电子技术基础、单片机原理与应用、程序设计语言(C语言)以及相关课程设计等的延伸与拓展,是将理论与技术联系生产实际的主要内容,对我们的基础知识及相关专业知识的实际应用、计算机应用能力、文献资料检索等均有较高的提升。
1.2工作原理
无线温度采集系统是一种基于射频技术的无线温度检测装置。
本系统由传感器和接收机,以及显示芯片组成。
传感器部分由数字温度传感器芯片18B20、单片机89C52组成,传感器采用电源供电;
接收机无线接收来自传感器的温度数据,经过处理、保存后在数码管上显示,所存储的温度数据通过报警装置传出警报信息。
温度的采集主要基于单线数字温度传感器DS18B20芯片。
Dallas半导体公司的单线数字温度传感器DS18B20是世界上第一片支持“一线总线”接口的温度传感器。
一线总线独特而且经济的特点,使用户可轻松地组建传感器网络,为测量系统的构建引入全新概念。
DS18B20支持“一线总线”接口,测量温度范围为-55°
C~+125°
C,在-10~+85°
C范围内,精度为±
0.5°
C。
现场温度直接以“一线总线”的数字方式传输,大大提高了系统的抗干扰性,适合于恶劣环境的现场温度测量,支持3V~5.5V的电压范围,DS18B20可以程序设定9~12位的分辨率,精度为±
数字单总线温度传感器是目前最新的测温器件,它集温度测量,A/D转换于一体,具有单总线结构,数字量输出,直接与微机接口等优点。
既可用它组成单路温度测量装置,也可用它组成多路温度测量装置,文章介绍的单路温度测量装置已研制成产品,产品经测试在-10°
C~70°
C间测得误差为0.25°
C,80°
C≤T≤105°
C时误差为0.5°
C,当T>
105°
C误差为增大到1°
C左右。
经温度传感器采集温度并由单片机处理后,温度数据信息将在数码管显示芯片上进行显示。
数码管也称LED数码管,晶美、光电、不同行业人士对数码管的称呼不一样,其实都是同样的产品。
数码管按段数可分为七段数码管和八段数码管,八段数码管比七段数码管多一个发光二极管单元(多一个小数点显示);
按能显示多少个“8”可分为1位、2位、3位、4位、5位、6位、7位等数码管按发光二极管单元连接方式可分为共阳极数码管和共阴极数码管。
共阳数码管是指将所有发光二极管的阳极接到一起形成公共阳极(COM)的数码管,共阳数码管在应用时应将公共极COM接到+5V,当某一字段发光二极管的阴极为低电平时,相应字段就点亮,当某一字段的阴极为高电平时,相应字段就不亮。
共阴数码管是指将所有发光二极管的阴极接到一起形成公共阴极(COM)的数码管,共阴数码管在应用时应将公共极COM接到地线GND上,当某一字段发光二极管的阳极为高电平时,相应字段就点亮,当某一字段的阳极为低电平时,相应字段就不亮。
本系统采用了两块4位共阴极数码管显示实时温度。
本系统的温度采集与显示,监控和报警功能均有STC89C52单片控制完成。
相比较而言STC公司的89C51更实用,因它不但和8051指令、管脚完全兼容,而且其片内的4K程序存储器是Flash工艺的,这种工艺的存储器用户可以用电的方式瞬间擦除、改写,一般专为STC89xx做的编程器均带有这些功能。
显而易见,这种单片机对开发设备的要求很低,开发时间也大大缩短。
写入单片机内的程序还可以进行加密,这又很好地保护了我们的劳动成果。
2系统硬件设计
2.1电源电路
78XX系列集成稳压器的典型应用电路如下图所示,这是一个输入电压为220V输出正9V直流电压的稳压电源电路。
IC采用集成稳压器7805,C2~C5分别为输入端和输出
端滤波电容,D3为电源指示。
当输出电较大时,7805应配上散热板。
图2-1电源电路
2.1主控制器STC89C52
2.1.1系统结构图
如下所示为单片机温度监控报警系统的系统图,分别由单片机最小系统和报警系统,其他工能模块见后述。
图2-2系统结构
2.1.3功能特性描述
STC89C52是一种低损耗、高性能、CMOS八位微处理器,片内有4k字节的在线可重复编程、快速擦除快速写入程序的存储器,能重复写入/擦除1000次,数据保存时间为十年。
它与MCA-51系列单片机在指令系统和引脚上完全兼容,不仅可完全代替MCS-51系列单片机,而且能使系统具有许多MCS-51系列产品没有的功能。
STC89C52可构成真正的单片机最小应用系统,缩小系统体积,增加系统的可靠性,降低系统的成本。
只要程序长度小于4K,四个I/O口全部提供给用户。
可用5V电压编程,而且擦写时间仅需10毫秒,仅为8751/87C51的擦除时间的百分之一,与8751/87C51的12V电压擦写相比,不易损坏器件,没有两种电源的要求,改写时不拔下芯片,适合许多嵌入式控制领域。
工作电压范围宽(2.7V~6V),全静态工作,工作频率宽在0Hz~24MHz之间,比8751/87C51等51系列的6MHz~12MHz更具有灵活性,系统能快能慢。
STC89C52芯片提供三级程序存储器加密,提供了方便灵活而可靠的硬加密手段,能完全保证程序或系统不被仿制。
P0口是三态双向口,通称数据总线口,因为只有该口能直接用于对外部存储器的读/写操作。
2.1.4各引脚功能
VCC:
电源
GND:
地
P0口:
P0口是一个8位漏极开路的双向I/O口。
作为输出口,每位能驱动8个TTL逻辑电平。
对P0端口写“1”时,引脚用作高阻抗输入。
当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。
在这种模式下,P0具有内部上拉电阻。
在flash编程时,P0口也用来接收指令字节;
在程序校验时,输出指令字节。
程序校验时,需要外部上拉电阻。
P1口:
P1口是一个具有内部上拉电阻的8位双向I/O口,P1输出缓冲器能驱动4个TTL逻辑电平。
对P1端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。
作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。
此外,P1.0和P1.2分别作定时器/计数器2的外部计数输入(P1.0/T2)和时器/计数器2的触发输入(P1.1/T2EX),具体如下表所示:
P2口:
P2口是一个具有内部上拉电阻的8位双向I/O口,P2输出缓冲器能驱动4个TTL逻辑电平。
对P2端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。
在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVX@DPTR)时,P2口送出高八位地址。
在这种应用中,P2口使用很强的内部上拉发送1。
在使用8位地址(如MOVX@RI)访问外部数据存储器时,P2口输出P2锁存器的内容。
在Flash编程和校验时,P2口也接收高8位地址字节和一些控制信号。
P3口:
P3口是一个具有内部上拉电阻的8位双向I/O口,P2输出缓冲器能驱动4个TTL逻辑电平。
对P3端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。
P3口亦作为AT89C52特殊功能(第二功能)使用,如下表所示。
表2-1P3口特殊功能
引脚号
第二功能
P3.0
RXD(串行输入)
P3.1
TXD(串行输出)
P3.2
(外部中断0)
P3.3
(外部中断1)
P3.4
T0(定时器0外部输入)
P3.5
T1(定时器1外部输入)
P3.6
(外部数据存储器写选通)
P3.7
(外部数据存储器读选通)
RST:
复位输入。
晶振工作时,RST脚持续2个机器周期高电平将使单片机复位。
看门狗计时完成后,RST脚输出96个晶振周期的高电平。
特殊寄存器AUXR(地址8EH)上的DISRTO位可以使此功能无效。
DISRTO默认状态下,复位高电平有效。
ALE/
:
地址锁存控制信号(ALE)是访问外部程序存储器时,锁存低8位地址的输出脉冲。
在flash编程时,此引脚(
)也用作编程输入脉冲。
在一般情况下,ALE以晶振六分之一的固定频率输出脉冲,可用来作为外部定时器或时钟使用。
然而,特别强调,在每次访问外部数据存储器时,ALE脉冲将会跳过。
如果需要,通过将地址为8EH的SFR的第0位置“1”,ALE操作将无效。
这一位置“1”,ALE仅在执行MOVX或MOVC指令时有效。
否则,ALE将被微弱拉高。
这个ALE使能标志位(地址为8EH的SFR的第0位)的设置对微控制器处于外部执行模式下无效。
:
外部程序存储器选通信号(
)是外部程序存储器选通信号。
当AT89C52从外部程序存储器执行外部代码时,
在每个机器周期被激活两次,而在访问外部数据存储器时,
将不被激活。
EA/VPP:
访问外部程序存储器控制信号。
为使能从0000H到FFFFH的外部程序存储器读取指令,EA必须接GND。
为了执行内部程序指令,EA应该接VCC。
在Flash编程期间,EA也接收12伏VPP电压。
XTAL1:
振荡器反相放大器和内部时钟发生电路的输入端。
XTAL2:
振荡器反相放大器的输出端。
2.2单总线数字温度传感器DSl8B20
2.2.1功能特性描述
无线温度的采集主要基于单线数字温度传感器DS18B20芯片。
DS18B20支持“一线总线”接口,测量温度范围为-55°
C范围内,精度为±
数字单总线温度传感器是目前最新的测温器件,它集温度测量、A/D转换于一体,具有单总线结构、数字量输出、直接与微机接口等优点。
既可用它组成单路温度测量装置,也可用它组成多路温度测量装置,文章介绍的单路温度测量装置已研制成产品,产品经测试在-10°
C,80°
C,当T>
其主要件能指标:
●独特的单线接口仅需要一个端口引脚进行通信;
●多个DS18B20可以并联在惟一的三线上,实现多点组网功能;
●无须外部器件;
●可通过数据线供电,电压范围为3.0~5.5V;
●零待机功耗;
●温度以9或12位数字;
●用户可定义报警设置;
●报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件;
●负电压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作。
2.2.2引脚结构
DS18B20采用如图2-2所示的3脚PR-35封装或8脚SOIC封装。
DQ为数字信号输入/输出端;
GND为电源地;
VDD为外接供电电源输入端(在寄生电源接线方式时接地)。
光刻ROM中的64位序列号是出厂前被光刻好的,它可以看作是该DS18B20的地址序列码。
64位光刻ROM的排列是:
开始8位(28H)是产品类型标号,接着的48位是该DS18B20自身的序列号,最后8位是前面56位的循环冗余校验码(CRC=X8+X5+X4+1)。
DS18B20中的温度传感器可完成对温度的测量,以12位转化为例:
用16位符号扩展的二
进制补码读数形式提供,以0.0625°
C/LSB形式表达,其中S为符号位。
12位转化后得到的12位数据,存储在18B20的两个8比特的RAM中,二进制中的前面5位是符号位,如果测得的温度大于0,这5位为0,只要将测到的数值乘于0.0625即可得到实际温度;
如果温度小于0,这5位为1,测到的数值需要取反加1再乘于0.0625即可得到实际温度。
图2-3DS18B20芯片
DS18B20温度传感器的存储器:
DS18B20温度传感器的内部存储器包括一个高速暂存RAM和一个非易失性的可电擦除的E2RAM,后者存放高温度和低温度触发器TH、TL和结构寄存器。
暂存存储器包含了8个连续字节,前两个字节是测得的温度信息,第一个字节的内容是温度的低八位,第二个字节是温度的高八位。
第三个和第四个字节是TH、TL的易失性拷贝,第五个字节是结构寄存器的易失性拷贝,这三个字节的内容在每一次上电复位时被刷新。
第六、七、八个字节用于内部计算。
第九个字节是冗余检验字节。
低五位一直都是1,TM是测试模式位,用于设置DS18B20在工作模式还是在测试模式。
在DS18B20出厂时该位被设置为0。
R1和R0用来设置分辨率,如表2-2所示:
表2-2分辨率设置表
R1
R0
分辨率
温度最大转换时间
9位
96.75ms
1
10位
187.5ms
11位
375ms
12位
750ms
图2-4DS18B20模块
根据DS18B20的通讯协议,主机控制DS18B20完成温度转换必须经过三个步骤:
每一次读写之前都要对DS18B20进行复位,复位成功后发送一条ROM指令,最后发送RAM指令,这样才能对DS18B20进行预定的操作。
复位要求主CPU将数据线下拉500微秒,然后释放,DS18B20收到信号后等待16~60微秒左右,后发出60~240微秒的存在低脉冲,主CPU收到此信号表示复位成功。
在硬件上,DS18B20与单片机的连接有两种方法,一种是Vcc接外部电源,GND接地,I/O与单片机的I/O线相连;
另一种是用寄生电源供电,此时Vcc、GND接地,I/O接单片机I/O。
无论是内部寄生电源还是外部供电,I/O口线要接5KΩ左右的上拉电阻。
单片机对DS18B20的访问流程是:
先对DS18B20初始化,再进行ROM操作命令,最后才能对存储器操作,数据操作。
DS18B20每一步操作都要遵循严格的工作时序和通信协议。
如主机控制DS18B20完成温度转换这一过程,根据DS18B20的通讯协议,须经三个步骤:
DS18B20有六条控制命令,如表2-3所示:
表2-3DS18B20控制命令
指令
约定代码
操作说明
温度转换
44H
启动DS18B20进行温度转换
读暂存器
BEH
读暂存器9个字节内容
写暂存器
4EH
将数据写入暂存器的TH、TL字节
复制暂存器
48H
把暂存器的TH、TL字节写到E2RAM中
重新调E2RAM
B8H
把E2RAM中的TH、TL字节写到暂存器TH、TL字节
读电源供电方式
B4H
启动DS18B20发送电源供电方式的信号给主CPU
2.3存储模块AT24C02
图2-5AT24C02存储模块
AT24C02支持I2C,总线数据传送协议I2C,总线协议规定任何将数据传送到总线的器件作为发送器。
任何从总线接收数据的器件为接收器。
数据传送是由产生串行时钟和所有起始停止信号的主器件控制的。
主器件和从器件都可以作为发送器或接收器,但由主器件控制传送数据(发送或接收)的模式,由于A0、A1和A2可以组成000~111八种情况,即通过器件地址输入端A0、A1和A2可以实现将最多8个AT24C02器件连接到总线上,通过进行不同的配置进行选择器件。
表2-4AT24C02引脚说明
管脚名称
功能
A0A1A2
器件地址选择
SDA
串行数据/地址
SCL
串行时钟
WP
写保护
Vcc
+1.8V~6.0V工作电压
Vss
SCL串行时钟
AT24C02串行时钟输入管脚用于产生器件所有数据发送或接收的时钟,这是一个输入管脚。
SDA串行数据/地址
AT24C02双向串行数据/地址管脚用于器件所有数据的发送或接收,SDA是一个开漏输出管脚,可与其它开漏输出或集电极开路输出进行线或(wire-OR)。
A0、A1、A2器件地址输入端
这些输入脚用于多个器件级联时设置器件地址,当这些脚悬空时默认值为0。
当使用AT24C02时最大可级联8个器件。
如果只有一个AT24C02被总线寻址,这三个地址输入脚(A0、A1、A2)可悬空或连接到Vss,如果只有一个AT24C02被总线寻址这三个地址输入脚(A0、A1、A2)必须连接到Vss。
WP写保护
如果WP管脚连接到Vcc,所有的内容都被写保护只能读。
当WP管脚连接到Vss或悬空允许器件进行正常的读/写操作。
2.5USB串行通信接口PL232
PL2303是Prolific公司生产的一种高度集成的RS232-USB接口转换器,可提供一个RS232全双工异步串行通信装置与USB功能接口便利连接的解决方案。
该器件内置USB功能控制器、USB收发器、振荡器和带有全部调制解调器控制信号的UART,只需外接几只电容就可实现USB信号与RS232