单片机温度测量控制及高温报警系统学士论文

上传人:痛*** 文档编号:102205057 上传时间:2022-06-06 格式:DOC 页数:53 大小:1.15MB
返回 下载 相关 举报
单片机温度测量控制及高温报警系统学士论文_第1页
第1页 / 共53页
单片机温度测量控制及高温报警系统学士论文_第2页
第2页 / 共53页
单片机温度测量控制及高温报警系统学士论文_第3页
第3页 / 共53页
点击查看更多>>
资源描述
*大学毕业设计(论文)关键词:数字温度传感器;单总线;通信协议;DS18B20;AT89C2051;LED显示器;报警信号。AbstractTemperature detection and control of industrial production process, one of the more typical applications, with sensors in production and life is more widely used, using a new single-bus digital temperature sensor to achieve the test and control the temperature more rapidly development, this paper is designed based on AT89C51 temperature detection and alarm systems. The system will be more than a single-bus temperature sensor DS18B20 and connected to a port on the controller, the temperature sensors on each loop collection, the temperature will be collected to compare with the set value, when the temperature exceeds the upper limit set , through the ISD1420 voice circuit gives voice prompts and alarm signal. In this paper, a single data lines extend multiple temperature sensor design methods and gives the system implementation of hardware and software flow diagram. The experimental tests show that this high accuracy, strong anti-interference ability, alarm timely and accurate, with a certain reference value. The system design and layout simple and compact structure, small size, light weight, anti-jamming capability, cost-effective to expand convenience, in large warehouses, factories, construction and other areas of intelligent multi-point temperature measurement in a wide range of applications prospects. Key words: digital temperature sensor; single bus; communication protocols; DS18B20; AT89C2051; LED display; alarm signal. 目录摘 要IABSTRACTII目录III第一章:绪论11.1:课题背景11.2:温度检测与及报警系统的国内外状况11.3:温度参数、温度检测和语音报警31.3.1 温度参数31.3.2 温度检测31.3.3 语音报警3第二章:系统总体设计方案32.1单片机语音温度报警系统的总体设计32.2 系统的基本工作过程4第三章:单片机温度控制和语音报警系统硬件设计53.1 温度控制和报警主机53.1.1主控制单片机53.1.2 AT89S51特点53.1.3 AT89S51主要功能特性:63.1.4 温度检测和报警主机硬件电路设计93.1.4单片机及复位键控制模块103.2 语音电路113.2.1 ISD1420芯片简述113.2.2 芯片引脚介绍123.2.3 芯片工作原理133.2.4 芯片工作模式133.2.5语音电路设计143.3 DS18B20芯片简介143.3.1温度传感器的历史及简介143.3.2 DS18B20性能特点与内部结构153.3.3 DS18B20工作时序193.3.4 DS18B20的操作协议213.3.5 DS18B20序列号编码233.3.6 DS18B20的测温原理243.3.7 DS18B20的测温流程253.3.8 DS18B20数据校验与纠错253.3.9 DS18B20在测温系统中的应用273.3.10测温系统的硬件工作原理273.3.11 注意事项28第四章软件设计284.1设计思路284.2 程序设计314.2.1 主程序314.2.2 读出温度子程序324.2.3温度转化命令子程序324.2.4计算温度子程序324.2.5显示数据刷新子程序334.2.6 LED显示程序模块33第五章:系统调试345.1硬件调试345.1.1 硬件静态的调试345.1.2 系统硬件调试355.2软件调试355.3 软硬联调35结 论37致 谢38参考文献39附 录4050-第一章:绪论1.1:课题背景测量控制的作用是从生产现场中获取各种参数,运用科学计算的方法,综合各种先进技术,使每个生产环节都能够得到有效的控制,不但保证了生产的规范化、提高产品质量、降低成本,还确保了生产安全。所以,测量控制技术已经被广泛应用于炼油、化工、冶金、电力、电子、轻工和纺织等行业1。随着单片机技术的迅速兴起与蓬勃发展,其稳定、安全、高效、经济等优点十分突出,所以其应用也十分广泛。单片机已经无处不在、与我们生活息息相关,并且渗透到生活的方方面面。 单片机的特点是体积较小,也就是其集成特性,其内部结构是普通计算机系统的简化,增加一些外围电路,就能够组成一个完整的小系统,单片机具有很强的可扩展性。它具有和普通计算机类似的、强大的数据处理功能,通过使用一些科学的算法,可以获得很强的数据处理能力2。所以单片机在工业中应用中,可以极大地提高工业设备的智能化、数据处理能力和处理效率,而且单片机无需占用很大的空间。随着温度检测理论和技术的不断更新, 温度传感器的种类也越来越多,在微机系统中使用的传感器,必须是能够将非电量转换成电量的传感器,目前常用的有热电偶传感器、热电阻传感器和半导体集成传感器等,每种传感器根据其自身特性,都有它自己的应用领域。本设计所介绍的数字温度计与传统的温度计相比,具有读数方便,测温范围广,测温准确,其输出温度采用数字显示,主要用于对测温比较准确的场所,或科研实验室使用,该设计控制器使用单片机AT89S51,测温传感器使用DS18B20,用3位共阳极LED数码管以串口传送数据,实现温度显示,能准确达到以上要求。1.2:温度检测与及报警系统的国内外状况温度是一个非常重要的物理量,因为它直接影响燃烧、化学反应、发酵、烘烤、煅烧、蒸馏、浓度、挤压成形、结晶以及空气流动等物理和化学过程。温度控制失误就可能引起生产安全、产品质量、产品产量等一系列问题。因此对温度的检测的意义就越来越大。温度采集控制系统在工业生产、科学研究和人们的生活领域中,得到了广泛应用。在工业生产过程中,很多时候都需要对温度进行严格的监控,以使得生产能够顺利的进行,产品的质量才能够得到充分的保证。使用自动温度控制系统可以对生产环境的温度进行自动控制,保证生产的自动化、智能化能够顺利、安全进行,从而提高企业的生产效率。 温度采集控制系统是在嵌入式系统设计的基础上发展起来的。嵌入式系统虽然起源于微型计算机时代,但是微型计算机的体积、价位、可靠性,都无法满足广大对象对嵌入式系统的要求,因此,嵌入式系统必须走独立发展道路。这条道路就是芯片化道路。将计算机做在一个芯片上,从而开创了嵌入式系统独立发展的单片机时代。单片机诞生于二十世纪七十年代末,经历了SCM、MCU和SOC三大阶段在现代化的工业生产中,电流、电压、温度、压力、流量、流速和开关量都是常用的主要被控参数。例如:在冶金工业、化工生产、电力工程、造纸行业、机械制造和食品加工等诸多领域中,人们都需要对各类加热炉、热处理炉、反应炉和锅炉中的温度进行检测和控制。采用MCS-51单片机来对温度进行控制,不仅具有控制方便、组态简单和灵活性大等优点,而且可以大幅度提高被控温度的技术指标,从而能够大大提高产品的质量和数量。因此,单片机对温度的控制问题是一个工业生产中经常会遇到的问题。同时温度也是生活中最常见的一个物理量,也是人们很关心的一个物理量,它与我们的生活息息相关,有着十分重要的意义,在工业生产中,温度过高或过低会直接影响到产品的质量、对机械设备和控制系统中的各种元器件造成一定的损坏,严重的会影响到生产安全。在日常生活中,温度过高或过低同样会造成一些不良影响。在实际生产、生活等各个领域中,温度是环境因素的不可或缺的一部分,对温度及时精确的控制和检测显得尤为重要。比如,农业上土壤各个层面上的温度将会影响植物的生长;在医院的监护中也用到温度的测量。在工业中,料桶里外上限温度要求不一,以及热处理中工件各个部位的温度对工件形成后的性能至关重要等等。现代电子工业的飞速发展对自动测试的要求越来越高。采用单片机对温度进行控制,不仅具有控制方便和组态简单的优点,而且可以提高被控温度的技术指标。针对以上情况,在控制成本的前提下,通过本设计设计一款能够实时检测控制温度,又具有对系统设定不同的报警温度的温度控制报警系统功能。此系统能够满足现代生产生活的需要,效率高,具有较强的稳定性和灵活性。因此,在生产和生活中要对温度进行严格的控制,使温度在规定的范围内变化。通过本系统提高学生对于温度控制的认识。在学习实践中提高对理论的认知能力和动手解决实际问题的能力,达到教学实践相结合的目的。及采用先进的科学技术,加以丰富的保安实际经验和知识,向社会提供各种超值安全设备服务,给用户带来安全和放心。随着人们生活水平的不断提高,单片机控制无疑是人们追求的目标之一,它所给人带来的方便也是不可否定的,其中数字温度计就是一个典型的例子,但人们对它的要求越来越高,要为现代人工作、科研、生活、提供更好的更方便的设施就需要从数单片机技术入手,一切向着数字化控制,智能化控制方向发展。1.3:温度参数、温度检测和语音报警1.3.1 温度参数基本范围-50-110精度误差小于0.5LED数码直读显示可以任意设定温度的上下限报警功能1.3.2 温度检测通过DS18B20传感器检测测量温度,通过AT89S51单片机进行控制,通过用3位LED数码管以串口传送数据实现温度显示。1.3.3 语音报警先录音,能分160段(地址为00H-0A0H)。我们说话平均语速4字/秒,所以20秒我们录80字。经过计算,每个字占2个地址。我们录音13段。录音用S1键,放音控制用S2键。录音时按下键后开始录音,录完每段后放开按键,录音停止。共录13段,录每段时同时用数码管提示,分别用数字0-F来表示。按语音提示键播报温度,不按不播报。第二章:系统总体设计方案2.1单片机语音温度报警系统的总体设计语音温度报警计电路设计总体设计方框图如图2.1所示,控制器采用单片机AT89S51,温度传感器采用DS18B20,语音电路采用ISD1420,用3位LED数码管以串口传送数据实现温度显示。 单片机按键输入电路显示电路温度控制电路测温电路时钟电路复位电路报警电路图2.1 总体设计方框图单元模块功能如下:检测电路由温度传感器DS18B20温度传感器是美国DALLAS半导体公司最新推出的一种改进型智能温度传感器,与传统的热敏电阻等测温元件相比,它能直接读出被测温度,并且可根据实际要求通过简单的编程实现位的数字值读数方式。自动报警主机的核心器件是单片机,它是整个系统的心脏,由它来接受报警信号并控制协调各功能模块的正常工作,考虑到系统的功能和经济性因素,采用的是当今流行的性价比比较高的AT89C51。看门狗电路完成对系统电源电压的监测工作。语音电路采用美国ISD公司的高保真录放一体化语音芯片ISD1420来完成报警时进行语音提示的预存工作,根据警情的不同进行相应的语音提示。2.2 系统的基本工作过程在农业应用方面虚拟仪器温室大棚温度测控系统是一种比较智能,经济的方案,适于大力推广,改系统能够对大棚内的温度进行采集,然后再进行比较,通过比较对大棚内的温度是否超过温度限制进行分析,如果超过温度限制,温度报警系统将进行报警,来通知管理人员大棚内的温度超过限制,大棚内的温控系统出现故障,从而有利于农作物的生长,提高产量。第三章:单片机温度控制和语音报警系统硬件设计3.1 温度控制和报警主机本系统主要是基于单片机实现其温度检测和报警功能,其硬件的主要设计如下:3.1.1主控制单片机主控单片机采用一片ATMEL AT89S51。根据题目要求,充分利用了单片机灵活控制的优点,发挥其优势功能,采用单片机控制显示信号灯,提高了系统的灵活性,设置方便。AT89S51芯片本身集成了看门狗(WDT)电路,这是为了系统更加的稳定可靠,避免了系统因为死机而停止工作的情况发生这种做法对于实际上长时间运行在恶劣状况的交通灯控制系统来说是十分必要的。它可以完成自动加载复位,省去人工调整的麻烦,可以做到无人职守。3.1.2 AT89S51特点AT89S51是一个低功耗,高性能CMOS 8位单片机,片内含4k Bytes ISP(In-system programmable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,功能强大的微型计算机的AT89S51可为许多嵌入式控制应用系统提供高性价比的解决方案。 AT89S51具有如下特点:40个引脚,4k Bytes Flash片内程序存储器,128 bytes的随机存取数据存储器(RAM),32个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器。(如图3.1所示)。图3.1 AT89S51芯片此外,AT89S51设计和配置了振荡频率可为0Hz并可通过软件设置省电模式。空闲模式下,CPU暂停工作,而RAM定时计数器,串行口,外中断系统可继续工作,掉电模式冻结振荡器而保存RAM的数据,停止芯片其它功能直至外中断激活或硬件复位。同时该芯片还具有PDIP、TQFP和PLCC等三种封装形式,以适应不同产品的需求。3.1.3 AT89S51主要功能特性: 兼容MCS-51指令系统 32个双向I/O口 2个16位可编程定时/计数器 全双工UART串行中断口线 2个外部中断源 中断唤醒省电模式 看门狗(WDT)电路 灵活的ISP字节和分页编程 4k可反复擦写(1000次)ISP Flash ROM 4.5-5.5V工作电压 时钟频率0-33MHz 128x8bit内部RAM 低功耗空闲和省电模式 3级加密位 软件设置空闲和省电功能 双数据寄存器指针AT89S51的引脚功能介绍:VCC:AT89S51 电源正端输入,接+5V。VSS:电源地端。XTAL1:单芯片系统时钟的反相放大器输入端。XTAL2:系统时钟的反相放大器输出端,一般在设计上只要在 XTAL1 和 XTAL2 上接上一只石英振荡晶体系统就可以动作了,此外可以在两引脚与地之间加入一个20PF 的小电容,可以使系统更稳定,避免噪声干扰而死机。RESET:AT89S51的重置引脚,高电平动作,当要对晶片重置时,只要对此引脚电平提升至高电平并保持两个机器周期以上的时间,AT89S51便能完成系统重置的各项动作,使得内部特殊功能寄存器之内容均被设成已知状态,并且至地址0000H处开始读入程序代码而执行程序。EA/VPP:EA为英文External Access的缩写,表示存取外部程序代码之意,低电平动作,也就是说当此引脚接低电平后,系统会取用外部的程序代码(存于外部EPROM中)来执行程序。因此在8031及8032中,EA引脚必须接低电平,因为其内部无程序存储器空间。如果是使用 8751 内部程序空间时,此引脚要接成高电平。此外,在将程序代码烧录至8751内部EPROM时,可以利用此引脚来输入21V的烧录高压(VPP)。ALE/PROG:ALE是英文Address Latch Enable的缩写,表示地址锁存器启用信号。AT89S51可以利用这支引脚来触发外部的8位锁存器(如74LS373),将端口0的地址总线(A0A7)锁进锁存器中,因为AT89S51是以多工的方式送出地址及数据。平时在程序执行时ALE引脚的输出频率约是系统工作频率的1/6,因此可以用来驱动其他周边晶片的时基输入。此外在烧录8751程序代码时,此引脚会被当成程序规划的特殊功能来使用。PSEN:此为Program Store Enable的缩写,其意为程序储存启用,当8051被设成为读取外部程序代码工作模式时(EA=0),会送出此信号以便取得程序代码,通常这支脚是接到EPROM的OE脚。AT89S51可以利用PSEN及RD引脚分别启用存在外部的RAM与EPROM,使得数据存储器与程序存储器可以合并在一起而共用64K的定址范围。PORT0(P0.0P0.7):端口0是一个8位宽的双向输出入端口,共有8个位,P0.0表示位0,P0.1表示位1,依此类推。其他三个I/O端口(P1、P2、P3)则不具有此电路组态,而是内部有一提升电路,P0在当作I/O用时可以推动8个LS的TTL负载。如果当EA引脚为低电平时(即取用外部程序代码或数据存储器),P0就以多工方式提供地址总线(A0A7)及数据总线(D0D7)。设计者必须外加一个锁存器将端口0送出的地址锁住成为A0A7,再配合端口2所送出的A8A15合成一个完整的16位地址总线,而定址到64K的外部存储器空间。PORT2(P2.0P2.7):端口2是具有内部提升电路的双向I/O端口,每一个引脚可以推动4个LS的TTL负载,若将端口2的输出设为高电平时,此端口便能当成输入端口来使用。P2除了用做一般I/O端口使用外,若是在AT89S51扩充外接程序存储器或数据存储器时,也提供地址总线的高字节A8A15,这个时候P2便不能当作I/O来使用了。PORT1(P1.0P1.7):端口1也是具有内部提升电路的双向I/O端口,其输出缓冲器可以推动4个LS TTL负载,同样地若将端口1的输出设为高电平,便是由此端口来输入数据。如果是使用8052或是8032的话,P1.0又当作定时器2的外部脉冲输入脚,而P1.1可以有T2EX功能,可以做外部中断输入的触发脚位。PORT3(P3.0P3.7):端口3也具有内部提升电路的双向I/O端口,其输出缓冲器可以推动4个TTL负载,同时还多工具有其他的额外特殊功能,包括串行通信、外部中断控制、计时计数控制及外部数据存储器内容的读取或写入控制等功能。其引脚分配如下: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,外部数据存储器的读取信号。3.1.4 温度检测和报警主机硬件电路设计图3.2中的按健复位电路是上电复位加手动复位,使用比较方便,在程序跑飞时,可以手动复位,这样就不用在重起单片机电源,就可以实现复位。 图3.2 单片机主板电路温度的检测主要依据DS18B20来采集,DS18B20可以采用两种方式供电,一种是采用电源供电方式,此时DS18B20的1脚接地,2脚作为信号线,3脚接电源。另一种是寄生电源供电方式,如图3.3所示单片机端口接单线总线,为保证在有效的DS18B20时钟周期内提供足够的电流,可用一个MOSFET管来完成对总线的上拉。本设计采用电源供电方式, P1.1口接单线总线为保证在有效的DS18B20时钟周期内提供足够的电流,可用一个MOSFET管和89S51的P1.0来完成对总线的上拉。当DS18B20处于写存储器操作和温度A/D变换操作时,总线上必须有强的上拉,上拉开启时间最大为10 s。采用寄生电源供电方式是VDD和GND端均接地。由于单线制只有一根线,因此发送接收口必须是三状态的。主机控制DS18B20完成温度转换必须经过3个步骤:l 初始化;l ROM操作指令;l 存储器操作指令IS18B20 单 片 机P1.0VCCGND图3.3 DS18B20与单片机的接口电路我们要求的温度在一定的范围内为安全温度,我们设置的上界温度为35,当测量值在正常范围内时,程序控制P2.0输出低电平,音频信号不发声,当达到一定的上界或者下界时,报警电路开始工作,P2.0同时为高电平,音频发音告警,操作人员观察音频发生器是否发音,就可知道被测量器件工作是否正常。图3.4报警电路3.1.4单片机及复位键控制模块 单片机采用89S51,其中有8K内存可用。对交通灯的控制主要用其中的计数器定时来完成。一方面要完成对各模块的控制,另一方面也要协调好各模块的时序及口线冲突问题。单片机复位电路是使CPU和系统中的其他功能部件都处在一个确定的初始状态,并从该状态开始工作,例如复位后PC=0000H,使单片机从第一个单元取指令。无论是在单片机刚接上电源时,还是断电后或者发生故障后都要复位。单片机复位的条件是:使RST/VPD引脚加上持续两个机器周期(即24个振荡周期)的高电平。若时钟频率为12MHz,每机器周期为1us,则只需2us以上时间的高电平,在RST引脚出现高电平后的第二个机器周期执行复位。单片机常见的复位电路如图3.3按键复位电路所示。图3.3 按键复位电路该电路除了具有上电复位电路功能,还可以使用中复位,只要按下图2.9中的RESET键,此时电源VCC经电阻R1、R2分压,在RESET端产生一个复位高电平。 单片机复位期间不产生ALE和PSEN信号,即ALE=1,这表明单片机复位不会有任何取值操作。按键复位电路,易掌握,好操作。3.2 语音电路本系统语音电路可录制四段提示音,同时,在电话接通后,可以将语音分段播放。根据系统的功能要求,系统选择了美国ISD公司的ISD1420芯片。3.2.1 ISD1420芯片简述ISD1420语音芯片是由美国ISD(Information Storage Device)公司开发的高保真、不怕断电、录放一体化的单片固态语音集成电路8。其片内设有时钟振荡器、128K字节E2PROM(电可编程可擦除只读存贮器)、低噪前置放大器、自动增益控制电路、反混叠滤波器、平滑滤波器、模拟转发器、差动功率放大器等高品质语音录放系统所需的全部基本功能电路。由ISD1420组成的最小应用系统仅包含:一个麦克,喇叭,几个阻容元件,两个开关和电源。录制的信息存放在内部不挥发单元中,断点后可以长久保存。这种独特的单片解决方案使用了ISD的专利模拟存储技术。语音和音频信号不经过转换直接以原来状态存储到内部存储器,可以实现高质量的语音复制。ISD系列语音芯片特点:(a)所需外围元件少,电路简单,操作方便;(b)采用直接模拟量存贮技术DAST(Direct Analog Storage Technology),再现优质原声;(c)零功率信息存贮,省掉备用电源;(d)信息可保存10年以上,可反复录放达10万次之多;(e)易于使用,语音固化无需专用编程或开发装置,可随意改变录音内容;(f)较强的选址能力,可进行分段管理和分段存储多段信息;(g)具有自动省电模式,录音和回放后即刻进入等待模式,此时仅需0.5uA的维持电流;(h)自带时钟源,高抗干扰性能;(i)可直接驱动8-16喇叭工作,输出不失真功率大于50mW。也可作激励信号单端输出,外接功率放大器,输出功率为额定输出功率的1/4,约为120mW左右;(j)采用总线技术,适于同单片机接口。3.2.2 芯片引脚介绍图3.5 ISD1420芯片引脚图AO-A7为地址或操作模式控制端;VSSD为数字地;VSSA为模拟地:SP、SP-为音频信号输出端,可以驱动8-16个扬声器;VCCA为模拟电源;VCCD为数字电源;MIC为话筒输人端,可用驻极体话筒,通过电容耦合;MICREF为话筒输人参考端,若不用应悬空;AGC为自动增益控制端,调整芯片内部前置放大器增益,使录入信号不失真;ANAIN,ANAOUT两端间接电容,该端用于模拟信号的直接输人、输出;XCLK为外部时钟或接地(一般用户接地即可);REC/为录、放音控制,低电平为录音(此时PLAYE/或PLAYL/=O);PLAYL/为电平放音控制(低电平有效),放音时应该保持低电平(此时REC/=0);PLAYE/为边沿放音控制,下降沿开始放音(此时REC/=0);RECLED/为录音指示,接发光二极管,录音时亮,放音结束闪烁一下,然后熄灭。3.2.3 芯片工作原理ISD1420 地址输入端具有双重功能,根据地址中的 A6、A7 的电平状态决定A0A7 的功能。如果 A6、A7 中间至少有一个低电平,则 A0A7 输入全解释为地址位,作为起始地址用,此时地址线仅仅作为输入端口,在操作过程中不能输出内部地址信息。根据 PLAYE、PLAYL或 REC的下降沿信号,地址输入被锁定。如果 A6、A7 同为高电平时,ISD1420芯片进入模式操作方式。 3.2.4 芯片工作模式先录音,能分160段(地址为00H-0A0H)。我们说话平均语速4字/秒,所以20秒我们录80字。经过计算,每个字占2个地址。我们录音13段。录音用S1键,放音控制用S2键。录音时按下键后开始录音,录完每段后放开按键,录音停止。共录13段,录每段时同时用数码管提示,分别用数字0-F来表示。按语音提示键播报温度,不按不播报。一、语音温度计温馨提示您,当前温度(00H-27H)二、一(28H-2FH)三、二(30H-37H)四、三(38H-3FH)五、四(40H-47H)六、五(48H-4FH)七、六(50H-57H)八、七(58H-5FH)九、八(60H-67H)十、九(68H-6FH)十一、十(70H-77H)十二、度(78H-7FH)十三、温度过高(80H-87H)十四、温度合适(88H-8FH)十五、温度过低(90H-97H)3.2.5语音电路设计 图3.6语音电路3.3 DS18B20芯片简介3.3.1温度传感器的历史及简介温度的测量是从金属(物质)的热胀冷缩开始。水银温度计至今仍是各种温度测量的计量标准。可是它的缺点是只能近距离观测,而且水银有毒,玻璃管易碎。代替水银的有酒精温度计和金属簧片温度计,它们虽然没有毒性,但测量精度很低,只能作为一个概略指示。不过在居民住宅中使用已可满足要求。在工业生产和实验研究中为了配合远传仪表指示,出现了许多不同的温度检测方法,常用的有电阻式、热电偶式、PN结型、辐射型、光纤式及石英谐振型等。它们都是基于温度变化引起其物理参数(如电阻值,热电势等)的变化的原理。随着大规模集成电路工艺的提高,出现了多种集成的数字化温度传感器。3.3.2 DS18B20性能特点与内部结构DS18B20是美国DALLAS公司生产的单总线数字温度传感器,它具有微型化、低功耗、高性能、抗干扰能力强、易于与未处理器接口等优点,适合于各种温度测控系统。该器件将半导体温敏器件、A/D转化器、存储器等做在一个很小的集成电路芯片上,传感器直接输出的就是温度信号数字值。信号传输采用两芯(或三芯)电缆构成的单总线结构。一条单总线上可以挂接若干个数字温度传感器,每个传感器有一个唯一的地址码。微控制器通过对器件的寻址,就可以读取某个传感器的温度值,从而简化了信号采集系统的电路结构。(1) DS18B20的性能特点如下9:1) 独特的单线接口仅需要一个端口引脚进行通信;2) 多个DS18B20可以并联在惟一的三线上,实现多点组网功能;3) 无须外部器件;4) 可通过数据线供电,电压范围为3.05.5V;5) 零待机功耗;6) 温度以3位数字显示;7) 用户可定义报警设置;8) 报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件;9) 负电压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作。 (2) DS18B20的外形及管脚排列如下图2: 图3.7 DS18B20封装(3) DS18B20内部结构主要由六分组成:1) 64位光刻ROM。开始8位是产品类型的编号,接着是每个器件的惟一的序号,共有48位,最后8位是前56位的CRC校验码,这也是多个DS18B20可以采用一线进行通信的原因10。64位闪速ROM的结构如下:8b检验CRC48b序列号8b工厂代码(10H) MSB LSB MSB LSB MSB LSB图3.8 DS18B20内部结构2) 非挥发的温度报警触发器TH和TL,可通过软件写入用户报警上下限值。3) 高速暂存存储,可以设置DS18B20温度转换的精度。DS18B20温度传感器的内部存储器还包括一个高速暂存RAM和一个非易失性的可电擦除的E2PRAM。高速暂存RAM的结构为8字节的存储器,结构如图2.1所示。头2个字节包含测得的温度信息,第3和第4字节TH和TL的拷贝,是易失的,每次上电复位时被刷新。第5个字节,为配置寄存器,它的内容用于确定温度值的数字转换分辨率。DS18B20工作时寄存器中的分辨率转换为相应精度的温度数值。它的内部存储器结构和字节定义如图2.2所示。低5位一直为,TM是工作模式位,用于设置DS18B20在工作模式还是在测试模式, Byte0温度测量值LSB(50H)Byte1温度测量值MSB(50H)E2PROMByte2TH高温寄存器-TH高温寄存器Byte3TL低温寄存器-TL 低温寄存器Byte4配位寄存器-配位寄存器Byte5预留(FFH)Byte6预留(0CH)Byte7预留(IOH)Byte8循环冗余码校验(CRC)图2.3 DS18B20内部存储器结构DS18B20出厂时该位被设置为0,用户要去改动,R1和R0决定温度转换的精度位数,来设置分辨率,如图2.3。TM R1R0 1 1 1 1 1图2.4 DS18B20字节定义由表2.1可见,分辨率越高,所需要的温度数据转换时间越长。因此,在实际应用中要将分辨率和转换时间权衡考虑。高速暂存RAM的第6、7、8字节保留未用,表现为全逻辑1。第9字节读出前面所有8字节的CRC码,可用来检验数据,从而保证通信数据的正确性。当DS18B20接收到温度转换命令后,开始启动转换。转换完成后的温度值就以16位带符号扩展的二进制补码形式存储在高速暂存存储器的第1、2字节。单片机可以通过单线接口读出该数据,读数据时低位在先,高位在后,数据格式以0.0625LSB形式表示。当符号位S0时,表示测得的温度值为正值,可以直接将二进制位转换为十进制;当符号位S1时,表示测得的温度值为负值,要先将补码变成原码,再计算十进制数值。表2.2是一部分温度值对应的二进制温度数据6。表2.1 DS18B20温度转换时间表:R1R0分辨率/位温度最大转向时间/ms00993.750110187.510113751112750表2.2一部分温度对应值表温度/二进制表示十六进制表示+1250000 0111 1101 000007D0H+850000 0101 0101 00000550H+25.06250000 0001 1001 00000191H+10.1250000 0000 1010 000100A2H+0.50000 0000 0000 00100008H00000 0000 0000 10000000H-0.51111 1111 1111 0000FFF8H-10.1251111 1111 0101 1110FF5EH-25.06251111 1110 0110 1111FE6FH-551111 1100 1001 0000FC90H4) CRC的产生 在64 b ROM的最高有效字节中存储有循环冗余校验码(CRC)。主机根据ROM的前56位来计算CRC值,并和存入DS18B20中的CRC值做比较,以判断主机收到的ROM数据是否正确。另外,由于DS18B20单线通信功能是分时完成的,它有严格的时隙概念,因此读写时序很重要。系统对DS18B20的各种操作按协议进行。操作协议为:初使化DS18B20(发复位脉冲)发ROM功能命令发存储器操作命令处理数据。5)寄生电源寄生电源有二极管VD1、VD2、寄生电容C和电源检测电路组成,如图所示。电源检测电路用于判定供电方式。DS18B20有两种供电方式:3.05.5V的电源供电方式和寄生电源供电方式(直接从数据线获取电源)。若采用外部电源给器件供电,外部电源接VCC引脚通过VD2向器件供电,如图所示。寄生电源供电时,VCC端接地,器件从单线总线上获取电源,如图所示。在I/O线呈低电平时,改由电容C上的典雅继续向器件供电。该寄生电源的优点:第一,检测远程温度时无需本地电源;第二、缺少正常电源时也能读ROM。外部电源供电寄生电源供电6)温度报警信号DS18B20完成温度转化后,就把测的的温度值与Th、Tl做比较,若TTh或TTl,则将器件内的报警标志位,将对主机发出的告警搜索命令作出响应。因此,可用多只DS18B20同时测量温度并进行报警搜索。一旦某温度点越限,主机利用报警搜索命令,即可识别正在报警的器件,并读出其序号,而不必考虑非报警器件。3.3.3 DS18B20工作时序根据DS18B20的通讯协议,主机控制DS18B20完成温度转换必须经过三个步骤:1. 每一次读写之前都必须要对DS18B20进行复位;2. 复位成功后发送一条ROM指令;3. 最后发送RAM指令,这样才能对DS18B20进行预定的操作。复位要求主CPU将数据线下拉500微秒,然后释放,DS18B20收到信号后等待1560微秒左右后发出60240微秒的存在低脉冲,主CPU收到此信号表示复位成功。其工作时序包括初始化时序、写时序和读时序,具体工作方法如图2.5,2.6,2.7所示。(1) 初始化时 图2.5 初始化时序总线上的所有传输过程都是以初始化开始的,主机响应应答脉冲。应答脉冲使主机知道,总线上有从机设备,且准备就绪。主机输出低电平,保持低电平时间至少480us,以产生复位脉冲。接着主机释放总线,4.7K上拉电阻将总线拉高,延时1560us,并进入接受模式,以产生低电平应答脉冲,若为低电平,再延时480us12。(2) 写时序图2.6 写时序 写时序包括写0时序和写1时序。所有写时序至少需要60us,且在2次独立的写时序之间至少需要1us的恢复时间,都是以总线拉低开始。写1时序,主机输出低电平,延时2us,然后释放总线,延时60us。写0时序,主机输出低电平,延时60us,然后释放总线,延时2us8。(3) 读时序 图2.7 读时序总线器件仅在主机发出读时序是,才向主机传输数据,所以,在主机发出读数据命令后,必须马上产生读时序,以便从机能够传输数据。所有读时序至少需要60us,且在2次独立的读时序之间至少需要1us的恢复时间。每个读时序都由主机发起,至少拉低总线1us。主机在读时序期间必须释放总线,并且在时序起始后的15us之内采样总线状态。主机输出低电平延时2us,然后主机转入输入模式延时12us,然后读取总线当前电平,然后延时50us4。3.3.4 DS18B20的操作协议DS18B20单线通信功能是分时完成的。单线信号包括复位脉冲,响应脉冲,写“0”,写“1”,读“1”。它们有严格的时隙概念。系统对DS18B20的操作以ROM命令(5个)和存储器命令(6)形式表现,各种指令功能如表2-3,2-4所示。表2-3 DS18B20 ROM命令指令约定代码功能读ROM33H读DS18B20中的编码(既读64位地址)符 合ROM55H发出此命令后,接着发出64位ROM编码,访问单总线上与该编码相应的DS18B20,使之做出响应,为下一步对该DS18B20的读写做准备。搜 索ROM0F0H用于确定挂在同一总线上DS18B20的个数和识别64位ROM地址,为操作各个器件做好准备。跳 过ROM0CCH忽略64位ROM地址,直接向DS18B20发温度转换命令,适用于单片工作。告警搜索命令0ECH执行后,只有温度超过设定上限或是下限的片子做出响应。表2-4 DS18B20 RAM命令指令约定代码功能温度变换44H启动DS18B20进行温度转换,结果存入内部RAM。读暂存器0BEH读内部RAM中的内容。写暂存器4EH发出向内部RAM的第3、4字节写上、下限温度数据命令,紧跟该命令之后,是传送两字节的数据。复制暂存 器48H将RAM中的第3、4字内容复制到EEPROM中。重调EEPRAM0B8H将EEPROM中内容恢复到RAM中的第3、4字节。读供电方 式0B4H读DS18B20的供电模式,寄生供电是DS18B20发送“0”,外接电源供电DS18B20发送“1”。对DS18B20操作协议是:初始化DS18B20(发复位脉冲)发ROM功能命令处理数据发存储命令处理数据。初始化:主机发一位复位脉冲(对短为480us的低电平),接着主机释放总线进入接收状态,DS18B20在检测到I/O引脚上的上升沿之后,等待1560us然后发出存在脉冲(60240us的低电平)。写时间片:将数据线从高电平拉至低电平,产生起始信号。在15us之内将所需写的位送到数据线上,在15us到60us之间对数据线进行采样,如果采样为高电平,就写1,如果是低电平,写0就发生。在开始另一个写周期前必须有1us以上的高电平恢复期。读时间片:主机将数据线从高电平拉至低电平1us以上,再使数据线升为高电平,从而产生读起始信号。主机在读时间片下降沿之后15us内完成读位。每个读周期最短的持续时间为60us,各个读周期之间必须有1us以上的高电平恢复期。用户对于DS18B20的访问有三个步骤:(1).初始化用户通过信号线,向DS18B20发送一个满足特定时序的负脉冲,信号线上所有DS18B20芯片都被复位。准备接受用户的序列号命令。(2).序列号访问命令接下来,用户通过信号线,发送一个特定的64位序列号编码。这时,信号线上所有相连DS18B20都进行编码匹配,只有编码一致的DS18B20才被激活,可以接受下面的内存访问命令。(3).存访问命令在用户发送序列号访问命令选定DS18B20芯片后,被选中的芯片便可以接受内存访问命令。读取温度数据,设定温度报警限。二进制数据与温度的对应关系见表2-5。表2-5 二进制数据与温度的对应关系温度温度数据输出(二进制)温度数据输出(16进制)+1250000 0111 1101 000007D0h+850000 0101 0101 00000550h+25.06250000 0001 1001 00010191h+10.1250000 0000 1010 001000A2h+0.50000 0000 0000 10000008h00000 0000 0000 0000000h-0.51111 1111 1111 1000 FFF8h-10.1251111 1111 0101 1110FF5Eh-25.06251111 1110 0110 1111 FF6Fh-551111 1100 1001 0000FC90h3.3.5 DS18B20序列号编码DS18B20内部具有出厂前固化的8字节代码,如表所示。表2-6 64位光刻ROM8位CRC代码48位器件序列号8位产品类型码(28H)其首字节位产品类型代码,固化为10H,后6字节是每个传感器的序列号,最后一字节是CRC检验码。其中6字节共48位的器件序列号可看成是每个传感器固有的地址编码而在多点测温中作为识别标志。多点测温中若用序列号作为传感器的地址编码,一种简单的方法是采取以下几个步骤:(1)逐个测出每个传感器的序列号,连同其在测温现场位置的手工编号,作为地址编码做成标签贴在传感器的表面。(2)手工建立传感器地址与其序列号的关系表,并将其固化在程序中。系统运行时,微机根据序列号读取相应传感器温度,数据按关系表放入数据库与地址编码的数据项位置。3.3.6 DS18B20的测温原理每一片DSl8B20在其ROM中都存有其唯一的48位序列号,在出厂前已写入片内ROM 中。主机在进入操作程序前必须用读ROM(33H)命令将该DSl8B20的序列号读出。程序可以先跳过ROM,启动所有DSl8B20进行温度变换,之后通过匹配ROM,再逐一地读回每个DSl8B20的温度数据。DS18B20的测温原理如图2.8所示,图中低温度系数晶振的振荡频率受温度的影响很小,用于产生固定频率的脉冲信号送给减法计数器1,高温度系数晶振随温度变化其震荡频率明显改变,所产生的信号作为减法计数器2的脉冲输入,图中还隐含着计数门,当计数门打开时,DS18B20就对低温度系数振荡器产生的时钟脉冲后进行计数,进而完成温度测量。计数门的开启时间由高温度系数振荡器来决定,每次测量前,首先将-55 所对应的基数分别置入减法计数器1和温度寄存器中,减法计数器1和温度寄存器被预置在-55 所对应的一个基数值。减法计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当减法计数器1的预置值减到0时温度寄存器的值将加1,减法计数器1的预置将重新被装入,减法计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到减法计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。图2.8中的斜率累加器用于补偿和修正测温过程中的非线性,其输出用于修正减法计数器的预置值,只要计数门仍未关闭就重复上述过程,直至温度寄存器值达到被测温度值,这就是DS18B20的测温原理。另外,由于DS18B20单线通信功能是分时完成的,他有严格的时隙概念,因此读写时序很重要。系统对DS18B20的各种操作必须按协议进行。操作协议为:初始化DS18B20(发复位脉冲)发ROM功能命令发存储器操作命令处理数据。减法计数器斜坡累加器减到0减法计数器预 置低温度系数振 荡 器高温度系数振 荡 器计数比较器预 置温度寄存器减到0图2.8 测温原理内部装置3.3.7 DS18B20的测温流程初始化DS18B20跳过ROM匹配温度变换延时1S跳过ROM匹配读暂存器转换成显示码数码管显示图2.9 DS18B20测温流程3.3.8 DS18B20数据校验与纠错(1) 在进行多点测温时,敏感元件与数据采集系统一般有一定的距离,不可避免的要遇到电磁干扰。信号衰减问题,使数据发生错误。如果在数据的传输过程中系统具有一定的容错能力,在纠错范围内,就可以对错误的数据进行纠正,提高抗干扰能力和加大传输距离,当错误超出纠错范围时,也可以识别出错误的数据进行从新采集,从而提高了采集数据的可信度。DS18B20在设计时已经为用户提高了用于检验遇救错的循环冗余校验码(cyclic redundancy code crc)。下边将就用软件对DS18B20中数据的校验与纠错进行详细的讨论,并给出了用查表法进行校验及纠错的算法以及实现这一算法的过程。字节数据存储结构如表2-10所示。图2-10 9字节数据存储结构图CRC保留保留保留配置寄存器低温限值TL高温限值TL温度高字节温度低字节由温度存储器的低字节、高字节,低温报警器TL,高字节报警触发器TH,配置寄存器,和CRC字节组成了DS18B20的数据存储器
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!