一种针对新能源发电数据计算的Lua脚本生成方法及系统技术方案

技术编号:36703348 阅读:27 留言:0更新日期:2023-03-01 09:22
一种针对新能源发电数据计算的Lua脚本生成方法,包括把针对新能源发电数据的特定计算功能封装形成Lua算子、组成算法算子库;通过组织算法算子库中算子间关联关系及计算顺序,形成计算模型;依据预定规则对所述计算模型文件进行转换,自动生成可被调用的Lua脚本文件。本发明专利技术的技术方案可通过组态编辑等免编程开发方式完成具有特定功能的Lua脚本的开发和生成,提升了脚本开发效率;将各类特定计算功能的脚本代码封装成为各类算子,复用性强,降低了新能源发电业务数据计算开发和维护成本。了新能源发电业务数据计算开发和维护成本。了新能源发电业务数据计算开发和维护成本。

【技术实现步骤摘要】
一种针对新能源发电数据计算的Lua脚本生成方法及系统


[0001]本专利技术涉及新能源数据
,具体涉及一种针对新能源发电数据计算的Lua脚本生成方法及系统。

技术介绍

[0002]随着新能源发电领域数字化和智能化的发展,在生产过程时序数据的计算和处理领域,业务需求越来越复杂,数据计算的复杂度也日益增加。
[0003]现有技术中,通常采用脚本语言完成数据处理和计算逻辑的编写,开发不同的脚本代码完成不同的计算逻辑以满足不同的计算需求。Lua是由标准C编写而成的小巧的脚本语言,几乎在所有操作系统和平台上都可以编译运行,因此被广泛应用在新能源发电的数据处理与计算领域。
[0004]采用Lua脚本完成发电数据的计算处理,通常存在以下问题:(1)开发成本高难度大,开发人员需充分了解Lua语法才能完成相关开发;(2)开发效率低,开发人员需要用脚本语言开发完成各类功能函数的开发以及对函数的调用关系开发才能完成特定功能的计算逻辑开发;(3)开发复用性较差,不同计算逻辑各自为战,类似功能的函数或代码也分别编写在不同脚本中,增加了计算逻辑的维护成本。
[0005]现有技术文件1(104868832A)公开了一种Lua脚本生成方法、装置、终端及计算机可读介质。该方法包括:获取目标Lua脚本对应的各子脚本的加载路径;根据加载路径获取各子脚本,并根据预设的组合方式对各子脚本进行组合,生成目标Lua脚本。现有技术文件1的不足之处在于各个子脚本是预设好的,在最终生成的Lua文件中只是根据预设顺序进行存放,子脚本之间无法进行数据交互,无法完成复杂计算功能。

技术实现思路

