通信电源远程监控系统的研究与开发

通信电源远程监控系统的研究与开发

ID:33223514

大小:1.59 MB

页数:57页

时间:2019-02-22

上传者:U-22107
通信电源远程监控系统的研究与开发_第1页
通信电源远程监控系统的研究与开发_第2页
通信电源远程监控系统的研究与开发_第3页
通信电源远程监控系统的研究与开发_第4页
通信电源远程监控系统的研究与开发_第5页
资源描述:

《通信电源远程监控系统的研究与开发》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

武汉理工大学硕士学位论文通信电源远程监控系统的研究与开发姓名:刘国安申请学位级别:硕士专业:机械电子工程指导教师:周廷美20061101 武汉理工大学硕士学位论文中文摘要随着通信事业的发展,通信系统中的电源系统容量越来越大,结构也越来越复杂,为了保证通信系统的稳定运行,电源系统的可靠性是非常重要的。为了提高电源系统运行的可靠性,除了对电源本身做出改进,降低故障率以外,对电源系统运行状况进行监控也十分重要。本文设计的通信电源远程监控系统正是从系统的实际需要出发,对通信电源的状态进行实时监测,便于用户及时解决发现的问题,保证了通信电源的稳定运行。本监控系统是以软件工程方法为指导,以.NET作为开发平台,结合SOLSever数据库技术进行开发。通信电源远程监控系统在智能设备硬件的基础上,利用TcP/IP协议和智能设备通讯协议,实现了监控中心与通信电源之间的通讯,实现了对通信电源的遥测,遥信和遥控,并将通信电源的相关运行数据存入数据库,方便对通信电源的维护和管理。整个监控系统主要包括:(1)系统巡检,对各个通信局站逐一进行监测,监视局站运行参数和告警信息,在设备出现故障或通信出现故障时,采用声音和图像多种方式报警,提示用户及时排除故障;(2)远程监控管理,对单一局站进行监测,获取各种局站参数;(3)数据查询,将监测数据以报表形式输出打印;(4)曲线图表,对监测的模拟量数据进行分析统计,输出直观的曲线;(5)基础设定,对用户权限、局站参数和监控中心参数进行管理。本监控系统为通信电源管理人员提供一套功能强大、界面友好、操作简便的通信电源远程监控软件,达到了预期研究成果。通过深圳世纪新泰达电子有限公司的应用实践表明,通信电源远程监控与管理系统具有实用价值。关键字:TcP/IP;通信协议;远程监控;通信电源 武汉理工大学硕士学位论文AbstractWiththedevelopmentoftelecommunicationsystem,theTelecomPowerSupply'scapacityhasalsogrownanditsstructurehasbecomemorecomplex.TheTelecomPowerSupply’sreliabifityisveryimportanttokc印thetelecommunicationsystemoperatingefficientlyandeffectively.BesidesimprovingtheTelecomPowerSupplyitself,itisalsoveryimportanttomonitoritandmakenecessaryadjustmentsasandwhenrequired.TheRemoteMonitoringSysteminthispaperhasbeendesignedkeepinginviewtheactualrequirementsoftheday.ThissystemmonitorstheTelecomPowerSupply'sreal-timestate,andensuresthestabilityoftheTelecomPowerSupply.ThissystemfollowstheideaofSoftEngineering,andhasbeendevelopedontheplatformof.NETbyusingdatabasetechnique.TheRemoteMonitoringSystemisbasedonthehardwareoftheaptitudeequipment,whichrealizescommunicationbetweentheMonitoringCenterandtheWorkStationsusingTCP/IPprotocolandaptitudeequipmentprotoc01.Also,itmeasures,monitorsandcontrolstheTelecommunicationPowerSupplythroughinformationgatheringandmaintainingadatabaseforitsbettermanagement.Thesystemincludes:(1)Monitoringthecycle,thecycleofeachstationinthesystemandmonitoringtherunparameterandalarminformationofeachstation,andalarmingtheusersbysoundandvisionwhentrouble;(2)Theremotemonitoringandmanagement,monitoringerasinglestationandobtainingtheinformationabouttheparameterofthestation;(3)Queriesaboutdata,outputintheformofreportsformeasurementdata;(4)Thecurvechart,analysisoftheanalogdataobtMnedfromstationsandoutputofthesalientcurvechart;(5)Thefoundationsetting,managementofusers’power,stationparameterandtheparameterofmonitoringcenter.TheRemoteMonitoringSystemprovidesasetofremotemonitoringsoftwares,whichispowerfulinfunction,user-friendly.ItisconvenientinoperationfortheTelecomPowerSupply’smanagerbyrealizingtheanticipatedproduction.ThepracticeofShenzhenShijiXintaidaElectronicsCo.,Ltd.provesthattheRemoteMonitoringSystemforTelecomPowerSupplyisvaluableintoday’sn 武汉理工大学硕士学位论文high-techenvironment.Keywords:TCP/IP;communicationprotocol;remotemonitoring;TelecomPowerSupply111 武汉理工大学硕士学位论文第1章绪论1.1课题研究背景随着通信事业的发展,通信网络日益庞大。信息时代对信息的基本要求是准确、可靠、高效,这就要求信息数据在网络中进行处理、存储、交换和传输等的各个环节中误码率尽可能地低,以保证向终端用户提供连续和准确无误的信息资源,这些对通信设备提出了较高的技术要求。不可忽视的是,作为通信网络动力基础的通信电源,其供电质量的优劣和可靠性的高低直接影响着通信设备的运行质量和可靠性,并进而影响到整个通信网络的运行质量和可靠性。通信电源系统是通信网络的核心组成部分之一,通信电源向通信设备提供交、直流电能源,在通信网中的位置极其重要,被喻为通信网和通信设备的“心脏”。如果一个电话局的供电系统发生故障而中断供电,就会使整个电话局瘫痪,造成地区政治、经济的损失;如果一个长途干线通信站或通信枢纽局因供电故障而瘫痪,就会造成更广泛的经济损失和不良的政治影响。随着我国国民经济的快速发展,通信网络的建设也得到了迅速的发展。信息产业不仅成为我国国民经济发展的支柱产业,也成为与全国人民日常生活休戚相关的民生基础。可想而知,作为如此重要的通信产业的动力保障,性能稳定、可靠的通信电源其重要性也就不言而喻了。1.2课题研究的目的和意义随着近年来我国电信事业的迅速发展,通信网络规模的不断扩大,相应地电源设备的数量和种类都大大增加,维护工作量也随之骤增。要解决这食矛盾,惟有通过建设监控系统,实现对通信电源和机房环境的集中管理和维护,加强以本地网为中心的维护力量,削减支局维护人员,最终实现通信局站的无人值守【1I。通信电源集中监控系统可大大提高电源维护工作的效率:提高电源设备运行的稳定性和可靠性;提高电源设备运行的经济性,降低运行成本;提高电源维护的管理水平【2Jo实施通信电源的集中监控和管理,代表了通信电源先进维护管理技术和手段的发展方向,对实现与通信技术相适应的现代化电源维护和科学管理有着重要的意义pJ。通信技术和Web技术在通信电源集中监控系统中的应用,为通信电源数据的采集整理和分析统计,为通信电源的遥测、遥信、遥控提供了更加 武汉理工大学硕士学位论文便利及时的工具。1.3国内外研究现状早期进行的电源监控,只能反映少量电源设备运行状况的开关量。电源设备与环境参数的信息混在传输设备或交换设备的监控系统中进行传送和处理。一般由传输设备或交换设备的监控系统提供1至2个字节供电源与环境监控使用。这种第一代的电源监控系统,形式和功能都较为简单,所能提供的信息仅为少量开关量信号。在实施了这种监控后,维护人员虽然能够更快地掌握系统在哪出现了故障,但知道故障时,系统供电也出现了问题。这种维护方式仍就是被动的,不能真正大幅度减低电源维护的工作量和提高电源维护质量.第二代的监控管理系统具有较全面的遥测、遥信和遥控功能,可以通过记录模拟量信息来分析设备的运行状况。1988年,原邮电部设计院与广州市电信局合作承担了原邮电部科技司下达的对通信电源、空调及环境做集中监控管理的科研项目,并且在广州市电信局长途枢纽楼进行了实施。这是我国在通信电源领域第一次建设的以一定理论为基础,经过开发研制,最终实施的第二代集中监控管理系统。近几年来,我国通信电源系统现有的分散看管式的旧维护体制已越来越不适应新的形式,使得电源监控系统向节约运行成本、提高运行性能的少人、无人值守和系统的集中维护管理的方向发展,特别是近两年来,随着电源技术的发展,各电源设备的可靠性与智能化不断提高,计算机技术的飞速发展,都给实现集中监控,少人、无人管理提供了技术基础【4l。目前,国内外许多通信行业的厂商相继推出了各种监控系统。国内如深圳华为通信股份有限公司的PSMS动力设备及环境集中监控系统,香港丰联企业有限公司的联讯--2000通信电源和空调设备集中监控系统,台湾P-DUKE的通信电源监控系统等等;国外如瑞典ERICSSON公司的EnergyMaster系统中的电源监控子系统,美国Vicor、日本Cosel等也都有其各自的通信用开关电源监控系统。还有像洲际、艾默生、中达、大诚、中兴等约二三十家公司都在集中监控上投入了大量的人力物力。移动通讯建设电源监控系统的步骤相对较慢,但对于移动通讯站点众多又分散的情况,集中监控更显得迫切需要f5J。图1一l是艾默生PSMS动力设备及环境集中监控系统示意图f6J,整个系统可以监控低压配电柜、开关电源、电池组、智能空调、智能油机、环境变量及智能门禁等。2 武汉理工大学硕士学位论文·—-通信段一宅獗段图1一l艾默生PSMS动力设备及环境集中监控系统系统示意图我国电源设各集中监控系统的发展经历了十几年,无论在技术上、系统建设规模上,还是在系统运行维护上,都有了长足的进步。监控系统建设数量不断增加、系统规模不断扩大:监控技术日趋成熟、系统模式日趋稳定;相关技术不断发展与监控技术相互促进;监控系统的发展与运行维护体制的转变相互促进;相关标准规范日趋完善;监控市场逐步走向规范化f71。通信电源集中监控技术在发展过程中也暴露了许多问题,归纳起来主要有以下几个方面:(1)可靠性问题:按照要求,通信电源集中监控系统的采用不应影响被监控设备的正常工作,但在监控系统的建设中却有相反的情况发生。另外监控系统的软硬件质量不过关,也影响了监控系统的使用。(2)可维护性问题:监控系统必须是一个“可持续发展”的系统,这就要求系统的软硬件必须采用模块化设计,软件平台采用性能优越的通用平台,硬件和布线合理设计。(3)智能化问题:监控系统的功能不断完善并趋于稳定,但作为计算机系统的重要优势的故障诊断分析、预告警、数据处理统计等智能化特性并没有得到很好的发挥。3塑型蛩灏锚一|奏|一一种黝徽一 武汉理工大学硕士学位论文通信电源集中监控系统的发展趋势如下:(1)综合化。综合化是通信电源集中监控系统发展的一个必然趋势。监控系统应由传统意义上的电源监控转向以电源监控为主,包含局站环境、消防、安防管理以及基础、配套设施监控管理在内的通信电源及机房综合监控系统。(2)网络化。网络化是监控系统发展的另一个必然方向,这也同时是实现综合化的前提。监控系统本身就是一个网络化管理系统,在完善本地网监控中心(Sc)的前提下建设省监控中心(PSC),更有利于通信电源的监控和监管。(3)智能化。智能化也是监控系统发展的一个重要方向,因为这一点最能体现计算机的优势,而恰恰是目前通信电源集中监控系统最为薄弱的环节。积极开发监控系统的潜能,加强自动化,可提高其实用性,减轻维护人员的负担,减少工作量。提高电源维护的效率和可靠性。(4)Web技术。近些年,许多网络软件和网络管理软件都运用了Interact浏览器技术,并采用了浏览器方式的界面。在这种方式下,系统软件结构变得非常简单。这种结构在理论上可以无限制地扩充,而不会影响全网的实时性。1A论文的主要研究内容本文以深圳世纪新泰达电子有限公司通信电源集中监控与管理系统的设计开发为目的,采用目前的ASP.NET作为开发平台,进行了以下几方面的工作:(1)对所研究的项目进行实地调研,查阅了相关的大量专业文献,对通信电源监控系统的发展情况及理论进行了深入地学习和研究。(2)对通信电源系统的结构和通信电源监控系统的硬件组成、结构和功能以及系统的网络结构进行深入地了解,为下一步系统设计打下良好的基础。(3)通过系统的需求分析和对开发平台的比较与选择,建立了通信电源远程监控系统的总体设计方案。(4)在通信电源远程监控系统总体设计方案的基础上,进行了监控系统数据库设计、模块划分以及各模块的流程设计,代码设计、单元测试。(5)完成通信电源远程监控系统程序后,对该系统进行集成测试、确认测试和各种文档的归纳整理。论文结构如图l一2所示。4 武汉理工大学硕士学位论文图l一2论文结构框架图1.5本章小结本章旨在使读者对本论文有一个大致的了解,简要介绍了课题研究背景,阐述了研发通信电源监控系统的且的意义,并对通信电源和监控系统的发展历程及现状进行了简要的分析。最后介绍了论文的主要研究内容及组织结构。5第一章绪论[第二章通信电源远程监控系统组成、结构和功能』上【第三章监控系统网络通信模块设计上上『第四章通信电源监控系统的设计与实现』上第五章总结与展望 武汉理工大学硕士学位论文第2章通信电源远程监控系统组成、结构和功能2.1通信电源系统的结构通信电源是通信网络的动力基础,作为通信电源监控管理系统,它所监控的最主要和最重要的内容就是通信电源系统了。这里首先对通信局站的电源系统做简单的描述。通信电源系统是将交流市电经过整流设备转变为直流电,为程控交换机等通信设备供电的电流转换设备的集合。随着通信事业的飞速发展以及社会对通信可靠性的要求,通信设备对电源的要求也越来越高,由此带动了通信电源设备的迅速发展。传统的通信局站电源系统一般都采用集中供电方式,它由交流供电系统、直流供电系统和相应的接地系统组成。虽然集中供电系统便于维护管理,但也存在可靠性差、投资大、电能耗损大等缺点,因此分散供电方式将是通信电源系统的发展趋势。这种方式为每一个通信机房甚至通信设备都配置了小型电源系统,包括整流模块、交直流配电和蓄电池组。集中供电和分散供电方式都应用于大型通信枢纽的供电,在光缆无人值守中继站和微波无人值守中继站,通常采用的是混合供电方式,其通信容量小,电源设备也较少,通常靠蓄电池组保证不问断的电流供应。本文所涉及的通信电源系统都是采用混合供电方式,其组成如图2—1所示。f调压器卜一直(a)交-1整流器r一流I配流电(a)厂配日屏L日电屏(b)rI茎些pL(a)不间断(b)可短时问断图2—1混合供电方式电源系统组成6 武汉理工大学硕士学位论文2.2监控系统的组成实施通信电源监控系统的目的,就是要将电源维护人员从繁琐的维护工作中解放出来,提高劳动生产率,降低设备运行成本和维护成本,提高设备运行的可靠性和经济性。要达到这个目的,监控系统首先要解决的问题,就是如何获得设备的实时运行数据一设备的实时运行数据是反映设备运行状态、性能、环境、供电质量和用电情况的重要依据。现代传感器技术,采用各种各样的传感器和变送器,利用电磁感应、热电转换、光电效应、红外、微波等技术,解决了数据的采集和转换的问题。电子技术和单片机技术的发展,使得系统对设备的远程控制(自动控制技术中称为遥控)成为可能。总线技术、现代通信技术和计算机网络技术,为数据的传输和系统的组网问题提供了满意的解决方案。先进的计算机技术,高速率的CPU,大容量的存储器、性能优越的操作系统、功能强大的数据库系统,以及“量身定做”的监控软件,很好地解决了数据的处理、管理和维护问题。此外,如何把计算机处理的内容翻译成人们所习惯的、形象直观的表现方式,如何把鼠标、键盘的简单操作转换成计算机所能识别的命令,是人机界面所必须解决的问题。这些在很大程度上依赖于监控软件的设计。以上几个方面,就表达了监控系统的基本组成,如图2—2所示。维护人员;嗡控系统;临控模块}电源设备图2—2监控系统的基本组成部分7 武汉理工大学硕士学位论文当然,一个完善的监控系统还需要承担一些诸如设备管理、人员管理等等的辅助管理工作,还需要解决精度、可靠性、容错能力等等的一系列问题。目前,本系统中基站,机房电源集中监控系统的监控模块采用XPMS系列集中监控屏,负责电源设备运行状态的各种参数采集,并将这些参数传给监控中心软件;同时监控中心软件向监控模块下达各种遥控、遥测命令,由监控模块对电源设备进行操作。XPMS系列集中监控屏具备的功能如下:(1)XPMS系列电源集中监控屏配备RS232C远端通信接口。通过用户提供的通道组成集中监控系统,以实现遥测、遥信、遥控及遥调等功能。(2)XPMS系列监控屏具备有完备的电源自动管理功能。其中包括均/浮充自动管理功能,电池温度自动补偿,防过充电池充电限流功能。(3)XPMS系列监控屏配备有大容量的存储器,可以保持1433项告警信息108项命令信息以及多达64个设备的运行状态,告警状态和模拟量信息。(4)XPMS系列监控屏具备远端提取告警历史记录和命令历史记录功能。(5)XPMS系列监控屏提供了十二路告警干接点输出接口和四路干接点输入接口。(6)XPMS系列监控屏采用大屏幕液晶显示器,全汉化显示。薄膜开关组成的键盘,美观大方。各种操作均采用中文菜单,操作简便明了。(7)配接XTD-XEMU环境监控箱,配接不同的传感器可实现地湿、红外、玻璃破碎、烟雾、门禁、两路温度、两路湿度等环境监测。2.3监控系统的基本结构工业计算机控制系统经历了从集中式控制系统向分布式控制系统的发展过程。当集中式控制系统面临可靠性和处理速度两大难题时,分布式控制系统就应运而生了。现在监控系统的基本结构就采用了分布式结构。如图2—3所示。图2—3分布式控制系统8 武汉理工大学硕士学位论文分布式控制系统的最大特点就是管理的集中和控制的分散,因而又被称为集散控制系统。具体地讲,它把对全局的管理和协调工作集中在主控计算机上,而把具体的对设备的监测和控制、局部的管理、阶段性的数据处理等工作交给分散在不同地点的前端计算机来实现。这样做的结果使得监控过程条理清楚,层次分明,既分散了系统故障的危险,提高了系统可靠性,又分担了系统负担,使多项工作协调并行处理,提高了系统的实时住。同时这种结构具有一定的灵活性,有利于系统的扩展。监控系统的五大组成部分中,数据采集和控制命令执行都在前端电源设备处实现,可以并称为蔚端采集控制部分;数据管理和人机界顽主要在上层计算机即通信电源监控中心实现,可以并称为中央处理和管理部分。这样一来,监控系统的基本结构就勾勒出来了,如图2—4所示。这是一个分支树型结构,即多个前端采控部分通过数据传输网络,与中央数据处理和控制部分进行双向的通信。显然,这是一个具有两层结构的分布式计算机控制系统。实际运用的监控系统比这个结构要复杂,但都可以看成是由这个基本结构叠加组合而成的。图2—4监控系统的基本结构9 武汉理工大学硕士学位论文2.4监控系统的层次化结构和功能按照各级通信电源设备维护管理单位的不同职能,在一个省的范围内,可以将整个监控系统划分为省监控管理系统、城市(地区)监控管理系统、区域(县)监控管理系统以及局(站)监控管理系统等四个管理层次,分别负责不同范围内的各通信局(站)的电源设备的监控和管理。通常将这几个不同层次的系统的监控管理中心分别称为省监控管理中心(PSMC或PSC)、城市(地区)监控管理中心(cSMC)或监控中心(sC)、区域(县)监控管理中心(DsMC)或监控站(SS)、局(站)监控管理中心(LSMC)或监控单元(SU),其中局(站)监控管理系统还可以分出一个直接与设备打交道的监控层,称为设备监控单元(EsU)或监控模块(sM),是监控系统的最底层。借用行政区划的级别,将上述五个层次的监控中心及中央撒控单元分别简称为:省中心(PsC)、地市中心(sc)、县中心(ss)、局站中心(su)和监控模块(sM)。一个结构完整的省内的监控系统,可以按管理要求和空间分布分成如上所述的省中心、地市中心、县中心、局站中心和监控模块等五个层次。这些不同层次的系统分别被赋予不同的功能,它们协调工作,交换信息,共同完成整个监控系统的监控和管理任务。2.5监控系统的网络结构监控系统是由各不同层次,不同功能的计算机和通信设备组成的一个计算机网络,确定一个合理的网络结构对系统的性能和功能非常重要。前面已经介绍了监控系统的层次化结构,下面将按照每一个层次的具体要求,分别对它们进行网络拓扑结构设计,最后再将它们进行组合,得出监控系统总的网络拓扑结构。在最底层,也就是设备监控系统中,电源和空调设备被分散安装在不同的机房之中,机房的环境监测点也同样分布在各个机房之中,这些设备或环境的监测参数通过各自的或公共的监控模块上传至局站监控中心。监控模块和采集点及控制点之间的对应关系是一对多,与设备之间的对应关系也是一对一或一对多。而从监控角度来讲,这些监测点或设备之间显然是互不相关的。因此在监控模块这一层可以采用星型的网络拓扑结构(一对一可以看成是最简单的星型结构)。在一个通信局站内,通常有许许多多的设备,需要通过不同的监控模块来进行数据采集和控制,智能设备还自带有监控模块,这些监控模块只需要与局站中心计算机进行通信,而它们之例一般没有相互传送信息的必要,不需相互连接。因此局站监控系统的网络拓扑结构也是星型结构。 武汉理工大学硕士学位论文县监控系统包括一个县中心和若干个局站中心以及其所连接的各个监控模块。各局站中心将本局站内各监控模块传送上来的数据信息加以处理后向县中心传送,县中心要向各局站中心下发监测和控制命令:而各局站中心之间一般也不需要互访,无须相互连接。因此县监控系统也采用星型网络拓扑结构。同理,从县中心到地市中心,从地市中心到省中心,也就是地市监控系统和省监控系统也都采用星型的网络拓扑结构。综上所述,整个监控系统的网络拓扑结构是一个由多层次的星型结构的计算机网络逐级汇接而成的一个树型结构,如图2--5所示。因此,从网络管理结构的角度,监控系统可以定义成是一个自下面上的逐级汇接的树型分布式计算机管理控制系统。图2—5监控系统的网络结构2.6本章小结本章首先介绍了通信电源的结构,接着介绍了通信电源监控系统的组成、结构和功能,最后介绍了监控系统的层次结构和网络结构。使读者对通信电源和其监控系统硬件组成和网络组成有了一个初步的了解。 武汉理工大学硕士学位论文第3章监控系统通信模块设计与实现通信电源监控系统是一个计算机网络系统,通过各种网络将系统的各部分以一定的方式联系在一起。计算机网络是“相互连接的独立自主的计算机系统的集合”。这里的“相互连接”是指按照一定的网络协议,将不同的计算机通过一定的接口和通信线路连接在一起,这里通信线路包括传输介质、网络连接设备等;“独立自主”是指各台计算机分开时都是一个独立运行的系统,各系统之间不存在相互决定或主从关系。因此,对监控系统的组网,只需要把选定的各种网络组件与计算机系统按照一定的规则连接在一起,并对它们作必要的设置。当然要让一个系统正常运行,除了必要的连接和设置外,还必须要有相应的软件、协议来支持。3.1TC聊P协议两个系统中实体之间(如两台计算机之间)通信的过程是十分复杂的。为了减少协议设计和调试过程的复杂性,通常按照结构化的层次方式将协议划分成若干个层次,每个层次完成一定的功能,各层又分别建立在其下层的基础上。如图3—1所示.用户An+l层rt层n.1层用户B图3—1层次、协议和接口的关系层接口一-⋯一,层接口对于结构化分层的网络协议,~般将层与协议的集合叫做网络体系结构。比较著名的有国际标准化组织(IS0)提出的丌放系统互联体系结构OSl、美国国防部提出的TCP/IP网络体系结构等。ISO/OSI参考模型是为了实现丌放系统 武汉理工大学硕士学位论文互联所建立的分层模型,其目的是为了异种计算机系统的互联提供一个共同的基础和标准框架,并为保持相关标准的一致性和兼容性提供共同的参考。其参考模型如图3—2所示。用户{。●应用层7应用层协议表示层6表不层协议应用层会话层5会话层协议表示层传输层4传输层协议会话层网络层3网络层协议传输层数据链路层2数据链路层协议网络层1物理层协议数据链路层物理层物理介质图3—2ISO/OSI参考模型TCP/IP协议又称Intemet协议,是世界上最流行的开放系统(非专用)协议簇,因为它可以在任何交互联接的网络之间进行通信,包括LAN和WAN通信。TCP/IP实际上是由一套通信协议簇组成,其中最著名的是传输控制协议(TCP)和网际协议(IP),此外还包括了地址解析协议(ARP)、用户数据报协议(UDP)、文件传输协议(F1口)等一系列低层和高层协议,已形成了一个完整的网络体系结构。由于TCP/IP是先于OSI参考模型开发的,所以并不符合OSI的标准。TCP/IP网络体系结构分为4层,从下到上依次是网络接口层、网际层、传输层和应用层,他们与OSI参考模型的对应关系如图3--3所示。TCP/IP及其参考模型与OSI模型一样,也有其不足,如它没有明显地区分服务、接口和协议的概念,模型不通用等,但这并不影响它的应用。直到今天,TCP/IP依然是流传最广、使用最多的网络协议。 武汉理工大学硕士学位论文应用层表示层会话层传输层网络层数据链路层物理层OSI参考模型NFsFTP、Tclllct、SMTP、XDR应用层DNS、SNMP、TFTPRPCTCP、UDP传输层路由选择协议、m网际层ARP、RARPEthemet、TokenRmg、帧中继、X.25、网络接口层其他图3--3T(珊"模型与Iso/OSl参考模型的对比3.2智能设备通信协议两个计算机系统要实现相互通信,除了必要的硬件连接外,还必须通过一定的通信协议。监控系统相关的通信协议主要有三类。第一类是接口与总线协议,如RS.232通信协议。这类协议规定了接口与总线的机械、电气、功能和过程特性,以及通信方式(单I、双工)、通信速率、传输距离等内容,主要对应OSI的物理层,有的也包括数据链路层甚至高层的协议(如现场总线的协议)。这类协议是一切智能控制系统和计算机网络的基础。第二类是网络通信协议,包括与计算机网络有关的各层协议,如TCP,lP、HDLC、局域网协议以及广域网协议等。这类协议为计算机系统之间的互联互通提供了底层的支持,为其上的各种应用提供了实用的网络平台。第三类是监控系统特有(专用)的通信协议,包括智能设备的通信协议和各级监控子系统之间的互联通信协议。智能设备通信协议实现SU监控主机与各智能通信模块(sM)之间的通信,各级监控子系统之间的互联通信协议实现SS-SU、SC.SS、PSC.SC之间的通信。这类协议通常运行于前两类协议的基础之上。广义的智能设备包括被监控的所有带有智能管理控制模块并向外提供通信接口的电源设备、空调设备、蓄电池监测仪、配线架、传输电源列柜、门禁系统等设备,以及经过智能化改造的非智能设备。在监控系统中,这些设备及系 武汉理工大学硕士学位论文统的智能管理控制模块或改造后加装的智能通信接口模块都属于SM(监控模块)。智能设备通信协议即各SM与监控主机之间的通信协议。参照OSI参考模型,智能设备通信协议通常包括物理层、数据链路层和应用层内容,即OSI的第一、二、七层。其中物理层包括通信接口的机械、电气特性定义、传输介质、连接和拓扑方式等,它提供了二进制码传输的物理手段,一般引用标准的物理标准的物理层接口协议。数据链路层规定了二进制码组织、差错控制、流量控制、差错校验、同步等内容,以保证信息可靠的传输。应用层规定了协议数据的定义、命令格式和内容等,对于通信双方来说是真正有意义的信息。智能设备的接入方式主要有两种:直接接入和通过协议转换器接入。(1)直接接入方式。监控系统按照智能设备所提供的通信协议编写特定的通信模块,或智能设备所采用的通信协议正是监控系统所采用的标准通信协议是,通信双方就有了一套能够相互理解的“语言”,一旦建立连接,就可以进行正常通信了。这种通信方式称为直接接入方式。(2)协议转换器接入方式。这种方式是指在智能设备不能提供自身的协议、或智能设备所提供的协议不适合监控系统直接接入(如采用非标准通信速率)、或监控系统有必要统一其协议而智能设备只能提供非标准协议时,通过在智能设备和监控系统之间增加一级或多级协议转换器,把智能设备的通信协议转换成监控系统所支持的通信协议,以达到通信目的。协议转换器通常用单片机来实现,它同时包括了接口和协议的转换,在通信过程中起“翻译”的作用。综上所述,两种接入方式各有千秋。直接接入方式简单易行,但系统响应时问易受智能设备自身响应时间影响;协议转换器接入方式可以简化监控系统前端处理过程,甚至提高系统总体实时性,但成本较高。本系统采用协议转换器接入方式。为了统一智能设备通信协议,方便接入监控系统,原电信总局于1999年颁布了《通信局(站)电源、空调及环境集中监控管理系统前端智能设备通讯协议》(中国电信交换[19991625号)(以下简称《智能设备通信协议》或电总协议)作为标准协议,2003年信息产业部又以该协议为基础制定监控系统智能设备通信协议的行业标准。(1)总述、通信接口与通信方式。《智能设备通信协议》作为一个通用的标准协议,首先对协议的范围、引用标准、定义、符号和缩略语以及监控内容等作了详细说明。由于是通信协议,物理接口采用了常见的RS232、RS485和RS422等异步串行通信接121,信息传输格式为起始位1位,数据位8位,停止位l位,无校 武汉理工大学硕士学位论文验。鉴于监控系统的分布式结构,通信采用主从式,监控系统的前置机作为主机,智能设备监控模块为从机;主机呼叫从机并下发命令,从机收到命令后返回应答(响应)信息;主机500ms内未收到从机应答或接收到应答错误信息,则认为本次通信过程失败。这样的通信机制不论对主机还是对从机都是易于实现的。(2)信息的基本格式。对命令和应答信息,该协议规定了一个基本格式,如图3—4所示。其中定义了信息帧的起始符、终止符、校验和以及协议版本号、设备地址、命令和应答的控制标识码、返回码、数据信息长度和数据信息内容等字段。有些智能设备的通信协议中没有规定这样一个严谨的帧,而是采用简单字符格式的命令,应答也采用无任何校验而仅仅靠一个起始符和一个终止符定义的一段数据“串”,虽然简单易行,但可靠性较差。序l23456789号字节1l12LENID,22l数格SOIVERADRC玎)lC玎)2LENGTHDfFDCHKSUMEOI式图3—4‘智能设备通信协议》规定的信息帧基本格式信息帧中的起始符和终止符是用于在信息传输过程中进行帧的界定和同步,类似与数据位传输中的起始位和终止位。校验和定义为将信息帧中除起始符、终止符和校验和码本身之外所有实际传送的各字节累加求和,取结果的低二字节(即累加和模25536取余)再取反加1。信息帧中其他字段的定义大多属于OSl应用层的内容,如版本号、设备地址、控制标识码、数据格式及内容的定义等。其中CID2是作为返回码RTN的,正常时为00H,其他值则代表着不同的错误类型。另外值得注意的是数据信息长度字段LENGTH,它在定义中由两个字节组成,其中低字节和高字节的低半字节这12位代表数据信息内容的实际长度,而高字节的高半字节则是该字段低12位的校验和,计算方法是低12位以4位为单位累加求和,取结果的低4位(即累加和模16取余)再取反加1,如图3—5所示。这样的双重校验无疑增加了接收方的检错能力。16 武汉理工大学硕士学位论文高字节低字节校验码LcHKSuM长度标识码LENID(表示玳FO的传送中ASCII码字节数)DisD¨D13D12D11D10DoDs队DeD5DdD3D2DlDo图3—5基本格式中LENGTH字段的定义(3)传输编码方式与传送顺序。协议中对信息传输时的编码方式作了如下的规定:“在基本格式中的各项除S01和EoI是以十六进制解释(SOI=7EH.EOI=0DH),十六迸制传输外,其余各项都是以十六进制解释,以十六迸制档cⅡ码的方式传输,每个字节用两个AscⅡ码表示,即高4位用一个AscH码表示,低4位用一个ASCII码表示。”这说明该协议为了提高检错能力,除帧起始符和终止符外所有内容都用AsCn码方式的十六进制编码,用两个字节来代替一个字节的内容。同时也可使接收方很容易找到帧头和帧尾,不至于与帧内的信息内容混淆起来。这样实际传送的字节数将近两倍于协议帧格式中定义的字节数,如图3—6所示。序号123456789协议定义1l12LENID,221的字节数实际传送●l24LENID41的字节数格式(内SOIVERADRCrDlCID2LENGTHINFoCHKSUMEOI容)图3—6帧格式中实际传送的字节数根据协议规定,整个帧的传送顺序是各字段从左到右依次传送;除浮点数 武汉理工大学硕士学位论文是先传低字节再传高字节外,所有包含多个字节(指协议定义的字节数)的字段或数据格式都是先传高字节再传低字节;所有ASCII码方式的十六进制编码内容都是先传高4位的ASCII码再传低4位的ASCII码。(4)高层内容。该协议对各种数据格式及其含义、编码内容、通用命令内容等作了定义。该协议对监控数据的访问方式是采用分类别顺序访问的,这种方式处理简单,仅用一条命令就可以获取大量信息,但当监控系统需要了解其中少量数据内容时,许多无用却占据着传输时间的数据将被抛弃,势必降低了效率。3.3监控系统的通信3.3.1TCP连接的实现上位机与下位机的Socket连接是在新创建的进程中建立的。上位机根据下位机的职地址和默认的端口号创建Socket,本系统采用可靠的TCP连接模式,调用TcpClient类建立连接。TcpClient类提供了一些简单的方法,用于在同步阻塞模式下通过网络来连接、发送和接收流数据。如果因为口地址错误或其他原因无法建立连接,主线程将报警并进入阻塞状态;当上位机建立Socket连接后,要发送和接收数据,使用GetStream0方法来获取一个NetworkStream。调用NetworkStream的BeginWdte0和BeginRead0方法与远程主机之间发送和接收数据,使用BeginWdteoffflBeginRead0方法进行通信的好处是使用不同的线程来处理I/O。最后使用Close0方法释放与TcpClient关联的所有资源。实现通讯协议的程序如下,若无法建立TCP连接,则捕捉错误返回给ConectStation(stringip,intport)函数false值;若建立连接,则创建网络数据流,将传输数据先按照智能设备通信协议(此处为电总协议)建立数据流,然后利用网络数据流传输至已连接的口地址端口处。TcpClientmyClient;/ffCP连接套接字NetworkStreammyStmm;/廒取网络流publicboolConectStation(stringip,intport){,/连接局站函数,连接成功返回true,失败则返回falsetry{myClient=newTcpClient(ip,pon);myStream=myClient.GetStream0;returntrue;18 武汉理工大学硕士学位论文’catch{returnfalse;,'由于采用串口服务器,只需将传输数据的ASCII码转换为网络数据流,即可利用TCP/IP协议的可靠连接TCF连接传输二进制流,程序如下:StringstationNo;||两站号Stringversion;//版本号AsyncCallbackoutcallback=newAsyncCallback(this.OnCompleteWrite);//网络流传输的异步调用publicvoidSetDChksumo;I陈CHKSUMpublicvoidStartScnd0{charsoi=(char)0x7E;{所始字节chareoi=(char)0x0D;//结束字节suingcheck--version+stationNo+commandCode;,/版本号+局站号+命令代码,需进行校验stringsend=soi+check+SctDChksum(check)+eoi;//发送数据字符串byte[】outbuffer=Encoding.ASCII.OetBytes(send);删每数据字符串转化成字节数据流try{mySUeam.BeginWritc(outbuffer,0,outbuffer.Length,outcallback,null);,catch{∥发送数据失败的数据处理}19 武汉理工大学硕士学位论文3.3.2智能设备通信协议的实现智能设备通信协议的实现主要有以下几个方面,一是实现协议所要求的代码类型,例如电总协议多以ASCII码形式传送,而新泰达协议(新泰达公司协议)则多以十六进制代码传送。二是校验码的形成,每种协议都有长度位数不同、校验方式不同的校验码,校验码的计算与比较直接决定了传输数据的正误。三是数据流的形成,按照协议要求完成代码的类型转换和校验之后,就要形成能进行TCP形式的封装、能在网络中以网络数据流的形式传送的代码。下面以实际程序为例对这几个方面进行说明。智能设备的监控,传输的数据不止是整形量,还有浮点数。浮点数的编码根据不同的协议而不同,以四字节数对其编码是常见的形式。下面是四字节数和浮点数相互转换的代码。publicstaticbyte[】FloatToFour(floata){,/根据协议转换浮点数为四字节数byte【】b=newByte[4];intformer=0;floatlater=Math.Abs(a);whileoater<0.5&&lated=O&&former>-63){later+=2:former--;)while(1ater>=l&&former<63){later/=2;former++;}for(inti-1;i<4;i++){later=256’(1ater-b[i一1】);bfi】=(byW)later;}b[O]=(byte)Math.Abs(former);if(formerLLength-4)returno:byte[]b---newByte【4】;intformer;intlater;floatresult;for(inti=O;i“;i++)bli]=a[th+i];珉(b【0】&呶40)==0)former=b[0]&0x3F:elseformer=-·1+Oa[O]&Ox3F);if((b[Ol&Ox80)==mlater=65536‘b[11+256%【2】+b【3】;elselater=一1‘(65536’b[11+256’b[2l+b[3I);result=(float)Math.Round((decimal)(1ater4Math.Pow(2,former-24)),1);returnresult;}按电总协议传输浮点数,则对浮点数先进行小数点位置的变换再进行ASCII码形式转换。这种形式的转换相对简单,因.NET具有ASCII码转换的函数,只需将数据转换为string类型即可。以下即为整形数转换为String灿代码。publicstaticstringIntToString(inta,inti){∥将整型转换成字符串型,a为转换的整数(小数须先乘十再转换),i为转换后 武汉理工大学硕士学位论文的字符串位数if(a<0lla>=Math.Pow(2,4+i))rctnrnnull;strings=a.ToString(”X”);while(s.Length>4)+a2)“0xFF)+1);intsl=(1chksum<<4&0xF0)+(alaOxOF);strings=StaticClass.IntToString(sl,2)+StaticClass.IntToString(a2,2);returns;}publicstringSetDChksum(strings){,/求CHKSUM,S为除SOI、EOI、CHKSUM外的其他字符ASCIIEncodingascii=ncwASCIIEncodin90;Byte[】b=ascii.GetBytes(s);intsum=0;foreach(byteiinb1sum+=i;inta=((sum“0xFFFF)+I)&0xFFFF;stringl=StaticClass.IntToString(a,4);returnl;}屯总协议数据流的形成主要是形成String类型,再调用GetBytesOi蝴- 武汉理工大学硕士学位论文到二迸制流,新泰达协议则只需将数据按顺序整理即可得到二进制流。下面的代码就是电总协议进行类型转换,得到二进制流并发送的过程。publicvoidStartSend0{,/开始发送数据commandNum-;ff(commandNum>=0){switch(commandCode[commanclNum].Substring(0,4)){aEtS@”\u0034\u0030\u0034\u0032”:main.SetPanel(”获取交流模拟量”);break;case”\u0034\u0032\u0034\u0032”:main.SetPanel(”获取直流模拟量”);break;ease..\u0034\u003l\u0034\u0032”:main.SetPanel(”获取整流器模拟量”);break;ca∞’’\u0038、u0030\u0034\u0032”:main.SetPanel(”获取环境模拟量”);break;c龇"、u0034\u0030\u0034\u0034”:mai。n.SetPanel(”获取交流告警信息”);break;ca∞’'、u0034\n0032\u0034\u0034”:main.SetPanel(”获取直流告警信息”);break;case~0034\u0031\u0034\u0034”:main.SetPanel(”获取整流器告警信息”);break;case~0038、u0030\u0034、u0034”:main.SetPanel(”获取环境告警信息”);break;case”\u0034\u003l\u0034\u0033”:main.SetPanel(”获取整流器状态信息”);break;}charsoi=(cha00x7E;//开始字节chareoi=(cbar)0x0D;//结束字节stringcheck=version+stationNo+commandCode[commandNum];,,版本号+局站号+命令代码stringsend=soi+check+SetDChksum(check)+eoi; 武汉理工大学硕士学位论文//发送命令字符串byleI】outbuffer=Encoding.ASCII.GetBytcs(send);删每命令字符串转化成字节try{myStream.BeginWrite(outbuffer,O,outbuffer.Lengtll,outcallback,null);}catch{main.SetPanel(”发送命令失败”);main.ThreadXOperate(”一X”);}’else{main.ThreadXOperate(”一x1’);//恢复巡检)3.4本章小结本章主要介绍了通信电源远程监控系统的核心模块一通信模块的设计开发。监控系统进行通信就离不开通信协议,本章也介绍了TCI'/IP协议和智能设备通信协议(以《智能设备通信协议》为例)。这些协议处于网络体系结构中的相应层级,在通信电源监控系统中应用它们实现监控中心与电源设备之间的通信. 武汉理工大学硕士学位论文第4章通信电源的实时监测与控制4.1系统需求分析根据邮电部《通信电源和空调集中监控系统技术要求》的规定,通信电源集中监控系统(Centralizedsupervisionandcontrolsystemfortelecommunicationpowersupply)是指:对通信局(站)的电源及设备进行遥控、遥信和遥测,实时监视其运行参数,监测和处理故障,记录和处理相关数据,从而实现通信电源及设备的少人或无人职守的计算机控制系统。根据该定义,通信电源集中监控系统需要实现的功能有:一是对电源及设备的监测与控制;二是对监测数据的记录、处理、管理和分析。因此系统的需求可以从以上两个方面来进行分析考虑。4.1.1用户需求根据用户提出的要求,监控中心平台软件应具备如下功能:(1)系统监控端局数可扩展到250台。(2)数据定时存储,提供历史数据及管理功能。(3)实时数据报表,历史数据报表,电源运行月统计报表和监控日报表、用户操作日志等多种报表功能,设备运行曲线。(4)故障告警实时上报功能,提高故障响应的及时性,并可进行颜色告警提示、声音告警提示,紧急告警故障可进行BP呼叫。(5)多级用户权限,操作界面美观,交互性好,操作维护方便。(6)监控中心同远端通信电源设备的通信方式可根据实际需要按两种方式进行:电话拨号方式和数据专线方式。(7)监控中心软件对通信电源的运行状态采用颜色标示,令用户一目了然:黄色为通信故障(连接失败),绿色为工作正常,红色为设备报警。(8)发生通信故障和设备报警时,监控中心就会用语音向用户报警。(9)根据安全的需要,系统提供了两级权限保护,并保存有系统操作日志。(10)软件背景采用直观的世界地图,用户也可以自己选用其它的背景图;监控界面上显示全部设备的图示,便于把握全局。(11)实时显示系统运行状态。 武汉理工大学硕士学位论文4.1.2监控系统软件的功能目标结合用户需求和系统分析的结果,提出监控系统软件的功能目标。系统采用分层的模块化结构,便于系统功能的扩充和更新。可以实现多用户操作,通过权限设定,其中一台主机可以完成所有操作,其他用户只完成浏览和查询功能。1.通信通信方式采用主从方式,监控中心SC为上位机,监控单元为下位机。SC呼叫SU下发命令,SU收到命令后返回响应信息。(1)前端通讯物理接口可以适应:以太网接口、RS232接口。(2)通讯软件支持:TCP/IP、RS232串行通信、MODEM电话拨号方式。(3)根据用户各站点可提供的传输媒介不同,设置不同的通信方式。(4)目前,各个电源厂家的通信协议均不兼容,因此该软件以电总协议为蓝本。(5)可以监控的最大端点数:1K。(6)为7今后的升级需要,要求程序可方便灵活的加入其他厂家的通信协议。2.界面、数据管理(1)管理首页:电子地图,显示每个jl蠡控点,设置每个站点的位置,管理运行状态。(2)站点信息管理:增加、删除监控站点;设置各站点的通信方式,设置IP地址和端口号:站点设备型号选择.3.用户管理增加或删除管理人员名单,管理权限等。操作人员分为三级:(1)系统管理员,级别最高,操作权限:增加或删除操作人员名单;完成各种系统管理设置;被控设备的各种控制命令操作;被控设备的参数设置;查询被控设备的运行状态、告警状态;查询被控设备的历史记录,包括运行曲线、告警记录、操作命令记录、打印历史记录。(2)系统操作员,级别中,操作权限:被控设备的各种控制命令操作: 武汉理工大学硕士学位论文被控设备的参数设置:查询被控设备的运行状态、告警状态:查询被控设备的历史记录,包括运行曲线、告警记录、操作命令记录、打印历史记录。(3)值班员,级别最低,操作权限:查询被控设备的运行状态、告警状态;查询被控设备的历史记录,包括运行曲线、告警记录、操作命令记录。4.用户登录进入系统设置,需操作员身份验证;进入设备控制,需操作员身份验证,并记录;记录内容包括:操作员名称、发送命令的内容、被控设备地点、操作时间;所有查询完全开放。5.性能管理对告警和操作数据及运行曲线建有数据库,具备提供查询和日报表、月报表生成和打印功能。数据库应有良好的保护功能,可以进行备份。提供多种查询方式:按时间查询,按站点查询,告警信息查询,命令信息查询。告警管理:(1)告警信息:包括告警内容、时间、地点。(2)告警方式:告警发生时,监控界面上相应的图标会闪烁以标示告警,同时发出语音告警提示;(3)告警确认:告警发生后,操作人员可以确认告警,关闭可闻告警声响,双击告警图标,弹出告警信息框。6.界面(1)系统设置:监控中心:中心名称,局站数量;分站设置:局站名称;通讯方式:Internet方式、其他方式;通讯地址:局站站址、IP地址和端口号;设备类型:XTI)-180、PS一200、PS一300、EMU—lI(环境监控箱)、其他厂家电源(对应不同型号对应不同通信协议):系统配置:整流器个数。(2)分站状态:电源系统监控的各种数据量如图4—1所示。 武汉理工大学硕士学位论文\\设备功艟\直流屏交流屏整流器蓄电池组环境均/浮充转空调控制、遥控量换、复位、电热器控制开/关机负载熔断告交流过压、均/浮充状烟雾门禁、警、直流过/交流低压、态、输出低地湿、红外、欠压、电池交流过流、压、输出过玻璃破碎遥信量熔断告警、交流停电压、输出过电池组欠流、交流输压、电池组入异常、过充/放电温输出电压、交流三相电输出电压、电池单体电环境温度、输出电流、压、交流三输出电流压、总电压环境湿度、负载电流、相电流和电流、电电池温度遥测量电池电压、池温度、蓄电池电流电池充放电流等直流过压交流过压均/浮充电值、直流低值、交流低压、输出过压值、直流压值压告警值、遥调量过流值、电输出欠压告池欠压值、警值、输出电池充电限过流值、输流值出限流值图4—1电源系统监控功能 武汉理工大学硕士学位论文4.2监控系统总体设计通信电源监控系统是以一个上位机和多个下位机组成通信网络来完成系统数据通信的功能。监控系统以多极监控级自下而上逐级汇接的方式构成,每个监控级一般均按照辐射方式与若干下级监控级连接成一点对多点的监控系统,最低一级监控级(下位机)与其监控的若干设备连接。在绝大部分时间内,下位机同时完成监控数据采集工作,只有在必要时才与上位机通信交换数据信息。这种层次结构使系统具有较高的可靠性,而且控制灵活、速度块。监控软件的设计要达到易于维护,健壮性好的目标,可以借鉴“胖服务器/瘦客户机”的设计思想。客户机/服务器(Client/Server,简称c幅)技术本身是一种分布处理技术,它可以增强应用的可移植性,改善网络和系统的性能,提高用户的工作效率。传统的C/S结构一般分为两层,把应用分为两个部分:客户机和服务器。客户机端通过网络连接访问远程数据,借助API接口,客户机端的应用程序从数据库中读取数据,执行程序的运算逻辑,然后把数据送回数据库。两层c幅结构实现时需要将表示层和应用逻辑层封装在一起,容易造成开发和维护的困难,尤其在系统规模较大时更加突出。因此三层C/S结构应运而生。三层C/S结构将应用开发的3个逻辑层面明确的进行分割,使其在逻辑上各自独立,并且独立加以实现,分别称之为客户机,应用服务器,数据库服务器。与两层C/S结构的客户机相比,三层C/S客户机功能更加简洁清晰,大部分的应用逻辑部分被转移到应用服务器上,客户的界面容易生成和修改,尽量与其他两层保持独立,以适应应用的变化。传统的两层C/S结构实际上是一种“胖”客户机(FatClient),“瘦”服务器(1砸nServer)的网络计算模式,而三层C/S结构则是一种“瘦”客户机(ninClient),“胖”服务器(FatServer)的网络计算模式。瘦客户机,胖服务器是一个发展趋势,因为这样可以使客户机的压力大大减轻,而把负荷均衡的分给了服务器。本系统采用三层的c搐结构设计。.NET框架是Microsof.NET平台核心,是一个多语言组件开发和执行环境。主要由三部分组成:(1)公共语言运行时(CommonLanguageRuntime,CLR)。CLR负责管理内存分配、启动或删除线程和进程、实施安全性策略,同时满足当前组件对其它组件的需求。CLR的自动化程度大大提高,使开发工作大量减少.NET框架提供了一个跨编程语言的统一编程环境。(2)统一的编程类。.NET框架为丌发人员提供了一个统一的、面向对象的、层次化的、可扩展的类库集。通过这个类库集,.NET框架可实现跨语言继 武汉理工大学硕士学位论文承性、错误处理和调试功能.(3)ASENET。ASENET是使用.NET框架提供的编程类库构建而成的,它提供Web应用程序模型,该模型由一组控件和一个基本结构组成。通过使用AsP.Nl’T的Web服务功能,开发人员只需进行简单的业务逻辑编程,由AsRNET基本结构通过简单对象访问协议(SimpleObjeelAccessProtoc01)来提供服务。考虑到以上种种情况,我们最终选择.NET平台作为系统开发平台。由于我们通过编程从底层实现本系统,从而更容易保证通信电源对系统稳定、安全的需求。利用.NET平台相对底层的开发环境可以使我们更好的发挥自身优势,开发出一种简洁明了、操作简单方便适合通信需求的监控系统。在开发语言上,.NET支持C++、VB.NET、C带、J撑等语言,雠语言是在.NET中推出的全新的语言,这种全新的面向对象的语言使得开发者可以快速地构建从底层系统级到高层商业组件的不同应用。C带在保证了强大的功能和灵活性的同时,给c和c++带来了类似于visualBasic的快速开发,并且它还针对.NET作了特别设计,这些特性结合起来使得甜成为优秀的下一代编程语言。c舻是Windows平台下的强大的编程工具,但它不是唯一的开发工具。如果足够深入地研究API或者编写足够地代码,则不难发现,雠语言可以做的事情其他编程语言基本上都可以做。但通过对一些应用程序、内存管理和面向对象地开发提供嵌入式支持,饼降低了使用它们的难度。睇简化和现代化了C4+在类、名字空间、方法重载和异常处理等领域。摒弃了C++的复杂性,使它更易用、更少出错。麟的贡献是减少了C++的一些特性,不再有宏、模板和多重继承,具有严格的类型安全、版本控制、垃圾收集(garbagecollection)等功能。综上所述本系统的开发编程语言选择C带。4.3系统的数据库设计数据库概念结构设计是整个数据库设计的关键。概念设计通常采用的是E—R方法,即用E--R图来进行设计。E—R(Entity--Relationship)图即实体一联系图,从概念上讲,被分析的对象可看作是由图形表示的一组实体类型和联系类型。在E—R图中,基本的图形元素有3个:实体集合框,联系集合框,属性集合框。概念结构设计通常分为3个步骤来进行,首先进行实体分析,然后以局部需求为基础设计局部模式,即用户分E—R图,最后在此基础上生成全局模式,也就是进行视图集成,生成总体E—R图并进行优化。在设计分E—R图时,一个很重要的工作就是标定实体与实体之问的联系以及它们的属性。对于通信电源管理系统来讲,在设计总体E—R图之前,要 武汉理工大学硕士学位论文分别设计监控中心信息、局站信息、员工信息、各种记录表、模拟量和状态量以及告警信息各个E—R图。总体E—R图即全局视图,它的设计就是分E—R图的综合,即所谓视图的集成。集成的方式有2种:多个分E—R图一次集成和两两依次集成。在集成中要注意解决矛盾,消除冲突。使总体E—R图能准确地反映每个用户的数据要求,满足需求分析提出的处理要求。最后还要进行总体E—R图的优化,消除不必要的冗余。通信电源管理系统总体E—R图是对各个分E—R图整体一次集成而成的,利用规范化理论消除部分冗余的联系。.数据库的概念结构是独立于任何一种数据模型的信息结构。其逻辑结构设计的任务就是把概念结构设计阶段设计好的E—R图转化为与所选用的DBMS产品所支持的数据模型相符合的逻辑结构。本系统开发所用的DBMS是SQLServer,它是一种关系型的DBMS,所以要将E—R模型转化为关系模型。转换过程中所要解决的主要问题是如何将实体和实体之问的联系转化为关系模式,如何确定这些关系模式的属性和码。所以在此阶段本系统根据数据库关系模式的规范化理论和实际的使用方便,来设计整个系统的逻辑结构。在设计过程中,分析了解了是否存在部分函数依赖和传递函数依赖等情况,并且根据实际情况决定是否需要进行规范化。因此可以看出数据库的逻辑设计的过程一般分为3步:首先把概念模型向一般数据模型转化;然后,再把一般数据模型向特定的DBMS支持的数据模型转换;最后,对数据模型进行优化。数据库的物理设计是指对一个给定的逻辑数据结构选取一个最合适应用环境的物理结构的过程,使其既能满足性能准则,同时又不违反结构准则。其内容主要包括:确定数据的存储安排,存取路径的选取与调整,确定数据的安全性等内容。表是数据库的基本结构,是存储数据的主要载体。表的创建可以通过DBMS自带的视图窗体进行创建,也可以通过标准SQL语句创建。下面我们用SQL语句创建一个局站参数设置表并在其中插入一个数据。createtabletblstationpara(f_indexintidentity(O,1)primarykey,f-stationidintnotnull,f_stationnamechar(20)notnull,f_agreementchar(20),fifshowvaItiebit.31 武汉理工大学硕士学位论文f_ifenvboxbit,f_sysacstatebit,f_sysdcstatebit,f_sysrecstatebit,f_sysenvstatebit,f_powertypechar(20),f_syseonfigchar(20),f_reenumint,f_dcdcnumint,fsunpowernumint,f_batonecapint,fbattwocapint,fifviocealarmbit,fifautoalarmbit,fifmonitorendbit,f__commutypechar(20),f_ipadresschar(20),f_portint,f_stationxint,f_stationyint)inserttblstationpara(f__stationid,f_stationname,f_agreement,f.ifshowvalue,f-ifenvbox,f_sysacstate,f_sysdcstate,fsysrecstate,f_sysenvstate,f_powertype,f_sysconfig,f_reenum,f_dcdenum,f_sunpowernum,f_batonecap,f_battwocap,f_ifviocealarm,f_ifautoalarm,f-ifmonitorend,f__comutype,f-ipadress,f_port,f_stationx,fstationy)values(1,’世纪新泰达’,’新泰达协议’,1,1,l,l,l,1,’XTD-180’,’48V/20A’,6,0,0,100,100,l,1,l,’Internet方式’。’127.0.0.1’,10001,200,200)gO在定义各表时,我们为了减少数据冗余,定义了一些辅助表。同时在定义通信电源监控系统数据表时,为了改善对数据库的查询效率和为了简单的寻址方式,保留了一部分数据冗余。通信电源监控系统数据表及表间关系如图4—2所示。 武汉理工大学硕士学位论文图4—2数据表及其关系图4.4监控中心软件设计与实现4.4.1系统总体结构和模块划分在本监控系统中,监控中心的主要任务是完成对各局站监控数据的汇总、存储、生成报表、显示、打印等分析处理功能,以及响应下位机的告警和对其进行远程设置与控制等功能。就监控中心软件设计而言,主要是数据库服务器和通信模块的设计。出于监控系统的大多数功能都集中在上位机,因此上位机软件系统比下位机软件系统在结构上要复杂些。根据上位机的系统功能定义,上位机软件设计 武汉理工大学硕士学位论文包括对数据库的管理维护模块、数据的实时显示模块、数据报表的生成与打印模块、网络通信模块、对查询数据与告警信息的处理模块(控制模块)、系统的安全模块与系统设置模块以及用户界面模块等,各模块问功能关系如图4—3所示。图4—3监控中心软件功能关系图根据系统设计目标,按照系统功能大致把系统结构做如下划分:(1)系统登陆:该模块主要完成工作人员的上班登录、下班注销、修改值班密码和退出系统功能。(2)远程监控管理:该模块包括支局实时监测与控制和音效管理功能,其中音效管理模块主要是对声音报警的管理。(3)数据查询:该模块包括交直流及环境采样数据、电源运行告警月统计报表、局站告警明细记录报表、中心控制命令明细记录报表和值班操作日志查询。(4)曲线图表:该模块采用曲线形式表示交流屏和直流屏的模拟量曲线。(5)基础设定:该模块包括用户管理、支局参数设置和监控中心参数设置。(6)数据库维护:该模块对系统数据库进行整理。(7)系统巡检:该模块位于程序后台,伴随着程序的运行始终运行。根据系统的设置对各个局站进行巡检,实时获取局站运行信息和告警信息。其总体结构划分如图4—4所示。 武汉理工大学硕士学位论文图4—4监控中心软件系统结构图 武汉理工大学硕士学位论文根据系统结构设计出系统的功能界面,监控系统的主功能界面如图4—5所示。标题显示为监控中心名称,值班员显示为登陆用户姓名。界面背景图可进行设置,选用监控中心管理地图可使所监控局站的地理位置显示更加直观;图标位置经身份验证可以进行拖动,图标名称即为各局站名称,图标颜色标识了各局站目前状态。4A.2系统巡检模块图4—5监控系统主功能界面启动监控中心程序后,系统印从数据库读取监控中心和局站的各种配置信息,例如监控中心和局站的名称、参数,系统背景图等,然后根据配置信息决定是否巡检局站。若有巡检标记,则进入该局站进行巡检;若没有巡检标记,则跳过这一局站。通过对网络状态的检测和巡检信息的处理,判断局站是否存在告警信息,若存在告警信息,则进行图像和声音的告警,同时将告警信息和局站其他的信息写入数据库;若不存在告警,则将局站其他信息写入数据库后, 武汉理工大学硕士学位论文继续巡检。写入数据库的信息可通过数据查询模块随时查询到,也可通过数据库维护模块对其进行维护和管理。监控中心的巡检流程图如图4—6所示。图4—6监控中心巡检程序流程图由于巡检模块和系统其它模块需同时运行,本系统主要采用多线程技术处理这种冲突。操作系统使用进程将它们正在执行的不同应用程序分开。线程是操作系统分配处理器时间的基本单元,并且该进程中可以有多个线程同时执行代码。每个线程都维护异常处理程序、调度优先级和一组系统用于在调度该线程前保存线程上下文的结构。线程上下文包括为使线程在线程的宿主进程地址空间中无缝地继续执行所需的所有信息,包括线程的CPU寄存器组和堆栈。线程技术是一种强大的技术,它提高了对用户的响应速度并且几乎|司时处理所需数据。在具有一个处理器的计算机上,多个线程可以通过利用用户事件 武汉理工大学硕士学位论文之间很小的时间段在后台处理数据来达到这种效果。下面的程序通过控制巡检线程的运行状态,来防止巡检线程和访问同一局站的其他线程冲突。程序代码如下:publicvoidThreadXOperate(stringoperate){,/定义线程运行状态,控制程序运行状态switch(threadXState+operate){锹”+X”:threadXState=”X”;break;//X=采集数据,巡检主程序挂起状态c鹞e”M+X”:threadXState=”B”;break;//13=正在采集数据,同时有遥控操作,巡检主程序挂起状态case”B—X”:threadXState=’’M’’;break;//M=遥控操作,巡检主程序挂起状态case”X-X”:threadXState=”’。;break;//”=程序正常运行状态CaSe”+M”:threadXState=”M”;break;CaSe”X+M”:threadXState=”B”;break;case”B-M’’:threadXState=”X’’;break;case”M-M’’:threadXState=””;break;}if(threadXState!=”、threadX.SuspendO;elseif(threadX.ThreadState==ThreadState.Suspended)threadX.Resume0;,4.4.3远程监控管理模块远程监控管理模块是系统的主要模块,实现了对通信电源的实时监测和控制。系统定时巡检所获取的通信电源实时数据,可以通过这个模块显示。当这个模块启动时,系统局站轮流巡检停止,改为巡检所指定的单一局站。巡检时,电源参数(包括系统信息、配电屏、整流模块、电池组和环境)和各部分的告警状态、通信状念实时更新,如果出现告警或通信故障,则以红色字体醒目显示。图4—7为配电屏实时监测的显示状况。 武汉理工大学硕士学位论文图4—7配电屏监测信息显示这一模块除了实现对通信电源参数的实时监测外,还包括了对通信电源的参数设置和远程控制。参数设置和远程控制就是发送控制命令到通信电源设备,参数设置发送的命令主要是参数和参数值,远程控制发送到命令则主要是开关量。以远程控制为例,按照电总协议进行远程控制的代码如下。privatevoidCommandClick(objectsender,System.EventArgs曲{//发送遥控命令DialogResultresult=MessageBox.Show(”您确认要发送此命令吗?”,”发送命令",MessageBoxButtons.YesNo);if(result==DialogResult.Yes){Obtainl5.commandNum=1;Obtainl5command=newObtainl5(this,stationlndex);if(sender.Equals(button3)) 武汉理工大学硕士学位论文command.commandCode[O]=”、u0034\u003l\u0034\u0035”+this.I上ngth(2)+”、u0031\u0031”;elseif(sender.Equals(button5))command.commandCode[O]=”\u0034\u003l\u0034\u0035”+this.Length(2)+”、u0031\u0030”;elseif(sender.Equals(button6))command.commandCode[O]=”\u0034\u0081、u0034\u0035”+this.Length(净~0031\e0046”;elseif(sender.Equals(button7))command.commandCode[0]=’"I:u0034\u003l\u0034\u0035”+this.Length(4)+"、u0032\u0030”+StaticClass.IntToString((int)Math.Round(numericUpDownl.Value),2);elseif(sender.EqualsCoutton8))command.commandCode[0]="、u0034\u003l\u0034\u0035”+this.Length(4)一\u0032\u0046”+StaticClass.IntToString((int)Math.Round(humericUpDownl.Value),2);elseif(sender.Equals(buttonl6))command.commandCode[0]=’’、u0038\u0030\u0034\u0035”+this.Length(4)+”、u0030\u0031\u0031\u0030”;elseif(sender.Equals(buttonl7))command.commandCode[0]=’’\u0038\u0030\u0034\u0035”+this.Length(4)+~0030\u0031\u0031、u0046”;elseif(sender.Equals(buttonl8))command.commandCode[0]="\u0038\u0030\u0034\u0035”+this.Length(4)+~0030、u0032\u0031、u0030”;elseif(sender.Equals(buttonl9))command.commandCode[0]=’’\u0038\u0030\u0034\u0035”+this.Length(4),\u003咖0032\u003l、u0046”;elsecommand.commandCode[0]=”\u0038\u0030\u0034\u0035”+this.Length(2)+”\u0030\u0033\u0031、u0030”;statusBarl.Panels[0].Text=”发送命令”:if(command.ConectStation(main.station【stationlndex】.ipAdress,main.station[stationlndex].port))40 武汉理工大学硕士学位论文command.StartSendO;obtainl5-=command;}图4--8显示了通过身份验证后进入局站遥控状态的界面,此时系统巡检停止,以免遥控信息与巡检信息冲突。图4—8系统监控模块的遥控界面4.4.4数据查询模块数据查询模块是将水晶报表(CrystalReports)嵌入到应用程序中,将满足查询条件的数据以报表形式显示,也可以直接进行报表打印或文件输出(可形成并输出pal.xls、doe、rft等格式文件)。水晶报表随.NET一起发布,成为.NET的组件之一。使用CrystalReportsforVisualStudio.NET为应用程序或Web服务添加报表功能。可以从头开始创建报表,也可以使用某个CrystalRepoOExpeas帮助完成设计过程。使用CrystalReportDesigner,可以定义报表的数据源,选择要使用的数据记录并对其进行分组,格式化报表对象及布局,使整个设计过程简化。 武汉理工大学硕士学位论文图4—9显示的是交直流及环境采样数据报表。图4—9交直流及环境采样数据报表下面的代码给出了水晶报表的加载方式和其部分参数的添加设置方法。privatevoidcrystalReportViewerl—Load(objectsender,System.EventArgse){switch(rcportselect){tTⅪtSe1:crystalReportViewerl.SelectionFormula=selectFormula;crystalReportViewerl.ReportSource=newCrystalReportl0;break;case2:erystalReportViewerl.SelectionFormula=selectFormula;crystalReportViewerl.ReportSource=flewCrystalReport20;break;case3:crystalReportViewerI.SelectionFormula=selectFormula;42 武汉理工大学硕士学位论文crystalReportViewerl.ReportSource=newCrystalReport30;break;case4:paramField.ParameterFieldName=’’f_time’’;discreteVal.Value=selectTunel;paramValues.Add(discreteVal);paramField.CurrentValues=paramValues;paramFields.Add(paramField);crystalReportViewerl.ParameterFieldlnfo2paramFields;crystalReportViewerl.SelectionFormula=selectFormula;crystalReportViewerl.ReportSource=newCrystalReport40;breal【;case5:crystalReportViewerl.SelectionFormula=selectFormula;crystalReportViewerl.ReportSource=newCrystalReportS0;break;default:break;’}4.4.5曲线图表模块将交直流的模拟量数据以曲线的方式显示,更加直观地反映了其波动情况,使用户可以更好地把握通信电源的整体运行状态,及时地对局站进行维护和保养。下面的函数给出了曲线图表的绘制方法。privatevoidbuuonl_Click(objectsendef'System.EventArgsc1{GraphicsmyGraphics=this.panell.CreateGraphics0;myGraphics.TranslateTransform(40,·120);Rectanglerect=ilewRectangle(-40,120,500,300);SolidBmshwBrush=newSolidBmsh(Color.White);myGraphies.FillRectangle(wBmsh,rect);PenredPen=newPen(ColorRed,1);myGraphics.DrawLine(redPen,0,400,440,400); 武汉理工大学硕士学位论文myG-raphics.DrawLine(redPen,0,350,440,350);myGraphics.DrawLine(redPen,0,300,440,300);myGraphics.DrawLine(redPen,O,250,440,250);myGraphics.DrawLine(redPen,o,200,440,200);myGraphics.DrawLine(redPen,0,150,440,150);myGraphics.DrawLine(redPen,O,400,O,150);IVAlPcn.Dispose0;FontdrawFont=newFont(”Arial”,12);//定义字型SolidBmshdrawBmsh=nCWSolidBmsh(Color.Black);//定义画刷StringFormatdrawFormat=newStringFormatO;//设置字符串格式脯字符串写到屏幕if(radioButtonl.Checked[]radioButton2.Checked]lradioButton3.Checked){myGraphics.DrawString(”160”,drawFont,drawBrush,-40.0F,390.OF,drawFormat);myGraphics.DrawString(”180”,drawFont,drawBrush,.40.OF,340.OF,drawFormat);myGraphics.DrawString(”200”,drawFont,drawBrush,-40.0F,290.OF,drawFormat);myGraphics.DrawString(’’220”,drawFont,drawBrush,一40.0E240.OF,drawFormat);myGraphics.DrawString(’‘240”,drawFont,drawBrush,-40.0F,190.OKdmwFormat);myGraphics.DrawString(’’260”,drawFont,drawBrush,.40.OF,140.OF,drawFormat);}else{myGraphics.DrawString(”0”,drawFont,drawBmsh,一30.0F,390.OF,drawFormat);myGraphics.DrawStrin甙”15”,drawFont,drawBrush,一30.OF,340.OF,drawFormat);myGraphics.DrawStrin甙”30”,drawFont,drawBrush,一30.OE290.OF,drawFormat);44 武汉理工大学硕士学位论文myGraphics.DrawStri∞Ig(”45”,drawFont,drawBrush,一30.OF,240.OF,drawFormat);myGraphics.DrawString(”60”,drawFont,drawBrush,一30.oF,190.OF,drawFormat);myGraphics.DrawString(”75”,drawFont,drawBmsh,-30.OF,140.OF,drawFormat);)drawBmsh.Dispose0;stringstrPART;stringstrWORD;//根据选择的不同定义strPART和strWORD的值,查询不同的数据表和字段System.CoUections.ArrayListposition=newArrayListO;if(position.Count!---O){PengreenPen=newPen(Color.Green,1);PomtF[】curvePoints--newPointF[position.Count];floatx册for(inti=0;i

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
大家都在看
近期热门
关闭