System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 用户程序的运行方法及装置、系统、非易失性存储介质制造方法及图纸_技高网

用户程序的运行方法及装置、系统、非易失性存储介质制造方法及图纸

技术编号:41267994 阅读:3 留言:0更新日期:2024-05-11 09:23
本申请公开了一种用户程序的运行方法及装置、系统、非易失性存储介质。其中,该方法包括:获取用户程序,其中,用户程序是对图形化编程中的多个功能块进行组合得到的,多个功能块由不同类型的编程语言编写;启动与用户程序对应的用户程序进程;利用用户程序进程解析用户程序包括的多个功能块,并动态加载与多个功能块对应的功能块库文件;利用功能块库文件创建各个功能块对应的实例,并执行多个功能块对应的实例。本申请解决了由于相关技术仅使用一种编程语言编写功能块造成的功能块第三方生态扩展不足或性能不足的技术问题。

【技术实现步骤摘要】

本申请涉及工业控制领域,具体而言,涉及工业控制领域中的智能优化控制领域,涉及一种用户程序的运行方法及装置、系统、非易失性存储介质


技术介绍

1、在工业控制领域中,在对工厂、车间以及核心装置进行智能优化控制时,通常采用由工厂运行专家、研究院专家、核心装置生产厂家和分散控制系统(distributed controlsystem,dcs)厂家等多方专家提供知识后,将上述专家提供的知识通过编码等方式转换为软件功能的方式实现,其中,将上述专家提供的知识转换为软件功能通常是只使用一种高级编程语言实现的,然而,仅使用一种语言编写的功能块存在第三方生态扩展不足功能块性能不足的问题。

2、针对上述的问题,目前尚未提出有效的解决方案。


技术实现思路

1、本申请实施例提供了一种用户程序的运行方法及装置、系统、非易失性存储介质,以至少解决由于相关技术仅使用一种编程语言编写功能块造成的功能块第三方生态扩展不足或性能不足的技术问题。

2、根据本申请实施例的一个方面,提供了一种用户程序的运行方法,包括:获取用户程序,其中,用户程序是对图形化编程中的多个功能块进行组合得到的,多个功能块由不同类型的编程语言编写;启动与用户程序对应的用户程序进程;利用用户程序进程解析用户程序包括的多个功能块,并动态加载与多个功能块对应的功能块库文件;利用功能块库文件创建各个功能块对应的实例,并执行多个功能块对应的实例。

3、可选地,执行多个功能块对应的实例,包括:启动状态机;根据预先设置的时间周期驱动状态机进行状态事件的变迁;通过不同的状态事件对应的预设行为执行多个功能块对应的实例。

4、可选地,在获取用户程序之后,用户程序的运行方法还包括:比对用户程序包括的功能块的引脚与预设功能块库中包括的功能块的引脚;根据比对结果确定用户程序是否为合法的用户程序。

5、可选地,根据比对结果确定用户程序是否为合法的用户程序,包括:如果用户程序包括的功能块的引脚与预设功能块库中包括的功能块的引脚相同,确定用户程序为合法的用户程序,并触发执行启动与用户程序对应的用户程序进程的步骤;如果用户程序包括的功能块的引脚与预设功能块库中包括的功能块的引脚不同,确定用户程序为非法的用户程序,拒绝执行启动与用户程序对应的用户程序进程的步骤。

6、可选地,获取用户程序,包括:通过上位机软件将用户程序由上位机下载到控制器的控制引擎中,其中,上位机用于运行上位机软件;启动与用户程序对应的用户程序进程,包括:通过控制引擎启动用户程序进程。

7、可选地,获取用户程序之前,用户程序的运行方法还包括:将功能块对应的功能块库文件导入到上位机软件,其中,功能块库文件由不同类型的编程语言编写。

8、可选地,用户程序通过以下方法生成:接收目标对象在上位机软件的图形化编程界面上的操作指令,其中,操作指令用于在图形化编程界面上移动多个功能块;响应于操作指令,将操作指令对应的功能块设置在图形化编程界面上的目标位置;在图形化编程界面上将多个功能块对应的引脚通过连线进行关联,得到用户程序。

