温度报警系统设计与仿真_第1页
温度报警系统设计与仿真_第2页
温度报警系统设计与仿真_第3页
温度报警系统设计与仿真_第4页
温度报警系统设计与仿真_第5页
已阅读5页,还剩67页未读 继续免费阅读

付费下载

下载本文档

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

文档简介

温度报警系统设计与仿真摘要及关键词温度是七大基本物理量之一。不仅仅是理论领域,在日常生活中温度同样扮演着重要的角色。比如冬季北方的供暖系统中,需要对锅炉中温度进行实时监控;智能家居中的火灾报警系统等等都离不开对温度的监测和报警。本系统以 AT89C52 单片机为主控芯片搭建最小系统,可以实现测温、按键调时和按键设置温度上下限进行温度监测报警功能。硬件上,最小系统包括复位电路和时钟振荡电路;测温模块采用单总线数字温度传感器 DS18B20 实现环境温度测量;系统时间模块采用时钟芯片 DS1302 进行调时处理;人机交互界面采用 LCD12864 液晶显示和 3 个按键实现三级菜单人机交互。软件部分则是利用广泛使用的 C 语言编程,编程实现-55100的环境测温范围和 0100 上下限温度报警范围。当温度超过(低于)温度上限(下限)时,蜂鸣器报警,同时对应的 LED 指示灯会按相应频率闪烁,起到温度报警作用。关键词:单片机,数字温度传感器(DS18B20) ,单总线,人机交互,液晶显示温度报警系统设计与仿真Abstract And KeywordsTemperature is one of the seven basic physical quantities. It also plays an important role in our life, not only in the theoretical field. For example, the heating system in winter will be have an auto-alarm system base on the temperature in the north and the Fire alarm system intelligent household also need it. This system is made up with the AT89C52 of MCU (Micro-programmed Control Unit) as the main control chip, can realize the temperature measurement, set and be alarming when upper or lower limit temperature. The hardware composed by the minimum system, the temperature measurement module circuit, the clock circuit, the display module circuit with LCD12864 (Liquid Crystal Display) and the human-computer interaction with three menus. The temperature measurement module is a circuit what consisted with the single bus digital temperature sensor DS18B20 in order to measure temperature and alarm. As the module of temperature measurement, the system clock module use the time clock chip DS1302 to access time. The part of software is programmed by C language which be used widely. It can measure the environment temperature in the range of 55 below zero to 125 over zero and be alarming when upper or lower the limit temperature which local in the 0100. In particular, when the environment temperature above (lower) the limit temperature, the buzzer and the corresponding LED (light-emitting diode) will take action that buzzing and flashing light according to the corresponding frequency. Finally, the system realizes the purpose of the alarm.Keywords: MCU,the digital temperature sensor DS18B20,single bus the Liquid Crystal Display, the human-computer interaction温度报警系统设计与仿真目录摘要及关键词Abstract And Keywords 第一章 绪论 .11.1 设计背景及研究意义 .11.2 国内外温度报警器研究现状 .11.3 课题的设计目的 .21.4 本文工作内容 .2第二章 总体方案设计 .42.1 系统总体方案概述 .42.2 总体方案比较与选择 .42.2.1 方案一 .42.2.2 方案二 .52.2.3 方案比较与选择 .62.3 最终方案组成 .72.4 系统工作过程 .7第三章 系统硬件设计 .93.1 单片机最小系统 .93.1.1 AT89C52 简介 .93.1.2 基于 AT89C52 的最小系统搭建 .113.2 温度检测模块 .133.2.1 DS18B20 数字温度传感器简介 .133.2.2 DS18B20 测温原理 .143.2.3 DS18B20 使用注意事项 .153.2.4 DS18B20 硬件接口电路电路 .163.3 时间检测与设置模块 .183.3.1 DS1302 简介 .183.3.2 DS1302 硬件接口电路 .193.4 液晶显示模块 .203.4.1 LCD12864 简介 .203.4.2 LCD12864 工作原理 .213.4.3 LCD12864 硬件接口电路 .233.5 按键调温、调时模块 .243.5 温度报警模块 .243.6 本章小结 .25第四章 系统软件设计 .264.1 软件设计总流程 .264.1.1 系统软件功能介绍 .264.1.2 系统程序设计总流程框图 .274.2 主程序设计 .27温度报警系统设计与仿真4.3 子程序设计 .30温度报警系统设计与仿真4.3.1 测温程序设计 .304.3.2 显示模块程序设计 .364.3.3 按键调温程序设计 .404.3.4 按键调时程序设计 .444.3.5 温度比较报警程序设计 .454.4 本章小结 .48第五章 系统测试 .495.1 基于 Protuse7.5 仿真系统搭建 .495.1.1 Protuse7.5 简介 .495.1.2 基于 Protuse7.5 的温度报警系统搭建 .495.2 系统仿真测试 .495.2.1 欢迎界面仿真 .495.2.2 主界面仿真 .505.2.3 菜单选择界面仿真 .505.2.4 温度设置仿真 .515.2.5 时间设置模块仿真 .535.2.6 温度报警模块仿真 .565.3 本章总结 .58第六章 总结 .59心得体会 .60参考文献 .61致谢 .63温度报警系统设计与仿真1第一章 绪论1.1 设计背景及研究意义信息科学和微电子技术的飞速发展给控制领域带来了巨大的飞跃,尤其是在物联网刚刚起步的今天,控制技术更加趋向自动化和智能化,为无数的使用者带来了方便。在控制领域里,温度是一个常见的名词,然而它所带来的技术问题和所起的作用却是非同一般的。在控制领域中,对温度的检测和报警有着举足轻重的作用 1。例如列车的轴承温度检测及报警系统,可以及时的检测到温度的升降,当温度过高或是过低时候及时报警,最大程度的排除因轴承温度过高或是过低而引起的事故隐患,保证列车在行驶过程中的安全;还有如锅炉使用中的温度检测报警可以有效避免因温度过高或是过低所引起的安全隐患,保证锅炉的使用安全。可见,在生活的许许多多的方面都有着对温度进行感知和报警的需要。特别是在环境恶劣或温度较高等场合下,为了保证生产过程正常安全地进行,提高产品的质量和数量,以及减轻工人的劳动强度、节约能源,要求对加热炉内温度进行测量、显示、报警及控制,使之达到工艺标准,以单片机为核心设计的温度测量系统,可以对温度进行实时测量,并将温度数据进行显示和报警以及进行相应控制 23。1.2 国内外温度报警器研究现状温度检测系统在国内各行各业的应用虽然已经十分广泛,但从国内生产的温度控制器来讲,总的发展水平仍然不高,和日本、德国、美国等先进国家相比有着较大的差距,而且传统的温度测量报警系统的中心设备是温度传感器,温度传感器的发展大致经过了 3 个阶段:第一个阶段,传统的分立式温度传感器(含敏感元件) ,主要是能够进行非电量和电量之间的转换;第二个阶段,模拟集成温度传感器/控制器。第三个阶段,智能温度传感器。目前,国际上新型温度传感器正从模拟式向数字式、集成化向智能化及网络化的方向发展 。4数字式温度传感器(亦称智能温度传感器)是在 20 世纪 90 年代中期问世 5。它是微电子技术、计算机技术和自动测试技术(ATE)的结晶。目前,国际上已开发出多种智能温度传感器系列产品。智能温度创拿起内部包含温度传感器、A/D 传感器型号处理温度报警系统设计与仿真2器、信号处理器、存储器(或寄存器)和接口电路。有的产品还带多路选择器、中央控制器(CPU) 、随机存取储存器(RAM)和只读存储器(ROM) 。数字式温度传感器能传输出温度数据及相关的温度控制量,适配各种微控制器(MCU) ,并且可通过软件来实现测试功能,即智能化取决于软件的开发水平。进入 21 世纪后,温度传感器正朝着高精度、多功能、总线标准化、高可靠性及安全性、开发虚拟传感器和网络传感器、研制单片测温系统等高科技的方向迅速发展。采用 51 单片机来对温度进行检测和控制,不仅具有成本低廉、控制方便和灵活性大等优点,而且可以提高被控温度的技术指标, 从而提高产品的质量和数量 6。1.3 课题的设计目的1. 巩固、加深和扩大单片机应用的知识面,提高综合及灵活运用所学知识解决工业控制的能力。2. 培养针对课题需要,选择和查阅有关手册、图表及文献资料的自学能力,提高组成系统、编程、调试的动手能力。3. 通过对课题设计方案的分析、选择、比较、熟悉单片机用系统开发、研制的过程,软硬件设计的方法、内容及步骤。1.4 本文工作内容本课题主要工作重点在于设计一种基于单片机的温度测量及报警系统。本设计主要工作如下:(1) 利用温度传感器,测温并通过 MCU 进行温度的转换和读取 78;(2) 液晶显示必要信息,实现较好的人机互动 9;(3) 利用时钟芯片检测系统时间 10;(4) 按键扫描设置时间和温度上下限;(5) 液晶显示系统时间、温度上下限和转换后的环境温度值 11;(6) 进行温度比较实现超限报警提示。温度报警系统设计与仿真3第二章 总体方案设计2.1 系统总体方案概述基于单片机的温度报警系统主要以 MCU 为主控芯片,利用温度传感器检测温度,并将检测到的温度值进行转换后送液晶显示,并将温度值与输入的温度上下限比较,如果当前温度超过或者低于预设值的时候,则报警电路报警。整个系统大致由以上几个基本部分组成。但是基于单片机的温度报警系统的设计方案要满足以下一些要求:(1)能及时从温度传感器获取精度较高的温度数值,并将数值传送至 MCU 进行数额显示处理;(2)将进行数字显示处理过的温度数据在液晶显示屏上即时显示。对温度报警系统而言,显示现在温度是最基本的功能;(3)能从键盘上输入需要设定的上下限温度;(4)程序自动对输入的上下限温度进行判断,当输入的下限温度高于上限温度时,给出错误提示;(5)将从温度传感器上获得的温度处于用户设定的上下限温度范围内时,不触发报警器报警;当从温度传感器上获得的温度高于用户设定或者低于下限温度设定时,触发报警器;(6)在温度报警系统工作过程中,随时可以对需要设定的上下限温度进行修改。(7)当报警器被触发报警后,可进行用户手动停止报警。如果不手动停止报警,当温度回落至用户设定的上下限温度范围内时,能自动停止报警。2.2 总体方案比较与选择2.2.1 方案一采用热电偶温差电路测温,温度检测部分可以使用低温热偶,热电偶由两个焊接在一起的异金属导线所组成,热电偶产生的热电势由两种金属的接触电势和单一导体的温差电势组成。通过将参考结点保持在已知温度并测量该电压,便可推断出检测结温度报警系统设计与仿真4点的温度。数据采集部分则使用带有 A/D 通道的单片机,在将随被测温度变化的电压或电流采集过来,进行 A/D 转换后,就可以用单片机进行数据的处理,处理后的温度数据送由 1602 液晶显示。系统主要包括对 A/D0809 的数据采集,自动手动工作方式检测,温度的显示等,这几项功能的信号通过输入输出电路经单片机处理。此外还有复位电路,晶振电路,启动电路等。故现场输入硬件有手动复位键、A/D 转换芯片,处理芯片为 51 芯片,执行机构 LED 指示灯、报警器等。 热电偶温差电路系统框图如图 2-1:2.2.2 方案二采用数字温度芯片 DS18B20 测量温度,输出信号全数字化。所以系统可以直接利用 MCU 控制温度传感器 DS18B20 进行实时温度检测并显示,能够实现快速测量环境温度并可以根据需要设定上下限报警温度进行报警和相应的控制处理。MCU 接收到DS18B20 后将测得的温度值与预设的温度上下限值进行比较,并返回结果值。此时MCU 将结果值返回给报警模块,报警模块根据结果值实现相应动作。除了一般的数字温度传感器的测温模块和温度比较报警模块外,在原系统上继续扩展系统时间检测及设置模块,即利用 DS1302 时钟芯片,采集系统时间送至 MCU,与此同时,MCU 将当前温度、上下限温度值等必要信息送给 LCD12864 显示,同时系统还通过键盘输入进行菜单选择、调时和温度上下限值设置等操作,在人机交互上做到尽量人性化,简单化。采用数字温度芯片的测温报警系统框图如图 2-2:MCU热电偶温差测温电路键盘输入LCD1602 液晶显示电路A/D0809复位电路晶振电路蜂鸣器LED 指示灯报警电路图 2-1 采用热电偶温差电路的温度报警系统框图温度报警系统设计与仿真52.2.3 方案比较与选择1. 测温模块比较:方案一采用热电偶温差电路测温。热电偶的优点是工作温度范围非常宽,且体积小,但是它们也存在着输出电压小、容易遭受来自导线环路的噪声影响以及漂移较高的缺点,并且这种设计需要用到 A/D 转换电路,测温电路比较麻烦。方案二采用数字温度传感器 DS18B20。DS18B20 测得的完全是数字量,便于单片机控制及处理,省去传统测温方法的很多外围电路。且该芯片的性能比较稳定,线形较好,在 0100C 时,最大线性偏差小于 1C, DS18B20 采用了单总线的数据传输,由 DS18B20 和微控制器构成的温度测量装置,它直接输出温度的数字信号,可直接与单片机连接。这样,测温系统的结构就比较简单,体积也不大。2. 显示模块比较:方案一采用 1602 液晶显示。1602 的优点是操作简单,驱动容易,体积较小,但是只能显示英文和数字字符,不能显示中文字符,使得整个系统在人机交互方面显得不够人性化,不够简洁。方案二采用 12864 液晶显示。优点在于可以显示汉字字符,可以实现滚屏、闪屏等特效操作,使得操作的人性化操作大大提升,而且可以显示更多的必要信息。但是软件操作较为复杂,如果选用不带字库的 12864,由于字库的存在使得代码量明显增多,容易产生程序溢出等故障。3. 系统功能扩展能力比较:MCUDS18B20键盘输入LCD12864 液晶显示电路蜂鸣器LED 指示灯DS1302复位电路晶振电路报警电路图 2-2 采用数字温度芯片的温度报警系统框图温度报警系统设计与仿真6两方案都采用 51 单片机控制,软件编程的自由度很大,可通过 C 语言编程实现各种各样的算术算法和逻辑控制,而且硬件实现简单,安装方便。另外 51 单片机在工业控制上也有着广泛的应用,编程技术及外围功能电路的配合使用都很成熟,不过:方案一由于采用了热电偶温差测温电路,相应的需要 A/D 转换电路,使得整个系统的复杂性增加,操作难度加大,虽然 1602 液晶的操作比较简单,但是如果还想在原系统的基础上扩展其他相关功能几乎很难,而且也显得没有必要性。方案二系统扩展性很强,它可以在设计中加入时钟芯片 DS1302 以获取时间数据,在数据处理同时显示时间,利用键盘来进行调时和温度上下限设置,获得的数据可以通过 MAX232 芯片与计算机的 RS232 接口进行串口通信,方便的采集和整理时间温度数据,同时可以利用 PC 端 VC 扩展插件编译上位机对数据进行串口测温和 PC 端远程控制。综上所述,容易看出方案二的测温装置电路更简单、实现更方便、操作上更加人性化、程序设计也更容易实现,故本次设计采用了方案二。2.3 最终方案组成本课题以是 80C51 单片机为核心设计的一种数字温度控制系统,根据系统性能要求可以预知,由于本系统采用 Protuse 进行系统仿真,而仿真库文件中的 LCD12864 没有字库,使得程序中需增加字库代码,系统程序较大,所以这里的单片机主芯片采用AT89C52,它与 AT89C51 功能一致,唯一不同的是内部空间较大,可达到 8K 左右。系统其他整体硬件电路包括,时钟芯片接口电路,传感器数据采集电路,温度显示电路,上下限报警调整电路,单片机主板电路等组成。系统框图主要由主控制电路、单片机复位电路、报警模块、晶振电路、按键输入调时调温模块、基于时钟芯片 DS1302 的时间获取模块、LCD12864 液晶显示模块、数字温度传感器 DS18B20 测温模块等部分组成,其系统框图如图 2-2。2.4 系统工作过程系统采用数字温度传感器 DS18B20 测温,由于传感器测得的温度为全数字,所以所系统可以直接利用 AT89C52 控制温度传感器 DS18B20 进行实时温度检测并显示,温度报警系统设计与仿真7能够实现快速测量环境温度并可以根据需要设定上下限报警温度进行报警和相应的控制处理。处理的过程包括,AT89C52 将输入的温度数值处理后实时显示在液晶上,与此同时,AT89C55 将接收到 DS18B20 后将测得的温度值与预设的温度上下限值进行比较,并返回结果值。此时 AT89C52 将结果值返回给报警模块,报警模块根据结果值实现相应动作。除了一般的数字温度传感器的测温模块和温度比较报警模块外,在原系统上继续扩展系统时间检测及设置模块,即利用 DS1302 时钟芯片,采集系统时间送至AT89C52,与此同时,AT89C52 将当前温度、上下限温度值等必要信息送给LCD12864 显示。 本系统可对温度值进行实时检测,芯片测温范围在55125之间,在-10+85时精度为0.5,根据实际温度变化情况,将测温范围设定为-20100。整个系统测量精度高、稳定性好,性能上能够达到测量温度的要求,而且同时系统还可以通过键盘输入进行菜单选择、调时和温度上下限值设置等操作,整个系统具有操作简单,人机互动性强,人性化程度高、扩展性能强等优点。温度报警系统设计与仿真8第三章 系统硬件设计3.1 单片机最小系统本系统是以 89X51 内核单片机为核心主控芯片,但考虑到程序代码占用的空间可能较大,系统采用芯片内部空间较大的 AT89C52 单片机,其功能与 89C51 一致,仅仅是内部存储空间较大,所以本文的主控芯片的简介以 89C51 为例做以下芯片简介。基于 AT89C52 的单片机最小系统一般由主控芯片、时钟振荡电路(晶振电路) 、复位电路,本系统是基于 AT89C52 主控芯片的温度报警系统,所以建立一个稳定、可靠和具有一定抗干扰能力的最小系统很重要。3.1.1 AT89C52 简介1. AT89C51 的主要特点20 世纪 80 年代中期 Intel 把 8051 内核以专利转让形式卖出去后,就有很多厂家生产 51 系列单片机。在众多的 51 系列单片机中,要数 ATMEL 公司的 AT89C51 更实用,因为它们不但和 8051 指令、引脚完全兼容,而且其片内的 4KB 程序存储器是 Flash 工艺的,这种工艺的存储器用户可以用电的方式瞬间擦出、改写,一般专为ATMWL、AT89xx 做的编程器均带有这些功能。MCS-51 系列单片机虽已有 10 多种产品,但可分为两大系列:MCS-51 子系列与 MCS-52 子系列。本次设计选取 AT89C52单片机作为主控芯片它由运算部件和控制部件两大部分组成。和 89C51 一样,89C52也是基于 51 内核的单片机,都兼容 51 指令、并在 51 的基础上扩展一些功能而内部结构是与 51 一致的,和 89C51 一样,AT89C52 主要特点如下:(1) 与 MCS-51 产品指令系统完全兼容;(2) 4KB 可编程 Flash 存储器;(3) 寿命:可实现 1000 写/擦循环;(4) 数据保存时间:10 年;(5) 全静态工作:024MHz ;(6) 三级程序存储器锁定;温度报警系统设计与仿真9(7) 256B 片内 RAM(128B 用户 RAM,128B SFR) ;(8) 32 个可编程 I/O 口;(9) 两个 16 位定时/计时器;(10) 5 个中断源(也有 6 个的看法,串口收/发中断看成两个) ;(11) 全双工可编程串行通道;(12) 低功耗的空闲模式和掉电模式;(13) 片内振荡器和时钟电路。2. AT89C52 引脚定义说明MCS51 系列单片机芯片均为 40 个引脚, HMOS 工艺制造的芯片采用双列直插(DIP)方式封装, 其引脚示意及功能分类如图 3-1 所示。 图 3-1 AT89C52 引脚图其中:VCC:电源引脚;GND:接地;RST:复位输入;ALE/PROG:当单片机在扩展外部 RAM 时,ALE 用于控制吧 P0 口的输出低 8 位温度报警系统设计与仿真10地址锁存器锁存起来,以实现低位地址和数据的隔离;PSEN:外部程序存储器的读选通信号;XTAL1:片内振荡器反相放大器和时钟发生器电路的输入端。XTAL2:片内振荡器反相放大器的输出端。RST:复位信号输入端,高电平有效。单片机运行时,在此引脚加上持续时间大于 2 个机器周期的高电平时,就可以对单片机完成复位操作。/VPP:当 引脚为高电平时,89C52 单片机读片内程序存储器,但在 PC 值EA超过 8KB 时将自动转向外部程序存储器中的程序。 为低电平时,对程序存储器的EA读操作只先顶着外部程序存储器。P0 口:P0 口为一组 8 为漏极开路双向 I/O 口,每个引脚可以吸收 8 个 TTL 门电流,为高阻抗输入端使用;P1 口:P1 口为一组内部提供上拉电阻的 8 位双向 I/O 口,P1 口缓冲器可接受、输出 4 个 TTL 门电流;P2 口:P2 口为一组内部提供上拉电阻的 8 位双向 I/O 口,P2 口缓冲器可接受、输出 4 个 TTL 门电流;P3 口:P3 口为一组内部提供上拉电阻的 8 位双向 I/O 口,P3 口缓冲器可接受、输出 4 个 TTL 门电流。 P3 口可作为 AT89C52 的一些特殊功能,P3 口个引脚特殊功能表如表 3-1。表 3-1 P3 口的特殊功能端口引脚号 第二功能P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 /INTO(外中断 0)P3.3 /INT1(外中断 1)P3.4 T0(定时/计数器 0)P3.5 T1(定时/计数器 1)P3.6 /WR(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)3.1.2 基于 AT89C52 的最小系统搭建本系统是基于 AT89C52 单片机的最小系统,一般由主控芯片、时钟振荡电路(晶温度报警系统设计与仿真11振电路) 、复位电路等外围电路组成。(1) 时钟振荡电路时钟电路为单片机产生时序脉冲,单片机所有运算与控制过程都是在统一的时序脉冲的驱动下进行的,时钟电路就像人类的心脏,如果心脏停止,人也就死亡了;同理,如果单片机的时钟电路停止工作了,那么单片机也就停止了工作。51 单片机的时钟有两种方式,一种是片内时钟振荡方式,但需要在 XTAL1 和XTAL2 引脚外接石英晶体和振荡电容。另外一种是外部时钟方式,即将外引脉冲信号从 XTAL1 引脚输入,而 XTAL2 引脚悬空。本系统采用第一种方式,其电路图如图 3-2:图 3-2 时钟振荡电路外接晶体引脚 XTAL1 和 XTAL2 当 8051 上电正常工作后,ALE 引脚不断向外输出脉冲信号,此频率为振荡器频率的 1/6,当 CPU 访问外部存储器时(振荡频率的1/12) ,ALE 输出信号作为锁存低 8 位地址的控制信号,不访问片外存储器时,ALE 端以振荡频率的 1/6 固定输出脉冲,因此 ALE 信号可用作对外输出时钟或定时信号。所以利用 ALE 引脚可以很方便的判断单片机是否正常工作。当单片机上电复位后,用示波器测 ALE 引脚,若有脉冲输出,则说明单片机最小系统外围电路连接正确,单片机正常工作。(2) 复位电路温度报警系统设计与仿真12图 3-3 复位电路当振荡器运行时,在 RST 引脚上出现两个周期以上的高电平将使单片机复位。一般在此引脚上与 VSS 引脚之间连一个下拉电阻,与 VCC 引脚直接接一个电容。单片机复位后,从程序的 0000H 单元开始执行程序,并初始化一些专用寄存器为复位状态值。其复位电路如图 3-3。综上搭建出本系统的基于 AT89C52 的最小系统如图 3-4:图 3-4 最小系统3.2 温度检测模块3.2.1 DS18B20 数字温度传感器简介DS18B20 引脚图如图 3-4:温度报警系统设计与仿真13图 3-4 DS18B20 引脚图DS18B20 数字温度传感器是美国 DALLAS 公司推出的一线式数字温度传感器。它将地址线、数据线、控制线合为一线双向串行传输数据的信号线,并允许在这根信号上挂多个 DS18B20,可组成网络多点测温检测系统。由于 DS18B20 组成的温度测控系统非常方便,克服了模拟式传感器与微机接口时需要的 A/D 转换器及其它复杂外围电路的缺点,占用微处理器的端口较少,可节省大量的引线和逻辑电路。从而使测温装置与各传感器的接口变得十分简单,而且成本低,体积小,可靠性高。因此这次设计选用 DS18B20 作为温度传感器。DS18B20 具有如下特性:(1)适应电压宽,电压范围在 3.05.5V,在寄生电源下可由数据线供电。(2)具有独特的单总线接口方式,只需要一条口线即可实现微处理器与 DS18B20的双向通讯。(3)支持多点组网功能,多个 DS18B20 可以并联在唯一的三线上,实现组网多点测温。(4)在使用中不需要任何外围元件,全部元件及转换电路集成在形如一只三极管的集成电路中。(5)测温范围:-55+125,在-10+85时精度为0.5。(6)可编程分辨率为 912 位,对应的可分辨温度为 0.5,0.25,0.125和0.0625,可实现高精度测温。(7)在 9 位分辨率时,最多在 93.75ms 内将温度转换为数字;12 位分辨率时,最多在 750ms 内将温度转换为数字,显然速度更快。(8)测量结果直接输出数字温度信号,以“一线总线”串行传输给 CPU,同时可传送 CRC 检验码,具有极强的抗干扰纠错能力。(9)具有负压特征即当电源电极接反时,芯片不会因发热而烧毁,但不能正常工作。3.2.2 DS18B20 测温原理DS18B20 内部的结构如图 3-5 所示,主要包括以下部分:电源,温度传感器,64位的 ROM 单总线接口,用于存放中间数据的高速暂存器 RAM,用于存储用户设定温度上下限的 TH 和 TL 触发器,控制逻辑,8 为循环冗余校验码(CRC)发生器等 7 部分。温度报警系统设计与仿真14V D D温度传感器高温触发器 T H低温触 发器 T L配置触发器8 位 C R C 发生器6 4位R A M和单总线接口高速缓存存储器和控制逻辑图 3-5 DS18B20 内部结构DS18B20 的读写时序和测温原理与 DS1820 相同,只是得到的温度值的位数因分辨率不同而不同,且温度转换时的延时时间由 2s 减为 750ms。 DS18B20 测温原理:低温度系数晶振的振荡频率受温度影响很小,用于产生固定频率的脉冲信号送给计数器 1。高温度系数晶振随温度变化其振荡率明显改变,所产生的信号作为计数器 2 的脉冲输入。计数器 1 和温度寄存器被预置在55所对应的一个基数值。计数器 1 对 低温度系数晶振产生的脉冲信号进行减法计数,当计数器 1 的预置值减到 0 时,温度寄存器的值将加 1,计数器 1 的预置将重新被装入,计数器 1 重 新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到计数器 2 计数到 0 时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。3.2.3 DS18B20 使用注意事项DS18B20 虽具有连接方便、测温系统简单、占用口线少、测温的精度高等优点,然而在实际的应用中也应该注意以下几方面问题:(1) DS18B20 从测温结束直到把温度值转换成为了数字量,需要一些转换时间至少为 750ms,这必须保证,不然会出现转换错误现象,从而使温度输出总是显示默认的 85 度。(2) 在实际的使用中,应该使电源电压保持在 5V 左右的大小,若是电源的电压过低了,就会降低所测得的温度精度。(3) .较小的硬件开销就需要比较复杂的软件来进行补偿,因为 DS1820 和微处理器间数据是串行传送的,所以,对 DS1820 进行读写编程,就必须严格保证读写时序,温度报警系统设计与仿真15否则就不能读取测得的温度值。(4) DS18B20 的有关资料由于未提及单总线上所挂 DS18B20 数量,就使人误认为能够挂任意多个的 DS18B20,但在实际的应用中并不是这样的,如果在单总线上所挂载的 DS18B20 超过了 8 个,就要解决微处理器的总线驱动问题,在进行多点测温系统设计时必须注意这一点。(6) 在 DS18B20 测温程序的设计中,向 DS18B20 发出了温度转换命令后,程序总是要等待 DS18B20 的返回信号,若某个 DS18B20 接触不好或这断线,当程序读该 DS18B20 时,将会没有返回的信号,程序就进入了死循环,这一点在进行DS18B20 硬件连接和软件设计的时候也要给予重视。(7) 当采用普通信号电缆传输信号时期长度不能超过 50m,否则读取的数据将会发生错误。这种情况主要是由总线分布电容使信号产生畸形导致的,因此,在用DS18B20 进行长距离传输测温信号时要充分考虑总线分布电容和阻抗匹配问题。3.2.4 DS18B20 硬件接口电路电路DS18B20 的供电方式很重要,一般根据系统的具体情况选择相应的供电方式,DS18B20 的供电方式一般有两种方式。(1) 总线供电方式(寄生电源)该模式允许 DS18B20 工作于外部无电源需求状态,寄生电源在进行远距离测温时很有用。总线供电时的电路图如图 3-6:图 3-6 总线供电方式电路图但是,当温度高于 100时不建议使用寄生电源,因为 DS18B20 在这种温度下表现出的漏电流较大,通讯可能无法进行。在类似这种情况下可以使用 DS18B20 的 VDD 温度报警系统设计与仿真16引脚。(2) 外部供电方式对 DS18B20 供电的另一种方法是从 VDD 引脚接入外部电源,这样做的好处是单总线上不需要强上拉,而且在温度转换期间不用一直保持高电平,外部供电电路如图 3-7:图 3-7 外部供电电路图在使用外部供电方式加上外部电源时,GND 不能悬空要接地。本系统由于不需要远距离测温,所以为了系统的方便和易实现性考虑,选用外部供电方式,具体电路图如图 3-8:图 3-8 DS18B20 硬件接线图温度报警系统设计与仿真17其中的 T_IO 口接单片机的 P3.7 口,在 DQ 于 VCC 直接接 4.7K 上拉电阻,用于提高总线上的电平识别准确的。3.3 时间检测与设置模块为完善系统的功能性要求,在满足基本测温报警性能的前提下,本系统扩展了显示和设置系统时间的功能,该功能基于 DS1302 时钟芯片搭建,系统运行过程中,CPU从芯片中读取系统时间并送往液晶显示,除此之外,系统还可以通过菜单选择和按键扫描来设置系统时间,设置项目包括年、月、日、小时和分钟,一旦保存设置即设置成功,系统将会刷新系统时间,并更新显示在液晶上。3.3.1 DS1302 简介DS1302 是美国 Dallas 公司的一种高性能、低功耗、带 RAM、具有涓流充电能力的时钟芯片,主要特点是采用串行数据传输,可为掉电保护电源提供可编程的充电功能,并且可以关闭充电功能,芯片引脚图如图 3-9:图 3-9 DS1302 引脚图其中:X1,X2:外接 32768Hz 晶振;GND:接地;Vcc1:后备电源;Vcc2:主电源;RST :复位 /片选引脚;I/O:串行数据输入/输出端口(双向) ;SCLK:串行时钟输入端。芯片功能特性:温度报警系统设计与仿真18(1) 时钟计数功能,可以对秒、分钟、小时、日、星期、月、年计数,年计数可以达到 2100 年;(2) 有 31X8 额外数据暂存寄存器;(3) 最少的 I/O 引脚传输,通过三引脚控制;(4) 工作电压:2.05.0V;(5) 工作电流:小于 320nA;(6) 读写时钟寄存器或内部 RAM 可以采用单字节模式和突发模式;(7) 兼容 TTL 电平;(8) 如果掉电时间较短,有漏电较小的普通电解电容接可以代替充电电池,100uF 就可以保证 1h 的运行,但是 DS1302 的上电时需要初始化操作。3.3.2 DS1302 硬件接口电路DS1302 与单片机的硬件接口电路如图 3-10:图 3-10 DS1302 硬件接口电路电源接口说明:Vcc1 为后备电源,通常为备用电池;Vcc2 为主电源,DS1302 由Vcc1、Vcc2 两者中的最大者供电。当 Vcc2 Vcc1+0.2V 时,Vcc2 给芯片供电;当Vcc20.2V 时,RST 必须保持低电平,只有在 SCLK 为低电平时才能将 RST 置为高电平。3.4 液晶显示模块为使系统更具人机交互能力,菜单逻辑简单,操作简便等特点,系统采用LCD12864 液晶显示三级菜单入口,再由三级菜单延升至系统的每项功能。3.4.1 LCD12864 简介LCD12864 液晶显示器模块是全屏幕图形点阵式液晶显示器组件,有控制器、显示缓冲器 RAM、驱动器和全点阵液晶显示器组成。可完成图形显示,可以实现字符移动、闪烁等功能,也可以显示汉字(4X8 个 16X16 点阵汉字) 。与 CPU 接口是 8 位数据线和几条地址线,另外 3 条电源线供芯片和 LCD 驱动。外部 CPU 接口采用并行或串行两种控制方式,本系统采用并行口控制方式。其各引脚图如图 3-11:图 3-11 L

温馨提示

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

评论

0/150

提交评论