DS18B20温度传感器巡回检测温度报警器设计

合集下载

DS18B20温度传感器设计要点

DS18B20温度传感器设计要点

DS18B20温度传感器设计要点1.传感器选型:选择适合应用场景的DS18B20传感器,主要考虑工作温度范围、精度要求、供电电压等因素。

2.电路设计:(1)供电电压:DS18B20的供电电压范围为3V到5.5V,可以根据应用需求选择合适的供电电源。

(2)引脚连接:DS18B20有三个引脚,分别是VCC、DQ、GND。

其中VCC为供电电源,DQ为数据线,GND为地线。

在设计中要确保引脚连接正确稳定。

(3)电源滤波:为了减少电源噪声对传感器的影响,可以在供电电源上添加电源滤波电路,如滤波电容和电感等。

3.布线设计:由于DS18B20传感器采用单线总线通信,布线设计对于测量精度和通信稳定性非常重要。

(1)布线距离:DS18B20传感器的最大布线距离一般为100米,但实际上受到布线环境和通信电缆等因素的限制。

需要合理设计布线距离以保证信号传输的稳定性。

(2)布线阻抗:为了减少传输过程中的信号衰减和反射等问题,可以使用合适的布线阻抗。

一般来说,通信电缆的标称阻抗为120Ω,保持传输线的匹配阻抗有助于信号的正常传输。

4.传感器放置:(1)传感器放置位置:为了获得准确的温度测量结果,传感器的放置位置应该避免直接受到热源或冷源的影响,并且应尽量避免受到外界温度的干扰。

(2)固定方式:可以使用适当的固定装置将传感器安装在需要测量的位置上,确保传感器与环境接触良好。

5.通信协议:6.温度测量精度校准:为了获得准确的温度测量结果,可以在设计中进行温度测量精度校准。

校准方法可以是通过与已知温度源进行比对,或者使用标准温度计进行校准。

7.电源管理:为了延长传感器的使用寿命,可以在设计中考虑电源管理功能,如合理控制供电电流和添加省电功能。

总之,DS18B20温度传感器的设计要点主要包括传感器选型、电路设计、布线设计、传感器放置、通信协议、温度测量精度校准和电源管理等方面。

要综合考虑应用需求和环境特点,确保传感器的测量精度、稳定性和可靠性。

基于DS18B20_的温度测量报警系统

基于DS18B20_的温度测量报警系统

0 引言温度测量方法较多,根据温度传感器的使用方式,通常可以把温度测量方法分为接触式法测温法和非接触式法测温法。

热敏电阻是最常用的接触式测温法之一,其广泛应用于工农业生产中。

传统的热敏电阻传感器需要搭配测量电路和其他电路进行信号处理,导致其可靠性、准确度和精确度降低[1]。

针对上述问题,美国DALLAS公司新推出了一种新型数字温度传感器-DS18B20,它具有功耗低、抗干扰能力强等优点[2]。

该文介绍了一种以DS18B20数字传感器和AT89C51系列单片机为核心的环境温度测量报警系统,该系统不仅可以实时测量温度,而且还可以根据用户需要,当环境温度出现异常时进行报警提醒。

同时,测得的温度数据会实时显示在输出设备上,为用户提供实时温度。

其硬件部分主要包括时钟电源电路、数码管显示电路、温度测量报警电路以及独立开关按键电路,软件部分主要包括独立按键触发检测程序、温度异常判决程序。

该系统结构简单、成本较低且抗干扰能力极高,可以应用于农业种植温室室温监测等场景,帮助相关产业提高工作效率,降低建设和维护所需的成本。

1 理论及方案设计DS18B20模块是一款由美国DALLAS半导体公司设计的数字温度传感器,它具有成本低廉、传输高效以及电路简单的特点。

该模块工作电压范围宽(3.0 V~5.5 V),并且当电源反接时不会立即烧毁。

DS18B20模块具有4种工作模式,对应4种不同的分辨率和转换时间。

通过改变配置寄存器中的R1位和R0位(R0\R1是配置寄存器中的2个数位)可以对DS18B20模块的工作模式进行设置,不同模式的工作参数见表1。

表1 工作效率参考数据分辨率/位最高转换时间/ms R1R0 993.750010187.500111375.001012750.0011整个测温系统分为的4个板块(如图1所示),通过与AT89C51系列单片机进行交互,共同完成环境温度监测报警工作。

时钟和电源为整个系统提供工作环境,独立按键可以帮助用户设置温度的上、下限,DS18B20模块将测得的实时温度发送给单片机,单片机将数据输出至显示模块(反馈给用户)。

设计一个温度监测和显示报警电路

设计一个温度监测和显示报警电路

设计一个温度监测和显示报警电路温度监测和显示报警电路是一种用于监测环境温度并在超出设定温度范围时发出声音或光提示的电路。

它广泛应用于各种需要对温度进行实时监测和控制的场合,例如工业生产、仓储管道、实验室等。

下面,我将详细介绍一个基于温度传感器、控制IC和蜂鸣器的温度监测和显示报警电路的设计方案。

设计材料准备:1.温度传感器(例如DS18B20)2.控制IC(例如LM35)3.蜂鸣器4.面包板5.连接线6.电阻7.LED电路连接:1.将温度传感器的三个引脚(VCC、GND、DATA)分别连接到面包板上的电源模块(+5V、GND)和数字引脚上。

2.将控制IC的电源引脚(VCC、GND)连接到面包板的电源模块上。

3.将蜂鸣器的两个引脚连接到面包板的数字引脚上。

4.将LM35的输出引脚连接到面包板的模拟引脚上。

5.将一个电阻连接到LED的负极,再将另一端连接到面包板上的数字引脚上。

电路原理:1.温度传感器和控制IC共同组成了温度检测模块。

温度传感器负责检测环境温度,并将温度值以数字信号传递给控制IC。

2.控制IC负责接收温度传感器的数据,并将其转换为模拟信号,通过模拟引脚输出。

3.模拟信号经过一个电阻划定电流范围,并将电流传递给LED,控制LED的亮度,实现温度的可视化显示。

4.如果温度超出设定的范围,控制IC将通过数字引脚控制蜂鸣器发出声音报警。

电路设计思路:1.首先,根据具体需求确定温度报警的上限和下限。

2.将温度传感器的引脚连接到面包板上。

3.根据温度传感器的规格书和控制IC的数据手册,确定它们的使用电压范围。

4.根据温度传感器和控制IC的电压需求,选择适当的电源模块供电。

5. 连接电路后,利用Arduino等开发板进行代码编写,实现温度的实时监测。

6.编写代码,让控制IC判断当前环境温度是否超出设定的温度范围。

7.根据超出设定温度范围与否的判断结果,控制蜂鸣器的状态。

在设计和搭建电路时需要注意的一些问题:1.确保连接的准确性,例如正确连接传感器的引脚。

基于DS18B20的温度测量系统设计

基于DS18B20的温度测量系统设计

基于DS18B20的温度测量系统设计概述:DS18B20是一种数字温度传感器,具有精确度高、稳定性好、尺寸小等特点。

本文将基于DS18B20设计一个温度测量系统,主要包括硬件设计和软件设计两部分内容。

