(电力系统及其自动化专业论文)牵引供电系统图形化继电保护软件开发平台研究.pdf_第1页
(电力系统及其自动化专业论文)牵引供电系统图形化继电保护软件开发平台研究.pdf_第2页
(电力系统及其自动化专业论文)牵引供电系统图形化继电保护软件开发平台研究.pdf_第3页
(电力系统及其自动化专业论文)牵引供电系统图形化继电保护软件开发平台研究.pdf_第4页
(电力系统及其自动化专业论文)牵引供电系统图形化继电保护软件开发平台研究.pdf_第5页
已阅读5页,还剩55页未读 继续免费阅读

(电力系统及其自动化专业论文)牵引供电系统图形化继电保护软件开发平台研究.pdf.pdf 免费下载

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

文档简介

西南交通大学硕士研究生学位论文第1i 页 a bs t r a c t a st h ed e v e l o p m e n to ft h ec o m p u t e rt e c h n o l o g y , t h ep r e s e n ts o f t w a r ec o u l dn o ts a t i s f y t h ea p p l i c a t i o no ft r a c t i o np o w e rs u p p l ys y s t e ma n ym o r e b e c a u s et h ei n f o r m a t i o nh a sb e e n p r o v i d e dm o r ei n t u i t i o n i s t i c l ya n dv i s u a l l y , t h eg r a p h i ct e c h n i q u eb e c o m e sp o p u l a r , w h i c hi s e s s e n t i a lf o rd i f f e r e n ts y s t e m s 、i t ht h ek n o w l e d g ea b o u tc o m p u t e rg r a p h i ct e c h n i q u ea n d t r a c t i o np o w e rs u p p l ys y s t e m ,t h ec o m m o ng r a p h i cp l a t f o r mi sd e s i g n e da n da b o u tw h i c h p r o b l e m sa r es t u d i e di nt h ep a p e r , b a s e do no b j e c t o r i e n t e dm e t h o d s ,v i s u a lp r o g r a m m i n g t o o la n dd a t a b a s ed e v e l o p m e n tt 0 0 1 f i r s t l y , t h ed e v e l o p m e n to ft h eg r a p h i ct e c h n i q u ei si n t r o d u c e d a sw e l la st h e a p p l i c a t i o nc o n d i t i o no ft h eg r a p h i ct e c h n i q u ei np r o t e c t i v er e l a yp r o g r a m m i n go ft h e t r a c t i o np o w e rs u p p l ys y s t e m an e wp r o g r a m m i n gm e t h o di s p r o p o s e dt or e a l i z et h e p r o t e c t i v er e l a y1 1 1 t r a c t i o np o w e rs u p p l ys y s t e m - - g r a p h i cp r o g r a m m m gp l a t f o r mf o r p r o t e c t i v er e l a yi nt r a c t i o np o w e rs u p p l ys y s t e mb a s i n go nm w h i c hi sb a s e do nt h e d i s a d v a n t a g ea n a l y s i so ft h ep r e s e n tp r o g r a m m i n gm e t h o da n dt h ec h a r a c t e r i s t i c so ft h e p r o t e c t i v er e l a yi nt r a c t i o np o w e rs u p p l ys y s t e m t h em a i ni d e ao ft h eg r a p h i cp r o t e c t i o ni s t h a t :t h ep r o t e c t i v ef l o wc h a r ti sm a d ea c c o r d i n gt or e f e r e n c ep r o t e c t i o n a n dt h eg r a p h i c p r o g r a mi sm a d eo np r o t e c t i v ep l a t f o r m ,a f t e rc o m p i l i n gw h i c h ,t h ee x e c u t a b l ep r o g r a mc a n b eo b t a i n e d a tl a s tt h ee x e c u t a b l ep r o g r a mi sd o w r d o a d e dt oh a r d w a r ep l a t f 0 1 1 1 1 t h eo b j e c t o r i e n t e dp r o g r a m m i n gi su s e dt or e a l i z et h e 茚a p h i ce l e m e n tm o d e l i n g , a sw e l la ss o m e m a i n p r o g r a m si nt h eg r a p h i cp l a t f o r ma r ei n t r o d u c e d i no r d e rt of a c i l i t a t eo r g a n i z i n ga n di n q u i r i n gt h eg r a p h i cd a t a 3t i e rd a t a b a s e a p p l i c a t i o np r o g r a mb a s i n go ns q ls e r v e r2 0 0 0a n dd e l p h i7i su s e dt os t o r ea n dg a i nd a t a i nt h e 野a p h i cp l a t f o r m ,a n dt h es t r u c t u r eo ft h eg r a p h i cd a t a b a s ei sd i s c u s s e di nd e t a i l a c o n v e n i e n td a t a b a s ea c c e s si n t e r f a c ei sd e s i g n e dw i t l la d v a n c e db d ed a t a b a s ec o m p o n e n t w h i c hi sc o m p a t i b l ew i t ht h eo t h e rd a t a b a s e t h ei n t e r f a c er e a l i z e st h eg a l l e r yi n t e g r a t i o n e a s i l y , w h i c hn o to r d yr e d u c e st 1 1 em i s t a k ew h e ns e t t i n gt h es y s t e md a d a , b u ta l s oi r e p r o v e s t h ee f f i c i e n c yg r e a t l y t h ea p p l i c a t i o no ft h ei n t e r r u p tp r o g r a mf o r 仃a n s f o r m e rp r o t e c t i o ns h o w st h e a d v a n t a g ea n df e a s i b i l i t yo ft h eg r a p h i cp r o g r a m m i n ga p p l i e di np r o t e c t i v er e l a yo ft h e t r a c t i o np o w e rs u p p l ys y s t e m k e yw o r d s :t r a c t i o np o w e rs u p p l ys y s t e m ;p r o t e c t i v er e l a y ;p a d ;g r a p h i cp r o g r a m m i n g 西南交通大学 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向 国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授 权西南交通大学可以将本论文的全部或部分内容编入有关数据库进行检索,可以采 用影印、缩印或扫描等复印手段保存和汇编本学位论文。 本学位论文属于 1 保密口,在年解密后适用本授权书; 2 不保密团,使用本授权书。 ( 请在以上方框内打“”) 学位论文作者签名:余乐 指导老师签名 日期:2 矽年手月7 旧 日 西南交通大学硕士学位论文主要工作( 贡献) 声明 本人在学位论文中所做的主要工作或贡献如下: 针对现有牵引供电系统微机保护运用结构化文本编程存在的问题,及图形化软件 开发平台用于其中的必要性及优越性,在研究了国内外相关领域可视化编程技术的应 用情况后,提出并设计了一种新的牵引供电系统微机保护通用图形化软件开发平台。 本人郑重声明:所呈交的学位论文,是在导师指导下独立进行研究工作所得的成 果。除文中已经注明引用的内容外,本论文不包含任何其他个人或集体已经发表或撰 写过的研究成果。对本文的研究做出贡献的个人和集体,均已在文中作了明确说明。 本人完全了解违反上述声明所引起的一切法律责任将由本人承担。 学位论文作者签名:余乐 日期:2 护归年钥了旧 西南交通大学硕士研究生学位论文第1 页 第1 章绪论 1 1 研究背景及其意义 1 1 1 牵引供电系统微机保护背景 在牵引供电系统运行中,可能发生各种各样故障和不正常运行状态,继电保护是 保证牵引供电系统安全运行的最行之有效的一种方法。牵引供电系统中运行得人继电 保护装置在牵引供电系统发生故障时,快速切断故障与运行系统隔离,以防止事故扩 大和牵引供电系统设备损坏,甚至人身伤害,最大限度地缩小停电范围的自动装置, 是牵引供电系统必不可少的组成部分【l 】。 目前,微机保护是牵引供电系统继电保护的发展趋势,它在馈线保护、变压器保 护、牵引变电站自动化系统、故障录波器和故障测距等领域都得到了广泛的应用和飞 速发展【3 1 。与常规的继电器型保护或晶体管型保护装置相比,微机保护装置具有明显的 优越性。 随着电子技术、计算机技术与通信技术在近几年的飞速发展,牵引供电系统继电 保护技术也取得了长足的进步,多种微机保护装置及通入系统运行。这些新技术的引 入大大提高了牵引供电系统的安全和可靠性,改善了牵引供电网的管理水平,获得了 显著的社会效益和经济效益。但是,很多厂家基本还是运用传统的软件开发工具进行 微机保护程序设计,语句代码繁琐、界面不美观、调试麻烦、升级困难等缺点越发突 出,已不能适应现代技术下微机保护设计的要求。在计算机应用迈向网络时代的同时, 新的软件技术不断涌现,实现牵引供电系统图形化微机保护编程已经变得刻不容缓。 1 1 2 牵引供电系统微机保护软件开发存在的问题 目前,厂家开发微机保护软件通常都采用手工编写程序代码的方式。其逻辑程序 编写的传统步骤是:将逻辑图绘制成软件逻辑框图,再用许多条语句和各种标志编写 具体的逻辑图程序。编写时采用的语言基本上是高级语言或者汇编语言。有些保护和 自动装置的逻辑功能十分复杂,为实现这些复杂的保护逻辑功能,编程人员首先需要 认真、仔细地编写大量保护逻辑程序,然后需要对其功能进行检测,校验正确性,任 何环节的疏忽都可能造成软件出错【8 】。 这样以来,非专业开发人员很难看懂程序代码的实现过程,也只有通过试验来验 证其正确性,而且即使是专业看法人员,想读懂其他开发人员设计的程序也很困难。 这样就给程序的编写造成一下困难: ( 1 ) 开发过程费时费工。手工编写方式编制程序,本身就费时费力,再加上程序 西南交通大学硕士研究生学位论文第2 页 代码一般都很繁多,人工编写的方法容易出错,很难保证其准确性,因此在编写完成 后还要花大量时间去检查测试。 ( 2 ) 重复性大。工作量大,每种保护的逻辑互不相同,软件工程师每次都要重新 开始,相同的东西可能要连续做很多遍。 ( 3 ) 准确性差。实现功能复杂的保护逻辑时,编制的保护程序并不一定很准确、 如实地反映逻辑图所要表达的内容。 ( 4 ) 程序开放性和适应性差。由于不同的牵引网有不同的要求,编制好的程序并 不能很好地满足实际需要,这就需要重新修改程序,一方面增加了维护人员的工作量, 另一方面临时的修改很容易带来新的问题和错误。尽管通过大量程序调试和试验可以 发现错误,并予以纠正和完善,但是有的错误可能要到运行现场运行一段时间以后才 能发现。 在计算机技术飞速发展的今天,微机保护装置在我国的大量推广使用,微机保护 软件的费用大大超过了硬件。只用通过采用新的软件设计方法才可以开发出低成本高 质量的新一代软件,该课题就是在牵引供电系统微机保护的应用领域采用了一种新的 设计思路图形化保护。该软件的实现是的牵引供电系统继电保护开发人员可以从 繁重的重复性劳动中解脱出来,同时因为它的是利用平台化的开发模式开发的软件, 将大大减少人为因素造成的错误,使得保护更安全可靠、动作正确率更高,而且由于 它的这种开放性,带了了系统整体工作效率的提高。除了软件工程师以外的工程技术 人员都可以使用该软件,根据自己需要的保护逻辑,在该平台上生成保护程序,或者 通过修改框图以达到对保护装置功能的修改,在尽量短的时间内满足不同的需要。在 软件设计领域里,程序设计的图形化软件如雨后春笋般蓬勃发展起来,在图形化软件 设计方面大家提出各种新的方法和理论,该课题也在提高软件开发效率,减少后期维 护人员的工作量方面提出了一种行之有效的解决方案,希望能够运用到牵引供电系统 微机保护装置的软件设计中,对更好地提升继电保护技术和功能添砖加瓦。 1 2 国内外研究现状 1 2 1 图形化编程实现微机保护的背景 二十世纪八十年代末至今,国外已经有许多公司将图形化编程用于了各个控制领 域,设计电力系统的有a b b 、西门子、g e 等公司,这些公司已陆续将图形化编程用 于电力行业的诸多领域【9 】【1 1 1 。目前,a b b 公司的诸多产品已成功地应用了其自行开发 的图形化平台,改平台经过二十多年的应用,技术已十分成熟,取得了显著的成就, 并为公司赢得可可观的经济效益。还有n i 公司的l a b v i e w 与惠普公司的h pv e e , 这两个产品是应用于测控领域的两个比较成熟的商业化的图形化程序开发平刨1 2 】。 目前,国内已有许继集团和国电南自采用了图形化保护开发平台软件进行程序设 西南交通大学硕士研究生学位论文第3 页 计。例如,国电南自的图形化保护已经在p s6 0 0 0 系列数字式继电保护产品中实现和 应用,它的大资源、大配置的设计基础使得保护软件的模块和开放性成为可能,也为 了基于图形化界面的逻辑编程方式的保护提供了物质条件。国电南自图形化保护软件 平台的实现步骤为:图形化保护输入界面、解析逻辑图、逻辑图在保护中的运算,前 两步在上位机实现形成编译文件后下装到保护装置中,第三步是由保护装置中内嵌的 图形解析计算程序实现,将逻辑图转换为保护装置执行的逻辑功能代码后,不断地进 行实时保护逻辑计算【l 扪。许继集团自行研制开发的新一代保护开发工具图形化逻 辑设计v l d ( v i s u a ll o g i cd e s i g n ) 软件,是一种逻辑设计图形化、模块化的保护开发 软件。它的实现步骤为:在图形界面上进行逻辑框图绘制、填写逻辑表格、调用专用 软件生成源程序、编译生成机器语言、将程序下装到保护装置【l4 1 。由于采用图形化编 程,许继的产品更具有灵活性和可靠性。还有浙江大学自主开发的图形化编程平台 v p p l 8 1 ,可用于测试仪或测试系统,具有简单直观的编程方式、众多源代码的设备驱动 程序、丰富实用的分析表达功能和支持功能。 到目前位置在众多领域都有自己的图形化编程产品,但是在牵引供电系统微机保 护方面却一直没有适用于与自己的图形化保护开发软件,由于牵引供电系统中的电力 机车无论正常运行还是故障时刻的电流电压等参数都有其自身的特点,使得牵引供电 系统微机保护不用于一般供电系统,因此,以上各个厂家开发的图形化保护平台不能 适用于牵引供电系统。本课题的研究正是针对这方面的空白提出的,希望能够提高牵 引供电系统微机保护产品研发的效率,减少后期维护人员的工作量,但这仅仅是一个 探索性的工作,以后将会有更多的软件设计方法应用到牵引供电系统微机保护装置的 软件中,从而更好的提升牵引供电系统微机保护的技术和功能。 1 2 2 图形化编程实现牵引供电系统微机保护的意义 “一幅好图胜过千言万语”,这句话在软件工程领域得到了最好的验证。从过程化 编程的程序流程图到面向对象时代的统一建模语言( l 刀l ) ,翻开任何一本软件工程的 著作,里面到处都是表达软件工程生命周期中各阶段思想的图形化语言。随着软件工 程思想的发展演变,有些图形渐渐很少使用,有些图形则得以继承和规范,呈现出强 大的生命力。 在结构化程序时代,有三种程序图形得到广泛应用:程序流程图、盒图和p a d 图 【l5 1 。它们都是用于软件详细设计的图形工具。程序流程图由于对控制流的描绘很直观, 而且便于初学者掌握,至今都为人们广泛使用,但由于它的种种缺点,在软件详细设 计阶段使用它的人越来越少。盒图是基于结构化程序设计的要求,取消了道标控制流 的箭头,但是盒图的方框如果嵌套的层数增多,内层方框过小会影响图形的清晰度。 基于问题分析图的p a d 图的出现,克服了程序流程图不能清晰地显示控制结构的缺点, 西南交通大学硕士研究生学位论文第4 页 又不像盒图样将程序约束在方框内,它表达的程序逻辑呈树形结构。 现阶段随着面向对象程序设计思想的成熟、组件化技术的提出,用于结构化程序 设计的图形工具逐渐被其他图形工具( 典型代表u m l 引) 取代,特别是随着图形化编 程开发工具的流行,在实际程序开发中已很少见到这些传统的图形了。 实际上,虽然当今许多软件从总体上讲都是面向对象或是基于对象的,但是其局 部代码还是结构化的。因此,只要p a d 图这样的结构化程序设计图形工具加以适当扩 展,使之适用于图形化编程,对于表达详细设计阶段的程序逻辑还是很有用的。 为了解决1 1 2 中所述牵引供电系统微机保护软件开发存在的问题,提出基于p a d 图的图形化保护新思想。目的是设计一个适用于牵引网保护的图形化平台,能够自动 生成保护的代码,而不必人工编写保护逻辑软件代码。软件工程师只绘制有图形化的、 反映保护功能的“图形”,保护装置就可完全依照保护功能图定制的保护功能,实现保 护逻辑运行功能。在设计比较完善的情况下,对同一种保护功能需要不同的逻辑时, 只需要修改保护逻辑功能图即可达到目的。 图形化平台的研究是图形化研究领域内的一个重要分支,是沟通图形化理论与应 用的一座桥梁。本文提出的图形化平台采用基于p a d 图的程序流模型为体系结构,并 提供交互方便的图形化编程界面,将保护逻辑图中的一些基本的逻辑功能封装成程序 模块,用户以“搭积木的模块编程方式从元件库中选取所需要的元件,直接构造成 图形化应用实例,有效地提高了保护软件的编写效率。 本平台的基本设计思想是保护逻辑图形化编程,及运用计算机面向对象的编程技 术,采用模块化的编程理念,设计一个图形化平台。 用户一旦把应用实例的逻辑框图确定之后,其原理方案也随之确定,开发人员只 要在逻辑开发平台搭建相应的p a d 图,由平台将该逻辑图自动翻译成符合要求的高品 质、高效率的程序代码,再将该程序放入相应的保护软件开发环境组合编译成可执行 文件下载到相应的保护装置中,避免人工编写保护逻辑的程序代码。这样,开发人员 只需绘图图形化的、反映保护逻辑的p a d 功能图,保护装置就可完全依照保护功能定 制p a d 逻辑图,实现保护逻辑运算功能。 在设计比较完善的情况下,对于需要不同逻辑的同一种保护功能来说,只需要修 改保护逻辑功能图就可以达到预期目标。这样不仅提高了效率,保证了可靠性,而且 使用起来也非常方便灵活,同时也便于日后的修改、维护好拓展。 因此从保护逻辑图形化编程的优势和开发人员对各种要求来说,牵引供电系统继 电保护通用逻辑开发平台具有很大的市场潜力,也具有很大的实际意义: 在很大程度上提高软件编写一次成功率。大大降低了由于采用传统方式手工编写 保护逻辑程序时,人为疏忽造成的错误,尤其保护逻辑功能复杂的时候,图形化软件 更能体现其优势。 西南交通大学硕士研究生学位论文第5 页 增强软件完备性。提高保护软件的正确性、更真是贴切的表达逻辑图的含义,使 得编制的保护逻辑程序很能代表保护逻辑框图。 减少软件设计过程中的重复性工作,在一定程度上减少工作量。根据各种类型保 护的不同逻辑,软件工程师只需在平台界面上调整p a d 图,就可以生成具有不同功能 的保护程序,而不需要像以前一样根据不同的逻辑图使用大量的i f 语句编制该类型保 护的逻辑软件,因此,就减少了大量重复性工作。 其开放性带来了整体工作效率提高。除保护软件工程师以外的工程技术人员,都 可以利用图形化软件构件出满足自己要求的保护逻辑,或者对保护装置的功能进行修 改。在尽量短的时间内,能满足不同的要求。 1 3 本课题的研究内容 图形化技术在电力系统中应用的软件已经走向一个成熟发展的阶段,但是在牵引 供电系统这个特殊的领域还没有应用软件,所以本论文是在紧密结合理论问题和工程 问题的基础上提出的。 牵引供电系统图形化平台作为一个通用平台,不仅要立足目前多种软件的需要, 还要考虑今后新的应用软件开发。本文基于牵引网高级应用软件对图形系统的要求, 详细分析图形平台开发应具有的功能,综合借鉴了以往图形系统的要求,例如:坚持 图形数据一体化,图元定制功能,提出了一个通用图形平台的整体设计方案,并对其 中的某些相关问题进行了研究。结合本图形平台的开发,本文的所做的工作的主要内 容如下:, 主要研究牵引供电系统图形化继电保护开发平台。采用三层c s 结构,以d e l p h i 为工具,用面向对象的编程思想开发一套具有w i n d o w s 风格的基于p a d 图的针对牵引 供电系统的图形化继电保护开发平台。该开发平台实现了计算机专业知识和继电保护 专业知识的分离。继电保护开发人员通过提供的开发工具,只需绘制简单的保护程序的 p a d 流程图,配置部分参数和代码,就可在短时间开发一套保护装置,并生成对应的c 程序代码和机器码供保护装置使用。 西南交通大学硕士研究生学位论文第6 页 第2 章平台总体设计 2 1 图形化编程的概念 图形化编程是一种面向对象的程序设计和集成图形化软件开发手段。它为了解决 实时控制的问题,针对定制的硬件,用基本的元件和连接关系实现物理模型的控制功 能与程序流,用原理图代替符号语言对编程进行描述,用硬件库与软件库对不同的硬 件透明处理,直接生成对应硬件的c 语言代码。即提供了一种创建图形用户界面的方 法,利用该方法,用户不必书写复杂的描述界面元素外观和位置的程序代码,只需将 系统提供的对象放在屏幕的适当位置,并通过属性窗口进行适当的设置即可设计出一 个优秀的应用程序界面。这样,用户就可摆脱以往大量繁琐的界面设计,提高程序设 计的效率。 图形化编程与传统开发手段的区别:( 1 ) 编程采用图形而不是代码,将开发人员 从繁琐的代码编写中解脱出来。( 2 ) 纠错快捷,仅控制逻辑就行,不涉及代码。图形 化编程提供基本功能:( 1 ) 图形化编程提供图形化的程序的生成。使用者不必关心c p u 类型与硬件的具体细节。( 2 ) 提供调试功能,来监视模块的输入与输出,验证使用者 的控制算法。( 3 ) 能提供方便的工程文档。 图形化编程的主要目的:在保证可靠性的前提下,开发人员不再参与程序的编写, 对程序的监视也由系统提供。开发人员对计算机能力的要求降到最低。同时易于理解 与维护。图形化编程极大地提高了软件开发的效率,其透明化设计思想,使用户容易 理解和维护,降低出错率,且组态灵活,适合于用户的多样性。图形化编程的目的就 是要把编程变得更简单、更灵活、更可靠;它使技术分工容易实现,因为这种图形化 编程的系统一旦建立并经过测试证明正确后,相关专业人员可以根据技术特点进行硬 件设计、软件设计、通信、保护原理研究等。 就目前的技术水平,采用图形化编程技术将是提高装置软件设计可靠性最先进的 手段。当然,这必须建立在能将图形信息可靠地转化为对应硬件平台语言的基础上。 流程框图的绘制过程,就是图形化语言的编程过程,图形化的编程语言和文本式编程 语言相比,具有编程简单、直观、开发效率高的特点。 2 2 图形化系统平台实现方案 整个图形化编程系统的结构如图2 1 所示。本文主要是完成整个图形化系统平台 的设计,包含图中的图形化编程平台,以及数据服务器部分。 西南交通大学硕士研究生学位论文第7 页 图2 1 :系统结构图 2 2 1 图形化语言的选择 在编写程序之前,人们总要先解决问题的算法,并将这种算法用简单直观的图形 描述出来,这样可以帮助设计者组织思路,使一个复杂的问题变得条理清晰,从而提 高程序的质量和编程效率。 在1 9 6 9 年,荷兰学者e w d i j k s t r a 首先提出一种开放性的设计方法结构化程 序设计,自此以后它成为当前程序设计的重要基石和先进工具。程序设计实质上是数 据结构、算法与程序设计方法学的统一,结构化程序设计是必须遵循的一种计算机科 学基本方法。所谓结构化是指结构化程序( 或算法) 的控制结构,必须而且只能是顺 序结构,选择结构,循环结构这三大基本程序结构,这三大基本结构共同本质特征是: ( 1 ) 有且仅有一个入口; ( 2 ) 有且仅有一个出口; ( 3 ) 无循环死块,即没有一经开始就无休止反复执行下去的操作快; ( 4 ) 无死块,即没有无法执行到的死程序; 显然这种方法,实质上是对程序流程的主体结构的控制实现结构化。 大量的实践证明,用结构化程序设计方法设计出来的程序与其他程序相比不仅效 果好、成本低、而且易阅读、易理解、易调试、易验证、易移植、易维护。因而结构 化程序设计法取代非结构化程序设计已成定局。于是,如何寻求完善与结构化程序设 计相适应的描述工具,就显得十分重要。 西南交通大学硕士研究生学位论文第8 页 所以问题分析图( p a d 图) 作为软件详细设计文档,已被越来越多的软件开发人 员所接受,其原因之一在于使用p a d 图利于保持文档与程序的统一。例如,每当需要 修改程序时,可以首先修改p a d 图,然后再通过“走树”规则自动生成程序( 正向工 程) ;或者每次修改程序之后,自动生成与程序对应的p a d 图( 逆向工程) ,从而自动 保持文档与程序的统一【1 5 】【17 1 。 根据结构化程序定理可以知道,任何程序逻辑都可用顺序、选择和循环三种基本 结构来表示。三种基本结构都遵循一个入口、一个出口的原则。结构化程序有编程语 言描述时,其内部语法描述数据i o 及数据处理操作,外部语法控制内部语法执行。 本文将结构化程序定义如下: 结构化程序:= 程序单位名称+ 说明部分+ 执行体 说明部分:= 字符串 ;字符串 执行部分:= 顺序结构ii f 结构jc a s e 结构lw h i l e 结构iu n t i l 结构 顺序结构:= 字符串 ;字符串 i f 结构:= i f ( 条件) + 执行体 + e l s e + 执行体 + e n d i f c a s e 结构:= d oc a s e c a s e ( 条件) + 执行体 c a s e ( 条件) + 执行体) o t h e r w i s e + 执行体 e n d c a s e w h i l e 结构:= w h i l e ( 条件) d o 执行体 u n t i l ( 条件) 条件:= 字符串 问题分析图p a d 是一种程序结构的二维图形描述方式【1 8 】。图中的描述框称为模板, 描述框中的正文称为短语。模板对应结构化编程语言中的基本控制结构,模块之间的 连接表示源程序中的逻辑关系,短语说明程序语句中的具体语法元素。p a d 图支持结 构化编程方法,它具有顺序、重复和选择三种控制结构,其中选择和重复又有几种不 同的形式。一幅p a d 图可以描述为: p a d 图:= 几何分布+ 逻辑关系 几何布局:= 模板图符+ 连线+ 短语 模板图符:= 说明框i 输入框l 输出框i 选择框顷序框i 重复框 短语说明:= 字符串 逻辑关系:= 连接关系+ 说明关系 连接关系:= 横向连接l 纵向连接 西南交通大学硕士研究生学位论文第9 页 说明关系:= 模板图符+ 短语 基于p a d 的图形化平台的提出遵循的理念是:所见即所得,轻松控制。采用:“控 $ 1 - - - 功能+ 变量”的图形化程序实现方式。用“功能块 代表各模块化的元件,用变量 实现各功能元件之间的参数传递,以实现图形化的程序设计。这里我们用图论的相关 知识来实现其功能。 图论是研究事物及它们之间联系的一门学科,正如函数的图像描述函数一样,我 们用图论来描述所研究的事物及它们之间的联系,即用图形来描述图。这里我们把事 物称之为结点,而用边表示事物之间的联系。在基于p a d 的图形化编程平台中的功能 块便可抽象为图论中的结点,各功能块之间的连线抽象为边。因此,用p a d 语言表 述的图形化程序设计中最基本的图形化信息为: ( 1 ) 元件信息 图形化编程元件是属性数据和操作数据的集合体,它是图形化编程的基本单位。 一个图形化源程序包括大量种类不同的元件,这些元件以不同的外观出现在编程窗口 中的元件区中。这些内容都需要记录。在实践以文本描述的形式保存元件信息。元件 信息应包括: 整个图形化源程序包含的所有元件列表; 元件属性:不用元件有不同的属性域; 元件类别:元件应清楚的标明其归属的功能库; 元件名称:编程环境的核心模块根据该名称寻找相应的元件执行代码; 元件的位置和大小:在图形化编程值可以通过鼠标的拖动方便的改变元件位置。 ( 2 ) 连线信息 连线用于连接连个元件的两个端口,元件库中一个个孤立的元件依靠连线构成了 完整的程序。编程环境的核心模块会根据连线情况决定各个元件的执行顺序。连线信 息包括: a 连线两端信息:触发端元件序号和引脚代号,以及终止端的元件序号和引脚代号。 b 连线外形信息:为了使图形化源程序看起来分布整齐、结构清晰,所有的连线都 采用垂直连线。 2 2 2 系统平台的开发环境 结合实际情况,本系统平台采用b o r l a n d 公司的d e l p h i7 为前台开发工具, m i c r o s o f ts q ls e r v e r2 0 0 0 为后台数据库。 2 2 2 1d e l p h i 简介 随着w i n d o w s 的出现与发展,p c 机软件可视化技术已经成为个人计算机应用发展 的一大潮流。b o r l a n d 公司1 9 9 5 年开始推出的基于o b j e c tp a s c a l 的可视化d e l p h i 西南交通大学硕士研究生学位论文第1 0 页 是当今世界最出色的w i n d o w s 开发工具之一,它是一种可视化的编程语言,也即采用 可视化的方法来设计程序,提供了丰富的组件,使程序员能快速地建构精致的软件。 而对于一门面向对象语言来说,它必须具有继承性、多态性和封装性这三个特点才 能被称为面向对象的语言,d e l p h i7 也很好的具备了这三项特性。 一、继承性 在d e l p h i7 中,窗口、菜单等空间都是可以继承的。继承了一个对象,得到的子 类将具有父类的属性、实例变量、空间、用户自定义事件、对象级函数、事件和代码。 也就是继承了一个类,就得到了这个类的全部,并且能在这个类上扩展更多的功能。 二、 多态性 在d e l p h i7 中有大量的多态函数。在运行中,只需要指出对象和函数名即可。 三、 封装性 封装的目的是为了实现数据隐藏和数据保护,封装的目标是为对象提供一个对外 操作的借口,使其他对象通过函数来访问,而不允许直接对对象属性进行操作。在 d e l p h i7 中有三种访问类型:p u b l i c 、p r o t e c t 和p f i v m e ,这三种访问控制类型可以用在 对象的变量和函数上。为了保护数据,应该尽可能的多使用p f i v a t e 和p r o t e c t 类型,前 者只允许对象内部的访问,后者可以接受对象内部和继承类的元素访问【2 7 】。 另外,d e l p h i7 还具有如下特点: 1 d e l p h i7 是3 2 位的应用开发环境。它作为一种先进的开发工具,提供了众多的 新特性,可以满足软件开发过程中各个阶段的需求。 2 d e l p h i7 提供了全新的可视化开发环境,它是一个可视化的快速应用程序开发 工具,具有高效易用、最优化的源代码编译器,程序员能够使用鼠标很容易的来构造 用户界面。 3 d e l p h i7 提供了理想的发布技术,及独立的e x e 文件及包发布方式。应用程序 与其所有资源都驻留于一个可执行文件中,不必发布很多文件。 4 强大的数据库应用开发能力。对大多数基于本地、客户服务器和o d b c 数据 库平台的应用程序来说,b d e 的功能非常的强大【3 0 】。 2 2 2 2m i c r o s o f ts q ls e r v e r 2 0 0 0 介绍 s q ls e r v e r 是个c s 体系结构的关系数据库管理系统,它使用t r a n s a c t i o n s q l 语言在客户和s q ls e r v e r 之间发送处理请求,s q ls e r v e r 利用c s 体系结构把工作分 成两部分:客户端负责逻辑处理把数据呈现给用户,s q l s e r v e r 管理数据库,并在多个 处理请求之间分配诸如存储区、网络带宽和磁盘操作等可利用的资源。s q ls e r v e r 用 t r a n s a c t i o n s q l 作为它的数据库查询和编程语言,使用t r a n s a c t i o n - s q l 能够方便地存 取数据、查询、更新和管理关系数据库。 我们需要从通讯、应用开发、管理三个角度来考察s q ls e r v e r 2 0 0 0 的体系结构。 西南交通大学硕士研究生学位论文第11 页 一、通讯 s q ls e r v e r 利用一个层次通讯结构来分割应用和其下面的网络与通讯协议,这一 体系结构允许我们在不同的网络环境中部署统一应用,在这一通讯结构中包含的组件 有: 1 应用。应用是用数据库应用编程接口a p i 来开发的,一个应用并不知道其下面 用于与s q ls e r v e r 通讯的网络协议是什么样的。 2 数据库接1 2 1 。应用利用此接口向s q ls e r v e r 发送请求并处理s q ls e r v e r 返回 的结果。 3 网库。这是一个通讯软件的构件,它为了实现在适当的网络协议下的数据传输, 通常把数据库请求和结果打包,网库必须同时安装在客户和服务器两端,客户和服务 器同时使用多个网库,但它们之间要想成功的进行通讯,则必须使用一个共同的网库。 s q ls e r v e r 支持诸如t c p i p 、n a m e dp i p e sn o v e l 、i p x s p x 、b a n y a nv i n e s i p 和a p p l e t a 】k a d s p 等网络协议。 4 列表数据流。这是个应用级协议,用于客户和s q ls e r v e r 之间的通讯t d s 分组包封装在网络分组包中。 5 开放式数据库。这是s q ls e r v e r 的一个构件,用来负责网络连接,把客户请求 发送给s q ls e r v e r 来处理,并把结果和应答返回给s q ls e r v e r 的客户,开放式数据库 服务自动监听安装在该服务器上的所有服务器网斟2 5 1 。 二、应用开发 用户通过用数据对象接口或a p i 编写的应用来存取s q ls e r v e r 。s q ls e r v e r 支持 常用的和一些最近出现的数据库接口,它支持底层的、本机的a p i ,也支持易用的数 据对象接口。 1 应用编程接口( a p i ) ,一个数据库的a p i 定义怎样来写应用才能连接到一个数 据库并把命令传给它,s q ls e r v e r 为两类主要的数据库a p i 提供本机的支持,这依次 决定您能使用哪一个数据对象及接口。利用数据库a p i 可以更好地控制应用的行为和 性能。 2 o l e d b ,这是一个基于构件对象模型c o m 的数据存取接口,它支持利用o l e d b 或使用o l e d b 的数据对象所编写的应用o l e d b 能存取s q ls e r v e r 中的其他关系数 据库以及其他数据源中的数据。 3 o d b c ,这是一个调用级接口,它直接存取s q ls e r v e r 的t d s 协议,并且支 持利用o d b c 或利用使用o d b c 的数据库对象接口而写成的应用或构件,o d b c 能存 取s q ls e r v e r 及其他关系数据库中的数据,但般来说它不能存取其他数据源。 4 数据对象接口,a c t i v e x 数据对象a d o 把o l e d b 的a p i 封装在一个能减少应 用开发与维护代价的、被简化了的对象模型中,您能从v b 、v i s u a lb a s i cf o r a p p l i c a t i o n 、 西南交通大学硕士研究生学位论文第12 页 a s p 及正脚本对象模型中使用a d o 。 5 远程数据对象r d o ,r d o 映像到并封装o d b ca p i ,它可以用在v b 和v i s u a l b a s i cf o ra p p l i c a t i o n 中。 三、管理 s q ls e r v e r 提供了一系列简化和自动化日常管理任务的管理工具,如o s q l 和b c p 图形方式的管理工具( e n t e r p r i s em a n a g e r ) 、分布式管理对象( s q l d m o ) 、s q ls e r v e r 代理等等 4 2 】。 2 3 平台的功能分析 与传统的保护逻辑开发方式相比,牵引供电系统保护图形化开发平台应该具有以 下优越的特点: ( 1 ) 图形化编程方式 采用了p a d 图的方式对保护逻辑程序进行编程,是牵引网微机保护开发人员摆脱 了繁琐的结构化文本程序的编写,提高了工作效率。 ( 2 ) 保护功能模块化设计 根据牵引网保护功逻辑开发的需要,牵引网微机保护元件库和算法库都采用模块 化设计。即将保护中的基本功能模块化分别对应p a d 图编辑器中绘制的元件和c 语言 翻译器中调用的算法。元件库的模块化设计使得保护逻辑p a d 图程序思路清晰,易于 理解;算法库的模块化设计使得自动生成的保护逻辑c 程序可读性增强,并可以提高 程序的执行效率。 ( 3 ) 完备的通用性 面对不同需要的微机保护装置,软件平台中元件库和算法库可以重复使用,使程 序设计人员避免大量重复性工作,降低了工作强度【2 0 1 ,是平台的应用范围更加广泛。 另外,平台采用基于p a d 图的标准设计规范,便于开发人员使用以及软件平台以后的 扩展。 ( 4 ) 基于三层架构 客户端能够通过服务器访问最新元件库数据,以保持数据的及时性。 ( 5 ) 人性化的人机界面 界面简洁、美观,并具有菜单栏、工具栏、右键菜单、工作区和元件库菜单,开 发人员通过鼠标即可完成绝大多数的操作。 西南交通大学硕士研究生学位论文第13 页 第3 章图形平台的面向对象设计 3 1 引言 随着计算机应用的飞速发展,各种应用分析软件也变得越来越复杂。由此带来一 系列问题,如开发周期不断变长,开发费用上涨,软件质量难以保证,软件维护难度 愈来愈大,项目失败的可能性增大。在积累了长期的软件开发经验和教训后,人们越 来越深刻地认识到,对现实世界问题进行科学的抽象,进而建立简明准确的表示模型 是把握复杂问题的关键。模型可以使人们从全局上把握系统的全局及其相关部件之间 的联系,可以有效地降低系统的复杂度,防止人们过早地陷入各个模块的实现细节。 比如在图形平台方面,还存在着由于各应用软件的要求不同,不得不重复开发的问题。 面向对象技术的引入能很好地解决这一问题。面向对象编程方法是一种基于对象分解, 以数据分析为中心的编程思想。由于对象的分解保持与事物的实际结构一致,对现实 世界的模拟逼真,使程序员能够充分理解并管理更大更复杂的程序。如本文中的图形 平台系统,它包含着各种图形元素,对图形能够实现绘制、选中、撤消、存贮等各种 操作等等。如果考虑该图形系统所有的功能,不久就会把思路搞乱,但是如果把图形 系统看作是一组独立的对象的集合,问题就容易解决得多。 面向对象的继承和多态的机制又能使程序员轻而易举地重用代码。系统中的各个 元件有其共性,把这些共性抽象为一个统一的基类,每增添一种元件只需由此基类继 承得到,利用类的继承关系可以方便的把不同的基本图元的通用信息提炼出来,有效 提高了实现多种图元绘图时的编程效率。同时,依此构造出各个图元类,这样可以使 它们的操作模式统一化,高效地实现代码重用。 3

温馨提示

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

评论

0/150

提交评论