温度传感器课程设计_第1页
温度传感器课程设计_第2页
温度传感器课程设计_第3页
温度传感器课程设计_第4页
温度传感器课程设计_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、温度传感器课程设计报告专 业: 电气化年 级:13-2学 院:机电院姓名:崔海艳学号:8021209235目录1弓I言 .32设计要求 .33工作原理 .34 方案设计 .45单元电路的设计和元器件的选择.65.1微控制器模块 .65.2温度采集模块 .75.3报警模块 .95.4 温度显示模块 .95.5其它外围电路 .106 电源模块 127程序设计 137.1流程图 .137.2程序分析 .168.实例测试 18总结 .18参考文献 .191引言传感器是一种有趣的且值得研究的装置, 它能通过测量外界的物理量,化 学量或生物量来捕捉知识和信息, 并能将被测量的非电学量转换成电学量。 在 生

2、活中它为我们提供了很多方便,在传感器产品中,温度传感器是最主要的需 求产品,它被应用在多个方面。总而言之,传感器的出现改变了我们的生活, 生活因使用传感器也变得多姿多彩。温度控制系统广泛应用于社会生活的各个领域,如家电、汽车、材料、电力电子等,常用的控制电路根据应用场合和所要求的性能指标有所不同,在工业企业中,如何提高温度控制对象的运行性能一直以来都是控制人员和现场 技术人员努力解决的问题。这类控制对象惯性大,滞后现象严重,存在很多不 确定的因素,难以建立精确的数学模型,从而导致控制系统性能不佳,甚至出 现控制不稳定、失控现象。传统的继电器调温电路简单实用,但由于继电器动作频繁,可能会因触点不

3、良而影响正常工作。控制领域还大量采用传统的 PID控制方式,但PID控制对象的模型难以建立,并且当扰动因素不明确时, 参数调整不便仍是普遍存在的问题。而采用数字温度传感器DS18B20因其内部集成了 A/D转换器,使得电路结构更加简单,而且减少了温度测量转换时的 精度损失,使得测量温度更加精确。数字温度传感器DS18B2C只用一个引脚即 可与单片机进行通信,大大减少了接线的麻烦,使得单片机更加具有扩展性。 由于DS18B2C芯片的小型化,更加可以通过单跳数据线就可以和主电路连接, 故可以把数字温度传感器 DS18B20做成探头,探入到狭小的地方,增加了实用 性。更能串接多个数字温度传感器 DS

4、18B2C进行范围的温度检测2设计要求本设计主要是介绍了单片机控制下的温度检测系统,详细介绍了其硬件和软 件设计,并对其各功能模块做了详细介绍,其主要功能和指标如下:利用温度传感器(DS18B20)测量某一点环境温度测量范围为-55C+ 99C,精度为土 05C用液晶进行实际温度值显示能够根据需要方便设定上下限报警温度3工作原理温度传感器DS18B20从设备环境的不同位置采集温度,单片机AT89S51获 取采集的温度值,经处理后得到当前环境中一个比较稳定的温度值, 再根据当前 设定的温度上下限值,通过加热和降温对当前温度进行调整。 当采集的温度经处 理后超过设定温度的上限时,单片机通过三极管驱

5、动继电器开启降温设备 (压缩 制冷器),当采集的温度经处理后低于设定温度的下时,单片机通过三极管驱 动继电器开启升温设备(加热器)。当由于环境温度变化太剧烈或由于加热或降温设备出现故障, 或者温度传感 头出现故障导致在一段时间内不能将环境温度调整到规定的温度限内的时候, 单 片机通过三极管驱动扬声器发出警笛声。系统中将通过串口通讯连接 PC机存储温度变化时的历史数据,以便观察整 个温度的控制过程及监控温度的变化全过程。4方案设计采用数字温度芯片DS18B20测量温度,输出信号全数字化。便于单片 机处理及控制,省去传统的测温方法的很多外围电路。且该芯片的物理化学 性很稳定,它能用做工业测温元件,

6、此元件线形较好。在0100摄氏度时,最大线形偏差小于1摄氏度。DS18B20的最大特点之一采用了单总线的数 据传输,由数字温度计DS18B20和微控制器AT89S51构成的温度测量装置, 它直接输出温度的数字信号,可直接与计算机连接。这样,测温系统的结构 就比较简单,体积也不大。采用51单片机控制,软件编程的自由度大,可通 过编程实现各种各样的算术算法和逻辑控制,而且体积小,硬件实现简单, 安装方便。既可以单独对多DS18B20控制工作,还可以与PC机通信上传数 据,另外AT89S51在工业控制上也有着广泛的应用,编程技术及外围功能 电路的配合使用都很成熟。该系统利用AT89S51芯片控制温度

7、传感器DS18B20进行实时温度检测并 显示,能够实现快速测量环境温度,并可以根据需要设定上下限报警温度。 该系统扩展性非常强,它可以在设计中加入时钟芯片 DS1302以获取时间数 据,在数据处理同时显示时间,并可以利用 AT24C16芯片作为存储器件,以 此来对某些时间点的温度数据进行存储,利用键盘来进行调时和温度查询, 获得的数据可以通过MAX232芯片与计算机的RS232接口进行串口通信,方 便的采集和整理时间温度数据。系统框图如图4-3所示图4-3 DS18B20温度测温系统框图5单元电路的设计和元器件的选择5.1微控制器模块AT89S51是一个低功耗,高性能 CMOS啦单片机,片内含

