CN111221520A - 电力系统控制器控制算法生成方法、设备及可读存储介质 - Google Patents

电力系统控制器控制算法生成方法、设备及可读存储介质 Download PDF

Info

Publication number
CN111221520A
CN111221520A CN201911303409.XA CN201911303409A CN111221520A CN 111221520 A CN111221520 A CN 111221520A CN 201911303409 A CN201911303409 A CN 201911303409A CN 111221520 A CN111221520 A CN 111221520A
Authority
CN
China
Prior art keywords
code
function
power system
matlab
software
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201911303409.XA
Other languages
English (en)
Other versions
CN111221520B (zh
Inventor
卢阳明
秦健
林卫星
张新刚
白鹏
赵宇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tbea Xi'an Flexible Power T&d Co ltd
TBEA Xinjiang Sunoasis Co Ltd
Original Assignee
Tbea Xi'an Flexible Power T&d Co ltd
TBEA Xinjiang Sunoasis Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tbea Xi'an Flexible Power T&d Co ltd, TBEA Xinjiang Sunoasis Co Ltd filed Critical Tbea Xi'an Flexible Power T&d Co ltd
Priority to CN201911303409.XA priority Critical patent/CN111221520B/zh
Publication of CN111221520A publication Critical patent/CN111221520A/zh
Application granted granted Critical
Publication of CN111221520B publication Critical patent/CN111221520B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3604Software analysis for verifying properties of programs
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02EREDUCTION OF GREENHOUSE GAS [GHG] EMISSIONS, RELATED TO ENERGY GENERATION, TRANSMISSION OR DISTRIBUTION
    • Y02E60/00Enabling technologies; Technologies with a potential or indirect contribution to GHG emissions mitigation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明属于电力系统软件模型技术领域,公开了一种电力系统控制器控制算法生成方法、设备及可读存储介质;包括依次进行的算法开发和仿真验证,其中:算法开发具体为:电力系统控制器控制模型通过MATLAB软件建模得到MATLAB模型,通过MATLAB模型生成嵌入式C代码;仿真验证具体为:通过PSCAD软件仿真嵌入式C代码,得到电力系统控制器控制算法。在MATLAB软件完成控制算法搭建和仿真,再直接通过模型生成嵌入式的C代码,生成的代码在通用的电力系统仿真软件PSCAD软件仿真,得到电力系统控制器控制算法;结合MATLAB软件的算法开发和PSCAD软件的仿真验证,有效的避免由于PSCAD软件的控制算法开发和图形处理性能低,导致电力系统控制器控制算法生成效率低的问题。

Description

电力系统控制器控制算法生成方法、设备及可读存储介质
技术领域
本发明属于电力系统软件模型技术领域,涉及一种电力系统控制器控制算法生成方法、设备及可读存储介质。
背景技术
PSCAD(PSCAD/EMTDC)(全称Power Systems Computer Aided Design)是世界上广泛使用的电磁暂态仿真软件,EMTDC是其仿真计算核心,PSCAD为EMTDC(ElectromagneticTransients including DC)提供图形操作界面,最早版本的EMTDC由加拿大DennisWoodford博士于1976年在曼尼托巴水电局开发完成。PSCADPSCAD/EMTDC采用时域分析求解完整的电力系统及微分方程(包括电磁和机电两个系统),结果不仅非常精确,而且更值得一提的是它允许用户在一个完备的图形环境下灵活地建立电路模型,进行仿真分析,用户在仿真的同时,可以改变控制参数,从而直观地看到各种测量结果和参数曲线,极大地提高了效率。
PSCAD里面提供丰富的元件库,从简单的无源元件到复杂的控制模块,以致电机、FACTS装置、电缆线路等模型都有涵盖,PSCAD允许用户自定义的方式全新定义一个模块;新模块可以由元件库里提供的模块组合形成,也可以用FORTRAIN语言编写。其自带的范例对于初学者来说,也是非常有用的,包括了各种典型的研究对象,初学者可以从这些典型模型上修改开始,直至发展成为自己想要的研究对象。
虽然PSCAD具有强大的运算和元器件建模能力,但控制算法开发和图形处理等能力不足,导致电力系统控制器的控制算法开发流程复杂,进而导致生成效率低的问题。
发明内容
本发明的目的在于克服上述现有技术中电力系统控制器的控制算法生成效率低的缺点,提供电力系统控制器控制算法生成方法、设备及可读存储介质。
为达到上述目的,本发明采用以下技术方案予以实现:
本发明一方面,一种电力系统控制器控制算法生成方法,包括依次进行的算法开发和仿真验证,其中:
算法开发具体为:
电力系统控制器控制模型通过MATLAB软件建模得到MATLAB模型,通过MATLAB模型生成嵌入式C代码;
仿真验证具体为:
通过PSCAD软件仿真嵌入式C代码,得到电力系统控制器控制算法。
本发明进一步的改进在于:
所述通过MATLAB软件生成控制算法的嵌入式C代码的具体方法为:
S1:设置MATLAB模型的步长类型为定步长,解算器类型为离散解算器;
S2:设置MATLAB模型的生成代码的文件类型为ert.tlc,语言为C语言;
S3:设置MATLAB模型的生成代码的函数接口为非重用函数,自定义设置非重用函数的函数名和输入输出口的名称及形式;
S4:将MATLAB模型的生成代码中的每个子模块均设置为原子子系统,每个子模块均单独生成子模块函数,所有子模块函数均选择可重用函数,并设置可重用函数的函数名和文件名的来源;
S5:将MATLAB模型的生成代码中的每个子模块中所有的公用信号均设置信号名,并将公用信号设置为测试点;
S6:将电力系统控制器控制模型通过MATLAB模型转换为嵌入式C代码。
所述S3中非重用函数的函数名为若干小写字母和/或数字的组合,输入输出口形式均设置为指针。
所述通过PSCAD软件仿真嵌入式C代码的具体步骤为:
R1:在PSCAD软件调用的编译器的路径的引用头文件路径一行添加调用嵌入式C代码的头文件搜索路径;
R2:在PSCAD软件中设置接口文件,接口文件为.f文件,接口文件内设置若干接口函数,设置每个接口函数的函数名和输入输出口名称和变量类型;
R3:在PSCAD软件中建立自定义模块,设置自定义模块名称,输入输出口名称和变量类型,自定义模块的输入输出口变量类型与待调用接口函数的输入输出口变量类型一致,自定义模块输入输出口名称与待调用的函数中的输入输出口名称一致;
R4:通过接口文件引用嵌入式C代码中除主函数ert_main外所有的子模块的嵌入式C代码文件;
R5:通过PSCAD软件进行仿真,当仿真结果满足预设控制要求时,将嵌入式C代码作为电力系统控制器控制算法。
本发明另一方面,一种设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现电力系统控制器控制算法生成方法的步骤。
本发明又一方面,一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现电力系统控制器控制算法生成方法的步骤。
与现有技术相比,本发明具有以下有益效果:
通过MATLAB软件进行控制器控制模型的搭建,再直接通过搭建的MATLAB模型生成嵌入式C代码,再通过电力系统仿真软件PSCAD对嵌入式的C代码进行仿真验证,确保嵌入式C代码能够使用在实际控制器中。基于MATLAB模型的算法开发,大大简化了算法开发流程,提高了效率,进而提升了电力系统控制器的控制算法生成效率,有效的避免由于PSCAD软件的控制算法开发和图形处理能力不足,导致电力系统控制器的控制算法开发流程复杂,进而导致控制算法生成效率低的问题。
进一步的,通过对MATLAB模型作相关设置,包括步长、代码生成选项、原子子系统设置以及模型中公用信号的处理,生成PSCAD软件能够调用的嵌入式C代码,便于PSCAD软件进行仿真验证。
进一步的,通过PSCAD软件作相关设置,包括头文件路径的设置、C与Fortran的接口文件、C文件的调用以及自定义模块的建立,实现通过PSCAD软件对嵌入式C代码的验证仿真。
附图说明
图1为本发明实施例提供的MATLAB模型示意图;
图2为本发明实施例提供的调用嵌入式C代码的PSCAD仿真模型示意图;
图3为本发明实施例提供的MATLAB模型步长和解算器设置示意图;
图4为本发明实施例提供的MATLAB模型的目标文件和语言设置示意图;
图5为本发明实施例提供的MATLAB模型函数接口的函数名设置示意图;
图6为本发明实施例提供的MATLAB模型函数接口的输入输出口的名称及形式设置示意图;
图7为本发明实施例提供的MATLAB模型子模块设置示意图;
图8为本发明实施例提供的MATLAB模型子模块的输入输出口的名称及形式设置示意图;
图9为本发明实施例提供的MATLAB模型中子模块中的公用信号的设置示意图;
图10为本发明实施例提供的MATLAB模型生成嵌入式C代码的报告示意图;
图11为本发明实施例提供的PSCAD软件编译嵌入式C代码所用搜索的头文件路径设置示意图;
图12为本发明实施例提供的PSCAD软件中接口文件示意图;
图13为本发明实施例提供的PSCAD软件中C文件引用的设置示意图;
图14为本发明实施例提供的PSCAD软件中自定义模块的脚本中调用接口函数的示意图;
图15为本发明实施例提供的PSCAD模型中的自定义模块输入输出端口设置示意图;
图16为本发明实施例提供的PSCAD模型中的自定义模块示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
下面结合附图对本发明做进一步详细描述:
MATLAB主要包括MATLAB和Simulink两大部分,是由美国Mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。
发明人在实际工作中发现,在MATLAB软件完成控制器的控制算法搭建和仿真,再直接通过模型生成嵌入式C代码,该嵌入式C代码可以在实际控制器中使用,大大简化了开发流程,提高了效率。但生成的嵌入式C代码需要在通用的电力系统仿真软件PSCAD中验证后,才能使用。为了解决MATLAB控制算法模型生成的C代码在PSCAD中验证的问题,需要打通基于MATLAB的控制算法开发和基于PSCAD主电路的仿真验证的接口,也就是建立MATLAB模型转为PSCAD模型的方法,实现基于MATLAB模型的算法开发和基于PSCAD的仿真验证。
本发明电力系统控制器控制算法生成方法,包括依次进行的算法开发和仿真验证,其中:算法开发具体为:通过MATLAB模型生成电力系统控制器控制模型的嵌入式C代码;仿真验证具体为:通过PSCAD模型仿真嵌入式C代码,得到电力系统控制器控制算法。
下面将分为算法开发和仿真验证两部分,详细描述本发明的过程和原理。
算法开发,电力系统控制器控制模型通过MATLAB软件建模得到MATLAB模型,通过MATLAB模型生成嵌入式C代码;主要包括以下设置。
1)设置MATLAB/Simulink模型为定步长,解算器类型为离散解算器,因为只有采用定步长才能用于嵌入式C代码生成,但步长大小不会在代码中体现,所以可以任意设置。
2)设置MATLAB模型的生成代码的文件类型为ert.tlc,语言用C,这样确保生成嵌入式的C代码。
3)设置生成代码的函数接口为Nonreusable function(非重用函数),只有用非重用函数才能自定义函数的名称以及输入输出口形式。自定义设置函数名和输入输出端口名称,函数名不能含有大写字母,否则报错,输入输出口均设置为Pointer(指针),这样可以生成PSCAD模型接口需要的指针形式。
4)如果MATLAB模型中包含多个独立的子模块,设置所有的子模块均为原子子系统,这样可以将该子模块单独生成函数,在主功能函数中调用。设置子模块函数为可重用函数,并设置函数名和文件名的来源,会生成每个子模块单独的C和H文件。
5)对MATLAB模型中所有子模块中所有的公用信号设置信号名,公用信号指信号分离为两路以上,用于不同支路的计算,设置公用信号为Test point(测试点)。最外层模型的公用信号和子模块的输入输出端口变量在主功能函数中已定义,都不用设置。这样会将每个子模块中的所有测试点定义为结构体,在主功能函数中通过结构体指针来调用变量;不这样设,会将公用信号定义为函数中的局部变量,PSCAD软件调用后会出现没有输出结果的情况。
6)设置好以上内容后,编译MATLAB模型并生成C代码和报告。源码存放在MATLAB模型所在路径下的文件夹里,其中除主文件ert_main.c外,剩余所有的C和H文件都是PSCAD软件要调用的代码。
仿真验证,通过PSCAD软件仿真嵌入式C代码,得到电力系统控制器控制算法;主要包括以下设置。
1)设定头文件的搜索路径,在VS2010软件的路径“X:\Program Files(x86)\Microsoft Visual Studio 10.0\VC\bin\vcvars32.bat”的的引用头文件路径“@remINCLUDE”一行,添加PSCAD软件调用嵌入式C代码的头文件搜索路径。
2)在PSCAD软件中加入接口文件(.f文件),接口文件内设置若干接口函数,用于调用多个独立C函数,设置接口函数的函数名和输入输出参数,接口函数中输入输出变量与自定义模块、所调用函数一致且顺序一样。
3)PSCAD软件再引用MATLAB模型生成的除主函数ert_main外所有的子模块的C文件,不能引用主函数ert_main,否则出现重复调用的错误,所有头文件均放在步骤1中VS2010编译器的头文件搜索路径下。
4)在PSCAD软件建立自定义模块,设置自定义模块名称,输入输出口名称和变量类型,自定义模块的输入输出口变量类型与待调用函数的输入输出口变量类型一致,自定义模块输入输出口名称与待调用的函数中的输入输出口名称一致。在模块的脚本中调用对应的接口函数。
5)PSCAD软件编译和运行,完成嵌入式C代码的仿真验证,当仿真结果满足预设控制要求时,将嵌入式C代码作为电力系统控制器控制算法。
下面结合具体实例介绍本发明,使用的软件版本为:MATLAB软件版本为2018a,PSCAD软件版本为4.6,Fortran编译器为32位的IVF 12.0.5.221,其次PSCAD中整数型数据(integer)是32位的,所以matlab生成代码的输入输出变量也必须是32位的,也就是int32(或uint32);而PSCAD中实数型数据(real)对应的matlab生成代码的输入输出变量是double类型,数据类型不匹配会导致PSCAD仿真结果不对。
参见图1和2,MATLAB模型和调用MATLAB模型生成的嵌入式C代码的PSCAD仿真模型,其中MATLAB模型为Simulink中搭建好的一个功能模块,该模型是继电保护中的常用过流检测模块,通过检测输入量是否超过允许值一定时间来决定是否出口处理。可以看到此模块可以设置动作时间,增加或减少步长,可以复位等。PSCAD仿真模型包括自定义模块、接口文件和引用的C文件。
图3为MATLAB模型步长和解算器设置,在Simulation--Model ConfigurationParameters—Solver—Solver selection中选择定步长,离散解算器。
图4为MATLAB模型代码生成的目标文件和语言设置,目标文件选ert.tlc,语言选C,这样可以生成嵌入式的C代码,勾选Generate code only,就只生成代码,不生成obj等文件。
图5和6为MATLAB生成代码的函数名和输入输出接口设置:
1)、Interface—Code interface,选择Nonreusable function,只有选非重用函数才能自定义函数的名称以及输入输出口形式;
2)、Configure Model Functions—model specific C prototypes,勾选Configure arguments for Step function prototype;
3)、点击Get default,设置函数名和输入输出端口名称,函数名不能含有大写字母,否则报错;
4)、C Type Qualifier默认输入口为Value,输出口为Pointer,这里输入输出口均选Pointer,这样可以生成PSCAD接口需要的指针形式;
5)、点Validate验证是否有错误。
图7和8为MATLAB模型中的子模块设置为原子子系统。
1)、如果MATLAB模型中包含多个独立的子模块,模块右键选择Block Parameters,选用原子子系统,这样可以将该子模块单独生成函数,在主功能函数中调用;
2)、Code Generation选项卡的Function packaging中选Reusable function,并设置函数名和文件名的来源,会生成子模块的C和H文件。
图9为MATLAB模型的子模块中所有的公用信号的处理,公用信号指信号分离为两路以上,用于不同支路的计算,最外层模型的公用信号和子模块的输入输出端口变量在主功能函数中已定义,都不用选。方法是右击中间变量信号线,选Properties,在SignalProperties中设置,这样会将该模块中的所有测试点定义为结构体,在函数中通过结构体指针来调用变量。不这样设,会将公用信号定义为函数中的局部变量,PSCAD调用后会出现没有输出结果的情况。
图10为MATLAB模型生成代码的报告,设置好上面的选项后,选择Code–C/C++Code--Bulid Model,会生成报告和C代码。源码存放在MATLAB模型所在路径下的intpolo_ert_rtw文件夹里,其中除主文件ert_main.c外,剩余所有的C和H文件都是PSCAD仿真模型要调用的代码。
图11为PSCAD所用编译器的头文件路径设置,在对源文件进行编译、链接之前,要设定好头文件的搜索路径,以便VS/C/C++编译器能够找到C代码文件中使用的变量和函数。设定头文件的搜索路径:“C:\Program Files(x86)\Microsoft Visual Studio 10.0\VC\bin”,找到“vcvars32.bat”,用记事本打开,定位到“@rem INCLUDE”一行,在下面添加所需要的头文件搜索路径。
图12为嵌入式C代码与Fortran的接口文件,其定义了一个subroutine,相当于函数,AUX_CSUB调用嵌入式C代码功能模块函数int_custom。设置接口函数的函数名和输入输出参数,接口函数中输入输出变量与自定义模块、所调用函数一致且顺序一样。
图13为PSCAD工程中C代码引用的设置,在main页面通过File Reference,加入接口文件,再添加MATLAB生成的除主函数ert_main外所有的功能模块C文件,对于该实施例,需要加入interface_intpolo.f、intpolo.c、intpolo_data.c三个文件。不能加入主函数ert_main,否则出现重复调用的错误,不用加入头文件,只要将所有头文件放在VC的设置路径下。
图14、15和16为自定义模块的脚本中调用接口函数和自定义模块。在模型空白处右键的Component Wizard建立自定义模块,设置自定义模块名称,输入输出口名称和变量类型。自定义模块的输入输出口变量类型要与所调用接口函数的输入输出口变量类型一致,自定义模块输入输出口名称与脚本中所调用的接口函数的输入输出变量名称一致。点击finish并在页面空白处单击,将自定义模块加入页面,右击选择Edit Definition,在模块的script选项里调用图中编写好的subroutine。
本发明电力系统控制器控制算法生成方法如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读存储介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。其中,所述计算机存储介质可以是计算机能够存取的任何可用介质或数据存储设备,包括但不限于磁性存储器(例如软盘、硬盘、磁带、磁光盘(MO)等)、光学存储器(例如CD、DVD、BD、HVD等)、以及半导体存储器(例如ROM、EPROM、EEPROM、非易失性存储器(NANDFLASH)、固态硬盘(SSD))等。
在示例性实施例中,还提供一种设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现所述基于深度神经网络的信道估计方法的步骤。处理器可能是中央处理单元(CentralProcessingUnit,CPU),还可以是其他通用处理器、数字信号处理器(DigitalSignalProcessor,DSP)、专用集成电路(ApplicationSpecificIntegratedCircuit,ASIC)、现成可编程门阵列(Field-ProgrammableGateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。
本发明提供了电力系统控制器控制算法生成方法,主要分两步:首先对MATLAB模型作相关设置,生成嵌入式C代码;再对PSCAD软件作相关设置,建立工程调用嵌入式C代码,实现MATLAB算法开发和PSCAD仿真验证。具体介绍了MATLAB和PSCAD的工作环境,说明了MATLAB的嵌入式C代码生成的相关设置,包括步长、代码生成选项、原子子系统设置、模型中公用信号的处理等,介绍了PSCAD软件相关设置,包括头文件路径的设置、接口文件、C文件的调用、自定义模块的建立,实现电力系统控制器控制算法的开发和仿真。
以上内容仅为说明本发明的技术思想,不能以此限定本发明的保护范围,凡是按照本发明提出的技术思想,在技术方案基础上所做的任何改动,均落入本发明权利要求书的保护范围之内。

Claims (6)

1.一种电力系统控制器控制算法生成方法,其特征在于,包括依次进行的算法开发和仿真验证,其中:
算法开发具体为:
电力系统控制器控制模型通过MATLAB软件建模得到MATLAB模型,通过MATLAB模型生成嵌入式C代码;
仿真验证具体为:
通过PSCAD软件仿真嵌入式C代码,得到电力系统控制器控制算法。
2.根据权利要求1所述的电力系统控制器控制算法生成方法,其特征在于,所述通过MATLAB软件生成控制算法的嵌入式C代码的具体方法为:
S1:设置MATLAB模型的步长类型为定步长,解算器类型为离散解算器;
S2:设置MATLAB模型的生成代码的文件类型为ert.tlc,语言为C语言;
S3:设置MATLAB模型的生成代码的函数接口为非重用函数,自定义设置非重用函数的函数名和输入输出口的名称及形式;
S4:将MATLAB模型的生成代码中的每个子模块均设置为原子子系统,每个子模块均单独生成子模块函数,所有子模块函数均选择可重用函数,并设置可重用函数的函数名和文件名的来源;
S5:将MATLAB模型的生成代码中的每个子模块中所有的公用信号均设置信号名,并将公用信号设置为测试点;
S6:将电力系统控制器控制模型通过MATLAB模型转换为嵌入式C代码。
3.根据权利要求2所述的电力系统控制器控制算法生成方法,其特征在于,所述S3中非重用函数的函数名为若干小写字母和/或数字的组合,输入输出口形式均设置为指针。
4.根据权利要求1所述的电力系统控制器控制算法生成方法,其特征在于,所述通过PSCAD软件仿真嵌入式C代码的具体步骤为:
R1:在PSCAD软件调用的编译器的路径的引用头文件路径一行添加调用嵌入式C代码的头文件搜索路径;
R2:在PSCAD软件中设置接口文件,接口文件为.f文件,接口文件内设置若干接口函数,设置每个接口函数的函数名和输入输出口名称和变量类型;
R3:在PSCAD软件中建立自定义模块,设置自定义模块名称,输入输出口名称和变量类型,自定义模块的输入输出口变量类型与待调用接口函数的输入输出口变量类型一致,自定义模块输入输出口名称与待调用的函数中的输入输出口名称一致;
R4:通过接口文件引用嵌入式C代码中除主函数ert_main外所有的子模块的嵌入式C代码文件;
R5:通过PSCAD软件进行仿真,当仿真结果满足预设控制要求时,将嵌入式C代码作为电力系统控制器控制算法。
5.一种设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至4任一项所述方法的步骤。
6.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至4任一项所述方法的步骤。
CN201911303409.XA 2019-12-17 2019-12-17 电力系统控制器控制算法生成方法、设备及可读存储介质 Active CN111221520B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911303409.XA CN111221520B (zh) 2019-12-17 2019-12-17 电力系统控制器控制算法生成方法、设备及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911303409.XA CN111221520B (zh) 2019-12-17 2019-12-17 电力系统控制器控制算法生成方法、设备及可读存储介质

Publications (2)

Publication Number Publication Date
CN111221520A true CN111221520A (zh) 2020-06-02
CN111221520B CN111221520B (zh) 2023-03-21

Family

ID=70832192

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911303409.XA Active CN111221520B (zh) 2019-12-17 2019-12-17 电力系统控制器控制算法生成方法、设备及可读存储介质

Country Status (1)

Country Link
CN (1) CN111221520B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112016199A (zh) * 2020-08-24 2020-12-01 国网经济技术研究院有限公司 一种基于pscad的电力系统模块化建模方法及仿真方法
CN112036023A (zh) * 2020-08-26 2020-12-04 南京国电南自维美德自动化有限公司 一种发电机变压器组保护装置软件一体化生成系统
CN115688389A (zh) * 2022-10-14 2023-02-03 北京世冠金洋科技发展有限公司 一种建模仿真方法、系统及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030146290A1 (en) * 2002-02-04 2003-08-07 Mingyu Wang Model-based method of generating control algorithms for an automatic climate control system
CN101996271A (zh) * 2010-08-12 2011-03-30 武汉大学 实现pscad电力系统仿真计算模型自动生成的软件接口
CN103942091A (zh) * 2014-04-17 2014-07-23 国家电网公司 Matlab自定义模型和psasp联合仿真的励磁系统仿真方法及系统
CN105159743A (zh) * 2015-07-07 2015-12-16 国家电网公司 基于pscad接口c语言的mmc暂态仿真方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030146290A1 (en) * 2002-02-04 2003-08-07 Mingyu Wang Model-based method of generating control algorithms for an automatic climate control system
CN101996271A (zh) * 2010-08-12 2011-03-30 武汉大学 实现pscad电力系统仿真计算模型自动生成的软件接口
CN103942091A (zh) * 2014-04-17 2014-07-23 国家电网公司 Matlab自定义模型和psasp联合仿真的励磁系统仿真方法及系统
CN105159743A (zh) * 2015-07-07 2015-12-16 国家电网公司 基于pscad接口c语言的mmc暂态仿真方法

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112016199A (zh) * 2020-08-24 2020-12-01 国网经济技术研究院有限公司 一种基于pscad的电力系统模块化建模方法及仿真方法
CN112016199B (zh) * 2020-08-24 2023-12-01 国网经济技术研究院有限公司 一种基于pscad的电力系统模块化建模方法及仿真方法
CN112036023A (zh) * 2020-08-26 2020-12-04 南京国电南自维美德自动化有限公司 一种发电机变压器组保护装置软件一体化生成系统
CN112036023B (zh) * 2020-08-26 2023-06-27 南京国电南自维美德自动化有限公司 一种发电机变压器组保护装置软件一体化生成系统
CN115688389A (zh) * 2022-10-14 2023-02-03 北京世冠金洋科技发展有限公司 一种建模仿真方法、系统及存储介质
CN115688389B (zh) * 2022-10-14 2023-06-23 北京世冠金洋科技发展有限公司 一种建模仿真方法、系统及存储介质

Also Published As

Publication number Publication date
CN111221520B (zh) 2023-03-21

Similar Documents

Publication Publication Date Title
CN111221520B (zh) 电力系统控制器控制算法生成方法、设备及可读存储介质
Montenegro et al. Real time OpenDSS framework for distribution systems simulation and analysis
Roche et al. A framework for co-simulation of AI tools with power systems analysis software
US20100257506A1 (en) Providing block state information for a model based development process
De Souza et al. A co-simulation platform for evaluating cyber security and control applications in the smart grid
CN110196720B (zh) 一种Simulink生成动态链接库的优化方法
Montenegro et al. Multilevel a-diakoptics for the dynamic power-flow simulation of hybrid power distribution systems
Pakonen et al. User-friendly formal specification languages-conclusions drawn from industrial experience on model checking
Larraz et al. Minimal-model-guided approaches to solving polynomial constraints and extensions
Su et al. Code synthesis for dataflow-based embedded software design
Barnat et al. Executing model checking counterexamples in Simulink
Villalobos-Arias et al. Evaluation of a model‐based testing platform for Java applications
Chieh et al. Power system modeling in Modelica for time-domain simulation
US8849626B1 (en) Semantic translation of stateflow diagrams into input/output extended finite automata and automated test generation for simulink/stateflow diagrams
Chen A Petri net design of FPGA-based controller for a class of nuclear I&C systems
Dysko et al. Integrated Modelling Environment: a platform for dynamic protection modelling and advanced functionality
Darvas et al. Generic representation of PLC programming languages for formal verification
CN111474894B (zh) 可变目标plc仿真调试方法、存储介质及功能模块
Zupančič Extension software for real-time control system design and implementation with MATLAB-SIMULINK
Xin et al. Design validation of behavioral VHDL descriptions for arbitrary fault models
Quan et al. MAFSE: A model-based framework for software verification
Capocchi et al. Software test automation using DEVSimPy environment
Oliveira et al. PSP‐UFU: An open‐source, graphical, and multiplatform software for power system studies
Sidhu et al. A technique for generating software models of microprocessor-based relays
Yang et al. On requirements-driven design of distributed smart grid automation control

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant