DS18B20温度传感器使用方法以及代码.

DS18B20温度传感器使用方法以及代码.
DS18B20温度传感器使用方法以及代码.

第7章 DS18B20温度传感器

7.1 温度传感器概述

温度传感器是各种传感器中最常用的一种,早起使用的是模拟温度传感器,如热敏电阻,随着环境温度的变化,它的阻值也发生线性变化,用处理器采集电阻两端的电压,然后根据某个公式就可以计算出当前环境温度。随着科技的进步,现代的温度传感器已经走向数字化,外形小,接口简单,广泛应用在生产实践的各个领域,为我们的生活提供便利。随着现代仪器的发展,微型化、集成化、数字化、正成为传感器发展的一个重要方向。美国DALLS半导体公司推出的数字化温度传感器DS18B20采用单总线协议,即单片机接口仅需占用一个I/O端口,无需任何外部元件,直接将环境温度转化为数字信号,以数码方式串行输出,从而大大简化了传感器与微处理器的接口。

7.2 DS18B20温度传感器介绍

DS18B20是美国DALLAS半导体公司继DS1820之后最新推出的一种改进型智能温度传感器。与传统的热敏电阻相比,他能够直接读出被测温度并且可根据实际要求通过简单的编程实现9~12位的数字值读数方式。可以分别在93.75 ms和750 ms内完成9位和12位的数字量,并且从DS18B20读出的信息或写入DS18B20的信息仅需要一根口线(单线接口)读写,温度变换功率来源于数据总线,总线本身也可以向所挂接的DS18B20供电,而无需额外电源。因而使用DS18B20可使系统结构更趋简单,可靠性更高。他在测温精度、转换时间、传输距离、分辨率等方面较DS1820有了很大的改进,给用户带来了更方便的

使用和更令人满意的效果。

1. DS18B20温度传感器的特性

①独特的单线接口方式:DS18B20与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯。

②在使用中不需要任何外围元件。

③可用数据线供电,电压范围:+3.0~ +5.5 V。

④测温范围:-55 ~+125 ℃。固有测温分辨率为0.5 ℃。

⑤通过编程可实现9~12位的数字读数方式。

⑥用户可自设定非易失性的报警上下限值。

⑦支持多点组网功能,多个DS18B20可以并联在惟一的三线上,实现多点测温。

⑧负压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作。

2. 引脚介绍

DS18B20有两种封装:三脚TO-92直插式(用的最多、最普遍的封装)和八脚SOIC贴片式。下图为实验板上直插式DS18B20的原理图。

3.工作原理

单片机需要怎样工作才能将DS18B20中的温度数据独取出来呢?下面将给出详细

分析。

首先我们来看看控制DS18B20的指令:

(1)读命令(33H)通过该命令主机可以读出ROM中8位系列产品代

码、48位产品序列号和8位CRC码。读命令仅用在单个DS18B20在线情

况,当多于一个时由于DS18B20为开漏输出将产生线与,从而引起数据冲突。

(2)选择定位命令(55H)多片DS18B20在线时,主机发出该命令和一个64位数列,DS18B20内部ROM与主机数列一致者,才响应主机发送的寄

存器操作命令,其他DS18B20等待复位。该命令也可以用在单片DS18B20

情况。

(3)跳过ROM序列号检测命令(CCH)对于单片DS18B20在线系统,该命令允许主机跳过ROM序列号检测而直接对寄存器操作,从而节省时间。

对于多片DS18B20在线系统,该命令将引起数据冲突。

(4)查询命令(F0H)当系统初建时,主机可能不知道总线上有多少设

备,以及他们各自的64位序列号,用该命令可以做到这点。

(5)报警查询命令(ECH)该命令操作过程同ROM查询命令,但是,仅当上次温度测量值已置位报警标志(由于高于TH或低于TL时),

DS18B20才响应该命令,如果DS18B20处于上电状态,该标志将保持有

效,直到遇到下列两种情况:(1)本次测量温度发生变化,测量值处于

TH、TL之间;(2)TH、TL改变,温度值处于新的范围之间。设置报警

时要考虑到EEROM中的值。

如果主机只是对一个DS18B20进行操作,进不需要读取ROM编码一级匹配ROM 编码了,只要跳过ROM(CCH)命令,就可以进行如下温度转换和读取操作。

(1)写入(4EH)用此命令把数据写入寄存第2~4字节,从第2字节(TH)开始。复位信号发出之前必须把这三个字节写完。

(2)读出(BEH)用此命令读出寄存器中的内容,从第1字节开始,直到读完第9字节,如果仅需要寄存器中部分内容,主机可以在合适时刻发送复位命令结束该过程。

(3)复制(48H)用该命令把暂存器第2~4字节转存到DS18B20的EEROM 中,如果DS18B20是由信号线供电,主机发出此命令后,总线必须保证至少10ms 的上拉,当发出命令后,主机发出读时隙来读总线,如果转存正在进行,读结果为0,转存结束为1。

(4)开始转换(44H) DS18B20收到该命令后立刻开始温度转换,不需要其他数据。此时DS18B20处于空闲状态,当温度转换正在进行时,主机读总线将收到0,转换结束为1。如果DS18B20是由信号线供电,主机发出此命令后主机必须立即提供至少相应于分辨率的温度转换时间的上拉电平。

(5)回调(B8H)执行该命令把EEROM中的内容回调到寄存器TH、TL和设置寄存器单元中,DS18B20上电时能自动回调,因此设备上电后TH、TL就存在有效数据。该命令发出后,如果主机跟着读总线,读到0意味着忙,1为回调结束。

(6)读电源标志(B4H)主机发出命令后读总线,DS18B20将发送电源标志,0为信号线供电,1为外接电源。

表16.2.4列出了温度数据在高速暂存器RAM和第0和第1个字节中的存储格式。DS18B20在出厂时默认配置为12位,其中最高位为符号位,即温度值共11位,

单片机在读取数据时,一次会读两字节共16位,读完后将低11位的二进制数转化为十进制数后再乘以0.0625变为所测的实际温度值。另外,还需要判断温度的正负。前5个数字为符号位,这5位同时变化,我们只需要判断其中1位就可以了。前5位为1时,读取的温度为负值,且测到的数值需要取反加1再乘以0.0625才可得到实际温度值。前五位为0时;读取的温度为正值,只要将测得的数值乘以0.0625即可得到实际温度值。

4.工作时序图

图16.26为时序图中各总线状态。

(1)初始化(时序图见图

16.2.7)

1)先将数据线置高电平1。

2)延时(该时间要求不是很严格,但是要尽可能短一点)。

3)数据线拉到低电平0。

4)延时750μs(该时间范围可以在480-960μs)。

5)数据线拉到高电平1。

6)延时等待,如果初始化成功则在15-60ms内产生一个由DS18B20返回的低电平0,据该状态可以确定它的存在。但是应注意,不能无限地等待,不然会使程序进入死循环,所以要进行超时判断。

7)若CPU读到数据线上的低电平0后,还要进行延时,其延时时间从发出高电平算起(第5步的时间算起)最少要480μs。

8)将数据线再次拉到高电平1后结束。

(2)DS18B20写数据(时序图见图16.2.8)

