多路温度采集系统设计.docx

上传人:b****6 文档编号:6048909 上传时间:2023-01-03 格式:DOCX 页数:34 大小:290.22KB
下载 相关 举报
多路温度采集系统设计.docx_第1页
第1页 / 共34页
多路温度采集系统设计.docx_第2页
第2页 / 共34页
多路温度采集系统设计.docx_第3页
第3页 / 共34页
多路温度采集系统设计.docx_第4页
第4页 / 共34页
多路温度采集系统设计.docx_第5页
第5页 / 共34页
点击查看更多>>
下载资源
资源描述

多路温度采集系统设计.docx

《多路温度采集系统设计.docx》由会员分享,可在线阅读,更多相关《多路温度采集系统设计.docx(34页珍藏版)》请在冰豆网上搜索。

多路温度采集系统设计.docx

多路温度采集系统设计

摘要

数字式多路温度采集系统由主控制器、温度采集电路、温度显示电路、报警控制电路及键盘输入控制电路组成。

它利用单片机AT89C51做控制及数据处理器、智能温度传感器DS18B20做温度检测器、LED数码显示管做温度显示输出设备。

硬件电路比较简单,成本较低,测温范围大,测量精度高,读数显示直观,使用方便。

关键词:

数字;温度;传感器;单片机;控制

Abstract

thedigitalmulti-channeltemperaturegatheringsystembythemastercontrolregulator,thetemperaturegatheringelectriccircuit,thetemperaturedisplaycircuit,reportstothepolicethecontrolcircuitandthekeyboardentrycontrolcircuitiscomposed.Itmakesthecontrolandthedataprocessor,intelligenttemperaturesensorDS18B20usingmonolithicintegratedcircuitAT89C51makesthetemperaturedetector,theLEDnumericalcodedisplaytubemakesthetemperaturedemonstrationoutputunit.Thehardwareelectriccircuitquiteissimple,thecostislow,thetemperaturemeasurementscopeisbig,andthemeasuringaccuracyishigh,readingdemonstrationisdirect-viewing,easytooperate.

Keywords:

numeral;temperature;sensor;monolithicintegratedcircuit;control

1综述

温度是一种最基本的环境参数,人们的生活与环境温度息息相关,因此研究温度的测量方法和装置具有重要的意义。

温度测量装置的关键是温度传感器,温度传感器的发展经历了三个发展阶段:

(1)传统的分立式温度传感器,

(2)模拟集成温度传感器,(3)智能集成温度传感器。

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

本人选择数字式多路温度采集系统设计。

系统主要技术指标:

(1)2路温度采集电路及以上;

(2)采集测温范围为-50~+110℃;

(3)温度精度,误差在0.1℃以内;

(4)显示模块,采用LED数码管显示。

2数字式多路温度采集系统硬件电路设计

按照系统设计功能的要求,系统由5个模块组成:

主控制器、温度采集电路[1]、温度显示电路、报警控制电路及键盘输入控制电路。

数字式多路温度采集系统总体电路结构框图如图1所示。

(AT89C51)

图1数字式多路温度采集系统结构框图

采用智能温度传感器(DS18B20)采集环境温度并进行简单的模数转换;单片机(AT89C51)执行程序对温度传感器传输的数据进行进一步的分析处理,转换成环境对应的温度值,通过I/O口输出到数码显示管(LED)显示;由键盘输入控制选择某采集电路检测温度及显示;报警电路对设定的最高最低报警温度进行监控报警。

2.1温度采集电路设计

温度采样处理电路由温度传感器、放大电路、A/D转换电路等组成。

采用分块结构的温度采样处理电路,其硬件电路结构复杂,也不便于数据的处理。

采用智能温度传感器采样处理电路,能够方便的进行温度的采集及简单的数据处理。

并且可以达到设计的技术指标要求。

本系统选择智能温度传感器DS18B20作为温度采集电路的核心器件。

由DS18B20及辅助电路构成温度采集电路。

