故障录波数据分析系统的设计与实现_第1页
故障录波数据分析系统的设计与实现_第2页
故障录波数据分析系统的设计与实现_第3页
故障录波数据分析系统的设计与实现_第4页
故障录波数据分析系统的设计与实现_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

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

文档简介

故障录波数据分析系统的设计与实现沈会斌(北京中恒博瑞数字电力科技有限公司,北京)摘要:本文阐述了故障录波数据分析系统的设计和实现方法。通过分析电力系统录波数据特征,以面向对象的方法对录波数据进行抽象归类,提出了开发录波数据分析系统的具体内核设计框架,并借助BorlandC++Builder予以实现,实现后的软件系统已成功应用在DR6000系统中。关键词:录波数据分析;面向对象设计;C++标准模板库STL;C++类设计;继承与多态;软件分层。引言在现代电力系统中,故障录波器正得到越来越广泛的应用。故障录波器监视电力系统运行状况,录波数据和波形图为现场技术工作人员正确地分析事故原因、研究反事故对策、处理事故、评价继电保护功能和装置运行状况提供了正确可靠的依据。同时,根据录波数据还可分析系统的故障参数、谐波含量、各种电气量的变化规律、故障点定位及系统元件参数测量。故障录波系统对保证电力系统安全可靠运行起着十分显著的作用,它已成为电力系统自动化控制与管理的重要组成部分。我公司自主研发的录波器,经历过几代的发展,已经从最初的单片机发展成为高性能的DSP处理平台,在这个过程中,故障录波数据分析一直是非常重要的环节,因此,有必要设计出性能稳定,兼容性强且界面人性化的一种比较通用的故障录波数据分析系统。本文研究的主题是故障录波数据分析系统的具体实现方法:从抽象对象的属性而构造出合适的数据层次和相关的支持类入手,采用面向对象的程序设计方法,充分应用BorlandC++Builder提供的所见即所得的开发方式,设计一个运行稳定、重用维护灵活和易于群组开发的通用分析软件系统。系统设计2.1功能需求故障录波数据分析系统用来对故障录波设备记录的数据进行离线分析。软件采用的记录数据文件为标准Comtrade格式,因此对所有的标准数据文件均可利用该分析系统进行综合分析。其基本功能需求简述如下:具备强大的数据分析解析功能,兼容符合Comtrade文件格式的所有录波器厂家的数据文件。需要有方便灵活的录波处理能力。能显示标准Comtrade文件的模拟波形、开关量波形、谐波波形、频率波形。可以有针对性有选择的显示相关通道的波形。

为了方便用户分析波形,需要同轴重叠显示和分轴并列显示两种方式,并且可以任意在横向和纵向缩放波形,。为了解决数值差别较大的问题,各通道波形可以纵向独立缩放。可与波形同步列表显示模拟量的当前有效值、采样值、相位值以及最大值和最小值。可显示谐波波形的当前值、谐波含量、幅值和幅角,并可选择显示谐波次数和显示颜色。