1)数据线线置低电平0。

2)延时确定的时间为15μs、

3)按从地位到高位的顺序发送数据(一次只发送一位)。

4)延时时间45μs。

5)将数据线拉到高电平1.

6)重复1-5步骤,直到发送完整个字节。

7)最后将数据线拉高到1。

(3)DS18B20读数据(时序图见图16.2.9)

1)将数据线拉高到1

2)延时2μs。

3)将数据线拉到0

4)延时6μs。

5)将数据线拉高到1.

6)延时4μs。

7)读数据线的状态得到一个状态位,并进行数据处理。

8)延时30μs。

9)重复1-7步骤,直到读取完一个字节。

7.3 综合实验四:读取18B20的信息并显示在1602上

/*程序功能:在1602液晶显示从DS18B20温度传感器中读出的温度*/

#include

typedef unsigned char uchar;

typedef unsigned int uint;

sbit ds = P1^6; // 温度传感器信号线

sbit beep = P1^5; // 定义蜂鸣器端口

sbit LCD_RS = P2^6; // 数据/命令选择端(H/L)

sbit LCD_RW = P2^5; // 读写选择端(1/0)

sbit LCD_EP = P2^7; // 使能信号

uint temp;

float f_temp;

uchar code table1[] = {"DATA:2014-7-10"};

uchar code table2[] = {"Temperature:xx c"};

uchar code table3[] = {"0123456789"};

