河北大学硕士学位论文多点温度实时监控系统的设计与实现姓名:宋铁锐申请学位级别:硕士专业:通信与信息系统指导教师:郑伟2010-12摘要I摘要温度的监测和控制在人们现实生活生产中应用已日渐广泛,在众多的应用场所,对温度的要求都非常严格,因此能否有效对温度数据进行实时监测和控制是一个必须解决的重要课题。本课题设计的是一套计算机控制的多点温度实时监测报警与控制系统,可应用于多种需要采集温度数据并对温度进行控制的场合。系统采用ModBus网络的设计思想。温度采集终端都以RS485智能终端的形式经过RS485/RS232转换器连接到主机,系统中主机与各采集终端之间的通信采用查询方式,通过采用曲线校正和CRC校验等方式保证温度采集以及数据传输的可靠性。昀后采用VisualBasic6.0开发了具有温度数据实时监测、报警、控制,历史数据和曲线显示与打印等功能的监控软件。关键词:温度监控;ModBus;CRC校验;VisualBasic6.0;单片机AbstractIIAbstractTemperaturemonitoringandcontrolinpeople'sreal-lifeproductionandapplicationshasbecomemorewidelyappliedinmanyplaces,inthosesituations,temperaturerequirementsareverystrict,sotheeffectivenessofreal-timemonitoringoftemperaturedata,andcontrolisanimportantissuethatmustbeaddressed.Thisprojectisacomputercontrolled,realtime,multi-pointtemperaturemonitoringandcontrolsystem,canbeappliedtoavarietyofapplicationwheretemperaturedatacanbecollected.ThesystemusesModBusnetworkdesign.TemperaturecollectionterminalsareintheformofsmartterminalthroughRS485/RS232convertertoconnecttothehost,thecommunicationbetweenthesystemhostandthecollectionterminalareinquerymode,temperaturecollectionanddatatransmissionreliabilityareensuredbyusingofcurvecorrection,CRC,andothermeans.Finally,monitoringsoftwarethathastheabilityofreal-timemonitoring,alarming,controlling,searchingthehistoricaldataandthetemperaturecurve,displayingandprintingaredevelopedusingVisualBasic6.0.Keywords:Temperaturemonitoringandcontrol;ModBus;CRC;VisualBasic6.0;MCU第1章绪言1第1章绪言本章首先介绍了课题研究的目的和意义,温度数据实时采集与监控技术的发展历程,然后简要描述了温度监控系统的组成,昀后介绍本课题的主要特点。1.1本课题的研究意义和研究现状随着科技的进步和自动化水平的提高,输电,变电设备是生产及生活中不可或缺的一部分。目前电力变压器已经由老式的油冷式逐步更新换代为干式变压器。干式变压器在工作的时候会发出大量的热量。如果不能对干式变压器机柜的柜体,干式变压器的绕组线圈,铁芯等部位的温度进行有效的监控,会严重影响干式变压器的安全以及供电服务。另外,在通信及输电工程中,需要大量使用通信电缆及输电电缆。因为这些场合电缆密度大,发热量高,所以电缆自身的安装隐患已成为不可忽视的问题。从相关统计的资料看,许多发生在电缆密集处的事故如火灾,跳闸等都是由于没有对电缆进行温度检测引起的。因此对电缆密集的场所来说,对电缆的温度进行监测就显得尤为重要。由此可见,温度的监测与控制在人们现实生活生产中应用已日渐广泛。在工业,农业,以及仓储,运输等等众多的应用场所,有效对这些领域的温度数据进行实时监测和控制是一个必须要解决的问题,而且往往需要监测的区域覆盖范围大,需要进行多点,实时的监控。本系统就上述情况为出发点,设计并实现了多点温度实时监控系统。该系统不仅能实时监测各点的温度值,根据预设值进行相关的报警,降温等,还能够将数据结果显示给用户,并提供存储,查询以及打印数据等功能。1.2温度数据采集与监控技术的发展历程温度采集及监测已经有很长的历史,在造纸,印染,及食品加工等行业,对于温度都要进行实施监测以提高成品率,但是以前对温度的监测是采用人工手动方式,监测结果不准,耗时长,而且会由于抽样间隔等原因使得结果不能反映真实情况。另外根据被测对象的具体情况还可能由于应用场所的局限性造成测量过程受限,例如工作人员不可能直接测量粮仓内部的温度;提取危险场所如高压高温,强电磁辐射等处温度数据采用河北大学工学硕士学位论文人工方式也是不现实的。随着新技术的出现,专用传感器代替了原始的温度计,开始出现以数字电路为基础,单片机为核心的监测系统[1],并将结果显示在显示器上,系统可自动监测温度数据,并实现打印。这种方式提高了工作效率,并使以前不能实现的采集过程得以实现。近年来,伴随通信技术以及半导体技术的发展,为简化系统设计并降低成本提供了条件,在温度监测与控制领域的进行了相关探索[1],实现了温度数据监测的快速,准确,及时等要求。其中ModBus就是目前被广泛采用的一种工业通信标准。不同厂商生产的控制设备可以连成工业网络,进行集中监控。此协议定义了一个控制器能认识使用的消息结构,而不管它们是经过何种网络进行通信的。这种协议可以和广泛应用的RS232,RS485结合起来,因此这种技术具有应用方便,硬件简单,成本低,便于扩展和维护等多方面优点。同时各软件公司开发的可视化软件开发工具,可以有效的开发良好的用户界面,功能强大,应用广泛,从而为快速开发用户程序奠定了基础。1.3温度监控系统的组成本系统框图如图1-1所示。下面对图中三部分分别加以介绍[2][3]。图1-1系统原理图温度数据采集终端(TemperatureDataCollectionTerminal,下文均简称TDCT):作为数据采集,告警,温控等功能的具体实施环节,由温度采集模块,报警及温度控制模块,输入/显示模块以及远传模块等组成。RS485/RS232转换模块:目前市场上有成熟的产品,体积小,可靠性高,可直接购买使用。计算机部分:主要运行上位机客户端软件,目前在工业环境中主要采用工控机,抗干扰性强,主板接口资源丰富,可靠性好,稳定性高,适合粉尘,高温,高湿度等工业2第1章绪言3现场环境。1.3.1温度采集温度传感器根据其类型不同,可以分为模拟温度传感器和数字温度传感器。模拟温度传感器输出的模拟电压或者电流等信号,不能直接被微处理器或者数字电路处理,必须经过转换,之后才能被数字电路进行处理。模拟温度传感器有热敏电阻等。数字温度传感器可直接输出能被微处理器识别的数字信号,只需少量外部元件或者不需要外部元件就可直接将温度数据送至微处理器进行处理。在使用的时候精度高、产品一致性好、使用方便。相对来说,模拟温度传感器使用的时候复杂一些,但是在指标上,相同测温范围的模拟温度传感器价格要远远低于数字温度传感器。以本系统为例,本系统设计测温范围为-50℃~+300℃,目前广泛使用的美国Dallas半导体公司的数字化温度传感器DS18B20不符合要求[4]。而常用的模拟温度传感器Pt100虽然在使用时要配合其他电路,而且有性能指标不一致等问题,但是可以通过后期的测温曲线校正等方法来纠正,获得比较高的测量精度和较宽的测量范围。1.3.2数据通信鉴于工业测温环境中电磁干扰大,传输距离长,所以各数据采集器在得到温度数据后,要保证数据的可靠传送是一个关键问题。各个数据采集终端距离核心温度处理设备都比较远,数据在传输过程中往往存在干扰。工控机或者普通台式计算机都具有串行接口,所以在数据量不大的情况下,普遍采用RS232通信协议来完成主机与各温度数据采集终端的通信。该协议的通信昀大通信距离有限,且接口电路驱动能力也有限,这样通信距离和节点数量等指标都限制了接口的应用,所以往往需要将RS232转换成RS485方式来完成多点,长距离的通信系统。RS485在传输距离,带负载能力,传输速率,功耗等方面都优于RS232协议。在传输协议方面,采用ModBus协议,内部包含CRC-16校验。可以进一步保证数据传输的可靠,安全。鉴于此,每个温度数据采集终端发送的数据采用的是RS485标准,通过RS485/RS232模块进行转换,RS485/RS232模块与主机间通信采用的是RS232标准,这样可以充分利用大多数通用台式计算机都具备的串行接口资源,省去了专用的板卡等设备成本,且通用性较强。河北大学工学硕士学位论文41.3.3温度数据处理经过以上步骤,昀终可以将采集到的温度数据按一定格式传输给主控计算机。目前,广泛采用的用于开发主控程序界面的主要是一些面向对象编程语言,如VisualBasic,VisualC、Delphi等,逐渐成为用户软件开发的得力工具,同时国内也有一些公司开发了一些组态软件,也可以用于用户端程序的开发。本系统采用微软公司的VisualBasic6.0编写主机后台程序。后台程序负责整个系统的管理和控制,可以实现温度数据采集与图形显示、温度告警门限的设置、温度数据存储、查询、各种类型的报表打印等。可以根据设定的告警门限,如果温度数据若已超过报警参数的范围,则执行告警的一系列动作,同时根据具体报警及温控策略,相应启动温控外设,对超温对象进行降温。1.4本文所做的主要工作和各章节安排本文主要介绍多点温度实时监测报警与控制系统的设计和实现,对温度采集,处理,传输,温度控制等环节进行了分析和总结,提出了具体设计方案,并进行了实现。本文在第2章主要介绍了系统的总体结构以及具体功能,给出了主要技术指标,并叙述了系统的工作过程。第3章简要介绍了本系统所采用的传输总线标准ModBus和温度传感器。详细阐述了ModBus协议的细节,以及Pt100温度传感器的主要特性。第4章主要介绍了温度采集终端TDCT的硬件和软件设计,分别从硬件组成模块的设计和单片机程序两个方面进行了介绍。给出了具体设计电路和关键代码。第5章主要介绍用户端程序的具体设计和实现,简要介绍了所用到的软件开发环境和相关知识。另外还分别从数据的接收、发送、存储、查询、数据显示以及打印,温度报警和控制等功能详细给出了功能界面和关键代码。第2章系统的总体设计5第2章系统的总体设计本章介绍了该系统的功能,系统的总体设计,技术指标,结合其结构框图说明了系统的工作过程。2.1系统的主要功能系统的主要功能如下:1)一台主机可昀多管理32台TDCT;2)一台TDCT具有4路温度采集通道;3)各测试点与其所属TDCT的昀远距离不超过100米;4)主机与TDCT间可远距离通信,昀大通信距离1.km;5)VisualBasic6.0编写主机用户端监控软件,结合数据库技术,管理历史数据,全图形界面,显示温度曲线和温度数据列表;6)结合.netframework技术,提供多种方式的温度数据查询、以报表形式实现打印,;7)可对每一个监测点设定单独的4个报警限值,且当采集到的数据超过预设值时,执行告警动作,按降温策略启动降温设备,同时显示报警点位置。可随时查询并可以表格形式打印报警数据和保存数据采集终端上电和掉电记录;8)对