资源目录
压缩包内文档预览:(预览前20页/共34页)
编号:546054
类型:共享资源
大小:244.53KB
格式:ZIP
上传时间:2015-12-01
上传人:QQ28****1120
认证信息
个人认证
孙**(实名认证)
辽宁
IP属地:辽宁
6
积分
- 关 键 词:
-
电气电子毕业设计论文
- 资源描述:
-
毕业设计155数字滤波器的设计和实现,电气电子毕业设计论文
- 内容简介:
-
青岛科技大学本科毕业设计(论文) 1 前言 温度是一个很重要的物理参数,自然界中任何物理、化学过程都紧密地与温度相联系。在工业生产过程中,温度检测和控制都直接和安全生产、产品质量、生产效率、节约能源等重大技术经济指标相联系,因此在国民经济的各个领域中都受到普遍重视。温度检测类仪表作为温度计量工具,也因此得到广泛应用。随着科学技术的发展,这类系统的发展也日新月异。特别是随着计算机技术的迅猛发展,以单片机为主的嵌入式系统已广泛应用于工业控制领域,形成了智能化的测量控制系统,从而引起了巡检系统结构的根本性变革。 在较大型的工业信号检测控制系统中,需要 检测的点数往往有几十个甚至上百个,都是采用微型计算机系统为基础,其价格比较高,体积较大,而单片机具有集成度高、处理功能强、可靠性高、价格低廉、系统结构简单等优点,使用它能方便的组装各种智能控制设备和仪器,有针对性地解决从简单到复杂的各类监测和控制任务。 本文介绍一种采用单片机和微机实现对粮仓系统的温度进行自动监测和显示的测温系统。我国的粮仓系统中,大部分还采用人工测温的方法,这不仅效率低、劳动时间长,而且由于输氧的不合理,不能及时发现异常情况,并采取相应措施,致使部分粮食变质,从而引起大面积的粮食变质,给国 家造成重大的经济损失和严重的后果。 通过对传感器的适当选型,本系统同时也适用于其他方面需要大规模测温的系统,如供暖系统、冷库系统等。 nts温度巡检系统的 开发和应用 2 1.概述 1.1 温度巡检系统的现状和发展 1.1.1 温度检测系统的现状 温度是一个重要的物理参数,自然界中任何物理化学过程都紧密地与温度相联系。在工业生产过程中,温度监测和控制都直接和安全生产、产品质量、生产效率、节约能源等重大技术经济指标相联系,因此在国民经济的各个领域中都受到普遍重视。温度监测系统也得到了广泛应用。以单片机为主的嵌入式系统已广泛应用于工业控制领域。 传统 的机械式温度检测系统在工矿企业中已经有上百年的历史了。近年来由于微电子学的进步以及计算机应用的日益广泛,智能化检测系统已经取得了巨大的进步。我国的单片机开发应用始于 80 年代,在这二十年中单片机应用向纵深发展,技术日趋成熟。单片机为主体取代常规电子线路,可以熟练的将计算机技术、预测量控制技术结合在一起。 与国内己经出现的各种各样的智能化测量控制系统 1相比,国际上更是品种繁多,而国内的开发规模相对较小,开发费用相对较高,与国际相比还存在很大的差距。 1.1.2 温度巡检系统的进展 温度巡检系统已广泛应用于测量 、监测、诊断、科学试验等各个领域中。近二十年来,温度巡检技术由于采用了一系列新技术,得到了飞速的发展。其数据采集的分辨率从 4位、 8位到现在的 24 位分辨率;采集的速率从几 KBS到现在的最高速率已达 2GPS,记录设备从原来的手记的、模拟或数字记录到磁盘记录,一直到现在的硬盘记录。所有这些都是不断采用新技术的成果。 所谓温度巡检 2,就是系统按照所定的定时间隔顺序读 取各个待测温度点的温度值,读取的温度数据经运算处理后存入数据库,同时将设定的温度限值进行比较,如发现越限,则发出报警信号,显示越限点的名称、地点和温 度,并将其自动打印输出,以便工作人员进行检查和处理;如未越限,则顺序显示各个温度点的温度值。温度巡检与电子学、精密仪器学、计算机科学密切相关。尽管温度巡检技术起步早,应用广,但在核物理试验这样复杂的试验系统中,nts青岛科技大学本科毕业设计(论文) 3 获得广泛的应用,还是七十年代以后的事情。 从七十年代到现在,温度巡检技术在核物理试验中不断完善和发展,已形成了一个独立的分支,它们不再是温度检测的简单系统,而是包括实时监视、数据存储、数据采集、数据变换、数据压缩及实时处理等一系列功能的复杂系统。 由于许多物理现象无法通过人的直接观察来了解其规律,这就 需要通过一定的仪器设备进行信息转换,成为人能够直接观察的对象,使用计算机进行这种转换时就需要数据采集与处理系统,如图 1。 1 1 数据采集与处理系统 Fig.1-1 The data collects system with the processing 随着过程控制技术,自动化仪表技术和计算机网络技术的成熟和发展,控制领域又发生了一次技术变革,这次变革使传统的控制系统无论在结构上还是性能上都发生了巨大的飞跃。 1.2 课题的意义 多路温度的测量、记 录、传输在工业及民用领域应用中一直是量大面广的设备之一,所以目前多路温度巡检仪并不少见。甚至其中有很多己经作为例题出现在许多关于单片机应用的教科书中,虽然在电路结构、元器件的选择和相应的软件编程上略有区别,但是它们均能以单片机为核心,完成巡检、显示、报警和记录功能。但是这些温度巡检仪都有一个共同的主要缺点,那就是只能检测的路数不能任意添加。这是由于温度的检测离不开温度传感器,而传统的温度传感器例如 PT-100等都是模拟量输出,需要进行信号的放大和 A/D转换只能被单片机接受,如果要增加测试路数,那末必定要增加 放大器和 A/D 转换器的个数,接线将十分复杂。并且它们的准确性易受环境、接线、放大等因素的影响。 物理对象 测量系统 采集单元 通讯接口 计算机 nts温度巡检系统的 开发和应用 4 温度巡检系统的整个工作过程都是在软件程序的控制下自动完成的。装在仪表内部 EPROM 中的监控程序由许多程序模块组成,每一个模块完成一种特定的功能,例如实现某种算法、执行某一中断服务程序、接受并分析键盘输入命令等。编制完善的监控程序的某些功能模块,能够取代某些硬件电路的功能。这就为设计扩展或改变仪表具体功能给了方便。例如打印的内容、格式,报警值的上、下限,报警的方式 (如发光、发声 )等就完全可以通过改变具体的某一段程序 来实现,同时又不会影响软件中其它程序的功能。仪表在使用上更具有灵活性。 在温度巡检系统中引入单片机之后,已经降低了对某些硬件电路的要求。但是测试电路仍然占有很重要的位置,尤其是直接获取被测信号的传感器部分仍应给予充分的重视,有时提高整个系统性能的关键仍然在于测试电路尤其是传感器的改进。现在传感器也正在受着微电子技术的影响,不断发展变化。传感器正朝着小型、固态、多功能和集成化的方向发展。有许多国家正致力于将微处理器与传感器集成于一体,以构成超小型、廉价的测量仪器的主体。 与国内己经出现的各种各样的温度巡检系统 相比,国际上更是品种繁多,而国内的开发规模相对较小,开发费用相对较高,与国际相比还存在很大差距。 1.3 课题的内容 针对目前温度检测系统的发展趋势和存在的问题,本课题主要解决以下内容 : 1.对不同的测试点巡回检测其温度,进行集中管理,集中控制; 2.在其测量范围内可以设定任意测试点温度的报警值; 3.在温度异常时能够发出报警信号和采取保护措施,能对故障及时地跟踪和记录; 4.功耗低,整个系统体积小; 5.现场安装配线简单,调试简捷方便; 6.使系统具有较强的抗干扰性能; 7.有较高的分辨率,极好的可维护性。 nts青岛科技大学本科毕业设计(论文) 5 2.系统的总体设计 2.1 系统的总体设计思想 不同的控制对象和不同的要求,应该有不同的设计思想。本系统是一个单片机系统,系统内部除单片机以外的其它硬件部分均可看作是单片机的外设部分。在本系统中, CPU 在温度采集和处理时,主要是对温度值进行巡回检测、数据记录、数据计算、数据统计和整理、数据越限报警并对这些数据进行积累和实时分析。 CPU不直接参与过程控制,对生产过程不会直接产生影响。 温度经过采样、转换后以数字形式进入 CPU,利用 CPU具有运算、逻辑判断能力、速度快等特点,在它内部可以对这些输入数据进行必要 的集中、加工和处理,在温度参数的测量和记录中则代替大量的常规显示和记录仪表,对整个环境温度进行集中监视。另外,添加存储器,预先存入各个测试点的温度极限值和其他的相关数据,以便在处理过程中可以进行越限报警、调整参数和维修调试等。通过以上分析,本论文所做的系统的整体结构如图: 2-1 整体结构框图 Fig 2-1 The frame diagram of the whole structure 数字式温度传感器主要是采集每个测试点的温度值,在其内部将采集到的温度值转换成数 字信号,送入单片机集中进行处理。因为单片机的 I/O 口有限,所以每个温度传感器不可能直接接入单片机,本系统采用单总线技术,将数字式的温度值通过总线循环的形式送入单片机。 存储器将存储各种与温度传感器有关的数据,例如,每个传感器的相关信息、每个测试点的温度值和相关的时间数据,以实现单片机对数据的集中管理,nts温度巡检系统的 开发和应用 6 并防止丢失。 看门狗电路用来监视单片机的正常运行;实时时钟电路为巡检系统提供准确的时钟;报警电路在温度异常时送出保护信号并能进行故障点的跟踪定位。 键盘在本系统中是操作员控制巡检系统的重要途径,是安装调试的必备 手段。在系统需要改变某些数据,以及操作人员在出现故障时能够实时了解故障路数,对应的时间、温度数据等均应通过键盘完成相应的操作。 2.2 温度测量和转换原理 在本篇论文中,温度测量和转换是由 DS18B20及接口电路来实现的,具体地说它的工作原理是: 当 DS18B20接收到温度转换命令后,开始启动转换。如图 2-2 所示。图中低温度系数晶振的振荡频率受温度的影响很小,用于向计数器 1产生固定频率的脉冲信号送给减法计数器 1,高温度系数晶振随温度变化其振荡频率明显改变,所产生的信号作为减法计数器 2的脉冲输入,用于控制闸门的 关闭时间。当计数门打开时, DS18B20就对低温度系数振荡器产生的时钟脉冲进行计数,进而完成温度测量。计数门的开启时间由高温度系数振荡器来决定,每次测量前,首先将 -55所对应的基数分别置入减法计数器 1、温度寄存器中,减法计数器1和温度寄存器被预置在 -55所对应的一个基数值。减法计数器 1 对低温度系数晶振产生的脉冲信号进行减法计数,当减法计数器 1的预置值减到 0时,温度寄存器的值将加 1,减法计数器 1的预置将重新被装入,减法计数器 1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到减法计数器 2计数到 0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。斜率累加器用于补偿和修正 3测温过程中的非线性,其输出用于修正减法计数器的预置值,只要计数门仍未关闭就重复上述过程,直至温度寄存器值达到被测温度值,此时温度寄存器中的数值即为所测温度。 nts青岛科技大学本科毕业设计(论文) 7 2-2 测温原理 Fig.2-1 Measure temperature theory 在默认的配置中, DS18B20 的温度分辨率为 0.0625,以 16位符号扩展的二进制补码读数形式表示,高 4位表示符号位,其后 8位表示整数部分,后 4位表示小数点后的位数。例 如,用 0000011111010000 表示 +125,其十六进制的数字量输出为 07D0; 0000000110010001 表示 +25.0625,其十六进制的数字量输出为 0191; 1111111001101111 表示 -25.0625,其十六进制 4的数字量输出为 FF6F;用 1111110010010000 表示 -55,其十六进制的数字量输出为 FF90。 转换完成后的温度值就以 16位带符号扩展的二进制补码形式存储在高速暂存寄存器的第 1、 2 字节。单片机可以通过单线接口读到该数据,读取时低位在前,高位在后。当符 号位 S 0时,直接将二进制转换为十进制;当 S 1时,先将补码变换为原码,再计算十进制值。 DS18B20完成温度转换后,把测得的温度值与 TH、 TL作比较,若 TTH或TTL,则将该器件内的告警标志置位,并对主机发出的告警搜索命令作出响应。因此,可用多只 DS18B20 同时测量温度并进行告警搜索。 在 64位 ROM的最高有效字节中存储有循环冗余校验码 (CRC)。主机根据 ROM的前 56位来计算 CRC值,并和存入 DS18820 中的 CRC值作比较,以判断主机收到的 ROM数据是否正确。 2.3 系统设计的技术关键 根据以 上所述的总体设计思想,设计中需解决的技术关键性问题是单片机和温度传感器的选择。 nts温度巡检系统的 开发和应用 8 2.3.1 单片机 AT89C51 AT89C518是在我国应用较早、技术较成熟的 MCS-51系列单片机,它功耗低、性能高、片内含有 4KB快闪可编程 /擦除只读存储器 (EEROM-Flash Programmable and Erasable Read Only Memory )是一种 8位微控制器,使用高密度、非易失存储技术制造,并且与 80C51 引脚和指令系统完全兼容。芯片上的允许在线编程或采用通用的非易失存储编程器对程序存储器重 复编程,为很多嵌入式控制应用提供了非常灵活而又价格适宜的方案,其性能价格比极高。 除此之外还有很多单片机例如 83C552 系列的增强型产品,是一种高性能微控制器,也广泛用于仪器仪表、工业控制、汽车控制、电机调速等实时测控领域。它的价格高于 AT89C51,并且有 5个 8 位的 I/O口,外加 1个与模拟输入共享的 8位输入口, 1个 8路输入的 10位 A/D 转换器。但是对于 32路温度巡检系统来说,仅用一个 8路 A/D转换显然不能满足需要,而假设在温度检测部分采用先进的传感器而不再使用 A/D转换后, CPU 内部的 A/D转换器和 6 个输 入输出口也就显得太浪费了。 本系统选择了 AT89C51,具体地说有以下特点: 1.与 MCS-51微控制器产品系列兼容; 2.片内有 4KB 可在线重复编程的快闪擦写存储器; 3.存储器可循环写入 /擦除 1000次; 4.宽电压工作范围:可为 2.7V 6V; 5.全静态工作:可从 0Hz 24MHz; 6.程序存储器具有 3级加密保护; 7.128*8位内部 RAM; 8.32条可编程输入输出线; 9.两个 16位定时计数器; 10.中断结构具有 5个中断源和两个优先级; 11.可编程全双工串行通道; 12.空闲状态维持低功 耗和掉电状态。 2.3.2.温度传感器 各测试点的温度值经过测温元件热电偶、热电阻等,被转换为电信号,这样得到的多路采样信号经放大器、多路模拟开关及 A/D转换电路,由单片机控nts青岛科技大学本科毕业设计(论文) 9 制多通道 A/D转换,分时对电压信号进行循环采样和 A/D转换。这是单片机处理非电量信号的传统方法,它的优点是测温范围广。选用合适的测温元件可以检测 -300 3000的温度。但是一方面,单片机外电路复杂,因为 32路温度需要多个模拟开关,不管是通用的并行、串行总线,还是专用总线,其传送数据的信号线总是多根的,这样系统连线非常复杂,并且需要 额外的接口芯片,其成本也高;另一方面, A/D转换器要占用多个 I/0口向单片机输入多位的数字量,这无疑使得有限的 I/0口在设计时显得较为局促;软件工作量大,且功耗也较大,线路上传送的是模拟信号,易受干扰和损耗,其性能价格比较低。 使用在温度测控领域中有广泛应用的二端式半导体集成温度传感器AD590,LM35等,将采集到的电流信号经多路 A/D转换器送入单片机,由单片机控制数据的采集和转换。以 AD590为例,它的测温范围为 -55 +150,工作电压为 -4V 30V。由于 AD590是一种电流型的温度传感器,因此 具有较强的抗干扰能力,适用于计算机进行远距离温度测量和控制,远距信号传递时,可采用一般的双绞线来完成,其电阻比较大,因此不需要精密电源对其供电,长导线上的压降一般不影响测量精度,不需要温度补偿和专门的线性电路。但是它仍然具有单片机处理多个模拟信号时的缺点 :电路连线复杂、软件工作量大、功耗大、需要占用较多的 I/0口线。 选用先进的数字式温度传感器 9,将采集到的数字式的温度信号直接送入单片机进行处理。随着传感器技术的发展,已经出现了先进的数字式温度传感器。 数字式温度计 DS1820 系列采用了与众不同的原理,兼 有 测温和 A/D转换的功能, 利用温敏振荡器的频率随温度变化的关系, 输出值是数字信号,所以不必使用 A/D转换器和相关的接口芯片,能够直接进入单片机进行数字处理。硬件电路非常简洁,有较好的线性关系和较强的抗干扰能力。 为了扩大测温范围和提高分辨率,使用了低温系数振荡器和一个高温系数振荡器分别进行计数,并采用了非线性累加器来改善线性。其中 DS18B20是常用的温度传感器,它采用一根 I/O数据线传输数据和命令,售价低廉,广泛用于食品库、冷库、粮库,是 DS1820的改进型产品。 由于本系统是 32路巡检,如果采用一般的温度 传感器,则至少需要 4条控制总线,占用 I/O 口资源较多; DS18B20则至多需要 2条总线便可以挂接至少32个传感器,从而 CPU还能留有较多的 I/O 口继续扩展检测路数或其它功能,使用相当灵活,所以在本系统中选择了 DS18B20。 总体来说,本系统所要达到的效果是: nts温度巡检系统的 开发和应用 10 第一,这种巡检系统由于需要检测的点多达几十个,为了便于用户安装使用,在设计时,应尽可能地使用各种先进的现场总线技术,力求电路最简单,安装调试最方便。 第二,为保证本系统高可靠性运行,仪器本身要具备很强的抗干扰能力,为此应在硬件及软件设计上引入各种抗干 扰措施。特别是系统中各部分电路的电源均为直流稳压电源供电,当系统用于复杂的工业环境时,直流电源能够不受干扰,对各部分电路提供直流电压就显得十分重要了。 第三,由于硬件电路十分简洁,那么软件势必功能很强大,在软件设计时也应寻找尽可能简单完善的设计思路,保证程序易于修改、调试。 第四,系统是一个实时运行的系统,当主机电源因某种原因停电时,为了保证系统工作时的数据的实时性,其后备电源应能可靠工作。 nts青岛科技大学本科毕业设计(论文) 11 3.系统的软硬件设计 3.1 设计要求 在微机测控系统中,系统的主要功能还要靠软件来实现。为了满足系统的要求,系统设 计时必须符合以下基本要求: 易理解性、易维护性。通常是指软件系统容易阅读和理解,容易发现和纠正错误,容易修改和补充。由于生产过程自动化程度的不断提高,测控系统的结构日趋复杂,设计人员很难在短时间内就对整个系统理解无误,软件的设计与调试不可能一次完成,有些问题是在运行中逐步暴露出来,这就要求编制的软件容易理解和修改。在软件的设计方法中,模块化设计是最好的一种设计方法,这种设计方法是由整体到局部,然后再由局部到细节,先考虑整个系统所要实现的功能,确定整体目标,然后把这个目标分成一个个的任务,任务中可以分成若干个 子任务,这样逐层细分,逐个实现。本系统就是采用这种模块化的设计方法。这样不但使得设计目标明确、思路清晰,而且在检错、调试时也很方便。当出现问题时,可以根据问题的种类和现象来判断是哪一部分出的问题,很容易找出故障所在和故障原因。同时,采用模块化程序结构设计方案,对于系统功能的扩充和修改也提供了很大的方便。 实时性:实时性是本系统的基本要求。即要求系统及时响应外部事件的发生,并及时给出处理结果。近年来,由于硬件的集成度与速度的提高,配合相应的软件,实时性容易满足要求,特别是对于汇编语言编制的软件。 可测试性:系 统的可测试性具有两方面的含义:其一是指比较容易地制定出测试准则,并根据这些准则对系统进行测定;其二是系统设计完成后,首先在模拟环境下运行,经过静态分析和动态仿真运行,证明准确无误后才可投入实际运行。 准确性:准确性对整个系统具有重要意义。系统要进行大量运算,算法的正确性和准确性问题对控制结果有直接影响,因此在算法选择、位数选择方面要适合要求。 可靠性:可靠性是系统设计最重要的指标之一,它要求两方面的意义:第一是运行参数环境发生变化时,系统都能可靠运行并给出正确结果,也就是要求系统具有自适应性;第二是在环境恶 劣干扰严重情况下,系统必须保证也能nts温度巡检系统的 开发和应用 12 可靠运行,这对整个系统尤为重要。 3.2 数据采集和处理部分 3.2.1.DS18B20 芯片 DS18B2011与传统的热敏电阻相比,它能够直接读出被测温度,并且可根据实际要求通过简单的编程实现 9 12位的数字值读数方式。可以分别在 93ms、75ms和 750ms内完成 9位和 12位的数字量读取,并且从 DS18B20读出的信息或写入 DS18B20的信息仅需要一根口线 (单线接口 )读写,温度变换功率来源于数据总线,总线本身也可以向所挂接的 DS18B20 供电,而无需额外电源。因而使用 DS18B20可使系统结构更趋简单,可靠性更高。它在测温精度、转换时间、传输距离、分辨率等方面较 DS1820有了很大的改进,给用户带来了更方便的使用和更令人满意的效果。 具体的性能特点如下: 1.温度测量范围: -55 125; 2.分辨率 :+0.5( -10 +85时 ); 3.温度值输出: 9 12位二进制数字量其中包括 1位符号位 ),可由编程决定具体位数; 4.转换时间与设定的分辨率有关,当设定为 9位时最大转换时间为 93ms、75ms,当设定为 10 位时最大转换时间为 187.5ms, 12位时为 750ms; 5.用户可设置报警温度的上下限; 6.供电方式有两种:外加电源电压为 3.0V 5.5V; 寄生电源管脚图 3 1 3-1 DS18B20 的管脚图 Fig.3-1 The pin diagram of the DS18B20 nts青岛科技大学本科毕业设计(论文) 13 DS18B20内部包含 64位的闪速 ROM号,开始 8位是产品类型的编号,接着是每个器件的唯一的序列号,共有 48位,最后 8位是前 56位的 CRC 校验码,这也是多个 DS18B20 可以采用一线进行通信的原因。非易失性温度报警触发器TH和 TL,可通过软件写入用户报警上下限。 DS18B20温度传感器的内部存储器包括一个高速内存 RAM和一个非易失性的可电擦除的 EERAM,后者用于存储 TH、TL值。数据先写入 RAM,经校验后再传给 EERAM。而配置寄存器为高速存储器中的第 5个字节,它的内容用于确定温度值的数字转换分辨率, DS18B20 工作时按此寄存器中的分辨率将温度转换为相应精度的数值。 DS18B20内含程序设置寄存器,可以设置分辨率位数。该寄存器是 DS1820所没有的。其格式为: 测试模式位。当 TM=1时,寄存器处于侧试模式;当 TM=0时,寄存器处于工作模式。传感器出厂时均设置为何,且不 可改变。 设定的分辨率越高,所需要的温度数据转换时间就越长。因此,在实际应用中要将分辨率和转换时间权衡考虑。 高速暂存存储器除了配置寄存器外,还有其它 8个字节组成。其中温度信息 (第 1、 2字节 )、 TH和 TL值第 3、 4字节、第 6、 7、 8字节未用,表现为全逻辑 1;第 9字节读出的是前面所有 8个字节的 CRC码,可用来保证通信正确。 用户通过单总线对 DS18B20进行操作,其顺序如下:复位一 ROM功能命令 存储器功能命令 执行 /数据。 它的 ROM命令有 5个,存储器的命令有 6个,与 DS1820完全一样。命令的组成 都是由复位、多个读时隙或 /和写时隙等基本时序单元组成。 完成操作时序图 3 2如下 : 3-2 复位时序图 Fig.3-2 The diagram of the reset cycle time 复位: DS18B20 使用前需将其复位,然后才能执行其它命令。复位时,主机nts温度巡检系统的 开发和应用 14 将数据线激发为低电平并保持 480us,然后释放数据线,再由上拉电阻将数据线拉升 15 60us,然后由 DS18B20发出响应信号将数据线触发为低电平。 写时隙:在主机对 DS18B20写数据时 (主机对其发送各种命令时 ),先将数据线激发为低电平,该低电 平应大于 1ms。然后根据写 1或写 0来使数据变高或继续为低。 DS18B20 将在数据线变成低电平后 15 60uS,对数据线进行采样,要求写入 DS18B20 的数据持续时间应大于 60uS而小于 120uS,两次写数据的时间间隔应大于 3ms,时序图 3 3如下: 3-3 写时序图 Fig.3-3 The diagram of the write cycle time 读时序:当主机从 DS18B20读数据时,主机先使数据线激发出低电平,然后释放以使数据线再升为高电平。 DS18B20在数据线从高电平变为低电平的 15uS内 将数据送到数据线上,主机可在 15uS后读取数据线以获得数据。时序图 3 4如下: 3-4 读时序图 Fig.3-4 The diagram of read cycle time 在电路中设计了三条 I/0口线,这样做是考虑到以下两点:实验过程中发现由于总线驱动能力的限制,如果一条线上挂接太多的元件,单片机有可能读不到远端的数据,应尽量缩短总线和分支的长度,所以分成两条独立的总线,每条挂接 16个温度传感器,保证每条总线都足以传输温度信号;在使用过程中如果某个传感器损坏了,就需要更换新的,那么新传感器的序列号 必须存入仪表,否则单片机不能读取它发出的温度值,所以又增加了一条 I/0 口线作为测试口,专门读取新元件的序列号。 由于温度传感器 14的三个引脚在工作不能相互接触,但是实际上又相隔很近,因此在电路中必须用绝缘套管将之分离。三个引脚不能直接浸入水或导电nts青岛科技大学本科毕业设计(论文) 15 的介质中,应用导热性较好的细铜管引入温度传感器,然后用导热硅脂封住细铜管一头,另一头将三个引脚线引出,再接入整个温度系统。尽管 DS18B20可以采用寄生电源方式,但是为了可靠工作,只要条件允许,还是外接电源电压。 每个 DS18B20 在电路中还有自己的序号,即路数 。这是因为序列号是 64位二进制数,用它来区分每个传感器不便于观察和记录;序号还可以在编程时换算成每个传感器在内存中存储序列号和温度值的地址,有利于系统设计。因此,在变更传感器时,特别注意不要混淆。 3.3.2 单总线技术 DS18B20与单片机是单总线连接方式,单总线及相应的芯片是只有一个总线命令者和一个或多个从者组成的计算机应用系统。它只定义了一根信号线,总线上的每个器件都能够在合适的时间驱动它,相当于把单片机的地址线、数据线、控制线合为一根信号线对外进行数据交换。为了区分这些芯片,厂家在生产每个芯片时 ,都编制了惟一的序列号,通过寻址就能把芯片识别出来。这样做能使这些器件挂在一根信号线上进行串行分时数据交换。 系统按单总线 18协议规定的时序和信号波形进行初始化、识别器件和进行数据交换。其典型应用如图 3 5所示。 3-5 单总线协议的典型应用 Fig.3-5 The typical application of the negotiate of monobus 厂家对每个芯片用激光刻录的一个 64 位二进制 ROM代码。从最低位开始,前 8位是族码,表示产品的分类编号;接着的 48位是一个惟一的序列号;最后8位是前 56位的 CRG 校验码。 CRC( Cyclic Redundancy Check)称为冗余码检测,是数据通信中校验数据传输是否正确的一种方法。在使用时,总线命令者读入nts温度巡检系统的 开发和应用 16 ROM中 64位二进制码后,将前 56位按 CRC 多项式计算出 CRC值,然后与 ROM中高 8位的 CRC值比较,若相同则表明数据传送正确,否则要求重传。 48位序列号是一个 15位的十进制编码,这么长的编码完全可以为每个芯片编制个全世界惟一的号码,也称之为身份证号,可以被寻址识别出来。此外,芯片内还含有收、发控制和电源存储电路。 单总线系统中配置的专用 芯片采用 CMOS 技术,耗电量都很小,从单总线上“偷”一点电 (空闲时几 uW,工作时几 mW)存在芯片内电容中就可以正常工作了,故一般不用另附电源。单总线上通常处于高电位 (5v左右 ),每个器件都能在需要时驱动它。因此,挂在总线上的每个器件必须是漏极开路或者是三态输出的,这样,不工作时不会给总线增加功耗。 单总线技术作用距离在单片 /直接驱动下可达 200m,经扩展可达 1000m,允许挂上百个器件,能满足一般测控系统的要求。单总线的数据传输有两种模式,通常以 13.6kb/s的速率通信,超速可送 142kb/s。因此只能用 于速度不高的场合,一般用于 1Mb/s 以下速率的测控或数据交换系统。 程序必须保证数据的可靠传送,任一时刻单总线上只能有一个控制信号或数据。操作时一般有以下四个过程 :初始化;传送 ROM命令;传送 RAM命令;数据交换。 单总线命令者首先必须发送 7个 ROM功能命令中的一个命令:读 ROM(总线上只有一个器件时 );匹配 ROM(总线上有多个器件时,寻址某个器件 );查找 ROM(系统首次启动后,须识别总线上各器件 );跳过 ROM(总线上只有一个器件时,可跳过读 ROM命令直接向器件发送命令,以节省时间 );超速 匹配ROM(超速模式下寻址某个器件 );超速跳过 ROM(超速模式下跳过读 ROM命令 );条件查找 ROM(只查找输入电压超过设定的报警限值的某个器件 )。当成功执行上述命令之一后,总线命令者可发送任何一个可使用的命令来访问存储和控制功能,进行数据交换。所有数据的读写都是从最低位开始的。 单总线上所有处理都从初始化开始。初始化时序有总线命令者发出的复位脉冲和一个或多个从者发出的应答脉冲组成。“应答脉冲”是从者让总线命令者知道某器件是在总线上,并准备工作。当总线命令者检测到某器件的存在,就会发出传送 ROM功能命令。 其信号波形如图 3 6所示 nts青岛科技大学本科毕业设计(论文) 17 3-6 单总线的时序信号波形 Fig.3-6 The wave of the cycle time signal of monobus 单总线传送数据或命令是由一系列的时序信号组成的,单总线上共有 4 种时序信号:初始化信号;写 0 信号;写 1 信号;读信号。每一种信号的波形参数 (如脉冲上升时间、宽度和间隙等 )都有所不同,设计中应保证指令执行时间小于或等于时序信号中的最小时间,以确保严格的时间关系。单总线技术比传统的方案具有较高的性能价格比,具有以下特点: 适用于低速测控场合,测 控对象越多越显出其优越性; 性价比高,维修方便,抗干扰性能好; 具有 CRC校验功能,可靠性高; 软件设计规范,系统简明直观; 3.2.3 系统设计 DS18B20 与 89C51 连接的硬件结构见下图: nts温度巡检系统的 开发和应用 18 3 7 数据采集部分硬件接线图 Fig.3-7 The connecting line of the hardware of the data collect 软件框图如下图所示 3-8 读序列号 3-9 读温度号 Fig.3-8 Read sequence number Fig.3-9 Read temperature number nts青岛科技大学本科毕业设计(论文) 19 3.3 定时计数器部分 在本系统中,故障时间等相关的时间数据需要保存。例如,在粮食存储中,高于 28时或低于 0时,粮食的存储时间将会大大缩减,因此我们需要记录超出某个温度范围的时间,以便工作人员作出相应处理。这使得定时计数器的使用变得很关键,本系统使用的是 PCF8653 芯片。 3.3.1 各种数据的存储和时钟 在电路设计中,温度值、温度传感器的相关数据、时间数据等都需要保存,并且掉电时要求数据不丢失。有两种电路可以实 现数据的非易失性保存。 如果选用静态 RAM 及专用的上电、掉电数据保护电路,但这种结构占用较多的软硬件资源,不宜采用。 若使用串行 E2PROM 作为数据存储器,且串行 E2PROM 具有很强的抗干扰能力,与单片机硬件接口非常简单 ,擦写次数多。因此本设计采用 E2PROM 作为数据存储器。 在 32路温度巡检仪中需要记录故障发生的时间,所以要考虑实时时钟。实时时钟分为硬时钟和软时钟两种 . 硬时钟有独立的实时时钟芯片组成,硬时钟的优点是时钟的淮确度与单片机无关,不易产生误差;缺点是成本较高、体积大,并且与单片机通信时可能会受 到外界的干扰。 软时钟是利用单片机内部的定时器,由软件程序产生实时时间,节省了外部硬件资源。缺点是当单片机发生故障时,时钟也容易遭到破坏,单片机采用了看门狗电路时,会影响软时钟的准确度。因此,本设计采用独立的硬件时钟芯片。这样,即使看门狗电路令单片机复位,程序也只须将时钟芯片里的数据读出即可,不会影响时钟的准确度。 PCF8653是一款工业级内含 I2C总线接口的具有极低功耗的 CMOS 多功能实时时钟 /日历芯片。它提供一个可编程时钟输出,一个中断输出和掉电检测器,所有的地址和数据通过接口串行传送。最大总线速度为 400Kbits/s,每次读写数据后,内嵌的字地址寄存器会自动产生增量。 PCF8653能完成各种复杂的定时任务,甚至可为单片机提供看门狗功能。内部时钟电路、内部振荡电路、内部低电压检测电路以及两线制 I2C 总线通讯方式,不仅使外围电路极其简洁,而且也增加了芯片的可靠性。这是一款性价比极高的时钟芯片,适用于 IC卡水表、nts温度巡检系统的 开发和应用 20 IC卡煤气表、便携式仪器等 . 3.3.2.PCF8653 芯片 定时计数器 PCF8653 具体来说有以下特点 : 1.低工作电流:典型值为 0.25uA(Vdq=3.0V,Tamb=25时 );低休眠电流 :典型值为 0.25uA(Vdq=3.0V,Tamb=25时 ); 2.世纪标志; 3.大工作电压范围: 1.0V 5.5V; 4.400KHz的 I2C 总线接口 (Vdq=1.85V 5V); 5.可编程时钟输出频率为: 32768Hz,1024Hz,32Hz,1Hz; 6.报警和定时器; 7.内部集成的振荡器电容、片内电源复位功能、掉电检测器; 8、 I2C总线从地址 :读, OA3H;写, OA2H; 9.开漏中断引脚; 管脚图 3-10: 3-10 PCF8653 管脚图 Fig.3-10 The pin diagram of the PCF8653 PCF8653 有 16 个 8 位寄存器:一个可自动增量的地址寄存器,一个内置32.768KHz 的振荡器 (带有一个内部集成的电容 ),一个分频器 (用于给实时时钟RTC 提供源时钟 ),一个可编程时钟输出,一个定时器,一个报警器,一个掉电检测器和一个 400KHzI2C 总线接口。 所有 16个寄存器设计成可寻址的 8位并行寄存器,但不是所有位都有用。nts青岛科技大学本科毕业设计(论文) 21 前两个寄存器 (内存地址 00H, 0lH)用于控制寄存器和状态寄存器,内存地址02H 08H用于时钟计数器 (秒、年计数器 ),地址 09H 0FH用于报警 寄存器 (定义报警条件 ),地址 ODH控制 CLKOUT管脚的输出频率,地址 0EH和 0FH分别用于定时器控制寄存器和定时器寄存器。秒、分钟、小时、日、月、年、分钟报警、小时报警、日报警寄存器,编码格式为 BCD码,星期和星期报警寄存器不以 BCD码格式编码。当一个 RTC寄存器被读时,所有计数器的内容被锁存,因此,在传送条件下,可以禁止对时钟旧历芯片的错读。 在本系统中要主使用它的计时功能和定时功能。 1、在本系统中, PCF8653由 SCL配合 SDA提供关于年、月、日、时、分的实时时钟,按 I2C 总线协议规定, PCF8653 有唯一的器件地址 OA2H,单片机按这个地址在 SCL配合下从 SDA上读取时钟;如果需要修改时间信息,也应按对应的时序写入。时间信息以 BCD码格式依次存在地址为 08H, 07H, 05H, 04H,03H的寄存器中。 2、 PCF8653的 8位倒计数器由定时器控制寄存器控制,定时器控制寄存器控制用于设定定时器的频率 (4096, 64, 1/60Hz),以及设定定时器有效或无效。定时器从软件设置的 8位二进制数倒计数,每次倒计数结束,定时器设置标志位 TF, TF只可用软件清除。在本系统中将定时器频率设置为 1/60Hz。 3、 PCF8563内嵌掉电检测器,当 VDD 低于 Vlow时,位 VL被置 1,用于指明可能产生不准确的时钟 /日历信息, VL只可用软件清除。当 VDD慢速降低达到Vlow时,标志位 VL 被设置,这时可能回产生中断。为保证掉电后时钟的正常运行, PCF8653需要后备电源。 本系统的要求是低功耗、便携式,所以考虑的重点是保持体积小、重量轻。在此选用干电池作为 PCF8653的后备电源。 PCF8653的工作电压为 1.8 5.5V,根据这一点可以选用性能优越的锂电池为其供电。锂电池一般有八到十年的储藏寿命,每节电池的电压为 3.6V, 仅需一节即可。在电源电压正常的情况下,由正电源通过 D1对芯片供电且通过 D3对电池进行涓流充电;在电源电压故障的情况下,切换到由电池通过 D2对时钟芯片供电。 3.3.3 系统设计 PCF8653 与 89C51 连接的硬件结构见下图: nts温度巡检系统的 开发和应用 22 3 11 时钟部分硬件接线图 Fig.3-11 The hardware connecting line of the clock 其软件实现如下: 3-12 写时间 3-13 读时间 Fig.3-12 The read time Fig.3-13 The write time 1、将当前时间写入 PCF8653 nts青岛科技大学本科毕业设计(论文) 23 在编写主程序之前应首先将当前时间写入 PCF8653,以便 PCF8653 能正确计时。写入当前时间的这一段程序最好单独存在,不要出现在主程序中。否则,每次机器上电都会执行这段程序, PCF8653 每次都将从这个固定的时间开始计时,显然这是错误的。 2、从 PCF8653 读出实时时间给 X5045 X5045中存放年、月、日、时、分共 5 个字节的时间参数,可以排在温度传感器的序列号的后面,即 100H 104H作为接收时间的缓冲区。读时间的程序是将时间放入单片机的内部 RAM中,所以需要把这些数据写入 X5045 流程。 3.4 看门狗 +存储器 +电压监控电路 3.4.1.X5045 芯片 在总体方案中确定了需要看门狗和存储器,目前市场上已经出现了看门狗 +存储器 +电压监控的三种功能于一体的集成芯片 X5045。 X5045把三种常用的功能:看门狗定时器,电压监控和 EEPROM 组合在单个封装之内。这种组合降低了系统成本并减少了对电路板空间的要求。 X5045看门狗定时器对微控制器提供了独立的保护系统。当系统故障时,在可选的超时周期之后, X5045看门狗将以 RESET信号作出响应。用户可从三个预置的值中选择此周期。一旦选定,即使在电源周期变化之后,此周期也不改变。利用 X5045低电压检测电路,可以保护系统使之免受低电压状况的影响。当 Vcc 降到最小Vcc转换点以下时,系统复位。复位一直确保到 Vcc返回且稳定为止。 X5045的存储器部分是 CMOS 的 4096位串行 EEPROM,它在内部按 512*8来组织。 X5045具体地说有以下特点 : 1.可编程的看门狗定时:低电压 检测,直至 Vcc=lV复位信号有效; 2.1MHz时钟速率: 512*8位串行 EEPROM; 3.低功耗 CMOS: l0uA备用电流, 3mA 工作电流; 4.存在 2.7V至 5.5V电源电压; 5.块锁定:保护 1/4, 1/2或所有的 EEPROM 阵列; 6.内建偶然性的写保护:上电 /掉电保护电路,写锁存,写保护引脚; 7.高可靠性:使用期限 I00,000周期 /字节,数据保存期 100年, ESD保护所有引脚; 8.温度范围:民用,工业,军品级; nts温度巡检系统的 开发和应用 24 3-14 X5045 的管脚图 Fig.3-14 The pin diagram of the X5045 X5045具有简单的三总线工作的串行外设接口 (SPI)和软件协议。当 X5045被 CPU选中时,还需要根据在操作时序上具体提供的读命令 READ或写命令 WRITE来决定是从 SI上输入数据还是从 SO上输出数据。它的读写复位时序如下: 3-15 读时序图 Fig.3-15 The diagram of read cycle time 1.读时序 当从 E2PROM存储器阵列读数据时,首先把 CS拉至低电平以选择芯片。 8位的读 (READ)指令被发送到 X5045,其后是 8位的字节地 址。读指令的位 3包含地址 A8。此位用于选择器件的上半部或下半部。在发送了读操作码和字节地址之后,在所选定地址的存储器中存储的数据被移出到 SO线。继续提供时钟脉冲nts青岛科技大学本科毕业设计(论文) 25 可接着读出下一地址的存储器中存储的数据。在每一数据字节移出之后,字节地址自动增量至下一个较高的地址。当达到最高地址 (1FFH)时,地址计数器翻转至 000H,使得读周期无限地继续下去。把 CS置为高电平可以终止读操作。如下图所示。 2.写时序 在把数据写入 X5045之前,必须首先发出 WREN指令把“写使能”锁存器置位。 CS首先被拉至低电平,然后 WREN指令由时钟同步送入 X5045,在指令的所有 8位被发送之后,必须接着使 CS变为高电平。如果用户在发出 WREN指令之后不把 CS变为高电平而继续写操作,那么写操作将被忽略。 为了把数据写至 E2RROM存储器阵列,用户要发出 WRITE指令,后继以地址,接着是要写的数据。写指令的位 3包含地址 A8。此位用于选择器件的上半部或下半部。这是最少为 24个时钟的操作。在此操作期内, CS必须变为
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

人人文库网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。