void delay(uint xms

{ // 延时函数

uint i,j;

for(i = xms;i > 0;i--

for(j = 110;j > 0;j--;

}

/*******************************************************************/ /*

/* DS18B20温度传感器模块

/*

/*******************************************************************/ void dsreset(void //18B20复位,初始化函数

{

uint i;

ds=0;

i=103;

while(i>0i--;

ds=1;

i=4;

while(i>0i--;

}

bit tempreadbit( //读1位数据函数

{

uint i;

bit dat;

ds=0;i++; //i++ 起延时作用

ds=1;i++;i++;

dat=ds;

i=8;while(i>0i--;

return dat;

}

uchar tempread( //读1个字节

{

uchar i,j,dat;

dat=0;

for(i=1;i<=8;i++

{

j=tempreadbit(;

dat=(j<<7|(dat>>1; //读出的数据最低位在最前面,这样刚好一个字节在DAT里

}

return dat;

}

void tempwritebyte(uchar dat //向DS18B20写一个字节数据函数{

uint i;

uchar j;

bit testb;

for(j=1;j<=8;j++

{

testb=dat&0x01;

dat=dat>>1;

if(testb //写 1

{

ds=0;

i++;i++;

ds=1;

i=8;while(i>0i--;

}

else

{

ds=0; //写 0

i=8;while(i>0i--;

ds=1;

i++;i++;

}

}

}

void tempchange(void //DS18B20 开始获取温度并转换

{

dsreset(;

delay(1;

tempwritebyte(0xcc; // 写跳过读ROM指令

tempwritebyte(0x44; // 写温度转换指令

}

uint get_temp( //读取寄存器中存储的温度数据函数

{

uchar a,b;

dsreset(;

delay(1;

tempwritebyte(0xcc;

tempwritebyte(0xbe;

a=tempread(; //读低8位

b=tempread(; //读高8位

temp=b;

temp<<=8; //两个字节组合为1个字

temp=temp|a;

f_temp=temp*0.0625; //温度在寄存器中为12位分辨率位0.0625°temp=f_temp*10+0.5; //乘以10表示小数点后面只取1位,加0.5是四舍五入

f_temp=f_temp+0.05;

return temp; //temp是整型

}

/*******************************************************************/ /*

/* 1602液晶模块

/*

/*******************************************************************/ void lcd_wcmd(uchar cmd // 写入指令数据到LCD

{ //RS=L,RW=L,E=高脉冲,D0-D7=指令码。

LCD_RS = 0;

LCD_RW = 0;

LCD_EP = 0;

P0 = cmd;

delay(1;

LCD_EP = 1;

delay(1;

LCD_EP = 0;

}

void lcd_wdata(uchar dat //写入字符显示数据到LCD

{ //RS=H,RW=L,E=高脉冲,D0-D7=数据

LCD_RS = 1;

LCD_RW = 0;

LCD_EP = 0;

P0 = dat;

delay(1;

LCD_EP = 1;

delay(1;

LCD_EP = 0;

}

void lcd_init( //LCD初始化设定初始化函数

{

lcd_wcmd(0x38; //16*2显示,5*7点阵,8位数据

delay(1;

lcd_wcmd(0x0c; //设置开显示,不显示光标

delay(1;

lcd_wcmd(0x06; //写一个字符后地址指针加1

delay(1;

lcd_wcmd(0x01; //显示清0,数据指针清0

delay(1;

}

/*******************************************************************/ /*

/* 主函数

/*

/*******************************************************************/ void main(

{

uchar i;

beep = 0; //蜂鸣器默认处于开启状态,所以关闭它

lcd_init(; //LCD初始化

delay(10;

i = 0;

lcd_wcmd(0x80; //第1行第1列

while(table1[i] != '\0' //按键1对应的字样

{

lcd_wdata(table1[i];

i++;

}

i = 0;

lcd_wcmd(0x80+0x40; //第2行第1列

while(table2[i] != '\0' //按键1对应的字样

{

lcd_wdata(table2[i];

i++;

}

lcd_wcmd(0x80+0x4e; // 设置显示位置为第二行第13个字符lcd_wdata(0xdf; // 显示字符°

while(1

{

tempchange(;

lcd_wcmd(0x80+0x4c;

lcd_wdata(table3[get_temp(/100]; //温度的十位

lcd_wdata(table3[get_temp(%100/10]; //温度的个位

} }

DS18B20 数字温度传感器

应用指引:在MC430F14板上是标配了DS18B20数字温度传感器器,同时希望用户通过以下DS18B20的讲解能够了解更多1线 MC430F14实物图如下: >>关于MC430F14开发板详情>> 在传统的模拟信号远距离温度测量系统中,需要很好的解决引线误差补偿问题、多点测量切换误差问题和放大电路零点漂移误差问题等技术问题,才能够达到较高的测量精度。另外一般监控现场的电磁环境都非常恶劣,各种干扰信号较强,模拟温度信号容易受到干扰而产生测量误差,影响测量精度。因此,在温度测量系统中,采用抗干扰能力强的新型数字温度传感器是解决这些问题的最有效方案,新型数字温度传感器DS18B20具有体积更小、精度更高、适用电压更宽、采用一线总线、可组网等优点,在实际应用中取得了良好的测温效果。 新的"一线器件"DS18B20体积更小、适用电压更宽、更经济。

美国Dallas半导体公司的数字化温度传感器DS1820是世界上第一片支持 "一线总线"接口的温度传感器,在其内部使用了在板(ON-B0ARD)专利技术。全部传感元件及转换电路集成在形如一只三极管的集成电路内。一线总线独特而且经济的特点,使用户可轻松地组建传感器网络,为测量系统的构建引入全新概念。现在,新一代的DS18B20体积更小、更经济、更灵活。使你可以充分发挥“一线总线”的优点。目前DS18B20批量采购价格仅10元左右。 DS18B20、DS1822 "一线总线"数字化温度传感器 同DS1820一样,DS18B20也支持"一线总线"接口,测量温度范围为-55°C~+125°C,在-10~+85°C范围内,精度为±0.5°C。DS1822的精度较差为±2°C。现场温度直接以"一线总线"的数字方式传输,大大提高了系统的抗干扰性。适合于恶劣环境的现场温度测量,如:环境控制、设备或过程控制、测温类消费电子产品等。与前一代产品不同,新的产品支持3V~5.5V的电压范围,使系统设计更灵活、方便。而且新一代产品更便宜,体积更小。 DS18B20、DS1822的特性 DS18B20可以程序设定9~12位的分辨率,精度为±0.5°C。可选更小的封装方式,更宽的电压适用范围。分辨率设定,及用户设定的报警温度存储在EEPROM中,掉电后依然保存。DS18B20的性能是新一代产品中最好的!性能价格比也非常出色!DS1822与DS18B20软件兼容,是DS18B20的简化版本。省略了存储用户定义报警温度、分辨率参数的EEPROM,精度降低为±2°C,适用于对性能要求不高,成本控制严格的应用,是经济型产品。继"一线总线"的早期产品后,DS1820开辟了温度传感器技术的新概念。DS18B20和DS1822使电压、特性及封装有更多的选择,让我们可以构建适合自己的经济的测温系统。 一、DS18B20的主要特性 (1)适应电压范围更宽,电压范围:3.0~5.5V,在寄生电源方式下可由数据线供电 (2)独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯

DS18B20数字温度计使用

DS18B20数字温度计使用 1.DS18B20基本知识 DS18B20数字温度计是DALLAS公司生产的1-Wire,即单总线器件,具有线路简单,体积小的特点。因此用它来组成一个测温系统,具有线路简单,在一根通信线,可以挂很多这样的数字温度计,十分方便。 1、DS18B20产品的特点 (1)、只要求一个端口即可实现通信。 (2)、在DS18B20中的每个器件上都有独一无二的序列号。 (3)、实际应用中不需要外部任何元器件即可实现测温。 (4)、测量温度范围在-55。C到+125。C之间。 (5)、数字温度计的分辨率用户可以从9位到12位选择。 (6)、内部有温度上、下限告警设置。 2、DS18B20的引脚介绍 TO-92封装的DS18B20的引脚排列见图1,其引脚功能描述见表1。 (底视图)图1 表1 DS18B20详细引脚功能描述 3. DS18B20的使用方法 由于DS18B20采用的是1-Wire总线协议方式,即在一根数据线实现数据的双向传输,而对AT89S51单片机来说,硬件上并不支持单总线协议,因此,我们必须采用软件的方法来模拟单总线的协议时序来完成对DS18B20芯片的访问。 由于DS18B20是在一根I/O线上读写数据,因此,对读写的数据位有着严格的时序要求。DS18B20有严格的通信协议来保证各位数据传输的正确性和完整性。该协议定义了几种信号的时序:初始化时序、读时序、写时序。所有时序都

是将主机作为主设备,单总线器件作为从设备。而每一次命令和数据的传输都是从主机主动启动写时序开始,如果要求单总线器件回送数据,在进行写命令后,主机需启动读时序完成数据接收。数据和命令的传输都是低位在先。 DS18B20的复位时序 DS18B20的读时序 对于DS18B20的读时序分为读0时序和读1时序两个过程。 对于DS18B20的读时隙是从主机把单总线拉低之后,在15秒之内就得释放单总线,以让DS18B20把数据传输到单总线上。DS18B20在完成一个读时序过程,至少需要60us才能完成。 DS18B20的写时序 对于DS18B20的写时序仍然分为写0时序和写1时序两个过程。 对于DS18B20写0时序和写1时序的要求不同,当要写0时序时,单总线要被拉低至少60us,保证DS18B20能够在15us到45us之间能够正确地采样IO总线上的“0”电平,当要写1时序时,单总线被拉低之后,在15us之内就得释放单总线。 4.实验任务 用一片DS18B20构成测温系统,测量的温度精度达到0.1度,测量的温度的范围在-20度到+100度之间,用8位数码管显示出来。 5.电路原理图 6.系统板上硬件连线 (1).把“单片机系统”区域中的P0.0-P0.7用8芯排线连接到“动态数码显示”区域中的ABCDEFGH端子上。 (2).把“单片机系统”区域中的P2.0-P2.7用8芯排线连接到“动态数码显示”区域中的S1S2S3S4S5S6S7S8端子上。 (3).把DS18B20芯片插入“四路单总线”区域中的任一个插座中,注意电源与地信号不要接反。 (4).把“四路单总线”区域中的对应的DQ端子连接到“单片机系统” 区域中的P3.7/RD端子上。 7. C语言源程序 #include

DS18B20温度传感器使用方法以及代码

第7章 DS18B20温度传感器 7.1 温度传感器概述 温度传感器是各种传感器中最常用的一种,早起使用的是模拟温 度传感器,如热敏电阻,随着环境温度的变化,它的阻值也发生线性变化,用处理器采集电阻两端的电压,然后根据某个公式就可以计算出当前环境温度。随着科技的进步,现代的温度传感器已经走向数字化,外形小,接口简单,广泛应用在生产实践的各个领域,为我们的生活提供便利。随着现代仪器的发展,微型化、集成化、数字化、正成为传感器发展的一个重要方向。美国DALLS半导体公司推出的数字化温度传感器DS18B20采用单总线协议,即单片机接口仅需占用一个 I/O端口,无需任何外部元件,直接将环境温度转化为数字信号,以数码方式串行输出,从而大大简化了传感器与微处理器的接口。 7.2 DS18B20温度传感器介绍 DS18B20是美国DALLAS^导体公司继DS1820之后最新推出的一种改进型智能温度传感器。与传统的热敏电阻相比,他能够直接读出被测温度并且可根据实际要求通过简单的编程实现9?12位的数字 值读数方式。可以分别在93.75 ms和750 ms内完成9位和12位的数字量,并且从DS18B20读出的信息或写入 DS18B20的信息仅需要一根口线(单线接口)读写,温度变换功率来源于数据总线,总线本身也可以向所挂接的 DS18B20供电,而无需额外电源。因而使用

DS18B20可使系统结构更趋简单,可靠性更高。他在测温精度、转换时间、传输距离、分辨率等方面较 DS1820有了很大的改进,给用户带来了更方便的使用和更令人满意的效果。 1. DS18B20温度传感器的特性 ①独特的单线接口方式:DS18B20与微处理器连接时仅需要一条口 线即可实现微处理器与DS18B20勺双向通讯。 ②在使用中不需要任何外围元件。 ③可用数据线供电,电压范围:+3.0~ +5.5 V。 ④测温范围:-55 ~+125 C。固有测温分辨率为0.5 C。 ⑤通过编程可实现9~12位的数字读数方式。 ⑥用户可自设定非易失性的报警上下限值。 ⑦支持多点组网功能,多个 DS18B20可以并联在惟一的三线上,实现多点测温。 ⑧负压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作。 2. 引脚介绍 DS18B20有两种封装:三脚TO-92直插式(用的最多、最普遍的封装)和八脚SOIC贴片式。下图为实验板上直插式 DS18B20的原理图。 3. 工作原理 单片机需要怎样工作才能将DS18B2 0中的温度数据独取出来呢?F面将给出详细分析

《温度传感器原理》.(DOC)

一、温度传感器热电阻的应用原理 温度传感器热电阻是中低温区最常用的一种温度检测器。它的主要特点是测量精度高,性能稳定。其中铂热是阻的测量精确度是最高的,它不仅广泛应用于工业测温,而且被制成标准的基准仪。 1.温度传感器热电阻测温原理及材料 温度传感器热电阻测温是基于金属导体的电阻值随温度的增加而增加这一特性来进行温度测量的。温度传感器热电阻大都由纯金属材料制成,目前应用最多的是铂和铜,此外,现在已开始采用甸、镍、锰和铑等材料制造温度传感器热电阻。 2.温度传感器热电阻的结构

(1)精通型温度传感器热电阻工业常用温度传感器热电阻感温元件(电阻体)的结构及特点见表2-1-11。从温度传感器热电阻的测温原理可知,被测温度的变化是直接通过温度传感器热电阻阻值的变化来测量的,因此,温度传感器热电阻体的引出线等各种导线电阻的变化会给温度测量带来影响。为消除引线电阻的影响同般采用三线制或四线制,有关具体内容参见本篇第三章第一节.

(2)铠装温度传感器热电阻铠装温度传感器热电阻是由感温元件(电阻体)、引线、绝缘材料、不锈钢套管组合而成的坚实体,如图2-1-7所示,它的外径一般为φ2~φ8mm,最小可达φmm。 与普通型温度传感器热电阻相比,它有下列优点:①体积小,内部无空气隙,热惯性上,测量滞后小;②机械性能好、耐振,抗冲击;③能弯曲,便于安装④使用寿命长。 (3)端面温度传感器热电阻端面温度传感器热电阻感温元件由特殊处理的电阻丝材绕制,紧贴在温度计端面,其结构如图2-1-8所示。它与一般轴向温度传感器热电阻相比,能更正确和快速地反映被测端面的实际温度,适用于测量轴瓦和其他机件的端面温度。 (4)隔爆型温度传感器热电阻隔爆型温度传感器热电阻通过特殊结构的接线盒,把其外壳内部爆炸性混合气体因受到火花或电弧等影响而发生的爆炸局限在接线盒内,生产现场

传感器原理及应用

温度传感器的应用及原理 温度测量应用非常广泛,不仅生产工艺需要温度控制,有些电子产品还需对它们自身的温度进行测量,如计算机要监控CPU的温度,马达控制器要知道功率驱动IC的温度等等,下面介绍几种常用的温度传感器。 温度是实际应用中经常需要测试的参数,从钢铁制造到半导体生产,很多工艺都要依靠温度来实现,温度传感器是应用系统与现实世界之间的桥梁。本文对不同的温度传感器进行简要概述,并介绍与电路系统之间的接口。 热敏电阻器 用来测量温度的传感器种类很多,热敏电阻器就是其中之一。许多热敏电阻具有负温度系数(NTC),也就是说温度下降时它的电阻值会升高。在所有被动式温度传感器中,热敏电阻的灵敏度(即温度每变化一度时电阻的变化)最高,但热敏电阻的电阻/温度曲线是非线性的。表1是一个典型的NTC热敏电阻器性能参数。 这些数据是对Vishay-Dale热敏电阻进行量测得到的,但它也代表了NTC热敏电阻的总体情况。其中电阻值以一个比率形式给出(R/R25),该比率表示当前温度下的阻值与25℃时的阻值之比,通常同一系列的热敏电阻器具有类似的特性和相同电阻/温度曲线。以表1中的热敏电阻系列为例,25℃时阻值为10KΩ的电阻,在0℃时电阻为28.1KΩ,60℃时电阻为4.086KΩ;与此类似,25℃时电阻为5KΩ的热敏电阻在0℃时电阻则为 14.050KΩ。 图1是热敏电阻的温度曲线,可以看到电阻/温度曲线是非线性的。

虽然这里的热敏电阻数据以10℃为增量,但有些热敏电阻可以以5℃甚至1℃为增量。如果想要知道两点之间某一温度下的阻值,可以用这个曲线来估计,也可以直接计算出电阻值,计算公式如下: 这里T指开氏绝对温度,A、B、C、D是常数,根据热敏电阻的特性而各有不同,这些参数由热敏电阻的制造商提供。 热敏电阻一般有一个误差范围,用来规定样品之间的一致性。根据使用的材料不同,误差值通常在1%至10%之间。有些热敏电阻设计成应用时可以互换,用于不能进行现场调节的场合,例如一台仪器,用户或现场工程师只能更换热敏电阻而无法进行校准,这种热敏电阻比普通的精度要高很多,也要贵得多。 图2是利用热敏电阻测量温度的典型电路。电阻R1将热敏电阻的电压拉升到参考电压,一般它与ADC的参考电压一致,因此如果ADC的参考电压是5V,Vref 也将是5V。热敏电阻和电阻串联产生分压,其阻值变化使得节点处的电压也产生变化,该电路的精度取决于热敏电阻和电阻的误差以及参考电压的精度。

DS18b20温度传感器

最小的温度显示程序-c51 (2010-12-07 00:45:27) 转载 分类:51单片机 标签: 杂谈 #include #include sbit DQ=P2^0; bit presence; unsigned char templ,temph; char array[10]={0x7e,0x48,0x3d,0x6d,0x4b,0x67,0x73,0x4c,0x7f,0x4f}; void Delay(unsigned int num)//可定义延时 { while( --num ); } bit Init_DS18B20(void) { DQ = 1; //DQ复位 Delay(8); //稍做延时 DQ = 0; //单片机将DQ拉低 Delay(90); //精确延时大于 480us DQ = 1; //拉高总线 Delay(8); presence = DQ; //如果=0则初始化成功 =1则初始化失败 Delay(100); DQ = 1; return(presence); //返回信号,0=presence,1= no presence } unsigned int ReadOneChar(void) { unsigned char i = 0; unsigned char dat = 0;

for (i = 8; i > 0; i--) { DQ = 0; // 给脉冲信号 dat >>= 1; //位右移 DQ = 1; // 给脉冲信号等待传感器返回脉冲 if(DQ) dat |= 0x80; Delay(4); } return (dat); } void WriteOneChar(unsigned char dat) { unsigned char i = 0; for (i = 8; i > 0; i--) { DQ = 0; DQ = dat&0x01; Delay(5); DQ = 1; dat>>=1; } } void Read_Temperature(void) { Init_DS18B20(); WriteOneChar(0xcc); // 跳过读序号列号的操作 WriteOneChar(0x44); // 启动温度转换 Init_DS18B20(); WriteOneChar(0xCC); //跳过读序号列号的操作 WriteOneChar(0xBE); //读取温度寄存器 templ = ReadOneChar(); //温度低8位 temph = ReadOneChar(); //温度高8位 }

基于51单片机及DS18B20温度传感器的数字温度计程序(详细注释)

基于51单片机及DS18B20温度传感器的数字温度计程序(详细注释)

电路实物图如下图所示: C 语言程序如下所示: /******************************************************************** zicreate ----------------------------- Copyright (C) https://www.360docs.net/doc/5a4987642.html, -------------------------- * 程序名; 基于DS18B20的测温系统 * 功 能: 实时测量温度,超过上下限报警,报警温度可手动调整。K1是用来 * 进入上下限调节模式的,当按一下K1进入上限调节模式,再按一下进入下限 * 调节模式。在正常模式下,按一下K2进入查看上限温度模式,显示1s 左右自动 * 退出;按一下K3进入查看下限温度模式,显示1s 左右自动退出;按一下K4消除 * 按键音,再按一下启动按键音。在调节上下限温度模式下,K2是实现加1功能, * K1是实现减1功能,K3是用来设定上下限温度正负的。 * 编程者:Jason * 编程时间:2009/10/2 *********************************************************************/ #include //将AT89X52.h 头文件包含到主程序 #include //将intrins.h 头文件包含到主程序(调用其中的_nop_()空操作函数延时) #define uint unsigned int //变量类型宏定义,用uint 表示无符号整形(16位) #define uchar unsigned char //变量类型宏定义,用uchar 表示无符号字符型(8位) uchar max=0x00,min=0x00; //max 是上限报警温度,min 是下限报警温度 bit s=0; //s 是调整上下限温度时温度闪烁的标志位,s=0不显示200ms ,s=1显示1s 左右 bit s1=0; //s1标志位用于上下限查看时的显示 void display1(uint z); //声明display1()函数 #include"ds18b20.h" //将ds18b20.h 头文件包含到主程序 #include"keyscan.h" //将keyscan.h 头文件包含到主程序 #include"display.h" //将display.h 头文件包含到主程序

传感器原理与工程应用考试题库

传感器原理与工程应用习题 一、单项选择题 1、在整个测量过程中,如果影响和决定误差大小的全部因素(条件)始终保持不变,对同一 被测量进行多次重复测量,这样的测量称为( C ) A.组合测量 B.静态测量 C.等精度测量 D.零位式测量 1.1在直流电路中使用电流表和电压表测量负载功率的测量方法属于( B )。 A. 直接测量 B. 间接测量 C. 组合测量 D. 等精度测量 2、1属于传感器动态特性指标的是( B ) A.重复性 B.固有频率 C.灵敏度 D.漂移 2.1不属于传感器静态特性指标的是( B ) A.重复性 B.固有频率 C.灵敏度 D.漂移 2.2 以下那一项不属于电路参量式传感器的基本形式的是( D )。 A.电阻式 B.电感式 C.电容式 D.电压式 2.2传感器的主要功能是( A )。 A. 检测和转换 B. 滤波和放大 C. 调制和解调 D. 传输和显示 3.电阻式传感器是将被测量的变化转换成( B )变化的传感器。 A.电子 B.电压 C.电感 D.电阻 3.1电阻应变片配用的测量电路中,为了克服分布电容的影响,多采用( D )。 A.直流平衡电桥 B.直流不平衡电桥 C.交流平衡电桥D.交流不平衡电桥 3.2电阻应变片的初始电阻数值有多种,其中用的最多的是( B )。 A、60Ω B、120Ω C、200Ω D、350Ω 3.3电阻应变片式传感器一般不能用来测量下列那些量( D ) A、位移B、压力C、加速度D、电流 3.4直流电桥的平衡条件为( B ) A.相邻桥臂阻值乘积相等 B.相对桥臂阻值乘积相等 C.相对桥臂阻值比值相等 D.相邻桥臂阻值之和相等 3.5全桥差动电路的电压灵敏度是单臂工作时的( C )。

基于ds18b20的数字温度计设计

目录 (一)设计内容及要求 (2) (二)系统的硬件选择及设计 (3) 2.1核心处理器的设计 (3) 1、AT89C51引脚图 (3) 2、AT89C51引脚功能介绍 (3) 2.2温度采集电路的设计 (5) 1、单线技术 (5) 2、DS18B20的简介 (6) 3、DS18B20内部结构 (8) 4、DS18B20测温原理 (11) 5、温度采集电路 (12) 2.3温度显示电路的设计 (13) 1、LED数码管的操作 (13) 2、温度显示电路 (13) (三)系统的软件设计 (15) 3.1概述 (15) 3.2 DS18B20的单线协议和命令 (15) (1)初始化 (15) (2)ROM操作命令 (15) (3)内存操作命令 (16) 3.3温度采集程序流程图的设计 (18) 3.4温度显示程序流程图的设计 (19) (四) 结论 (19) (五)汇编代码 (20) (六)参考文献 (27)

基于DS18B20的数字温度计设计 摘要: 在本设计中选用AT89C51型单片机作为主控制器件,采用DS18B20数字温度传感器作为测温元件,通过两位共阴极LED数码显示管并行传送数据,实现温度显示。本设计的内容主要分为两部分,一是对系统硬件部分的设计,包括温度采集电路和显示电路;二是对系统软件部分的设计,应用汇编语言实现温度的采集与显示。通过DS18B20直接读取被测温度值,送入单片机进行数据处理,之后进行输出显示,最终完成了数字温度计的总体设计。其系统构成简单,信号采集效果好,数据处理速度快,便于实际检测使用。 关键词:单片机AT89C51;温度传感器DS18B20;LED数码管;数字温度计 (一)设计内容及要求 本设计主要介绍了用单片机和数字温度传感器DS18B20相结合的方法来实现温度的采集,以单片机AT89C51芯片为核心,辅以温度传感器DS18B20和LED 数码管及必要的外围电路,构成了一个多功能单片机数字温度计。 本次设计的主要思路是利用51系列单片机,数字温度传感器DS18B20和LED 数码显示器,构成实现温度检测与显示的单片机控制系统,即数字温度计。通过对单片机编写相应的程序,达到能够实时检测周围温度的目的。 通过对本课题的设计能够熟悉数字温度计的工作原理及过程,了解各功能器件(单片机、DS18B20、LED)的基本原理与应用,掌握各部分电路的硬件连线与程序编写,最终完成对数字温度计的总体设计。其具体的要求如下: 1、根据设计要求,选用AT89C51单片机为核心器件; 2、温度检测器件采用DS18B20数字式温度传感器,利用单总线式连接方式与单片机的P2.2引脚相连; 3、显示电路采用两位LED数码管以串口并行输出方式动态显示。

常用温度传感器解析,温度传感器的原理、分类及应用

常用温度传感器解析,温度传感器的原理、分类及应用 温度传感器(temperature transducer)是指能感受温度并转换成可用输出信号的传感器。温度传感器是温度测量仪表的核心部分,品种繁多。按测量方式可分为接触式和非接触式两大类,按照传感器材料及电子元件特性分为热电阻和热电偶两类。 温度传感器的分类接触式 接触式温度传感器的检测部分与被测对象有良好的接触,又称温度计。 温度计通过传导或对流达到热平衡,从而使温度计的示值能直接表示被测对象的温度。一般测量精度较高。在一定的测温范围内,温度计也可测量物体内部的温度分布。但对于运动体、小目标或热容量很小的对象则会产生较大的测量误差,常用的温度计有双金属温度计、玻璃液体温度计、压力式温度计、电阻温度计、热敏电阻和温差电偶等。它们广泛应用于工业、农业、商业等部门。在日常生活中人们也常常使用这些温度计。 随着低温技术在国防工程、空间技术、冶金、电子、食品、医药和石油化工等部门的广泛应用和超导技术的研究,测量120K以下温度的低温温度计得到了发展,如低温气体温度计、蒸汽压温度计、声学温度计、顺磁盐温度计、量子温度计、低温热电阻和低温温差电偶等。低温温度计要求感温元件体积小、准确度高、复现性和稳定性好。利用多孔高硅氧玻璃渗碳烧结而成的渗碳玻璃热电阻就是低温温度计的一种感温元件,可用于测量 1.6~300K范围内的温度。 非接触式 它的敏感元件与被测对象互不接触,又称非接触式测温仪表。这种仪表可用来测量运动物体、小目标和热容量小或温度变化迅速(瞬变)对象的表面温度,也可用于测量温度场的温度分布。 最常用的非接触式测温仪表基于黑体辐射的基本定律,称为辐射测温仪表。辐射测温法包括亮度法(见光学高温计)、辐射法(见辐射高温计)和比色法(见比色温度计)。各类辐

温度传感器工作原理

温度传感器工作原理 温度传感器temperature transducer,利用物质各种物理性质随温度变化的规律把温度转换为可用输出信号。温度传感器是温度测量仪表的核心部分,品种繁多。按测量方式可分为接触式和非接触式两大类,按照传感器材料及电子元件特性分为热电阻和热电偶两类。现代的温度传感器外形非常得小,这样更加让它广泛应用在生产实践的各个领域中,也为我们的生活提供了无数的便利和功能。 温度传感器有四种主要类型:热电偶、热敏电阻、电阻温度检测器(RTD)和IC温度传感器。IC温度传感器又包括模拟输出和数字输出两种类型。 1.热电偶的工作原理当有两种不同的导体和半导体A和B组成一个回路,其两端相互连接时,只要两结点处的温度不同,一端温度为T,称为工作端或热端,另一端温度为TO,称为自由端(也称参考端)或冷端,则回路中就有电流产生,如图2-1(a)所示,即回路中存在的电动势称为热电动势。这种由于温度不同而产生电动势的现象称为塞贝克效应。与塞贝克有关的效应有两个:其一,当有电流流过两个不同导体的连接处时,此处便吸收或放出热量(取决于电流的方向),称为珀尔帖效应;其二,当有电流流过存在温度梯度的导体时,导体吸收或放出热量(取决于电流相对于温度梯度的方向),称为汤姆逊效应。两种不同导体或半导体的组合称为热电偶。热电偶的热电势EAB(T,T0)是由接触电势和温差电势合成的。接触电势是指两种不同的导体或半导体在接触处产生的电势,此电势与两种导体或半导体的性质及在接触点的温度有关。温差电势是指同一导体或半导体在温度不同的两端产生的电势,此电势只与导体或半导体的性质和两端的温度有关,而与导体的长度、截面大小、沿其长度方向的温度分布无关。无论接触电势或温差电势都是由于集中于接触处端点的电子数不同而产生的电势,热电偶测量的热电势是二者的合成。当回路断开时,在断开处a,b之间便有一电动势差△V,其极性和大小与回路中的热电势一致,如图2-1(b)所示。并规定在冷端,当电流由A流向B时,称A为正极,B为负极。实验表明,当△V 很小时,△V与△T成正比关系。定义△V对△T的微分热电势为热电势率,又称塞贝克系数。塞贝克系数的符号和大小取决于组成热电偶的两种导体的热电特性和结点的温度

传感器原理与工程应用完整版习题参考答案

《传感器原理及工程应用》完整版习题答案 第1章 传感与检测技术的理论基础(P26) 1—1:测量的定义? 答:测量是以确定被测量的值或获取测量结果为目的的一系列操作。 所以, 测量也就是将被测量与同种性质的标准量进行比较, 确定被测量对标准量的倍数。 1—2:什么是测量值的绝对误差、相对误差、引用误差? 1- 3 用测量范围为-50~150kPa 的压力传感器测量140kPa 的压力时,传感器测得示值为142kPa ,求该示值的绝对误差、实际相对误差、标称相对误差和引用误差。 解: 已知: 真值L =140kPa 测量值x =142kPa 测量上限=150kPa 测量下限=-50kPa ∴ 绝对误差 Δ=x-L=142-140=2(kPa) 实际相对误差 %= =43.11402 ≈?L δ 标称相对误差 %==41.1142 2≈?x δ 引用误差 %--=测量上限-测量下限= 1) 50(1502 ≈?γ 1-10 对某节流元件(孔板)开孔直径d 20的尺寸进行了15次测量,测量数据如下(单位:mm ): 120.42 120.43 120.40 120.42 120.43 120.39 120.30 120.40 120.43 120.41 120.43 120.42 120.39 120.39 120.40 试用格拉布斯准则判断上述数据是否含有粗大误差,并写出其测量结果。 答:绝对误差是测量结果与真值之差, 即: 绝对误差=测量值—真值 相对误差是绝对误差与被测量真值之比,常用绝对误差与测量值之比,以百分数表示 , 即: 相对误差=绝对误差/测量值 ×100% 引用误差是绝对误差与量程之比,以百分数表示, 即: 引用误差=绝对误差/量程 ×100%

DS18B20数字温度计的设计

单片机原理及应用 课程设计报告书 题目:DS18B20数字温度计的设计 姓名学号:张琪05200102 吕群武05200166 蔡凌志05200178 专业班级:电信1班 指导老师:余琼蓉 设计时间:2010年12月

成绩评定

一、课题介绍 本设计是一款简单实用的小型数字温度计,所采用的主要元件有传感器18B20,单片机AT89S52,,四位共阴极数码管一个,电容电阻若干。18B20支持“一线总线”接口,测量温度范围-55°C~+125°C 。在-10~+85°C 范围内,精度为±0.5°C 。18B20的精度较差为± 2°C 。现场温度直接以“一线总线”的数字方式传输,大大提高了系统的抗干扰性。适合于恶劣环境的现场温度测量,如:环境控制、设备或过程控制、测温类消费电子产品等。 本次数字温度计的设计共分为五部分,主控制器,LED 显示部分,传感器部分,复位部分,时钟电路。主控制器即单片机部分,用于存储程序和控制电路;LED 显示部分是指四位共阳极数码管,用来显示温度;传感器部分,即温度传感器,用来采集温度,进行温度转换;复位部分,即复位电路。测量的总过程是,传感器采集到外部环境的温度,并进行转换后传到单片机,经过单片机处理判断后将温度传递到数码管显示。本设计能完成的温度测量范围是-55°C~+128°C ,由于能力有限,不能实现报警功能。 二、方案论证 方案一: 由于本设计是测温电路,可以使用热敏电阻之类的器件利用其感温效应,在将随被测温度变化的电压或电流采集过来,进行A/D 转换后,就可以用单片机进行数据的处理,在显示电路上,就可以将被测温度显示出来,这种设计需要用到A/D 转换电路,感温电路比较麻烦。 方案设计框图如下: 方案二:考虑到用温度传感器,在单片机电路设计中,大多都是使用传感器,所以这是非常容易想到的,所以可以采用一只温度传感器DS18B20,此传感器,可以很容易直接读取被测温度值,进行转换,就可以满足设计要求。 从以上两种方案,很容易看出,采用方案二,电路比较简单,软件设计也比较简单,故采用了方案二。

传感器原理及工程应用概述

第二章传感器概述 1、传感器是能感受规定的被测量并按照一定的规律转换成可用输出信号的器件或装置。 2、传感器是由敏感原件和转换原件组成 3、两种分类方法:一种是按被测参数分类,一种是按传感器工作原理分类 4、传感器的基本特性可分为静态特性和动态特性 5、静态特性是指被测量的值处于稳定状态时输入与输出的关系。主要指标有灵敏度、线性度、迟滞、重复性和漂移等。 6、灵敏度是输出量增量ΔY与引起输出量增量ΔY的相应输入量增量ΔX之比。用S表示即S=ΔY\ΔX。 7、线性度是指传感器的输入与输出之间数量关系的线性程度。也叫非线性误差用γL 表示即γL= 8、传感器在相同工作条件下输入量由小到大(正量程)及由大到小(反量程)变化期间输入输出特性曲线不重合的现象称为迟滞。迟滞误差用 9、重复性是指传感器在相同的工作条件下输入量按同一方向做全量程连续多次变化时,所得特性曲线不一致的程度。最大重复差值 10、漂移是指输入量不变的情况下传感器输出量随着时间变化。产生漂移的原因有两个一是传感器自身结构参数一是周围环境。温度漂移的计算 第三章应变式传感器 1、电阻应变式传感器是以电阻应变片为转换原件的传感器。 2、工作原理是基于电阻应变效应,即导体在外界作用下产生机械变形(拉伸或压缩)是,其电阻值相应发生变化(应变效应)。 3、电阻应变片分为丝式电阻应变片和箔式电阻应变片。 4、电阻在外力作用下而改变原来尺寸或形状的现象称为变形,而去掉外力后物体又能完全恢复其原来的尺寸和形状,这种变形称为弹性变形。具有弹性变形特性的物体称为弹性原件。 5、应变片的电阻值是指应变片没有粘贴且未受应变时,在室温下测定的电阻值即初始电阻值。 6、将直的电阻丝绕成敏感栅后,虽然长度不变,但应变状态不同,应变片敏感栅的电阻变化减小,因而其灵敏系数K较整长电阻丝的灵敏系数K0小,这种现象称为应变片的横向效应。为了减少横向效应产生的测量误差,现在一半多采用箔式应变片。 7、应变片温度误差:由于测量现场环境温度的改变而给测量带来的附加误差。产生的主要因素有以下两个方面:一是电阻温度系数的影响,一是试件材料和电阻丝材料的线膨胀系数的影响。 8、电阻应变片的温度补偿方法:1)线路补偿法2)应变片的自补法9***电阻应变片的测量电路10、压阻效应是指在一块半导体的某一轴向施加一定的压力时,其电阻值产生变化现象, 第四章电感式传感器 1、利用电磁感应原理将被测非电量如、位移、压力、流量、振动等转换成线圈自感系数L或互感系数M的变化,再由测量电路转换为电压或电流的变化量输出,这种装置称为电感式传感器。 2、零点残余电压:传感器在零点位移时的输出电压。产生原因主要有以下两点一是由于两电感线圈的电气参数及导磁体几何尺寸不完全对称,因此在两电感线圈上的电压幅值和相位不同,从而形成了零点残余电压的基波分量。一是由于传感器导磁材料磁化曲线的非线性(如铁磁饱和,磁滞损耗)使得激励电流与磁通波形不一致,从而形成了零点残余电压的高次谐波分量。为减小电感式传感器的零点残余电压,可以采取以下措施1)在设计和工艺上,力求做到磁路对称,铁芯材料均匀;要经过热处理以除去机械应力和改善磁性;两线圈毕恭毕敬绕制要均匀,力求几何尺寸与电气特性保持一致。2)在电路上进行补偿。 3、把被测的非电量变化转化为线圈互感变化的传感器称为互感式传感器。这种传感器

温度传感器DS18B20工作原理

温度传感器: DS18B20是DALLAS公司生产的一线式数字温度传感器,具有3引脚TO-92小体积封装形式;温度测量范围为-55℃~+125℃,可编程为9位~12位A/D转换精度,测温分辨率可达0.0625℃,被测温度用符号扩展的16位数字量方式串行输出;其工作电源既可在远端引入,也可采用寄生电源方式产生;多个DS18B20可以并联到3根或2根线上,CPU只需一根端口线就能与诸多DS18B20通信,占用微处理器的端口较少,可节省大量的引线和逻辑电路。以上特点使DS18B20非常适用于远距离多点温度检测系统。 2 DS18B20的内部结构 DS18B20内部结构如图1所示,主要由4部分组成:64位ROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。DS18B20的管脚排列如图2所示,DQ为数字信号输入/输出端;GND为电源地;VDD为外接供电电源输入端(在寄生电源接线方式时接地,见图4)。 ROM中的64位序列号是出厂前被光刻好的,它可以看作是该DS18B20的地址序列码,每个DS18B20的64位序列号均不相同。64位ROM的排的循环冗余校验码(CRC=X8+X5+X4+1)。ROM的作用是使每一个DS18B20都各不相同,这样就可以实现一根总线上挂接多个DS18B20的目的。 图1 DS18B20的内部结构

图2DS18B20的管脚排列 DS18B20中的温度传感器完成对温度的测量,用16位符号扩展的二进制补码读数形式提供,以0.0625℃/LSB形式表达,其中S为符号位。例如+125℃的数字输出为07D0H,+25.0625℃的数字输出为0191H,-25.0625℃的数字输出为FF6FH,-55℃的数字输出为FC90H。 温度值高字节 高低温报警触发器TH和TL、配置寄存器均由一个字节的EEPROM组成,使用一个存储器功能命令可对TH、TL或配置寄存器写入。其中配置寄存器的格式如下: R1、R0决定温度转换的精度位数:R1R0=“00”,9位精度,最大转换时间为93.75ms;R1R0=“01”,10位精度,最大转换时间为187.5ms;R1R0=“10”,11位精度,最大转换时间为375ms;R1R0=“11”,12位精度,最大转换时间为750ms;未编程时默认为12位精度。 高速暂存器是一个9字节的存储器。开始两个字节包含被测温度的数字量信息;第3、4、5字节分别是TH、TL、配置寄存器的临时拷贝,每一次上电复位时被刷新;第6、7、8字节未用,表现为全逻辑1;第9字节读出的是前面所有8个字节的CRC码,可用来保证通信正确。 3 DS18B20的工作时序 DS18B20的一线工作协议流程是:初始化→ROM操作指令→存储器操作指令→数据传输。其工作时序包括初始化时序、写时序和读时序,如图3(a)(b)(c)所示。

DS18B20数字温度计的设计与实现

DS18B20数字温度计的设计与实现 一、实验目的 1.了解DS18B20数字式温度传感器的工作原理。 2.利用DS18B20数字式温度传感器和微机实验平台实现数字温度计。 二、实验内容与要求 采用数字式温度传感器为检测器件,进行单点温度检测。用数码管直接显示温度值,微机系统作为数字温度计的控制系统。 1.基本要求: (1)检测的温度范围:0℃~100℃,检测分辨率 0.5℃。 (2)用4位数码管来显示温度值。 (3)超过警戒值(自己定义)要报警提示。 2.提高要求 (1)扩展温度范围。 (2)增加检测点的个数,实现多点温度检测。 三、设计报告要求 1.设计目的和内容 2.总体设计 3.硬件设计:原理图(接线图)及简要说明 4.软件设计框图及程序清单 5.设计结果和体会(包括遇到的问题及解决的方法) 四、数字温度传感器DS18B20 由DALLAS半导体公司生产的DS18B20型单线智能温度传感器,属于新一代适配微处理器的智能温度传感器,可广泛用于工业、民用、军事等领域的温度测量及控制仪器、测控系统和大型设备中。它具有体积小,接口方便,传输距离远等特点。 1.DS18B20性能特点 DS18B20的性能特点:①采用单总线专用技术,既可通过串行口线,也可通过其它I/O 口线与微机接口,无须经过其它变换电路,直接输出被测温度值(9位二进制数,含符号位),②测温范围为-55℃-+125℃,测量分辨率为0.0625℃,③内含64位经过激光修正的只读存

储器ROM ,④适配各种单片机或系统机,⑤用户可分别设定各路温度的上、下限,⑥内含寄生电源。 2. DS18B20内部结构 DS18B20内部结构主要由四部分组成:64位光刻ROM,温度传感器,非挥发的温度报警触发器TH 和TL,高速暂存器。64位光刻ROM 是出厂前被光刻好的,它可以看作是该DS18B20的地址序列号。64位ROM 结构图如图2所示。不同的器件地址序列号不同。 DS18B20的管脚排列如图1所示。 图1 DS18B20引脚分布图 图2 64位ROM 结构图 DS18B20高速暂存器共9个存储单元,如表所示: 序号 寄存器名称 作 用 序号 寄存器名称 作 用 0 温度低字节 以16位补码形式存放 4 配置寄存器 1 温度高字节 5、6、7 保留 2 TH/用户字节1 存放温度上限 8 CRC 3 HL/用户字节2 存放温度下限 以12位转化为例说明温度高低字节存放形式及计算:12位转化后得到的12位数据,存储在18B20的两个高低两个8位的RAM 中,二进制中的前面5位是符号位。如果测得的温度大于0,这5位为0,只要将测到的数值乘于0.0625即可得到实际温度;如果温度小于0,这5位为1,测到的数值需要取反加1再乘于0.0625才能得到实际温度。 LSB MSB 8位检验CRC 48位序列号 8位工厂代码(10H )

温度传感器常见故障的处理方法

温度传感器是温度测量仪表的核心部分,品种繁多。按测量方式可分为接触式和非接触式两大类,按照传感器材料及电子元件特性分为热电阻和热电偶两类。在实际使用上通常会和一些仪表配套使用,但也会出现很多故障现象。下面就让艾驰商城小编对温度传感器常见故障的处理方法来一一为大家做介绍吧。 第一,被测介质温度升高或者降低时变送器输出没有变化,这种情况大多是温度传感器密封的问题,可能是由于温度传感器没有密封好或者是在焊接的时候不小心将传感器焊了个小洞,这种情况一般需要更换传感器外壳才能解决。 第二,输出信号不稳定,这种原因是温度源本事的原因,温度源本事就是一个不稳定的温度,如果是仪表显示不稳定,那就是仪表的抗干扰能力不强的原因。 第三,变送器输出误差大,这种情况原因就比较多,可能是选用的温度传感器的电阻丝不对导致量程错误,也有可以能是传感器出厂的时候没有标定好。 温度传感器出现故障的情况很少见,只要出厂的时候进行仔细的检测,这些情况都是可以避免的,所以温度传感器在出厂的时候一地要进行检验,客户也可找传感器厂家索要出厂检测报告进行参考。 艾驰商城是国内最专业的MRO工业品网购平台,正品现货、优势价格、迅捷配送,是一站式采购的工业品商城!具有10年工业用品电子商务领域研究,以强大的信息通道建设的优势,以及依托线下贸易交易市场在工业用品行业上游供应链的整合能力,为广大的用户提供了传感器、图尔克传感器、变频器、断路器、继电器、PLC、工控机、仪器仪表、气缸、五金工具、伺服电机、劳保用品等一系列自动化的工控产品。 如需进一步了解图尔克、奥托尼克斯、科瑞、山武、倍加福、邦纳、亚德客、施克等各类传感器的选型,报价,采购,参数,图片,批发信息,请关注艾驰商城https://www.360docs.net/doc/5a4987642.html,/

DS18B20温度传感器工作原理及其应用电路图

DS18B20温度传感器工作原理及其应用电路图 时间:2012-02-16 14:16:04 来源:赛微电子网作者: 前言 温度与工农业生产密切相关,对温度的测量和控制是提高生产效率、保证产品质量以及保障生产安全和节约能源的保障。随着工业的不断发展,由于温度测量的普遍性,温度传感器的市场份额大大增加,居传感器首位。数字化温度传感器DS18B20是世界上第一片支持“一线总线”接口的温度传感器。现在,新一代的DS18B20温度传感器体积更小、更经济、更灵活。DS18B20温度传感器测量温度范围为-55℃~+125℃。在-10℃~+85℃范围内,精度为±0.5℃。现场温度直接以“一线总线”的数字方式传输,大大提高了系统的抗干扰性。基于DS18B20温度传感器的重要性,小编整理出DS18B20温度传感器工作原理及其应用电路图供大家参考。 一、DS18B20温度传感器工作原理(热电阻工作原理) DS18B20温度传感器工作原理框图如图所示: DS18B20温度传感器工作原理框图 图中低温度系数晶振的振荡频率受温度影响很小,用于产生固定频率的脉冲信号送给计数器1。高温度系数晶振随温度变化其振荡频率明显改变,所产生的信号作为计数器2的脉冲输入。计数器1和温度寄存器被预置在-55℃所对应的一个基数值。计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当计数器1的预置值减到0时,温度寄存器的值将加1,计数器1的预置将重新被装入,计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。斜率累加器用于补偿和修正测温过程中的非线性,其输出用于修正计数器1的预置值。 二、DS18B20温度传感器的应用电路 1.DS18B20温度传感器寄生电源供电方式电路图 寄生电源方式特点: (1)进行远距离测温时,无须本地电源。 (2)可以在没有常规电源的条件下读取ROM。 (3)电路更加简洁,仅用一根I/O口实现测温。 (4)只适应于单一温度传感器测温情况下使用,不适于采用电池供电系统中。

相关文档
最新文档