硬件设计:1.传感器模块:DS18B20传感器模块包括一个温度传感器和一个数字转换芯片。

传感器模块通过串行总线与主控设备进行通信,并提供温度数据。

2.单片机:选择一种适合的单片机作为主控设备,负责与传感器模块通信,并实现相关功能。

3.显示模块:通过液晶显示屏或数码管等模块,将测量到的温度实时显示出来。

4.电源模块:为系统提供稳定的直流电源,使系统能够正常工作。

软件设计:1.通信协议:将单片机与传感器模块之间的通信协议设置为1-Wire协议,该协议简单易实现,并且可以同时连接多个传感器。

2.初始化:在系统启动时,初始化单片机与传感器模块之间的通信,并对传感器模块进行必要的设置,如分辨率、精确度等。

3.数据读取:通过1-Wire协议,单片机向传感器模块发送读取温度的指令,传感器模块将温度数据以数字形式返回给单片机。

4.数据处理:单片机接收到温度数据后,进行相应的数据处理,可以进行单位转换、滤波处理等。

5.数据显示:将处理后的温度数据通过显示模块实时显示出来。

系统应用:1.工业自动化:用于监测生产设备的温度,实现设备状态监控和预警功能。

2.室内温控:通过与空调系统或暖气系统的连接,实现室内温度的精确控制。

3.热管理:用于监测电子设备或电路板的温度,保证设备运行时的稳定性和散热效果。

总结:基于DS18B20的温度测量系统设计,通过选用合适的硬件模块和软件设计方案,可以实现精确、稳定的温度测量,并通过通信和显示模块实时反馈温度数据。

该系统具有应用广泛、性能可靠等优点,在工业自动化、室内温控、热管理等领域有着重要意义。

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

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所示。

基于DS18B20温度传感器的显示及报警系统设计

基于DS18B20温度传感器的显示及报警系统设计

摘要随着现代信息技术的飞速发展和传统工业改造的逐步实现,能够独立工作的温度检测与显示系统应用于诸多领域。

传统的温度检测以热敏电阻为温度敏感元件。

热敏电阻的成本低,需要外加信号处理电路,而且可靠性相对较差,测温准确度低,检测系统也有一定的误差。

与传统的温度计相比,这次设计的是基于DS18B20的数字温度计,它具有读数方便,测温范围广,测温精确,数字显示,适用范围宽等特点。

在本设计中选用STC89C52型单片机作为主控制器件,采用DS18B20数字温度传感器作为测温元件,通过4位共阳极LED数码显示管并行传送数据,实现温度显示。

通过按键设置温度上下限报警值,然后用不同颜色的LED灯报警。

本设计的内容主要分为两部分,一是对系统硬件部分的设计,包括串口下载电路、按键输入电路、温度采集电路和显示电路;二是对系统软件部分的设计,应用C语言实现温度上下限报警值的设定、温度的采集与显示。

通过DS18B20直接读取被测温度值,送入单片机进行数据处理,之后进行输出显示,最终完成该系统的总体设计。

其系统构成简单,信号采集效果好,数据处理速度快,便于实际监测使用。

关键词:单片机STC89C52;温度传感器DS18B20;LED数码管;数字温度计AbstractAlong with the present information technology's swift development and traditional industry transformation's gradual realization, able to work independently of the temperature detection and display system used in many other fields. Traditional temperature examination takes thermistor as temperature sensitive unit. Thermistor's cost is low, needs the signal processing electric circuit, moreover the reliability is relatively bad, the temperature measurement accuracy is low, the examination system also has certain error. Compares with the traditional thermometer, what this design is based on the DS18B20 digital thermometer, it has the reading to be convenient, the temperature measurement scope is broad, the temperature measurement is precise, the digit demonstrated that applicable scope wide and so on characteristics.Used in the design STC89C52MCU as the main control device, digital temperature sensor DS18B20 as the temperature components of the anode through the four LED digital display tube parallel transmission of data, to achieve temperature display. This design's content mainly divides into two parts; first, to system hardware part design, including temperature gathering electric circuit and display circuit; Second, to the system software part's design, realizes temperature gathering and the demonstration using the C language. DS18B20 measured by direct reading temperature values and transfer Data into MCU and output to show his is the design of the Digital Thermometer. Its system constitution is simple, the effect of signal gathering is good, the speed of data processing is quick at al it is advantageous for the actual examination use.Keywords: MCU STC89S52; DS18B20; LED; Digital Thermometer目录第一章绪论 (3)1.1课题背景及来源 (3)1.2课题内容及要求 (3)第二章系统整体设计 (4)2.1系统设计方案论证 (4)第三章系统的硬件选择及设计 (5)3.1主控制器的设计 (5)3.2温度采集电路的设计 (5)3.3温度显示电路的设计 (9)第四章系统的软件设计 (11)4.1概述 (12)4.2程序流程图 (12)4.3 控制源程序 (14)第五章系统调试 (14)结论 (36)致谢 (36)参考文献 (37)第一章绪论1.1课题背景及来源单片机自1976年由Intel公司推出MCS-48开始,迄今已有三十多年了。

基于DS18B20温度传感器的温度计设计

基于DS18B20温度传感器的温度计设计

基于DS18B20温度传感器的温度计设计摘要:以DS18B20温度传感器,4位7段数码管和AT89C52RC微控制器为主要部分实现数字温度计的设计,利用DS18B20本身具有的模数转换功能和暂时存储功能将模拟量——气温转换为微控制器可处理的数字量,并使用AT89C52RC的输入输出及定时器中断功能通过DS18B20的单线连接结构与DS18B20进行信息传输,读取温度值并用数码管显示出来。

1.设计选题的目的、意义通过数字温度计的设计进一步熟悉单片机微控制器及相关数字/模拟电路的原理和功能,熟悉单片机的程序设计,学会传感器的使用和相关文献的查找及学习。

2.硬件电路设计硬件部分主要包括微控制器、温度传感器模块和数码管显示模块三部分。

2.1 微控制器主要功能电路如下图,包括电源,接地,复位电路,时钟脉冲电路(11.0592MHz)。

2.2 温度传感器模块如下图,使用外部电源,可以减少程序复杂程度。

DS18B20特性:●独特的单线接口仅需一个端口进行通讯●简单的多点分布应用●无需外部器件●可通过数据线供电●零待机功耗●测温范围-55~+125℃●温度以12位数字量读出●温度数字量转换时间750ms(12位)●用户可定义的非易失性温度警报设置●报警搜索命令识别并超过程序限定温度(温度报警条件)的器件●应用包括温度控制、工业系统、消费品、温度计或任何热感测系统2.3 数码管显示模块如上图,由两片SN74HC573N八路透明锁存器分别控制共阳极数码管位和段的锁存,实现只用MCU的一组I/O口分别控制数码管位和段的选通。

3.软件电路设计软件同样包括三个部分:传感器控制,显示控制,主程序。

3.1 温度传感器控制A.DS18B20内部存储读写与控制原理右图是DS18B20内部9字节的暂存器的结构,向其传送读取命令后,暂存器会依次将9个字节的数据通过单线送出,每个字节都是低位在先。

在本课题,只需0字节和1字节,也就是温度LSB(低8位)和温度MSB(高8位)中的数据。

基于DS18B20的数字温度报警器的设计