2.1.1DS18B20简介

(1)DS18B20的性能特点

DS18B20是美国DALLAS半导体公司推出的一种改进型智能温度传感器,与传统的热敏电阻等温度传感器相比,它能够直接读出被测温度,并可根据实际要求通过简单的编程实现9~12位的数字值读数方式,可以在93.75ms至750ms内完成相应9位至12位的数字量转换。

它的测温精度可达到0.0625℃/LSB。

它的测温范围是-55~+125℃。

从DS18B20读出或写入信息仅需要一根口线,温度变换功率来源于数据总线,总线本身也可以向所挂接的DS18B20供电,无需额外电源。

因而选用DS18B20是恰当的。

(2)DS18B20的外形和内部结构

DS18B20采用3脚PR-35封装,其外形和内部结构框图分别如图2、图3所示。

图2DS18B20外形结构图3DS18B20内部结构

DS18B20内部结构主要由四部分组成:

64位光刻ROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。

64位光刻ROM的位结构图如图4所示。

64位序列号是出厂前被光刻好的,它可以看作是该DS18B20的地址序列码。

开始8位(28H)是产品类型标号,接着的48位是该DS18B20自身的序列号,最后8位是前面56位的循环冗余校验码。

图464位ROM结构

DS18B20温度传感器的内部存储器包括一个非易失性的可电擦除E2PRAM和一个高速暂存RAM。

E2PRAM包括存放高温度和低温度的触发器TH、TL和结构寄存器。

非易失性温度报警触发器TH和TL,可通过软件写入用户报警上下限。

高速暂存RAM的结构为9字节的存储器,结构图如图5所示。

头2个字节包含测得的温度信息。

第3、4字节是TH和TL的拷贝,每次上电复位时被刷新。

第5字节为配置寄存器,用于确定温度值的数字转换分辨率。

第6、7、8字节保留未用,表现为全逻辑1。

第9字节读出前面所有8字节的CRC码,可用来检验数据,从而保证通信数据的正确性。

第5字节配置寄存器各位的定义如图6所示;低5位一直为1,TM是测试模式位,用于设置DS18B20在工作模式还是在测试模式;R1和R0决定温度转换的精度位数(即设置分辨率),定义方法见表1。

图5高速缓存RAM结构

图6配置寄存器

表1DS18B20分辨率的定义规定

R1

R0

分辨率/位

温度最大转换时间/ns

0

0

1

1

0

1

0

1

9

10

11

12

93.75

187.5

375

750

9位分辨率时,精度为0.5℃/LSB;10位分辨率时,精度为0.25℃/LSB;11位分辨率时,精度为0.125℃/LSB;12位分辨率时,精度为0.0625℃/LSB。

转换精度越高所需转换时间越长。

为了达到本系统的技术指标,选择12位分辨率。

(3)DS18B20供电方式

外部电源供电方式是DS18B20最佳的工作方式,工作稳定可靠,抗干扰能力强,而且电路也比较简单,可以开发出稳定可靠的多点温度监控系统。

在外接电源方式下,可以充分发挥DS18B20宽电源电压范围的优点,即使电源电压VCC降到3V时,依然能够保证测量精度。

所以本系统采用外部电源供电方式。

在外部电源供电方式下,DS18B20工作电源由VDD引脚接入,此时I/O线不需要强上拉,不存在电源电流不足的问题,可以保证转换精度,同时在总线上可以挂接任意多个DS18B20传感器,组成多点测温系统。

外部电源供电方式如图7所示。

在外部供电方式下,DS18B20的GND引脚必须接地,不能悬空,否则不能转换温度,读取的温度总是85℃。

图7DS18B20外部电源供电

2.1.2温度采集电路结构

温度采集电路结构如图8所示。

图中给出了2路温度采集电路,2只智能温度传感器DS18B20的信号输出端都连接到单片机的P1.7端,电阻R6作为上拉电阻。