具备完善的分析功能,如矢量计算、单端测距、差流计算、功率计算和序分量计算等,可以帮助用户迅速确定故障,以及分析电网运行情况。具备打印功能,以方便打印波形图和故障报表。具备故障数据分类查询功能,可以让用户方便快捷的从大量数据文件中找到自己需要的数据。2.2系统结构本系统包括波形分析、波形操作、数据分析和打印功能4个主要模块。每个模块都包括数个子模块,用于实现单个的功能点。系统的模块结构如图示:2.3设计原则标准C++模板库STL的应用,可以高效的维护故障录波数据序列,自动分配和释放数据所占据的内存空间。1BorlandC++Builder编译器所见即所得的开发方式,可以比较方便的设计出故障录波数据分析系统的界面。2充分应用C++面向对象的编程机制:类封装,类继承和C++的多态性。3保证了软件系统的健壮与稳定性,同时,由于使用了比较规范的类封装,在最初设计的CWaveDraw基类也被成功的应用到本公司的稳态数据分析软件及实时数据分析模块,具备了很好的代码移植的特性。保证了本公司故障录波器的各相关软件界面的和谐统一。极大的缩短了软件的开发时间。应用软件分层技术,不仅可以明确和突出各组成部分的功能和拓扑关系,而且对于缩短软件开发周期,增强软件维护的灵活性,限制代码错误的发作范围,加快系统调试进程,也是十分必要的。42.4数据抽象在软件开发中,针对具体数据的抽象化是其中非常重要的环节。在本文所研究的录波数据分析系统中,根据电力系统故障录波数据特征,比较关键的数据抽象有以下几个方面:模拟量通道的波形数据抽象(WAVE):主要用于描述绘制模拟量的波形时的相关属性。在此数据抽象中,根据C++类的设计理念,同时赋予了外界对它进行控制的一些方法和属性,以便方便的对此数据抽象进行定义或者操作。由于使用了STL,所以可以自由的往里面添加采样数据值,数据序列的内存维护由STL自身来完成,减少了内存分配与释放的琐碎处理。主要的数据属性定义如下所示:vector<float>Data用于保存某通道的所有采样点数据intLen用于保存某通道采样点数据的个数TColorColor模拟量通道绘制时的颜色floatScale绘制此通道波形时纵向比例系数intiWaveWidth此波形通道占据的绘制宽度intiWavePosition;此波形通道在界面上占据的位置floatMax通道最大值floatMin通道最小值开关量通道的波形数据抽象(KGWAVE):主要用于描述绘制开关量的波形时的相关属性。由于开关量自身的状态只有开与合两种,为了节省内存空间,用一位来表示一组开关量的状态。定义WORD来存储开关量状态,16个通道为一组。:vector<WORD>Data用于保存16个开关量通道的状态,取值时通过通道的数据偏移位置来指定。intLen用于保存开关量道采样点数据的个数TColorColor[16]本组开关量通道绘制时的颜色模拟量通道对应的属性定义(SIMUCHANEL),它描述了模拟量通道的特征,成员包括通道标识符,通道名称,通道相位,通道单位,通道比例系数,通道最大值,通道最小值。大部分与标准Comtrade文件中的定义保持一致。开关量通道对应的属性定义(KGCHANEL),它描述了开关量通道的特征,成员包括通道标识符,通道名称,通道的常态等。采样段属性定义(RATE),它描述了Comtrade文件当中各个采样段的点数,采样率。2.5关键类定义本系统主要类图定义及继承关系说明:CComtrade类:此类主要用于解析Comtrade文件,即读取Dat数据文件,模拟量及开关量数据分别存储在vector<WAVE>vSimuWaves和vector<KGWAVE>vKgWaves当中;读取Cfg配置文件,模拟量及开关量通道属性分别存储在vector<SIMUCHANEL>vSimuChanel和vector<KGCHANEL>vKgChanel中;其采样段属性存储在vector<RATE>vRates当中。CWaveDraw类:此类主要用于绘制开关量或者模拟量的波形曲线,里面包含了绘制波形曲线所需要的相关控件指针,如TImage(绘制波形),滚动条(上下左右移动波形),TListView(显示当前鼠标单击处的相关值)等,在主窗体程序中使用此类或者其子类时需要传递这些控件的指针。封装了波形曲线的横向和纵向比例放大,鼠标单击事件等所有波形曲线操作所涉及到的功能。同时,提供了许多的虚拟函数用于其子类的功能实现。由此类绘制的波形如下图所示:CSimuParse类:此类继承了CWaveDraw类所有的功能,同时自身主要通过全周傅氏算法5来分析计算各个模拟量通道的有效值,相角,重载了关于数据显示的相关函数。CSwitchParse类:此类继承了CWaveDraw类所有的功能,同时自身主要用于分析计算各个开关量通道的当前位置并绘制开关量波形曲线。CXieBoParse类:此类继承了CWaveDraw类所有的功能,同时自身主要用于计算某个模拟量通道的各次谐波值,最高可以计算的谐波次数可以配置,只受故障录波装置最高采样率的限制。系统特点按上所述思想创建的故障录波数据分析系统,具有以下显著优势和特点:系统结构层次分明,有利于群组开发。将数据层同表示层分开,各层通过内存中的STL结构结构交互信息,模块区分更明显,各部分可专注于自身功能的实现。数据层可专注于数据的读取、管理、存储、计算等,而表示层可专注于数据的波形显示、数据信息的显示、波形的移动缩放、波形表示特征的设置、多功能打印等等。通用性强,能充分发挥面向对象模块重用机制,只需做简单的数据接口,就能处理各种类型的录波数据,而且数据通道的处理不受限制,只是根据配置文件中通道的数量来动态的生成所有的数据组合。样式套用十分方便。对于经常处理的同类型的录波数据,反复设置其显示属性,是费时又费力的事情。而根据CWaveDraw基类来生成各相应子类,由子类来完成数据的分析计算,可以简化开发过程,保证界面统一。在本公司的实时数据分析模块与稳态录波数据分析程序中也成功使用了CWaveDraw这一波形绘制的基类,充分验证了这一思想。系统运行的主界面如下:应用与结论本文提出的设计思想已经成功应用于本公司的Dr750及DR6000系列故障录波器离线数据分析系统,成为我公司故障录波器后台软件的重要组成部分之一。开发和实践表明,充分利用标准C++模板库STL和面向对象的开发思想,再结合BorlandC++Builder所见即所得的开发平台,可以极大的减化开发过程,提高程序稳定性,使缩短开发周期和快速响应用户要求成为可能。参考文献:1NicolaiM.JosuttisThe

温馨提示

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

评论

0/150

提交评论