一种PSCAD模型参数快速优化方法技术领域
本发明属于电力系统模型仿真与控制技术领域,特别涉及一种PSCAD模型参数快速优化方法。
背景技术
PSCAD/EMTDC(PowerSystemComputerAidedDesign/ElectromagneticTransientsincludingDC)是世界上广泛使用的电磁暂态仿真软件。PSCAD作为电磁暂态仿真程序,采用时域分析法求解完整的电力系统及微分方程(包括电磁和电机两种模型),通过十分小的仿真计算步长保证了系统仿真的精确性。另外,PSCAD具有良好的用户操作界面环境,用户不仅可以灵活地建立电力系统模型进行仿真分析,还可以利用Fortran编写自定义功能模块进行系统建模和仿真。
虽然PSCAD进行系统仿真具有高精确度,但是在使用PSCAD进行电力系统仿真时模型运行时间较长。在对较大规模的电磁暂态模型进行仿真,特别是含有电力电子开关器件时,仿真时间往往较长。对于含有控制系统的电力系统模型中,控制系统的性能对控制参数依赖性很强,选择合适的控制参数需要经过大量的调试,严重影响了PSCAD电力系统控制器的设计效率。
为了快速有效地对PSCAD模型中的控制参数进行优化,本发明提出一种PSCAD模型参数快速优化方法。
发明内容
本发明的目的在于提出一种PSCAD模型参数快速优化方法,其特征在于,包括如下步骤:
1)在PSCAD中使用FORTRAN建立交互模块,将建立了交互模块的PSCAD加入待优化的PSCAD电力系统模型中,并将待优化的PSCAD电力系统模型设置为MultipleRun;
2)在MATLAB中建立调用程序,任务管理函数和寻优程序,寻优程序为MATLAB中建立的粒子群算法,待优化的PSCAD电力系统模型的参数为粒子位置;
3)设置待优化的PSCAD电力系统模型中交互模块和MATLAB中调用程序之间的标志文件和数据文件,以建立PSCAD与MATLAB之间的交互接口;
4)将建立了交互接口的PSCAD电力系统模型和MATLAB中调用程序部署在局域网若干计算机上,在其中性能最好的一台计算机中部署步骤2)建立的任务管理函数和寻优程序;
5)设置MATLAB中调用程序和任务管理函数的IP地址,任务管理函数通过TCP/IP协议实现与调用程序之间的多机通信,利用PSCAD与MATLAB之间的交互接口实现对PSCAD中程序的调用仿真;
6)依次运行待优化的PSCAD电力系统模型、调用程序、寻优程序,对待优化的PSCAD电力系统模型进行参数优化,寻优程序在种群迭代过程中产生新种群的粒子位置,通过任务管理函数调用多个PSCAD同时对粒子位置进行仿真来计算获得粒子适应值。
所述交互模块为PSCAD中使用FORTRAN编写的自定义模块,交互模块的输出为待优化的PSCAD电力系统模型的参数,交互模块的输入为用以评价参数指标的仿真结果。
所述待优化的PSCAD电力系统模型中交互模块和MATLAB中调用程序通过对标志文件和数据文件的读写来实现两者之间的交互;标志文件包括运行标志文件、等待标志文件,具体为运行标志文件用以控制PSCAD开始仿真运行,等待标志文件用于标识PSCAD本次仿真完成,等待下次仿真;数据文件包括参数数据文件、结果数据文件,具体为参数数据文件用于存储参数数据,结果数据文件用于存储仿真结果。
所述任务管理函数对寻优程序传递的种群的粒子位置以粒子为子任务单位不断地查询PSCAD状态,依次将子任务传递给空闲PSCAD进行仿真运行来获取对应的粒子适应值。
本发明的有益效果是针对目前PSCAD电力系统控制器的设计效率低的问题,提出了一种PSCAD模型参数快速优化方法,PSCAD与MATLAB之间的交互通过文件读写间接实现,具有良好的兼容性,无需考虑MATLAB,PSCAD和FORTRAN的版本,解决了PSCAD自带与MATLAB接口的版本兼容性差的问题;任务管理函数通过TCP/IP协议来进行局域网通信,通过调用程序对PSCAD的调用,实现了多个计算机上PSCAD的同时仿真运行,从而大大减少了参数寻优的总耗时。
附图说明
图1为PSCAD模型参数快速优化方法流程图。
图2为任务管理函数的编写流程图。
图3为PSCAD与MATLAB之间的交互接口示意图。
图4为PSCAD电力系统模型参数优化框图。
具体实施方式
本发明提出一种PSCAD模型参数快速优化方法,下面结合附图和具体实施例对本发明作详细说明。
图1所示为PSCAD模型参数快速优化方法流程图,包括如下步骤:
1)在PSCAD中使用FORTRAN建立交互模块,将建立了交互模块的PSCAD加入待优化的PSCAD电力系统模型中,并将待优化的PSCAD电力系统模型设置为MultipleRun;
2)在MATLAB中建立调用程序,任务管理函数和寻优程序,寻优程序为MATLAB中建立的粒子群算法,待优化的PSCAD电力系统模型的参数为粒子位置;
3)设置待优化的PSCAD电力系统模型中交互模块和MATLAB中调用程序之间的标志文件和数据文件,以建立PSCAD与MATLAB之间的交互接口;
4)将建立了交互接口的PSCAD电力系统模型和MATLAB中调用程序部署在局域网若干计算机上,在其中性能最好的一台计算机中部署步骤2)建立的任务管理函数和寻优程序;
5)设置MATLAB中调用程序和任务管理函数的IP地址,任务管理函数通过TCP/IP协议实现与调用程序之间的多机通信,利用PSCAD与MATLAB之间的交互接口实现对PSCAD中程序的调用仿真;
6)依次运行待优化的PSCAD电力系统模型、调用程序、寻优程序,对待优化的PSCAD电力系统模型进行参数优化,寻优程序在种群迭代过程中产生新种群的粒子位置,通过任务管理函数调用多个PSCAD同时对粒子位置进行仿真来计算获得粒子适应值。
其中,交互模块为PSCAD中使用FORTRAN编写的自定义模块,交互模块的输出为待优化的PSCAD电力系统模型的参数,交互模块的输入为用以评价参数指标的仿真结果。
其中,待优化的PSCAD电力系统模型中交互模块和MATLAB中调用程序通过对标志文件和数据文件的读写来实现两者之间的交互;标志文件包括运行标志文件、等待标志文件,具体为运行标志文件用以控制PSCAD开始仿真运行,等待标志文件用于标识PSCAD本次仿真完成,等待下次仿真;数据文件包括参数数据文件、结果数据文件,具体为参数数据文件用于存储参数数据,结果数据文件用于存储仿真结果。
其中,任务管理函数对寻优程序传递的种群的粒子位置以粒子为子任务单位不断地查询PSCAD状态,依次将子任务传递给空闲PSCAD进行仿真运行来获取对应的粒子适应值。
实施例:对PSCAD中采用PWM调制的VSC环流器中的4个开关角参数进行优化,以获得更好电压波形输出。
步骤1:在PSCAD中使用自带的自定义模块功能编写了交互模块,将建立的交互模块加入到采用PWM调制的VSC模型中;其中,交互模块的输出为待优化的4个开关角参数,交互模块的输入为输出电压的时间乘以误差绝对值,将交互模块的输入作为开关角参数的评价指标;将待优化的PSCAD电力系统模型设置为MultipleRun。
步骤2:在MATLAB软件中,使用MATLAB语言编写调用程序,任务管理函数和寻优程序;寻优程序为主程序,采用粒子群算法编写;调用程序为独立程序;任务管理函数为子函数,寻优程序可以直接对其实现函数调用,任务管理函数的编写流程图如图2所示。
步骤3:设置待优化的PSCAD电力系统模型中交互模块和MATLAB中调用程序之间的标志文件和数据文件,以建立PSCAD与MATLAB之间的交互接口;PSCAD与MATLAB之间的交互接口是通过FORTRAN和MATLAB文件的读写功能实现的,即通过对指定标志文件和数据文件的读写,实现MATLAB对PSCAD的调用;PSCAD与MATLAB之间的交互接口示意图如图3所示。
(1)、PSCAD电力系统模型中交互模块
在PSCAD中,通过使用FORTRAN编写的自定义模块实现两个功能:一是在PSCAD每次仿真开始时刻,反复的搜索运行标志文件,搜索到后读取参数数据文件删除运行标志文件,将得到的参数输入给PSCAD电力系统模型,PSCAD电力系统模型开始仿真;二是在本次PSCAD电力系统模型仿真结束时刻,将仿真得到的结果数据写入到结果数据文件中,生成等待标志文件,进入下一次仿真等待。
(2)、MATLAB中调用程序
MATLAB中调用程序实现两个功能:一是在需要检测当前时刻PSCAD是否处于仿真运行时,搜索等待标志文件,如果搜索到的等待标志文件表示等待运行,则PSCAD处于空闲状态,否则PSCAD处于忙碌状态;二是需要空闲PSCAD运行某组参数时,将参数写入参数数据文件中,读取结果数据文件中数据,删除等待标志文件,生成运行标志文件以控制PSCAD开始仿真该组参数。
步骤4:将建立了交互接口的PSCAD电力系统模型和MATLAB中调用程序复制到在局域网中3台计算机中,在其中性能最好的一台计算机中复制任务管理函数和寻优程序。
步骤5:根据MATLAB中调用程序和任务管理函数所在计算机的IP地址,分别设置MATLAB中调用程序和任务管理函数相应的IP地址,任务管理函数通过TCP/IP协议实现与调用程序之间的多机通信,任务管理函数在需要查询PSCAD状态时,通过TCP/IP告知调用程序,调用程序通过搜索等待标志文件来查询各PSCAD运行状态;同样的,在需要仿真某组参数,通过TCP/IP协议和调用程序来实现。
步骤6:运行待优化的PSCAD电力系统模型,等待调用程序的调用;运行调用程序,等待任务管理函数发送相关指令;运行寻优程序,开始对待优化的PSCAD电力系统模型进行参数优化。PSCAD电力系统模型参数优化框图如图4所示,寻优程序在种群迭代过程中产生新种群的粒子位置,通过任务管理函数调用多个PSCAD同时对粒子位置进行仿真来计算获得粒子适应值。
按照上述步骤1-6对开关角参数进行优化后,获得的数据结果如表1所示;
表1参数优化结果对比
参数 Alpha1 Alpha2 Alpha3 Alpha4 Objective
初始值 15 40 60 75 0.775845
本发明优化 13.6738 39.4737 62.0164 73.594 0.0147222
由表1可以看出:参数优化后的结果明显比原始参数更好。另外,本发明在计算种群中粒子适应值时,可以调用多个PSCAD同时仿真运行,从而大大减少了整体寻优时间。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。