如果需要增加,可以在P1.7端再连接更多的智能温度传感器DS18B20。

工作时,由程序控制读取某智能温度传感器DS18B20采集的温度数据,送单片机处理。

图8多点温度采集电路

2.2单片机控制电路设计

单片机控制电路核心是单片机芯片,其加上工作基本电路,就可以展开控制工作。

2.2.1单片机芯片选择

MCS8031和AT89C51[2]都具有4个8位I/O接口,但MCS8031没有内部程序存储器,需要外接,增加了电路的复杂性;AT89C2051和AT89C51都具有FlashROM,可以省去外接程序存储器;但AT89C2051接口少,不利于功能扩展;故选用AT89C51。

AT89C51单片机内部结构及主要性能特点:

40个引脚,双列直插式封装;有4个8位I/O接口;有全双工增强型UART,可编程串行通信;2个16位定时/计数器;5个中断源,2个中断优先级;有片内时钟振荡器(全静态工作方式,0~24MHz);有128字节内部RAM,4KBFlashROM(可以擦除1000次以上,数据保存10年);电源控制模式灵活(时钟可停止和恢复,空闲模式,掉电模式)。

2.2.2AT89C51单片机工作基本电路设计

AT89C51单片机正常工作,必须连接基本电路。

基本电路包括晶振电路[3]和复位电路[4]。

(1)晶振电路

单片机的时钟信号通常有两种产生方式:

一是内部时钟方式,二是外部时钟方式。

内部时钟方式是利用单片机内部的振荡电路产生时钟信号。

外部时钟方式是把外部已有的时钟信号引入到单片机内。

本设计采用内部时钟方式,电路如图9中所示。

在单片机的XTAL1和XTAL2引脚外接石英晶体(简称晶振),作为单片机内部振荡电路的负载,构成自激振荡器,可在单片机内部产生时钟脉冲信号。

C1和C2可以稳定振荡频率,并使快速起振。

本电路选用晶振12MHz,C1=C2=30pF。

(2)复位电路

复位是使单片机处于某种确定的初始状态。

单片机工作从复位开始。

在单片机RST引脚引入高电平并保持2个机器周期,单片机就执行复位操作。

复位操作有两种基本方式:

一种是上电复位,另一种是上电与按键均有效的复位。

本设计采用后一种复位电路。

电路如图9中所示。

当RST获得高电平,随着电容C3的充电,RST引脚的高电平将逐渐下降。

若该高电平能保持足够2个机器周期,就可以实现复位操作。

选择C3=10µF,R1=10KΩ。

综上所述,单片机控制电路如图9所示。

图9单片机控制电路

2.3输入控制电路设计

输入控制电路由按键及其接口构成,键盘是单片机最简单的输入设备。

常用键盘分为独立式键盘和矩阵式键盘。

本系统的输入控制简单,采用独立式键盘及接口电路[5]。

输入电路由2个按钮开关、2个10欧的限流电阻组成;键扫描识别采用软件查询的方法。

电路如图10所示,各键功能如表2所示。

图10按键输入控制电路

表2各键功能

按键

键名

功能

S1

第一路温度

按键按下,LED数码显示管显示第一路温度。

S2

第二路温度

按键按下,LED数码显示管显示第二路温度。

2.4显示电路设计

显示电路采用LED数码管显示。

LED数码显示管有静态显示方式和动态显示方式,本系统采用串行输出[6]的静态显示方式。

利用4片串转并芯片74LS164将控制器输出的串行数据转换成并行数据输出,用来驱动4位LED数码显示管显示数据。

2.4.1LED数码显示管静态显示工作原理

LED显示器工作于静态显示方式时,各位的阴极(或阳极)选择线连接在一起并接地(或+5V);每位的段码线分别与1个8位的锁存器输出连接。

各LED显示某一字符时,相应段的发光二极管恒定地导通或截止,直到送入另一个字符的段码为止。

静态显示可以得到较高的显示亮度。

