基于DS18B20 温度传感器的数字温度仪设计

2012-12-08 05:03樊要玲
黄河水利职业技术学院学报 2012年1期
关键词:温度计温度传感器显示器

樊要玲,张 速

(华北水利水电学院,河南 郑州 450011)

0 引言

常用的温度计通常是水银、煤油或酒精温度计。这些温度计的刻度间隔通常都很密, 不容易准确分辨,读数困难,而且其的热容量比较大,达到热平衡所需的时间较长,因此很难读准,使用非常不方便[1]。为适应社会生产的需要,数字温度仪得到了进一步发展。 文所说的数字温度仪,是通过DS18B20 数字温度传感器采集环境温度,以单片机为核心控制部件,并通过2 位数码管显示实时温度的一种数字温度仪。 与传统的温度计相比,它具有读数方便、测温范围广、测温准确等优点,输出温度采用数字显示,主要用于对测温要求比较准确的场所, 如农田实验等的温测领域。

1 硬件及工作原理

1.1 硬件

1.1.1 数字温度传感器

温度传感器的精度、灵敏度基本决定了温度仪的精度、测量范围和用途等。 考虑到电路简单、成本低廉、操作方便等因素,数字温度仪设计采用美国DAL LAS 半导体公司继DS1820 之后推出的一种改进型智能温度传感器DS18B20,作为检测元件,测温范围为-55~125℃,最大分辨率可达0.5℃。DS18B20 可以直接读出被测温度值,具有一线通信接口,可采用单线制与单片机相连,减少了外部的硬件电路,具有成本低和易使用等特点[2]。

如图1 所示,其中(1)GND 接地信号;(2)DQ 为数据输入/输出引脚,为开漏单总线接口引脚。 当被用在寄生电源下时, 也可以向器件提供电源。 (3)VDD 为可选择的引脚, 当工作于寄生电源下时,此引脚必须接地。

图1 DS18B20 的引脚排列及封装[2]Fig.1 DS18B20 pin rank and its capsulation

1.1.2 主控制器

主控制器选用STC89C51 单片机,会有15 个双向I/O 口,两个16 位可编程定时/计数器,带4K 字节闪烁可编程可擦除、只读存储器FPEROM 的低电压、高性能CMOS8 位微处理器[3]。

1.2 数字温度仪显示器

在考虑到效果、电路设计、价格等因素的情况下,本设计采用LED 数码管显示。LED 显示器是一种控制半导体发光二极管的显示方式。 随着大规模集成电路和计算机技术的不断进步,LED 显示器正在迅速崛起,它集微电子技术、计算机技术、信息处理于一体,具有色彩鲜艳、动态范围广、亮度高、寿命长、工作稳定可靠等优点, 因此它被广泛用作数字仪器仪表、数控装置、计算机的数显器件。 与液晶显示器LCD 相比,LED 显示器在亮度、功耗、可视角度和刷新速率等方面都更具优势, 可用作为显示文字、图形、图像、动画、行情、视频、录像信号等各种信息的显示屏幕。

1.3 基本工作原理

原理简述:数字温度传感器DS18B20 把温度信息转换为数字格式, 通过一线通信号接口与单片机相连,是单总线方式。它只用一根信号线,既供电,又传输数据,而且数据传输是双向的,单总线具有“线与”功能,连接方便,便于扩展。连接单片机获取指定传感器的数字温度信息,并显示到显示设备上。其系统硬件电路框图如图2 所示。

图2 硬件电路示意图Fig.2 Hardware circuit frame

其中,测温模块是由DS18B20 组建的温度测量单元构成的。 将DS18B20 与STC 单片机的P1.0 连接,测量的温度值经过取整化处理,就可以通过显示电路进行实时显示。

在单片机应用系统中,显示器有两种常用方法:静态显示和动态扫描显示。所谓静态显示,就是每一个显示器都要占用单独的具有锁存功能的I/O 接口,用于笔划段字形代码。 这样,单片机只要把字形代码发送进接口电路,就显示新的数据,然后再发送新的字形码。因此,使用这种方法,单片机中CPU 的开销小。 所谓动态扫描显示,就是利用人眼的特性,分时进行LED 数码管驱动,人眼感受的是有效亮度的平均值。 其优点是:驱动芯片少,电路简单,成本低。由于本设计占用的单片机的资源比较少,显示电路可以采用静态显示的方法,分别用P0 口和P2 口作为显示通道。

2 软、硬件设计

2.1 硬件电路总体设计

此设计以STC89C51 单片机为核心, 加上外围电源时钟电路、 复位电路、 测温电路及显示电路组成。 DS18B20 传感器采用单总线方式与STC89C51单片机相连,即单片机通过P1.0 口连接温度测量模块DS18B20。 具体电路如图3 所示。