[0006]为解决现有技术中存在的不足,本专利技术提供一种针对新能源发电数据计算的Lua脚本生成方法,以解决针对新能源发电数据计算的Lua脚本开发难度大、开发效率低、复用性差等技术问题。
[0007]本专利技术采用如下的技术方案。
[0008]一种针对新能源发电数据计算的Lua脚本生成方法,包括:
[0009]步骤1,把针对新能源发电数据的特定计算功能封装形成Lua算子,组成算法算子库;
[0010]步骤2,通过组织算法算子库中算子间关联关系及计算顺序,形成计算模型;
[0011]步骤3,依据预定规则对存储计算模型的计算模型文件进行转换,自动生成可被调用的Lua脚本文件。
[0012]优选地,步骤1中所述特定计算功能包括:通用计算和业务计算;
[0013]通用计算用于完成数据IO读写,历史数据统计,维度类统计;
[0014]业务计算用于完成新能源发电业务各类专业计算功能。
[0015]优选地,步骤1中,所述Lua算子对应独立的Lua函数,存在于独立的Lua脚本文件,用于完成特定计算功能;
[0016]每个算子有唯一标识作为区分,标识采用Lua函数名;
[0017]若干算子的集合形成算法算子库;
[0018]算法算子库中各算子相互独立;
[0019]算法算子库中算子按照功能进行分类组织。
[0020]优选地,步骤2具体包括:
[0021]步骤2.1,根据特定计算功能选取一个或者多个算子添加到计算模型;
[0022]步骤2.2,组织各个算子之间输入参数和输出值之间的关联关系,算子的输入参数来自于另外算子的输出值;也可把手动输入的常量值输出到算子的输入参数;算子的输出值可输出至多个算子的输入参数;
[0023]步骤2.3,计算模型中的各个算子给定计算顺序,各算子及其相互关联关系,执行顺序组合形成计算模型。
[0024]优选地,计算模型使用计算模型文件进行存储,计算模型文件包括:选取的算子,算子间关联关系,算子计算顺序;
[0025]计算模型文件采用XML格式进行存储;
[0026]同一个计算模型文件中各算子可被多次引用,对多个实例采用算子实例名予以区分。
[0027]优选地,计算模型有一个或多个输入参数,采用形参名予以区分;
[0028]计算模型有一个或多个输出值,采用形式输出名予以区分;
[0029]可把计算模型作为特殊类别的算子,参与计算模型的编辑和开发。
[0030]优选地,步骤3中预定规则包括:使用计算模型名称作为Lua函数名,计算模型的输入参数作为Lua函数参数,自动生成对应的Lua函数框架;
[0031]使用计算模型中算子,算子间关联关系,算子计算顺序,自动生成对应的Lua函数体;
[0032]若干个计算模型自动生成多个Lua函数,多个Lua函数组合形成最终的Lua脚本文件;
[0033]最终的Lua脚本文件中自动加入计算模型中包含算子所对应的Lua脚本文件的引用。
[0034]对计算模型中的算子按照算子名称生成调用所对应Lua函数的代码;
[0035]按照计算模型中算子的计算顺序依次生成调用代码;
[0036]算子采用算子实例名称和算子形式输出值标识组合形成的名称作为唯一标识,来标定该算子所调用函数的实际返回值;
[0037]算子采用输出到它的算子的函数实际返回值的标识作为唯一标识,来标定该算子所调用函数的实际参数值。
[0038]一种针对新能源发电数据计算的Lua脚本生成系统,包括:算法算子库模块,计算模型组态模块,脚本转换生成模块,其中:
[0039]算法算子库模块,用于管理各类算子,完成各类通用计算和业务计算功能;
[0040]计算模型组态模块,用于选取算子、指定算子间关联关系、以及算子计算顺序,构
建计算模型;
[0041]脚本转换生成模块,用于依据预定规则对计算模型进行转换,自动生成Lua脚本文件。
[0042]一种终端,包括处理器及存储介质;其中:
[0043]所述存储介质用于存储指令;
[0044]所述处理器用于根据所述指令进行操作以执行一种针对新能源发电数据计算的Lua脚本生成方法的步骤。
[0045]计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现一种针对新能源发电数据计算的Lua脚本生成方法的步骤。
[0046]本专利技术的有益效果在于,与现有技术相比,基于预先封装的算法算子库中的各类算子,通过组织算子间关联关系及计算顺序等形成计算模型,最终依据预定规则自动转换生成Lua脚本文件。
[0047]可通过组态编辑等免编程开发方式完成具有特定功能的Lua脚本的开发和生成,计算开发人员无需深层了解Lua脚本语法和细节,提升了脚本开发效率。
[0048]将各种计算功能封装为算子,在组成计算模型时允许指定算子之间进行数据交互,允许指定算子采取任意的执行顺序,可用来完成复杂的计算脚本的搭建和生成。复用性强,降低了新能源业务生产数据计算开发和维护成本。
附图说明
[0049]图1为本申请实施例中一种针对新能源发电数据计算的Lua脚本生成方法的流程图。
[0050]图2为本申请实施例中本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种针对新能源发电数据计算的Lua脚本生成方法,其特征在于,所述方法包括:步骤1,把针对新能源发电数据的特定计算功能封装形成Lua算子,组成算法算子库;步骤2,通过组织算法算子库中算子间关联关系及计算顺序,形成计算模型;步骤3,依据预定规则对存储计算模型的计算模型文件进行转换,自动生成可被调用的Lua脚本文件。2.根据权利要求1所述的一种针对新能源发电数据计算的Lua脚本生成方法,其特征在于:步骤1中所述特定计算功能包括:通用计算和业务计算;通用计算用于完成数据IO读写,历史数据统计,维度类统计;业务计算用于完成新能源发电业务各类专业计算功能。3.根据权利要求1所述的一种针对新能源发电数据计算的Lua脚本生成方法,其特征在于:步骤1中,所述Lua算子对应独立的Lua函数,存在于独立的Lua脚本文件,用于完成特定计算功能;每个算子有唯一标识作为区分,标识采用Lua函数名;若干算子的集合形成算法算子库;算法算子库中各算子相互独立;算法算子库中算子按照功能进行分类组织。4.根据权利要求1所述的一种针对新能源发电数据计算的Lua脚本生成方法,其特征在于:步骤2具体包括:步骤2.1,根据特定计算功能选取一个或者多个算子添加到计算模型;步骤2.2,组织各个算子之间输入参数和输出值之间的关联关系,算子的输入参数来自于另外算子的输出值;也可把手动输入的常量值输出到算子的输入参数;算子的输出值可输出至多个算子的输入参数;步骤2.3,计算模型中的各个算子给定计算顺序,各算子及其相互关联关系,执行顺序组合形成计算模型。5.根据权利要求1或4所述的一种针对新能源发电数据计算的Lua脚本生成方法,其特征在于:计算模型使用计算模型文件进行存储,计算模型文件包括:选取的算子,算子间关联关系,算子计算顺序;计算模型文件采用XML格式进行存储;同一个计算模型文件中各算子可被多次引用,对多个实例采用算子实例名予以区分。6.根据权利要求1或4所述的一种针对新能源发电数据计算的Lua脚本生成方法,其特征在于:计算模型有一个或多个输入参数,采用形参名予以区分;计算模型有一个或多个输出值,...

【专利技术属性】
技术研发人员:程睿君王思耕吉云吴菲党明锐胡开斌王天沅张城城李朝飞武高峰代宁徐遥
申请(专利权)人:国能信控互联技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1