基于DS18B20的数字温度报警器的设计

定频率 的 方波 ,通 过P NP 三极 管 功率 放大 后 驱动 蜂 鸣器 发 出报 警
信号。
= ,设计方案
基 于D S 1 8 B 2 0 的数 字温 度 报警 器 以S T C 8 9 C 5 2 R C 单片 机 为微 控
制 器, 由一 数字 温 度传 感 器 D S 1 8 B 2 0  ̄ 量 被控 温 度 , 结合 L C D1 6 0 2
P 2 . 2 控 ̄ O L C D1 6 0 2 控 制端 V I ,在 基 于D S 1 8 B 2 0 的数 字温 度报 警 器 设 计 中,用L C D1 6 0 2 显 示器 显示 温度 以及 其 他要 显示 的信 息。 同时 当 采 集 到 的温度 值 超过 所 设置 的范 围时 ,S T C 8 9 C 5 2 R C 单 片机 会 输 出
与L C D1 6 0 2 显 示器 对应 的数据 ,通 过P 0 V I 输 出显示 。 即通 过P 2 . 0 到
器在 不同温度 下 ,工 作状态 的不 同来给S T C 8 9 C 5 2 R C 单 片机系 统提供 温 度数 据 , 以供S T C 8 9 C 5 2 R C 单 片机 采集 温度 数据 同时显 示 出来 。
S T C89 C5
显 示 器 和 蜂 鸣器 组 合 而 成 。当 被测 量值 超 出预 设 范 围 则 发 出警 报
( 蜂 鸣 器发 出声 响 )。 设计 原理如 图1 所示 。
L C D1 6 0 2 液 晶显示 的 子程 序 ,其 次编 写按键 中断程 序 ,然 后编 写 蜂
鸣器 子程 序 ,通 过主 程序 对这 些 子程 序 的调节 与 调用 ,最 后达 到 了
E L E C T R ONI C S W OR L D・ 技 术 交流

使用DS18B20温度传感器设计温度控制系统设计

使用DS18B20温度传感器设计温度控制系统设计

使用DS18B20温度传感器设计温度控制系统设计设计说明:1.1 使用DS18B20温度传感器设计温度控制系统1.在数码管上可显示采集到的温度(0~99.9℃)2.当温度低于27℃时,蜂鸣器开始以慢地“滴”声报警,P1.0口发光二极管闪烁,当温度继续降低并低于25℃时,蜂鸣器开始以快地“滴”声报警,P1.0和P1.1口发光二极管闪烁。

3.当温度高于30℃时,蜂鸣器开始以慢地“滴”声报警,P1.2口发光二极管闪烁,当温度继续升高并高于32℃时,蜂鸣器开始以快地“滴”声报警,P1.2和P1.3口发光二极管闪烁。

1.2 元件说明:(1)使用的元器件DS18B20:电压范围3.0~5.5V ;温度可测范围-55~+125℃;可编程分辨率为9~12位,对应的可分辨温度为:0.5℃、0.25℃、0.125℃和0.0625℃;测量结果直接输出数字温度信号,以“一线总线”串行传送给CPU,同时可传送CRC校验码,具有极强的抗干扰纠错能力。

其引脚定义图如下图:(3) 硬件连接图硬件连接图如上图:1.3 工作原理首先看控制DS18B20的指令,只列举此设计用到的,如下表:CCH 跳过ROM44H 温度转换BEH 读暂存器原理:DS18B20测量外部温度,经过温度转换,将温度物理量转换成数字信号,再传送数据到AT89C52,AT89C52控制数码管显示及二极管、扬声器的工作,从而实现了温度在数码管上显示,还有温度范围的亮灯与报警。

1.4 C语言编程见附录1.5 实验结果可将环境温度经过DS18B20温度传感器,在数码管上显示,显示准确。

附录#include<reg51.h>#include<stdio.h>#define uchar unsigned char#define uint unsigned intsbit ds=P2^2;For personal use only in study and research; not for commercial usesbit dula=P2^6;sbit wela=P2^7;sbit beep=P2^3;uint temp;float f_temp;uint warn_l1=270;uint warn_l2=250;uint warn_h1=300;uint warn_h2=320;sbit led0=P1^0;sbit led1=P1^1;sbit led2=P1^2;sbit led3=P1^3;unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0xbf,0x86,0xdb,0xcf, 0xe6,0xed,0xfd,0x87,0xff,0xef}; void delay(uint z){uint x,y;for(x=z;x>0;x--)for(y=110;y>0;y--);}void dsreset(){uint i;ds=0;i=103;while(i>0) i--;ds=1;i=4;while(i>0) i--;}bit tempreadbit(){bit dat;ds=0;i++;ds=1;i++;i++;dat=ds;i=8; while(i>0) i--;return(dat);}uchar tempread(){uchar i,j,dat;dat=0;for(i=1;i<=8;i++){j=tempreadbit();dat=(j<<7)|(dat>>1);}return(dat);}tempwritebyte(uchar dat) {uint i;uchar j;bit testb;for(j=1;j<=8;j++){testb=dat&0x01;dat=dat>>1;if(testb){ds=0;i++;i++;ds=1;i=8;while(i>0) i--;}else{ds=0;i=8;while(i>0) i--;ds=1;i++;i++;}}tempchange(){dsreset();delay(1);tempwritebyte(0xcc); tempwritebyte(0x44);}uint get_temp(){uchar a,b;dsreset();delay(1);tempwritebyte(0xcc); tempwritebyte(0xbe);a=tempread();b=tempread();temp=b;temp<<=8;temp=temp|a;f_temp=temp*0.0625;temp=f_temp*10+0.5;f_temp=f_temp+0.05; return temp;}display(uchar num,uchar dat) {uchar i;dula=0;P0=table[dat];dula=1;dula=0;wela=0;i=0xff;i=i&(~((0x01)<<(num)));P0=i;wela=1;wela=0;delay(50);}dis_temp(uint t){uchar i;i=t/100;display(0,i);i=t%100/10;display(1,i+10);i=t%100%10;display(2,i);}warn(uint s,uchar led){uchar i;i=s;beep=0;P1=~(led);while(i--){dis_temp(get_temp());}beep=1;P1=0xff;i=s;while(i--){dis_temp(get_temp());}}deal(uint t){uchar i;if((t>warn_l2)&&(t<=warn_l1)){warn(40,0x01);}else if(t<=warn_l2){warn(10,0x03);}else if((t<warn_h2)&&(t>=warn_h1)){warn(40,0x04);}else if(t>=warn_h2){warn(10,0x0c);}else{i=40;while(i--){dis_temp(get_temp());}}}init_com(){TMOD=0x20;PCON=0x00;SCON=0x50;TH1=0xfd;TL1=0xfd;TR1=1;}comm(char *parr){do{SBUF=*parr++;while(!TI);TI=0;} while(*parr);}main(){uchar buff[4],i;dula=0;wela=0;init_com();while(1){tempchange();for(i=10;i>0;i--){dis_temp(get_temp());}deal(temp);sprintf(buff,"%f",f_temp); for(i=10;i>0;i--){dis_temp(get_temp());}comm(buff);for(i=10;i>0;i--){dis_temp(get_temp());}}}使用DS18B20温度传感器设计温度控制系统设计班级:电082班姓名:于川洋学号:33号时间:2011-11.-11仅供个人参考仅供个人用于学习、研究;不得用于商业用途。