8、8k BytesISP(In-system programmable) 的可反复擦写1000次的Flash只读程序存储器, 器件采用ATME公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单 元,功能强大的微型计算机的AT89S51可为许多嵌入式控制应用系统提供高性价 比的解决方案。AT89S51具有如下特点:40个引脚,4k Bytes Flash 片内程序 存储器,128 bytes的随机存取数据存储器(RAM, 32个外部双向输入/输出(I/O) 口,5个中断优先级2层中断嵌套中断,2个16位可编

9、程定时计数器,2个全双 工串行通信口,看门狗(WDT电路,片内时钟振荡器。此外,AT89S51设计和配置了振荡频率可为0Hz并可通过软件设置省电模式。 空闲模式下,CPU暂停工作,而RAM定时计数器,串行口,外中断系统可继续工 作,掉电模式冻结振荡器而保存 RAM勺数据,停止芯片其它功能直至外中断激活 或硬件复位。同时该芯片还具有PDIP、TQFF和PLCC等三种封装形式,以适应不 同产品的需求。由于系统控制方案简单,数据量也不大,考虑到电路的简单和成本等因 素,因此在本设计中选用 A TMEL公司的A T89S51单片机作为主控芯片。主 控模块采用单片机最小系统是由于 A T89S51芯片内

10、含有4 kB的E2PROM,无 需外扩存储器,电路简单可靠,其时钟频率为024 MHz,并且价格低廉, 批量价在10元以内。主要特性如下 与MCS-51兼容 4K字节可编程闪烁存储器寿命:1000写 /擦循环 数据保留时间:10年全静态工作:0Hz-24Hz三级程序存储器锁定 128*8位内部RAM 32可编程I/O线两个16位定时器/计数器 5个中断源可编程串行通道低功耗的闲置和掉电模式lyiri iuroTGEh .VpXI X2AT8*J51REiETRDR:DAT89S51单片机引脚图4 5 6 7 1111 p p p PP21P22P23P4PZ5 叹P2733736笳3433站3

11、122232526272810113C0-TXDALET片内振荡器和时钟电路 5.2温度采集模块DS18B2C是DALLAS公司生产的一线式数字温度传感器,它具有微型化、低功耗、高性能抗干扰能力、强易配处理器等优点,特别适合用于构成多点温度测 控系统,可直接将温度转化成串行数字信号(按9位二进制数字)给单片机处理, 且在同一总线上可以挂接多个传感器芯片,它具有三引脚TO-92小体积封装形式,温度测量范围55+ 125C,可编程为912位A/D转换精度,测温分辨 率可达0.0625 C,被测温度用符号扩展的16位数字量方式串行输出,其工作电 源既可在远端引入,业可采用寄生电源方式产生,多个DS1

12、8B2C可以并联到三根 或者两根线上,CPU只需一根端口线就能与多个 DS18B2C通信,占用微处理器的 端口较少,可节省大量的引线和逻辑电路。从而可以看出DS18B2C可以非常方便 的被用于远距离多点温度检测系统。综上,在本系统中我采用温度芯片 DS18B20测量温度。该芯片的物理化学性 很稳定,它能用做工业测温元件,且此元件线形较好。在 0100摄氏度时,最 大线形偏差小于1摄氏度。该芯片直接向单片机传输数字信号,便于单片机处理 及控制。图5-2温度芯片DS18B20DS18B20最大的特点是单总线数据传输方式,DS18B20的数据I/O均由同一条线来完成。DS18B20的电源供电方式有2

13、种:外部供电方式和寄生电源方 式。工作于寄生电源方式时,VDD和GND均接地,他在需要远程温度探测和空间受限的场合特别有用,原理是当1 Wire总线的信号线DQ为高电平时,窃 取信号能量给DS18B20供电,同时一部分能量给内部电容充电,当DQ为低电平时释放能量为DS18B20供电。但寄生电源方式需要强上拉电路,软件控制变得复杂(特别是在完成温度转换和拷贝数据到 E2PROM寸),同时芯片的性能也 有所降低。外部电源供电方式是DS18B20最佳的工作方式,工作稳定可靠,抗干 扰能力强,而且电路也比较简单,可以开发出稳定可靠的多点温度监控系统。因此本设计采用外部供电方式。如下图所示:温度传感器D

14、S18B20的测量范围为-55 C+125C,在-10 C+85C时精度为土 0.5 C。因为本设计只用于测量环境温度,所以只显示0C+85C。5.3报警模块本设计采软件处理报警,利用有源蜂鸣器进行报警输出,采用直流供电。 当所测温度超过获低于所预设的温度时,数据口相应拉高电平,报警输出。(也可采用发光二级管报警电路,如过需要报警,则只需将相应位置 1,当 参数判断完毕后,再看报警模型单元 ALARM勺内容是否与预设一样,如不一 样,则发光报警)报警电路硬件连接见图5-3qjealier图5-3蜂鸣器电路连接图5.4温度显示模块本设计显示电路采用两位共阳极 LED数码管来显示测量得到的温度值。

15、LED 数码管能在低电压下工作,而且体积小、重量轻、使用寿命长,因次本设计选用 此数码管作为显示器件。一个LED数码管只能显示一位的字符,如果字符位数不止一位,可以 用几个数码管组成,但要控制多位的显示电路需要有字段控制和字位控制, 字段控制是指控制所要显示的字符是什么,控制电路应将字符的七段码通过 输出口连接到LED的ag引脚,是某些段点亮,某些段处于熄灭状态。字位 控制是指控制在多位显示器中,哪几位发光或那几位不发光,字位控制则需 要通过字位码作用于LED数码管的公共引脚,是某一位或某几位的数码管可 以发光。数码管显示电路分为动态显示和静态显示。静态显示方式是指每一个数码管的字段控制是独立

16、的,每一个数码管都 需要配置一个8位输出口来输出该字位的七段码。因此需要显示多位时需要 多个输出口,通常片内并口不够用,需要在片外扩展。动态显示又称为扫描显示方式,也就是在某一时刻只能让一个字位处 于选通状态,其他字位一律断开,同时在字段线上发出该位要显示的字段码, 这样在某一时刻某一位数码管就会被点亮,并显示出相应的字符。下一时刻 改变所显示的字位和字段码,点亮另一个数码管,显示另一个字符。绕后一 次扫描轮流点亮其他数码管,只要扫描速度快,利用人眼的视觉残留效应, 会使人感觉到几位数码管都在稳定的显示。本设计采用数码管动态显示,电路如下图所示:is 需弔521IRSTPO.VAJD 1Flu

17、ffsFDJfAHFU砂闻P5EHP2.1W-B PZWC P23TAHALEF2.4?AC0F1JJPZjA1+FZ.TCAepOHiKDPXirMFMHRNT1EP1JPZZJTWTTFlaF1占F3ST1F1-fiP3.6rtuTKP1J口rm肓疋C:爭1-丄二-二I-刃-;一4-一亠4-一-显示部分电路图中由单片机P1 口串接74HC245驱动两位共阳极数码管,上拉电阻排为10K。由P2.0和P2.1通过PNP型三极管Q1, Q2驱动其字位。三极管发射极接高 电平,当P2.0或P2.1为低电平时使三极管导通选通数码管的某一位。5.5其它外围电路复位电路:在单片机的RST引脚引入高电平并

18、保持2个机器周期时,单片机 内部就执行复位操作。实际应用中,复位操作有两种形式:一种是上电复位,另 一种是上电与按键均有效的复位。如下图所示ClRSTR1R2AT89S51上电与按键复位复位电踣如图-7祈示上电复位要求接通电源后,单片机自动实现复位操作。上电瞬间RST引脚获 得高电平,随着电容的充电,RST引脚的高电平逐渐下降。只要 RST引脚保持两 个机器周期的高电平单片机就可以进行复位操作。该电路参数为:晶振为12MHz时,电容为10卩F,电阻为8.2K Q ;晶振为6MHZ寸,电容为22卩F,电阻为1 K Q。本设计采用上电复位电路,电路参数为电容 10卩F,电阻8.2K.。晶振电路:单

19、片机的时钟信号通常有两种方式产生:一是内部时钟方式,二是外部时钟方式。本设计采用内部时钟方式,在单片机内部有一震荡电路,只要在单片机的 XTAL1和XTAL2脚外接石英晶体(简称晶振),就构成了自己震荡器并在单片机 内部产生时钟脉冲信号。C1AI89S51+1XTAL2C2图中电容器的作用是稳定频率和快速起振,电容值在530pF,典型值为30pF。晶振CYS的震荡频率范围在1.212MHZ间选择,典型值为12MHzffi 6MHz 本设计采用12MHz晶振,电容值为20 pF。在电路总体设计中,EAWpp脚用于是从外部程序存储器取指还是从内部程 序存储器取指的选择信号。当EAWpp接高电平时,

20、先从片内程序存储器读取指 令,读完4KB后,自动改为片外取指。若EAWpp接低电平,则所有指令均从片 外程序存储器读取。ALE脚用于输出允许地址所存信号。PSEN却用于外部程序存 储器选通信号,在对外部程序存储器取指操作时此引脚置低电平有效。在执行片内程序存储器取指时PESNW无效。本设计无片外程序存储器扩展,所以将 EAV pp脚接高电平,ALE及PSEN脚悬空。6电源模块控制系统主控制部分电源需要用5V直流电源供电,其电路如图6所示,把频 率为50Hz、有效值为220V勺单相交流电压转换为幅值稳定的5V直流电压。其主要 原理是把单相交流电经 过电源变压器、整流电路、滤波电路、稳压电路转换成

21、 稳定的直流电压。由于输入电压为电网电压,一般情况下所需直流电压的数值和电网电压的有 效值相差较大,因而电源变压器的作用显现出来起到降压作用。降压后还是交流电压,所以需要整流电路把交流电压转换成直流电压。由于经整流电路整流后的电压含有较大的交流分量,会影响到负载电路的正常工作。需通过低通滤波电路 滤波,使输出电压平滑。稳压电路的功能是使输出直流电压基本不受电网电压波 动和负载电阻变化的影响,从而获得稳定性足够高的直流电压。 本电路使用集成 稳压芯片7805解决了电源稳压问题。图6电源部分连线图7程序设计用汇编语言完成对设计的软件编程,程序开始首先对温度传感器 DS18B20 进行复位,检测是否

22、正常工作;接着读取温度数据,主机发出CCH旨令与在线的 DS18B2C联系,接着向DS18B2C发出温度A/D转换44H指令,再发出温度寄存器 的温度值BEH指令,并反复调用复位,写入及读取数据子程序,之后再经过数据 转换,由数码管显示出来,不断循环。7.1流程图7.2程序分析 对DS18B2C进行复位,写入和读取温度数据(在温度传感器DS18B20内部完成, 并实现对温度信息的采集);读取温度流程如下:复位一发 CCH命令(跳过ROM 一发44H命令一延时1s一复位一发CCH命令(跳过ROM-发BEH命令(读内部 RAM中 9字节内容)一连接从总线上读出2个字节的数据(温度数据的低8位和 高

23、8位)结束部分程序代码:(1)DS18B20勺复位子程序部分:RESET_1820:SETB DQ;NOPNOPCLR DQ;主机发出复位低脉冲MOV R1, #3;DLY: MOV R0 #107;DJNZ RQ $;DJNZ R1, DLY;拉高数据线SETB DQNOPNOPNOP;等待DS18B20勺回应MOV RQ #25H;T2:JNB DQ T3;DJNZ RO, T2;JMP T4;标志位flag=1,表示DS18B2C存在T3:SETB FLAGJMP T5;标志位flag=O ,表示DS18B2环存在T5:MOV RQ #117;T4:RET注:根据DS18B2C的通信协议

24、,每一次读写数据之前都要对 DS18B2C进行复 位,复位要求主机先发出复位低脉冲(大于 48us);然后释放,DS18B2Q攵到信 号后等待166Ous,然后发出6024Ous的存在低脉冲,主机收到此信号表示 复位成功。1RU 応 7” 如0“巧巾/胡1“尸一:需、一r/初始化时序(2) DS18B2O勺写入子程序部分:WRITE_1820:MOV R2 #8; 一位共8位数据CLR C;C=0WR1:CLR DQ;总线低位,开始写入MOV R3 #7;DJNZ R3, $; 保持 16us 以上RRC A ; 把字节DATA分成8个位,循环给CMOV DQ C ; 写入一个位;MOV R3

25、 #23;DJNE R3 $; 等待SETB DQ ; 重新释放总线;NOPDJNZ R2,WR1 ;写入下一个位;SETB DQRET注:当主机把数据从逻辑高电平拉到逻辑低电平的时候,写时间隙开始。有两种写时间隙,写1时间隙和写0时间隙。所有写时间隙必须最少持续60 卩s,包括两个写周期至少1卩s的恢复时间。I/O线电平变低后,DS18B20在 一个15卩s到60卩s的窗口内对I/O线采样。如果线上事高电平,就是写1, 如果是低电平,就是写0。主机要生成一个写时间隙,必须把数据线拉到低 电平然后释放,在写时间隙开始后的15卩s内允许数据线拉到高电平。主机 要生成一个写0时间隙,必须把数据线拉

26、到低电平并保存 60卩s。每个读时隙都由主机发起,至少拉低总线 1us,在主机发起读时序之后, 单总线器件才开始在总线上发送0或1。所有读时序至少需要60us。写时序I (fl讣 如一上机U *: *(3) DS18B20勺读取子程序READ_1820:MOV R4,#2;读取两个字节的数字MOV R1, #29H ;低位存入29H,高位存入28HRE0:数据一共有8位MOV R2 #8RE1:CLR CSETB DQNOPNOPCLR DQ;NOPNOPNOP读前总线保持为低SETB DQ;MOV R3 #9;RE2:开始读总线释放DJNZ R3, RE2MOV C DQ;MOV R3 #2

27、3;RE3:DJNZ R3 RE3RRC A;DJNZ R2,RE1MOV R1 A;DEC R1; 延时18us从总线读到一个位;等待50us把读得的位值循环移给A;读取下一位DJNZ R4 RE0;RET注:当从DS18B20读数据时,主机生成读时间隙。当主机把数据从高电 平拉到低电平时,读时间隙开始,数据线必须保持至少1卩s;从DS18B2输出的数据在读时间隙的下降沿出现后15卩s内有效。因此,主机在读时间隙开始后必须把I/O脚驱动拉为的电平保持15卩s, 以读取I/O脚状态。在读时间隙的结尾,I/O引脚将被外部上拉电阻拉到高 电平。所有读时间隙必须最少60卩s,包括两个读周期至少1卩s的恢复时间。o* 対何匚八僵一t All土读时序 获得实际测量温度(温度传感器DS18B20G数据信息传给单片机,完成数 据信息的传输);数据转化子程序部分:TURN:ANL 28H #07HANL 29H #0F0HMOV A 28HORL 29H AMOV A 29HSWAP AMOV 29H ARET注:温度传感器DS18B20所测得的温度数据低位存入29H,高位存入28H,将 28H中的低4位移入29H中的高4位,获得一个新字节,这个字节就是实际测量 的温度。 将测量的温度数据在两位数码管上显示出来(单片机把数据信息传给LED

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论