在电路中, 单片机工作的时间基准是由时钟电路提供的。 在单片机的XTAL1 和XTAL2 两个引脚间接一只晶振及两只电容, 就构成了单片机的时钟电路。 电容器C1 和C2 对振荡频率有微调作用。 在本设计中,晶振选择12MHz,C1、C2 选择20PF。

图3 基于DS18B20 数字温度仪电路图Fig.3 Circuit based on DS18B20 digital thermograph

单片机的RST 引脚为主机提供一个外部复位信号输入端口。复位信号是高电平有效,高电平有效的持续时间应为2 个机器周期以上。在本设计中,单片机的复位方式采取上电复位和手工复位两种。

LED 显示器的驱动是一个非常重要的问题,显示电路由LED 显示器、段驱动电路和位驱动电路组成。由于本次设计中采用静态显示,故只考虑段驱动即可。 段驱动电路有很多种。 在本次设计中, 选择74LS48 作为段驱动电路的驱动芯片,该芯片具有锁存、译码、驱动的功能。 即在输入端输入要显示字符BCD 码, 输出端就可以得到具有一定驱动能力的7段显示字符码(具体注意事项见后续)。

2.2 软件设计

在软件方面,采用汇编语言来进行程序设计。采用这种设计指令的执行速度快,可节省存储空间。同时, 为便于扩展和更改, 软件的设计采用模块化结构,使程序设计的逻辑关系更加简洁明了。主程序流程和读取温度子程序流程分列见图4 和图5。

图4 主程序流程图Fig.4 Main program flow

图5 读取温度值子程序流程图Fig.5 Subprogram flow of loading temperature value

3 应用范围及设计注意事项

3.1 应用范围

该温度仪测温范围广, 因而它完全适合一般性应用场合,可以在高低温报警、远距离多点控制等方面进行应用开发。 也可利用其低电压供电特性做成用电池供电的手持电子温度仪。

3.2 注意事项

在实际设计中,应注意以下问题:

(1)DS18B20 传感器工作时电流达1.5mA,总线上挂接点数较多。 因此,当同时进行转换时,要考虑增加总线驱动, 在温度转换时可用单片机端口导通一个MOSFET 来供电。

(2)连接DS18B20 传感器的总线电缆是有长度限制的,因此,在用DS18B20 进行长距离测温系统设计时, 应充分考虑总线分布电容和阻抗匹配等问题。

(3) 在设计显示电路时, 无论共阴极还是共阳极,7 段显示电路都需要加限流电阻,否则通电后易烧坏7 段译码管。 限流电阻的选取方法是:5V 电源电压减去发光二极管的工作电压, 除以10mA 到15mA,得数即为限流电阻的值。 发光二极管的工作电压一般在1.8V-2.2V,为计算方便,通常选2V 即可。 发光二极管的工作电流的选取范围是10-20mA,电流选小了,7 段数码管不太亮,选大了,工作时间一长,发光管就容易烧坏。对于大功率7 段数码管, 可根据实际情况来选取限流电阻及电阻的瓦数。

(4) 在基于DS18B20 测温程序的设计中,向DS18B20 发出温度转换命令后, 程序要等待DS18B20 的返回信号。一旦某个DS18B20 接触不好或断线,当程序读该DS18B20 时,就将没有返回信号,程序将进入死循环。这一点,在进行DS18B20 硬件连接和软件设计时,要给予一定的重视。

4 结语

温度测控技术在各个领域的应用越来越广泛。温度测量装置只是一个大的智能化系统中的一部分。随着社会自动化程度的提高,人们对数字温度仪表的要求也会越来越高。温度计的发展很快,已从原始的玻璃管温度计发展到了现在的电子温度计。 本文对基于DS18B20 温度传感器的数字温度仪技术及应用进行了探讨,分别从其基本原理、电路的软硬件设计、 设计注意事项及应用前景等方面进行了阐述。相信在先进技术的不断推动下,温度检测仪表的发展方向将进一步走向数字化、集成化、微型化、智能化和网络化方向发展。

[1] 李邕. 数字式热敏电阻温度计设计[J]. 甘肃科技纵横,2008(1):15,149.

[2] 美国MAXIM/ DALLAS 半导体公司技术网站.DS18B20技术资料,[DB/OL].[201101]http://www.maxim-ic.com.

[3] 李蒙.单片机原理及应用[M].北京:中国轻工业出版社,2010:15-42.

猜你喜欢
温度计温度传感器显示器
正确认识温度计
各种各样的温度计
把显示器“穿”在身上
温度计的『一二三』
三招搞定温度计
温度传感器DS18B20在温度计设计中的应用
IDC发布《2018年PC显示器市场跟踪报告》
一种高性能CMOS温度传感器
一种新型点阵显示器的设计
XTR105电流变送器在温度传感器中的应用