静态显示有并行输出和串行输出两种方式。

并行输出显示的十进制位数多时,需要并行I/O接口芯片的数量较多。

串行输出可以大大节省单片机的内部资源。

2.4.2显示电路结构

显示电路由单片机AT89C51的P3.0端作数据输出,连接到低位74LS164的数据输入引脚端,其余3片74LS164的数据输入端分别接到它前面一位74LS164的数据输出端的最高位引脚端。

单片机AT89C51的P3.1、P1.4端分别接到一个与门电路的输入端,与门电路的输出端分别与每片74LS164的输出允许控制端相连接。

每片74LS164的输出端分别连接到一个数码显示管。

显示电路结构图如图11所示。

图11显示电路图

2.4.3显示电路工作过程

AT89C51单片机工作在串行口方式0下(移位寄存器方式),P3.0(RXD)为数据输出端,P3.1(TXD)为移位脉冲输出端,P1.4为74LS164允许输出控制端。

串行口发送缓冲区的数据在移位脉冲的作用下,一位一位地从P3.0口移入到74LS164中,并在控制信号的控制作用下,通过LED数码显示管显示。

2.5报警控制电路设计

报警控制电路采用压电式蜂鸣器作发声体,用三极管对蜂鸣器发声进行控制。

2.5.1报警控制电路结构

报警控制电路由单片机AT89C51的P3.7端作输出,通过一个限流电阻与三极管C945的基极相连接。

三极管C945集电极连接压电蜂鸣器(BUZZER)的一端。

压电蜂鸣器的另一端连接电源。

报警控制电路如图12所示。

图12报警工作电路

2.5.2报警控制电路工作过程

(1)压电蜂鸣器工作原理

压电蜂鸣器以压电陶瓷制作而成。

压电陶瓷是一类有将压力与电流相互转换能力的特殊陶瓷。

当压电陶瓷在一定方向上受到一个压力使其晶体结构发生形变时,它就会在内部产生一个电流,电流的变化与压力的变化密切相关。

反之,当在压电陶瓷上加上一定频率的电压,就会在内部产生一定频率的电流,从而就会引起压电陶瓷微小形变,这一形变带动空气发生振动。

如果频率适当,就产生蜂鸣声,可以被人耳所听见。

(2)报警控制电路工作过程

报警控制信号由单片机AT89C51的P3.7端输出,通过一个限流电阻加到三极管C945的基极。

当P3.7端的输出信号发生变化时,则三极管C945将交替的工作于截止、饱和状态,形成高低电平的波,从而使压电蜂鸣器发出声音。

2.6电源电路设计

电源电路[7]由变压器、单相桥式整流电路、滤波电路和三端稳压电路构成。

其电路图如图13所示,图中“output”端输出为+5V。

图13电源电路

电子设备中常使用输出电压固定的集成稳压器。

三端式稳压器只有输入、输出和公共引出端,由启动电路、基准电压电路、取样比较放大电路、调整电路和保护电路等部分组成。

在本系统中,要求电源电压为+5V,由于三端式稳压器输出电压固定,故在设计中选择三端式稳压器L7805。

三端式稳压器的输入与输出之间电压差为2~3V,整流桥的输出电压是输入电压(有效值)的1.2倍,根据有效值与峰-峰值的关系选择220V/6V的变压器。

由于L7805的最大输出电流为1A,电压为稳定的+5V,输出功率为5W,加上三端式稳压器L7805的消耗,故本系统选择降压比为220V/6V、功率为10W的变压器。

图13中C4、C5为低频滤波电容,根据经验选择电解电容,其容值分别为C4=220μF、C5=47μF;C6、C7为高频滤波电容,均选0.1μF的无极性电容。

发光二极管用于指示电源是否接通,选择FG1112004发光二极管,根据FG1112004正向电流为5mA及管压降为+2V,选择限流电阻R5=680Ω。

2.7数字式多路温度采集系统元件清单

数字式多路温度采集系统元件清单,见附录

