1、电气电子毕业设计411数字滤波器的设计和实现前言温度是一个很重要的物理参数,自然界中任何物理、化学过程都紧密地与温度相联系。在工业生产过程中,温度检测和控制都直接和安全生产、产品质量、生产效率、节约能源等重大技术经济指标相联系,因此在国民经济的各个领域中都受到普遍重视。温度检测类仪表作为温度计量工具,也因此得到广泛应用。随着科学技术的发展,这类系统的发展也日新月异。特别是随着计算机技术的迅猛发展,以单片机为主的嵌入式系统已广泛应用于工业控制领域,形成了智能化的测量控制系统,从而引起了巡检系统结构的根本性变革。在较大型的工业信号检测控制系统中,需要检测的点数往往有几十个甚至上百个,都是采用微型计
2、算机系统为基础,其价格比较高,体积较大,而单片机具有集成度高、处理功能强、可靠性高、价格低廉、系统结构简单等优点,使用它能方便的组装各种智能控制设备和仪器,有针对性地解决从简单到复杂的各类监测和控制任务。本文介绍一种采用单片机和微机实现对粮仓系统的温度进行自动监测和显示的测温系统。我国的粮仓系统中,大部分还采用人工测温的方法,这不仅效率低、劳动时间长,而且由于输氧的不合理,不能及时发现异常情况,并采取相应措施,致使部分粮食变质,从而引起大面积的粮食变质,给国家造成重大的经济损失和严重的后果。通过对传感器的适当选型,本系统同时也适用于其他方面需要大规模测温的系统,如供暖系统、冷库系统等。1.概述
3、1.1温度巡检系统的现状和发展1.1.1温度检测系统的现状温度是一个重要的物理参数,自然界中任何物理化学过程都紧密地与温度相联系。在工业生产过程中,温度监测和控制都直接和安全生产、产品质量、生产效率、节约能源等重大技术经济指标相联系,因此在国民经济的各个领域中都受到普遍重视。温度监测系统也得到了广泛应用。以单片机为主的嵌入式系统已广泛应用于工业控制领域。传统的机械式温度检测系统在工矿企业中已经有上百年的历史了。近年来由于微电子学的进步以及计算机应用的日益广泛,智能化检测系统已经取得了巨大的进步。我国的单片机开发应用始于80年代,在这二十年中单片机应用向纵深发展,技术日趋成熟。单片机为主体取代常
4、规电子线路,可以熟练的将计算机技术、预测量控制技术结合在一起。与国内己经出现的各种各样的智能化测量控制系统1相比,国际上更是品种繁多,而国内的开发规模相对较小,开发费用相对较高,与国际相比还存在很大的差距。1.1.2温度巡检系统的进展温度巡检系统已广泛应用于测量、监测、诊断、科学试验等各个领域中。近二十年来,温度巡检技术由于采用了一系列新技术,得到了飞速的发展。其数据采集的分辨率从4位、8位到现在的24位分辨率;采集的速率从几KBS到现在的最高速率已达2GPS,记录设备从原来的手记的、模拟或数字记录到磁盘记录,一直到现在的硬盘记录。所有这些都是不断采用新技术的成果。所谓温度巡检2,就是系统按照
5、所定的定时间隔顺序读取各个待测温度点的温度值,读取的温度数据经运算处理后存入数据库,同时将设定的温度限值进行比较,如发现越限,则发出报警信号,显示越限点的名称、地点和温度,并将其自动打印输出,以便工作人员进行检查和处理;如未越限,则顺序显示各个温度点的温度值。温度巡检与电子学、精密仪器学、计算机科学密切相关。尽管温度巡检技术起步早,应用广,但在核物理试验这样复杂的试验系统中,获得广泛的应用,还是七十年代以后的事情。从七十年代到现在,温度巡检技术在核物理试验中不断完善和发展,已形成了一个独立的分支,它们不再是温度检测的简单系统,而是包括实时监视、数据存储、数据采集、数据变换、数据压缩及实时处理等
6、一系列功能的复杂系统。由于许多物理现象无法通过人的直接观察来了解其规律,这就需要通过一定的仪器设备进行信息转换,成为人能够直接观察的对象,使用计算机进行这种转换时就需要数据采集与处理系统,如图1。11数据采集与处理系统Fig.1-1 The data collects system with the processing随着过程控制技术,自动化仪表技术和计算机网络技术的成熟和发展,控制领域又发生了一次技术变革,这次变革使传统的控制系统无论在结构上还是性能上都发生了巨大的飞跃。1.2 课题的意义 多路温度的测量、记录、传输在工业及民用领域应用中一直是量大面广的设备之一,所以目前多路温度巡检仪并不
7、少见。甚至其中有很多己经作为例题出现在许多关于单片机应用的教科书中,虽然在电路结构、元器件的选择和相应的软件编程上略有区别,但是它们均能以单片机为核心,完成巡检、显示、报警和记录功能。但是这些温度巡检仪都有一个共同的主要缺点,那就是只能检测的路数不能任意添加。这是由于温度的检测离不开温度传感器,而传统的温度传感器例如PT-100等都是模拟量输出,需要进行信号的放大和A/D转换只能被单片机接受,如果要增加测试路数,那末必定要增加放大器和A/D转换器的个数,接线将十分复杂。并且它们的准确性易受环境、接线、放大等因素的影响。温度巡检系统的整个工作过程都是在软件程序的控制下自动完成的。装在仪表内部EP
8、ROM中的监控程序由许多程序模块组成,每一个模块完成一种特定的功能,例如实现某种算法、执行某一中断服务程序、接受并分析键盘输入命令等。编制完善的监控程序的某些功能模块,能够取代某些硬件电路的功能。这就为设计扩展或改变仪表具体功能给了方便。例如打印的内容、格式,报警值的上、下限,报警的方式(如发光、发声)等就完全可以通过改变具体的某一段程序来实现,同时又不会影响软件中其它程序的功能。仪表在使用上更具有灵活性。在温度巡检系统中引入单片机之后,已经降低了对某些硬件电路的要求。但是测试电路仍然占有很重要的位置,尤其是直接获取被测信号的传感器部分仍应给予充分的重视,有时提高整个系统性能的关键仍然在于测试
9、电路尤其是传感器的改进。现在传感器也正在受着微电子技术的影响,不断发展变化。传感器正朝着小型、固态、多功能和集成化的方向发展。有许多国家正致力于将微处理器与传感器集成于一体,以构成超小型、廉价的测量仪器的主体。与国内己经出现的各种各样的温度巡检系统相比,国际上更是品种繁多,而国内的开发规模相对较小,开发费用相对较高,与国际相比还存在很大差距。1.3课题的内容针对目前温度检测系统的发展趋势和存在的问题,本课题主要解决以下内容:1.对不同的测试点巡回检测其温度,进行集中管理,集中控制;2.在其测量范围内可以设定任意测试点温度的报警值;3.在温度异常时能够发出报警信号和采取保护措施,能对故障及时地跟
10、踪和记录;4.功耗低,整个系统体积小;5.现场安装配线简单,调试简捷方便;6.使系统具有较强的抗干扰性能;7.有较高的分辨率,极好的可维护性。2.系统的总体设计2.1系统的总体设计思想不同的控制对象和不同的要求,应该有不同的设计思想。本系统是一个单片机系统,系统内部除单片机以外的其它硬件部分均可看作是单片机的外设部分。在本系统中,CPU在温度采集和处理时,主要是对温度值进行巡回检测、数据记录、数据计算、数据统计和整理、数据越限报警并对这些数据进行积累和实时分析。CPU不直接参与过程控制,对生产过程不会直接产生影响。温度经过采样、转换后以数字形式进入CPU,利用CPU具有运算、逻辑判断能力、速度
11、快等特点,在它内部可以对这些输入数据进行必要的集中、加工和处理,在温度参数的测量和记录中则代替大量的常规显示和记录仪表,对整个环境温度进行集中监视。另外,添加存储器,预先存入各个测试点的温度极限值和其他的相关数据,以便在处理过程中可以进行越限报警、调整参数和维修调试等。通过以上分析,本论文所做的系统的整体结构如图:2-1整体结构框图Fig 2-1 The frame diagram of the whole structure 数字式温度传感器主要是采集每个测试点的温度值,在其内部将采集到的温度值转换成数字信号,送入单片机集中进行处理。因为单片机的I/O口有限,所以每个温度传感器不可能直接接入
12、单片机,本系统采用单总线技术,将数字式的温度值通过总线循环的形式送入单片机。存储器将存储各种与温度传感器有关的数据,例如,每个传感器的相关信息、每个测试点的温度值和相关的时间数据,以实现单片机对数据的集中管理,并防止丢失。看门狗电路用来监视单片机的正常运行;实时时钟电路为巡检系统提供准确的时钟;报警电路在温度异常时送出保护信号并能进行故障点的跟踪定位。键盘在本系统中是操作员控制巡检系统的重要途径,是安装调试的必备手段。在系统需要改变某些数据,以及操作人员在出现故障时能够实时了解故障路数,对应的时间、温度数据等均应通过键盘完成相应的操作。2.2温度测量和转换原理在本篇论文中,温度测量和转换是由D
13、S18B20及接口电路来实现的,具体地说它的工作原理是:当DS18B20接收到温度转换命令后,开始启动转换。如图2-2所示。图中低温度系数晶振的振荡频率受温度的影响很小,用于向计数器1产生固定频率的脉冲信号送给减法计数器1,高温度系数晶振随温度变化其振荡频率明显改变,所产生的信号作为减法计数器2的脉冲输入,用于控制闸门的关闭时间。当计数门打开时,DS18B20就对低温度系数振荡器产生的时钟脉冲进行计数,进而完成温度测量。计数门的开启时间由高温度系数振荡器来决定,每次测量前,首先将-55所对应的基数分别置入减法计数器1、温度寄存器中,减法计数器1和温度寄存器被预置在-55所对应的一个基数值。减法
14、计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当减法计数器1的预置值减到0时,温度寄存器的值将加1,减法计数器1的预置将重新被装入,减法计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到减法计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。斜率累加器用于补偿和修正3测温过程中的非线性,其输出用于修正减法计数器的预置值,只要计数门仍未关闭就重复上述过程,直至温度寄存器值达到被测温度值,此时温度寄存器中的数值即为所测温度。2-2测温原理Fig.2-1 Measure temperature theory在默认的配置中,DS18B20的温度分辨率
15、为0.0625,以16位符号扩展的二进制补码读数形式表示,高4位表示符号位,其后8位表示整数部分,后4位表示小数点后的位数。例如,用0000011111010000表示+125,其十六进制的数字量输出为07D0;0000000110010001表示+25.0625,其十六进制的数字量输出为0191;111111*1表示-25.0625,其十六进制4的数字量输出为FF6F;用111111*0表示-55,其十六进制的数字量输出为FF90。转换完成后的温度值就以16位带符号扩展的二进制补码形式存储在高速暂存寄存器的第1、2字节。单片机可以通过单线接口读到该数据,读取时低位在前,高位在后。当符号位S0
16、时,直接将二进制转换为十进制;当S1时,先将补码变换为原码,再计算十进制值。DS18B20完成温度转换后,把测得的温度值与TH、TL作比较,若TTH或TTL,则将该器件内的告警标志置位,并对主机发出的告警搜索命令作出响应。因此,可用多只DS18B20同时测量温度并进行告警搜索。在64位ROM的最高有效字节中存储有循环冗余校验码(CRC)。主机根据ROM的前56位来计算CRC值,并和存入DS18820中的CRC值作比较,以判断主机收到的ROM数据是否正确。2.3系统设计的技术关键根据以上所述的总体设计思想,设计中需解决的技术关键性问题是单片机和温度传感器的选择。2.3.1单片机AT89C51AT
17、89C518是在我国应用较早、技术较成熟的MCS-51系列单片机,它功耗低、性能高、片内含有4KB快闪可编程/擦除只读存储器(EEROM-Flash Programmable and Erasable Read Only Memory )是一种8位微控制器,使用高密度、非易失存储技术制造,并且与80C51引脚和指令系统完全兼容。芯片上的允许在线编程或采用通用的非易失存储编程器对程序存储器重复编程,为很多嵌入式控制应用提供了非常灵活而又价格适宜的方案,其性能价格比极高。除此之外还有很多单片机例如83C552系列的增强型产品,是一种高性能微控制器,也广泛用于仪器仪表、工业控制、汽车控制、电机调速等
18、实时测控领域。它的价格高于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.7V6V;5.全静态工作:可从0Hz24MHz;6.程序存储器具有3级
19、加密保护;7.128*8位内部RAM;8.32条可编程输入输出线;9.两个16位定时计数器;10.中断结构具有5个中断源和两个优先级;11.可编程全双工串行通道;12.空闲状态维持低功耗和掉电状态。2.3.2.温度传感器各测试点的温度值经过测温元件热电偶、热电阻等,被转换为电信号,这样得到的多路采样信号经放大器、多路模拟开关及A/D转换电路,由单片机控制多通道A/D转换,分时对电压信号进行循环采样和A/D转换。这是单片机处理非电量信号的传统方法,它的优点是测温范围广。选用合适的测温元件可以检测-3003000的温度。但是一方面,单片机外电路复杂,因为32路温度需要多个模拟开关,不管是通用的并行
20、、串行总线,还是专用总线,其传送数据的信号线总是多根的,这样系统连线非常复杂,并且需要额外的接口芯片,其成本也高;另一方面,A/D转换器要占用多个I/0口向单片机输入多位的数字量,这无疑使得有限的I/0口在设计时显得较为局促;软件工作量大,且功耗也较大,线路上传送的是模拟信号,易受干扰和损耗,其性能价格比较低。使用在温度测控领域中有广泛应用的二端式半导体集成温度传感器AD590,LM35等,将采集到的电流信号经多路A/D转换器送入单片机,由单片机控制数据的采集和转换。以AD590为例,它的测温范围为-55+150,工作电压为-4V30V。由于AD590是一种电流型的温度传感器,因此具有较强的抗
21、干扰能力,适用于计算机进行远距离温度测量和控制,远距信号传递时,可采用一般的双绞线来完成,其电阻比较大,因此不需要精密电源对其供电,长导线上的压降一般不影响测量精度,不需要温度补偿和专门的线性电路。但是它仍然具有单片机处理多个模拟信号时的缺点:电路连线复杂、软件工作量大、功耗大、需要占用较多的I/0口线。选用先进的数字式温度传感器9,将采集到的数字式的温度信号直接送入单片机进行处理。随着传感器技术的发展,已经出现了先进的数字式温度传感器。数字式温度计DS1820系列采用了与众不同的原理,兼有测温和A/D转换的功能,利用温敏振荡器的频率随温度变化的关系,输出值是数字信号,所以不必使用A/D转换器
22、和相关的接口芯片,能够直接进入单片机进行数字处理。硬件电路非常简洁,有较好的线性关系和较强的抗干扰能力。为了扩大测温范围和提高分辨率,使用了低温系数振荡器和一个高温系数振荡器分别进行计数,并采用了非线性累加器来改善线性。其中DS18B20是常用的温度传感器,它采用一根I/O数据线传输数据和命令,售价低廉,广泛用于食品库、冷库、粮库,是DS1820的改进型产品。由于本系统是32路巡检,如果采用一般的温度传感器,则至少需要4条控制总线,占用I/O口资源较多;DS18B20则至多需要2条总线便可以挂接至少32个传感器,从而CPU还能留有较多的I/O口继续扩展检测路数或其它功能,使用相当灵活,所以在本
23、系统中选择了DS18B20。总体来说,本系统所要达到的效果是:第一,这种巡检系统由于需要检测的点多达几十个,为了便于用户安装使用,在设计时,应尽可能地使用各种先进的现场总线技术,力求电路最简单,安装调试最方便。第二,为保证本系统高可靠性运行,仪器本身要具备很强的抗干扰能力,为此应在硬件及软件设计上引入各种抗干扰措施。特别是系统中各部分电路的电源均为直流稳压电源供电,当系统用于复杂的工业环境时,直流电源能够不受干扰,对各部分电路提供直流电压就显得十分重要了。第三,由于硬件电路十分简洁,那么软件势必功能很强大,在软件设计时也应寻找尽可能简单完善的设计思路,保证程序易于修改、调试。第四,系统是一个实
24、时运行的系统,当主机电源因某种原因停电时,为了保证系统工作时的数据的实时性,其后备电源应能可靠工作。3.系统的软硬件设计3.1设计要求在微机测控系统中,系统的主要功能还要靠软件来实现。为了满足系统的要求,系统设计时必须符合以下基本要求:易理解性、易维护性。通常是指软件系统容易阅读和理解,容易发现和纠正错误,容易修改和补充。由于生产过程自动化程度的不断提高,测控系统的结构日趋复杂,设计人员很难在短时间内就对整个系统理解无误,软件的设计与调试不可能一次完成,有些问题是在运行中逐步暴露出来,这就要求编制的软件容易理解和修改。在软件的设计方法中,模块化设计是最好的一种设计方法,这种设计方法是由整体到局
25、部,然后再由局部到细节,先考虑整个系统所要实现的功能,确定整体目标,然后把这个目标分成一个个的任务,任务中可以分成若干个子任务,这样逐层细分,逐个实现。本系统就是采用这种模块化的设计方法。这样不但使得设计目标明确、思路清晰,而且在检错、调试时也很方便。当出现问题时,可以根据问题的种类和现象来判断是哪一部分出的问题,很容易找出故障所在和故障原因。同时,采用模块化程序结构设计方案,对于系统功能的扩充和修改也提供了很大的方便。实时性:实时性是本系统的基本要求。即要求系统及时响应外部事件的发生,并及时给出处理结果。近年来,由于硬件的集成度与速度的提高,配合相应的软件,实时性容易满足要求,特别是对于汇编
26、语言编制的软件。可测试性:系统的可测试性具有两方面的含义:其一是指比较容易地制定出测试准则,并根据这些准则对系统进行测定;其二是系统设计完成后,首先在模拟环境下运行,经过静态分析和动态仿真运行,证明准确无误后才可投入实际运行。准确性:准确性对整个系统具有重要意义。系统要进行大量运算,算法的正确性和准确性问题对控制结果有直接影响,因此在算法选择、位数选择方面要适合要求。可靠性:可靠性是系统设计最重要的指标之一,它要求两方面的意义:第一是运行参数环境发生变化时,系统都能可靠运行并给出正确结果,也就是要求系统具有自适应性;第二是在环境恶劣干扰严重情况下,系统必须保证也能可靠运行,这对整个系统尤为重要
27、。3.2数据采集和处理部分3.2.1.DS18B20芯片DS18B2011与传统的热敏电阻相比,它能够直接读出被测温度,并且可根据实际要求通过简单的编程实现912位的数字值读数方式。可以分别在93ms、75ms和750ms内完成9位和12位的数字量读取,并且从DS18B20读出的信息或写入DS18B20的信息仅需要一根口线(单线接口)读写,温度变换功率来源于数据总线,总线本身也可以向所挂接的DS18B20供电,而无需额外电源。因而使用DS18B20可使系统结构更趋简单,可靠性更高。它在测温精度、转换时间、传输距离、分辨率等方面较DS1820有了很大的改进,给用户带来了更方便的使用和更令人满意的
28、效果。具体的性能特点如下:1.温度测量范围:-55125;2.分辨率:+0.5(-10+85时);3.温度值输出:912位二进制数字量其中包括1位符号位),可由编程决定具体位数;4.转换时间与设定的分辨率有关,当设定为9位时最大转换时间为93ms、75ms,当设定为10位时最大转换时间为187.5ms, 12位时为750ms;5.用户可设置报警温度的上下限;6.供电方式有两种:外加电源电压为3.0V5.5V;寄生电源管脚图313-1 DS18B20的管脚图Fig.3-1 The pin diagram of the DS18B20DS18B20内部包含64位的闪速ROM号,开始8位是产品类型的
29、编号,接着是每个器件的唯一的序列号,共有48位,最后8位是前56位的CRC校验码,这也是多个DS18B20可以采用一线进行通信的原因。非易失性温度报警触发器TH和TL,可通过软件写入用户报警上下限。DS18B20温度传感器的内部存储器包括一个高速内存RAM和一个非易失性的可电擦除的EERAM,后者用于存储TH、TL值。数据先写入RAM,经校验后再传给EERAM。而配置寄存器为高速存储器中的第5个字节,它的内容用于确定温度值的数字转换分辨率,DS18B20工作时按此寄存器中的分辨率将温度转换为相应精度的数值。DS18B20内含程序设置寄存器,可以设置分辨率位数。该寄存器是DS1820所没有的。其
30、格式为:测试模式位。当TM=1时,寄存器处于侧试模式;当TM=0时,寄存器处于工作模式。传感器出厂时均设置为何,且不可改变。设定的分辨率越高,所需要的温度数据转换时间就越长。因此,在实际应用中要将分辨率和转换时间权衡考虑。高速暂存存储器除了配置寄存器外,还有其它8个字节组成。其中温度信息(第1、2字节)、TH和TL值第3、4字节、第6、7、8字节未用,表现为全逻辑1;第9字节读出的是前面所有8个字节的CRC码,可用来保证通信正确。用户通过单总线对DS18B20进行操作,其顺序如下:复位一ROM功能命令存储器功能命令执行/数据。它的ROM命令有5个,存储器的命令有6个,与DS1820完全一样。命
31、令的组成都是由复位、多个读时隙或/和写时隙等基本时序单元组成。完成操作时序图32如下:3-2复位时序图Fig.3-2 The diagram of the reset cycle time复位:DS18B20使用前需将其复位,然后才能执行其它命令。复位时,主机将数据线激发为低电平并保持480us,然后释放数据线,再由上拉电阻将数据线拉升1560us,然后由DS18B20发出响应信号将数据线触发为低电平。写时隙:在主机对DS18B20写数据时(主机对其发送各种命令时),先将数据线激发为低电平,该低电平应大于1ms。然后根据写1或写0来使数据变高或继续为低。DS18B20将在数据线变成低电平后15
32、60uS,对数据线进行采样,要求写入DS18B20的数据持续时间应大于60uS而小于120uS,两次写数据的时间间隔应大于3ms,时序图33如下: 3-3写时序图Fig.3-3 The diagram of the write cycle time读时序:当主机从DS18B20读数据时,主机先使数据线激发出低电平,然后释放以使数据线再升为高电平。DS18B20在数据线从高电平变为低电平的15uS内将数据送到数据线上,主机可在15uS后读取数据线以获得数据。时序图34如下:3-4读时序图Fig.3-4 The diagram of read cycle time在电路中设计了三条I/0口线,这样做是考虑到以下两点:实验过程中发现由于总线驱动能力的限制,如果一条线上挂接太多的元件,单片机有可能读不到远端的数据,应尽量缩短总线
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1