




已阅读5页,还剩51页未读, 继续免费阅读
(计算机软件与理论专业论文)基于组态的继电保护测试软件平台的设计与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 摘要 随着电力工业的迅速发展,电力系统的规模不断扩大,对继电保护测试技术 有了更新更高的要求。虽然传统的继电保护测试软件能达到够实用水平,可以 完成基本功能的测试,但软件很难维护和升级。近年来有人出现了基于组件的 继电保护测试软件平台的设计思想,此种设计将多态和程控源,两种基本测试 类型封装成组件,其它测试类型通过调用该组件来完成测试。虽然此种方法便 于维护,但它不能完全覆盖所有测试类型。 本文所提出的基于组态的继电保护测试软件平台,就是将组态思想、组件技 术及软件平台相结合,运用到继电保护测试软件框架的设计中。该设计将传统 的继电保护测试系统的各个测试类型o i ( 用户界面) ,重新划分设计。把其中的通 用部分重新封装,制作成能独立运行的组件,而各测试类型中的剩余部分则根 据逻辑关系的不同封装成独立的一个或多个组件,因此该平台的通用性很好, 能很好的覆盖原有的测试类型。此外该平台大大提高继电保护软件二次开发的 快速性和高效性,增加继电保护软件产品的稳定性;而在具体编码实现时,采 用了a c t i v e x 控件的开发方法,将各个模块封装成能独立运行的a c t i v e x 组件, 提高了代码的可重用性,增强了软件的可维护性和稳定性。 关键词:继电保护测试:组态思想:组件技术:组态平台的设计 a b s t r a c t w i t ht h er a p i dd e v e l o p m e n to fp o w e ri n d u s t r y , p o w e rs y s t e m s h a v eb e e n e x p a n d i n go nt h er e l a yp r o t e c t i o nt e s t i n gt e c h n i q u e s w h i l et r a d i t i o n a lr e l a y t e s t s o f t w a 】:ec a na c l l i e v ee n o u g hp r a c t i c a ll e v e l ,i ti sd i f f i c u l tt om a i n t a i na n du p g r a d e t h e s o f h a r e r 。c e n t l y ,an e wd e s i g nb a s e do nc o m p o n e n tt e c h n o l o g y f o rt h er e l a y p r o t e c f i o nt e s t i n gs o f t w a r ei sp u tf o r w a r d ,w h i c h t a k et w ob a s a lt e s t i n gp r o c e s s e sa sa c o m p o n e n t ,o t h e rt e s tt y p e sb yc a l l i n gt h ec o m p o n e n tt oc o m p l e t e t h et e s t t h i s m e t l l o dw o u i df a c i l i t a t et h em a i n t e n a n c e ,b u ti t i sn o tc o m p l e t e l yc o v e ra l lt h et e s t 够p e i nt t l i sp a p e r ,o v e r v i e wo ft h ei d e o l o g i c a lc o n f i g u r a t i o n ,c o m p o n e n tt e c h n o l o g y a n dt l l es o f l w a r ep l a t f o r mw e r eu s e di nt h ed e s i g no fr e l a yp r o t e c t i o nt e s ts o f t w a r e b a s e do nt h ec o n f i g u r a t i o no ft h ep r o t e c t i v er e l a yt e s t s o f t w a r ep l a t f o r mw e d e s i g n e d t h ed e s i g nt o o kt r a d i t i o n a lp r o t e c t i v er e l a yt e s ts y s t e m su ir e d e s i g n e d i n o r d e rt or e p a c k a g et h ec o m m o np a r ti n t oc o m p o n e n t s t h er e m a i n d e ro f t e s tu n i tw a s r e p a c k a g e db a s i co nt h el o g i c a lr e l a t i o n s h i p s o t h es o f t w a r ep l a t f o r ml m p r o v e s s o r 撕l r ei n t e r o p e r a b i l i t ya n dc o u l d c o v e ra l lt e s tt y p e i na d d i t i o n , t h er e l a ys o r w a r e p l a t f o 册c o u l de n h a n c et h es e c o n d a r yd e v e l o p m e n t o fs p e e da n di n c r e a s et h es t a b i l i t y o fr e l a yp r o t e c t i o ns o r w a r ep r o d u c t u s i n ga c t i v e x c o n t r o ld e v e l o pm e t h o dc o u l d i i i l p r o v et h ec o d er e u s a b i l i t ya n d e n h a n c e ds o f t w a r em a i n t a i n a b i l i t ya n ds t a b i l i t y k e yw o r d s :r e l a yp r o t e c t i o nt e s t ;c o n f i g u r a t i o ns o f t w a r e ;c o m p o n e n t t e c h n o l o g y ; c o n f i g u r a t i o np l a t f o r md e s i g n i i 学位论文独创性声明 学位论文独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作及取得的 研究成果。据我所知,除了文中特别加以标注和致谢的地方外,论文中不包含 其他人已经发表或撰写过的研究成果,也不包含为获得直昌太堂或其他教育 机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何 贡献均已在论文中作了明确的说明并表示谢意。 学位论文作者签名( 掏:邓心签字隰2 护f p 年1 月7 日 学位论文版权使用授权书 本学位论文作者完全了解南昌盔学有关保留、使用学位论文的规定,有权 保留并向国家有关部门或机构送交论文的复印件和磁盘,允许论文被查阅和借 阅。本人授权南昌大学可以将学位论文的全部或部分内容编入有关数据库进行 检索,可以采用影印、缩印或扫描等复制手段保存、汇编本学位论文。同时授 权中国科学技术信息研究所将本学位论文收录到中国学位论文全文数据库, 并通过网络向社会公众提供信息服务。 ( 保密的学位论文在解密后适用本授权书) 学位论文作者签名( 手写) :邵风踊 签字日期:加睁1 月 e t 翩掏:乏每曲 签字日期:2 0 o 年月7 e l 第1 章引言 第1 章引言 1 1 论文的背景与意义 随着电力工j i k 的迅速发展,电力系统的规模不断扩大,对继电保护的要求越 来越高。继电保护【l j 作为一种有效的反事故自动装置,它的作用是当电力系统中 电气元件或设备发生故障时将故障元件从电力系统中切除,使故障原件免遭更 大的破坏,并使电力系统尽快恢复正常运行,其可靠动作对电力系统的安全稳 定运行起着重要的作用。继电保护测试装置是在运行前和检修期间对继电保护 装置进行检查的重要设备,它对尽早检测出保护装置的故障、保证电力系统安 全稳定地运行有着重要的意义。 继电保护测试系统控制继电保护测试装置发送模拟量来完成测试,通过控制 模拟量的变化可以实现各种不同故障模型,达到对多种保护进行测试的日的, 并将结果以报告或图表方式打印【2 】。当前的继电保护测试系统一般由上位机和下 位机构成。上位机由p c 机上的测试软件进行管理和控制,主要完成模拟数据的 输入和控制变量的设置工作,并通过串口、u s b 口或网口与下位机进行通信, 传送控制命令、数据以及实时监测测试设备的反馈信息。下位机由d s p 控制, 根据上位机的指令和数据进行实时运算,向继电保护装置输出模拟量( 包括电压、 电流和开关量等) ,其产生的数值信号经d a 转换和功率放大后输出四路电压和 三路电流到继电保护装置。同时将保护装置的动作结果,运行状况以及电压电 流输出端口的采样值传回给p c 机,并生成测试报告以实现继电保护的测试【3 j 。 当前传统的继电保护测试软件【4 一】根据保护类型的不同,将软件划分成多个 通用的测试类型,每个测试类型可单独完成各自的测试功能。虽然传统的继电 保护测试软件已达到实用水平,能够满足用户的需求,完成基本功能的测试。 但是客户在实际中,需要增加或订制新的测试类型时,就需要工程师频繁修改 测试系统底层代码,对系统的稳定运行造成极大的隐患,同时增大了二次开发 的难度。这是由于软件的设计思想和结构存在以下不足所造成的。 ( 1 ) 测试类型缺乏灵活性:传统的继电保护测试软件只包含十多个通用的测试 类型,难以完全覆盖实际生产中的新需求。各测试类型一旦成型,难以改变。 这就导致程序开发人员,针对不同新需求,做大量修改工作。传统的继电保护 第1 章引言 测试软件如果需要增加新的测试类型或修改某些条件或参数,则可能需要改变 整个测试系统。 ( 2 ) 软件可维护性差:软件很难在不同应用环境中共享代码。传统的继电保护 测试软件一般需要在w i n d o w sc e 等嵌入式环境中运行,这就需要利用e v c 重新 开发。而e v c 和v c 6 0 的环境有很大的不同,这就增加了开发难度不利于维护。 ( 3 ) 软件严重依赖编程语言:传统的继保测试软件如果需要不同的语言版本则 需要重新开发睇j 。 鉴于上述缺点,有人提出了基于组件继电保护测试软件平台的设计 6 1 。此设 计主要是通过组件技术和软件平台思想来构造测试软件。测试软件的各测试模 块和通讯过程都是通过调用组件来完成。由于组件的通用性,使得测试模块实 现起来更简单、灵活,系统也易于维护。但在以下几个方面存在问题: ( 1 ) 仅有多态和程控源两个测试组件,其它测试类型必须通过调用这两个组件 实现。这就导致对于一些新的测试类型并不能被上述方法所覆盖。 ( 2 ) 对于复杂的联合测试类型,用户不能任意“组装 测试过程,用户必须多 次输入相同的测试数据,增加了用户的使用难度。同时需要多次调用多态和程 控源组件,增加了程序控制的难度。 本文针对以上两点对皋于组件的继电保护测试软件平台重新进行了设计,将 组态【7 8 】的设计思想,组件技术及软件平台相结合,运用到继电保护测试软件框 架的设计中,提出了基于组态的继电保护测试软件平台的设计。组态软件能为 用户提供一种界面操作简便直观、面向最终用户、包含大量系统和可复用的组 态工具,使不熟悉软件开发过程却了解业务流程的技服人员( 或用户) ,无需代 码编程,直接使用该工具,通过对功能构件的组装集成来实现应用系统。而使 用a c t i v e x 技术编写软件,很大程度上提高了软件的复用性。将组态思想和组件 技术应用到软件平台的设计中,使用户能够方便的进行二次开发,增强了软件 的可维护性。因此基于组态的继电保护测试软件平台对于提高软件的开发效率、 增强软件的重用性和可维护性具有重要的现实意义。 1 2 继电保护测试系统简述 1 2 1 继电保护测试系统工作原理 本课题所研究的继电保护测试软件平台采用的是上位机和下位机相结合的 2 第1 章引言 继电保护测试系统,p c 机管理上位机,通过通信接口与下层的测试设备( 即继电 保护测试装置) 通信,发送控制命令和测试数据,并接收测试设备的反馈信息。 下层由测试设备内部的d s p 进行高速的数字信号处理【9 1 0 , 1 1 1 ,向保护装置输出 模拟电力系统的电压、电流和开关量,同时监测继电保护装置的动作状态。测 试系统原理图如图1 1 所示 曲 图1 1 继电保护测试系统原理图 1 2 2 继电保护测试系统测试内容 继电保护测试系统以v c 3 3 为数字核心部件,硬件系统由智能i o 接口电路、 十二路d a 、六路电压功放、六路电流功放、g p s 接口、u s b 接口,r s 2 3 2 组 成【1 2 朋】。其工作过程可以分为三个部分:设定试验条件和参数,准备实验数据, 输出试验结果。测试开始前,要首先确定测试类型和测试参数,其中包括:测 试项目( 测试类型) 、故障类型、测试控制参数( 开入量、开出量的设置) 、测试输 入的多路电压电流值。试验条件设置完成后,在没有按下“开始测试键之前, 还是可以修改一些测试条件。 开始测试后,根据输入的要求,主机( 即继电保护测试装置) 通过智能i o 接 第l 章引言 口电路,向1 2 路2 4 位数模变换器d a c 实时地送出模拟量,再经过平滑处理及 功率放大后,可同时送出多达六相电流i a 、i b 、i c 、1 1 、1 2 、1 3 和多达六相电压 u a 、u b 、u c 、u i 、u 2 、u 3 ;电流回路则可以把三相电流接成回路以获得3 1 0 。 1 2 路功放电源都没有经变压器隔离,它们有一个公共的接地点( o v ) 。同时继电 保护测试装置可以通过智能i o 接口电路快速精确采集8 路跳合闸信号开关量, 获得毫秒级的保护动作时间,并可根据输入的要求在超前或落后故障发生时间 输出4 路开关量接点信号。为了测量和自校的方便,还将模拟输入通道1 0 a 档 电流和2 5 0 v 档电压,作为预留通道。 1 3 基于组态继电保护测试软件平台简述 基于组态的继电保护测试软件平台是用组态的设计思想,a c t i v c x 组件技术, 将各个测试类型中的通用部分重新封装,制作成能独立运行的组件,各测试类 型中的剩余部分根据逻辑关系的不同封装成独立的一个或多个组件。用户( 或组 态工程师) 通过自由的装配软件平台中的组件生成测试界面,测试界面调用相应 的组件与下位机完成通讯,传递、计算测试参数及返回结果,最后生成测试报 告的过程。如图1 2 所示 曰 巨固 设 卜 t 生叫匀 广_ 1 传递赫参叫! 兰竺i 宣”未 宣 图1 :2 组态软件平台流程 4 第1 章引言 1 3 1 基于组态的继电保护测试软件平台的优势 由于a c t i v e x 组件技术已经很成熟,所以开发难度相对较小。组态思想应用 广泛,在现实生活中有很多应用典范。因而此软件平台具有很大的优势,具体 如下: ( 1 ) 具有很强灵活性。用户通过使用软件平台封装的组件,所组装成的测试类 型能够覆盖所有的测试类型。软件平台生成的测试界面是用户自己组装的,能 更好的满足用户需求。但由于软件使用了大量的表格控件,故组件类型上比较 单一。 ( 2 ) 提高了软件的稳定性。组件是能独立运行的,相互之间不存在制约关系, 故在软件维护和升级时,只需要对相应的组件进行升级和维护而不需要改动整 个程序。 1 4 组态软件的现状 组态软件最早应用于工业监控,因此组态软件也称之工控软件。8 0 年代末, 随着个人计算机的普及,有人开始研究如何利用p c 进行工业监控。世界上第一 个把组态软件作为商品进行开发、销售的专业软件公司是美国的w o n d e r w a r e 公 司,它于8 0 年代末率先推出第一个商品化监控组态软件i n t o u c h 。此后监控组态 软件在全球得到了蓬勃发展,目前世界上的组态软件有几十种之多,总装机量 有几十万套。 9 0 年代以后,控制系统中的软件硬件构成比例发生了变化,控制软件所占 的比重呈增长趋势,如何提高工控软件的功能和性能,又成为了控制系统发展 的焦点。近年来随着计算机、通信等相关领域技术,特别是网络技术及现场总 线技术的迅速发展,使工业控制的应用范围进一步扩大,出现了诸如计算机集 成过程控制、网络控制、异地监测、异地控制等新兴应用领域。这些为工控组 态软件提出了新的要求,同时也为其提供了广阔的发展空间。继电保护测试设 备已经成为电力系统中必不可缺的重要组成部分。因此,如何将组态思想应用 到继保测试软件的设计中有着重要的研究意义。它为继保测试软件的发展提供 了一个新的研究方向,是摆在继保护软件开发商面前的一个重要研究课题【1 4 j 。 当前国际上知名的工控组态软件有美国商业组态软件w o n d e r w a r e 公司的 i n t o u c h 、i n t e l l u t i o n 公司的i f i x 、n e m as o f t 公司的p a r a g o n 、t ae n g i n e e r i n g 公司 第1 章引言 的a i m a x 、德国西门子公司的w i n c c 等1 1 5 1 6 , 1 7 1 羽。国内的组态软件起步也比 较早,目前实际- r q k 过程中运行可靠的有北京昆仑通态自动化软件科技有限公 司的m c g s 、北京三维力控科技有限公司的力控、北京亚控科技发展有限公司 的组态王以及台湾研华的g e n e i 等【1 4 j 。 但由于组态软件一般价格昂贵,这些公司出于自身的商业利益,一般都不公 开自己的设计思想、方法,只是公开产品的性能和使用说明。国外的组态软件 相对更加成熟,扩展组件品种多、功能较完善。国产工控组态软件本身具有系 统的特性,应用范围有很大的不足。因此,多年以来,国产组态软件与圜外优 秀的组态软件相比仍有很大的差距,亟待大力发展。 1 5 本文的工作与组织 本课题的研究以基于组件的继电保护测试软件平台的设计和实现为背景,引 进组态思想,对原组件重新分割,旨在开发出一套通用化的组态平台。本文主 要在以下几个方面经行研究: ( 1 ) 介绍了传统的继电保护测试系统的原理,比较了传统的继电保护测试系统 和基于组件的继电保护测试软件平台之间的优劣,结合组态思想提出了基于组 态的继电保护测试软件平台的设计思想。并分析了该组态平台的可行性。 ( 2 ) 进一步阐述组态的概念、特点,介绍了c o m 原理和a c t i v e x 组件规范, 以及组件的设计方法。 ( 3 ) 对组态软件平台进行总体设计,完成继电保护测试软件平台的总体架构。 ( 4 ) 详细介绍组态平台各功能模块的实现过程。 本文的章节安排如下: 第2 章主要介绍了组态软件平台和组件的开发方法,详细介绍了组态的思 想、组态平台的特点及组态平台开发软件的过程。在组件的开发方面重点介绍 了c o m 规则和a c t i v e x 技术。 第3 章主要介绍了组态平台开发的思想,通过对继电保护测试系统数据流 程、逻辑模型的分析,对基于组态的继电保护测试软件平台进行了总体设计。 对组态平台进行了框架设计、功能设计、结构设计,并明确了该组态平台的设 计目标。 第4 章在总体设计的基础上,对组态平台进行详细设计。通过对传统测试类 6 第1 章引言 型的归纳抽象,提取出了公共界面元素用组件封装的方法,完成组件的库的构 建。本章详细测试界面元素的封装成控件的过程,包括控件的数据类型、成员 函数、接口函数等。并以多态测试类型为例,介绍了组态平台开发测试类型的 过程。 7 第2 章组态思想和组件技术 第2 章组态思想和组件技术 用户利用组态软件,根据应用的要求,以灵活的方式配置、组合各功能模块, 构成用户应用软件。组态一词反映了组态软件二次开发测试流程的过程。 2 1 组态软件平台 2 1 1 组态思想 “组态”的概念最早来自英文c o n f i g u r a t i o n ,其含义是使用软件工具对计算 机及软件的各种资源进行配置( 包括进行对象的定义、制作和编辑,并设定其状 态特征属性参数) ,达到使计算机或软件按照预先设置,自动执行特定任务,满 足使用者要求的目的【1 9 1 。其思想最早出现于工业自动化控制领域的软件开发中, 并且已经在工q k 自动化控制领域得到广泛应用【2 0 2 1 】。 组态软件的设计和实现机制方面具有很大的开发难度,它与传统开发手段有 着本质的不同。传统的开发模式是针对一个明确的用户,通过对用户需求具体 的分析、归纳、抽象,从而开发出应用系统。而组态软件的面向是一类对象, 它是对同一类应用系统进行分析、抽象,进而开发出具有普遍性和通用性的系 统。 2 1 2 组态平台软件的特征 ( 1 ) 实时多任纠1 6 ,1 7 1 8 2 2 】 实时多任务是组态软件的熏要特点。在实际工业控制中,同一台计算机往往 需要同时进行实时数据采集、处理、存储、检索、管理、算法的调用,实现图 形、图表的显示、实时通信等多个任务。 ( 2 ) 接口开放 在实际应用中,用户可以方便的使用v b 或v c h 等编程工具自行编制或定 制所需的设备构件( 本课题中也即组件) ,装入设备工具箱,不断扩充设备工具箱。 很多工控软件提供了一个开发向导,自动生成设备驱动程序框架。 ( 3 ) 可靠性高 可靠性一般是指系统的某一部分( 单机) 发生故障时,利用未发生故障部分 8 第2 章组态思想和组件技术 仍可使系统继续下去,并且还能迅速发现故障,很快地恢复。由于用户系统几 乎不通过直接计算机编程实现,并且平台采用了组件技术,将各功能划分成了 独立的模块,极大提高了系统的稳定性。 ( 4 ) 通用性强 每个用户可以根据自己的需求,在不需要了解底层逻辑结构,也不需要更 改底层逻辑处理过程的情况下,利用组态平台提供的组件,就能创建成一个界 面美观、数据实时处理的测试流程。 ( 5 ) 现场开发 由于系统是组态平台,所以开发人员( 组态工程师或用户) 可以在测试现场 直接开发,生成满足用户需要的测试程序。这样大大减少了开发的环节,加快 了整个系统的开发时间。开发人员在现场调查需求的同时,也是在对系统进行 设计,通过自由的装配软件平台中的组件生成测试界面、完成测试用例,从而 找出继电保护设备存在的隐患。 “ ( 6 ) 高效的通讯能力 简单地说,组态软件的通信即上位机与下位机的数据交换。开放性是指组态 软件能够支持多种通信协议,能够与不同厂家生产的设备互连,从而实现负责 监控的上位机与负责数据采集的下位机的双向通信,它是衡量工控组态软件通 信能力的标准。能够实现与不同厂家生产的各种工控设备的通信是工控组态软 件的永远追求。 ( 7 ) 良好的人机交互圆能力 组态软件提供了良好的用户接口,操作员可以方便得自主构建测试界面,确 定测试流程及获取整个生产过程的信息,如测试结果显示、测试画面、报警显 示等信息。同时,操作员还可以在线修改参数或发出操作指令,直接干预生产 过程。 2 1 3 组态平台开发软件的过程 利用组态软件平台开发软件的整个过程需要以下四个阶段。 ( 1 ) 明确用户需求 明确需求关系,确定系统的总体目标:设定系统的功能、资金投入等。确定 系统的总体设计,明确系统的层次结构和各个子系统的结构:通过对使用单位 管理体制的分析,确定系统工作模式并依据职能划分子系统,明确子系统间的 9 第2 章组态思想和组件技术 关系。依据系统的功能结构、规模大小,合理的安排时间进度以及分配资源( 包 括人力资源和硬件资源等) 。 ( 2 ) 系统生成 组态工程师( 或用户) 在了解系统所要实现的功能和要求后,使用组态软件平台 开发出新的、满足用户要求的测试软件。本阶段就是由用户提出系统所要实现的功 能以及要求,并南开发者按用户要求进行组态的过程。通常主要包括用户界面组态 和用户数据库组态。用户界面组态主要是由用户组装是测试过程界面,确定测试类 型。数据库组态是用来初始化数据库,用来保存测试过程中用到的数据。 ( 3 ) 修改调试 本阶段是向已生成的系统输人测试用例,根据返回的结果判断测试系统的 准确性和精确度。由于继电保护设备关系重大,因此对于发现的问题必须通过 重新组态方式构件新的组态软件。 ( 4 ) 提交用户 本阶段将正确无误的组态软件提交给用户,并将开发文档整理成书面形式, 同时对已生成的测试软件作系统备份,用于系统今后的修改与升级。组态平台 开发过程的用例图如图2 1 所示。 图2 1 组态平台开发过程的用例图 l o 第2 章组态思想和组件技术 2 2 组件技术的介绍 2 2 1 组件技术的发展 目前,在软件开发领域,一场新的革命正在悄悄兴起,这是由于日趋成熟的 组件技术引发的。当微软公司首先使用o l e 的时候,其初衷是为了增强软件的 互操作性。然而在使用过程中,人们逐渐认识到这一技术背后的实质性内容和 它在软件开发中所扮演的重要角色。组件技术将以前所未有的方式提高软件产 业的生产效率,这一点已逐步成为软件开发人员的共识。传统的c s 结构、中 问件等大型软件系统的构成形式,都将在组件的基础上重新构造【l 4 。 在组件技术【2 4 2 5 2 6 2 7 】的概念模式下,软件系统可以被视为相互协同工作的 对象集合,其中每个对象都会提供特定的服务,发出特定的消息,并且以标准 形式公布出来,以便其他对象了解和调用。组件间的接口通过一种与平台无关 的语言i d l ( i n t e r f a c ed e f m el a n g u a g e ) 来定义,而且是二进制兼容的,使用者可 以直接调用执行模块来获得对象提供的服务。早期的类库,提供的是原代码级 的重用,只适用于比较小规模的开发形式;而组件则封装得更加彻底,更易于使 用,并且不限于各类语言,可以在各种开发语言和开发环境中使用。因此组件 必须具有以下的特征 ( 1 ) 组件是完全通用或特定功能的可重用的软件模块。 ( 2 ) 组件必须能够进行自身描述,即组件必须能够识别在它构造过程中可更改 的属性和它生成的事件。并且这些信息可以使组件与开发环境无缝的结合起来。 ( 3 ) 组件必须通过接口输出其功能,外界环境只能通过接口访问组件。 ( 4 ) 组件支持对象意义上的封装性、多态性和继承性,必须支持二进制代码标 准,是一个可以在异构环境下被调用的支持互操作的软件模块 2 1 。 目前比较成熟并被广泛使用的组件模型有:o m g ( o b j e c tm a n a g e m e n tc r o u p ) 起草与颁布的c o r b a ( c o m m o no b j e c tr e q u e s tb r e a k e r a r c h i t e c t u r e ) 、微软公司推 出的c o m ( c o m p o n e n to b j e c tm o d e l ) 、以及s u n 发表的j a v a b e a n s 组件标准。由 于w i n d o w s 操作系统的普遍使用,而且已有大量系统基于c o m c o m d 组件技术 而实现【2 引,故本文所述的组态软件平台所要使用的组件也统一遵循c o m 标准。 2 2 2c o m 技术原理 c o m 是由m i c r o s o f t 提出的组件标准,它不仅定义了组件程序之间进行交互 第2 章组态思想和组件技术 的准则,并上l 也提供了组件程序运行所需的环境。在c o m 标准中,一个组件程 序也被称为一个模块,它可以是一个动态链接库( u pd l l ) ,被称作进程内组件 ( i n - p r o c e s sc o m p o n e n 0 ;也可以是一个可执行程序( 即e x e 程序) ,被称为进程外 组件( o u t o f c o m p o n e n t ) 。一个组件程序可以包含一个或多个组件对象,因为c o m 是以对象为基本单元的模型,所以在程序与程序之间进行通信时,通信双方应 该是组件对象,也叫做c o m 对象,而组件程序是提供c o m 对象的代码载体。 在c o m 模型中,对象本身对于客户来说是不可见的,客户请求服务时,只 能通过接口进行。每一个接口都由一个1 2 8 位的全局唯一标识符g u i d ( g l o b a l l y u n i q u ei d e n t i f i e r ) 来标识。客户通过g u i d 获得接口指针,再通过接口指针,客 户就可以调用其相应的成员函数。至于具体功能的如何实现,则完全由对象的 接口内部实现。所以,在c o m 模型中,对象通过接口及接口中的函数为客户提 供服务,对于客户来说,它只与接口打交道。一般来说,接口是不变的,只要 客户希望的接口在组件对象中还存在,它就可以继续使用该接口所提供的服务。 对象可以支持多个接口,因此对组件对象的升级可通过增加接口办法实现。 c o m 模型是m i c r o s o f t 提出的a u t o m a t i o n 、o l e 、a c t i v e x 等一系列技术的 基础。每一个c o m 组件实现一个到数个接口。c o m 中最重要的接口是i u n k n o w n 接口,所有其它的接1 2 1 都从此接1 2 1 派生。而i c l a s s f a c t o r y 接口的c r e a t e l n s t a n c e 方法,则实现组件对象的创建。为了唯一标识c o m 组件,c o m 规范要求使用 g u i d 码来标识每个组件和接口,客户机和组件服务器将来就通过g u i d 来访问 c o m 组件。组件开发完成之后要进行部署,对于c o m 组件而言,就是使用注 册程序将组件的相关信息输人到操作系统注册表中。这些相关信息包括:组件 的g u i d 和p r o g l d ( 用来标识组件的一种字符串主要为了便于识别组件,它 和g u i d 具有一一对应的关系) ,组件的提供者( 通常是一个d l l 文件或可执行 文件) 及所在位置,该组件所实现的接口及接i z 标识( i i d ) 。其规则主要有以下 特性【2 8 】: ( 1 ) 语言无关性 c o m 规范的定义不依赖于特定的语言,因此编写组件对象所使用的语言与 编写客户程序使用的语言可以不同,只要他们能够生成符合c o m 规范的可执行 代码即可。c o m 标准与面向对象的程序语言不同,它所采用的是一种二进制代 码级标准。 ( 2 ) 进程透明性 1 2 第2 章组态思想和组件技术 在客户朋艮务器模型的软件结构中,运行在客户端的代码和运行在服务器端 的代码,既可以在同一个进程中,也可以在不同的进程中。如果他们运行在同 一个进程中,由于组件和客户共享了进程的资源,因而无论对于编程还是运行 效率都是很有益的。 ( 3 ) 可重用性 由于c o m 标准是建立在二进制代码级的,因此c o m 对象的可重用性与一 般的面向对象语言如c + + 对象的重用过程不同。c o m 是通过接口使用对象提供 服务,它并不知道对象内部实现过程,因此,组件对象的重用性是建立在组件 对象的行为方式上,而不是具体实现上。 2 2 3a c t i v e x 技术原理 a c t i v e x 控件是微软公司提供的功能强大的程序设计和开发技术。a c t i v e x 控件既是一个自动化对象,也是一个标准的c o m 对象,同时它还是一个界面元、 素,它与具体的编程语言无关 2 9 1 。它是由o l e 技术发展而来。a c t i v e x 控件技 术已经取得了极大的成功,我们可以从软件开发商那里购买或是直接在i n t e m e t 上下载各种各样的a c t i v e x 控件。这些控件包括具有图形图像处理功能的控件、嗣 用作界面制作a c t i v e x 控件以及许多具有数据库处理功能的a c t i v e x 控件,利用 这些控件,我们可以快速建立起功能全面的应用系统。本组态平台的组件部分 就是用a c t i v e 技术实现的。 ( 1 ) o l e 技术 o l e 的全名是o b j e c tl i n k i n ga n de m b e d d i n g ,意思是对象链接与嵌入。o l e 最初是应用在w i n d o w s 3 1 中,为了创建和管理复合文件而退出来的,当时的版 本是o l e l 0 。在推出w i n d o w s 9 5 的时候同时推出o l e 2 0 ,这时o l e 的内容包 括结构化存储、命名、统一数据传输、剪贴板、拖放、在位编辑等,所有这些 正是日后a c t i v e x 技术的基础。o l e 的实质贡献在于,它提供了一个标准的框 架用来创建、管理和访问基于对象的组件,而这些组件为其他程序提供一些功 能和服务。可以说o l e 技术是各种类型的功能组件之间的一种集成技术。 ( 2 ) 从o l e 发展到a c t i v e x i n t e m e t 革命给m i c r o s o f t 的技术以极大的刺激,m i c r o s o f t 认识到i n t e r n e t 潮 流比它先前的预料要汹涌的得多,于是m i c r o s o f t 决定重整它的命名惯例,让o l e 回到自己的本源,将o l e 技术用”a c t i v e x ”商标来销售。可以认为a c t i v e x 是 第2 章组态思想和组件技术 o l e 技术的发展,而这种发展的原因是由于o l e 技术在i n t e r a c t 飞速发展的过 程与其发生了冲突,即a c t i v e x 是o l e 技术在i n t e m e t 上的扩展。 此后,a c t i v e x 逐渐成为微软新的企业口号,它的含义远远超过了“a c t i v et h e i n t e r a c t 。一方面,他表示将你联系到m i c r o s o f t 、i n t e m e t 和软件新技术的小型 快速可重用组件;另一方面a c t i v e x 代表了i n t e r a c t 与应用程序的一种集成策略。 现在,a c t i v e x 和o l e 已经成为了同义词,以前人们所说的o l e 控件( o c x ) 现 在称为a c t i v e x 控件,o l ed o c o b j e c t 现在称为a c t i v e x 文件。在许多情况下, 有关如何实现o l e 技术的文章已经被更新为a c t i v e x 技术。a c t i v e x 的出现并不 是用来替换o l e 的,而是用来扩展它,使之应用于i n t e r a c t 及其它应用程序的 开发【3 0 】。 ( 3 ) a c t i v e x 所包含的内容 a c t i v e x 自动化服务器。a c t i v e x 自动自动化服务器是可以被其他应用程序 通过编程而使用的组件。一个自动化服务器至少包括一个基于d i s p a t c h 的 接口,其他应用程序创建它并通过它和服务器进行连接。 o a c t i v e x 自动化控制。a c t i v e x 自动化控制是使用和操作a c t i v e x 服务器的应 用程序。 a c t i v e x 控件。一个a c t i v e x 控件可以使d l l ,也可以是e x e 文件,可以在 位激活、局部或远程的方式操作自动化服务器。 a c t i v e x 文档。a c t i v e x 文档以前被称为文档对象,在一个这样的文档中可 以包含很多其他的对象,诸如一个图片、一个表格等。a c t i v e x 文档也有u i , 这个u i 是由一个容器应用程序来操作的。 c o m 对象。从结构上分析,c o m 对象同自动化服务器和自动化控制相似, 他们有一个或多个c o m 接口,而只有很少的几个u i 接口,甚至没有。他 们之间的区别是:自动化服务器可以被自动化控制操作,而c o m 对象不可 以。w 砌o w $ 操作系统有几百个c o m 对象和用户接口,他们是作为操作系 统的扩展的。使用c o m 对象是一种很好的组织和管理相关数据和函数的方 式,这种方式还应用于创建高性能的d l l 中【1 4 j 。 a c t i v e x 非常适合于今年来越来越流行的多层应用程序结构。自动化服务器 能很好的将u i ( 用户界面) 和具体的功能分隔开,因为用户可以自由地选择自动化 服务器的实现和使用方式。建立和使用没有u i 的其它服务器来完成有u i 工作 的控制器的多层应用程序开发的技术核心。 1 4 第2 章组态思想和组件技术 2 3 开发平台的选择 九十年代以来,w i n d o w s 操作系统风靡全球,它几乎占领了p c 机软件市场 的各个领域,工业控制和生产管理也不例外。w i n d o w 具有功能更强的图形用户 接口,更完善的内存管理方式,多任务管理,更好的网络支持及丰富多彩的应 用软件。目前,w i n d o w sn t 、w i n d o w s2 0 0 0 或w i n d o w sx p 操作系统是运行组 态软件的理想平台,这些操作系统的稳定性、实时性、多任务特性较好,而且 其上软件资源丰富,支持图形界面标准且支持的i o 设备数量繁多。u n i x l i n u x 在稳定性、实时性、多任务管理和联网功能很好,只是在人机交互和界面方面 上较微软的w m d o w s 系统逊色。今后,能兼容多种操作系统平台是组态软件发 展方向之一。本文是以w i n d o w sx p 系统为设计、开发环境进行讨论。 与此同时,面向对象技术的兴起,在全球软件业掀起了一场不小的风波,各 公司先后推出了自己的支持面向对象的程序设计语言。可以说,面向对象技术 的程序设计方法是九十年代软件开发的最新潮流。在众多的基于w i n d o w s 的面 向对象程序设计语言中,v i s u a lc + + 以其功能强大、实时性强、与硬件接口方便 等特点脱颖而出,它一出现便受到广大软件设计人员的青睐,纷纷将其作为设 计、开发w i n d o w s 应用程序的首选语言。在设计、开发组态软件时,选择开发 工具、语言也是蕈要的环节,现在开发工具主要有m i c r o s o f t 公司和b o r l a n d 公 司的开发工具集,不同的开发工具、语言各有特点。根据本设计的性质和任务, 要求有良好的用户接口、较强的资料图形处理功能以及很好的实时性,所以在 设计开发中选中了v i s u a lc + + 6 0 作为开发工具。具体来讲,v i s u a lc + + 6 0 具有 如下特点: ( 1 ) 提供了资源编辑器、a p p l i c a t i o nw i z a r d 、c l a s sw i z a r d 三个快速且自动创 建应用程序源代码的实用工具,使得编程工作更加快捷、简单。 ( 2 ) 可视化的集成开发环境,将编辑器、编译器、连接器、调试器以及各种实 用工具完美地结合起来,大大降低了程序开发人员的复杂程度。 ( 3 ) 提供了类、对象、封装、继承、多态和流等操作,是一种较好的面向对象 的程序设计语言。支持面向对象技术,通过类把大部分与用户界面设计有关的 w i n d o w sa p i 函数封装起来,并通过m f c 类库的方式提供给开发人员使用,大 大提高了软件的可重用性。 ( 4 ) 提供了程序组织的新方法,整个应用程序由各种不同类型的对象组成。各 对象是可独立运行的实体,程序流程由对象间的消息传递来组织。 第2 章组态思想和组件技术 ( 5 ) 可以用c 、c + + 、汇编语言等多种语言编程,具有编程的灵活性,还支持 动态数据交换( d d e ) ,为不同应用程序之间的通信提供了一种快捷的方法1 3 l 】。 2 4 总结 本章介绍了组态思想、组态的特点、组态平台开发软件的过程及实现方法和 开发平台的选择。着重说明了c o m 规范和a c t i v e x 技术,为组态软件平台的开 发提供了强有力的技术支持。本文通过对现有开发工具的分析比较,确定了使 用v i s u a lc + + 6 0 作为平台的开发工具。 基于组态的继电保护测试软件平台,就是在开发继电保护测试软件产品中, 在整体系统设计和架构时,引入组态思想、软件平台的设计思路,其大大提高 继电保护软件二次开发的快速性和高效性,增加继电保护软件产品的稳定性; 而在具体编码实现时,采用了a c t i v e x 控件的开发方法,将各个模块封装成能独 立运行的a c t i v e x 组件,提高了代码的可重用性,增强了软件的可维护性和稳定 性。 1 6 第3 章基丁:组态的继电保护测试软件平台的设计 第3 章基于组态的继电保护测试软件平台的设计 3 1 软件平台的设计思想 本课题研究的组态软件平台将传统的继电保护测试系统的各个测试类型 u i ( 用户界面) ,重新划分设计。把其中的通用部分蘑新封装,制作成能独立运行 的组件( a c t i v e x ) ,而各测试类型中的剩余部分则根据逻辑关系的不同封装成独 立的一个或多个组件( a c t i v e x ) ,因此该平台的通用性很好,能很好的覆盖原有 的测试类型。平台的u i ( 0 0 用户界面) 设计部分则表现出操作简单、交互性强的特
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 土壤植被系统协同修复的黄河三角洲湿地重建技术
- 2025版多功能大棚建设与配套设备供应合同范本
- 2025版农家猪养殖场冷链物流与运输服务合同
- 二零二五年度虚拟现实技术应用IT信息技术服务合同
- 二零二五年度公园绿化护栏工程环境保护与治理合同
- 二零二五年劳务派遣员工权益保障合同
- 二零二五年度二婚再次离婚协议:财产分配、子女监护及赡养费支付及债务解决及监护权纠纷合同
- 2025版新型消费贷款分期还款合同范本
- 2025版房产市场借款与二手房翻新合同
- 2025版车辆烤漆房租赁与车身修复技术培训合同
- 语音主播协议合同
- 蜜雪冰城加盟合同(2025年版)
- 河道人工保洁作业指导书
- (一模)2025年3月济南市2025届高三模拟考试历史试卷(含答案解析)
- 拆除重建工程施工方案
- 油田突发污染事件应急预案
- Codesys培训课件教学课件
- 甲方业主项目管理手册
- 句法 课件-初升高衔接英语课程
- 安装聚氨酯冷库板施工方案
- 医院培训课件:《黄帝内针临床运用》
评论
0/150
提交评论