(1)。

2.8数字式多路温度采集系统电路图

数字式多路温度采集系统原理图,见附录

(2)(图14)

数字式多路温度采集系统印刷电路板图,见附录(3)(图15)

3数字式多路温度采集系统程序设计

3.1主程序设计

主程序[8]主要功能是控制调用子程序,实现温度的实时显示、读出并处理DS18B20的测量温度值(温度测量每1s进行一次)。

其程序流程图如图16所示。

图16数字式多路温度采集系统主程序流程图

3.2子程序设计

3.2.1DS18B20的通信协议

根据DS18B20的通讯协议[7],主机(单片机AT98C51)控制DS18B20完成温度转换必须经过三个步骤:

每一次读写之前都要对DS18B20进行初始化操作,初始化成功后发送一条存储器操作命令(ROM指令),最后处理数据(发送RAM指令),这样才能对DS18B20进行预定的操作。

所用各ROM、RAM操作指令分别如表3、表4所示。

表3ROM指令表

指令

约定代码

功能

读ROM

33H

读DS18B20温度传感器ROM中的编码(即64位地址)

符合ROM

55H

发出此命令之后,接着发出64位ROM编码,访问单总线上与该编码相对应的DS18B20使之做出响应,为下一步对该DS18B20的读写做准备.

搜索ROM

0F0H

用于确定挂接在同一总线上DS18B20的个数和识别64位ROM地址。

为操作各器件作好准备。

跳过ROM

0CCH

忽略64位ROM地址,直接向DS18B20发温度变换命令。

适用于单片工作。

告警搜索命令

0ECH

执行后温度超过设定值上限或下限的片子才能做出响应。

表4RAM指令表

指令

约定代码

功能

温度转换

44H

启动DS18B20进行温度转换,12位转换时最长为750ms(9位为93.75ms)。

结果存入内部9字节RAM中。

读暂存器

0BEH

读内部RAM中9字节的内容。

写暂存器

4EH

发出向内部RAM的3、4字节写上、下限温度数据命令,紧跟该命令之后,是传送两字节的数据。

3.2.2子程序

(1)键盘扫描子程序

键盘扫描子程序对按下的键进行判断,并转到按下的相应键对应的程序段,执行相应的功能。

其程序流程图如图17所示。

(2)温度转换命令子程序

温度转换命令子程序主要是发送温度转换开始命令。

在发送匹配ROM命令后,紧跟着发送要进行测温的DS18B20的64位ROM序列(这个序列号一般由厂方提供或通过实验的方式获得)。

采用12位分辨率,转换时间约为750ms。

其程序流程图如图18所示。

图17键盘扫描子程序流程图图18温度转换命令子程序流程图

(3)读出温度子程序

读出温度子程序主要功能是读出RAM中的9个字节,在读出时需进行CRC校验,校验有错时不进行温度数据的改写。

其程序流程图如图19所示。

(4)计算温度子程序

从DS18B20读取出的二进制值必须先转换成十进制值,才能用于字符的显示。

在系统采用12位转换精度,温度寄存器里的值是以0.0625为步进的,即温度值为温度寄存器里的二进制值乘以0.0625,就是实际的十进制温度值。

通过观察可以发现一个十进制值和二进制值之间有很明显的关系。

低字节的高半字节乘以0.0625恰好就是原整数。

因此,把二进制的高字节的低半字节和低字节的高半字节组成一个字节,这个字节的二进制值化为十进制值后,就恰好是温度值的百、十、个位值;剩下的低字节的低半字节化成十进制后,就是温度值的小数部分。

小数部分因为是半个字节,所以二进制值范围是0~F,转换成十进制小数值就是0.0625的倍数。

这样需要4位的数码管来显示小数部分,实际应用不必有这么高的精度,采用1位数码管来显示小数,可以精确到0.1℃。

表5就是二进制和十进制小数的近似对应关系。

其程序流程图如图20所示。

