周步祥 阮树骅 赵鸿图 四川大学电力工程系 610065 成都
0 引言
电网监控系统用于监控电网的运行状态,保证电网运行的经济性和可靠性。通常实时监控过程由两部分组成:首先是组织反映电网运行状态的实时数据,并存放于实时数据库中;其次是电网监控系统的应用通过访问实时数据库,完成相应的监控功能。这种访问数据库的数据应用模式,结构简单,容易实现,但数据库是被动的。在实时监控过程中,许多应用功能包含了数据主动服务的要求,即一些应用功能是由数据的变化而引起的,如越限告警、变位告警等。这些数据主动服务,采用以上的数据应用模式,虽然可以实现,但不仅不利于提高系统的实时性,而且也降低了系统的实时效率。随着计算机技术及主动数据库技术的发展[1],在电网监控系统中建立主动实时数据库系统已成为可能。
1 主动实时数据库模型
主动实时数据库系统要完成的功能除了常规的实时数据库的功能以外,还必须有主动服务的功能,即必须根据实时数据库中内容的变化,主动完成数据服务的功能。表1列出了电网监控系统的典型功能以及它们的主动服务需求。
表1 典型功能及主动服务需求 Table 1 The typical functions and requirement for active services
系统功能
主动服务需求
安全监测
数据更新、状态告警
状态估计、安全分析、经济调度
定时服务、数据更新 安全告警、调度策略
电压质量分析、电量统计
定时服务、告警
历史数据、负荷预测、系统计划
定时服务、状态变化
根据表1列出的功能和需求,电网监控系统的典型功能在主动服务需求方面有两大类: 一类是定时服务,另一类是系统状态变化的数据服务。图1给出了电网监控系统中的主动实时数据库模型。

图1 主动实时数据库模型 Fig.1 The of active real-time databases
从图1中可以看出,主动实时数据库是在数据库的基础上增加了时间事件库、操作事件库,并通过对这些事件库的监控,触发数据库系统的主动服务。时间事件库和操作事件库由一系列的事件、条件、动作规则组成,基本描述为: 规则名(参数1,参数2……) 事件表达式 IF条件表达式 THEN动作序列 规则结束 规则名用来标识该规则,其后的参数可选,在检查该规则时,这些参数将取其实时值。事件表达式描述的是该规则要处理的事件。条件表达式是一种合法的逻辑公式,如果条件表达式的值是真,则执行动作序列。动作序列是当相应的事件发生并且条件满足时应做的一系列预定的动作,也可以进一步引发另一个事件。
2 主动事件
2.1 事件定义 根据电网监控系统的主动实时数据库的模型,电网监控的基本事件可以定义为: a. t=t0的事件是瞬时事件。t0是一个绝对时间。 某一时刻输出报表是这一事件的典型应用。 b. t≥t0的事件是区间事件。t0为一个绝对时间 ,它在实时运行中可以根据系统的运行状态实时修改。数据更新是该事件一种典型应用。 c.当系统中的模拟量数据A发生改变时,事件为change( A)。可应用于模拟量的越限告警。 d.当系统中的开关状态(数字量数据D)发生变化时,事件为 change(D)。可应用于遥信变位处理。 这里只定义与电网监控功能实现相关的基本事件,对于主动实时数据管理要求的其它基本事 件,这里未作定义,可参考文献[2]。 2.2 运算规则 为了能够表示更复杂的事件,可以应用以下的事件运算规则。 与运算AND:E1 AND E2表示E1,E2两个事件同时发生的事件。 或运算OR:E1 OR E2表示E1,E2两个事件中任一个事件发生的事件。 非运算NOT:NOT E表示不发生E事件的事件。 相继发生运算FOLLOW:E1 FOLLOW E2表示E1事件结束后立即发生E2事件 的事件。 之前发生运算BEFORE:BEFORE E表示E事件发生之前的事件。 之后发生运算AFTER:AFTER E表示E事件发生之后的事件。 利用这些事件运算规则可以构成各种复杂的事件,保证主动实时数据库中的主动事件库能够满足电网监控系统所需的主动服务。
3 典型应用
根据前面的分析定义,主动实时数据库的主动数据服务可以通过在事件库中定义主动事件规则,以及主动事件的触发来实现。具体设计一项规则的过程如图2所示。下面通过一些 典型应用的实现来说明电网监控系统中主动实时数据库的实现方法。