DS18B20温度测量、报警系统的设计

DS18B20温度测量、报警系统的设计

#include <AT89X52.h>#include "DS18B20.h"#define uint unsigned int#define uchar unsigned char //宏定义#define SET P3_1 //定义调整键#define DEC P3_2 //定义减少键#define ADD P3_3 //定义增加键#define BEEP P3_7 //定义蜂鸣器bit shanshuo_st; //闪烁间隔标志bit beep_st; //蜂鸣器间隔标志sbit DIAN = P2^7; //小数点uchar x=0; //计数器signed char m; //温度值全局变量uchar n; //温度值全局变量uchar set_st=0; //状态标志signed char shangxian=38; //上限报警温度,默认值为38signed char xiaxian=5; //下限报警温度,默认值为38ucharcode LEDData[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0x ff};/*****延时子程序*****/void Delay(uint num){while( --num );}/*****初始化定时器0*****/void InitTimer(void){TMOD=0x1;TH0=0x3c;TL0=0xb0; //50ms(晶振12M)}/*****定时器0中断服务程序*****/void timer0(void) interrupt 1{TH0=0x3c;TL0=0xb0;x++;}/*****外部中断0服务程序*****/void int0(void) interrupt 0{EX0=0; //关外部中断0if(DEC==0&&set_st==1){shangxian--;if(shangxian<xiaxian)shangxian=xiaxian;}else if(DEC==0&&set_st==2){xiaxian--;if(xiaxian<0)xiaxian=0;}}/*****外部中断1服务程序*****/void int1(void) interrupt 2{EX1=0; //关外部中断1if(ADD==0&&set_st==1){shangxian++;if(shangxian>99)shangxian=99;}else if(ADD==0&&set_st==2){xiaxian++;if(xiaxian>shangxian)xiaxian=shangxian;}}/*****读取温度*****/void check_wendu(void){uint a,b,c;c=ReadTemperature()-5; //获取温度值并减去DS18B20的温漂误差 a=c/100; //计算得到十位数字b=c/10-a*10; //计算得到个位数字m=c/10; //计算得到整数位n=c-a*100-b*10; //计算得到小数位if(m<0){m=0;n=0;} //设置温度显示上限if(m>99){m=99;n=9;} //设置温度显示上限}/*****显示开机初始化等待画面*****/ Disp_init(){P2 = 0xbf; //显示-P1 = 0xf7;Delay(200);P1 = 0xfb;Delay(200);P1 = 0xfd;Delay(200);P1 = 0xfe;Delay(200);P1 = 0xff; //关闭显示}/*****显示温度子程序*****/Disp_Temperature() //显示温度{P2 =0xc6; //显示CP1 = 0xf7;Delay(300);P2 =LEDData[n]; //显示个位P1 = 0xfb;Delay(300);P2 =LEDData[m%10]; //显示十位 DIAN = 0; //显示小数点P1 = 0xfd;Delay(300);P2 =LEDData[m/10]; //显示百位 P1 = 0xfe;Delay(300);P1 = 0xff; //关闭显示}/*****显示报警温度子程序*****/ Disp_alarm(uchar baojing){P2 =0xc6; //显示CP1 = 0xf7;Delay(200);P2 =LEDData[baojing%10]; //显示十位P1 = 0xfb;Delay(200);P2 =LEDData[baojing/10]; //显示百位P1 = 0xfd;Delay(200);if(set_st==1)P2 =0x89;else if(set_st==2)P2 =0xc7; //上限H、下限L标示P1 = 0xfe;Delay(200);P1 = 0xff; //关闭显示}/*****报警子程序*****/void Alarm(){if(x>=10){beep_st=~beep_st;x=0;}if((m>=shangxian&&beep_st==1)||(m<xiaxian&&beep_st==1))BEEP=0; else BEEP=1;}/*****主函数*****/void main(void){uint z;InitTimer(); //初始化定时器EA=1; //全局中断开关TR0=1;ET0=1; //开启定时器0IT0=1;IT1=1;check_wendu();check_wendu();for(z=0;z<300;z++){Disp_init();}while(1){if(SET==0){Delay(2000);do{}while(SET==0);set_st++;x=0;shanshuo_st=1;if(set_st>2)set_st=0;}if(set_st==0){EX0=0; //关闭外部中断0EX1=0; //关闭外部中断1check_wendu();Disp_Temperature();Alarm(); //报警检测}else if(set_st==1){BEEP=1; //关闭蜂鸣器EX0=1; //开启外部中断0EX1=1; //开启外部中断1if(x>=10){shanshuo_st=~shanshuo_st;x=0;} if(shanshuo_st) {Disp_alarm(shangxian);} }else if(set_st==2){BEEP=1; //关闭蜂鸣器EX0=1; //开启外部中断0EX1=1; //开启外部中断1if(x>=10){shanshuo_st=~shanshuo_st;x=0;} if(shanshuo_st) {Disp_alarm(xiaxian);} }}}/*****END*****/DS18B20.h:#include <AT89X52.h>#define DQ P3_6 //定义DS18B20总线I/O/*****延时子程序*****/void Delay_DS18B20(int num){while(num--) ;}/*****初始化DS18B20*****/void Init_DS18B20(void){unsigned char x=0;DQ = 1; //DQ复位Delay_DS18B20(8); //稍做延时DQ = 0; //单片机将DQ拉低Delay_DS18B20(80); //精确延时,大于480usDQ = 1; //拉高总线Delay_DS18B20(14);x = DQ; //稍做延时后,如果x=0则初始化成功,x=1则初始化失败Delay_DS18B20(20);}/*****读一个字节*****/unsigned char 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_DS18B20(4);}return(dat);}/*****写一个字节*****/void WriteOneChar(unsigned char dat){unsigned char i=0;for (i=8; i>0; i--){DQ = 0;DQ = dat&0x01;Delay_DS18B20(5);DQ = 1;dat>>=1;}}/*****读取温度*****/unsigned int ReadTemperature(void){unsigned char a=0;unsigned char b=0;unsigned int t=0;float tt=0;Init_DS18B20();WriteOneChar(0xCC); //跳过读序号列号的操作 WriteOneChar(0x44); //启动温度转换Init_DS18B20();WriteOneChar(0xCC); //跳过读序号列号的操作 WriteOneChar(0xBE); //读取温度寄存器a=ReadOneChar(); //读低8位b=ReadOneChar(); //读高8位t=b;t<<=8;t=t|a;tt=t*0.0625;t= tt*10+0.5; //放大10倍输出并四舍五入 return(t);}/*****END*****/。

基于ds18b20的数字温度计设计报告

基于ds18b20的数字温度计设计报告

基于ds18b20的数字温度计设计报告
一、引言
随着科技的进步,温度的测量和控制变得越来越重要。

DS18B20是一款数字温度传感器,具有测量准确度高、体积小、接口简单等优点,广泛应用于各种温度测量场合。

本报告将介绍基于DS18B20的数字温度计设计。

二、DS18B20简介
DS18B20是一款由美国Dallas公司生产的数字温度传感器,可以通过数据线与微处理器进行通信,实现温度的测量。