表5小数部分二进制和十进制的近似对应关系表

小数部分

二进制数

0

1

2

3

4

5

6

7

8

9

A

B

C

D

E

F

十进制数

0

0

1

1

2

3

3

4

5

5

6

6

7

8

8

9

图19读出温度子程序流程图图20计算温度子程序流程图

(5)显示数据刷新子程序

显示数据刷新子程序[9]主要是对显示缓冲区中的显示数据进行刷新操作,当最高显示位为0时将符号显示位移入下一位。

其程序流程图如图21所示。

图21显示数据刷新子程序流程图图22报警控制子程序流程图

(6)报警控制子程序

当设定的最高报警温度值大于显示缓冲区中的数据时,发出报警,提示温度超过设定的最大值。

其程序流程图如图22所示。

3.3数字式多路温度采集系统控制源程序

数字式多路温度采集系统控制源程序,见附录(4)。

4系统调试及性能分析

4.1系统调试

系统调试分为硬件调试和软件调试两步。

(1)硬件调试

硬件调试比较简单,首先检查电路的焊接是否正确及电路中有没有虚焊等问题,然后可用万用表测试或通电检测电路。

(2)软件调试

软件调试以程序为主。

先编写一段显示程序对硬件的正常工作进行检验,然后进行主程序、匹配ROM子程序、读出温度子程序、温度转换命令子程序、计算温度子程序、显示数据刷新子程序等的编程及调试。

软件调试到能显示温度值,而且在有温度变化时(例如用手去接触)显示温度能够改变就基本完成软件调试。

由于DS18B20与单片机采用单线串行数据传送,因此,对DS18B20进行读写编程时必须严格地保证读写时序,否则将无法读取测量结果。

4.2系统性能分析

用制作的测温系统和已有的成品温度计(如水银温度计)来同时测量环境温度,并对测量的结果进行比较分析。

由比较分析及DS18B20的特点可得,用本系统进行测温时,精度很高,误差指标可以限制在0.1℃以内;另外在-55~+125℃的测温范围内使得该系统完全适合一般的应用场合。

5结束语

数字式多路温度采集系统具有温度采集、显示、简单的人机对话及报警功能。

它的测温范围宽(-55~+125℃),测量精度可通过编程调节,最高精度可达到0.0625℃/LSB。

本系统主要是适用于采集显示温度,不具备控制调节温度功能。

但能够进行硬件和软件功能扩展。

在硬件扩展后,通过软件编程实现控制功能扩展。

例如当环境温度达到一定值时,通过软件编程进行判断,从主控制器的一个I/O端口输出一个控制指令,去驱动外部的控制电路工作,从而调节环境温度,使环境温度达到人们所需的要求。

因此在人们健康意识日益提高的今天有很好的市场推广前景。

参考文献

[1]李光飞.单片机课程设计实例指导[M].北京:

北京航空航天大学出版社,2004:

105-106.

[2]余永权.ATMEL系列单片机应用技术[M].北京:

北京航空航天大学出版社,2002:

25-26.

[3]张毅刚.单片机原理及应用[M].北京:

高等教育出版社,2004:

31-33.

[4]李玉峰.MCS-51系列单片机原理与接口技术[M].北京:

人民邮电出版社,2004:

26-27.

[5]陈明荧.8051单片机课程设计实训教材[M].北京:

清华大学出版社,2004:

28-30.

[6]李全利.单片计原理及接口技术[M].北京:

高等教育出版社,2004:

117-149.

[7]康华光.电子技术基础(模拟部分)[M].北京:

高等教育出版社,1999:

444、446、455.

[8]周航慈.单片机程序设计基础[M].北京:

北京航空航天大学出版社,2003.

[9]胡健.单片机原理及接口技术实践教程[M].北京:

机械工业出版社,2004.

致谢

 

附录

附录

(1)数字式多路温度采集系统元件清单

编号

元件名称

型号及规格

数量

1

单片机芯片

AT89

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 自然科学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1