摘 要:介绍美国DALLAS公司的单线数字温度传感器DS18B20在其前代产品DS1820基础上的新特性和与单片机的较详细的接口电路及读写时序,并针对它在桥梁混凝土测温系统的应用中出现的与硬件和软件有关的问题给出解决方法。
概述
秦皇岛-沈阳高速铁路客运专线上有许多要架桥的路段,而在远离桥梁厂的野外现场浇制桥梁时,为保证梁身浇注的质量,须做到:① 养护时梁内任意两点之间的温度差不能超过规定值;② 混凝土浇注后14天的水化热温度曲线须符合所用规格混凝土的水化热温度曲线;③ 混凝土受太阳照射后桥身的各个部位的热胀冷缩不同,导致桥面和腹板出现日照温差,产生温度应力,此应力不能超过一安全极限值,否则将影响桥梁的承载力。本系统采用DS18B20和单片机及其外围电路构成完整的温度采集及数据传送电路,用于采集混凝土浇注后14天内的水化热温度及第14天以后,1年内的日照温差,并存入数据库,对桥梁的质量及使用年限进行评估和预测。
一、 DS18B20新特点和结构
DS18B20是美国DALLAS公司继DS1820之后推出的增强型单总线数字温度传感器。它在测温精度、转换时间、传输距离、分辨率等方面较DS1820有了很大的改进,给用户带来了更方便的使用和更令人满意的效果。
1. DS18B20的新性能
(1) 可用数据线供电,电压范围:3.0~5.5V;
(2) 测温范围:-55~+125℃,在-10~+85℃时精度为±0.5℃;
(3) 可编程的分辨率为9~12位,对应的可分辨温度分别为0.5℃、0.25℃、0.125℃和0.0625℃;
(4) 12位分辨率时最多在750ms内把温度值转换为数字;
(5) 负压特性:电源极性接反时,温度计不会因发热而烧毁,但不能正常工作。
2. DS18B20的外形及引脚说明
其体积只有DS1820的一半,引脚定义相同。
3. DS18B20内部结构
(1) DS18B20的内部结构。
DS18B20有4个主要的数据部件:
① 64位激光ROM。64位激光ROM从高位到低位依次为8位CRC、48位序列号和8位家族代码(28H)组成。
② 温度灵敏元件。
③ 非易失性温度报警触发器TH和TL。可通过软件写入用户报警上下限值。
④ 配置寄存器。配置寄存器为高速暂存存储器中的第五个字节。DS18B20在工作时按此寄存器中的分辨率将温度转换成相应精度的数值,其各位定义如图3所示。其中,TM:测试模式标志位,出厂时被写入0,不能改变;R0、R1:温度计分辨率设置位,其对应四种分辨率如表1所列,出厂时R0、R1置为缺省值:R0=1,R1=1(即12位分辨率),用户可根据需要改写配置寄存器以获得合适的分辨率。
(2) 高速暂存存储器
高速暂存存储器由9个字节组成,其分配如图4所示。当温度转换命令发布后,经转换所得的温度值以二字节补码形式存放在高速暂存存储器的第0和第1个字节。单片机可通过单线接口读到该数据,读取时低位在前,高位在后,数据格式如图5所示。对应的温度计算:当符号位S=0时,直接将二进制位转换为十进制;当S=1时,先将补码变为原码,再计算十进制值。 4. DS18B20工作原理
DS18B20的读写时序和测温原理与DS1820相同,只是得到的温度值的位数因分辨率不同而不同,且温度转换时的延时时间由2s减为750ms。
DS18B20的读写时序如下
PROC WRITE
WRITE: MOV R2,#8
CLR C
WR1: CLR DQ
MOV R7,#6
DJNZ R7,$
RRC A
MOV DQ,C
MOV R7,#23
DJNZ R7,$
SETB DQ
NOP
DJNZ R2,WR1
SETB DQ
RET
;读一个字节,出口:A=读入的字节
PROC DREAD
DREAD: MOV R2,#8
READL: CLR C
SETB DQ
NOP
NOP
CLR DQ
NOP
NOP
NOP
SETB DQ ;产生时间片
MOV R7,#7
DJNZ R7,$
MOV C,DQ
MOV R7,#23
DJNZ R7,$
RRC A
DJNZ R2,READL
RET
二、 DS18B20在桥梁测温中的应用
1. 测温系统要求
由于桥梁施工过程中桥墩、梁身和桥面的二次施工为不同单位负责,故须自备电源,尽量减少功耗;因数据要求长期保存,故要求容量较大的存储器;要对数据进行分析且形成数据库,从而需要可靠的通讯接口。
2. 系统设计要点
(1) DS18B20采用三线制供电方式,传输线采用普通的三芯线。因混凝土的碱性很大,传感器用环氧树脂封装在导热性能良好的薄铁筒内,72个点顺序排列在一根三芯线上。为避开混凝土浇注时的直接冲力,传感器顺着钢筋走线。
(2) 多次测量并算出温度转换时的平均电流I1和时间t1及温度传感器和MCU均空闲时的平均电流I2。根据预定更换电池的时间t2得出采样次数N,然后根据电路总功耗,选择适当容量的电池。P总=U[I1t1N+I2(t2-Nt1)],U为系统电压。
(3) 为减少功耗,不进行温度采集时,使单片机进入睡眠状态,采用DS12887的定时中断,唤醒单片机进行温度转换操作。
(4) 将2字节的温度数据转换为1字节的补码(小数部分四舍五入,此时精度为±1℃),然后根据测点数n、时钟的年月日时占用的字节(4字节)、采样间隔时间t和要求保存数据的时间t′选取存储器容量NByte=(n+4)t′/t。
(5) 在VC++6.0开发平台下编写便携式PC机与单片机的串行通讯程序,用于完成修改单片机的采样间隔时间、成批读取单片机外部存储器中的温度数据并将接收到的数据转存入数据库、画各点的水化热温度曲线和画同一截面上点的温度梯度曲线等功能。
3. 硬件构成
该系统采用带8K程序存储器的AT89C52单片机及大容量数据存储器29FC040和 DS12887日历/时钟芯片等构成。
(1) DS12887用于产生定时中断,接收到中断后单片机先读取日历和时钟并存储,然后启动温度转换,再读取温度并存储。单片机构成的采集装置的缺省的采样间隔值为1h(小时),采样间隔值保存在有断电保存功能DS12887的用户字节中。测水化热时每小时采集1次;14天后每天的2点和14点各采集1次。采样间隔时间只有通过便携式PC经RS232接口进行修改,这样,可避免进入桥梁中的工人或附近居民因好奇而偶然修改了采样值。
(2) 29FC040用于存储一个PC成批读取数据周期内的所有温度值和其对应的采集时间等数据。
(3) 蓄电池的功率应考虑一定的余量,以与存储器时间相匹配。
结 论
经实验室和现场调试及试验,发现了DS18B20的一些特点和使用中应注意的事项。
(1) 有很强的承受负压的能力,这样偶尔的误操作不会损坏温度计;
(2) 连接DS18B20的总线电缆(普通三芯线)在只有上拉电阻的情况下可靠传输长度可达45m左右,距离再长时须根据分支点数、总线长度匹配其线间电容及阻抗;
(3) 温度转换时间由DS1820的2s降为750ms,且灵敏度大为提高,在逐渐升温的水中与精度为±0.5℃的温度计几乎同步,且回复性很好;
(4) 和DS1820一样,DS18B20的读写时序须经仔细调整,在反复的调试中找出合适的延时时间;
(5) DS18B20工作时电流高达1.5mA,总线上挂接点数较多且同时进行转换时要考虑增加总线驱动,可用一单片机端口在温度转换时导通一个MOSFET,使I/O线直接拉到电源从而提供一强的上拉;
(6) 在程序等待DS18B20发出的存在信号对,最好设置一有限的等待时间,否则一旦有温度计损坏时,程序将进入一等待的死循环中。MES
参考文献
1 DALLAS SEMICONDUCTOR Automatic Identification Data Book
2 金伟正.单线数字温度传感器的原理与应用 电子技术应用
转载请注明来源:中国测控网(www.ck365.cn)