DS18B20的测量范围为-55℃~+125℃,精度为±0.5℃。

三、数字温度计设计
1.硬件设计
数字温度计的硬件部分主要包括DS18B20温度传感器、微处理器、显示模块等。

其中,DS18B20负责采集温度数据,微处理器负责处理数据并控制显示模块显示温度。

2.软件设计
软件部分主要实现DS18B20与微处理器的通信和控制显示模块显示。

首先,微处理器通过数据线向DS18B20发送命令,获取温度数据。

然后,微处理器将数据处理后发送给显示模块,实现温度的实时显示。

四、测试结果
经过测试,该数字温度计的测量精度为±0.5℃,符合设计要求。

同时,该温度
计具有测量速度快、体积小、使用方便等优点,可以广泛应用于各种温度测量场合。

五、结论
基于DS18B20的数字温度计具有高精度、低成本、使用方便等优点,可以实现高精度的温度测量和控制。

随着科技的发展,数字温度计的应用将越来越广泛,具有广阔的市场前景。

基于DS18B20的温度报警器设计

基于DS18B20的温度报警器设计

基于DS18B20的温度报警器设计温度报警器是一种用于监测环境温度并在温度超过设定阈值时发出警报的设备。

基于DS18B20的温度报警器设计可以通过连接DS18B20数字温度传感器和微控制器来实现。

以下是一个基于DS18B20的温度报警器设计的详细描述。

1.硬件设计:-DS18B20温度传感器:DS18B20是一款数字温度传感器,其具有高精度、数字输出、单线传输等特点。

它可以直接与微控制器连接,并通过单线总线协议进行通信。

将其中一根引脚连接到微控制器的GPIO引脚上,并使用上拉电阻将其拉高,以实现简单的单线通信。

- 微控制器:选择一款适合的微控制器,例如Arduino、Raspberry Pi等。

微控制器应该具有足够的GPIO引脚用于连接其他外设,并具备相应的数据处理能力。

-报警器:可以选择蜂鸣器、发光二极管(LED)或其他适合的报警器作为报警设备。

这些设备应具有较大的声光输出,以便及时警示。

2.软件设计:-初始化:在程序中初始化设备的GPIO引脚,并设置它们的输入输出方式。

同时,初始化DS18B20传感器,启动单线总线通信。

-温度读取:通过发送相应的命令,从DS18B20传感器读取当前的温度值。

DS18B20的温度数据以二进制形式存储,并使用一定的协议进行传输。

通过解析二进制数据,并进行适当的计算,可以获得温度值。

-温度比较:将读取到的温度值与设定的阈值进行比较。

如果温度超过阈值,则触发报警。

-报警控制:当温度超过设定阈值时,触发报警器的开启。

该过程涉及控制报警设备的GPIO引脚,使其输出足够的声音或亮度,以引起用户的注意。

-报警复位:当温度降低到设定阈值以下时,关闭报警器。

通过控制报警设备的GPIO引脚,将其输出设置为低电平,以停止声音或亮度。

3.报警策略:-阈值设置:根据具体应用的需求,设定适当的温度阈值。

根据环境和使用要求,选择报警温度和报警时刻。

可以通过软件界面或外部调节器调整阈值。

-报警反馈:为了确保用户能够及时获得报警信息,可以通过增加报警设备的数量或设置报警通知的方式来提高报警反馈。

DS18B20的多点温度检测系统的设计

DS18B20的多点温度检测系统的设计

1 系统方案设计1.1 方案设计方案一:该方案由单片机、模拟温度传感器AD590、运算放大器、AD转换器、4×4键盘、LCD显示电路、集成功率放大器、报警器组成。

本方案采用模拟温度传感器AD590作为测温元件,传感器将测量的温度变换转换成电流的变化,再通过电路转换成电压的变化,使用运算放大器交将信号进行适当的放大,最后通过模数转换器将模拟信号转换成数字信号,传给给单片机,单片机将温度值进行处理之后用LCD显示,当温度值超过设置值时,系统开始报警。

图1.1 方案一温度测量系统方案框图方案二:该方案使用了AT89C51单片机作为控制核心,以智能温度传感器DS18B20为温度测量元件,采用多个温度传感器对各点温度进行检测,通过4×4键盘模块对正常温度进行设置显示电路采用128×64 LCD模块,使用LM386作为报警电路中的功率放大器。

温度传感器图1.2 方案二温度测量系统方案框1.2 方案论证方案一采用模拟温度传感器,转换结果需要经过运算放大器和AD转换器传送给处理器。

它控制虽然简单,但电路复杂,不容易实现对多点温度进行测量和监控。

由于采用了多个分立元件和模数转换器,容易出现误差,测量结果不是很准确,因此本方案并不可取。

方案二采用智能温度传感器DS18B20,它直接输出数字量,精度高,电路简单,只需要模拟DS18B20的读写时序,根据DS18B20的协议读取转换的温度。

此方案硬件电路简单,程序设计复杂一些,但是电子竞赛培训期间我编写过DS18B20、图形液晶、键盘的程序,而且设计过电路并成功地通过调试,并且我已经使用开发工具KEIL用C语言对系统进行了程序设计,用仿真软件PROTEUS 对系统进行了仿真,达到了预期的结果。

由此可见,该方案完成具有可行性,体现了技术的先进性,经济上也没有问题。

综上所述,本课题采用方案二对系统进行设计。

2 系统设计2.1工作原理基于DS18B20多点温度测量系统以AT89C51为中心器件,以KEIL为系统开发平台,用C语言进行程序设计,以PROTEUS作为仿真软件设计而成的。

基于DS18B20的温度报警器设计讲解

基于DS18B20的温度报警器设计讲解

毕业设计论文的温度报警器设计基于DS18B20电子信息工程系系姓名电子信息工程技术康志凌专业1201043206 学号122 班级电子信息职称讲师指导教师徐敏N2015.04.08 2014.10.08 设计时间-基于DS18B20的温度报警器设计摘要本设计以AT89C51单片机为核心,设计了一个温度测量报警系统,可以方便的实现温度采集和显示。

它使用起来相当方便,具有精度高、量程宽、灵敏度高、体积小、功耗低等优点,适合于我们日常生活和工农业中的温度测量及报警。

本设计由AT89C51单片机、DS18B20温度传感器和LED显示器组成,可以直观的显示测量的温度。

本设计运行过程中,如果外界温度低于-20℃或高于70℃,系统将出发蜂鸣器,产生报警声音,且对应的LED同步闪烁。

关键词:AT89C51,DS18B20,传感器,温度报警器I江苏信息职业技术学院毕业设计(论文)目录摘要 (I)目录 (II)第1章引言 (1)第2章方案设计 (2)第3章 DS18B20简介 (3)3.1 DS18B20性能指标 (3)3.2 DS18B20的封装及内部结构 (4)3.3 DS18B20工作原理及应用 (4)3.4 控制器对DS18B20操作流程 (5)第4章硬件电路设计 (7)4.1 AT89C51 (8)4.2 晶振电路 (9)4.3 复位电路 (9)4.4 报警电路 (10)4.5 74LS245 (10)4.6 显示电路 (11)第5章软件设计 (12)5.1 主程序模块 (12)5.2 程序说明 (12)第6章仿真结果 (21)参考文献 (23)致谢 (24)IIDS18B20的温度报警器设计基于引言第1章随温度是一个十分重要的物理量,对他的测量与控制有着十分重要的意义。

