




已阅读5页,还剩38页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
声明 本人郑重声明:此处所提交的硕士学位论文智能型通用操作票组件方法的研究, 是本人在华北电力大学攻读硕士学位期间,在导师指导下进行的研究工作和取得的研究 成果。据本人所知,除了文中特别加以标注和致谢之处外,论文中不包含其他人已经发 表或撰写过的研究成果,也不包含为获得华北电力大学或其他教育机构的学位或证书而 使用过的材料。与我一同工作的同志对本研究所做的任何贡献均己在论文中作了明确的 说明并表示了谢意。 学位论文作者签名至生日期:趔兰:至! 关于学位论文使用授权的说明 本人完全了解华北电力大学有关保留、使用学位论文的规定,即:学校有权保管、 并向有关部门送交学位论文的原件与复印件;学校可以采用影印、缩印或其它复制手 段复制并保存学位论文;学校可允许学位论文被查阅或借阅;学校可以学术交流为 目的,复制赠送和交换学位论文;同意学校可以用不同方式在不同媒体上发表、传播学 位论文的全部或部分内容。 ( 涉密的学位论文在解密后遵守此规定) 作者签名:至盐导师签名:兰互2 易 日期:加正) t 力e t期:迎:兰:留 华北电力大学硕士学位论文 1 1课题的提出及意义 第一章绪论 随着我国国民经济的不断高速发展,作为国民经济发展基础的电力工业可靠性 也越来越受到各行业的重视。而电网中的倒闸误操作在电网故障中占据相当比率, 因此,正确开写操作票是电网安全稳定运行的有力保障。我国自上世纪八十年代以 来在操作票的开发与使用上取得了卓有成效的成果,各科研单位及院校都开发出了 具有一定适用性的操作票【l 一】,这不但减轻了调度人员的劳动强度,也提高了电力 系统的安全稳定运行水平,其现实意义已经得到了电力系统运行人员的认可。目前, 国内开发操作票的方式主要有基于开关控制逻辑方式5 1 、基于图形校核方式【6 1 、基 于面向对象方式 7 】等几类。然而,由于方法本身或开发工具等因素的影响,操作票 在开发与使用上仍然存在着大量的问题,如通用性差、用户可维护性差、开发工程 量庞大、软件技术特性使用率差等一系列缺陷。 近十几年来,变电站操作票在通用性方面已经取得了长足的进步 8 l ,已经基本 实现了通用。但是在网调、省调及地调方面,调度操作票基本还没有实现网络化、 通用化。究其客观原因主要有以下几点: ( 1 )电网接线方式非常复杂,因而涉及的操作也非常复杂。知识表示比较复 杂,而且推理机制很难给出相应的模型。 ( 2 ) 操作语言不规范,各个地区的模式不尽相同。 ( 3 ) 可靠性不够高。 以上原因限制了电网调度操作票系统的通用性和安全性,再加上缺乏统一的标 准,因而电网调度操作票智能系统一直得不到大面积的推广。 近年来,通过许多科研人员的不断发展和改进,操作票专家系统基本上都达到 了实用水平,但实际上,生产现场中对于这类软件的推广却一直很慢,其主要原因 在于目前在一个专家系统的开发过程中,软件重用少,生产效率低,通用性差,可 维护性不好,主要表现在以下几个方面: ( 1 ) 软件对应用环境的适应性差,很难在不同应用环境间共享代码;随着环 境的变更,许多代码失去其生命力,导致开发一个新的系统几乎都要“从头做起”, 重复开发。 ( 2 ) 软件可维护性差,难以适应设备配置、电网结构的差异,难以及时应用 华北电力大学硕士学位论文 新理论、新方法,适应生产运行的新要求。从而造成软件开发周期长、成本高的恶 性循环。 ( 3 ) 软件严重依赖于编程语言,用不同语言开发的应用难以交互,开发人员 必须在各种编程语言之间做出取舍,在同一应用中难以荟萃各种编程语言提供的优 良性能,因而软件产品不能满足多方面的需求。 ( 4 ) 面向代码而非面向服务的设计框架缺乏开放性,难以满足日益广泛的分 布式网络应用的需求。 就操作票专家系统的理论本身而言,算法已能满足大部分工程的需要,也就是 说,多年来,相当一部分科研人员和工程人员不可否认地陷入工程的泥潭,多人多 次地重复同一工作,不同企业、开发组间无法共享代码,即使同一开发组甚至同一 个人编写的代码,很多情况下由于应用环境及客户需求的不同不得不推倒重来,造 成资源的巨大浪费,这在很大程度上阻碍了软件技术的更快发展及操作票专家系统 这一生产现场很需要的软件产品的推广应用。 针对这一现状,通过对操作票专家系统的通用性问题、可维护性问题及软件重 用模型的研究,我们提出了基于组件对象模型( c o m ) 的操作票专家系统的建造思 想,改进了软件开发过程中的重用问题,提高了专家系统的通用性和可维护性。 1 2智能操作票研究现状及发展方向 1 2 1 智能操作票的研究现状 一张正常运行方式下的电气操作票就是在给定的操作任务下,将电网中相关的 电气设备按照运行方式的规定由当前状态切换到目标状态,且遵循操作规程而形成 的一系列操作步骤的有序集合。整个操作步骤是领域内大量知识和经验的描述,很 难建立准确的数学模型,传统的数值分析方法不足以解决,而智能系统本身是一种 弱求解方法,非常适用于无法用数值方法定量分析解决的经验性、逻辑性强的问题。 迄今,一些专家和学者在这方面已进行了有益的探索和尝试,取得了很好的社会效 益和经济效益【9 。 国外的操作票专家系统较早的有日本的t a k a s h i a b e 等人开发的v i r g o 专家系 统。该系统自动生成顺序的电气操作命令集,并且具有仿真功能。它采用知识描述 语言k d l 实现,操作任务仅限于4 种:停电、送电、并列和单独运行。所涉及的 电气设备类型限于3 种:母线、线路、变压器,而且形成的操作票中不涉及保护压 板的投退。 国内对这项工作的研究始于2 0 世纪8 0 年代,国内一些高校和科研院所先后开 2 华北电力大学硕士学位论文 展了此方面的研究,如华北电力大学、福州大学、华南理工大学、上海交大、西安 交大、东北电力学院等院校,开发了针对不同发电厂、变电站及各级调度中心的操 作票专家系统,取得了良好的效益1 0 l 。 到目前为止,电力系统智能操作票系统在变电站方面的研究已经取得了显著的 成果1 ,表现在: ( 1 ) 通用性强,能够适应国内各种变电站的不同情况。 ( 2 ) 可靠性高,能保证开列操作票的正确性。 ( 3 ) 管理功能比较完善,基本能够代替人工实现管理工作,如:历史票查询、 数据库管理等比较繁琐的工作。 变电站智能操作票系统给现场工作人员带来了极大的帮助,大大减少了他们的 工作量,而且提高了安全性和可靠性,创造了良好的经济效益。实践证明:变电站 操作票智能系统是行之有效的。 1 2 2 智能操作票的发展方向 二零零五年十月在中国上海召开的第二十九届中国电网调度会议中,特大电网 运行机构会议( v l p g o ) 第三工作组法国r t e 公司的m r l e m a t t r ec h r i s t i a n 在他 的学术演讲中特别强调了今后特大电网中智能化倒闸操作的发展方向,即为了在考 虑安全约束的前提条件下,帮助调度员寻求最优智能化操作,需要开发相应的实时 决策支持工具 1 ”。并且,在电力系统越来越接近极限运行的情况下,此类需求将会 不断增长。 这就要求我们全面考虑电网运行中的各种约束条件,使操作票能够适应各级调 度单位的使用。因此,所开发的操作票就应该不但能达到上述要求,还有尽量的节 省人力、物力及财力,降低开发成本与开发周期,使智能操作票真正实现通用化。 纵观已经发表的文献和现场运行的智能系统( 包括操作票智能系统) ,大多数 仍停留在解决单一问题的范围内,而与其它专家系统间的协作则需要人为过多地加 以干涉,没有形成统一的一体化结构。 1 2 3 组件化程序设计思想的重用模型 针对以上存在的问题和方展方向的要求,通过对操作票专家系统的通用性问 题、可维护性问题及软件重用模型的研究,我们提出了基于组件对象模型( c o m ) 的通用操作票系统的建造思想,改进了软件开发过程中的重用问题,提高了专家系 统的通用性和可维护性。 3 华北电力大学硕士学位论文 一般地讲,一个应用程序总是由单个的二进制文件组成,在以前,如果这个程 序需要做些改进,就要修改源代码,然后编译,生成新的文件,然后取代原来的 文件。现在,我们用一种全新的角度来看问题,把原先一个整体的e x e 可执行文 件分割成功能不同,但相对独立的几个部分,把它们拼装起来组成程序、组成软件。 在未来程序发布以后,如果意识到需要对它进行修改,只要替换有问题的或是需要 升级的组件就可以了,甚至可以做到在不影响程序正常运行的情况下替换其中的部 件,这样的优点是:首先,用户一般希望能够定制所用的应用程序,而组件技术从 本质上讲就是可被定制的,因而用户可以用更能满足他们需要的某个组件来替换原 来的那个;其次,由于组件是相对应用程序独立的部件,我们可以在不同的程序中 使用同一个组件而不会产生任何问题,软件的可重用性将大大的得到增强:第三, 随着网络带宽及其重要性的提高,分布式网络应用程序毫无疑问的成为软件市场上 越来越重要的买点,组件可以使得开发这类应用程序的过程得以简化。 按照组件化程序设计思想,是将单独的、庞大而又复杂的应用程序分成多个模 块但这里每一个模块不再像原来一样是一个简单的代码集,而是一个自给自足的组 件( c o m p o n e n t ) 。这些组件模块可以运行在同一台机器上,也可以运行在局域网、 广域网甚至i n t e r n e t 上的不同机器上【”】。 软件组件包括以下基本特征和属性: 组件是软件的基本量子,它具有一定的功能,可插用、可维护。 组件是软件开发中一个可替换的单元,它封装了设计决策,并作为一个大 单元的一部分和其它组件组合起来。 组件是具有特定功能的,能够跨越进程边界,实现网络、语言、应用程序、 开发工具和操作系统的“即插即用”的独立的对象。 组件是指任何可被分离出来,具有标准化的、可重用的公开接口的软件。 随着c o m ( c o m p o n e n to b j e c tm o d e l ) 成熟与完善,基于二进制的代码重用 成为现实,并且实现了软组件的即插即用。 将工程分解为逻辑组件是面向组件分析和设计的基础,也是组件软件的基础; 组件软件由可重用的二进制形式的软件块组成,这些软件块易于插入到来自其它开 发商的组件中。软件的开发采用基于组件的方式而不规定软件的结构,这种设计思 想是很重要的;而且,它使得二进制软件组件的编程、使用和独立发展成为可能。 组件独立于它们的应用程序和创建它们的编程语言,另外,虽然组件必须遵循一致 的接口,但其内部实现是完全自动的,因而它们可根据实际需要来用面向过程的语 言或面向对象的语言予以创建。 4 华北电力大学硕士学位论文 1 3 本文所做的工作 针对上述操作票目前尚存在的问题和智能化通用操作票的发展方向,并考虑到 软件组件技术强大功能和生产应用中的具体需求,本文主要的工作是用软件重用的 思想,运用组件的方法开发计及电网中各种约束条件的集网调、地调、集控站及变 电站操作票于一体的通用操作票。本文主要从以下几个方面做了工作: ( 1 ) 结合以前的研究成果,研究一种集网调、地调、集控站、变电站于一体 的通用操作票方法。 ( 2 ) 数据结构的设计。在平台数据结构的基础上,通过在设备数据库中进行 字段扩展。同时,对数据库的设计进行优化,实现利用较小空间合理存储较多的电 网参数信息;对数据的存储进行优化,利用内存链表的形式实现数据交换的高速化。 ( 3 ) 完成了基于组件对象模型的通用操作票服务器端知识表示接口和推理 机接口的设计。 ( 4 ) 开发了基于组件对象模型的通用操作票专家系统服务器组件。 ( 5 ) 建立完善的管理系统,包括数据库管理、知识库管理、信息查询管理等。 5 华北电力大学硕士学位论文 2 1组件接口标准 第二章组件对象模型 组件软件的模型是软件组件化的关键,模型详细描述了如何开发可重用的软组 件及这些组件间如何交互。将许多独立的软件组件集成起来就可组成功能强大、能 满足现代软件要求的应用系统。接口则决定了这些组件间传递数据和信息的方式, 组件只有遵循一定的接口规则,才能协调工作。实际上,组件之间的接口是组件软 件的关键,接口是通信的基础。所以,软组件应遵循统一标准,同一软件中的组件 必须使用同样的接口标准方能保证组件间的通信,而采用什么样的标准则取决于设 计者的选择。 当今流行的分布式组件对象模型标准主要有三种:其一为由o m g ( o b j e c t m a n a g e m e n tg r o u p ) 组织推出的c o r b a ( c o m m o n0 b j e c tr e q u e s tb r o k e r a r c h i t e c t u r e ) 公共对象请求代理结构;其二为s u n 公司推出的e j b ( e n t e r p r i s ej a v a b e a n s ) 标准;其三也就是本文将详细讨论的由m i c r o s o f t 公司推出的c 0 m d c o m ( c o m p o n e n to b j e c tm o d a l d i s t r i b u t e dc o m p o n e n to b j e c tm o d a l ) 一一组件对象模 型。这三种标准各有特色。 如果正在为p c 机的桌面创建应用程序,对基于w i n d o w s 的开发来说c o m 是 事实上的标准,并且c o m 内建于操作系统中,当然选择c o m 。同样,在基于w i n d o w s n t 的计算机网络上使用的,类似于w i n d o w s 的程序也选择c o m 。但是,如果程 序需要在一个包含了多种操作系统的网络环境中运行,例如有各种u n i x 的派生物, 就有可能需要使用c o r b a 集成程序,但是需要注意,在不同供应商提供的基于 c o r b a 的产品之间进行集成有时是非常困难的。 基于以上比较,考虑到我们开发通用操作票系统的第一步是要在w i n d o w s 环境 下实现通用,所以,我们选择了c o m 作为组件接口的标准。 2 2 组件对象模型的基本概念 c o m ( c o m p o n e n to b j e c tm o d e l 一一组件对象模型) 是m i c r o s o f t 创建的一种二进 制和网络标准,是目前比较广泛使用的组件软件,它提供了丰富的集成服务以及各 种易用的工具和丰富的应用程序1 1 4 1 。它可以使各软件组件用一种统一的方式进行交 互,将庞大而复杂的程序划分为小的、功能独立的模块单独开发。它允许任意两个 组件互相通信,而不管它们是在什么计算机上运行( 只要计算机是相连的) ,不管 计算机运行的是什么操作系统( 只要该操作系统支持c o m ) ,也不管该组件是用什 6 华北电力大学硕士学位论文 么语言编写的 1 5 】【17 1 。 组件技术的实质是一种客户服务器模式,提出请求的组件称为客户组件,响 应请求的组件称为服务器组件。客户组件通过服务器组件的接口来访问服务器组件 提供的服务。一个组件可以同时作为客户和服务器。而且一个服务器组件可以同时 为多个客户组件提供服务,一个客户组件也可以同时请求多个服务器组件的服务。 只要服务器组件提供的接口不发生改变,服务器组件的升级和修改就不影响客户组 件的运行。 2 2 1 软件组件的特点 以一定格式放在独立的软件系统中。一般称其为服务器或组件服务器( 不 同于传统的网络服务器和数据库服务器等) 。 可以以模块的方式插入到其他软件系统中。一般成为客户( 当然也不同于 传统的其他客户概念) ,还要具有面向对象的特点。所谓模块是可以独立的应用程 序( e x e ) 或动态链接库( d l l ) 。 可以独立于客户应用系统而进行更新。更新后不用重建客户系统,而直接 使用更新的版本。 可以供组件作者在开始进行设计时不熟悉的软件系统使用。例如,用 d e l p h i ( o b j e c tp a s c a l ) 生成的组件,也能被v i s u a lc + + 应用程序使用。 要具有可扩充性。因为事物总是发展变化的,现有的组件可能不能满足新 事物的要求,而要求有新的组件产生,而且不会产生冲突。这也体现了软件组件最 好有面向对象的特性。封装、继承和多态性是面向对象程序设计语言的三大特点。 支持网络环境,支持分布式计算环境。 22 2 对象与接口 在c o m 规范中,对象与接口是最核心的部分。c o m 对象是一个c o m 规范中 非常活跃的元素,c o m 对象被很好的封装起来,客户访问c o m 对象的唯一途径就 是通过c o m 接口,c o m 接口是c o m 规范中最关键的元素。c o m 有一个核心接 口i u n k n o w n 接口,每个c o m 组件都必须实现这个接口,而且其他所有接口都必 须均从i u n k n o w n 接口派生。 在c o m 模型里c o m 定义并实现了软组件机制,可将这些软组件统称为“对 象”。c o m 对象的位置对于客户来说是透明的,因为客户并不直接去访问c o m 对 象,客户通过一个全局标识符进行对象的创建和初始化工作。c o m 对象与c + + 类很相似,它们都支持封装、多态性及继承。c o m 对象也包括属性( 也称为状态) 7 华北电力大学硕士学位论文 和方法( 也称为操作) 。对象的状态反映了对象的存在,也是区别于其他对象的要 素:对象的方法就是对象提供给外界的接口,客户必须通过接口才能获得服务。对 于c o m 对象来说,接口是它与外界进行交互的唯一途径。 c o m 对象的客户与对象之间通过接口进行交互,客户请求服务是必须通过接 口才能进行。c o m 规范的核心内容就是关于接口的定义,虽然c o m 接口本身并不 复杂,但围绕c o m 接口有很多内容,包括接口的标识、接口函数的调用习惯、参 数处理、接口和对象的关系以及接口与c c + + 的关系和c o m 接口特性等。 2 2 3c o m 应用模型 c o m 应用是基于客户服务器模型,c o m 组件向c o m 客户提供服务,并根 据c o m 对象与c o m 客户的位置关系分为进程内组件和进程外组件。在c o m 客户 与c o m 对象的通信过程中,c o m 库起着至关重要的桥梁作用。当客户要创建c o m 对象时,由c o m 库从系统注册表中找到对象创建的必要信息c o m 这种应用模型 拥有很多优势,包括高稳定性和可靠性、很强的扩展性、性能得到了提高及数据库 的事务机制得到应用等。 c o m 客户和c o m 服务器在建立通信连接之前是没有任何联系的,c o m 客户 并不知道c o m 服务器位于什么地方,甚至有没有这样的服务器都不知道。当客户 请求某个对象的服务时,客户只需传递该对象类的标识符( c l s i d ) ,由c o m 库负 责找到组件的位置并返回接口指针给客户,然后客户就可以使用接口指针获得对象 的服务。 根据c o m 客户和c o m 服务器是否运行在同一进程地址空间,c o m 服务器可 以分为进程内组件和进程外组件。然后根据组件是否和客户位于同一台计算机,进 程外组件又可以分为本地组件和远程组件。 c o m 客户要使用c o m 对象,必须首先创建c o m 对象。如前所述c o m 对象 的创建是由c o m 库来完成的,c o m 客户只需要提供c o m 对象的c l s i d 给c o m 库。从只知道c l s i d 到要创建对象并返回接口指针,必须要经过两步: ( 1 ) 得到该c l s i d 的类厂对象。 ( 2 ) 由类厂对象创建c o m 对象,返回接口指针给客户。 得到对象的接口指针之后,客户就可以用指针直接调用接口的成员函数,还可 以从一个接口指针获得其他接口的指针,从而获得c o m 对象的所有服务。如果 c o m 客户不再需要服务了,应将c o m 对象卸载,释放掉所申请的资源。 2 2 4c o m 的重用机制:包容与聚合“站 r 华北电力大学硕士学位论文 当组件系统经过一定时间的发展后,很重要的工作就是组件系统的升级更新或 者系统扩展,包括接口的扩展,在实现新的接口和开发新的组件对象时,应充分考 虑重用已有的组件软件。所以,可重用性是c o m 的一个重要特性。因为c o m 是 建立在二进制代码基础上的标准,所以其重要性也必然建立于二进制代码一级。 c o m 重用性是指一个c o m 对象如何重用已有的c o m 对象的功能,而不是重复实 现它的功能服务。 按照c o m 的标准,实现这种二进制重用有两种途径:包容( c o n t a i n m e n t ) 和聚 合( a g g r e g a t i o n ) 。这两种重用模型的思路基本一致,只是在实现方法上有所不同。 我们先假设两个对象a 和b ,对象a 希望重用对象b 的功能,我们把对象a 称为外部对象,对象b 称为内部对象。 ( 1 ) 包容方式:对象a 包容了对象b ,当对象a 需要用到对象b 的功能时,它 可以简单地把实现交给b 来完成,虽然对象a 和对象b 支持同样的接口,但对象 a 在实现接口时实际上调用了对象b 的实现。如图1 ( a ) 所示。 ( 2 ) 聚合方式:对象a 只需简单地把对象b 的接口递交给客户程序即可,对象 a 并没有实现对象b 的接口,但它把对象b 的接口也暴露给客户程序,而客户程序 并不知道内部对象b 的存在。如图l ( b ) 所示。 a 包容 图2 1c o m 实现重用的两种机制 2 3c o m 在电力系统中的应用现状 b 聚合 由于c o m 技术有良好的封装性、重用性及可扩充性,近年来在电力系统软件 开发中也开始应用了这项技术,其中主要应用可分为以下几类: ( 1 ) 电力系统图形生成软件 目前,电力系统应用软件中出现了许多能满足特定要求的图形系统,应用于各 种场合。例如微机电力操作票生成系统、s c a d a 系统、电力系统培训员仿真系统 ( d t s ) 、地理信息系统( g i s ) 和电力系统实时控制系统等都要用到图形化的电力 系统用户界面,但是往往在开发不同的系统时,这些图形生成子系统都要重新设计、 开发,这是一项很繁重的工作,所以利用c o m 技术把这类软件开发成可重用的组 件具有很现实的意义,将会产生很大的经济效益。文献 1 6 、 1 8 分别开发了电 q 华北电力大学硕士学位论文 力系统图形生成组件。 ( 2 ) 电力系统分析计算软件 潮流计算和故障计算等电力系统的基本计算,对于电力系统分析具有十分重要 的意义。无论是在电力系统的实时运行分析中,还是在离线的电力系统规划中,以 及在网络的最有运行决策中,它们都起着无法替代的作用。经过多年的理论研究和 工程实践,电力系统的基本计算都已形成了一套成熟的理论和行之有效的算法,象 潮流计算就有高一塞法、牛一拉法、e q 分解法、直流法等多种成熟的算法,大量 的电力系统分析软件需要用到这些计算的组件,它们一般对算法本身并没有什么超 出上述经典算法的要求。因此,开发出通用的潮流计算组件和故障计算组件,让使 用不同编程语言的程序设计员都能方便地调用,就可以避免对该组件的重复开发, 节约资源并缩短开发周期。文献 1 9 、 2 0 介绍了这方面的工作。 ( 3 ) 电力系统管理信息系统( m i s ) 文献 1 8 、 2 1 介绍了建立在c o m 基础上的3 层客户服务器软件结构, 在实际管理信息系统的开发中,系统在统一规划的基础上被分层、分块、分步开发。 这样软件的可重用性和可扩充性得到提高,系统的可靠性和可维护性得到改善,同 时节省了开发时问,提高了软件的生产效率。 ( 4 ) 变电站操作票专家系统 文献2 2 1 通过对操作票专家系统通用性问题、可维护性问题及软件重用模型 的研究,把操作票专家系统分解成不同的通用推理模块,形成一个动态推理机。改 进了软件开发过程中的重用问题,提高了专家系统的通用性和可维护性。 c o m 技术除了在以上几类软件中有应用以外,还分别应用在了电力系统的数 据库系统 2 ”、监控系统及故障录波分析系统【2 4 1 等软件系统中,这些都是在这两年里 才出现的成果。这么短的时间内能有这么多的成果产生,表明了c o m 技术巨大的生 命力。c o m 所倡导的多层分布式应用体系结构将是未来软件的总体模型。总之,组 件化程序设计是软件业发展的方向,必然要有更多的电力系统软件应用c o m 来开发 设计,c o m 也必将给电力系统的软件带来很多好处和方便。 虽然c o m 技术已在电力系统中有了一些应用,但是在通用操作票的开发领域 中还尚未用到这一快捷、便利的技术,本文正是将这种极富生命力的技术应用的一 体化通用操作票的开发中来,使其更好的为电力系统服务。 2 4 v c + + 开发环境对组件对象模型的支持 活动模板库”i ( a c t i v e t e m p l a t e l i b r a r y ,a t l ) 是m i c r o s o f t 推出的一个非常重 l o 华北电力大学硕士学位论文 要的开发工具。它是一个基于c + + 的框架,它主要是用在基于m i c r o s o f t 的c o m 的 软件开发上,使用它可以大大简化组件的开发过程并提高代码的效率。a t l 同 m i c r o s o f t 的基础类( m i c r o s o f tf o u n d a t i o nc l a s s ,m f c ) 库有异曲同工之处,后者是 在w i n d o w s 平台下最常用的基于c + + 的框架。 a t l 的主要目的是创建小的、基于c o m 的软件模块,然后,再把这些模块组装 成大的应用程序。它的使用就是为了给软件开发人员在实现组件的时候带来更大的 灵活性,而不必依赖于任何辅助的d l l 文件。 a t l 提供了实现基于c o m 组件内核的支持。a t l 模板类可以完成一些非常麻烦 的实现细节: ( 1 ) a p p w i z a r d ,它负责创建起始的a t l 3 :程。 ( 2 ) o b j e e t w i z a r d ( 对象向导) ,它为基本的c o m 组件创建代码。 ( 3 ) 对低级别的c o m 功能的内置式支持,女0 i u n k n o w n 、类工厂和自注册 ( s e l f - r e g i s t r a t i o n ) 功能。 ( 4 ) a t l 支持m i c r o s o f t 的接口定义语言( i n t e r f a c e d e f i n i t i o n l a n g u a g e ,i d l ) , 它提供了对自定义的v t a b l e 接口的调度( m a r s h a l i n g ) 支持,以及通过类型库进行自 描述( s e l f - d e s c r i p t i o n ) 的功能。 ( 5 ) a t l 支持i d i s p a t c h ( 自动化) 和双向接口 d u a li n t e r f a c e s ) 。 ( 6 ) a t l 可以支持开发效率更高的a c t i v e x 控件。 ( 7 ) a t l 提供了对基本的视窗功能的支持。 总之,用v c + + 的a t l 来开发c o m 组件具有很多优势,为我们快速开发基于 c o m 的应用程序平台提供了其它开发环境所无法比拟的优点。 2 5本章小结 本章对组件对象模型的相关概念进行了论述。 首先,讲述了组件接口标准,并介绍了当前比较流行的三种开发组件的方法, 鉴于本课题的实际情况,本文选择了m i c r o s o f t 公司的c o m 技术来进行组件的开发。 其次,论述了组件对象模型的基本概念,讲述了c o m 实现重用机制的两种方 法:包容和聚合。 再次,介绍了当前组件技术在电力系统中的应用情况,c o m 技术已经成功的 在电力系统分析计算软件、电力系统图形生成软件、电力系统管理信息系统等得到 华北电力大学硕士学位论文 了应用,但是在一体化通用操作票中还没有应用,本文的主要工作就是将这已技术 应用到一体化通用操作票的开发中来。 最后,介绍了使用v c + + 开发环境中的a t l 开发c o m 组件的便利之处。 1 2 华北电力大学硕士学位论文 第三章可维护性的研究与实现 3 1通用性与可维护性的现状 通用性和用户可维护性是决定智能操作票专家系统生命力的关键因素之一1 2 5 1 , 不理想的通用性和用户可维护性是操作票专家系统至今仍未解决的问题。如何提高 系统的通用性和用户可维护性,是值得探讨的问题。 智能操作票系统的开发工作量大、开发周期长。对于开发者来说,若能将已开 发的系统经过简单修改就能准确地应用于另外一个电网中,将节省大量的人力、物 力和财力;而对于用户来说,电网结构等方面经常更改,增减设备等操作若无须通 过开发单位,自行进行简单的操作即可适应更新后的系统,则无疑同时方便了开发 者和用户。前一个问题归结于通用性的问题,而后者则属于用户可维护性问题。 目前,国内变电站智能操作票系统的通用性已经曰臻完善,基本达到经过简单 的修改即可适合另外一个变电站开票和管理的要求,而且可供用户选择修改和维护 的范围也较大 “2 ”。如华北电力大学开发的变电站智能操作票系统,已经形成产业 化,在全国四百多个变电站应用,并且现场反应良好。通过大量研究变电站操作票 的特点,找寻变电站操作涉及的设备及操作内容的共性,形成典型设备的操作模板。 而对于具体设备的操作顺序和操作术语,各地差别较大。通过模板学习机制和用户 配置平台,来实现通用性和用户可维护性。 与变电站相比,电网调度操作更加复杂,对于同一操作任务,由于对侧的状态 不同,导致操作操作步骤也会有很大的差异。所以通用性的研究就更具有难度,电 网调度智能操作票系统的通用性和用户可维护性的研究有以下特点: ( 1 ) 电网设备数量大,任务组合复杂,难以穷举。 ( 2 ) 各地电网调度操作涉及的对象、管辖范围及深度各不相同,例如:福建 电网调度中主要管理联络设备,不涉及到具体站内设备;而江西电网调度则需要涉 及到管辖范围内地具体设备。因此如何灵活地适合各地电网不同的操作对象,是通 用性要研究的一个重要方面。 ( 3 ) 操作术语各地表述不一致。对于同样的操作,各地的表达习惯不尽相同, 因此如何适应表达习惯的不同也是实现通用性的一个重要方面。 ( 4 ) 在操作规则方面,由于缺乏统一的标准,各地的操作规则虽然在大的原 则方面统一,但是在细节方面却不尽相同。 ( 5 ) 电网扩展、设备投退或设备类型更新等造成的电网结构变更时,由于数 13 华北电力大学硕士学位论文 据的关联性,会造成数据的更改,并且操作复杂,对于那些系统设计只针对自身的 技术特点,开发的某些软件过于固化,即使是电网结构的微小变化,也必须由软件 开发者对其程序源代码做大量的修改,这样的一些智能系统不能适应通用性的要 求。 由于以上几方面的原因,电网调度操作票智能系统的通用性和用户可维护性并 未达到真正的实现。纵观己经投入现场运行的智能操作票专家系统,同时解决以上 问题的系统尚未出现。 通用电网调度操作票系统要求在实现所需的功能外,还要考虑电网调度与下一 级集控站、变电站的协调和连接,通用性实现的难度无疑进一步增加了。本文以组 件的方法,从出票格式的通用实现、动态模板学习等几方面对操作票的通用性和用 户可维护性进行了研究。 3 2 通用性与可维护性的研究 与变电站不同,电网所包含的设备很多,随着电网中设备元件的更新的日趋频 繁,同时存在着设备的退役的情况,电网整体或局部结构也发生着变化。作为智能 化的操作票专家系统必须能够适应这种电网结构上的更新与变化。 整个系统在通用性和用户可维护性的设计上,主要面临以下三个问题: ( 1 ) 如何实现图形界面的通用性和用户可维护性是首先要解决的问题。 ( 2 ) 如何解决数据结构的通用性和用户可维护性。 ( 3 ) 如何实现出票格式的通用性和用户可维护性是最关键的问题。 3 21 图形界面的通用。性和用户可维护性 3 2 1 1 图形库与数据库及程序之间的连接 d d e ( d y n a m i cd a t ae x c h a n g e ) ,即动态数据交换,它是w i n d o w s 所支持的三 种内部通信机制之一,是建立在w i n d o w s 消息系统上支持应用程序之间数据交换的 一种方法,是应用程序之间通过共享内存进行进程间通信的一种形式。d d e 实际上 是一种开放式的、与语言无关的、基于消息的数据交换协议,是应用程序之间的协 作标准,该协议允许应用程序之间利用w i n d o w s 的消息处理机制来进行数据交换和 远程命令的执行,d d e 是不需要用户干预的最好的数据交换方法。通常应用程序需 提供一种方法( 本系统采用名称对应的方式,即d d e n a m e 对应) ,使用户能建立 起一个应用程序之间的数据交换的链路,一旦建立了数据链路,应用程序之间就可 以自动地进行数据交换。( 见下页图3 1 ) 1 4 华北电力大学硕士学位论文 3 2 1 2 图形界面的通用性和用户可维护性 利用d d e 连接通用性和无需用户干预的特性,在数据库和i n t o u c h 之间建立以 d d e n a m e 为对应关系的数据交换链路,完成数据库相应字段的图形显示。考虑到 快速性的总体要求,实时数据的显示大部分是通过内存链表与图形界面的连接来实 现的。 图3 1 图形库、数据库和程序之间的连接 由此可见,对于图形界面的整个维护工作只涉及d d e n a m e 的维护。 32 2 数据结构的通用- 性和用户可维护性 数据结构的通用性和用户可维护性是整个系统通用性和用户可维护性的基础, 在研究和实现上主要面临以下几个问题: ( 1 ) 电网设备数量大,任务组合多,各地电网不尽相同。 ( 2 ) 各地电网调度操作涉及的对象、管辖范围及深度不同,因此如何灵活地 适合各地电网不同的操作对象,是通用性要研究的一个重要方面。 ( 3 ) 电网调度和变电站所涉及的实时数据的通用性和可维护性设计。 鉴于以上几方面原因,对于数据结构的设计,首先是最大限度的总结不同地区 的共性,按照这些共性设计数据结构的主体,保证通用性的实现。同时,对于电网 中属于地区特性的数据,通过设计简洁的用户维护方式,完善数据结构的搭建。对 于新添加的字段设计,也是按照上述模式设计实现的。 对于一次设备方面,我们从三个层次来考虑与操作票有关的数据,首先是电网 层,这一层主要是通过运行方式来制定电网运行所受到的相关限制,其中以主变中 性点( 属于主变中性点接地问题) 、倒负荷和电网操作过程中继电保护和自动装置 的约束这几方面为主要考虑的内容;其次是厂站、线路层,由于线路起到联络厂站 或电网的作用,所以我们将线路和变电站划到同一层,以便于管理和操作。这层主 要以停供电顺序为主要约束条件;第三层则为变电站内部的可操作元件层,这一层 1 5 华北电力大学硕士学位论文 中主要是以间隔为主对具体元件进行划分,我们通过描述典型接线形式的间隔状态 来确定组成间隔的元件状态这层的主要约束条件为五防逻辑。 图3 2 一次设备关系 对于二次设备,我们采用了模板数据与实例化数据两部分来设计,模板部分是 将二次设备按所属厂商的大型号( 而不是具体的型号,如四方公司的c s l 一1 0 1 保 护,我们只按c s l 一1 0 0 系列保护来生成模板,而不是具体到c s l 一1 0 1 a 或c s l 一1 0 1 b ) ,以保护屏为单位,按保护屏一装置一插件一保护的顺序来组件模板,分 级提取相关的数据信息。当调度单位具体使用到那种保护,则在实例化数据的时候 将该保护的信息匹配进去即可。 3 2 3 出票格式的通用性 通过分析已经投入运行的电网调度操作票和变电站操作票系统可以看出:如果 在开发过程中规定了操作票的出票格式显然不能适应用户需要。而且,作为开发者 来说,也不可能穷尽所有电网不同的出票格式。但是归结起来原则上有三种格式: 综合语句格式,通常为网、省调的出票格式,例如福建电网调度习惯:水 福线5 0 4 2 5 0 4 3 线路由运行转冷备用; 详细操作格式,通常为变电站的出票格式,例如珠海变电站出票习惯:5 1 1 停电,线路工作; 既有综合,也有详细格式,通常为地调的出票格式,在一张票中,在某些 操作中需要给出详细操作细目,而在某些操作只须给出综合性的语句。 3 2 3 1 状态表示 根据出票格式的需要,状态表示有两种方式:详细状态表示和综合状态表示。 ( 1 ) 详细状态表示 t 6 华北电力大学硕士学位论文 任何设备都是在其运行状态空间内运动。因 此,首先需要定义每类设备的运行状态空间,其次 状态空间应该是可扩充、可修改,即具有学习功能。 比如间隔的运行状态有4 种:运行、热备用、冷备 用和检修。每种状态定义为: 运行:开关及其两侧各有1 个刀闸在合闸 位置; 热备用:开关在断开位置,两侧各有1 个 刀恫在合闸位置: 冷备用:开关及其刀闸均在断开位置; 检修:在冷备用状态下,开关在两侧各装 l 5 1 1 3 上扎5 1 1 4 5 t t 5 1 1 - 1 、 一飞5 1 1 - 2 r 、1 - 图3 3 出线间隔 旁路母线 l 段母线 i i 段母线 接地线或合上接地刀闸。 针对这种定义,我们可以规定各种设备的具体数据表达。 下面以双母线带旁路的线路间隔为例( 图3 3 ) ,相应的状态定义及数据如表 3 1 所示。 在实际现场中,间隔的基本接线方式是相对固定的信息,因此可以列举典型问 隔接线方式下的出线开关详细状态的数据,同时设计好学习机制,提供面向用户的 友好示教维护平台。 ( 2 ) 综合状态表示 综合状态的表示一般不涉及到具体开关的开合,即无须指出开关( 刀闸) 的 o n o f f ,而是给出调度专用操作术语的形式。仍然以上面的双母线带旁路出线间 隔的出线开关为例,表3 2 给出了一些调度术语与设备状态的对应关系 3 2 3 2 初始状态和目标态 初始状态是指设备当前所处的状态,而目标态则指倒闸操作后的状态,即设备 在操作结束后所在状态。两者均以表3 - 2 的形式表达。 初始状态的获取,来自于实时数据库,系统按照固定格式从实时数据库中读取 所需要的状态量;目标态的形成则依赖于既定的状态信息表。必须注意:初始状态 和目标态涉及的开关量必须一一对应。 3 2 3 3 拟票过程和出票格式 目标状态的匹配,即搜索数据库,寻找相关联的设备及其状态。结合相应的 1 7 华北电力大学硕士学位论文 则,形成正确的操作术语。 如上所述,各地电网调度的出票格式 不尽相同,但从原则上可以归结为两种类 型:综合形式和详细形式。 在推理过程中采用内部符号的形式表 述,然后结合操作术语翻译成配置的操作 票格式。操作术语是允许用户修改和配置 的,出票流程如图3 4 所示。 32 4 操作术语的处理方法 对于同一种操作,各地表达习惯不尽 相同是既定的事实,主要集中在任务的表 达上。这在很大程度上限制了电网调度操 作票系统通用性的实现。但是这个问题并 非不能解决,大多数智能系统的做法是将 注:1 代表o n ,0 代表o f f 图3 4 出票流程图 表达习惯写入代码中,这样即使代码包含了许多的信息,而表达习惯是不能穷尽的, 百密必有一疏,这样的系统只能说是某种程度上的穷尽,不是真正的智能系统,一 1 8 华北电力大学硕士学位论文 旦出现不同的习惯,必须修改原代码。而且,由于需要存储大量的表达习惯的信息, 造成资源的浪费,推理效率的降低。 操作细节也是一个可变的因素,虽然在电气操作中,必须严格遵守一些原则, 但是在具体实现时,在遵循这些原则的前提下,不同的地区仍然会有不同的操作顺 序。 3 2 4 1 任务名称设置 对于同一种性质的任务,不同电网调度表达习惯可能会有很大的差别。例如: 对于开关倒线路,福建电网调度中习惯为:“5 1 1 开关由接i 段母线转接i i 母线运 行”而在江西电网调度中则为:“5 1 1 开关由接i 段母线倒至i i 母线运行”,如果在 代码中写定“转接”或“倒至”显然不符需要。而对于同一种操作下的操作细节, 也不尽相同。 本智能系统的做法是由用户自定义任务的表达方式,用户可以随意设定欲采用 的表达方式,并且将这种任务存储下来,形成任务名称库,在建库豹同时,还需要 用户选择指定专家信息,如图3 5 所示。 设备类型堕垂壁叠 二二_ 国接线方式匿要翌夏至重! 二日 翠努爆 一望塑篱 予任务悔改! l-+。h_,_-十,-hhh_u-“-1”h-_-h-u-v_hh。一 出票格式傺改r - ( 夏匿二) d 二d o 二亘) 匝二d o | = = 二d 图3 5 任务名称设置 32 4 2 任务目标态设置 任务目标态设置就是针对在任务名设置中形成的各种任务名称,设置具体的目 标状态。我们认为,操作任务下达后实际上给定了一些设备应最终所处的状态,即 目标态,操作的过程就是将这些设备按规程一步一步的操作到目标态,这样就形成 1 q 华北电力大学硕士学位论文 了操作步骤,也即操作票的内容。经过目标状态的设定,将任务名称与任务目标态 建立了一一对应的关系,并且将这种设定的对应关系存储下来,为推理做知识准备。 因此,在推理时可以避开变化因素一一任务名称,得出合理的结果。任务目标态的 设置如图3 6 所示。 兰! i ! ! ! 孽一一一一一一一一一一l 珀塑 设备类型垂遁烫至! 二盈接线方式i 垂蔓墅受j 匠一一固总任务匡重耍垂亘垂重蔓蔓熏二二二二二二二二:二二二 i ;:】 任务列衰嚯雪雪雪雪重重量雪童i i i 重固位置耍砸二二二日设备雹耍亘 二盈初态题雪互二二盈末态遁夏二二卫 :一! :j ) c 垂遂) ( 一堕一) 臣二:j j ;:) ( 兰蔓) 湮巫园( 夏:至 图3 6 任务目标态设置图 32 5 电网拓扑结构及其知识更新 图论是研究事物及事物间相互联系的一门科学。在图论中将事物抽象为点,将 事物间的相互关系抽象为点的二元关系,称为边或线。点及其二元关系总称为图。
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 热带作物栽培工测试考核试卷及答案
- 微晶玻璃工职业技能考核试卷及答案
- 物流无人机驾驶员设备调试考核试卷及答案
- 医疗技术类面试题及答案
- 汽车售后预约服务法规及OTR系统知识测试卷
- 地铁专业考试题库及答案
- 考研财务专业试题及答案
- 秦巴地区零碳生态县(区)建设指南编制说明
- 湖北省汉川市金益高级中学2025-2026学年高二上学期9月起点考试英语试卷(原卷版)
- 安徽省淮南市第二中学2025-2026学年高二上学期开学考试化学试题
- 2025年吉林省的劳动合同书范本
- DB46-T 720-2025 水务工程施工资料管理规程
- 经验萃取课件
- 金融标准化知识培训课件
- 2025广东惠州惠城区招聘社区工作站工作人员66人笔试备考试题及答案解析
- 洋务运动和边疆危机课件-2025-2026学年统编版八年级历史上册
- 2025新和县招聘社区工作者(第二批35人)笔试备考题库及答案解析
- 八年级历史上学期 导言课 课件(内嵌视频)
- 反电信诈骗课件
- 技能提升补贴个人申请表
- 小升初重点专题立体图形计算题(专项训练)-小学数学六年级下册苏教版
评论
0/150
提交评论