基于单片机的温度检测系统.docx
《基于单片机的温度检测系统.docx》由会员分享,可在线阅读,更多相关《基于单片机的温度检测系统.docx(41页珍藏版)》请在冰豆网上搜索。
![基于单片机的温度检测系统.docx](https://file1.bdocx.com/fileroot1/2023-1/4/d2ff2f21-2a59-45a1-a6a4-c170c0518124/d2ff2f21-2a59-45a1-a6a4-c170c05181241.gif)
基于单片机的温度检测系统
基于单片机的温度检测系统
摘要
随着时代的进步和发展,单片机技术已经普及到我们生活,工作,科研,各个领域,已经成为一种比较成熟的技术。
单片机在温度检测方面得到广泛应用。
本文将介绍一种基于单片机控制的数字温度计,提出一种基于单片机并采用数字化温度测控系统应用于室温检测的设计方案,该方案是利用温度传感器将室内温度的变化,变换成电压的变化,其值由单片机处理,最后由单片机去控制数字显示器,显示室内的实际温度。
该系统具有温度上、下限报警功能。
本文从硬件和软件两方面详细叙述了基于AT89C51的温度检测系统,该系统以DS18B20为温度检测装置,并附加了温度显示和超温报警功能。
温度采集传感器DS18B20直接以单线连接的方式进行信号传输,采用数字化数据传送方式大大提高了系统的抗干扰性。
因此,数字化单总线器件DS18B20适合于各种环境的现场温度测量。
它在测温精度、转换时间、传输距离、分辨率等方面较以前的温度传感器都有了很大的改进,系统具有结构简单,运行可靠,误差小,且成本低廉等特点。
本文还对AT89C51及DS18B20进行了详细的叙述,并对系统原理进行了仔细分析。
关键词 单片机;传感器;温度测量
Basedonsingle-chiptemperaturedetectionsystem
Abstract
Withtheprogressanddevelopment,single-chiptechnologyhasspreadtoourlives,work;researchinvariousfieldshasbecomearelativelymaturetechnology.Single-chiptemperaturetestingiswidelyused.Thisarticlewillintroducethesingle-chipmicrocomputer-basedcontrolofadigitalthermometer,andasingle-chipdigital-basedtemperaturemeasurementandcontrolsystemusedinthedesignofroomtemperaturedetectionprogram,whichistheuseoftheindoortemperaturesensortotemperaturechange,transformintochangesinvoltage,anditsvaluefromsingle-chipprocessing,andfinallybythesingle-chipmicrocomputertocontrolthedigitaldisplayshowsactualroomtemperature.Thesystemhasatemperature,thelowerlimitalarmfunction.
Inthispaper,bothhardwareandsoftwaredescribedindetailthetemperatureAT89C51-baseddetectionsystemtoDS18B20devicefortemperaturedetectionandtemperaturedisplayandanadditionalover-temperaturealarmfunction.AcquisitionsensorstemperatureDS18B20connectdirectlytothewayone-waysignaltransmission,theuseofdigitaldatatransmissionsystemgreatlyenhancedtheanti-interference.Therefore,thenumberofsingle-busdeviceDS18B20environmentsuitableforallkindsoftemperaturemeasurementsatthescene.Inthetemperaturemeasurementaccuracy,conversiontime,transmissiondistance,resolution,etc.thanbeforethetemperaturesensorhasalotofimprovement,thesystemhasasimplestructure,reliableoperation,theerrorsmall,andcharacteristicsoflow-cost.Inthispaper,AT89C51andDS18B20alsocarriedoutadetaileddescriptionofthesystemconductedacarefulanalysisofPrinciple.
KeywordsSingle-chip;Sensor;Temperaturemeasurement
不要删除行尾的分节符,此行不会被打印
摘要……
Abstract
千万不要删除行尾的分节符,此行不会被打印。
在目录上点右键“更新域”,然后“更新整个目录”。
打印前,不要忘记把上面“Abstract”这一行后加一空行
第1章绪论
1.1课题背景
在工农业生产中,温度检测及其控制占有举足轻重的地位,随着现代信息技术的飞速发展和传统工业改造的逐步实现,能够独立工作的温度检测和显示系统已经应用于诸多领域。
传统的温度检测以热敏电阻为温度敏感元件、多路模拟开关、A/D转换器及单片机等组成的系统。
传统方法精度不高,不稳定、成本高等问题,又需要后续信号处理电路,而且热敏电阻的可靠性相对较差,测量温度的准确度低,检测系统的精度差。
要达到较高的测量精度需要很好的解决引线误差补偿问题、多点测量切换误差问题和放大电路零点漂移误差等问题,使温度检测复杂化。
模拟信号在长距离传输过程中,抗电磁干扰时令设计者伤脑筋的问题,对于多点温度检测的场合,各被检测点到监测装置之间引线距离往往不同,此外,各敏感元件参数的不一致,这些都是造成误差的原因,并且难以完全清除。
今天,我们的生活环境和工作环境有越来越多称之为单片机的小电脑在为我们服务。
单片机在工业控制、尖端武器、通信设备、信息处理、家用电器等各测控域的应用中独占鳌头。
时下,家用电器和办公设备的智能化、遥控化、基于单片机的温度测控系统在室内的设计与实现模糊控制化己成为世界潮流,而这些高性能无一不是靠单片机来实现的。
单片机来对温度进行控制,不仅具有控制方便、组态简单和灵活性大等优而且可以大幅度提高被控温度的技术指标,从而能够大大提高产品的质量。
单片机以其功能强、体积小、可靠性高、造价低和开发周期短等优点,为自动化和各个测控领域中必不可少且广泛应用的器件,尤其在日常生活发挥越来越大的作用。
因此,单片机对温度的控制问题是一个工农业生产及生活中常会遇到的问题。
基于此,本课题围绕应用于室内的基于单片机的温度检测系统展开应用研究工作[1]。
1.2国外温度测量技术的发展情况
温度检测技术的关键是温度传感器,传感器是一种把非电量转变的电信号的器件,而检测仪表在模拟电路情况下,一般是包括传感器、检测点取样设备及放大器(进行抗干扰处理及信号传输),当然还有电源及现场显示部分(可选择),电信号一般分连续量、离散量两种,实际上还可分成模拟量、开关量、脉冲量等,模拟信号传输采用统一信号。
数字化过程中,检测仪表变化比较大,经过几个阶段,近来多采用ASIC专用集成电路,而且把传感器和微处理器及网络接口封装在一个器件中,完成信息获取、处理、传输、存贮等功能。
在自动化仪表中经常把检测仪称为变送器。
随着国内外工业的日益发展,温度检测技术也有了不断的进步,目前的温度检测使用的方法种类繁多,应用范围也较广泛,大致包括以下几种方法:
利用物体热胀冷缩原理制成的温度计;利用热电效应技术制成的温度检测元件;利用热阻效应技术制成的温度计;利用热辐射原理制成的高温计;利用声学原理进行温度测量;利用红外测温技术。
近年来,在温度检测技术领域,多种新的检测原理与技术的开发应用,已经取得了重大进展。
新一代温度检测元件正在不断出现和完善化,例如:
晶体管温度检测元件,集成电路温度检测元件,核磁共振温度检测器,热噪声温度检测器,石英晶体温度检测器,光纤温度检测器,激光温度检测器,微波温度检测器,纯贵金属热电偶的研究,信息技术时代自动化系统中的温度检测仪表[2]。
国外的温度检测技术从普通的室温监测到高温监测技术,从遥感监测到各种极限环境的内部监测技术,正随着新技术的出现在不断的更新及完善[4]。
1.3国内温度测量技术的发展情况
因为传感器用于各行各业,加之这些年来,家用电器、汽车、信息产业三方面的飞速发展,对传感器需求大增,所以传感器制造业发展很快,形成独立的产业,这就拉动了工业设备,特别是半导体、设备制造业的发展,所以中国特别关注传感器产业。
传感器产品品种多,采用的科学原理多,技术密集,具有多样性、边缘性、综合性和技艺性,需要多学科、多种高新技术配合,虽然具有高附加效益,但本身价格不高,所以要推动传感器产业的发展,是有难度的。
国内温度检测技术的发展方向主要集中在以下几个方面:
扩展测温范围、扩大测温对象、发展新型产品、适应特殊环境下的测温、显示数字化和标定自动化。
根据以上情况根,国内温度仪表制造商将向以下几方面发展:
继续生产量大面广的传统的温度检测元件,如:
热电偶、热电阻、热敏电阻等;加强新原理、新材料、新加工工艺的开发,如近来已经开发的炭化硅薄膜热敏电阻温度检测器,厚膜、薄膜铂电阻温度检测器,硅单晶热敏电阻温度检测器等;向智能化、集成化、适用化方向发展,新产品不仅要具有检测功能,又要具有判断和指令等多功能,采用微机向智能化方向发展,向机电一体化方向发展。
但总的来说,国内的技术还是落后国外技术一节。
例如,在烘炉内温度检测问题上,我国采用的一般是定点测量,即在炉壁上留出测量孔,传感器通过测量孔伸到炉膛内,对温度进行测量。
这种测量方法的缺点一是测量孔多了将影响烘炉的保温性能,二是它测量的温度,在烘炉长度区间分布上,不是连续的量和存在测量死区,另外它无法测量烘炉内产品自身的温度。
我国在此方而的技术与国外相比有很大的差距。
虽然我国在理论方面紧跟国外的步伐,但研究的方向是针对专门的行业,技术的应用没有普遍性。
1.4论文研究内容
本文主要研究的内容是基于单片机的温度检测系统设计,通过对温度传感器的介绍以及对多点温度测量的系统设计工作的研究,实现以单片机为控制器的室内环境温度实时检测系统。
论文主要研究的内容包括:
温度传感器、单片机、显示系统,使整个温度检测系统能够对室内的温度进行采集,将采集的信号传输到单片机,再由显示电路显示环境的实际温度。
并可以通过比较,对环境的温度是否超过温度限制进行分析。
如果超过我们设定的温度限制,温度报警系统将进行报警,提醒人们进行控制。
这种设计方案实现了温度实时测量、显示和超温报警。
该系统抗干扰能力强,具有较高的测量精度,安装简单方便,性价比高,可维护性好。
这种温度测控系统可应用于对温度有要求的实验室,实现对温度的实时控制,是一种比较智能、经济的方案,是一个具有较高精度、能够实现远距离多点温度检测系统,以满足小型环境温度监测需要的系统。
相对于其他的温度检测系统,本课题注意了温度检测系统的性能的提高,注重温度检测的远程化,合理考虑系统的制作成本和使用的方便性。
第2章传感器及相关器件介绍
2.1温度传感器的选择
测量温度的关键是温度传感器,温度传感器的发展主要大体经过了三个阶段,第一阶段为传统的分立式温度传感器(含敏感元件),第二阶段为模拟集成温度传感器/控制器,第三阶段为智能温度传感器。
模拟集成传感器是采用硅半导体集成工艺而制成的,因此亦称硅传感器或单片成温度传感器。
模拟集成温度传感器是在20世纪80年代问世的,它是将温度传感器集成在一个芯片上,可完成温度测量及模拟信号输出功能的专用IC。
模拟集成温度传感器的主要特点是功能单一(仅测量温度)、测温误差小、价格低、响应速度快、传输距离远、体积小、微功耗等,适合远距离测温、控温,不需要进行非线性校准,外围电路简单。
它是目前在国内外应用最为普遍的一种集成传感器,典型产品有AD59O、AD592、TMP17、LM135等。
模拟集成温度控制器主要包括温控开关和可编程温度控制器,典型产品有LM56、AD22105和MAX6509。
某些增强型集成温度控制器(例如TC652/653)中还包含了D转换器以及固化好的程序,这与智能温度传感器有某些相似之处[5]。
但它自成系统,工作时并不受微处理器的控制,这是二者的主要区别。
智能温度传感器(亦称数字温度传感器)是在20世纪90年代中期问世的。
它是微电子技术、计算机技术和自动测试技术(ATE)的结晶。
目前,国际上已开发出多种智能温度传感器系列产品。
智能温度传感器内部都包含温度传感器、刀D转换器、信号处理器、存储器(或寄存器)和接口电路。
有的产品还带多路选择器、中央控制器(CPU)、随机存取存储器(RAM)和只读存储器(ROM)。
智能温度传感器的特点是能输出温度数据及相关的温度控制量,适配各种微控制器(MCU);并且它是在硬件的基础上通过软件来实现测试功能的,其智能化程度也取决于软件的开发水平。
目前,国际上新型温度传感器正从模拟式向数字式、从集成化向智能化和网络化的方向飞速发展。
智能温度传感器DS18B20正是朝着高精度、多功能、总线标准化、高可靠性及安全性、开发虚拟传感器和网络传感器、研制单片测温系统等高科技的方向迅速发展。
基于以上,本文选定DS18B20温度传感器为应用芯片。
2.1.1DS18B20温度传感器简介
DS18B20是美国DALLAS半导体公司继DS1820之后最新推出的一种数字化单总线器件,属于新一代适配微处理器的改进型智能温度传感器。
与传统的热敏电阻相比,它能够直接读出被测温度,并且可根据实际要求通过简单的编程实现9-12位的数字值读数方式。
可以分别在93.75ms和750ms内完成9位和12位的数字量,并且从DSl8B20读出的信息或写入DSl8B20的信息仅需要一根口线(单线接口)读写,温度变换功率来源于数据总线,总线本身也可以向所挂接的DS18B20供电,而无需额外电源。
因而使用DS18B20可使系统结构更趋简单,可靠性更高。
同时其一线总线独特而且经济的特点,使用户可轻松地组建传感器网络,为测量系统的构建引入了全新的概念。
DS18B20一线总线数字化温度传感器支持一线总线接口,测量温度范围为-55℃-125℃,在-10℃-85℃范围内,精度为土0.5℃。
现场温度直接以一线总线的数字方式传输,用符号扩展的16位数字方式串行输出,大大提高了系统的抗干扰性。
因此,数字化单总线器件DS18B20适合于恶劣环境的现场温度测量,如:
环境控制、设备或过程控制、测温类消费电子产品等。
它在测温精度、转换时间、传输距离、分辨率等方面较DSl820都有了很大的改进,给用户带来了更方便和更令人满意的效果。
可广泛用于工业、民用、军事等领域的温度测量及控制仪器、测控系统和大型设备中。
2.1.2DS18B20的性能特点
DS18B20的性能特点如下:
1.采用DALLAS公司独特的单线接口方式:
DS18B20与微处理器连接时。
需要一条口线即可实现微处理器与DS18B20的双向通讯。
2.在使用中不需要任何外围元件。
3.可用数据线供电,供电电压范围:
+3.0到+5.5V,零待机功耗。
4.测温范围:
-55℃到+l25℃。
固有测温分辨率为0.5℃。
当在-10℃到+85℃围内,可确保测量误差不超过0.5℃,在-55℃到+125℃范围内,测量误差也不过2℃。
5.通过编程可实现9-12位的数字读数方式。
6.用户可自设定非易失性的报警上下限值。
7.支持多点组网功能,多个DSI8B20可以并联在唯一的三线上,实现多点测温。
8.负压特性,即具有电源反接保护电路。
当电源电压的极性反接时,能保DS18B20不会因发热而烧毁。
但此时芯片无法正常工作。
9.DS18B20的转换速率比较高,进行9位的温度转换仅需93.75ms。
10.适配各种单片机或系统。
2.1.3DS18B20的管脚排列
DS18B20采用3脚PR-35封装或8脚SOIC封装。
其管脚排列如图2-1所示。
I/O为数据输入/输出端(即单线总线),它属于漏极开路输出,外接上拉电阻后,常态下呈高电平。
UDD是可供选用的外部电源端,不用时接地,GND为地,NC空脚。
图2-1DS18B20管脚图
2.1.4DS18B20的内部结构
DS1SB20的内部结构框图如下图所示,它主要包括7部分:
1.寄生电源;2.温度感器;3.64位激光(loser)ROM与单线接口;4.高速暂存器,即便筏式RAM,用于存放中间数据;5.TH触发寄存器和TL触发寄存器,分别用来存储用户设定的温度上下限值;6.存储和控制逻辑;7.8位循环冗余校验码(CRC)发生器。
图2-2DS18B20内部结构图
64位ROM的结构开始8位是产品类型的编号,接着是每个器件的惟一的序号,共有48位,最后8位是前面56位的CRC检验码,这也是多个DS18B20可以采用一线进行通信的原因。
温度报警触发器TH和TL,可通过软件写入户报警上下限。
DS18B20温度传感器的内部存储器还包括一个高速暂存RAM和一个非易失性的可电擦除的EERAM。
高速暂存RAM的结构为8字节的存储器。
头2个字节包含测得的温度信息,第3和第4字节TH和TL的拷贝,是易失的,每次上电复位时被刷新。
第5个字节,为配置寄存器,它的内容用于确定温度值的数字转换分辨率。
DS18B20工作时寄存器中的分辨率转换为相应精度的温度数值。
该字节各位的定义如图3所示。
低5位一直为1,TM是工作模式位,用于设置DS18B20在工作模式还是在测试模式,DS18B20出厂时该位被设0,用户要去改动,R1和R0决定温度转换的精度位数,来设置分辨率。
表2-1DS18B20字节定义
温度LSB
温度MSB
TH用户字节1
TL用户字节2
配置寄存器
保留
保留
保留
CRC
DS18B20温度转换的时间比较长,而且分辨率越高,所需要的温度数据转换时间越长。
因此,在实际应用中要将分辨率和转换时间权衡考虑。
高速暂存RAM的第6、7、8字节保留未用,表现为全逻辑1。
第9字节读出前面所有8字节的CRC码,可用来检验数据,从而保证通信数据的正确性。
当DS18B20接收到温度转换命令后,开始启动转换。
转换完成后的温度值就以16位带符号扩展的二进制补码形式存储在高速暂存存储器的第1、2字节。
单片机可以通过单线接口读出该数据,读数据时低位在先,高位在后,数据格式以0.0625℃/LSB形式表示[7]。
当符号位S=0时,表示测得的温度值为正值,可以直接将二进制位转换为十进制;当符号位S=1时,表示测得的温度值为负值,要先将补码变成原码,再计算十进制数值。
表2-2是一部分温度值对应的二进制温度数据。
表2-2DS18B20温度转换时间表
DS18B20完成温度转换后,就把测得的温度值与RAM中的TH、TL字节内容作比较。
若T>TH或T因此,可用多只DS18B20同时测量温度并进行报警搜索。
在64位ROM的最高有效字节中存储有循环冗余检验码(CRC)。
主机ROM的前56位来计算CRC值,并和存入DS18B20的CRC值作比较,以判断主机收到的ROM数据是否正确。
DS18B20的测温原理是这样的,器件中低温度系数晶振的振荡频率受温度的影响很小,用于产生固定频率的脉冲信号送给减法计数器1;高温度系数晶振随温度变化其振荡频率明显改变,所产生的信号作为减法计数器2的脉冲输入。
器件中还有一个计数门,当计数门打开时,DS18B20就对低温度系数振荡器产生的时钟脉冲进行计数进而完成温度测量。
计数门的开启时间由高温度系数振荡器来决定,每次测量前,首先将-55℃所对应的一个基数分别置入减法计数器1、温度寄存器中,计数器1和温度寄存器被预置在-55℃所对应的一个基数值。
减法计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当减法计数器1的预置值减到0时,温度寄存器的值将加1,减法计数器1的预置值将重新被装入,减法计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到减法计数器计数到0时,停止温度寄存器的累加,此时温度寄存器中的数值就是所测温度值。
其输出用于修正减法计数器的预置值,只要计数器门仍未关闭就重复上述过程,直到温度寄存器值大致等于被测温度值。
另外,由于DS18B20单线通信功能是分时完成的,它有严格的时隙概念,因此读写时序很重要。
系统对DS18B20的各种操作按协议进行。
操作协议为:
初使化DS18B20(发复位脉冲)→发ROM功能命令→发存储器操作命令→处理数据[10]。
表2-3 一部分温度对应值表
温度/℃
二进制表示
十六进制表示
+125
0000011111010000
07D0H
+85
0000010101010000
0550H
+25.0625
0000000110010000
0191H
+10.125
0000000010100001
00A2H
+0.5
0000000000000010
0008H
0
0000000000001000
0000H
-0.5
1111111111110000
FFF8H
-10.125
1111111101011110
FF5EH
-25.0625
1111111001101111
FE6FH
-55
1111110010010000
FC90H
2.1.5DS18B20的测温原理
DS18B20的测温原理如图2-4所示。
图2-4DS18B20测温原理图
图中低温度系数晶振的振荡频率受温度的影响很小,用于产生固定频率的脉冲信号送给减法计数器1,高温度系数晶振的振荡频率随温度变化而明显改变,所生的信号作为减法计数器2的脉冲输入。
图中还隐含着计数门,当计数门打开时,DS18B20就对低温度系数振荡器产生的时钟脉冲进行计数,进而完成温度测量。
计数门的开启时间由高温度系数振荡器来决定,每次测量前,首先将-55℃所对应的基数分别置入减法计数器1和温度寄存器中,减法计数器1和温度寄存器被预置在-55℃所对应的一个基数值。
减法计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当减法计数器1的预置值减到0时温度寄存器的值将加1减法计数器1的预置将重新被装入,减法计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到减法计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。
图中的斜率累加器用于补偿和修正测温过程中的非线性,其输出用于修正减法计数器的预置值,只要计数门仍未关闭就重复上述过程,直至温度寄存器值达到被测温度值,这就是DS18B20的测温原理。
2.1.6DS18B20的时序
由于DS18B2