基于AT89C51单片机的温度传感器.doc
- 文档编号:8854059
- 上传时间:2023-05-15
- 格式:DOC
- 页数:19
- 大小:309KB
基于AT89C51单片机的温度传感器.doc
《基于AT89C51单片机的温度传感器.doc》由会员分享,可在线阅读,更多相关《基于AT89C51单片机的温度传感器.doc(19页珍藏版)》请在冰点文库上搜索。
[键入文字]
基于AT89C51单片机的温度传感器
目录
摘 要 I
ABSTRACT II
第一章 绪论 1
1.1 课题背景 1
1.2本课题研究意义 2
1.3本课题的任务 2
1.4系统整体目标 3
第二章方案论证比较与选择 4
2.1引言 4
2.2方案设计 4
2.2.1 设计方案一 4
2.2.2设计方案二 4
2.2.3 设计方案三 4
2.3方案的比较与选择 5
2.4方案的阐述与论证 5
第三章 硬件设计 7
3.1 温度传感器 7
3.1.1温度传感器选用细则 7
3.1.2 温度传感器DS18B20 8
3.2.单片机系统设计 15
3.3显示电路设计 18
3.4键盘电路设计 20
3.5报警电路设计 21
3.6通信模块设计 22
3.6.1RS-232接口简介 22
3.6.2MAX232芯片简介 23
3.6.3PC机与单片机的串行通信接口电路 24
第四章 软件设计 26
4.1 软件开发工具的选择 26
4.2系统软件设计的一般原则 27
4..3系统软件设计的一般步骤 27
4.4软件实现 28
4.4.1系统主程序流程图 28
4.4.2传感器程序设计 28
4.4.3显示程序设计 34
4.4.4键盘程序设计 36
4.4.5报警程序设计 38
4.4.6通信模块程序设计 39
第五章调试与小结 41
致谢 42
参考文献 43
附录 44
系统电路图 44
系统程序 45
15
摘要
基于AT89C51单片机的温度传感器
摘 要
随着社会的进步和工业技术的发展,人们越来越重视温度因素,许多产品对温度范围要求严格,而目前市场上普遍存在的温度检测仪器大都是单点测量,同时有温度信息传递不及时、精度不够的缺点,不利于工业控制者根据温度变化及时做出决定。
在这样的形式下,开发一种能够同时测量多点,并且实时性高、精度高,能够综合处理多点温度信息的测量系统就很有必要。
本课题以AT89C51单片机系统为核心,能对多点的温度进行实时巡检。
DS18B20是一种可组网的高精度数字式温度传感器,由于其具有单总线的独特优点,可以使用户轻松地组建起传感器网络,并可使多点温度测量电路变得简单、可靠。
本文结合实际使用经验,介绍了DS18B20数字温度传感器在单片机下的硬件连接及软件编程,并给出了软件流程图。
关键词:
温度测量;单总线;数字温度传感器;单片机
Abstract
Astheindustryandthesocietydeveloping,thetemperaturebecomesmoreandmoreimportantandalotofproductsaresensitivetotemperature.However,temperaturemeasuringapparatusinthemarketnowonlycancheckandmeasurethetemperatureofonepoint,atthesametime,thetemperatureinformationisnotrealtimeandtheprecisionislow.Ittakesagreatoftroublesfortheindustry-controllerstomakedecision.Inthissituation,designandimplementoneapplicablesystemwhichcanwatchmeasureandcontrolthetemperatureandthemeasuringresultsisrealtimeandtheprecisionisgreatismoreessential.Inordertomeetingthisapplication,thispapertalkaboutTheMultiple-Point’stemperatureMeasuringSystem.
Thissystembasedonsinglechipcomputer,caninspectandcontrolmultipletemperaturesinrealtime. Asakindofhigh-accuracydigitalnettemperaturesensor,DS18B20canbeusedbuildingasensorneteasily.Itcanalsomakethenetsimpleandreliablewithit'sspecial1-wireinterface.ThispaperintroducestheapplicationofDS18B20withsinglechipprocessor.
Keywords:
temperaturemeasure;singlebus;digitalthermometer;singlechipprocessor;
绪论
第一章 绪论
1.1 课题背景
在人类的生活环境中,温度扮演着极其重要的角色。
无论你生活在哪里,从事什么工作,无时无刻不在与温度打着交道。
自18世纪工业革命以来,工业发展对是否能掌握温度有着绝对的联系。
在冶金、钢铁、石化、水泥、玻璃、医药等等行业,可以说几乎%80的工业部门都不得不考虑着温度的因素。
温度对于工业如此重要,由此推进了温度传感器的发展。
传感器主要大体经过了三个发展阶段:
模拟集成温度传感器。
该传感器是采用硅半导体集成工艺制成,因此亦称硅传感器或单片集成温度传感器。
此种传感器具有功能单一(仅测量温度)、测温误差小、价格低、响应速度快、传输距离远、体积小、微功耗等,适合远距离测温、控温,不需要进行非线性校准,外围电路简单。
它是目前在国内外应用最为普遍的一种集成传感器,典型产品有AD590、AD592、TMP17、LM135等;模拟集成温度控制器。
模拟集成温度控制器主要包括温控开关、可编程温度控制器,典型产品有LM56、AD22105和MAX6509。
某些增强型集成温度控制器(例如TC652/653)中还包含了A/D转换器以及固化好的程序,这与智能温度传感器有某些相似之处。
但它自成系统,工作时并不受微处理器的控制,这是二者的主要区别;智能温度传感器。
能温度传感器(亦称数字温度传感器)是在20世纪90年代中期问世的。
它是微电子技术、计算机技术和自动测试技术(ATE)的结晶。
智能温度传感器内部都包含温度传感器、A/D转换器、信号处理器、存储器(或寄存器)和接口电路。
有的产品还带多路选择器、中央控制器(CPU)、随机存取存储器(RAM)和只读存储器(ROM)。
智能温度传感器的特点是能输出温度数据及相关的温度控制量,适配各种微控制器(MCU);并且它是在硬件的基础上通过软件来实现测试功能的,其智能化程度也取决于软件的开发水平。
温度传感器的发展趋势。
进入21世纪后,温度传感器正朝着高精度、多功能、总线标准化、高可靠性及安全性、开发虚拟传感器和网络传感器、研制单片测温系统等高科技的方向迅速发展。
传感器在温度测控系统中的应用。
目前市场主要存在单点和多点两种温度测量仪表。
对于单点温测仪表,主要采用传统的模拟集成温度传感器,其中又以热电阻、热电偶等传感器的测量精度高,测量范围大,而得到了普遍的应用。
此种产品测温范围大都在-200℃~800℃之间,分辨率12位,最小分辨温度在0.001~0.01之间。
自带LED显示模块,显示4位到16位不等。
有的仪表还具有存储功能,可存储几百到几千组数据。
该类仪表可很好的满足单个用户单点测量的需要。
多点温度测量仪表,相对与单点的测量精度有一定的差距,虽然实现了多路温度的测控,但价格昂贵。
针对目前市场的现状,本课题提出了一种可满足要求、可扩展的并且性价比高的单片机多路测温系统。
1.2本课题研究意义
随着科学技术的不断进步与发展,温度控制在工业控制、电子测温计、医疗仪器、家用电器等各种温度控制系统中广泛应用,且由过去的单点测量向多测量发展。
目前温度传感器有模拟和数字两类传感器,为了克服模拟传感器与微处理器接口时需要信号调理电路和A/D转换器的弊端,大多数多点测温控制系统采用数字传感器,并大大方便了系统的设计。
比较有代表性的数字温度传感器有DS18B20、MAX6575、DS1722、MAX6635、SMT160-30等。
在传统的温度测量系统设计中,往往采用模拟技术进行设计,这样就不可避免地遇到诸如引线误差补偿、多点测量中的切换误差和信号调理电路的误差等问题;而其中某一环节处理不当,就可能造成整个系统性能的下降。
随着现代科学技术的飞速发展,特别是大规模集成电路设计技术的发展,微型化、集成化、数字化正成为传感器发展的一个重要方向。
美国Dallas半导体公司推出的数字温度传感器DS18B20,具有独特的单总线接口,仅需要占用一个通用I/0端口即可完成与微处理器的通信;在-10~+85℃温度范围内具有0.5℃精度;用户可编程设定9~12位的分辨率。
以上特性使得DS18B20非常适用于构建高精度、多点温度测量系统。
1.3本课题的任务
本课题主要是实现对温度进行多点同时测量并准确显示。
整个系统由单片机控制,要能够接收传感器的数据并显示出来,可以从键盘输入命令,系统根据命令,选择对应的传感器,并由驱动电路驱动温度显示。
设计一种合理、可行的单片机监控软件,完成多点测量和显示的任务,并编写硬件底层驱动程序。
1.4系统整体目标
利用一个单片机设计一个能够进行多点温度进行同时测量的系统。
该系统能够同时对多个点的温度进行测量和进行显示,并且能够对异常情况进行报警。
方案论证比较与选择
第二章方案论证比较与选择
2.1引言
温度测量的方案有很多种,可以采用传统的分立式传感器、模拟集成传感器以及新兴的智能型传感器。
对于控制系统可以采用计算机、单片机等。
2.2方案设计
2.2.1 设计方案一
采用模拟分立元件,如电容、电感或晶体管等非线形元件,实现多点温度的测量及显示,该方案设计电路简单易懂,操作简单,且价格便宜,但采用分立元件分散性大,不便于集成数字化,而且测量误差大。
2.2.2设计方案二
本方案采用AT89C51单片机为核心,通过温度传感器AD590采集温度信号,经信号放大器放大后,送到A/D转换芯片,最终经单片机检测处理温度信号。
图2.1方案二的框图
如图2.1,采用该方案技术已经成熟,AD转换电路设计较烦琐,而且使用AD590进行温度检测必须对冷端进行补偿,以减小误差。
2.2.3设计方案三
本设计运用主从分布式思想,由一台上位机(PC微型计算机),下位机(单片机)多点温度数据采集,组成两级分布式多点温度测量的巡回检测系统。
该系统采用RS-232串行通讯标准,通过上位机(PC)控制下位机(单片机)进行现场温度采集。
温度值既可以送回主控PC进行数据处理,由显示器显示。
也可以由下位机单独工作,实时显示当前各点的温度值,对各点进行控制。
下位机采用的是单片机基于数字温度传感器DS18B20的系统。
DS18B20利用单总线的特点可以方便的实现多点温度的测量,轻松的组建传感器网络,系统的抗干扰性好、设计灵活、方便,而且适合于在恶劣的环境下进行现场温度测量。
本系统可以应用在大型工业及民用常温多点监测场合。
如粮食仓储系统、楼宇自动化系统、温控制程生产线之温度影像检测、医疗与健诊的温度测试、空调系统的温度检测、石化、机械…等。
系统框图如下:
图2.2方案三的系统框图
2.3方案的比较与选择
基于数字式温度计DS18B20的温度测量仪的硬软件开发过程,DS18B20将温度信号直接转换为数字信号,实现了与单片机的直接接口,从而省去了信号调理电路。
该仪器电路简单、功能可靠、测量效率高,很好地弥补了传统温度测量方法的不足。
相对与方案1,在功能、性能、可操作性等方面都有较大的提升。
相对与方案2,硬件电路简单,易于操作,具有更高的性价比,更大的市场。
所以我采用方案3完成本设计。
2.4方案的阐述与论证
方案三以DS18B20为传感器、AT89C51单片机为控制核心组成多点温度测试系统,该系统包括传感器电路、键盘与显示电路、串口通信电路等组成部。
采用美国Dallas半导体公司推出的数字温度传感器DS18B20,属于新一代适配微处理器的智能温度传感器。
它具有独特的单总线接口,仅需要占用一个通用I/0端口即可完成与微处理器的通信。
全部传感元件及转换电路集成在形如一只三极管的集要求通过简单的编程实现9~12位的数字值读数方式。
其可以分别93.75ms和750ms内完成9位和12位的数字量,最大分辨率为0.0625℃,而且从DS18B20读出或写入DS18B20的信息仅需要一根口线(单线接口)读写。
它有如下的性能特点:
1)独特的单线接口,既可通过串行口线,也可通过其它I/O口线与微机接口,无需变换其它电路,直接输出被测温度值;
2)多点能力使分布式温度检测应用得以简化;
3)不需要外部元件;
4)既可用数据线供电,也可采用外部电源供电;
5)不需备份电源;
6)测量范围为-55~+125℃,固有测温分辨率为0.5℃;
7)通过编程可实现9~12位的数字读数方式;
8)用户可定义非易失性的温度告警设置;
9)警告搜索命令能识别和寻址温度在编定的极限之外的器件(温度警告情况);
10)应用范围包括恒温控制、工业系统、消费类产品、温度计或任何热敏系统。
以上特性使得DS18B20非常适用于构建高精度、多点温度测量系统。
根据DS18B20以上的特点我选用方案三来实现本课题。
第三章硬件设计
本课题研究的多点测温系统是以单片机和单总线数字温度传感器DS18B20为核心,充分利用单片机优越的内部和外部资源及数字温度传感器DS18B20的优越性能构成一个完备的测温系统,实现对温度的多点测量。
整个系统由单片机控制,能够接收传感器的温度数据并显示出来,可以从键盘输入命令,系统根据命令,选择对应的温度传感器,并由驱动电路驱动温度显示。
本课题设计了一种合理、可行的单片机监控软件,完成测量和显示的任务。
由于单片机具有强大的运算和控制功能,使得整个系统具有模块化、硬件电路简单以及操作方便等优点。
本课题的整个系统是由单片机、显示电路、键盘电路、驱动电路,串口通信等构成。
3.1 温度传感器
3.1.1温度传感器选用细则
现代传感器在原理与结构上千差万别,如何根据具体的测量目的、测量对象以及测量环境合理地选用传感器,是在进行某个量的测量时首先要解决的题。
当传感器确定之后,与之相配套的测量方法和测量设备也就可以确定了。
测量结果的成败,在很大程度上取决于传感器的选用是否合理。
1)根据测量对象与测量环境确定传感器的类型
要进行—个具体的测量工作,首先要考虑采用何种原理的传感器,这需要分析多方面的因素之后才能确定。
因为,即使是测量同一物理量,也有多种原理的传感器可供选用,哪一种原理的传感器更为合适,则需要根据被测量的特点和传感器的使用条件考虑以下一些具体问题:
量程的大小;被测位置对传感器体积的要求;测量方式为接触式还是非接触式;信号的引出方法,有线或是非接触测量;传感器的来源,国产还是进口,价格能否承受,还是自行研制。
2)灵敏度的选择
通常,在传感器的线性范围内,希望传感器的灵敏度越高越好。
因为只有灵敏度高时,与被测量变化对应的输出信号的值才比较大,有利于信号处理。
但要注意的是,传感器的灵敏度高,与被测量无关的外界噪声也容易混入,也会被放大系统放大,影响测量精度。
因此,要求传感器本身应具有较高的信噪比,尽员减少从外界引入的串扰信号
3)频率响应特性
传感器的频率响应特性决定了被测量的频率范围,必须在允许频率范围内保持不失真的测量条件,实际上传感器的响应总有—定延迟,希望延迟时间越短越好。
传感器的频率响应高,可测的信号频率范围就宽,而由于受到结构特性的影响,机械系统的惯性较大,因有频率低的传感器可测信号的频率较低。
4)线性范围
传感器的线形范围是指输出与输入成正比的范围。
以理论上讲,在此范围内,灵敏度保持定值。
传感器的线性范围越宽,则其量程越大,并且能保证一定的测量精度。
在选择传感器时,当传感器的种类确定以后首先要看其量程是否满足要求。
但实际上,任何传感器都不能保证绝对的线性,其线性度也是相对的。
当所要求测量精度比较低时,在一定的范围内,可将非线性误差较小的传感器近似看作线性的,这会给测量带来极大的方便。
5)稳定性
传感器使用一段时间后,其性能保持不变化的能力称为稳定性。
影响传感器长期稳定性的因素除传感器本身结构外,主要是传感器的使用环境。
因此,要使传感器具有良好的稳定性,传感器必须要有较强的环境适应能力。
在选择传感器之前,应对其使用环境进行调查,并根据具体的使用环境选择合适的传感器,或采取适当的措施,减小环境的影响。
6)精度
精度是传感器的一个重要的性能指标,它是关系到整个测量系统测量精度的一个重要环节。
传感器的精度越高,其价格越昂贵,因此,传感器的精度只要满足整个测量系统的精度要求就可以,不必选得过高。
这样就可以在满足同一测量目的的诸多传感器中选择比较便宜和简单的传感器。
如果测量目的是定性分析的,选用重复精度高的传感器即可,不宜选用绝对量值精度高的;如果是为了定量分析,必须获得精确的测量值,就需选用精度等级能满足要求的传感器。
对某些特殊使用场合,无法选到合适的传感器,则需自行设计制造传感器。
自制传感器的性能应满足使用要求。
3.1.2 温度传感器DS18B20
DS18B20型单线智能温度传感器,属于新一代适配微处理器的智能温度传感器。
全部传感元件及转换电路集成在形如一只三极管的集成电路内。
与传统的热敏电阻相比,它能够直接读出被测温度,并且可根据实际要求通过简单的编程实现9~12位的数字值读数方式。
其可以分别93.75ms和750ms内完成9位和12位的数字量,最大分辨率为0.0625℃,而且从DS18B20读出或写入DS18B20的信息仅需要一根口线(单线接口)读写。
⑴.DS18B20的性能特点
单线数字化智能集成温度的传感器,其特点是:
①DSI8B20可将被测温度直接转换成计算机能识别的数字信号输出,温度值不需要经电桥电路先获取电压模拟量,再经信号放大和A/D转换成数字信号,解决了传统温度传感器存在的因参数不一致性,在更换传感器时会因放大器零漂而必须对电路进行重新调试的问题,使用方便.
②DS18B20能提供9到12位温度读数,精度高,且其信息传输只需1根信号线,与计算机接口十分简便,读写及温度变换的功率来自于数据线而不需额外的电源.
③每一个DS18B20都有一个惟一的序列号,这就允许多个DS18B20连接到同一总线上.尤其适合于多点温度检测系统.
④负压特性:
当电源极性接反时,DS18B20虽然不能正常工作,但不会因发热而烧毁正是由于具有以上特点,DS18B20在解决各种误差、可靠性和实现系统优化等方面与传统各种温度传感器相比,有无可比拟的优越性,因而广泛应用于过程控制、环境控制、建筑物、机器设备中的温度检测。
其外形和管脚如下图:
图3.1DS18B20外部形状及管脚图
⑵.DS18B20与单片机的典型接口设计
DS18B20测温系统具有测温系统简单、测温精度高、连接方便、占用口线少等优点。
Dsl8B20与单片机的硬件连接有两种方法:
一是Vcc接外部电源,GND接地,I/0与单片机的I/0线相连;二是用寄生电源供电,此时,~UDD和GND接地,I/0接单片机I/0。
无论是哪种供电方式,I/0口线都要接4.7kQ左右的上拉电阻。
图4给出了DSl8B20与微处理器的典型连接。
①DS18B20寄生电源供电方式:
如下面图3.2(a)所示,在寄生电源供电方式下,DS18B20从单线信号线上汲取能量:
在信号线DQ处于高电平期间把能量储存在内部电容里,在信号线处于低电平期间消耗电容上的电能工作,直到高电平到来再给寄生电源(电容)充电。
独特的寄生电源方式有三个好处:
1)进行远距离测温时,无需本地电源
2)可以在没有常规电源的条件下读取ROM
3)电路更加简洁,仅用一根I/O口实现测温
要想使DS18B20进行精确的温度转换,I/O线必须保证在温度转换期间提供足够的能量,由于每个DS18B20在温度转换期间工作电流达到1mA,当几个温度传感器挂在同一根I/O线上进行多点测温时,只靠4.7K上拉电阻就无法提供足够的能量,会造成无法转换温度或温度误差极大。
因此,该电路只适应于单一温度传感器测温情况下使用,不适宜采用电池供电系统中。
并且工作电源VCC必须保证在5V,当电源电压下降时,寄生电源能够汲取的能量也降低,会使温度误差变大。
②DS18B20寄生电源强上拉供电方式:
改进的寄生电源供电方式如下面图3.2(b)所示,为了使DS18B20在动态转换周期中获得足够的电流供应,当进行温度转换或拷贝到E2存储器操作时,用MOSFET把I/O线直接拉到VCC就可提供足够的电流,在发出任何涉及到拷贝到E2存储器或启动温度转换的指令后,必须在最多10μS内把I/O线转换到强上拉状态。
在强上拉方式下可以解决电流供应不走的问题,因此也适合于多点测温应用,缺点就是要多占用一根I/O口线进行强上拉切换。
③DS18B20的外部电源供电方式:
如下面图3.2(c)所示,在外部电源供电方式下,DS18B20工作电源由VDD引脚接入,其VDD端用3~5.5V电源供电,此时I/O线不需要强上拉,不存在电源电流不足的问题,可以保证转换精度,同时在总线上理论可以挂接任意多个DS18B20传感器,组成多点测温系统。
注意:
在外部供电的方式下,DS18B20的GND引脚不能悬空,否则不能转换温度,读取的温度总是85℃。
(c)DS18B20外部电源供电方式(a)DS18B20寄生电源供电方式
(b)DS18B20温度转换期间的强上拉供电(寄生电源方式)
图3.2DS18B20与微处理器的典型连接图
(3)DS18B20的内部结构:
图3.3为DS18B20的内部框图,它主要包括寄生电源、温度传感器、64位激光ROM单线接口、存放中间数据的高速暂存器(内含便笺式RAM),用于存储用户设定的温度上下限值的TH和TL触发
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 AT89C51 单片机 温度传感器
文档标签
- 基于AT89C51单片机数字
- 基于AT89C51单片机双机
- 基于AT89C51单片机LED
- AT89C51基于单片机温度
- DS18B单片机温度传感器
- 基于单片机AT89C51数字
- 基于AT89C51单片机倒车
- 基于AT89C51单片机水位
- 基于单片机鸡舍温度
- 基于AT89C51数字温度
- 基于单片机LM35温度
- 基于at89c51单片机数字
- 基于AT89C51单片机多点
- 基于AT89C51单片机测温
- 基于AT89C51单片机最小
- 基于霍尔传感器单片机
- 基于FPGALM75A温度传感器
- 基于8031单片机温度
- 基于单片机数字温度计
- 基于单片机数字温度计
- 基于单片机数字温度计
- 基于单片机数字温度计
- 基于单片机数字温度
- 基于单片机数字温度计