9、根据本申请实施例的另一方面,还提供了一种用户程序的运行装置,该装置包括:获取模块,用于获取用户程序,其中,用户程序是对图形化编程中的多个功能块进行组合得到的,多个功能块由不同类型的编程语言编写;启动模块,用于启动与用户程序对应的用户程序进程;解析模块,用于利用用户程序进程解析用户程序包括的多个功能块,并动态加载与多个功能块对应的功能块库文件;运行模块,用于利用功能块库文件创建各个功能块对应的实例,并执行多个功能块对应的实例。

10、根据本申请实施例的另一方面,还提供了一种用户程序的运行系统,包括:上位机以及计算机设备,其中,上位机,用于运行上位机软件,上位机软件用于将用户程序由上位机下载到计算机设备的控制引擎中,其中,用户程序是对图形化编程中的多个功能块进行组合得到的,多个功能块由不同类型的编程语言编写;计算机设备,与上位机连接,用于通过控制引擎启动与用户程序对应的用户程序进程,利用用户程序进程解析用户程序包括的多个功能块,并动态加载与多个功能块对应的功能块库文件;利用功能块库文件创建各个功能块对应的实例,并执行多个功能块对应的实例。

11、根据本申请实施例的另一方面,还提供了一种非易失性存储介质,该非易失性存储介质中存储有程序,其中,在程序运行时控制非易失性存储介质所在设备执行以上的用户程序的运行方法。

12、根据本申请实施例的另一方面,还提供了一种电子设备,该电子设备包括:存储器和处理器,处理器用于运行存储在存储器中的程序,其中,程序运行时执行以上的用户程序的运行方法。

13、在本申请实施例中,采用获取用户程序,其中,用户程序是通过图形化编程由多个功能块组合得到的,多个功能块由不同的编程语言编写;启动与用户程序对应的用户程序进程;利用用户程序进程运行用户程序的方式,通过将使用多种编程语言编写的功能块结合,例如,将使用c/c++语言编写的功能块和使用python多种编程语言编写的功能块结合,从而实现了扩展用于智能优化控制的功能块的第三方生态,以及提升了功能块的性能的技术效果,进而解决了由于相关技术仅使用一种编程语言编写功能块造成的功能块第三方生态扩展不足或性能不足技术问题。

本文档来自技高网...

【技术保护点】

1.一种用户程序的运行方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,执行所述多个功能块对应的实例,包括:

3.根据权利要求1所述的方法,其特征在于,在获取用户程序之后,所述方法还包括:

4.根据权利要求3所述的方法,其特征在于,根据比对结果确定所述用户程序是否为合法的用户程序,包括:

5.根据权利要求1所述的方法,其特征在于,

6.根据权利要求5所述的方法,其特征在于,获取用户程序之前,所述方法还包括:

7.根据权利要求6所述的方法,其特征在于,所述用户程序通过以下方法生成:

8.一种用户程序的运行装置,其特征在于,包括:

9.一种用户程序的运行系统,其特征在于,包括:上位机以及计算机设备,其中,

10.一种非易失性存储介质,其特征在于,所述非易失性存储介质中存储有程序,其中,在所述程序运行时控制所述非易失性存储介质所在设备执行权利要求1至7中任意一项所述的用户程序的运行方法。

11.一种电子设备,其特征在于,包括:存储器和处理器,所述处理器用于运行存储在所述存储器中的程序,其中,所述程序运行时执行权利要求1至7中任意一项所述的用户程序的运行方法。

...

【技术特征摘要】

1.一种用户程序的运行方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,执行所述多个功能块对应的实例,包括:

3.根据权利要求1所述的方法,其特征在于,在获取用户程序之后,所述方法还包括:

4.根据权利要求3所述的方法,其特征在于,根据比对结果确定所述用户程序是否为合法的用户程序,包括:

5.根据权利要求1所述的方法,其特征在于,

6.根据权利要求5所述的方法,其特征在于,获取用户程序之前,所述方法还包括:

7.根据权利要求6所述的方法,其特征在于,所述用户...

【专利技术属性】
技术研发人员:柯体杰王方平邱怀宇施江林
申请(专利权)人:浙江中控技术股份有限公司
类型:发明
国别省市:

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

1