环境监控只能结构设计.doc_第1页
环境监控只能结构设计.doc_第2页
环境监控只能结构设计.doc_第3页
环境监控只能结构设计.doc_第4页
环境监控只能结构设计.doc_第5页
已阅读5页,还剩83页未读 继续免费阅读

下载本文档

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

文档简介

第1章 引言环境监控智能结构设计第1章 引言1.1概述环境监控是一个重要的课题,特别是在工业应用场合中。通过对设备仪器的工作状况的监控,能够检测设备仪器的各种的工作异常情况,从而避免设备仪器由于环境的恶化而出现故障而蒙受经济损失;而设备仪器一般都有一定的温度的环境因数特性,在不同的工作环境下其性能会有稍微的变化,在精密的仪器和设备中,这种性能的变化往往是噪声系统的误差,从而降低了系统的性能,这种变化可以看成固定的变化,可以通过补偿的方法修正或者消除,从而提高系统的性能稳定性。所以有必要通过某种方法检测不同的环境参数,诸如温度、湿度、电网电压、电磁干扰等。1.2 目前国内外研究现状目前温度检测仪表种类繁多,常用的温度检测仪表如图1-1所示。图1-1 常见温度检测仪表近年来,随着工业生产效率的不断提高,自动化水平与范围的不断扩大,对温度检测技术的要求也愈来愈高,各国专家都在有针对性地竞相开发各种特殊而实用的测温技术,并取得了重大进展。新一代温度检测元件如图1-2所示。图1-2 新一代温度检测元件1.3 课题设计的目的和意义各种环境参数中,其中最关键也最常见的一个参数就是温度参数。在实际应用中,由于设备的温度过高或者过低,造成的工作故障比比皆是,在普通的工作场合中,可以通过温度计人为的检测环境的温度,但是这种方法不方便,并且精度不高,操作性差,无法实现全自动生产。特别在对于可靠性要求很高的生产场合中,是不允许有差错的出现,因为温度造成的故障会带来非常恶劣的效果。所以在现代的工业场所中,大体上都是采用温度湿度自动控制系统,通过总线把各个地方的温湿度信息送到集中处理计算机,进行监控。传统的方式一般采用热电偶或热电阻,其输出的模拟信号,需要经A/D转换后才能送入单片机等微处理器,这样的硬件电路结构复杂,制作成本较高。近年来,各种新型温度传感器和测量方法大量出现并成功应用。单总线数字式智能型传感器技术彻底改变了传统的温度测量方法,在粮库测温系统、冷库测温系统、智能化建筑控制系统、中央空调系统等多种系统中都需要多点温度测量系统。因此,多点温度测量技术实现尤为重要。本课题基于以上的目标,制作一个综合的测试系统,可以同时检测多路系统的温度信息,并将温度信息实时的上传到上位机以供后续处理。基于AT89C52单片机、C语言和DS18B20传感器的多点温度测量系统设计,并对系统实际运行的结果数据进行分析。论文研究在理论和实践方面均具有重要意义,主要表现在:1.降低测量成本。测量现场的智能传感器测得被测对象的数据信息后,通过网络传输给精密测控仪器或高档次微机去分析处理,既节约了人力物力,又提高了贵重复杂设备的利用效率。2.提高了测量精度。论文通过温度传感器DS18B20提取12Bit温度数据,进行计算处理,使温度数据可精确到小数点后4位,这在科学研究及工农业生产中都具有重要价值。3.实现了报警测控和资源共享。添加了蜂鸣器模块,设置了温度的限度并且在PC终端上进行测量和数据采集,可以远程监控过程和数据,使测量跨越了空间和时间的限制,并且能实现测量设备和测量信息等资源的共享。1.4 论文主要内容根据现有测温系统的缺点,我们提出了一种新型的测温方案,具有以下4个特性:1.采用新型的数字温度传感器,简化测温电路。2.数字信号传输,利于有干扰现场的应用。3.建立温度采集电路和PC机之间的串行通信,实现温度数据的实时传输;并设计了温度信息数据库,实现对温度信息的存查询、显示和报表打印等功能,方便温度场的分析和模拟。4.最大限度地减少布线工作量,降低系统的资金投入。为了达到上述4个目标,我们提出了多点智能测温系统的方案,并为这个方案的实施找到了技术上的支持:1)选择DALLAS公司生产的DS18B20作为数字温度传感器,一条单总线上可挂接多个DS18B20,很方便地组成多点测温系统,分辨率可达0.0625;且省去了传统的A/D转换单元,简化测温电路。2)设计了实用的双层总线结构,分别是室内测温层和温度数据传输层。3)采用单总线作为室内测温层总线,简化布线工作;通过RS232总线实现温度采集电路和PC机之间的串行通信。实时温度高精度测量,本系统能够通过多个温度传感器(3x7的矩阵)实时检测被测对象的温度信息,测量精度精确到小数点后4位。在测量现场通过LCD显示模块SMC1602A进行本地显示。根据实际需要,所检测的温度点数是可以扩展的。1.5 多点温度测量系统整体结构分析论文研制的基于智能传感器的多点温度测量系统的整个测量系统的结构框图如图1-3。图1-3 测量系统的结构框图其主要功能是在现场对被测温度进行采集、计算和处理,其中主要包括以下5个部件的设计:a)稳压电源;b)液晶显示模块;c)温度处理控制模块;d)串行接口;e)温度传感器网络。87第2章 多点环境监测系统的总体设计第2章 多点环境监测系统的总体设计2.1具体方案我们不难发现现场总线的数字化正好解决了本系统要求的第1、2特性,而现场总线所具有的多点通信的功能又为第3、4项特性的实现扫清了道路。因此,能否选择一种适合于多点温度测量系统的总线结构就成为本系统成败的关键。目前国际上的现场总线种类繁多,没有统一的标准。既然系统设计是为了完成预期的功能,那么我们完全可以自主构建一个总线结构。温度传感器的选择是本系统的关键。由于智能温度传感器采用数字化技术,能以数据形式输出被测温度值,具有测温误差小、分辨力高、抗干扰能力强、用户可设定温度上下限、具有超限自动报警功能,并且带串行总线接口,适配各种微控制器,因此我们采用智能温度传感器。我们采用DALLAS半导体公司生产的新型数字温度传感器DS18B20。因为和其他数字温度传感器相比,它更适合本系统,比较结果见表2-1所示。可见DS18B20具有测温准确度高、总线挂接负载能力强的优势。它集温度测量、报警监测和数据通信多种功能于一体,并且兼容于DALLAS公司提出的单总线,可以很方便的组成底层总线。由于这层总线的主要功能是完成变风量空调实验室内温度的检测,所以称之为测温层总线。表2-1 数字温度传感器的比较传感器使用总线测温准确度测量范围()总线最多挂接传感器数量LM75I2C3-25+1008LM74SPI3-55+1258MAX65751-Wire0.8-55+1258DS18201-Wire0.5-55+12580100DS18B201-Wire0.5-55+12580100,分辨力可编程测温层总线由AT89C52单片机进行控制,单片机完成对总线上所有DS18B20发布命令和接收数据。另外,它还是温度传输层总线不可缺少的一部分。单片机在获取温度数据后需要进一步和PC机通信。本系统中只有一个单片机和PC进行串行数据通信,通信距离在10m以内,因此选择RS-232标准作为串行数据通信的物理层协议。这层总线结构主要实现温度数据的传输,所以称之为温度传输层总线。系统的总体结构框图如图2-1所示。AT89C52单片机P1口的8条口线作为8条单总线,每条单总线上挂接DS18B20,因此完全可以满足此系统温度场测量的需要。图2-1 测温系统总体结构框图2.2系统主要技术参数系统主要技术参数:1、检测范围:0.0099.92、可扩充到:-55+1253、检测误差:0.54、采样速率:30分钟5、硬件平台:微型计算机采用普通的PC机6、软件平台(1)Windows操作系统(2)应用软件温度数据的采集与处理数据的串行通信与存储功能2.3本论文中元器件的选择2.3.1数字温度传感器概述在20世纪90年代中期最早推出的智能温度传感器,采用的是8位A/D转换器,其测温精度较低,分辨率只能达到1。目前国外己相继推出多种高精度、高分辨率的数字温度传感器,所采用的是912位A/D转换器,分辨率一般可达0.50.0625。由美国DALLAS半导体公司新研制的DS1624型高分辨率数字温度传感器,能输出13位二进制数据,其分辨率高达0.03125,测温精度为0.2。为了提高多通道数字温度传感器的转换速率,也有的芯片采用调整逐次逼近式A/D转换器。以AD7817型5通道数字温度传感器为例,它对本地传感器、一路远程传感器的转换时间分别为27us、9us。新型数字温度传感器的测试功能也在不断增强。例如,DS1629型单线数字温度传感器增加了实时日历时钟(RTC),使其功能更加完善。DS1624还增加了存储功能,利用芯片内部256Byte的E2PROM存储器,可存储用户的短信息。另外,数字温度传感器正从单通道向多通道的方向发展,这就为研究和开发多路温度测控系统创造了良好条件。数字温度传感器都具有多种工作模式可供选择,主要包括单次转换模式、待机模式,有的还增加了低温极限扩大模式,操作非常简便。对某些数字温度传感器而言,主机(外部微处理器或单片机)还可通过相应的寄存器来设定其A/D转换速率(典型产品为MAS6625)。数字温度控制器适配各种微控制器,构成智能化温控系统;他们还可以脱离微控制器单独工作,自行构成一个温控仪。目前,数字温度传感器的总线技术也实现了标准化、规范化,所采用的总线主要有单线(l-wire)总线、I2C总线、SM BUS总线和SPI总线。温度传感器作为从机可通过专用总线接口与主机进行通信。数字温度传感器的特点是能输出温度数据及相关的温度控制量,适合各种微控制器(MCU);并且它是在硬件的基础上通过软件来实现测量功能的,其智能化程度也取决于软件的开发水平。本论文研制的温度检测系统要检测的温度范围为0.000099.0000,可选用的常用温度传感器有集成温度传感器、热电偶、热电阻等。集成温度传感器(如AD590、DS18B20等)使用方便,信号易于调理,它们的测温范围普遍窄,一般在200以下,基本可以满足要求。热电偶是工业上最常用的温度检测元件之一,其优点是测量精度高、测量范围广,常用的热电偶从-50+1600均可连续测量。但需要采用电路或软件设计等修正方法来补偿冷端t00时对测温的影响,使用不便。热电阻也是最常用的一种温度传感器。它的主要特点是测量精度高,性能稳定,使用方便,测量范围为-200600,完全满足要求,考虑到铂电阻的测量精确度是最高的,但在价格方面偏贵,所以本课题最终选择DS18B20作为实际应用的温度传感器。DS18B20数字温度传感器是DALLAS公司生产的1-Wire,即单总线器件,具有线路简单、体积小的特点。因此用它来组成一个测温系统,具有线路简单、能耗低、可靠性高的优点。DS18B20本身包括寄生电源、温度传感器、64bit激光ROM单线接口、存放中间数据的高速暂存器(内含便笺式RAM)、存储与控制逻辑、用于存储用户数据的温度上下限值的TH和TL触发器、结构寄存器8bit循环冗余校验码(CRC)发生器等8部分。它通过编程可实现9Bit至12Bit的数字值读数方式,在93.75ms和750ms内,能将温度值转化为9Bit和12Bit的数字量。而且DS18B20与单片机之间的通信是利用1-Wire方式,只要在编程方面多注意这个传感器的时序问题,就能大大简化这个系统的硬件规模,使系统结构更趋简单,同时,可靠性更高。并且能准确地读取温度信号,进而后续处理。所以选择DS18B20作为本论文的温度传感器很符合设计思路。2.3.1.1 DS18B20性能参数介绍DS18B20温度传感器特点如下:(1)独特的单线接口仅需一个端口引脚进行通讯。(2)在DS18B20中的每个器件上都有独一无二的64位的序列号存储在内部存储器中。(3)实际应用中不需要外部任何元器件即可实现测温,简单地多点分布式测温应用。(4)测量温度范围在-55到+125之间。(5)可通过数据线供电。供电范围为3.0V5.5V。(6)数字温度计的分辨率用户可以从9位到12位选择。(7)用户可定义的非易失性温度报警设置,内部有温度上、下限告警设置。T0-92封装的DS18B20温度传感器的引脚排列见图2-2所示。图2-2 DS18B20引脚图DS18B20温度传感器的引脚功能描述如表2-2所示。表2-2 DS18B20引脚功能描述8引脚封装0-9封装符号说明51GND接地。42DQ数据输入/输出引脚。对于单线操作:漏极开路。当工作在寄生电源模式时用来提供电源(建“寄生电源”节)33VDD可选的VDD引脚。工作与寄生电源模式时VDD必须接地。DS18B20内部结构如图2-3所示,主要由4部分组成:64bitROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。图2-3 DS18B20内部结构图 2.3.1.2 DS18B20的测温原理DS18B20的测温原理如图2-4所示,它运用了一种将温度直接转换为频率的时钟计数法。图2-4中低温度系数振荡器的振荡频率受温度影响很小,用于产生固定频率的脉冲信号送给减法计数器1;高温度系数振荡器随温度变化其振荡频率明显改变,所产生的信号作为减法计数器2的脉冲输入。计数器1和温度寄存器被预置在-55所对应的基数值。计数器1对低温度系数振荡器产生的脉冲信号进行减法计数,当计数器1的预置值减到0时,温度寄存器中的值将加1,计数器1的预置将重新被装入,计数器1重新开始对低温度系数振荡器产生的脉冲信号进行计数,如此循环,直到计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度,斜率累加器用于补偿和修正测温过程中的非线性,其输出用于修正减法计数器1的预置值。图2-4 DS18B20测温原理框图2.3.1.3 DS18B20自动搜索算法由于系统使用了多片DSl8B20构成温度传感器网络,因此,如何准确、有效地对每一温度传感器进行寻址成为该系统设计的一个核心问题。结合DSl8B20的实际特点和系统的需求,提出如下解决方案:首先利用DSl8B20的内部报警上限寄存器(如表2-3所示,以下简称“TH寄存器”)存放温度传感器的编号,并将其编号贴在温度传感器表面。由于TH寄存器具有掉电不丢失数据功能,因此,便把每片DSl8B20的唯一64位注册码及其编号一一对应起来。这一过程需要对DS18B20进行单独编程。然后,将确定好编号的温度传感器接入单线网络,利用DS18B20特有的单线网络自动搜索功能,即可搜寻到每片DSl8B20的注册码,再利用该注册码和相应的ROM操作指令,即可从每片DSl8B20的TH寄存器中读出相应的设定编号,实现每片DSl8B20的寻址功能。下面重点介绍一下该自动搜索功能。每片DSl8B20有唯一的64位注册码,存储在只读存储器(ROM)中,其结构如下:表2-3 TH寄存器MSB64位注册码LSB8位CRC校验码48位序列号8位家庭码其中低8位是产品的工厂代码(DSl8B20为28H),接着是每个器件的唯一序号,共48位,最高8位是前56位的循环冗余校验码。这就准许总线主机对总线上特定的DS18B20进行寻址。只有与64位注册码严格相符的DS18B20,才能对后续的操作作出反应。所有与64位注册码不符的DSl8B20将等待复位脉冲。搜索算法首先通过复位和在线应答脉冲时序将单线总线上的所有DS18B20复位。成功地执行该操作后发送1字节的搜索命令,使所有连接到单总线的DSl8B20准备就绪,开始进行搜索操作。搜索命令发出之后,开始实际的搜索过程。首先,总线上的所有DSl8B20同时发送注册码中的第1位(最低有效位,参见上述DSl8B20内部64位注册码结构)。按照单总线的特性,当所有DS18B20同时应答主机时,结果相当于全部被发送数据位的逻辑“与”。DS18B20发送其注册码的第1位后,主机启动下一位操作,接着DS18B20发送第1位数据的补码。从两次读到的数据位可以对注册码的第1位作出几种判断,如表2-4所列。然后,主机向总线上的所有器件发回一个指定位。如果DS18B20中注册码的当前位的值与该数据位匹配,则继续参与搜索过程;若DS18B20的当前位与之不匹配,则该器件转换到等待状态并保持等待状态,直到下一个复位信号到来。其余63位注册码的搜索依然按照这种读2位写l位的模式进行重复操作。按照这种搜索算法进行下去,最终除了唯一一个DS18B20外,所有DS18B20将进入等待状态,经过最后一轮检测就可得到最后保留未进入等待状态的DS18B20的注册码。在后续搜索过程中选用不同的路径或分支来查找其他器件的注册码,即可完成所有器件注册码的识别。表2-4 两次数据位与结论对照表位(实际值)位(补码)结论00当前位既有0,又有1,存在差异01当前位均为010当前位均为111总线上没有器件响应DS18B20内部存储器如图2-5所示。它由便笺式RAM和非易失性可电擦写E2RAM组成。DS18B20的高速暂存寄存器的存储分配图:图2-5 DS18B20高速暂存寄存器的存储分配图高速便笺式存储器中的第4个字节为配置寄存器,它的内容用于确定温度转换的分辨率。该字节各位的定义如下:TMR1R011111MSB LSB第04位在写操作时不予考虑,读出时总是“1”;第7位是测试模式位,用于设置DS18B20在工作模式还是在测试模式,在DS18B20出厂时该位被设置为0,即工作模式,用户不要去改动,R1、R0是可编程温度分辨率位。通过对这两位进行不同的编程,可设定不同的温度分辨率和最大转换时间,详见表2-5。由表2-5可见,设定的分辨率越高,所需要的温度数据转换时间就越长。因此,在实际应用中要在分辨率和转换时间之间权衡考虑。DS18B20出厂在R1和R0均被配置为“1”,即工作在12位模式下。表2-5 设定分辨率和最大转换时间R1R0DS18B20的工作模式温度分辨率/最大转换时间(ms)0090.593.7501100.25187.510110.12537511120.0625750当DS18B20接收到温度转换命令后,开始启动转换,转换完成后的温度值就以16位带符号扩展的二进制补码形式存储在高速暂存存储器的第0、1字节。在执行读便笺RAM命令后,可将这两个字节的温度值传送给总线命令者。DS18B20工作在12位模式下,温度字节的位定义如下:SSSSS262524MSB 高字节 LSB 232221202-12-22-32-4MSB 低字节 LSB其中S为符号位,S为0时代表温度值为正,S为1时代表温度值为负。当DS18B20工作模式依次选择11位、10位和9位时,末尾为零的低位数就分别对应于一位、两位和三位,举例说明,当工作模式选择10位时,最低两位(即2一4位和2一3位)均为。总有效位变成10位。其中,数字位占9位,符号位占1位。对应的温度计算=当符号位S=0时,直接将二进制数转换为十进制,乘以相应的温度分辨率即可,当S=1时,先把16位二进制数求补码后转化成十进制数,然后乘以相应的温度分辨率并在前面加上负号即可。DS18B20工作在12位分辨力时初始值默认为+85,部分温度与数字输出的对应关系见表2-6。表2-6 DS18B20温度与数字输出的对应关系温度()数字输出(二进制)数字输出(十六进制)+1250000 0111 1101 000007D0+850000 0101 0101 00000550+25.06250000 0001 1001 00010191+10.1250000 0000 1010 001000A2+0.50000 0000 0000 1000000800000 0000 0000 00000000-0.51111 1111 1111 1000FFF8-10.1251111 1111 0101 1110FF5E-25.06251111 1110 0110 1111FE6F-551111 1100 1001 0000FC90非易失性温度报警触发器TH和TL,可通过软件写入用户设定的报警上、下限。在完成温度转换后,DS18B20就把测得的温度值T同TH、TL作比较。若TTH或T (3-1)式中,为产品允许的最大输入电压;为输入电压;为输出电压;2V为最小输入输出电压差,电路中的外接二极管VD起输出短路保护作用。本系统所制作的稳压电源实物图如图3-3所示。图3-3 稳压电源实物图3.2 温度数据处理算法分析及程序设计3.2.1 温度数据处理算法DS18B20温度传感器的内部存储器包括一个高速暂存RAM和一个非易失性的可电擦除的E2RAM,后者存放高温度和低温度触发器TH、TL和结构寄存器。暂存存储器包含了8个连续字节,前两个字节是测得的温度信息,第一个字节的内容是温度的低八位,第二个字节是温度的高八位。第三个和第四个字节是TH、TL的易失性拷贝,第五个字节是结构寄存器的易失性拷贝,这三个字节的内容在每一次上电复位时被刷新。第六、七、八个字节用于内部计算。第九个字节是冗余检验字节。暂存存储器的前两个字节代表的数据格式是:温度低位字节(A) 温度高位字节(B)温度算法:1.SSSSS=11111b,D=-1;SSSSS=00000b,D=1。最小分辨率为0.0625。(其中S代表暂存器位数,D为符号位)2.当D=1时,温度值取TH值。3.当D=-1时,温度值取TL值。结构寄存器的内容用于确定温度值的数字转换分辨率。该字节各位的意义如下:MSB LSBTM R1 RO 11111表3-1 分辨率设置表R0R1分辨率温度转换时间009Bit93.75ms0110Bit187.5ms1011Bit375ms1112Bit750ms低五位一直都是1,TM是测试模式位,用于设置DS18B20在工作模式还是在测试模式。在DS1SB20出厂时该位被设置为0,用户不要去改动。R1和R0用来设置分辨率,如上表3-1所示:(DS18B20出厂时被设置为12位)。论文采用12Bit分辨率,R0、R1选定值为11,设定的DS18B20分辨率为12位模式,即精度为0.0625。因为12位转化时每位精度为0.0625,微处理器从DS18B20获得的温度数据分2个Byte存放在暂存器28H、29H内。其中28H中为TH内的数据,29H中为TL内的数据。为了把采样得到的2进制温度数据转化为可读的温度值,论文采用以下算法:因28H中高4位为符号位,低4位为温度数据整数高4位,29H中高4位为温度数据整数低4位,29H中低4位为温度数据的4位小数。因此可将28H中低4位移入高4位,忽略高4位符号位,同时把29H中高四位移入28H中低4位,从而在28H中构成一个完整的温度整数数据,29H中的低4位小数单独进行处理。按照12Bit温度算法:实际温度-温度整数部分+温度小数部分*0.0625 可以得到精确到小数点后4位的温度值。流程框图如图3-4所示。图3-4 12bit温度算法示意图3.2.2 温度数据处理子程序温度处理控制模块的工作过程为:上电完成初始化后,AT89S52读取存储在外存24C04中的上次已设置好的温度上下限值和保存的采样间隔值,然后进入主循环。根据采样间隔时间,MCU读取数字温度传感器DS18B20内温度数据,计算后点亮LCD以便显示当前所测温度值,并根据已设置好的温度上下限值来确定是否驱动蜂鸣器报警且控制相关设备进行温度调节。温度处理流程图如图3-5:图3-

温馨提示

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

评论

0/150

提交评论