人民也迫切需要监测着现代化工农业技术的发展及人民对生活环境要求的提高,在人类的生活环境中,温度扮演着极其重要的角色。

无论你生活在.和控制温度世纪工业革命以来,18从事什么工作,无时无刻不在跟温度打着交道。

基于DS18B20的多点温度巡回检测仪的设计

基于DS18B20的多点温度巡回检测仪的设计

0引言在传统的模拟信号远距离温度测量系统中,需要很好地解决引线误差补偿、多点测量切换误差和放大电路零点漂移误差等技术问题,才能够达到较高的测量精度。

测量装置抗干扰能力较差,多采用单片的温度传感器,例如LM35、AD590,这些芯片不仅体积大,而且输出的信号都是模拟信号,必须经过A/D 转换后才可以被处理器识别,而且没有数字通信和网络功能。

同时,模拟信号的远距离测量易遭受引线误差的影响,且外部附加电路较多,硬件结构复杂,增加了成本。

系统选用DS18B20数字式单总线温度传感器,DS18B20是一个单线式温度采集数据传输,并且能直接转换数字量的温度传感器。

多个DS18B20挂接到一条单总线上,配合单片机Atmega16微处理器,组成了高精度经济型多点温度采集系统,很好地解决了上述问题[1]。

1测温原理DS18B20是DALLAS 半导体公司生产的单总线数字温度传感器。

全部传感元件及转换电路集成在一块极小的芯片上,外形如同普通小功率塑封三极管,体积很小,在温度巡检系统中使用十分方便[1]。

DS18B20的测温原理框图如图1所示。

图中低温度系数晶振的振荡频率受温度形响很小,用于产生固定频率的脉冲信号送给计数器1。

高温度系数晶振随温度变化其振荡频率明显改变,所产生的信号作为计数器2的脉冲输入。

计数器1、计数器2和温度寄存器被预置在-55℃所对应的一个基数值。

计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当计数器1的预置值减到0时,温度计数器的值将加1,计数器1的预置值将被重新装入,计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到计数器2计数到0时,停止温度寄存器的累加,此时温度寄存器中的数值即为所测温度。

图1中的斜率累加器用于补偿和修正测温过程中的非线性,其输出用于修正计数器1的预置值[2]。

在正常测温情况下,DS18B20的测温分辨率为0.50℃,以9位数据格式表示,其中最低有效位(LSB)由比较器进行0.25℃比较,当计数器1中的余值转化成温度后低于0.25℃时,清除温度寄存器的最低位(LSB);当计数器1中的余值转化成温度后高于0.25℃时,置位温度寄存器的最低位(LSB )。

DS18B20温度报警器的设计

DS18B20温度报警器的设计
R3
220 1 2 3 4 5 6 7 8
D1
高温报警
R4
220
D2
低温报警
P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 AT89C 声音报警电路如图 7 所示,蜂鸣器采用有源蜂鸣器,当有电流驱动时发出报 警声音,单片机作为微控制器对外的驱动负载的能力有限,P3 口每个引脚对外 驱动电流最大仅为 8mA,因此通过 P3.7 引脚控制 PNP 型三极管 9012 的基极放 大,当 P3.7 为低电平时,三极管导通,蜂鸣器发声。
18
XTAL2
9
RST
29 30 31
PSEN ALE EA
1 2 3 4 5
P1.0 P1.1 P1.2 P1.3
R2
图 3 显示电路
(2)时钟电路 时钟电路如图 4 所示,时钟电路是控制器必不可少的主要电路,系统主频采 用 12MHz 晶体振荡器,外加连个 30pF 瓷片电容,瓷片电容中间接地,瓷片电 容的作用是为了让晶振电路快速起振。 这三个元件配合内部已有的时钟电路为单 片机提供工作的振荡节拍信号。
图 13 系统仿真效果图
(2)硬件设计 系统使用万能板,使用导线连接电路,焊接过程中确保电路连接可靠。程序 下载使用下载板。实物图如图 14 所示。
图 14 实物图
5.总结
6.参考文献
[1] 关增建,指南针理论在中国历史上的演变,自然科学史研究, 24(2),10-15,2005. [2] 刘玥.一种高精度电子罗盘的设计[J]. 应用科技,2011,38(2):42-46. [3] 龚长青,王清. 单片机控制系统的硬件抗干扰研究[J]. 科技信 息,2010,(5):98+92. [4] 胡修林,杨奇,用磁场传感器 KMZ52 设计的电子指南针,国外电子元器 件,8(3),44.46,2004. [5] 刘素,刘鲁源,韩尧松. 基于 KMZ52 的电子指南针设计[J]. 电子产品世 界,2005,(7):90-92+97. [6] 胡宁博,李剑,赵榉云,基于 HMC5883L 的电子罗盘设计,传感器世 界,11(6),35-38,2011. [7] 徐淑明. 7800 系列集成稳压电路的分析[J].丽水师范专科学校学 报,1999,05(2):14-15. [8] 林士伟,于军,孙陆梅.液晶显示器与单片机接口的设计[J].吉林化工学院学 报,2005,22(3):50-52. [9] 胡准庆,郭世勇,李广顺等.液晶显示器与单片机接口技术[J]. 电子工程 师,1999,(6):21-23. [10] 管志宁,地磁场与磁力勘探,地质出版社,2005.

基于DS18B20的温度测量系统设计

基于DS18B20的温度测量系统设计

基于DS18B20的温度测量系统设计一、引言温度测量是现代生活中很常见的一项测量工作。

在很多领域中,如农业、医疗和工业等,温度的准确测量对于保持合适的环境和防止设备损坏至关重要。

因此,设计一种高精度、稳定可靠的温度测量系统至关重要。

本文将基于DS18B20温度传感器进行详细的设计。

二、DS18B20概述DS18B20是一种数字温度传感器,它可以提供9至12位的温度数据精度。

它使用单总线接口进行通信,并且可以在不同分辨率下进行配置以满足不同的应用需求。

该传感器具有很多优点,如精度高、体积小、能够长时间稳定工作等。

三、系统设计1.硬件设计硬件设计是温度测量系统设计的基础。

设计中需要考虑到供电电源、连接方式和传感器位置等因素。

(1)供电电源:传感器和测量电路通常需要稳定的电源供应,可以选择直流电源或者电池供电,需要根据实际需求进行选择。

(2)连接方式:DS18B20可以通过单总线接口进行连接,可以选择串行线连接传感器和控制器。

(3)传感器位置:传感器的位置也是需要考虑的因素,需要确保传感器可以完全接触到被测物体表面,并且避免外部因素对测量结果的影响。

2.软件设计软件设计是温度测量系统设计中非常重要的一部分,它主要包括传感器数据采集和数据处理等方面。

(1)传感器数据采集:DS18B20可以通过单总线接口进行数据采集,基于单总线协议,可以实现多个传感器的并行测量。

在软件设计中,需要使用相应的驱动程序来实现对传感器的读取,并通过相应的接口将数据传输给控制器。

