一种算法开发平台、算法开发方法及计算机可读存储介质技术

技术编号:21547416 阅读:23 留言:0更新日期:2019-07-06 21:11
本申请公开了一种算法开发平台、算法开发方法及计算机可读存储介质,平台包括组态侧开发单元和运行侧开发单元,组态侧开发单元用于接收输入的第三方算法的属性参数,根据输入的属性参数生成算法模板文件及相应的图元对象;生成包含该图元对象的组态文件及与组态文件相应的二进制文件;运行侧开发单元用于加载第三方算法的动态链接库;解析二进制文件,获取二进制文件中的变量的实时值,调用二进制文件中包含的第三方算法的动态链接库实现计算流程。本申请通过在组态侧开发时生成算法模板文件及相应的图元对象,在运行侧开发时调用第三方算法的动态链接库实现计算流程,实现了第三方算法和系统标准算法混合组态和实时同步,提高了控制精度。

An Algorithmic Development Platform, Algorithmic Development Method and Computer Readable Storage Media

【技术实现步骤摘要】
一种算法开发平台、算法开发方法及计算机可读存储介质
本专利技术涉及数据处理
,具体涉及一种算法开发平台、算法开发方法及计算机可读存储介质。
技术介绍
在智能电厂的建设过程中,传统分布式控制系统(DistributedControlSystem,DCS)中的控制器的标准算法已经无法满足应用要求,控制器需要结合使用现有的标准算法和各专业第三方的优化控制算法进行优化控制。如图1所示,目前通用的做法是将第三方的优化控制算法完全外挂在DCS外,采用通讯的方式实现数据的读写,这种方案的缺点是优化控制算法与DCS系统内的标准算法完全异步,影响控制精度。
技术实现思路
本专利技术实施例提供了一种算法开发平台、算法开发方法及计算机可读存储介质,能够提高系统的控制精度。本专利技术实施例的技术方案是这样实现的:本专利技术实施例提供了一种算法开发平台,包括组态侧开发单元和运行侧开发单元,其中:所述组态侧开发单元,用于接收输入的第三方算法的属性参数,根据输入的属性参数,生成算法模板文件及与所述算法模板文件相应的图元对象;生成包含所述图元对象的组态文件及与所述组态文件相应的二进制文件;所述运行侧开发单元,用于加载第三方算法的动态链接库;解析所述二进制文件,获取所述二进制文件中的变量的实时值,调用所述二进制文件中包含的第三方算法的动态链接库实现计算流程。在一实施例中,所述属性参数包括以下至少之一:算法名、算法参数、算法输入变量、算法输出变量。在一实施例中,所述组态侧开发单元包括模板定义模块、图元生成模块、组态编译模块,其中:模板定义模块,用于接收输入的第三方算法的属性参数,根据输入的属性参数,生成算法模板文件;图元生成模块,用于对算法模板文件进行解析,生成与所述算法模板文件属性参数一致的图元对象;组态编译模块,用于将多个图元对象组成的图形化组态文件,编译成二进制文件。在一实施例中,所述组态侧开发单元还包括:模板解析模块,其中:模板解析模块,用于生成并存储用于解析所述算法模板文件的动态链接库。在一实施例中,所述运行侧开发单元包括文件解析模块、影子算法库、扩展算法库,其中:文件解析模块,用于解析所述二进制文件,获取所述二进制文件中的变量的实时值,调用影子算法库中的标准算法并执行;影子算法库,用于存储一个或多个标准算法的动态链接库,所述标准算法执行时,通过对扩展算法库中的第三方算法进行变量传递和函数调用,实现计算流程;扩展算法库,用于存储按照预设的接口标准封装的一个或多个第三方算法的动态链接库。本专利技术实施例还提供了一种算法开发方法,包括:在组态侧开发时,接收输入的第三方算法的属性参数,根据输入的属性参数,生成算法模板文件及与所述算法模板文件相应的图元对象;生成包含所述图元对象的组态文件及与所述组态文件相应的二进制文件;在运行侧开发时,加载第三方算法的动态链接库;解析所述二进制文件,获取所述二进制文件中的变量的实时值,调用所述二进制文件中包含的第三方算法的动态链接库实现计算流程。在一实施例中,在所述生成包含所述图元对象的组态文件及与所述组态文件相应的二进制文件之前,所述方法还包括:生成并存储用于解析所述算法模板文件的动态链接库。在一实施例中,所述调用所述二进制文件中包含的第三方算法的动态链接库实现计算流程,包括:调用影子算法库中的标准算法并执行,所述影子算法库包括一个或多个标准算法的动态链接库;所述标准算法执行时,通过对扩展算法库中的第三方算法进行变量传递和函数调用,实现计算流程,所述扩展算法库包括按照预设的接口标准封装的一个或多个第三方算法的动态链接库。本专利技术实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现如以上任一所述的算法开发方法的步骤。本专利技术实施例还提供了一种算法开发平台,包括处理器及存储器,所述处理器用于执行所述存储器中存储的程序,以实现如以上任一所述的算法开发方法的步骤。本专利技术实施例的技术方案,具有如下有益效果:本专利技术实施例提供的算法开发平台、算法开发方法及计算机可读存储介质,通过在组态侧开发时根据输入的第三方算法的属性参数,生成相应的图元对象,在运行侧开发时,调用相应的第三方算法的动态链接库实现计算流程,实现了第三方算法和系统标准算法混合组态,使得第三方算法与系统标准算法能够实时同步,提高了系统的控制精度。附图说明此处所说明的附图用来提供对本专利技术的进一步理解,构成本申请的一部分,本专利技术的示意性实施例及其说明用于解释本专利技术,并不构成对本专利技术的不当限定。在附图中:图1为相关技术中的一种DCS系统的优化控制算法的运行模式示意图;图2为本专利技术实施例的一种算法开发平台的结构示意图;图3为本专利技术实施例的另一种算法开发平台的结构示意图;图4为本专利技术实施例的一种DCS系统的优化控制算法的运行模式示意图;图5为本专利技术实施例的一种算法开发方法的流程示意图。具体实施方式为使本专利技术的目的、技术方案和优点更加清楚明白,下文中将结合附图对本专利技术的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。如图2所示,根据本专利技术实施例的一种算法开发平台,包括组态侧开发单元201和运行侧开发单元202,其中:所述组态侧开发单元201,用于接收输入的第三方算法的属性参数,根据输入的属性参数,生成算法模板文件及与所述算法模板文件相应的图元对象;生成包含所述图元对象的组态文件及与所述组态文件相应的二进制文件;所述运行侧开发单元202,用于加载第三方算法的动态链接库;解析所述二进制文件,获取所述二进制文件中的变量的实时值,调用所述二进制文件中包含的第三方算法的动态链接库实现计算流程。在本专利技术的一实施例中,所述属性参数可以包括以下至少之一:算法名、算法参数、算法输入变量、算法输出变量。在本专利技术的一实施例中,所述第三方算法可以为第三方实现的优化控制算法。在本专利技术的一实施例中,如图3所示,所述组态侧开发单元201包括模板定义模块2011、图元生成模块2012、组态编译模块2013,其中:模板定义模块2011,用于接收输入的第三方算法的属性参数,根据输入的属性参数,生成算法模板文件;图元生成模块2012,用于对算法模板文件进行解析,生成与所述算法模板文件属性参数一致的图元对象;组态编译模块2013,用于将多个图元对象组成的图形化组态文件,编译成二进制文件。需要说明的是,所述模板定义模块2011为设计算法模板文件提供界面程序,用户无需知道具体的算法模板文件的格式,只需要在界面程序里选择用于存放算法模板文件的文件名,按照具体算法的要求,定义好算法的常量、输入变量、输出变量,保存文件即可。所述图元生成模块2012从算法模板文件中获取算法的常量、输入变量、输出变量,将输入变量、输出变量定义成算法的输入输出管脚,常量内置为算法的属性,自动生成与系统标准算法一致的算法。在本专利技术的一实施例中,如图3所示,所述组态侧开发单元201还包括:模板解析模块2014,其中:模板解析模块2014,用于生成并存储用于解析所述算法模板文件的动态链接库(DynamicLinkLibrary,DLL)。通过模板解析模块2014提供解析算法模板文件的DLL,所述图元生成模块2本文档来自技高网...