图2 规则的设计过程 Fig.2 The process of designing rules
3.1 越限告警 越限告警功能是电网监控系统中典型的需要数据库主动服务的功能。这种数据库的主动服务可以通过基本事件change(A)来触发。因此,可以在事件库中定义规则: A ALARM(A,Amin ,Amax) change(A) IF AAmax THEN alarm process A ALARM END 其中 参数A为要检验的模拟量,参数Amin和Amax分别为A的下限值和上限值。 当出现模拟量A发生变化的事件时,数据库将判断A是否越限,如果越限,则主动执 行告警过程,为相应的应用提供主动服务。 3.2 安全分析 安全分析功能用来根据电力系统目前运行的状态,根据可能的变化,判断系统运行趋势是否安全。在常规的电网监控系统中,安全分析的功能实现过程是:如果系统正常运行,则定时进行安全分析计算;如果系统结构发生变化(运行方式改变),则必须立即进行安全分析 计算。在主动实时数据库中,要求数据库主动提供安全分析的服务,也必须能实现这种功能。因此,同样可以通过对事件库中规则的设计来实现,只是此时的事件变成了复杂事件。规则为: CONTINGENCY(D,Δt) t≥t0 OR change(D) Contingency Analysis Output Results t0=t0+Δt CONTINGENCY END 在CONTINGENCY规则中,事件是由两个基本事件运算而构成的复杂事件,是一个时间事件和状态量事件的或事件;参数D表示相应的状态量,Δt表示两次定时安全分析的时 间间隔;规则中没有条件表达式的判别,表示只要该事件发生就必须进行分析;动作代码 包括两个内容:一是进行安全分析的计算,另一是修正下次定时触发的时间t0。 也可以将安全分析的动作代码设在一个分析事件中,在CONTINGENCY事件中再激活该分析事件,这样可以更进一步地增加主动数据库功能实现的灵活性和效率。即可以将CONTINGENCY规则改为以下两个规则: CONTINGENCY(D,Δt) t≥t0 OR change(D) Activate the Contingency Analysis Event,CAE t0=t0+Δt CONTINGENCY END 和 CONTINGENCY ANALYSIS(A,D) CAE Analysis Codes CONTINGENCY ANALYSIS END 必须说明的是,安全分析功能是电网监控系统中非常重要而又复杂的功能,这里只是作为主动数据库实现的示例,并没有讨论安全分析本身的技术。 根据以上的典型应用,主动实时数据库的维护和扩展主要是对事件库的维护和扩展,因此主动实时数据库具有良好的可维护性和可扩展性。显然,基于主动实时数据库的电网监控系统,只要定义出应用功能的事件表达式,并在主动实时数据库的事件库中定义相应的规则,该应用功能就可以由数据库的主动服务来完成,因此这种电网监控系统同样具有良好的可扩展性。
4 结语
主动实时数据库技术将实时性要求高的电网监控功能变成由数据库主动来实现,这种数据应用模式更符合实时监控的过程。通过定义主动事件规则实现的主动数据库,保证了主动实时数据库和基于主动实时数据库的电网监控系统具有良好的可扩展性。通过进一步研究事件的运算规则和构成复杂事件的方法,可以实现更加复杂的功能。
参 考 文 献
[1]李昭原.数据库技术新进展.北京:清华大学出版社,1997.183~205 [2]何新贵.主动程序语言及其实现.计算机学报,1996,19(3):221~229
|