(2)数据处理:采集到的温度数据需要进行处理,可以选择直接将数据输出,也可以进行一些算法处理,如平均值滤波、差值滤波等,以提高数据的稳定性和准确性。

四、系统测试设计完成后,需要进行系统测试以验证设计的正确性和可靠性。

1.传感器测试:首先需要测试传感器的准确性和响应时间等指标,可以将传感器置于稳定温度环境下,并使用标准温度计进行对比,以验证传感器的准确性。

基于DS18B20的智能测温系统的设计

基于DS18B20的智能测温系统的设计

基于DS18B20的智能测温系统的设计一、本文概述本文旨在探讨基于DS18B20的智能测温系统的设计与实现。

DS18B20是一款常用的数字温度传感器,具有测量准确、稳定性好、抗干扰能力强等特点,因此在许多领域,特别是温度监测和控制系统中得到了广泛应用。

本文将首先介绍DS18B20传感器的基本工作原理和特性,然后详细阐述如何利用该传感器构建一个智能测温系统。

在系统设计方面,本文将关注硬件电路的选择与搭建、软件编程实现、以及系统的整体架构。

硬件设计将包括DS18B20与微控制器的连接电路、电源电路、显示模块等关键部分。

软件编程将实现温度数据的读取、处理、显示以及可能的远程传输等功能。

同时,还将讨论如何通过软件算法提高测温精度和响应速度,以满足实际应用需求。

本文还将探讨系统的可靠性、稳定性和扩展性等问题。

通过合理的硬件和软件设计,确保系统能够在各种环境下稳定运行,并具备一定的故障自诊断和处理能力。

通过预留接口和扩展功能,使系统易于升级和维护,以满足不断变化的用户需求。

本文将全面介绍基于DS18B20的智能测温系统的设计过程,包括硬件搭建、软件编程、系统架构等方面,旨在为相关领域的工程师和研究者提供参考和借鉴。

二、1820传感器原理及特性DS18B20是一款由美国Dallas半导体公司开发的单总线数字温度传感器,具有测量温度范围宽、精度高、抗干扰能力强、接口简单、使用方便、封装形式小、可组网使用等优点,因此在各种测温场合中得到了广泛的应用。

DS18B20传感器的工作原理基于热敏电阻的温度-电阻特性。

其内部包含一个热敏电阻和一个8位的模数转换器(ADC),热敏电阻的阻值会随着温度的变化而变化,这个变化被ADC转换成数字信号,然后通过单总线接口输出。

DS18B20具有独特的单总线接口方式,只需一个端口引脚就能与微处理器通信,简化了硬件电路的设计。

DS18B20还具有温度报警功能,当温度超过预设的阈值时,可以通过单总线向微处理器发送报警信号。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

DS18B20温度传感器巡回检测温度报警器设计摘要:随着电子技术的发展,家用电器和办公设备的智能化、系统化已成为发展趋势,而这些高性能几乎都要通过单片机实现。

同时,温度作为与我们生活息息相关的一个环境参数,对其的测量和研究也变得极为重要。

故温度检测报警系统在现代生活、生产中得到了越来越广泛的应用。

本论文介绍了采用温度传感器DS18B20作为温度采集器、AT89S51单片机为主控制器,外加显示模块以及报警电路实现该智能温度测量报警器的设计方法、工作原理、电路组成等。

关键词:DS18B20,单片机,温度控制,报警1绪论温度是与人们生活息息相关的环境参数,许多情况下都需要进行温度测量及报警,温度测量报警系统在现代日常生活、科研、工农业生产中已经得到了越来越广泛的应用。

所以对温度的测量报警方法及设备的研究也变得极其重要。

随着人们生活水平的不断提高以及应对各种复杂测量环境的需要,我们对温度测量报警器的要求也越来越高,利用单片机来实现这些控制无疑是人们追求的目标之一,它带给我们的方便是不可否定的。

其中温度检测报警器就是一个典型的例子。

要为现代人工作、科研、生活、提供更好的更方便的设施,就需要从单片机技术入手,向数字化,智能化控制方向发展。

本设计所介绍的温度报警器,可以设置上下限报警温度,当温度不在设置范围内时,可以报警。

与传统的温度测量系统相比,本设计中的数字温度测量报警系统具有很多前者没有的优点,如测温范围广而且准确,采用LCD数字显示,读数方便等。

1.1温度报警器的研究意义随着电子技术的发展,家用电器和办公设备的智能化、系统化已成为趋势,而这些高性能几乎都要通过单片机实现。

同时,温度作为与我们生活息息相关的一个环境参数,对其的测量和研究也变得极为重要。

故温度检测报警系统在现代生活、生产中得到了越来越广泛的应用。

工业生产带动了人类社会的进步,同时也促进了各种新的传感器的发展。

在工业生产中温度的准确测量是一个比较困难的事情。

从最初的酒精、水银温度计到现在的数字化、集成化的温度计可见传感器的发展是飞快的。

它的快速发展必将带来新一轮的工业化革命和社会发展的飞跃。

本设计所介绍的温度报警器可以设置上下限报警温度,当温度不在设定范围内时可以报警,主要用于对测温比较准确的场所,或科研实验室使用。

它具有结构简单,不需外接元件,可由用户设置温度报警界限等特点,可广泛用于食品库、冷库、粮库等需要控制温度的地方。

目前,该类产品已在温控系统中得到广泛的应用。

所以设计意义较为深远。

1.2 温度报警器的现状及发展温度是一种在生产、科研、生活中需要测量和控制的重要物理量,是国际单位制七个基本量之一。

其测量控制一般采用各式各样形态的温度传感器。

根据它们在讯号输出方式上的不同可以分为模拟温度传感器和数字温度传感器。

单片机技术的出现则是为现代工业测控领域带来了一次新的技术革命,目前,单片机以其体积小、重量轻、抗干扰能力强、对环境要求不高、可靠性高、性价比高、开发较为容易等特点,在工业控制、数据采集、智能化仪器仪表、办公自动化等诸多领域得到了极为广泛的应用,并已走入我们的日常生活,现在,随处都可以看到单片机的踪影。

目前温度报警器的发展已经比较成熟了,它能帮助我们实现想要的温度控制,解决身边的很多问题。

1.2.1 智能温度传感器智能温度传感器(亦称数字温度传感器)是在20世纪90年代中期问世的。

它是微电子技术、计算机技术和自动测试技术(ATE)的结晶。

目前,国际上已开发出多种智能温度传感器系列产品。

智能温度传感器内部都包含温度传感器、A/D转换器、信号处理器、存储器(或寄存器)和接口电路。

有的产品还带多路选择器、中央控制器(CPU)、随机存取存储器(RAM)和只读存储器(ROM)。

智能温度传感器的特点是能输出温度数据及相关的温度控制量,适配各种微控制器(MCU);并且它是在硬件的基础上通过软件来实现测试功能的,其智能化程度也取决于软件的开发水平。

1.2.2 传感器发展趋势现代信息技术的三大基础是信息采集(即传感器技术)、信息传输(通信技术)和信息处理(计算机技术)。

传感器属于信息技术的前沿尖端产品,尤其是温度传感器,它被广泛用于工农业生产、科学研究和生活等领域,数量高居各种传感器之首。

