收稿日期:2008-05-04作者简介:杨立波(1975-),男,工程师,主要从事调度自动化系统应用开发及维护。
全景数据分析系统在SCA DA 系统中的应用Application of Full Scenario Data Analysis System in SCADA System杨立波,杨玉瑞(河北省电力公司,石家庄 050021)摘要:介绍了河北省南部电网SCA DA 系统中全景数据记录分析系统的开发应用情况,详细阐述了全景数据分析系统在全景数据记录、全景数据回放、全景数据展现过程中所采用的压缩算法、存储算法、数据记录、数据反演等技术细节,并分析了该系统的应用效果,对其他SCAD A 系统相似功能的设计和实现有借鉴作用。
关键词:SCAD A 系统;全景数据;事故追忆;P DRAbstract :T his paper intro duce s the deve lopment and applica -tion o f the F ull Scena rio Data A nalysis Sy stem in the SCADA sy stem of H ebei South N etw ork ,and describes many de tails of the de sign and develo pment about full Scenario data r e -co rding ,data reg ene rating and data representation ,such a s the com pr ess algo rithm ,storag e method and file fo rmat .It is ho ped that ca n pro vide useful reference to the o ther SCADA sy stem structur es desig n and implement .Key words :SCA DA sy stem ;full scenario data ;po st disturb -ance review ;PD R 中图分类号:TM 734文献标志码:B文章编号:1001-9898(2008)05-0015-03河北省南部电网(简称“河北南网”)SCADA 系统是2001年7月从加拿大SNC 公司引进的第三代能量控制系统。
系统的事故追忆功能延用了传统的设计思想,完全依赖开关变位和总事故信号的触发,记录可靠性较差,数据断面记录间隔为2~10s ,仅能保存时长为5min 的事故,无法记录和再现较长时间的电网运行状况。
随着电网规模的不断扩大和电网调度运行工作日益精细化,原有的PDR 功能已经不能满足需求,因此在SCADA 系统中自主开发了全景数据分析系统取代了原有事故追忆功能,并取得了良好的效果。
1 系统结构全景数据分析系统是对SCADA 系统原有PDR 功能的改进、提高和创新,系统分为数据记录、数据回放、数据展现3个主要部分。
数据记录模块位于SCADA 系统内,根据SCADA 采集节点发布的数据变化信息生成数据文件,并通过安全装置将数据文件传递到信息管理大区的全景数据文件FTP 服务器上,供数据回放和展现模块使用。
数据回放是利用全景数据文件将电网当时的运行数据加载到内存中,实现快速的数据检索,断面保存,故障辨识等功能;数据展现是系统的人机界面部分,充分利用图表、曲线、列表、厂站单线图等形式将全景数据进行展现、分析和比对。
系统结构示意见图1。
图1 系统结构示意2 系统功能的实现2.1 全景数据记录全景数据记录是系统的核心部分,负责对SCADA 系统中的实时数据进行采集、解码、压缩和记录。
全景数据记录模块充分利用了SCADA 系统的编程环境和接口,实现了双机进程级的热备用和数据的同步;通过对压缩算法和文件读写方式的优化,使该模块进程仅占用1%~2%的CPU 负载,对原有的功能没有任何不利影响;通过配置独立磁盘和循环队列算法的文件存储模式,数据记录系统能够存储28天的全景数据文件,超过存储期限的数据通过安全装置传输到信息管理大区的文件备份系统长期保存。
·15·2.1.1 数据采集全景数据采集模块采用分布式设计,利用SCADA系统的数据库复制通信服务(RDCS)编程接口和分布式应用环境(DA E)开发,采集进程分别运行在SCADA系统的2个应用节点上,通过网络对象管理服务(NOM S)实现了主备进程的热备用。
采集进程监听SCADA采集节点发布的数据变化消息,获取数据变化事件,根据相应规约对数据报文进行解码,获取发生变化的数据值,然后进行后续压缩和记录处理。
2.1.2 数据实时压缩及算法由于电网实时数据变化频繁,如果全部记录将会占用大量硬盘空间,必须对采集到的实时数据进行压缩。
SCADA系统的实时性要求较高,压缩算法应尽量简洁高效,避免占用过多的CPU和内存资源。
根据电网数据的特点,采用线性变化阀值压缩算法。
该算法是以数据变化量的累积值作为是否记录数据的指标量,对于变化量未超过阀值的数据,仅修改累积变化量;当变化量超过压缩阀值时,才对数据进行处理;处理完后将变化量累积值清零,等待下一次数据变化。
压缩阀值可手工指定(如指定为0.5%),也可采用自适应算法由系统根据数据点的极限范围和压缩比率自动生成。
算法描述见图2。
图2 线性变化阀值压缩算法2.1.3 数据记录及文件格式数据记录是将需要处理的数据按照一定格式保存到文件中,用于数据回放和分析。
数据记录格式直接决定了数据记录的速度,并影响到数据回放和分析时的查询效率和方便程度。
而且如果没有良好的格式,将可能造成海量数据无法快速的查询检索。
根据记录内容将记录文件分为点信息索引文件和数据文件两类。
点信息索引文件记录了点标识、点名称、点含义、点类型等信息。
数据文件记录了所有变化数据的点标识、时间、数值信息。
为了控制故障影响范围,保证数据的一致性和安全性,系统每小时生成一个数据文件和对应的点信息索引文件。
点信息索引文件保存了点的描述性信息和整点断面的数据,并记录了最后写入的数据块在数据文件中的偏移位置和数据块的时间范围。
数据文件记录了遥测和遥信等测点值,内容仅包括点标识、时间和数据3项。
考虑到实际应用中通常利用点标识和时间为关键字进行查询,数据文件采用按点分时分区的文件格式,即系统为每个点建立写缓冲区,变化数据和相应的时间首先写入缓冲区中,当缓冲区写满后以整块方式将缓冲区中的数据一次写入文件,并在块尾部记录上次写入的文件偏移位置和数据块时间范围,然后清空缓冲区继续记录后续的变化数据。
写缓冲区的大小决定了文件写入的次数和每个数据块的数据量,一般定为512B,并可以根据实际应用优化调整。
文件格式分区示意见图3。
图3 数据记录文件格式分区示意2.2 全景数据回放2.2.1 数据回放数据回放是将数据文件中保存的数据恢复为内存数据序列。
回放客户端软件首先按照指定的日期和时间从全景数据文件FTP服务器上下载相应的文件,并按照数据记录格式读入到本机的内存中。
为节约内存资源,系统只将点索引信息读入内存,然后按用户需求,再将相应点的数据读入内存。
系统采用H ASH算法为每个点按照点名和点号建立字典,并结合B+树和虚拟十字链表技术实现了点名和时间双重索引功能,能够实现按照时间、点名、点号的快速检索;数据读取快速,检索高效,大大增强了系统对海量数据的分析检索能力和实用性。
2.2.2 数据断面生成为了满足EM S和DTS等应用的需要,系统提供了任意时间的断面生成功能。
能够根据用户指定的时间将SCADA数据按照规定格式写成断面文件,作为EM S事故分析和计算的依据,或作为DTS 的启动界面。
2.2.3 对历史数据库的修补由于全景数据文件记录了SCADA全部的数·16·据,所以当SCADA系统的历史数据库发生故障,导致历史数据无法记录时,可以利用系统提供的历史数据库修补功能对SCADA历史数据进行修正,使电网数据的安全完整得到了进一步保障。
2.2.4 电网故障自动辨识根据全景数据文件中的开关变位和总事故信号相关数据,系统可以自动辨识电网的故障,并以故障为索引,查询该事故相关设备运行情况、开关开断的先后顺序。
2.3 全景数据展现数据展现是系统一个重要功能,展现的友好程度直接影响到软件功能的易用性、可用性和实用性。
为了实现良好的展现效果,全景分析系统对全景数据提供了曲线、表格和图形3种展现方式。
2.3.1 模拟量曲线对于全景数据中的模拟量,系统提供了曲线的展示方式,可清晰的展现数据的变化趋势和变化范围。
通过在统一视图中显示多条相关曲线可以方便的显示故障和非故障情况下相关量之间的关系。
2.3.2 数字点SOE列表对于全景数据中的开关量,系统提供了SOE列表浏览方式。
系统能够自动选取在指定时间段内开关量发生变化的厂站。
列表按照时间进行排序,时间精度准确到毫秒。
2.3.3 断面图形和数据反演为了实现基于单线图的数据展现,系统采用了SCADA系统相同的图形文件和图形绘制引擎,能够将SCADA系统中的厂站图、潮流图、断面负荷棒图、统计图等各种画面直接在系统中使用,不需二次绘制,极大的减轻了工作量,提高了全景分析系统的实用性。
系统通过http协议从SCADA图形文件服务器上获取图形文件,并根据用户指定的时间将全景数据文件中的数据显示在厂站单线图上。
系统提供了间隔为1s的自动连续数据反演和人工数据反演。
通过基于厂站图的数据反演用户能够准确的了解历史任意时刻电网的运行情况,再现故障和分析事故的产生、发展和恢复的全过程。
3 系统功能的应用全景数据分析系统采用分布式数据采集框架、实时压缩算法和基于文件的快速检索技术,利用C ++语言、ST L类库等编程工具和类库,实现了对SCADA系统中全部实时数据的连续采集、记录、回放、反演、展现和分析,不仅能够为EMS、DTS等系统和电网运行分析人员提供任意历史时刻的电网运行断面数据,而且能提供长达数天甚至数月的电网运行数据和故障的记录,并以表格、曲线、单线图等多种方式实现数据的再现、反演和分析。
3.1 实现全景事故追忆与数据反演事故追忆与数据反演是全景数据分析系统的主要功能。
由于采用了连续记录全部实时数据的方式,在系统运行期间,记录了多次电网事故和故障。
各专业人员通过查询这些数据,迅速了解了电网事故发生前后的电网运行情况,掌握了故障设备的运行工况,为故障分析和原因查找提供了有力的支持手段。
利用图形化的数据反演功能,各专业人员对电网故障发生的整个过程进行回放和反演,对事故发生发展的整个过程有了充分了解,方便技术人员对事故或故障处理的过程进行评估分析。