当前位置:首页 > 物联网 > 《物联网技术》杂志
[导读]摘要:基于美国DALLAS公司推出的数字温度传感器DS18B20,给出了一个温度测量与显示系统的设计方法。该系统由51单片机AT89C52控制,并由8位数码管显示实时温度,通过该系统可设置温度上限与下限,以便在温度超过限值时进行报警。

引言

传统的温度检测大多以热敏电阻为温度传感器,而热敏电阻的可靠性差,测量温度准确率低,且必须转换为数字信号后才能由单片机进行处理,在高精度要求的温度检测应用中,热敏电阻已经被精度高、准确性好的集成温度釆集设备所代替。DS18B20是美国DALLAS半导体公司推出的一种改进型数字温度传感器。它在温度精度、转换时间、传输距离、分辨率等方面有很大改进,因而被广泛应用于温度釆集与处理、数字温度计及各种温控系统中。本文釆用DS18B20设计的温度测量与显示系统,可以实时测量并显示的温度范围为-55〜125C系统可设置温度上限和温度下限,当测量温度高于上限或者低于下限温度时,系统将发岀报警。

1温度传感器DS18B20

DS18B20是美国DALLAS半导体公司推出的一种改进型智能温度传感器,该传感器的可测温度范围为-55〜125C,可编程分辨率为9~12位,对应的可分辨温度为0.5C、0.25C、0.125°C和0.0625GDS18B20的测量输出为数字信号,并可单线串行发送给CPU,并支持多点组网。DS18B20有3脚和8脚两种结构,而8脚的结构又有不同的封装形式,图1所示是DS18B20的引脚图。本文釆用三极管形状的3脚DS18B20。事实上,无论是3脚结构还是8脚的结构,DS18B20在实际电路中都只有3个引脚参与连接,即电源(VDD)、地(GND)和信号输入输出(DQ)。

基于DS18B20的温度测量和显示系统设计与仿真

2系统仿真电路

基于DS18B20的温度测量与显示系统仿真电路图如图2所示。

电路中的单片机采用AT89C52,DS18B20采用外部电源供电方式,其DQ端子与单片机的P3.7相连。采用两个4连排共阳极数码管显示实时温度,分别用于显示整数部分和小数部分。数码管的段选线与单片机的P1口相连,位选线与P2口相连。图中显示的正是最高温度125C由于在proteus软件中DS18B20无法设置小数,所以小数部分只能显示零了。DS18B20的最高分辨率为0.0625°C,所以理论上应该能显示4位小数。

3软件设计

本系统的软件设计主要包括三部分,一是温度测量部分,二是温度显示部分,还有一个是报警部分。

DS18B20通过严格的单线通信协议来保证数据完整。该协议中定义了复位脉冲、存在脉冲、写0、写1、读0、读1等几种信号形式。其中,只有存在脉冲是由总线受控(即DS18B20)发出,其他的全部由总线主控(即单片机)发出。

3.1初始化

DS18B20的初始化包括来自单片机的复位脉冲和接下来由DS18B20发出的存在脉冲。其初始化时序图如图3所示。当DS18B20响应单片机的复位而发出存在脉冲时,单片机便知道DS18B20在线上并已准备好。单片机发送复位脉冲,即拉低总线至少480卜,然后单片机释放总线并进入接收模式。当DS18B20检测到复位脉冲后,等待15~60卜,然后发送存在脉冲,即拉低总线60~240卜。由于DS18B20的DQ弓脚接了一个上拉电阻,所以,总线的空闲状态为高电平,存在脉冲结束后,总线自动恢复到高电平状态。单片机所要做的就是发出复位脉冲并检测DS18B20的存在脉冲,其参考程序如下:

voidreset()

{

DQ=1;//DQ复位

delay(5);//稍做延时

DQ=0;//单片机将DQ拉低

delay(60);//精确延时大于480μs

DQ=1;//拉高总线

delay(8);

while(DQ);

while(~DQ)//检测到应答脉冲

delay(4);

}

基于DS18B20的温度测量和显示系统设计与仿真

图2温度测量与显示系统仿真电路图

3.2写时序

单片机可在写时隙向DS18B20写入数据,在读时隙从DS18B20读出数据,每个时隙总线上只传送一位数据。写时隙有“写1”时隙和“写0”时隙两种。单片机通过写1时隙向DS18B20写入一个逻辑1,并通过写0时隙向DS18B20写入一个逻辑0。所有的写时隙必须至少持续60us,并在每个独立的写时隙之间至少有1us的恢复时间。两种写时隙都是由单片机拉低总线开始的,如图3所示。

基于DS18B20的温度测量和显示系统设计与仿真

基于DS18B20的温度测量和显示系统设计与仿真

图3DS18B20的初始化时序、写时序和读时序

要产生写1时隙,单片机在拉低总线后必须在15μs之内释放总线。总线被释放后,上拉电阻将把总线拉高。要产生写0时隙,单片机在拉低总线后必须继续保持总线低电平使时隙至少60μs。DS18B20在时隙开始后15~60μs之间的时间段内对总线进行采样,如果总线是高电平,则向DS18B20写入一个1,如果总线是低电平,则向DS18B20写入一个0。

下面是向DS18B20写入一个字节数据的程序代码:

tempwrite(unsignedchardat)

{

uchari=0;

for(i=8;i>0;i--)

{

DQ=0;

DQ=dat&0x01;

delay(10);

DQ=1;

dat>>=1;

}

delay(8);

}

3.3读时序

所有的读时隙必须至少持续60卜,并在每个独立的读时隙之间至少有13的恢复时间。读时隙开始后,先由单片机拉低总线至少13,然后单片机释放总线。读时隙开始后,DS18B20将开始向总线发送1或0。发送0时,DS18B20释放总线直到时隙结束,此后上拉电阻将把总线拉回到高电平的空闲状态。DS18B20的数据在读时隙开始之后15卜之内有效,因此,单片机在时隙开始后,必须释放总线,然后在153之内对总线进行采样。下面是从DS18B20读出一个字节数据的程序:

tempREAD(void)

{

uchari=0;

uchardat=0;

for(i=8;i>0;i--)

{

DQ=0;//给脉冲信号

dat>>=1;

DQ=1;//给脉冲信号

if(DQ)

dat|=0x80;

delay(8);

}

return(dat);

}

3.4主要命令

DS18B20有5个ROM操作命令,6个存储器操作命令,表1所列是DS18B20的操作命令。

基于DS18B20的温度测量和显示系统设计与仿真

本系统主要使用了表1中的3个命令,即跳过ROM、温度变换和读暂存器命令。

3.5显示程序

DS18B20提供的温度数据有两个字节,其中低8位的末4位是小数部分,因此,程序中对温度数据的整数部分和小数部分要分别进行处理。如t=t>>4;即得到温度值的整数部分,t=t&0x0f;则得到温度值的小数部分,然后分别在数码管上进行显示。

3.6报警部分

在程序中设置温度上限和温度下限后,测量温度将与门限值进行比较。如果测量温度高于温度上限或者低于温度下限,系统就发出报警。

4结语

本文基于数字温度传感器DS18B20设计并仿真了一个温度测量与显示系统,同时,系统设置了温度上限和温度下限,当测量温度超出温度门限值时,系统便会报警。事实上,具有显示与报警功能的温度测量系统的应用非常广泛,而且DS18B20可以支持多点组网,因此可以同时测量多点温度。

20210923_614c18263b821__基于DS18B20温度测量和显示系统设计与仿真

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