近百年来,温度传感器的发展大致经历了以下三个阶段;(1)传统的分立式温度传感器(含敏感元件);(2)模拟集成温度传感器/控制器;(3)智能温度传感器。

目前,国际上新型温度传感器正从模拟式向数字式、由集成化向智能化、网络化的方向发展。

2 硬件设计2.1 总体设计方案本设计是一个基于单片机的温度测量电路,传统的温度检测系统采用热敏电阻等温度敏感元件,热敏电阻虽然成本低,但是需要后续信号处理、A/D转换处理等才能将温度转换成数字信号,不但电路复杂,可靠性和精度也相对较低,在应用中还需要解决引线误差补偿、干扰等问题,故传统方案不可取。

进而非常容易考虑到使用温度传感器,在单片机电路设计中,单片机除了可以测量电信号外,还可以用于温度、湿度等非电信号的测量,能独立工作的单片机温度检测、温度控制系统已经广泛的应用于很多领域。

单片机的接口信号是数字信号,要用单片机作为控制器测量温度这类非电信号,就要使用温度传感器将温度信息转换为电流或者电压信号输出,如果转化的信号是模拟信号,还需要进行A/D转化,以满足单片机接口的需要。

进一步联想到可以采用一只温度传感器DS18B20,此传感器,可以很容易直接读取被测温度值,进行转换,成功地进行温度采集以后,就可以利用单片机进行数据处理,然后通过LCD将温度显示出来,就可以满足设计要求。

硬件部分设计主要包括:测温电路、传感器电路及测温电路与单片机的接口、报警电路与单片机的接口等组成的。

本设计中,温度传感器采用DS18B20,控制器采用AT89S51,显示电路采用LED数码管显示器实现,总体方框图如下:图3.1 总体方框图在研究出总体设计方案后,在这一阶段主要的主要工作是查阅各芯片资料,熟悉其功能特性和技术参数,同时学习PROTEL DXP软件,用其绘制出硬件原理图,然后继续分析各结构,查阅国内外相关技术资料,查缺补漏,反复修改设计方案,力求完美;通过原理图绘制PCB图;制作PCB板,购买所需元件,完成硬件方面的设计。

2.2系统器件的选择2.2.1 单片机的选择AT89S系列的单片机是能用下载线进行在线编程的 ISP,使用简单的HC244电路,就可以通过电脑上面的程序来进行对单片机的编程,是无须拆下来放到笨重的编程器上面写片子的。

AT89C系列则没有这个功能并且C系列无法调试。

2.2.2温度传感器的选择本设计主要应用在机房、粮仓等地,测量温度在-20到+75摄氏度之间,ds18b20温度测量范围从-55到+125摄氏度,精度为±0.5 ° C,适合设计要求,所以传感器选择ds18b20温度传感器。

2.2.3显示模块的选择1601显示一行的16个字符,1602显示两行的16个字符,1602海可以显示汉字,满足设计要求,所以选择LCD1602显示模块。

2.3传感器模块DS18B20温度传感器是该系统的关键器件,本设计采用的DS18B20温度传感器是美国DALLAS半导体公司最新推出的一款改进型智能温度传感器,它集温度测量、A/D 转换为一体,其温度测量范围从-55OC到+125OC,精度为±0.5 ° C,可在1秒钟内把温度变换成数字。

DS18B20是世界上第一片支持“一线总线”接口的温度传感器,也就是说,它具有独特的单总线接口,仅需要占用一个I/O端口即可以完成与微处理器间的通信,占用微处理器的端口较少, 可节省大量的引线和逻辑电路,为读写以及温度转换带来方便,同时,它可以从数据线本身获得能量,不需要外接电源;它支持3V~5.5V 的电压范围, 使系统设计更灵活、方便; 其工作电源既可在远端引入, 也可采用寄生电源方式产生;此外,与传统的热敏电阻等测温元件相比,DS18B20能直接读出被测量的温度,并且可以根据实际要求通过简单的编程实现9 ~12位的数字值读数方式,它可在1 秒钟内把温度变换成数字;由DS18B20 组建的温度测量单元体积小, 便于携带和安装。

同时,DS18B20 可以直接与单片机连接, 无需后接A/D 转换, 控制简单;还有,它具有负压特性,电源极性接反时,仅仅是不能正常工作,但温度计不会因发热而烧毁。

Ds18b20内部结构主要由四部分组成:64位光刻ROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。

整体来说DS18B20 的性能是新一代产品中最好的,性能价格比也非常出色,所以我们选择它来作为设计部件。

2.3.1 注意事项:Ds18b20虽然具有测温系统简单、测温精度高、连接方便、占用口线少等优点,但在实际应用中叶应注意以下几个方面的问题:1在对ds18b20进行读写编程时,必须严格的保证读写时序,否则将无法读取测温结果。

2当单总线上所挂ds18b20超过8个小时,就需要解决微处理器的总线驱动问题。

3在用ds18b20进行长距离测温系统设计是要充分考虑总线分布电容和阻抗匹配问题。

Ds18b20从测温结束到将温度值转换成数字量需要一定的转换时间。

图2.2 DS18B20的外观图图2.3 DS18B20内部结构框图图2.4 DS18B20引脚分布图DS18B20的主要技术指标如下:测量范围:-55OC—+125OC;测量精度:0.5OC;反应时间<=500ms。

2.3.2 引脚功能2、DQ:数据输入/输出引脚。

开漏单总线接口引脚。

当被用在寄生电源下,此引脚可以向器件提供电源;漏极开路, 常态下为高电平. 通常要求外接一个约5kΩ的上拉电阻。

3、VDD:外接供电电源输入端引脚。

电压范围:3~5.5V;当工作于寄生电源时,此引脚必须接地在本系统中用外接电源,DQ接到AT89S51的P2.0端,R1为信号和5V电源之间的上拉电阻。

在实际中,若需要多点检测是,可在单总线上挂多个DS18B20,但超过8个是要考虑驱动问题,软件设计也变得复杂多了同事要考虑DS18B20单总线的长度问题,一般不超过50M,为实现更远程的控制,可以考虑把系统设计成无线系统,以突破DA18B20单总线的长度限制。

表2.1 主要温度与转换后输出的数字对应值表温度 /OC 二进制表示十六进制表示+125 0000 0111 1101 0000 07D0H+85 0000 0101 0101 0000 0550H+25.0625 0000 0001 1001 0000 0191H+10.125 0000 0000 1010 0001 00A2H+0.5 0000 0000 0000 1000 0008H0 0000 0000 0000 0000 0000H-0.5 1111 1111 1111 1000 FFF8H-10.125 1111 1111 0101 1110 FFE5H-25.0625 1111 1110 0110 1111 FE6FH-55 1111 1100 1001 0000 FC90H(a)寄生电源工作方式(b)外接电源工作方式2.3.3 ds18b20 ROM指令表指令约定代码功能读ROM 33H 读DS1820温度传感器ROM中的编码(即64位地址)符合 ROM 55H发出此命令之后,接着发出 64 位 ROM 编码,访问单总线上与该编码相对应的 DS1820 使之作出响应,为下一步对该 DS1820 的读写作准备。

相关文档
最新文档