单片机 温度检测成功.docx
- 文档编号:11446516
- 上传时间:2023-03-01
- 格式:DOCX
- 页数:16
- 大小:172.76KB
单片机 温度检测成功.docx
《单片机 温度检测成功.docx》由会员分享,可在线阅读,更多相关《单片机 温度检测成功.docx(16页珍藏版)》请在冰豆网上搜索。
单片机温度检测成功
摘要
温度是一个和人们生活环境有着密切关系的物理量,也是一种在生产、科研、生活中需要测量和控制的重要物理量。
本设计是心AT89C51为单片机作为控制核心,提出了一种基于DS18B20的温度传感系统,单片机通过实时监控温度的变化,通过LED数码管显示当前温度的数值,当温度值超出允许范围时,报警器开始报警,从而实现对整个温度系统的管理和控制。
这种温度测量系统具有成本低廉、传感精度高、系统稳定、易于管理等优点。
关键字:
AT89C51、温度传感系统、DS18B20、报警器
目录
摘要I
第一章方案选择1
第一节测温元件的选择1
第二节显示元件选择2
第二章系统原理图设计及特点3
第一节整体系统设计3
第二节系统工作原理3
第三节各单元电路说明4
第三章重要元件介绍6
第一节AT89C51单片机介绍6
第二节DS18B20介绍7
第四章元器件清单12
心得体会13
参考文献14
第一章方案选择
第一节测温元件的选择
温度的测量在当今社会得到了广泛的运用,同时测温元件也非常的多,根据不同的应用场合我们可以做出不同的选择,首先介绍一下几种测温方式:
1>.DS18B20数字温度计
DS18B20数字温度计是DALLAS公司生产的1-Wire,即单总线器件,具有线路简单,体积小的特点。
另外它的测量温度范围在-55。
C到+125。
C之间;它是数字温度计,分辨率用户可以从9位到12位选择。
因此用它来组成一个测温系统,具有线路简单,在一根通信线,可以挂很多这样的数字温度计,十分方便。
2>.热电偶测温
热电偶是利用热电效应原理制成温差电偶(thermocouple,即热电偶)来测量温度。
选用适当的金属作热电偶材料,就可轻易测量到从-180℃到+2000℃的温度。
现在,通过采用铂和铂合金制作的热电偶温度计,甚至可以测量高达+2800℃的温度。
热电偶的两种不同金属线焊接在一起后形成两个结点,因此在不同的温度里就形成了热结点结电压与冷结点(参考结点)结电压,而热结点结电压与冷结点(参考结点)结电压之差即为环路电压VOUT,因此VOUT是温差的函数。
比例因数α对应于电压差与温差之比,称为Seebeck系数。
根据Seebeck系数按照一定的计算方法就可求出当前所处环境的温度。
3>.热敏电阻测温
热敏电阻器是敏感元件的一类,按照温度系数不同分为正温度系数热敏电阻器(PTC)和负温度系数热敏电阻器(NTC)。
热敏电阻器的典型特点是对温度敏感,不同的温度下表现出不同的电阻值。
正温度系数热敏电阻器(PTC)在温度越高时电阻值越大,负温度系数热敏电阻器(NTC)在温度越高时电阻值越低,它们同属于半导体器件。
三种方案比较:
1>18B20结构简单,体积小,而且所测温度范围也符合要求,测量精度高;2>热电偶测温一般应用于工业控制,要求测量温度范围大,精度不是太高,算法比较复杂,并且不易控制;3>热敏电阻由于是根据对热度敏感的半导体材料构成,其阻值随温度变化的曲线呈非线性,因此想要精确的计算当前温度其计算算法是非常复杂的,并且在当前温度信息采集时也需要经过AD转换。
因此,综上所述,在温度采集芯片选择上选用18B20。
第二节显示元件选择
数码管作为常用的显示器件,利用人的视觉延迟的特点,采用扫描的方式驱动多位七段LED数码管,具有亮度高,显示质量高、操作简单节省驱动电路,降低功耗等特点。
保证一定的扫描循环频率,得到较好的显示质量。
因此这里选用LED数码管显示当前的温度值。
第二章系统原理图设计及特点
第一节整体系统设计
该实验板主要实现对当前温度的测量和温度监控功能,因此根据该功能要求可以确定该项目主要分为以下几个方面:
利用DS18B20对当前环境温度进行采集,单片机分析采集过来的数据然后进行相应的设置,显示器件(数码管)对当前温度的显示,报警状态指示采用让led闪烁的方法。
让用户知道现在温度已经高于警戒温度。
系统组成框图如下图(图2-1)所示:
图2-1系统组成框图
第二节系统工作原理
该电路主要采用AT89C51作为主处理芯片,单片机对DS18B20进行操作从DS18B20中读取温度数据,然后在根据原先设置进行数据处理,转化为相应的十进制温度值,然后再那当前温度与所设置的警戒温度相比较,如果大与警戒温度则启动定时器报警,即让LED闪烁起来,然后再显示当前的温度,显示才用动态扫描的方式进行显示。
其中系统设计工作流程图(图2-2)和原理图(图2-3)如下图所示:
图2-2整体工作流程图图2-3系统原理图
第三节各单元电路说明
1.外界温度采集系统设计
由于DS18B20采用的是1总线协议方式,即在一根数据线实现数据的双向传输,故DS18B20是在一根I/O线上读写数据,因此,对读写的数据位有着严格的时序要求。
DS18B20有严格的通信协议来保证各位数据传输的正确性和完整性。
该协议定义了几种信号的时序:
初始化时序、读时序、写时序。
所有时序都是将主机作为主设备,单总线器件作为从设备。
而每一次命令和数据的传输都是从主机主动启动写时序开始,如果要求单总线器件回送数据,在进行写命令后,主机需启动读时序完成数据接收。
数据和命令的传输都是低位在先。
DS18B20与单片机的接
口电路如下(图2-4)所示:
图2-4DS18B20与单片机的接口电路
2.报警电路组成
报警系统也是电路组成的重要部分,这里采用led闪烁的方式进行报警。
当18B20测得的温度高于警戒温度时就会开启定时器T0,利用定时器的定时时间让led闪烁起来,让使用者知道现在温度已经超过警戒温度值。
接口电路如下图(图2-5)所示:
图2-5报警系统组成框图
3.显示部分系统设计
显示部分采用两个数码管显示温度,利用74LS595作为移位寄存器,同时单片机利用串口把要显示的数据发送过来,然后经595移位后,经P2.7进行锁存显示显示在数码管上。
并且在规定的时间内进行数据的更新显示,以保证显示温度的实时性。
接口电路如下图(图2-6)所示:
图2-6显示电路原理图
第三章重要元件介绍
第一节AT89C51单片机介绍
1.AT89C51的功能描述
AT89C51是一种低损耗、高性能、CMOS八位微处理器,片内有4k字节的在线可重复编程、快速擦除快速写入程序的存储器,能重复写入/擦除1000次,数据保存时间为十年。
它与MCS-51系列单片机在指令系统和引脚上完全兼容,不仅可完全代替MCS-51系列单片机,而且能使系统具有许多MCS-51系列产品没有的功能。
2.AT89C51引脚功能
AT89C51四个I/O口全部提供给用户。
P0口是三态双向口,通称数据总线口,因为只有该口能直接用于对外部存储器的读/写操作。
P1口作为通用I/O口,P3口具有第二功能如下表(表3-1)所示:
第二节DS18B20介绍
1.DS18B20数字温度传感器概述
DS18B20数字温度计是DALLAS公司生产的1-Wire,即单总线器件,具有线路简单,体积小的特点。
因此用它来组成一个测温系统,具有线路简单,在一根通信线,可以挂很多这样的数字温度计,十分方便。
DS18B20产品的特点
1>只要求一个端口即可实现通信。
2>在DS18B20中的每个器件上都有独一无二的序列号。
3>实际应用中不需要外部任何元器件即可实现测温。
4>测量温度范围在-55.C到+125.C之间。
5>数字温度计的分辨率用户可以从9位到12位选择。
图3-2DS18B20封装
6>内部有温度上、下限告警设置。
TO-92封装的DS18B20的引脚排列见图3-2,其引脚功能描述见表3-2。
序号
名称
引脚功能描述
1
GND
地信号
2
DQ
数字输入输出引脚,开漏单总线接口引脚,当使用寄生电源时,可向电源提供电源
3
VDD
可选择的VDD引脚,当工作于寄生电源时,该引脚必须接地
表3-2 DS18B20详细引脚功能描述
2.DS18B20的结构
DS18B20的内部拥有64位ROM存储器件独一无二的序列号。
暂存器包含两字节(0和1字节)的温度寄存器,用于存储温度传感器的数字输出。
暂存器还提供一字节的上线警报触发(TH)和下线警报触发(TL)寄存器(2和3字节),和一字节的配置寄存器(4字节),使用者可以通过配置寄存器来设置温度转换的精度。
暂存器的5、6和7字节器件内部保留使用。
第八字节含有循环冗余码(CRC)。
DS18B20加电后,处在空闲状态。
要启动温度测量和模拟到数字的转换,处理器须向其发出ConvertT[44h]命令;转换完后,DS18B20回到空闲状态。
温度数据是以带符号位的16-bit补码存储在温度寄存器中的,如图3-3所示:
图3-3温度寄存器格式
符号位说明温度是正值还是负值,正值时S=0,负值时S=1。
表4-2给出了一些数字输出数据与对应的温度值的例子。
温度
输出(2进制)
输出(16进制)
+125℃
0000011111010000
07D0H
+85℃
0000010101010000
0550H
+20.0625℃
0000000110010001
0191H
+10.125℃
0000000010100010
00A2H
+0.5℃
0000000000001000
0008H
0℃
0000000000000000
0000H
-0.5℃
1111111111111000
FFF8H
-10.125℃
1111111101011110
FF5EH
25.0625℃
1110111001101111
EE6FH
-55℃
1111111010010000
FE90H
表3-3温度/数据的关系
ROM命令通过每个器件64-bit的ROM码,使主机指定某一特定器件(如果有多个器件挂在总线上)与之进行通信。
DS18B20的ROM如表3-4所示,每个ROM命令都是8bit长。
指令
协议
功能
读ROM
33H
读DS18B20中的编码(即64位地址)
符合ROM
55H
发出此命令后,接着发出64位ROM编码,访问单总线上与该编码相对应的DS18B20,使之作出响应,为下一步对该DS18B20的读写作准备
搜索ROM
0F0H
用于确定挂接在同一总线上DS18B20的个数和识别64位ROM地址,为操作各器件作好准备
跳过ROM
0CCH
忽略64位ROM地址,直接向DS18B20V温度转换命令,适用于单个DS18B20工作
告警搜索命令
0ECH
执行后,只有温度超过庙宇值上限或下限的片子才做出响应
温度转换
44H
启动DS18B20进行温度转换,转换时间最长为500ms(典型为200ms),结果丰入内部9字节RAM中
读暂存器
BEH
读内部RAM中9字节的内容
写暂存器
4EH
发出向内部RAM的第3、4字节写上、下温度数据命令,紧该温度命令之后,传达两字节的数据
复制暂存器
48H
将RAM中第3、4字内容复制到E2PROM中
重调E2PROM
0B8H
将E2PROM中内容恢复到RAM中的第3、4字节
表3-4ROM指令表
3.DS18B20的命令序列
●初始化
●ROM命令跟随着需要交换的数据;
●功能命令跟随着需要交换的数据。
DS18B20采用严格的单总线通信协议,以保证数据的完整性。
该协议定义了几种信号类型:
复位脉冲、应答脉冲、写0、写1、读0和读1。
除了应答脉冲所有这些信号都由主机发出同步信号。
总线上传输的所有数据和命令都是以字节的低位在前。
a.初始化序列:
复位脉冲和应答脉冲
在初始化过程中,主机通过拉低单总线至少480µs,以产生复位脉冲(TX)。
然后主机释放总线并进入接收(RX)模式。
当总线被释放后,5kΩ的上拉电阻将单总线拉高。
DS18B20检测到这个上升沿后,延时15µs~60µs,通过拉低总线60µs~240µs产生应答脉冲。
初始化波形如图4-4所示。
图3-4初始化脉冲
b.读和写时序
在写时序期间,主机向DS18B20写入数据;而在读时序期间,主机读入来自DS18B20的数据。
在每一个时序,总线只能传输一位数据。
读/写时序如图3-5所示。
图3-5DS18B20读/写时序图
●写时序
存在两种写时序:
“写1”和“写0”。
主机在写1时序向DS18B20写入逻辑1,而在写0时序向DS18B20写入逻辑0。
所有写时序至少需要60µs,且在两次写时序之间至少需要1µs的恢复时间。
两种写时序均以主机拉低总线开始。
产生写1时序:
主机拉低总线后,必须在15µs内释放总线,然后由上拉电阻将总线拉至高电平。
产生写0时序:
主机拉低总线后,必须在整个时序期间保持低电平(至少60µs)。
在写时序开始后的15µs~60µs期间,DS18B20采样总线的状态。
如果总线为高电平,则逻辑1被写入DS18B20;如果总线为低电平,则逻辑0被写入DS18B20。
●读时序
DS18B20只能在主机发出读时序时才能向主机传送数据。
所以主机在发出读数据命令后,必须马上产生读时序,以便DS18B20能够传送数据。
所有读时序至少60µs,且在两次独立的读时序之间至少需要1µs的恢复时间。
每次读时序由主机发起,拉低总线至少1µs。
在主机发起读时序之后,DS18B20开始在总线上传送1或0。
若DS18B20发送1,则保持总线为高电平;若发送0,则拉低总线。
当传送0时,DS18B20在该时序结束时释放总线,再由上拉电阻将总线拉回空闲高电平状态。
DS18B20发出的数据在读时序下降沿起始后的15µs内有效,因此主机必须在读时序开始后的15µs内释放总线,并且采样总线状态。
DS18B20在使用时,一般都采用单片机来实现数据采集。
只需将DS18B20信号线与单片机1位I/O线相连,且单片机的1位I/O线可挂接多个DS18B20,就可实现单点或多点温度检测。
第四章元器件清单
本课题所用元器件清单列表如下表所示(表4-1):
元件型号
个数
元件型号
个数
AT89C51
1
LED
1
DS18B20
1
电容
33pF
2
晶振(12M)
1
22uF
1
七段数码管
2
电阻
10K
1
74LS595
2
1K
17
表4-1元器件清单
心得体会
经过这些天的课程设计,使我明白课程设计不仅是对前面所学知识的一种检验和综合,而且也是对自己能力的一种提高。
通过这次课程设计使我明白了自己要学习的东西还很多,以前老是觉得自己什么东西都会,什么东西都容易懂,有点眼高手低。
通过这次课程设计,我才明白学习是一个长期积累的过程,在以后的工作、生活中都应该不断的学习,努力提高自己知识和综合素质。
在设计过程中,我通过查阅大量有关资料,与同学交流经验和自学,并向老师请教等方式,使自己学到了不少知识,也经历了不少艰辛,但收获同样巨大。
在整个设计中我懂得了许多东西,也培养了我独立工作的能力,树立了对自己工作能力的信心,相信会对今后的学习工作生活有非常重要的影响。
而且大大提高了动手的能力,使我充分体会到了在创造过程中探索的艰难和成功时的喜悦。
虽然这个设计做的也不太好,但是在设计过程中所学到的东西是这次课程设计的最大收获和财富,使我终身受益。
同时,通过对多种方案的分析讨论让我们明白在对于不同的环境和要求相应的要作出最合适的选择的合理性和重要性。
通过课程设计的培训,使我感觉到设计是对学习知识的运用和个人自己的能力的全面体现,体现了一个人学以致用的能力。
只有在真正的运用中才能更好的掌握知识,这样的学习才会有效率,才能长久的记忆。
最后感谢老师和同学们在这一周时间内给我的支持和帮助。
参考文献
1.姚福安,电子电路设计与实践,山东科学技术出版社,2001年10月
2.涂时亮,单片机软件设计技术,重庆科技文献出版社,1987
3.张毅刚,新编MCS51实用汇编程序设计,哈尔滨工业大学出版社,2003
4.康华光,电子技术基础,高教出版社,2003
5.胡汉才,单片机原理及接口技术,清华大学出版社,1996
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 温度检测成功 温度 检测 成功