基于单总线数字温度传感器的单总线多点测温技术

2015-01-15 00:22
化工自动化及仪表 2015年12期
关键词:序列号温度传感器测温

刘 彬

(辽宁石化职业技术学院,辽宁 锦州 121001)

DS1820是单总线数字温度传感器,可以实现二进制9位温度信息的测量,测量范围-55~125℃,分辨率0.5℃。每片DS1820都有唯一的产品序列号存储于其内部ROM。

笔者以AT89C51单片机作为控制单元,在单总线上挂接多个DS1820,构成多点温度检测系统,主要介绍硬件电路和软件流程的设计方法,实现了多点温度的数字化采集。

数字式温度传感器DS1820的内部结构如图1所示,由内部寄生电源、温度传感器、64位ROM、8位CRC发生器、电源传感器及暂存寄存器等组成。

寄生电源由二极管D1、D2和电容C1组成,通过电源传感器可以判断供电方式,一种由VCC直接供电,另一种为VCC接地,由内部寄生电源VDD供电。寄生电源供电时,利用单总线DQ高电平期间通过D1对C1充电,产生寄生电源VDD。

图1 DS1820内部结构框图

采用寄生电源供电的多点温度测量电路如图2所示,为保证系统供电的可靠性,提供足够大的工作电流,除了加了一个4.7kΩ的上拉电阻外,还用一个P1.0控制的MOS管和QD对DS1820总线进行强上拉,以保证多片DS1820的正常工作;P1.1为数据通信口,通过测试可以实现测量距离不超过80m的30个DS1820稳定可靠工作[1]。

图2 DS1820多点测温电路

2 DS1820的操作命令与时序特性

一般情况下,每个DS1820的温度值为9位(符号位占1位),由于符号位扩展成高8位,因而温度数值以16位补码形式读出,测量温度与输出数字量的关系见表1。

表1 测量温度与输出数字量关系

初始化命令,由单片机发出一个复位脉冲,DS1820响应发出存在脉冲;ROM操作命令有读ROM、匹配ROM、搜索ROM、跳过ROM及警告搜索等;存储器操作命令,有读、写和复制暂存寄存器以及重调非易失性存储器等;温度变换命令,通过单总线对DS1820时间进行读写数据操作,所有操作通过对DS1820写1和写0时间和单片机本身的延时实现[2]。需要注意的是,DS1820获得温度信息的操作,必须遵循DS1820协议。

3 软件流程

多个DS1820挂接在一条总线上去识别不同的器件,在程序设计过程中一般有初始化命令、传送ROM命令、传送RAM命令和数据交换命令。

在系统安装和工作之前,应将主机逐个与DS1820挂接,并读取其序列号,其过程为:主机发出一个脉冲,待“0”电平大于480μs后复位DS1820,当DS1820发出的响应脉冲由主机接收后,主机再次发读ROM命令代码33H,然后发出一个宽度为15μs的脉冲,并接着读取DS1820序列号的1位;用同样的方法读取序列号的56位;由于DS1820通信是按照时序概念分时完成的,因此DS1820的各种操作必须遵循初始化DS1820(发复位脉冲)、发ROM功能命令、发存储器操作命令和处理数据协议进行操作[3]。对DS1820的整体操作流程如图3所示。

图3 DS1820整体操作流程

4 结束语

DS1820单总线多点测温硬件电路简单,故占用硬件端口资源少,但是DS1820与AT89C51之间采用串行数据传输,因此在对DS1820进行编程时,必须严格保证读/写时序,否则无法实现测温。在单总线上挂接DS1820的数量与供电形式、连接电缆形式和长度密切相关,要考虑长距离传输过程中总线分布电容和阻抗的匹配问题,合理处理好增加MOS管来提高寄生电源供电能力的控制时序。对笔者所设计的多点测温系统进行测试的结果表明:该系统的抗干扰和工作效率均有所提升,并且系统硬件也更加简洁。

[1] 贾振国.DS1820及其高精度温度测量的实现[J].电子技术应用,2000,(1):58~59.

[2] 何立民.单片机应用技术选编(1~6)[M].北京:北京航空航天大学出版社,1997.

[3] 金伟正.单线数字温度传感器的原理与应用[J].仪表技术与传感器,2000,36(7):44~45,48.

猜你喜欢
序列号温度传感器测温
一种离线电子钱包交易的双向容错控制方法
硬线测温探头在离心式压缩机组的应用
关于《国家税务总局 工业和信息化部关于加强车辆配置序列号管理有关事项的公告》的解读
温度传感器DS18B20在温度计设计中的应用
一种高性能CMOS温度传感器
recALL
XTR105电流变送器在温度传感器中的应用
变压器光纤测温探头的安装固定
基于DS18B20的单片机测温系统
温度传感器在笔记本电脑散热系统中的应用