【技术保护点】
1.一种算法开发平台,其特征在于,包括组态侧开发单元和运行侧开发单元,其中:所述组态侧开发单元,用于接收输入的第三方算法的属性参数,根据输入的属性参数,生成算法模板文件及与所述算法模板文件相应的图元对象;生成包含所述图元对象的组态文件及与所述组态文件相应的二进制文件;所述运行侧开发单元,用于加载第三方算法的动态链接库;解析所述二进制文件,获取所述二进制文件中的变量的实时值,调用所述二进制文件中包含的第三方算法的动态链接库实现计算流程。

【技术特征摘要】
1.一种算法开发平台,其特征在于,包括组态侧开发单元和运行侧开发单元,其中:所述组态侧开发单元,用于接收输入的第三方算法的属性参数,根据输入的属性参数,生成算法模板文件及与所述算法模板文件相应的图元对象;生成包含所述图元对象的组态文件及与所述组态文件相应的二进制文件;所述运行侧开发单元,用于加载第三方算法的动态链接库;解析所述二进制文件,获取所述二进制文件中的变量的实时值,调用所述二进制文件中包含的第三方算法的动态链接库实现计算流程。2.根据权利要求1所述的算法开发平台,其特征在于,所述属性参数包括以下至少之一:算法名、算法参数、算法输入变量、算法输出变量。3.根据权利要求1所述的算法开发平台,其特征在于,所述组态侧开发单元包括模板定义模块、图元生成模块、组态编译模块,其中:模板定义模块,用于接收输入的第三方算法的属性参数,根据输入的属性参数,生成算法模板文件;图元生成模块,用于对算法模板文件进行解析,生成与所述算法模板文件属性参数一致的图元对象;组态编译模块,用于将多个图元对象组成的图形化组态文件,编译成二进制文件。4.根据权利要求3所述的算法开发平台,其特征在于,所述组态侧开发单元还包括:模板解析模块,其中:模板解析模块,用于生成并存储用于解析所述算法模板文件的动态链接库。5.根据权利要求1所述的算法开发平台,其特征在于,所述运行侧开发单元包括文件解析模块、影子算法库、扩展算法库,其中:文件解析模块,用于解析所述二进制文件,获取所述二进制文件中的变量的实时值,调用影子算法库中的标准算法并执行;影子算法库,用于存储一个或多个标准算法的动态链接库,所述标准算法执行时,通过对扩展算法库中的第三方...

【专利技术属性】
技术研发人员:吕大军李文王兆丰苏玉琰王朝辉安平陈飞
申请(专利权)人:北京国电智深控制技术有限公司
类型:发明
国别省市:北京,11

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

1