郑慧娟,芮 钧,蔡 杰,阎应飞,花胜强
(南瑞集团(国网电力科学研究院)有限公司,江苏 南京 211106)
构建以新能源为主体的新型电力系统是实现碳达峰、碳中和战略目标,保障我国能源安全的重要技术途径。新型电力系统抗扰动能力降低,电网承受较大潮流波动压力,频率控制难度加大。为了平抑风电、光伏等新能源出力的随机性、波动性,新型电力系统要求包括常规水电和抽水蓄能电站在内的调峰电源更加灵活高效。由于电力系统负荷实时平衡的特性,长期以来自动发电控制(Automatic Generation Control,AGC)始终在电力系统安全高效运行中发挥关键技术作用[1]。作为电网AGC系统的重要组成部分,水电厂AGC负责根据电网AGC下达的实时负荷指令,实时确定水电侧机组经济运行台数、运行机组的组合和机组间的负荷分配,以满足用电需求,并尽量避免由于电力系统负荷短时波动而导致机组的频繁启停。
在新型电力系统中,大量常规水电厂将从电量生产和电力调峰并重,逐步转变为电力调峰为主、电量生产为辅的运行模式,以适应电网接纳大规模新能源的现实需求。虽然,大中型水电厂被普遍认为具备良好的调峰能力,但在上述运行模式转变的过程中,仍然面临源网协调能力不足的问题。而水电厂AGC的改进将是解决上述问题的重要途径。近年来,国内许多学者也围绕水电厂AGC开展了大量研究,但普遍集中在负荷分配策略改进方面[2-6],或提出相应的群智能算法优化[7]。但上述研究大多停留在理论层面,应用于工程实践中仍然面临不少问题,使得水电侧AGC在系统整体功能、性能上难以满足新型电力系统的源网协调能力要求。
本文在国内现有水电侧自动发电控制研究的基础上,以提高机组可利用率与电网调控响应能力为目标,开展新型电力系统对水电侧AGC能力的需求分析,提出改进的水电侧AGC系统架构,研究水电厂AGC改进的关键技术,并结合华电集团古田溪梯级水电站试点应用以及参与电网水风光互补调控模拟实验的情况进行分析和展望,以期进一步提高水电厂源网协调能力,提升水电在新型电力系统中的重要支撑作用。
随着新能源由辅助电源逐渐转变为主力电源,其大规模参与电网AGC时,在一次调频能力、高/低电压穿越能力不足的情况下,会造成晚高峰电力供应紧张以及低谷调峰困难,增加了电网调度不确定性及复杂度。电网对水电侧AGC提出运行范围、调节速率和稳态调节精度等方面精细化的性能指标要求。其中,运行范围主要指电厂/机组满负荷的百分比下限容量;调节速率主要包括接收到调度指令后开始动作的延时,以及实际有功功率调节到调度给定值的时长;稳态调节精度主要指调节结束进入稳态工况的有功功率实发值与调度给定值之间的偏差。水电厂AGC运行范围主要取决于水电机组的振动区、气蚀区等机械物理特性,需要通过水轮机叶片加工等手段才能加以改进,存在技术难度大、成本高且效果十分有限的问题,因此实际应用非常少见。稳态调节精度主要取决于水电厂AGC、机组调速系统、励磁系统的调节死区,若调节死区设定较大,则各类辅机设备启停次数相对较少,可以减少辅机设备的磨损,但可能无法满足新型电力系统的调节精度要求;若调节死区设定较小,则可以很好地满足型电力系统的调节精度要求,但会加大各类辅机设备的磨损。这部分仅需要通过现场试验,确定相对合理的调节死区即可。调节速率最为复杂,因为其与远动通信、水电厂AGC运算、机组设定值下发等环节的耗时,以及调速器调节速率等因素均紧密相关。从实际情况来看,目前国内仍有不少水电厂存在因AGC不满足电网响应速率要求而被考核的情况。随着新型电力系统对水电厂AGC性能要求日益提高,响应速率问题将日益突出。因此,需要研究改进水电厂AGC响应速率的策略,提升水电厂侧响应新能源出力快速变化的新情况,以满足新型电力系统发展需要。
此外,目前水电厂及流域水电企业均为独立市场主体,依靠发电及提供电力辅助服务获取经济效益。因此,水电厂AGC需要在满足电网实时有功负荷指令要求,以及运行范围、调节速率和稳态调节精度等性能指标的前提下,以电站自身经济运行效益最大化为目标,根据电站的库容、各机组容量和运行特性(汽蚀区、振动区)的不同,在水电厂自身安全运行的强约束条件下,通过最优化的开机组合及负荷分配,使所投入AGC运行的机组尽可能运行在高效率区,同时避免机组频繁穿越振动区和频繁启停操作,以实现特定有功出力下的最小耗水率。以往研究通常基于改进动态规划算法或群智能优化算法。然而,当前水电厂单机容量越来越大,装机台数越来越多,而AGC的实时性要求非常高,使得改进动态规划算法在大型或巨型水电站群应用时会遭遇维数灾问题,此时意味着水电侧AGC难以在电网规定的时间内正确响应电网负荷指令,将给电网安全运行带来严重的影响。虽然在中小型水电站中并不会遭遇维数灾问题,但这将导致水电厂AGC难以成为可在不同场景下标准化复用的成熟产品,既影响了水电厂AGC产品的迭代升级,也不利于电网AGC技术持续完善。群智能算法虽然可以有效地解决维数灾问题,但其存在参数率定难、陷入局部最优解甚至偶尔得不到解、求解过程难以复现的问题。参数率定难同样意味着难以形成可产业化推广应用的成熟软件,对现场部署调试人员的技能要求极高,将极大制约水电厂AGC的工程应用。陷入局部最优解意味着水电厂AGC未能实现全厂耗水率最小化的目标,而偶发找不到可行解的问题,将直接导致AGC负荷分配失败,从而无法及时响应电网的负荷调节指令,给电网安全稳定运行带来隐患。求解过程难以复现的问题则影响更大,这意味着电网下达相同的有功负荷指令,水电厂AGC的输出将是不确定的,运行人员无法预知水电厂AGC的输出规律,尤其是在现场试验验证、程序缺陷处理中会明显加大技术难度和工作量。上述问题导致目前的理论研究成果均难以被有效应用于实际工程,当前水电厂实际应用的AGC仍然以简单的负荷平均分配原则以及规避振动区的原则进行负荷分配计算,并未在确保安全的前提下实现水能资源的最优化利用。为此,需要在现有理论研究成果的基础上,进一步研究能够有效兼顾工程应用需求的灵活优化分配策略。首先是要确保电厂最大有功范围内始终能够得到可行解,而不至于出现负荷分配失败的问题,具备足够的可靠性和鲁棒性;其次是要能够有效兼容成熟的传统AGC负荷分配策略以及各类先进的理论研究成果,既能够适应小水电现场简单部署的需求,也能够适应大中型水电厂负荷优化分配的需求。最后,要灵活适应电网仿真试验、梯级流域多电站大规模部署等不同应用场景,在对模型、算法进行标准化封装的前提下,允许根据不同应用场景的需求进行简单、高效的二次开发工作,进一步提高水电厂AGC的适用性。
针对上述需求,研究并提出了适用于新型电力系统的水电厂自动发电控制改进方法,对传统水电厂的AGC软件程序进行重构,并将其从SCADA系统中独立出来,研制水电厂AGC专用装置。通过数据流优化设计、现地装置化实现、并行计算体系及场景自适应改进等技术,提高水电厂AGC的实时响应速率和负荷优化分配能力,为新型电力系统提供更好的调峰调频能力支撑。AGC专用装置的软件分为主机程序和客户端程序两部分组成。总体架构设计如图1所示。
图1 总体架构设计Fig.1 Overall design
配置客户端主要包括组态配置、实时监视和仿真调试3个模块。其中,组态配置模块提供系统参数配置、从装置上传配置、配置信息下载等功能;实时监视模块提供实时画面、报警记录、统计查询、数据评估等功能,通过装置数据接口获取实时及历史数据,并展示AGC运行信息;仿真调试模块屏蔽机组负荷分配值等所有控制输出,允许调试人员通过人机交互接口对装置发送全厂有功设定值、机组状态、机组实发值等控制令或状态值,并监视装置的负荷分配结果。调试人员可通过实时画面进入或退出仿真调试状态。
为保证装置运行性能,程序由C实现。启动时,配置监视模块从预先下载的配置文件中加载配置信息,并采用系统共享内存方式与采集数据共同存储在核心数据区域。AGC核心计算程序实时监视共享内存区采集到的调度令、机组状态和运行数据,根据运行闭锁条件执行数据有效性检查,并进行机组的开停机组合与有功负荷优化分配计算。采用Modbus TCP、IEC 61850等通信协议进行数据采集与控制令接收,采集后的数据需进行预处理操作,例如对SCADA数据进行辨识、检查错误量测、对重要指令或数据的错误进行告警提醒,以保证数据的可靠性和正确性。
不同规模水电厂AGC可靠性和经济性要求各异,为此设计中考虑支持3种不同的部署模式:模式1配置主备两台AGC装置,采用热备冗余方式,备用装置保持与主用装置同样的断面数据,并通过接收心跳报文监视主用装置的状态,当主用装置不在线或其核心程序异常时,备用装置自动升级为主用装置。单独配置客户端计算机,对主备两台装置进行实时监视。模式2配置一台AGC装置,单机运行无热备冗余装置,配置一台客户端服务器对单装置进行监视与配置。模式3不配置专用AGC装置,主机程序及客户端均按照在Linux服务器上,该模式下所有配置操作直接读写本地文件,无需使用客户端的下载与上传功能。3种部署方式如图2所示。
图2 3种部署模式Fig.2 Schemes of deployment
影响水电厂AGC响应速率的主要因素包括接电网AGC负荷指令接收耗时、水电厂实时运行工况数据接收耗时、AGC负荷分配耗时,以及调速系统的调节耗时。由于本文重点研究水电厂AGC自身的改进策略,因此将调速系统的调节耗时作为外部固定约束,应满足电网考核中接收调度指令后开始动作的延时时间以及实际有功功率调节到调度给定值的时长要求,并重点从前3个因素方面进行研究。在此3个因素中,两个因素都与数据通信有关,涉及到多台计算机、多个进程之间的双向网络通信,在传统的等比例负荷分配模式下,在数据获取方面的耗时甚至远大于负荷分配的耗时。为此,首先从数据流优化设计方面入手,通过优化水电厂AGC与外部的数据交互机制来提升相应速率。
水电厂AGC数据交互主要可分为三类:第一类是接收网调AGC下发的有功设定值指令,并上送水电厂有功可调上下限、全厂有功实发值等各类相关信息,通常采用IEC 60870-5-104通信协议;第二类是采集水电厂内各机组、母线等设备的实际运行状态数据,包括机组水头、有功等实时运行数据,以及LCU故障、通信中断等异常事件信号;第三类是根据机组负荷分配计算结果,将投入成组控制的各类机组有功分配值,下发给对应的机组调速器。传统水电厂AGC依赖于SCADA系统的数据服务进程进行上述三类数据交互,即由SCADA数据服务进程从网调AGC接收四遥(遥控、遥调、遥测、遥信)通信数据,并将AGC所需全部数据转发给AGC功能模块,AGC负荷分配结果及运行统计信息也由SCADA系统主机或通信服务器负责分别传输给调速器和网调AGC。
从国内大中型水电厂AGC实际运行情况来看,SCADA数据服务与AGC模块的数据双向转发环节,影响了AGC响应速率,可改为由水电厂AGC直接完成上述三类数据交互。在网调AGC数据通信方面,接收有功负荷下行指令时,可减少数据转发的耗时,运行范围统计值计算完后可以直接上送,避免了SCADA系统数据通信程序循环周期的等待耗时。同理,借助智能水电厂“三层两网”的网络架构体系,针对第二类和第三类数据交互,也可由AGC功能模块采用IEC 61850或Modbus TCP等网络通信协议,与支持网络通信功能的各类智能测控装置进行直接双向通信,并通过多链路数据通信方式,实现不同机组运行数据的并行采集与处理,进一步缩短数据交互通信时间,提高调节响应速率。改进前和改进后的水电厂AGC通信环节如图3所示。改进后由AGC直接控制机组出力,也可将出力值发给SCADA控制,同时SCADA送出全厂及机组运行数据反馈给AGC判断是否调节到位。
图3 水电厂AGC数据流优化设计Fig.3 Optimization of data flows for hydro-plant AGC
传统水电厂AGC作为高级应用功能运行在SCADA系统的主服务器上。SCADA系统需兼顾实时数据采集、越限判断、控制指令处理等优先级高的实时任务,甚至还需具备EDC(梯级经济调度控制)、闸门自动控制、智能辅助监盘等高级应用功能,服务器负载也日益加大。
为此,考虑利用水电厂智能现地测控装置提供的边缘计算功能,将部分高级应用功能下沉到现地进行实现。与上位机软件可以根据每个工程很方便的定制化不同,基于装置的应用软件通常会直接在装置生产的过程中直接固化在其中。因此程序是否能够做到标准化是其是否能够下沉到边缘计算的关键所在,而上述各类高级应用中,EDC、闸门自动控制、智能辅助监盘工程应用较少,尚处于起步阶段,需要经常性地升级完善,而AGC和AVC工程应用相对成熟。虽然各个区域电网对水电厂AGC的要求略有不同,但其核心功能均相同。只需要提供一个可灵活配置的组态工具,针对不同区域电网、不同应用场景的个性化需求进行组态,生成相应的配置文件下发到装置中即可,从而可实现AGC程序的标准化。因此,将传统水电厂AGC后台程序移植到装有嵌入式Linux操作系统的现地智能测控装置中,实现AGC数据通信、负荷分配、安全闭锁等核心功能的下沉,从而提高水电厂AGC响应速率。
上述基于边缘计算的现地装置化实现方式,除了能够降低高级应用服务器负载,提高水电厂AGC响应速度以外,还能够有效降低AGC程序的现场部署、运行维护的技术难度,满足现地快速安装部署的需求。在新型电力系统中,今后水电与新能源互补运行控制的应用场景越来越多。由于新能源场站面广点多,会面临新能源侧AGC大规模快速部署的需求。上述装置化实现方式,为今后拓展应用于新能源电站奠定了良好的基础。借助“云-边-端”协同技术体系,今后还可以在确保网络安全的前提下,实现对现地AGC装置的智能远程运维。
在水电厂AGC负荷分配策略方面,目前全国水电厂普遍采用负荷等比例分配并考虑规避振动区的方式,该方法简单可靠,但无法实现发电耗水率最小化的目标。为此,国内许多学者基于动态规划算法及多目标蚁群等开展改进负荷分配策略改进研究。为了兼顾传统水电厂AGC分配策略和最新理论研究成果,提出基于多代理技术的水电厂AGC并行计算体系。多代理系统由多个代理共同合作来组成,其基本单元是代理(Agent),代理可以与其所在环境进行互动。多代理系统凭借其灵活的结构和自治行为,能够很好地解决不同负荷分配策略之间的协调问题。为了体现代理的单元自治性,将多代理系统(Multi-Agent System-MAS)模型分为两级,第1级为水电厂AGC全局代理(GA),第2级为负荷分配代理(DA)。其中,GA位于多代理系统的顶层,主要工作任务有:①验证并加载配置文件,启动水电厂AGC主程序;②通过远动通信从电网AGC获取负荷指令,并将实时运行统计值返送给电网AGC;③从SCADA系统中获取机组运行状态、有功实发值等实时信息;④将负荷分配的结果分别发送给各机组的调速系统;⑤监视SCADA系统中的故障信号,并执行自动退出单机AGC、自动退出全厂AGC等安全闭锁机制;⑥接受上位机的运维指令,包括重启程序、重启装置、修改配置文件等;DA位于GA下一级,每个不同的负荷分配策略均对应独立的DA,主要负责根据GA请求的待分配有功负荷,计算出优化的机组间负荷分配方案。水电厂AGC多代理架构如图4所示。
图4 水电厂AGC多代理示意图Fig.4 MAS structure of hydro-plant AGC
典型的配置是DA1选择常规等比例分配方法,DA2选择改进动态规划(DP)算法,DA3选择遗传算法(GA)、粒子群算法(PSO)等群智能算法,分别发挥上述不同类型算法的优势。常规等比例分配方法可以确保在DA2遭遇维数灾时,无法在给定时间内寻找到最优解时,输出一个可靠的可行解。改进动态规划利用有功负荷分配问题的无后效性问题,进行快速求解,其本质还是遍历原理,因此在未遭遇维数灾的情况下,能够相对可靠地得到最优解。群智能算法在参数率定合理的情况下,可以比动态规划算法更快地获得较好的解,以提高水电厂AGC的响应速度。
上述水电厂AGC多代理架构,与智能测控装置的多核多线程并行计算能力相结合,就可构建基于多代理技术的水电厂AGC并行计算体系,实现多种负荷分配算法同时求解。由于各种算法所需要的时间不同,应采用异步并行计算方法,并设定最大的允许计算时间。若达到最大计算时间时,仍有DA未主动反馈负荷分配结果,则GA负责强行终止该DA的计算过程,并在各DA已反馈的负荷分配结果中选择耗水量最小的方案作为最终方案。若所有DA均在设定的最大计算时间前反馈了分配结果,则GA负责提前结束本次负荷分配任务,立即输出耗水量最小的负荷分配方案,从而进一步提高水电厂AGC的响应速率。
新型电力系统下水电侧AGC的应用场景较以往更为复杂,例如为了提高对电网稳定性保障作用,需要对原有的电网AGC下发计划负荷曲线进行插值处理,提前进行开停机和负荷操作;为了减少机组功率调节过程中的负荷波动,使得水电厂调节出力过程更加平稳,需要判断计算出的负荷分配结果与相应机组当前实发值的差异,若差值大于给定最大单次调节范围时,需要按照单次最大调节范围,分多次下达有功设定值;为了更好地实现与新能源互补运行,也需要与新能源AGC系统进行双向数据交互,并优化自身的输出结果;为了更好地对新型电力系统下的多元能源系统进行联合仿真,需要在仿真过程中对部分参量进行自动化设值,并对输出的结果进行自动化校验等任务。
为了可以在标准化的水电厂AGC程序基础上,灵活地适应上述复杂应用场景,在AGC装置中增加脚本加载和执行功能,可以调用AGC数据读取接口,获得所需数据(机组运行状态、限定条件、振动区等信息),也可以调用AGC数据读取接口对机组负荷分配值进行复核,并下发控制令给指定通信程序。若脚本输出类型为负荷调节或开停机等控制指令,则自动将控制指令发布至消息队列中,并经网络通信程序发送给对应的机组。
针对不同的任务类型,设计了两种不同的脚本类型:①定时扫描执行:根据脚本设置的定时扫查周期,定时轮循定时扫描脚本,并执行脚本文件,比如负荷计划曲线即可采用此种方式扫查计划曲线是否已下达,并执行曲线的处理步骤,提前按改进的AGC策略计算各时间点的机组负荷分配值;②触发执行:实时扫查脚本的输入源状态,如果输入源状态发生改变,立刻进行对应脚本的执行计算。使用触发式脚本,可缩短从变位发生到脚本计算完成的时间,避免计算资源浪费。脚本计算流程如图5所示。
图5 脚本计算流程图Fig.5 Flow chart of script calculation process
为了便捷地对装置中的脚本进行管理,在SCADA系统上位机中增加用于AGC脚本管理的灵活应用组态功能,如图6所示。通过图形化的方式完成在线读取、脚本编辑、语法检查、版本管理、模拟运行、脚本下发等功能。
图6 AGC脚本灵活组态界面Fig.6 UI of script editor for AGC
将AGC程序运行于PowerPC开发板与x86工控机上,测试执行效率,结果如表1所示。对比分析表明,在主循环执行时间方面,X86耗时略小于PowerPC,但两者差距很小,但在设值执行时间方面,X86耗时明显小于PowerPC。因此,选择X86作为AGC装置的开发平台。考虑到外部通信需要,搭配8/16路隔离串口和4路100M/1000M自适应以太网接口。
表1 不同硬件平台AGC计算速度比较 msTab.1 AGC computation speed of different hardware
采用上述改进设计的水电厂AGC装置已在古田溪水力发电厂正式投运,采用主备装置热备冗余方式部署,从设备可在主设备故障时自动切换为主用模式。装置接收福建省调AGC下达的四级电站总有功负荷指令,经过正确性校核后完成4级电站的各机组负荷分配与控制,并提供AGC单机及全厂投退、模式切换操作等功能。作为新中国第一座梯级水电站,古田溪水力发电厂拥有一级至四级四座电站,总装机容量324 MW。其中一级电站水库正常水位382 m、总库容6.42 亿m3,为不完全多年调节水库,电站装机2×55 MW;二级电站坝高43.5 m,为日调节电站,装机2×65 MW;三级电站坝高43 m,装机2×21 MW;四级电站大坝坝高45 m,装机2×21 MW。工程现场实际应用情况表明,与传统的水电厂AGC相比,改进的AGC装置可使得整体响应时间缩短5 s以上,显著提高了水电厂AGC的响应速度。此外,上述改进设计的AGC装置也作为重要的试验装置,参与了国网湖南省电力公司大规模新能源接入电网运行时风电波动工况下水电机组调节模拟试验,利用其灵活的脚本组态功能,实测并验证了新能源接入后的水电机组调节能力与机组安全运行。
深入分析了新型电力系统发展对水电厂AGC的功能和性能需求,并结合传统水电厂AGC与理论研究成果,提出了改进的水电厂AGC系统架构,并重点阐述了实现该系统架构的若干关键技术原理及实现方式,包括数据流优化设计、现地装置化实现、并行计算体系以及适用性改进等。实际应用情况表明,改进的水电厂AGC装置可有效解决水电厂面临的AGC响应速率不足的问题,并通过脚本功能使得其能够被方便地用于新型电力系统多元能源互补调控仿真等复杂应用场景中。此外,该装置在程序标准化、现场快速部署等方面也具有明显优势。
重点针对水电厂AGC体系架构设计进行研究,研制标准化的通用水电厂AGC装置,主要目的在于提高水电厂AGC的响应速率,满足新型电力系统高质量发展要求。在水电厂AGC各类优化策略的比较分析,群智能优化算法工程应用等方面,还有待今后开展进一步深入研究。