ds18b20温度传感器原理 数字温度传感器DS18B20简介
数字温度传感器DS18B20简介
1、DS18B20的主要特性1.1、适应电压范围更宽,电压范围:3.0~5.5V,在寄生电源方式下可由数据线供电1.2、独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯1.3、DS18B20支持多点组网功能,多个DS18B20可以并联在唯一的三线上,实现组网多点测温1.4、DS18B20在使用中不需要任何外围元件,全部传感元件及转换电路集成在形如一只三极管的集成电路内1.5、温范围-55℃~+125℃,在-10~+85℃时精度为±0.5℃1.6、可编程的分辨率为9~12位,对应的可分辨温度分别为0.5℃、0.25℃、0.125℃和0.0625℃,可实现高精度测温1.7、在9位分辨率时最多在93.75ms内把温度转换为数字,12位分辨率时最多在750ms内把温度值转换为数字,速度更快1.8、测量结果直接输出数字温度信号,以"一线总线"串行传送给CPU,同时可传送CRC校验码,具有极强的抗干扰纠错能力1.9、负压特性:电源极性接反时,芯片不会因发热而烧毁,但不能正常工作。
2、DS18B20的外形和内部结构DS18B20内部结构主要由四部分组成:64位光刻ROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。DS18B20的外形及管脚排列如下图1:
DS18B20引脚定义:
(1)DQ为数字信号输入/输出端;(2)GND为电源地;(3)VDD为外接供电电源输入端(在寄生电源接线方式时接地)。
图2: DS18B20内部结构图
3、DS18B20工作原理
DS18B20的读写时序和测温原理与DS1820相同,只是得到的温度值的位数因分辨率不同而不同,且温度转换时的延时时间由2s减为750ms。 DS18B20测温原理如图3所示。图中低温度系数晶振的振荡频率受温度影响很小,用于产生固定频率的脉冲信号送给计数器1。高温度系数晶振随温度变化其振荡率明显改变,所产生的信号作为计数器2的脉冲输入。计数器1和温度寄存器被预置在-55℃所对应的一个基数值。计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当计数器1的预置值减到0时,温度寄存器的值将加1,计数器1的预置将重新被装入,计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。图3中的斜率累加器用于补偿和修正测温过程中的非线性,其输出用于修正计数器1的预置值。
图3: DS18B20测温原理框图
DS18B20有4个主要的数据部件:
(1)光刻ROM中的64位序列号是出厂前被光刻好的,它可以看作是该DS18B20的地址序列码。64位光刻ROM的排列是:开始8位(28H)是产品类型标号,接着的48位是该DS18B20自身的序列号,最后8位是前面56位的循环冗余校验码(CRC=X8+X5+X4+1)。光刻ROM的作用是使每一个DS18B20都各不相同,这样就可以实现一根总线上挂接多个DS18B20的目的。
(2)DS18B20中的温度传感器可完成对温度的测量,以12位转化为例:用16位符号扩展的二进制补码读数形式提供,以0.0625℃/LSB形式表达,其中S为符号位。
表1: DS18B20温度值格式表
这是12位转化后得到的12位数据,存储在18B20的两个8比特的RAM中,二进制中的前面5位是符号位,如果测得的温度大于0,这5位为0,只要将测到的数值乘于0.0625即可得到实际温度;如果温度小于0,这5位为1,测到的数值需要取反加1再乘于0.0625即可得到实际温度。
例如+125℃的数字输出为07D0H,+25.0625℃的数字输出为0191H,-25.0625℃的数字输出为FF6FH,-55℃的数字输出为FC90H。
表2: DS18B20温度数据表
(3)DS18B20温度传感器的存储器
DS18B20温度传感器的内部存储器包括一个高速暂存RAM和一个非易失性的可电擦除的EEPRAM,后者存放高温度和低温度触发器TH、TL和结构寄存器。
浅析 锂动力电池单体温度测量传感器的特性及应用
【能源人都在看,点击右上角加“关注”】
北极星储能网讯:本文在简介了锂动力电池单体温度测量的基础上,重点论述了DS18B20 温度传感器的特性、测温原理及基于DS18B20的锂动力电池单体温度采集。
(来源:微信公众号“动力电池网” ID:sd-dldc 作者:周志敏)
01.锂动力电池单体温度测量锂动力电池作为纯电动汽车运行的唯一能量来源,是电动汽车的核心组成部分,在电动汽车上扮演着等同于燃油车辆中“发动机”的重要角色。为了使锂动力电池处在最佳的工作状态并且随时把握好锂动力电池的荷电状态,需要选用一种抗干扰能力强、测量精度高的温度传感器器件对锂动力锂动力电池单体的温度进行准确测量。
随着锂动力电池的能量密度的提升和安全裕度的降低,锂动力电池温度对电池的容量、电压、内阻、充放电效率、使用寿命、安全性和锂动力电池一致性等方面都有较大的影响,所以锂动力电池在使用中必须进行温度监测。
测量的核心的问题是要知道锂动力电池单体本身的温度,通过温度传感器得到锂动力电池的冷却开启温度点、限制功率温度点、停止输出温度点、极端热事件温度点电路,如图1所示。
目前单体电池温度的测量一般采用热敏电阻作为温度传感器,采用分压法由A/D 采样来读取热敏电阻的端电压,根据电阻—温度关系可计算出温度值。将热敏电阻安装在每个锂动力电池单体上,分时将不同锂动力电池上的热敏电阻接到A/D 采样电路上进行温度采样,实现锂动力电池单体温度的巡检。
在采用普通热敏电阻机箱温度测量时,因其测量精度为±1.0℃,误差较大。同时有时由于制造工艺原因,热敏电阻个体的温度特性不是很一致,由此造成温度测量校准的困难。进行多点温度巡检时,同样要解决分时通道选通问题,所以同样就需要考虑设计简洁性问题。
02.DS18B20 温度传感器特性及测温原理
(1)DS18B20 温度传感器特性:
DS18B20是常用的数字温度传感器,其输出的是数字信号,具有体积小,硬件开销低,抗干扰能力强,精度高的特点。DS18B20数字温度传感器接线方便,可应用于多种场合。S18B20的主要特性如下:
1)适应电压范围3.0V~5.5V,在寄生电源方式下可由数据线供电。
2)DS18B20具有独特的单线接口方式,在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯。
3)支持多点组网功能,多个DS18B20可以并联在唯—的三线上,实现组网多点测温。最多能并联8个,如果数量过多,会使供电电源电压过低,从而造成信号传输不稳定。
4)不需要任何外围元件,全部传感元件及转换电路集成在外形如一只三极管的电路内。
5)测温范围-55℃~+125℃,在-lO℃~+85℃时精度为±0.5℃,固有测温误差(注意,不是分辨率,这里之前是错误的)1℃。
6)可编程的分辨率为9位~12位,对应的可分辨温度分别为0.5℃、0.25℃、0.125℃和0.0625℃,可实现高精度测温。
7)在9位分辨率时,最多93.75ms便可把温度转换为数字,12位分辨率时最多750ms便可把温度值转换为数字。
8)直接输出数字温度信号,以一线总线串行传送给CPU,同时可传送CRC校验码,具有极强的抗干扰纠错能力。
9)电源极性接反时,芯片不会因发热而烧毁,但不能正常工作。
(2)DS18B20测温原理:
DS18B20测温原理如图2所示,在图2中低温度系数晶振的振荡频率受温度影响很小,用于产生固定频率的脉冲信号发送给计数器1。高温度系数晶振随温度变化其振荡频率明显改变,所产生的信号作为计数器2的脉冲输入。图2中还隐含着计数门,当计数门打开时,DS18B20就对低温度系数振荡器产生的时钟脉冲后进行计数,进而完成温度测量。
计数门的开启时间由高温度系数振荡器来决定,每次测量前,首先将-55 ℃所对应的基数分别置入减法计数器1和温度寄存器中,减法计数器1和温度寄存器被预置在 -55 ℃ 所对应的一个基数值。
计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当计数器1的预置值减到0时,温度寄存器的值将加1,计数器1的预置将重新被装入,计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。
斜率累加器用于补偿和修正测温过程中的非线性,其输出用于修正减法计数器的预置值,只要计数门仍未关闭就重复上述过程,直至温度寄存器值达到被测温度值。
由于DS18B20单线通信功能是分时完成的,他有严格的时隙概念,因此读写时序很重要。系统对DS18B20的各种操作必须按协议进行。操作协议为:初始化DS18B20(发复位脉冲)→发ROM功能命令→发存储器操作命令→处理数据。因DS18B20采用一线通信接口,所以必须先完成ROM设定,否则记忆和控制功能将无法使用。首先提供以下功能命令之一:
1)读ROM。
2)ROM匹配。
3)搜索ROM。
4)跳过ROM。
5)报警检查。
这些指令操作作用在没有一个器件的64位光刻ROM序列号,可以在挂在一线上多个器件选定某一个器件,同时,总线也可以知道总线上挂有有多少,什么样的设备。
03.基于DS18B20的锂动力电池单体温度采集
锂动力电池模组主要由多个单体电芯所组成,通过合理的模组设计,可以通过有限的几个采样点来得到整个锂动力电池模组内电芯的温度。正常工作的时候,电芯的温度是均匀的,而在锂动力电池模组出现异常情况下,电芯的温度会出现较大的温差。考虑到电池管理系统对温度测量实时性和准确性的要求,在进行电动汽车锂动力电池单体温度采集系统设计时,需要考虑以下问题:
1)温度采集系统是整个电动汽车电池管理系统的一个重要组成部分,鉴于电池管理系统自身的复杂性,要尽量节省单片机端口资源的使用。
2)合理设计软硬件,保证系统工作的稳定性和可靠性。
3)要求系统可以识别单线总线上挂接的所有单总线器件,按照设计需要准确得到目标器件的温度值,并确保数据传感器数据被总线控制器接收的准确性。
(1)DS18B20 的连接方式:
DS18B20 采用单总线技术,测温范围-55℃~+125℃,全数字温度转换及输出,支持多点组网功能,实现多点温度采样。采用DS18B20 多点组网功能也可以实现锂动力电池单体温度采样,但是多点采样时需要识别每个DS18B20 独有的ROM 码,影响采样速度,同时无法将ROM码同器件的实际物理位置关联起来。
所以多点组网功能不适合锂动力电池单体温度的巡检。基于DS18B20的分时读取数据的多点温度采样方法,采样启动和数据读取都是跳过ROM 码校验进行的。
DS18B20 的连接方式如图3 所示,在图3中 K1、K2,……Kn是光电继电器,其通断情况同样由移位寄存阵控制。一开始K1,K2,……Kn 全部闭合,MCU向所有DS18B20 发送采样启动命令,启动命令发送完后断开所有光电继电器,然后逐个闭合K1、K2,……Kn,读取相应传感器的温度数据,实现分时读取数据。采用同时启动分时读取数据的多点温度采样方法,其所用时间仅比单点温度采样所用的时间多了数据读取的时间,所以其采样速度比较快。
(2)DS18B20的供电方式:
1)DS18B20在寄生电源供电方式下,DS18B20从单线信号线上汲取能量,在信号线DQ处于高电平期间把能量储存在内部电容里,在信号线处于低电平期间消耗电容上的电能工作,直到高电平到来再给寄生电源(电容)充电。寄生电源供电方式的优点有:
1)进行远距离测温时,无需本地电源。
2)可以在没有常规电源的条件下读取ROM。
3)电路更加简洁,仅用一根I/O口实现测温。
要想使DS18B20进行精确的温度转换,I/O线必须保证在温度转换期间提供足够的能量,由于每个DS18B20在温度转换期间工作电流达到1mA,当几个温度传感器挂在同一根I/O线上进行多点测温时,只靠4.7kΩ上拉电阻就无法提供足够的能量,会造成无法转换温度或温度误差极大。
2)DS18B20寄生电源强上拉供电方式。为了使DS18B20在动态转换周期中获得足够的电流供应,当进行温度转换或拷贝到E2存储器操作时,用MOSFET把I/O线直接拉到VCC就可提供足够的电流,在发出任何涉及到拷贝到E2存储器或启动温度转换的指令后,必须在最多10μs内把I/O线转换到强上拉状态。在强上拉方式下可以解决电流供应不足的问题,因此也适合于多点测温应用,缺点就是要多占用一根I/O口线进行强上拉切换。
3)DS18B20的外部电源供电方式。在外部电源供电方式下,DS18B20工作电源由VDD引脚接入,此时I/O线不需要强上拉,不存在电源电流不足的问题,可以保证转换精度,同时在总线上理论可以挂接任意多个DS18B20传感器,组成多点测温系统。在外部供电的方式下,DS18B20的GND引脚不能悬空,否则不能转换温度,读取的温度总是85℃。
(3)DS18B20应用中应注意事项:
DS18B20虽然具有测温系统简单、测温精度高、连接方便、占用口线少等优点,但在实际应用中也应注意以下问题:
1)较小的硬件开销需要相对复杂的软件进行补偿,由于DS18B20与微处理器间采用串行数据传送,因此,在对DS18B20进行读写编程时,必须严格的保证读写时序,否则将无法读取测温结果。在使用PL/M、C等高级语言进行系统程序设计时,对DS1820操作部分最好采用汇编语言实现。
2)当单总线上所挂DS18B20超过8个时,就需要解决微处理器的总线驱动问题,这一点在进行多点测温系统设计时要加以注意。
3)连接DS18B20的总线电缆是有长度限制的,当采用普通信号电缆传输长度超过50m时,读取的测温数据将发生错误。当将总线电缆改为双绞线带屏蔽电缆时,正常通讯距离可达150m,当采用每米绞合次数更多的双绞线带屏蔽电缆时,正常通讯距离进一步加长。在用DS18B20进行长距离测温系统设计时,要充分考虑总线分布电容和阻抗匹配问题,否则总线分布电容将使信号波形产生畸变。
4)在DS18B20测温程序设计中,向DS18B20发出温度转换命令后,程序总要等待DS18B20的返回信号,一旦某个DS18B20接触不好或断线,当程序读该DS18B20时,将没有返回信号,程序进入死循环。这一点在进行DS18B20硬件连接和软件设计时也要给予一定的重视。测温电缆线应采用屏蔽4芯双绞线,其中一对线接地线与信号线,另一组接VCC和地线,屏蔽层在源端单点接地。
原标题:浅析锂动力电池单体温度测量传感器的特性及应用
免责声明:以上内容转载自北极星电力新闻网,所发内容不代表本平台立场。
全国能源信息平台联系电话:010-65367827,邮箱:hz@people-energy.com.cn,地址:北京市朝阳区金台西路2号人民日报社
相关问答
ds18 02 温度传感器 工作 原理 ?DS18B20工作原理是低温度系数晶振的振荡频率受温度影响很小,用于产生固定频率的脉冲信号发送给计数器1。高温度系数晶振随温度变化其振荡频率明显改变,所产生...
温度传感器 转换来的反映温度变化的电信号是什么信号?_作业帮[最佳回答]有些温度传感器的信号是数字信号,如;DS18B20等,还有一种是半导体的温度传感器其信号是模拟信号,还有一些热敏电阻的信号也是模拟信号,请参考.有些...
DS18B20 做 温度传感器 ,89S52单片机,通过无线模块(NRF89S52)...[最佳回答]分块调试。18B20读取温度后从UART发给计算机看是否正确?发给1602显示是否正确?24L01收发是否正确?
有关 温度 报警器的程序,有关 DS18B20 的程序已写好,求助有关...[最佳回答]本设计温度测量及加热控制系统AT89S52单片机核心部件外加温度采集电路、键盘及显示电路、加热控制电路和越限报警等电路采用单总线型数字式温度...
【 DS18B20温度传感器 读出数据的转化问题?a=read_byte();\x05...[最佳回答]乘以256是为了将读过来的数据转换成十进制数,再乘以25,然后在返回值里又左移了2,相当于(b*256+a)*0.0625*100!这段程序应该没有判断正负的语句!你多...
DS 是汽车上什么 传感器 ?DS18B20温度传感器有两种供电方式:一是寄生电源方式,二是VDD电源引脚供电方式。寄生电源方式即DS18B20温度传感器不需要通过电源供电,而是当I/O、VDD电源引...
关于 ds18b20温度传感器 的两个问题?1.DS18B20温度传感器是数字温度传感器,准确度高且可以多个串联使用,广泛应用于各种温度检测场景。2.DS18B20温度传感器在使用时需要注意的两个问题是:一是...
使用 温度传感器DS18B20 设计一温控系统,当温度超过35度或低于 20 度时,LED红灯闪烁,蜂鸣器发出报警声?//这是我曾经做的一个温度控制系统,可以调节上下限温度,低于下限温度启动加热,高于上限停止加热。//温控系统控制程序//版本号:V1.0;2015.6.19//温度传感器...
DS18B20温度传感器 ,51单片机,通过NRF24L01发射、接收,最...新浪共享上有源码和电路图,去下载即可已通过测试
调温电烙铁用的 温度传感器 是什么样的? - 懂得调温电烙铁用的温度传感器多为热电偶。通常不是用ds18b20(其测温范围远低于电烙铁的温度270-370℃)使用电阻调节控制温度的吧DS18B20是数字式单总...