继电保护装置保护元件动态调用实现方法
2015-03-15饶丹
饶 丹
(国电南瑞科技股份有限公司,南京 211106)
继电保护装置保护元件动态调用实现方法
饶 丹
(国电南瑞科技股份有限公司,南京 211106)
阐述了一种继电保护装置保护功能组态的实现方法和一种保护元件实时调度的策略。通过上位机组态软件和装置平台软件的配合,实现了保护控制装置功能定制的需求。组态软件通过PLC页面组态定制保护控制功能逻辑,动态调度技术实现了装置预置元件根据工程需求动态的初始化,最终实现一套硬件装置组态多种子型号的功能。最后以备自投为例,描述了灵活组态的实现方法。
动态调用;组态;继电保护;任务调度
继电保护装置保护元件组态的需求在微机保护开始就作为必备功能被提出,由于以前硬件资源和软件架构的限制,厂家都采用保护控制字和压板方式来控制某些保护功能是否投入使用。这种方式控制力度大,控制方式不够灵活,并且保护元件虽然通过控制字退出了保护,但是保护元件仍然在装置上电时在内存中创建并初始化,占用了内存空间甚至中断执行时间,带来了一定的安全隐患,但实现方法简单,便于操作和实现。
这种通过简单压板和控制字方式只适用于固定软硬件型号装置内保护元件的功能投退,随着继电保护的发展,智能变电站的广泛实施,智能变电站设备的硬件体系和软件体系的不断提升,各种组态集成的配置工具也随之出现。国内外的一些厂家也开发一些功能组态软件,大部分组态软件主要用来组态输入输出、参数定值。对元件的动态定值和动态调用并没有详细的描述。
1 元件动态调度组态方式
实现保护装置的元件动态调度有编译型和解释性2种方式。编译型是指元件的逻辑组态在可视化组态工具中绘制,组态工具根据目标运行板件的CPU类型,调用编译器对图形进行编译。生成可执行文件,下载到目标板运行。解释性是指组态软件根据组态的逻辑图,生成解释型的文件,由目标板解析后动态的实例化元件运行。
1.1 编译型动态调度系统设计
编译型动态调度是一种基于脚本语言的继电保护装置图形开发方法。通过自定义的脚本语言,描述了保护测控元件的通用功能模块。功能块是一系列有具体含义的图元。图元中用脚本语言描述其基本功能。例如差动模块、过流模块、滤波算法等基本模块。通过模块的逻辑组态,生成元件的调用C程序,最后进行编译,生成装置的运行可执行文件。编译型组态流程如图1所示。
图1 编译型组态流程
每一个功能块具有多个代码段,每个段都可以进行脚本编写。脚本语言包括了变量定义,控制语句等。组态工具对脚本语言进行词法和语法分析后,生成C语句,最后根据工程的页面组织结构关系,分别生成C文件,H文件。
1.2 解释型动态调度系统设计
保护测控装置中运行的元件是固化的,包括元件实现的功能和元件的调用顺序,要做到灵活的组态必须满足2点:能够灵活配置功能模块实例化后的调度链表;能够灵活的定制功能逻辑,定制逻辑是指用户在图形界面组态一套逻辑处理程序,该程序包括了输入采样,与或非、触发器、延时模块等一系列简单逻辑的叠加,组成一套新的逻辑程序,并将这套程序挂载在任务链上执行。
装置解析组态后的调度关系文件,根据任务链中元件的配置情况,动态实例化DSP中的元件,并添加到系统的调度链中,达到元件动态调用的目的。其流程如图2所示。
图2 解释型组态流程
1.3 两种组态方式的比较
两种组态方式的比较如表1所示。
表1 两种组态方式的比较
从图1可以明显看到两种组态方式的优缺点。编译型的组态方式在功能块绘制周期上耗时较长,由于功能块中需要编写其逻辑脚本语句,而在编辑程序时开发效率较高,图形化的开发方法简单直观,调试方便,与硬件平台无关。因此,针对柔性输电和备自投控制类为主的装置研发采取该开发方式,效率明显提高,工程维护也很简单。
针对保护装置的开发,由于其保护逻辑复杂,很多算法需要手工优化,自动生成的代码往往在代码执行效率上有所不足,所以对于保护装置的研发, 基本上采用解释型组态的方式。 每个元件的代码预先编辑好,可在IDE中开发,也可在编译型组态工具中开发。编辑好的元件,在功能块工具中描述其输入输出和参数。在组态工具中,组态其输入输出和参数的配置信息,并组态元件是否激活以及调度链表结构。生成配置文件以及调度文件下载到装置中运行。这种组态方式满足了保护装置工程维护的灵活性和安全性,也满足了海外用户的组态逻辑需求。
2 编译型组态的实现方法
2.1 任务调度策略
装置中的任务等级设定为4级,各元件依据其实时性要求挂在对应的任务等级中。
每一个任务等级的中断时间是一个可配置的参数,挂载在某一个任务等级的链表按照从左往右的顺序有序的调用。任务链表中一个procblock可以嵌套元件也可以是普通元件。嵌套元件是指该元件可包含若干个子元件,子元件也可以是嵌套元件。嵌套层次无限制。嵌套元件中包括的子元件的调用顺序需要在任务链表中定义。子元件可以进行简单的顺序配置,同时也可以进行分时调度配置。
分时调度是在某一个周期的任务中断中,由于各执行模块的执行时间要求的不同,多个周期到达时才触发执行。尤其是在某一个中断周期内,不能同时执行完成所有的执行单元,需要将这些执行单元进行在周期内进行拆分。分时功能块也是一个可配置的功能块,主level级别、每个procblock的调度周期,以及在周期内的序号都可单独配置。
2.2 PLC元件组态
PLC元件是由一系列通用的逻辑门与、或、非、异或、延时、脉冲等基础模块通过逻辑组态搭建定制的逻辑功能,满足工程现场的实际需求。PlC元件组态成一套完成的逻辑功能后,该逻辑功能需要下载到装置中按逻辑有序执行,这是组态功能的另一个关键技术。
PlC定制的逻辑能够作为一个整体元件挂载在某个任务链上,但装置无法实例化该PLC元件,因为它并不以一个元件类的实体存在装置的元件库中。在生成的调度元件中,组态软件根据PlC页面中基础元件进行有序的拆解,按照拓扑顺序插入到PlC对应的调度链表中。
2.3 装置动态调度
(1)DSP程序初始化时,关闭任务中断,装载组态二进制文件。
(2)解析后按照任务调度链表的先后顺序将应用模块初始化并使应用模块构造函数向系统程序注册,系统程序将所有应用模块按注册顺序将各任务函数按任务等级进行管理;运行时,系统程序将各应用模块按任务等级依次进行调用,并确保任务优先级及执行的先后顺序。
(3)注册完成后,开启任务中断。应用模块按照上位机组态的保护功能和调用顺序运行,从而实现继电保护装置保护元件动态调用。
2.4 组态接口文件
组态软件组态完成后针对应用模块的调度生成2个文件,一个是可读的xml文件,一个是提供给dsp执行的二进制文件。二进制文件是一段内存数据流。dsp可直接复制这段数据至dsp的调度数据结构体中,节省上电解析文件的时间,提高上电效率。
xml文件描述了每个元件的初始化函数、构造函数的函数名称,以及每个元件实例化后挂载在任务列表的顺序,circle表示中断周期,circleNo表示中断周期中响应的序号。
二进制文件描述的与xml文件的内容类似,是这些数据信息结构体的序号化导出,dsp解析程序不需要解析,可直接导入内存直接使用。
2.5 装置动态调度流程
2.5.1 预编译各功能块的函数地址
DSP程序启动后,根据由上位机下载的调度文件获取调度的元件名称,根据元件的名称,需要关联元件对应的构造函数、初始化函数的函数地址,并调用函数。这些元件各函数的地址信息由编译器分配,组态工具无法获取这些地址信息,而DSP可通过一个索引文件参与DSP元件库的编译,获取这些元件的各函数地址信息。
元件的构造函数和初始化函数通过编写函数索引表的C文件,参数元件库的编译过程,自动在索引表中获取到函数的地址。
编译后,编译器自动将函数地址写入到数组中,DSP启动后根据函数名称在数组中获取地址并调用,最终达到动态调度的目的。
2.5.2 备自投实现
由于备自投具有多种运行方式,主接线方式和动作方式都多样化,备自投设备是一种基于时序控制的逻辑,不同的备自投方式过程条件差异很大,备自投的程序随着不同的工程现场程序差异也较大。
结合上述的组态方式,通过PLC和元件的动态调用,实现了备自投设备的灵活组态,不同的工程现场,只需要工程人员修改相对于的PLC页面,下载脚本文件,即可满足工程现场的需求,节省了现场开发的成本,提高了维护和开发效率和质量。组建进线自投方式逻辑,可以实现备自投基本的失压动作逻辑。通过组态软件的灵活组态,完成了备自投的全部逻辑绘制,实现了备自投逻辑的灵活组态功能。
3 结语
本文重点介绍了一种继电保护元件的动态调用灵活组态的方法,介绍了2种实现元件动态调用的实现方法,并比较了两种方法的优缺点。以解释性为重点,阐述了PLC元件的逻辑搭建,以及元件的动态调度实现方法。最后以备自投设备为例,举例说明了该组态方式的灵活运用情况。
该组态工具在国电南瑞科技股份有限公司已经广泛应用,备自投设备主要运用在国内工程中,海外项目的保护测控装置主要通过该工具进行元件的动态扩展和调用。在后续工作中,需要将编译型和解释性型整合在一体,根据用户的属性设置权限,能够方便灵活的运用在继电保护装置的开发和维护工作中。
[1] 陈宏君. 新一代保护测控装置配套工具软件设计与应用[J]. 电力系统自动化, 2013, 37(20): 92-96.
CHEN Hong-jun.Design and Application of Supporting Tool Software for New Generation Protection and Measuring-control Devices[J].Automation of Electric Power Systems,2013,37(20):92-96.
[2]笃 峻,叶 翔,王长瑞,等.智能变电站设计配置一体化功能规范研究及工具开发[J].电力系统自动化,2014,38(20):85-89.
DU Jun, YE Xiang, WANG Chang-rui, ZHOU Yi-fan, et al. Functional Specification Study on Integration of Configuration and Design in Smart Substation and Corresponding Tool Development[J]. .Automation of Electric Power Systems,2014,38(20):85-89.
(本文编辑:赵艳粉)
Dynamic Invocation Realization for Relay Protection Device Components
RAO Dan
(State Grid NARI Technology Development Co.,Ltd., Nanjing 211106, China)
This paper expounds the realization methods for relay protection device function configuration and the real-time scheduling strategy for protective components. The cooperation between upper unit configuration software and equipment platform software helps realize the demand for customized protection control device functions. Configuration software customizes protection control function logic through the PLC configuration page; dynamic scheduling technology helps achieve the initialization of device preset components according to the engineering dynamic requirements. Then a hardware device configured with various sub-models. Finally the spare automatic switch exemplified the realization of flexible configuration.
dynamic invocation; configuration; relay protection; task scheduling
10.11973/dlyny201506003
饶 丹(1978),女,硕士,高级工程师,主要研究方向为电力系统自动化。
TM774
B
2095-1256(2015)06-0758-04
2015-08-27