(测试计量技术及仪器专业论文)fcs式变电站综合自动化系统后台监控组态软件的研究与设计.pdf_第1页
(测试计量技术及仪器专业论文)fcs式变电站综合自动化系统后台监控组态软件的研究与设计.pdf_第2页
(测试计量技术及仪器专业论文)fcs式变电站综合自动化系统后台监控组态软件的研究与设计.pdf_第3页
(测试计量技术及仪器专业论文)fcs式变电站综合自动化系统后台监控组态软件的研究与设计.pdf_第4页
(测试计量技术及仪器专业论文)fcs式变电站综合自动化系统后台监控组态软件的研究与设计.pdf_第5页
已阅读5页,还剩74页未读 继续免费阅读

(测试计量技术及仪器专业论文)fcs式变电站综合自动化系统后台监控组态软件的研究与设计.pdf.pdf 免费下载

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

文档简介

武汉大学硕士学位论文f c s 式变电站综合自动化系统后台监控组态软件的研究与设计 摘要 f c s 式变电站综合自动化系统代表了该领域的发展方向。它运用了先进的现 场总线技术,现场总线控制系统是近些年新发展起来的一种计算机监控技术,与 分布式控制系统相比它具有许多优点,它的使用大大提高了变电站综合自动化监 控系统的可靠性,降低了系统的成本。 本文主要介绍了该系统后台监控组态软件的开发过程。完成了后台监控组态 软件的整体结构设计,规划了本软件的组成模块以及各模块之间的关系。本软件 主要由绘图软件包组态、设备属性数据库组态、历史数据库组态、运行组态、串 行通信组态、报警事故组态、打印报表组态、网络通信组态等模块组成。绘图组 态为变电站工程师提供了一个绘制一次图、潮流图等的绘图工具。设备属性数据 库组态、历史数据库组态、报警事故组态用于生成各种数据库,储存站内设备运 行及事故时的参数瞬时值以及开关设备的分合动作。运行组态能够监视站内设备 的运行参数,对站内设备进行总体监督、协调以及优化控制。通信组态能够实现 前台设备和后台监控主机的双向通讯。打印报表组态用于打印日常报表、棒图、 趋势图等。网络通信组态可使系统能够响应远程用户的命令。 由于设计变电站综合自动化后台监控软件是一个非常庞大的工作,需要多人 合作开发。本文介绍了绘图软件包组态、设备属性数据库组态、历史数据库组态 的设计。软件设计采用d e l p h i 6 0 为开发工具,数据库部分使用的是a c c e s s 2 0 0 0 。 本文还介绍了如何采用面向对象的方法设计各电气元件的基类,并从此基类派生 出各元件类的方法。 关键词:变电站综合自动化,监控软件,组态,d e p h i 6 0 ,面向对象 武汉大学硕士学位论文f c s 式变电站综合自动化系统后台监控组态软件的研究与设计 a b s t r a c t t h ef c s ( f i e l db u sc o n t r 0 1s y s t e m ) a u t o m a t i cs u b s t a t i o ns y s t e mi st h e m o s ta d v a n c e ds y s t e mi nt h i sa r e a i tu s e st h ea d v a n c e df c st e c h n i q u ew h i c h i s d e v e l o p e d i nr e c e n t l y t h ef c sc o n t r 0 1 s y s t e m i sb e t t e rt h a n d i s t r i b u t e dc o n t r o ls y s t e m ( d c s ) i ns o m ea s p e c t s i tc a ni m p r o v et h e r e l i a b i l i t yo fa u t o m a t i cs u b s t a t i o ns y s t e ma n dr e d u c e t h ec o s to f t h e s y s t e m t h i sp a p e rm a i n l yi l l u s t r a t e st h ed e s i g np r o g r e s so fi t sm o n i t o r c o n f i g u r a t i o ns o f t w a r ew h i c hi n c l u d e st h ed e s i g no fi t su n i t a r ys t r u c t u r e t h ed e s i g no fi t sc o n f i g u r a t i o nm o d u l e sa n dt h e i ri n t e r r e l a t i o n t h i s c o n f i g u r a t i o n s o f t w a r ei sm a i n l yb u i i tu pb yd r a w i n gc o n f i g u r a t i o n 、 e q u i p m e n tp r o p e r t y d a t a b a s ec o n f i g u r a t i o n 、h i s t o r y d a t a b a s e c o n f i g u r a t i o n 、m o n i t o rc o n f i g u r a t i o n 、 c o m m u n i c a t i o nc o n f i g u r a t i o n 、 a c c i d e n tc o n f i g u r a t i o n 、p r i n t i n gc o n f i g u r a t i o n 、n e t w o r kc o m m u n i c a t i o n c o n f i g u r a t i o n d r a w i n gc o n f i g u r a t i o np r o v i d e s at o o lt od r a ww i r i n g d i a g r a m f o r e n g i n e e r t h e d a t a b a s e c o n f i g u r a t i o n s c a nc r e a t es o m e d a t a b a s e s w h i c hc a n s t o r a g e t h ei n s t a n t a n e o u s p a r a m e t e r s o ft h e e q u i p m e n t s a n dt h em o t i o n so ft h es w i t c he q u i p m e n t su n d e rt h en o r m a la n d a b n o r m i t y c o n d i t i o n m o n i t o rc o n f i g u r a t i o nc a nm o n i t o rt h ef u n c t i o n p a r a m e t e r so ft h ee q u i p m e n t sa n dh a r m o n i z et h ef u n c t i o no fe q u i p m e n t s c o m m u n i c a t i o n c o n f i g u r a t i o n c a nt r a n s f e rd a t ab e t w e e nt h et e r m i n a l e q u i p m e n t s a n dm o n i t o r c o m p u t e r i nb o t hd i r e c t i o n s p r i n t i n g c o n f i g u r a t i o nc a np r i n td a i l yr e p o r tf o r m s 、c l u b b e dc h a r t , a n ds oo n n e t w o r kc o m m u n i c a t i o nc o n f i g u r a t i o nm a k et h es y s t e mc a nc o r r e s p o n dt ot h e r e m o t ec o m m a n d s n e t w o r kc o m m u n i c a t i o nc o n f i g u r a t i o ne n a b l es y s t e m c o r r e s p o n dt h er e m o t e c o m m a n d s d e s i g n i n gt h i ss o f t w a r e i sac o m p l e xw o r k ,s oi tn e e d sg r o u pw o r k m yt a s ki s t od e s i g nt h ed r a w i n gc o n f i g u r a t i o n 、t h ee q u i p m e n tp r o p e r t y d a t a b a s ec o n f i g u r a t i o na n dt h eh i s t o r yd a t a b a s ec o n f i g u r a t i o n u s i n g o r i e n t e do b j e c tm e t h o dt od e s i g nt h eb a s i cc l a s so fe q u i p m e n t sa n df r o m t h eb a s i cc l a s s i n h e r i t i n g t h es o nc l a s s e sa r ea l s od o n e i nt h e d e v e l o p m e n tp r o g r e s s ,d e l p h i 6 0 i st h e d e v e l o p m e n t e n v i r o n m e n ta n d a c c e s s 2 0 0 0i st h et o o lt od e v e l o pd a t a b a s e k e y w o r d s :a u t o m a t i cs u b s t a t i o ns y s t e m ,m o n i t o rs o f t w a r e ,c o n f i g u r a t i o n , d e l p h i 6 0 ,o r i e n t e do b j e c t 武汉大学电气工程学院 学位论文原创性声明 本人郑重声明:所呈交的申晚。兰学位的论文是本人在导师的指导下独 立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不 包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究作出重要贡 献的个人和集体,均己在文中以明确方式标明。本人完全意识到本声明的法律后 果由本人承担。 作者签名:身毋幻 日期研年厂月z f 日 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文大规定,同意学校 保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和 借阅。本人授权武汉大学可以将本学位论文的全部或部分内容编入有关数据库 进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编。 本学位论文属于保密口,在年解密后适用本授权书。 本学位论文属于不保密目 储獬帮谤 ,、? ”n 新鹳:黪 叫趔切记一 扑u ( 请在以上相应方框内打“”) 9 , 1 z 二 月 月 5 年 年 钟 期 期 日 日 武汉大学硕士学位论文f c s 式变电站综合自动化系统后台监控组态软件的研究与设计 第一章绪论 1 1选题意义 近几年来,我国电力生产得到了飞速发展,生产规模迅速扩大,电网规模也 随之飞速发展,对电力生产及调度监控系统的要求也越来越高,利用计算机对电 力运行参数进行在线检测、实时故障分析处理、运行状况的实时控制和调度等, 已经在电力生产及配电调度的可靠性、安全性、经济性以及提高电力的综合管理 水平等方面发挥了重要的作用。 变电站综合自动化系统是利用多台微型计算机和大规模集成电路组成的自 动化系统,代替常规的测量和监视仪表、控制屏、中央信号处理系统和远动屏, 用微机保护代替常规的继电保护屏,避免了常规继电保护装置不能与外界通信的 缺陷。变电站综合自动化系统可以采集到比较齐全的数据和信息,利用计算机的 高速计算能力和逻辑判断功能,可方便监视和控制变电站内各种设备的运行和操 作,具有功能综合化、结构微机化、操作监视屏幕化、运行管理智能化等特征。 变电站实现综合自动化后有许多优点:提高供电质量、提高电压合格率; 提高变电站的安全、可靠运行水平;减少维护工作时间,减少值班人员的劳 动强度,并达到减人提效:缩小变电站占地面积,减少总投资;提高电力系 统的运行管理水平。 1 2变电站综合自动化系统的研究现状及发展趋势 1 2 1d c s 式变电站综合自动化系统的体系结构与特点 以往的变电站综合自动化系统一般设计为分布式的控制系统,分布式控制系 统简称d c s ( d i s t r i b u t e dc o n t r o ls y s t e m ) ,也叫集散控制系统。典型d c s 式 变电站综合自动化系统体系结构一般分为三层,即管理级、监控级( 工程师站 操作站) 和过程控制级,有三级网络连接各层相应的设备【l j 。它有三种类型的产 品,即仪表型分散控制系统;以p l c 为基础的分散控制系统;以p c 总线为基础 的分散控制系统。d c s 过程控制器与现场变送器执行器之间的连接如图1 1 所示。 d c s 式变电站综合自动化系统虽然实现了对变电站的综合自动控制,但它存 在许多问题。d c s 过程控制器与现场变送器、执行器之间的连接采用一对一的设 第1 页 武汉大学硕士学位论文f c s 式变电站综合自动化系统后台监控组态软件的研究与设计 备连接方式,如图1 所示。这种接线方式不但使得系统的接线十分复杂,而且伎 线路的维护更加困难;d c s 高度集中的控制方式,使它的后台监控总机系统任务 繁重,并且存在极高的风险,一旦后台监控总机出现问题,整个变电站综合自裁 化系统都处于崩溃边缘;d c s 属“半数字式”系统,需要大量的m a o 、d i d o 、 p i p o 等中间模板来完成模拟量与数字量之间的信息转换;另外变电站内需要监 控的设备距离中央控制室有远有近,远的有几百米之遥,这使得测量这些设备模 拟量的仪表在传输模拟量时产生较大误差,以p t 为例,当电压从几百米的线路 传送到中央控制室的时候,在这几百米线路上所造成的压降就不容忽视了,这将 造成很大的误差。所以工控领域一直在研究一种更加完善的控制系统。 图1 1分布式控制系统构成示意图 1 2 2f o $ 式变电站综合自动化系统的体系结构与特点 近些年来一种新型计算机监控系统一一现场总线控制系统发展起来了。现场 总线控制系统简称f c s ( f i e l db u sc o n t r 0 1s y s t e m ) 。f c s 式变电站综合自动化 系统采用了智能现场设备和现场总线技术,系统构成如图1 2 所示。 图1 2 现场总线控制系统构成示意图 第2 页 武汉大学硕士学位论文f c s 式变电站综合自动化系统后台监控组态软件的研究与设计 f c s 属“纯数字式”系统,无需大量的a i a o 、d i d o 、p i p o 等中间模板。 基于现场总线的现场设备与操作站之间是一种纯数字化、串行、双向、多站的通 讯模式,系统可靠性高。而且,总线上传输的是数字量,远距离传输数字量不会 造成什么误差,这也优于d c s 系统远距离传送模拟量,另外用数字信号替代模拟 信号传输,在一条双绞线或一条电缆上可挂接多个现场设备,节省硬件数量与投 资,节省安装费用,降低系统成本。 f c s 式变电站综合自动化系统要求对变电站内所有需要监测和控制的设备, 都配置以单片机或d s p 为核心的智能现场设备,它们能够将原先d c s 系统中处于 控制室的控制功能置入现场设备,直接在现场完成,即就地采集信息、就地处理、 就地控制,从而实现了彻底的分散控制。这种系统结构不但接线简单,而且还减 轻了后台监控总机的系统负担,减小了像d c s 控制系统那样高度集中的控制方式 所造成的巨大风险,即使后台监控总机出现问题,也不致于使整个变电站综合自 动化系统崩溃。 另外,变电站内采用现场总线机制,所有的智能现场设备都与这条总线相连, 后台监控主机也与此总线相连,通过通信,后台监控主机可得到由智能现场设备 传递出来的运行设备的信息,从而实现对变电站的实时总体监督、协调、优化控 制与管理,并可以实现打印趋势图、棒图、日常报表等功能。变电站工程师也可 以通过后台监控主机对站内设备运行状态进行修改( 如生成操作票等) 。 1 3 本人的任务 本人主要从事f c s 式变电站综合自动化系统后台监控组态软件的设计。由于 设计该组态软件是一个非常庞大的工作,因此需要多人合作开发。本人的主要任 务是: ( 1 ) 与本工作组的其他成员共同研讨,选择开发工具,完成后台监控组态 软件的整体结构设计。 ( 2 ) 完成绘图软件包组态的设计。绘图软件包组态为变电站工程师提供了 一个绘制一次图、潮流图等的绘图工具,是人机交互的重要手段。该组态是整个 软件的基础,对于这个功能块最重要的一点是要达到界面友好,简单易用的效果。 ( 3 ) 完成设备属性数据库组态的设计。设备属性数据库组态用来生成设备 属性数据库,该数据库用于储存站内设备的一些固定不变的信息,例如设备的出 第3 页 武汉大学硕士学位论文f c s 式变电站综合自动化系统后台监控组态软件的研究与设计 厂日期,额定电压,额定电流,检修情况等等。 ( 4 ) 完成历史数据库组态的设计。历史数据库组态用来生成历史数据库, 该数据库用于储存站内设备的电气参数瞬时值以及开关设备的分合动作。它可以 进一步用于打印趋势图、日常报表等。 第4 页 武汉大学硕士学位论文f c s 式变电站综合自动化系统后台监控组态软件的研究与设计 第二章后台监控组态软件的整体设计 2 1工控组态的基本概念及特点 变电站综合自动化系统的后台监控组态软件的开发属于工控组态的范畴。所 谓工控组态是由图形、报表、元件及数据库组成,并能够与外部设备相连进行通 信,交换数据的统一系统。其由驱动软件和硬件设备两部分构成。结合计算机技 术,驱动软件一般包含直观丰富的操作界面。一方面,用户根据需要进行一定的 操作,施发指令,通讯设备收集和整理外部所要控制对象的信息,在组态软件进 行数据的处理之后,以报表、统计图等直观的形式传达给用户,这样用户达到了 了解控制对象情况的目的。另一方面,用户依据所了解到的情况,再通过组态软 件控制外部设备的运行。 工控软件虽然完成的功能不同,但就其结构来说,一般具有如下特点:实 时性:工业控制系统中有些事件的发生具有随机性,要求工控软件能够及时地处 理随机事件。周期性:工控软件在完成系统的初始化工作后,随之进入主程序 循环。在执行主程序过程中,如有中断申请,则在执行完相应的中断服务程序后, 继续主程序循环。相关性:工控软件由多个任务模块组成,各模块配合工作, 相互关联、相互依存。人为性:工控软件允许操作人员干预系统的运行,调整 系统的工作参数。在理想情况下,工控软件可以正常执行。 工控中,工控组态软件的编制是件重要工作。组态软件是一种控制系统开发 工具,用户只需根据应用对象和控制任务要求,利用组态软件提供的工具,通过 简单形象的组态设计工作,就可以实现所需的软件功能l 。其提供了驱动外部设 备正常运行的驱动程序,且要求达到能够使一般用户进行操作的目的。因此一般 开发出在直观的窗口上,提供各种动画图符,如:直线、圆、多边形等基本图形 元素,咀及图库中的各种图形元件,例如:按钮、开关等动画控制窗口。用户只 需编非常少的程序,即可完成整个工程的控制及数据显示等工作。同时,数据采 集设备和输入输出控制设备集成在整个工控系统的内部,只要把现场传感器的信 号线接入系统,在控制中心使用工控组态软件,进行简单的参数设置,立即就可 进行数据通讯。 第5 页 武汉大学硕士学位论文f c s 式变电站综合自动化系统后台监控组态软件的研究与设计 2 2后台监控组态软件的整体设计方案 f c s 式变电站综合自动化系统的后台监控软件要设计成组态软件的形式。也 就是说f c s 式变电站综合自动化后台监控软件组态软件要能够让用户在面对不 同的变电站时,只需要利用绘图软件包组态绘制出该站的接线图,输入该站内设 备的参数就可以实现对变电站的综合控制。这种高度可移植性的软件系统,不仅 使软件操作起来简便易行,在线维护方便,而且可视化的图形界面使组态软件具 备了良好的人机交互界面1 3 , 4 1 。 它主要由绘图软件包组态、设备属性数据库组态、历史数据库组态、运行组 态、串行通信组态、报警事故组态、打印报表组态、网络通信组态等组成。软件 系统方框图如图3 所示,现分别介绍各组态模块的功能: 属性数据库组态 史数据库组态 图2 1 软件系统方框图 ( 1 ) 绘图软件包组态 绘图组态为变电站工程师提供了一个绘制一次图、潮流图等的绘图工具。对 于这个功能块最重要的一点是要达到界面友好,简单易用的效果。绘制一次接线 图时,需要把刀闸、电容器等一次设备图形化,图形化的手段是以工具的形式出 现,就像w i n d o w s 中画笔程序提供的刷子、笔、颜料一样。在运行的时候,一次 图中要反映出电路、电压、功率及频率等物理量的当前数值。 ( 2 ) 设备属性数据库组态 用来记录设备的一些固定不变的信息,例如设备的出厂日期,额定电压,额 定电流等等。它可以为运行组态提供一定的信息,也可让工程师直接参阅。 ( 3 ) 历史数据库组态 第6 酉 武汉大学硕士学位论文f c s 式变电站综合自动化系统后台监控组态软件的研究与设计 历史数据库组态用来生成历史数据库,该数据库用于储存站内设备电气参数 的瞬时值以及开关元件的分合动作。它可以进一步用于打印趋势图、日常报表等。 它是运行组态重要的信息来源。 ( 4 ) 运行组态 用从下位机传上来的时实数据对画面进行更新,要更新的数据有电压、电流、 有功、无功、事故报警等。另外监视站内设备的运行参数,对站内设备进行总体 监督、协调、优化控制。并且可以完成变电站工程师对站内设备运行状态及参数 的修改( 生成操作票等) 。同时还要负责查询数据、打印报表等管理功能。 ( 5 ) 通信组态 对于智能现场设备可用通信组态将相应的运行设备信息传递给后台监控主 机,后台监控主机也可用通信组态向控制电路发送操作命令。 ( 6 ) 报警事故组态 建立报警事故数据库记录变电站内部发生的各种报警和事故的种类、级别, 必要时还要记录事故期间的电压、电流、功率、频率的变化情况。 ( 7 ) 打印报表组态 用于打印日常报表、棒图、趋势图等。 ( 8 ) 网络通信组态 运行系统可根据远程用户的定义和配置运行,例如上一级调度系统发出的调 度命令。充分利用w e b 技术,实现网页的动态分布,使得电力生产远程监控成为 可能。 另外,对于这些功能模块的整体结构,也应突破常规的模块化结构,做成“搭 积木”的结构形式。以往的模块化结构,虽然实现了把程序大概分成几个部分, 但是它们之间的独立程度仍然是不够的。通常为了增加某项新功能,而需要修改 几个模块,并且修改完成后仍需将整个工程从新编译连接。如果采用“搭积木” 的结构方法则效果截然不同。此时的功能块封装的非常好,程序之间的接口要求 也非常严格,一般只给几个输入参数,经过该功能块后,就可以输出要得到的参 数或实现预定的功能。所以增加新功能时只要修改相应的一个功能块就可以了。 另外这些功能块都做成动态链接库的形式,对一个功能块的修改,只需要新编译 该功能块,而不用重新编译整个工程,这就极大地方便了程序的维护和升级。 第7 页 武汉大学硕士学位论文f c s 式变电站综合自动化系统后台监控组态软件的研究与设计 由于设计变电站综合自动化后台监控软件是一个非常庞大的工作,因此需要 多人合作开发。本人主要从事绘图软件包组态、设备属性数据库组态、历史数据 库组态的设计。 2 3 开发工具的选择 根据设计本程序的需要,我们选择了d e l p h i 6 0 为开发工具。 d e l p h i 以o b j e c tp a s c a l 为其程序开发语言,程序结构化非常好,其完全 的面向对象的程序设计对所有组件支持继承性、封装性、多态性,并具有完整强 大的数据结构能力,支持指针、集合、枚举、记录等多种数据类型;在数据库方 面,d e l p h i 内建的数据库引擎( d b e ) 可以让程序员直接存取p a r a d o x 和f o x p r o 等数据库,完全支持o d b c ( o p e nd a t a b a s ec o n n e c t i v i t y ) ,可与所有开放式数 据库系统( 如s y b a s e ,i n f o r m i x ,o r a c l e ) 链接,提供一系列数据库存取组件 及r e p o r t s m i t h 工具,因此采用d e l p h i 这样的可视化编程技术开发系统组态软 件具有很高的工程实用价值。 d e l p h i 语言中采取的面向对象技术。经过二十多年的发展,已逐渐成熟与 完善,并广泛应用于科学与工程等多个领域。高质量的代码能有效地降低软件的 复杂度和提高开发效率。面向对象方法的继承性是一种代码重用的有效途径。在 软件设计时可以利用一些已被精心设计好并且经过测试的代码,这些可重用的代 码被组织和存放在程序设计环境的类库中。由于类库中的这些类的存在,使以后 的程序设计过程变得简单,程序的复杂性不断降低、正确性不断加强,也越来越 易于理解、修改和补充。利用面向对象的方法,能够建立一个定义良好的接口, 以帮助系统的设计,实现,维护和程序的重用。 2 4面向对象的方法在本组态软件当中的应用 2 4 1 基本构想 因为变电站中的电气元件很多,所以我们要在软件当中描述的电气元件也很 多。如果为每种电气元件都设计一个方法来描述,那么程序将不但变得非常繁 琐,而且可读性、可维护性、运行速度都将降低。为此将面向对象方法中的类以 及类的继承、派生、多态性应用进来是非常必要的。 要描述一个电气元件,主要是描述它的各种属性,在软件当中主要是体现图 第8 页 武汉大学硕士学位论文f c s 式变电站综合自动化系统后台监控组态软件的研究与设计 形属性和物理属性。图形属性是指:工程师使用绘图软件包组态将电气元件画在 计算机屏幕上,形成变电站接线图,当电气元件被以电气符号画在计算机屏幕上 时,描述该电气符号的坐标、大小、颜色等属性就被称为元件的图形属性。物理 属性就是指电气元件的电压、电流、带电状态等属性。纵观要描述的电气元件的 属性,我们会发现有些属性是每个元件都具有的属性,例如图形属性中的坐标、 大小、图形颜色等;物理属性中的电压、电流等。为此我们设计了个基类,这 个类就封装了这些共有的属性。再从这个基类派生出各个电气元件类,它们封装 了每种电气元件所特有的属性。 描述电气元件除了描述它的各种属性以外,还有一些函数,例如在计算机屏 幕上绘制、移动、选择、存储、装载元件图形的函数,以及得到元件电压、电流 值的函数等。这些方法有些也是所有元件共有的,只是具体的实现方法不一样而 已,对于这些方法我们可以把它们在基类当中声明为虚函数,在各个元件派生类 当中重载。例如在计算机屏幕上绘制元件图形的函数,它就是每个元件都具有的 函数,只是具体的实现方法不一样,可以在基类当中声明为虚函数,在各个元件 派生类当中重载,在重载程序中具体写出绘制相应元件的函数。这样将大大提高 程序的可读性、灵活性,节省代码。对于某种元件特有的函数,就把它写在相应 元件的派生类当中去。 把各种元件定义为相应的类以后,每当我们在计算机屏幕上画一个电气元件 时,程序就生成一个该电气元件类的对象,并且这个对象的属性和函数就描述了 相应的电气元件,包括电气元件的图形属性和物理属性。程序就是通过判断或运 算这些对象的属性来实现各种功能的。 2 4 2 基类的设计 在d e l p h i 6 0 的类库当中有一个图形控件类t g r a p h i c c o n t r 0 1 ,它有许多与 图形操作有关的属性及函数,选择它为本程序基类的父类,可以让程序更好的利 用d e l p h i 6 0 类库中的资源。我们把基类命名为t e l e m e n t ,在本程序的工程组 当中单列一个名为u n i t e l e m e n t 的单元,把基类t e l e m e n t 的定义写进去,工程 组当中的其他单元,只要在接口部分调用该单元,就可以使用该类了。以下是基 类定义中的一些关键代码: t e l e m e n t = c l a s s ( t g r a p h i c c o n t r 0 1 ) 第9 页 武汉大学硕士学位论文f c s 式变电站综合自动化系统后台监控组态软件的研究与设计 p r o t e c t e d 定义元件图形属性 m _ n a m e :t e l e m e n t t y p e :图形对应的电气元件的名称 r e _ x 1 ,m _ y 1 ,mx 2 ,m y 2 :i n t e g e r :相对坐标 mr e a l x l :i n t e g e r ,m r e a l y l ,m _ r e a l x 2 ,m _ r e a l y 2 :i n t e g e r :绝对坐标 m _ r e c w i d t h :i n t e g e r :元件图形所在正方形框的边长 其它的图形属性 定义元件物理属性 mp r o j e c t c o d e :s t r i n g 3 0 :电气元件的工程号 m _ l e v e l :s t r i n g 1 0 :电气元件的电压等级 me l e c t r i e s t a t u s :t e l e c t r i c s t a t u s :电气元件的带电状态 其它的物理属性 p u b l i c 缡融元释匿琵藏、掷始元侮霭他鼠佳醣谯镪醢数 f u n c t i o ng e t r e c t e x0 :t r e c t :得到元件坐标属的函数 f u n c t i o ns e t r e c t e x ( x l ,y l ,x 2 ,y 2 :i n t e g e r ) :t r e o t 给元件坐标属性赋 值的函数 其它的得到元件图形属性和给元件图形属性赋值的函数 i 得到元件物理属性和给元件物理属性赋值的函数 f u n c t i o ng e t l e v e l e x 0 :s t r i n g ; f u n c ti o ns e t l e v e l e x ( l e v e l :s t r i n g ) :s t r i n g : 其它的得到元件物理属性和给元件物理属性赋值的函数 构造和析构函数 c o n s t r u c t o rc r e a t e ( o w n e r :t c o m p o n e n t ) :o v e r r i d e : d e s t r u c t o rd e s t r o y :o v e r r i d e : 几个比较重要的仅在此出声明而需要在派生类中重载的虚函数 f u n c t i o nd r a w e x0 :b o o l e a n :v i r t u a l :绘制元件图形 f u n c t i o ns e l e c t e x 0 :b o o l e a n :v i r t u a l :选择元件图形 p r o c e d u r em o v e t o e x ( x l ,y l :i n t e g e r ) :v i r t u a l :移动元件图形 f u n c t i o nd e l e t e e x0 :b o o l e a n :v i r t u a l :删除元件图形 第l o 页 武汉大学硕士学位论文f c s 式变电站综合自动化系统后台监控组态软件的研究与设计 f u n c t i o nc o p y e x0 :b o o l e a n :v i r t u a l :复制元件图形 p r o c e d u r ep r i n t e x ( xs c a l e ,ys c a l e :i n t e g e r ) :v i r t u a l :打印元件图形 f u n e t i o ns a v e e x ( f i l e n a m e :s t r i n g ) :b o o l e a n :v i r t u a l :保存元件图形 f u n c t i o nl o a d e x ( f i l e n a m e :s t r i n g ) :b o o l e a n :v i r t u a l :装载元件图形 f u n c ti o nc l e a r e l e m e n t 0 :b o o l e a n :v i r t u a l :从屏幕上擦除元件图形 f u n e t i o nr e s i z e e x ( x l ,y l ,x 2 ,y 2 :i n t e g e r ) :b o o l e a n :v i r t u a l : 变化元件图形大小 其它的的仅在此出声明而需要在派生类中重载的虚函数 e n d : 2 4 3 各电气元件类的设计 我们把各元件类以相应的英文单词来命名,如断路器类命名为t b r e a k e r 。 每一种电气元件都在本程序的工程组当中单列一个的单元,并把相应元件类的定 义写进去。工程组当中的其他单元,只要在接口部分调用该单元,就可以使用该 类了。例如断路器类t b r e a k e r ,我们把它定义在一个名为u n i t b r e a k e r 的单元 当中,以下是该单元中的一些关键代码: u n i ti u n i t b r e 月k e r - i n t e r f a c e 下一行为单元件接口部分 u s e su n i t e l e m e n t ,g r a p h i c s ,p r i n t e r s ,w i n d o w s :使用基类所在单元u n i t e l e m e n t t y p e 以下为断路器类的定义 t b r e a k e r = c l a s s ( t e l e m e n t ) p r o t e c t e d 定义断路器类特有的属性 h a v e g a t e a p p a r a t u s :b o o l e a n :是否装有有关口表 e l e m e n t b e g i n :s t r i n g 3 0 :起点设备 e l e m e n t d i r e c t :s t r i n g 3 0 :终点设备 其它的特有属性 p u b l i c i 几个比较重要的在基类当中已声明在此重载的函数 f u n c t i o nd r a w e x 0 :b o o l e a n :o v e r r i d e :绘制断路器图形 第1 1 页 武汉大学硕士学位论文f c s 式变电站综合自动化系统后台监控组态软件的研究与设计 f u n c t i o ns e l e e t e x 0 :b o o l e a n :o v e r r i d e :选择断路器图形 p r o c e d u r em o v e t o e x ( x l ,y l :i n t e g e r ) :o v e r r i d e :移动断路器图形 f u n c t i o nd e l e t e e x0 :b o o l e a n :o v e r r i d e :删除断路器图形 f u n c t i o nc o p y e x 0 :b o o l e a n :o v e r r i d e :复制断路器图形 f u n e t i o ns a v e e x ( f i l e n a m e :s t r i n g ) :b o o l e a n :o v e r r i d e :保存断路器图形 f u n c t i o nl o a d e x ( f i l e n a m e :s t r i n g ) :b o o l e a n :o v e r r i d e :装载断路器图形 p r o c e d u r ep r i n t e x h s c a l e ,y _ s c a l e :i n t e g e r ) :o v e r r i d e :打印断路器图形 f u n c t i o nc l e a r e l e m e n t 0 :b o o l e a n :o v e r r i d e :打印断路器图形 f u n c t i o nr e s i z e e x ( x l ,y l ,x 2 ,y 2 :i n t e g e r ) :b o o l e a n :o v e r r i d e : 变化断路器图形大小 e n d : i m p l e m e n t a t i o u 重载函数的具体代码 e n d 2 5 数据结构的设计 我们选择链表作为该程序的数据结构。当用绘图软件包组态绘制变电站接线 图时,每在计算机屏幕上画一个元件,就生成该元件类的一个对象,同时程序把 该对象加入到链表当中,这样计算机屏幕上所有的元件对象就连接成一条链表。 由于链表中的对象记载了相应元件的属性,计算机程序通过遍历这条链表,读取 链表中每一个元件对象的属性,就可以实现各种功能了。 建立链表需要使用指针,使用指针会使程序变得不稳定,故我们使用了 d e l p h i 类库中的t o b j e c t l i s t 类,该类可以把各种不同元件类生成的对象编成 一条链表,这样就避免了使用指针。t o b j e c t l i s t 类有c o u n t 、i t e m s 、f i r s t 、 l a s t 、a d d 、r e m o v e 、d e l e t e 等属性及函数,使用简单,操作灵活。程序当中 我们共定义了三条链表它们分别是:g _ e l e m e n t l i s t l ,g _ e l e m e n t l i s t 2 , g _ e l e m e n t l i s t 3 。它们的功能将在后文当中讲述。 第1 2 页 武汉大学硕士学位论文f c s 式变电站综合自动化系统后台监控组态软件的研究与设计 第三章绘图软件包组态的设计 3 1绘图软件包组态所要实现的主要功能 绘图软件包组态为变电站工程师提供了一个绘制一次图、潮流图等的绘图工 具。对于这个功能块最重要的一点是要达到界面友好,简单易用的效果。在绘图 软件包组态程序工作组当中添加一个新窗体,命名为m _ m a i n f o r m ,并将其定义 为主窗体。再在主窗体上覆盖一个画布控件t p a i n b o x ,一次图、潮流图就画在 这个画布控件t p a i n b o x 上。 绘图软件包组态所要实现的主要功能有;设计一个类似于w o r d 的任意浮动 的工具栏,在这个工具栏当中把各种电气元件用按钮表示,形成一个元件图形库; 实现单元件操作的功能,包括单个电气元件图形的绘制、选择、移动、删除、复 制、粘贴;多元件操作的功能,包括多个电气元件的选择、移动、复制、粘贴: 在栅格上画图的功能;比例缩放和比例打印的功能;响应拉动滚动条事件的功能: 更改元件图形属性和输入元件的物理属性的功能:图形文件存盘、读盘的功能。 绘图软件包组态程序的主界面如图3 1 所示。 图3 1绘图软件包组态的一个界面 第1 3 页 武汉大学硕士学位论文f c s 式变电站综合自动化系统后台监控组态软件的研究与设计 3 2 工具栏的制作 工具栏的制作包括:制作类似于w o r d 的任意浮动的工具栏:在工具栏上添加 按钮;画b m p 图形作为按钮的图标;编写点击工具栏中按钮的事件四个步骤。现 逐步介绍如下: 一制作类似于w o r d 的任意浮动的工具栏需如下步骤: ( 1 ) 使用控件c o n t r o l b a r 。它在d e l p h i 工具栏中的a d d i t i o n a l 页中,需要 设置的属有:将d o c k s i t e 属性设置为t r u e ,表示将其设置为浮动的场所;将 d r a g k i n d 属性设置为d k d r a g ,表示将其设置为自已不可以被浮动;将d r a g m o d e 属性设置为d m m a n u a l ,表示将其拖动的方式设置为手动的i 将a u t o s i z e 属性设 置为t r u e ,使其能依倨所包含控件的多少来自动的调整自身的控件大小,其所 包含的控件被拖运后,其自身会依据当前的情况来调整大小。 ( 2 ) 向c o n t r o l b a r 中添加工具栏t o o l b a r ,也可添加其他的控件如c o m b o b o x , p a g e c o n t r o l ,甚至于可以是菜单m e n u 。 ( 3 ) 修改t o o l b a r 的属性如下:将d o c k s i t e 属性设置为f a l s e ,表示将其设 置为不可为浮动的场所;将d r a g k i n d 属性设置为d k d o c k ,表示将其设置为可以 任意被浮动:将d r a g m o d e 属性设置

温馨提示

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

评论

0/150

提交评论