梯形图程序的自动生成方法及其系统、存储介质与流程

摘要: 本申请涉及工业自动化控制,尤其是涉及一种梯形图程序的自动生成方法及其系统、存储介质。背景技术:1、在工业自动化控制领域,可编程逻辑控制器是实现设备控制的核心装置...
梯形图程序的自动生成方法及其系统、存储介质与流程

本申请涉及工业自动化控制,尤其是涉及一种梯形图程序的自动生成方法及其系统、存储介质。

背景技术:

1、在工业自动化控制领域,可编程逻辑控制器是实现设备控制的核心装置,其控制程序长期依赖编程人员手工编写。随着人工智能技术的发展,根据自然语言描述的控制需求自动生成可编程逻辑控制器程序的方案逐渐出现,能够在一定程度上减轻编程人员的编写负担。

2、然而,自动化控制需求往往涉及多个输入信号之间的配合,梯形图程序中需包含动作时序以及异常工况处理的逻辑,目前自动生成的梯形图程序中容易出现逻辑缺陷,而相关方案对生成结果的校验手段有限,当生成结果存在错误时,难以定位错误产生于需求理解、逻辑规划还是代码实现环节,往往只能通过整体重新生成的方式进行修正,修正后的程序仍可能引入新的缺陷,程序的正确性难以保障。

3、基于此,如何提高自动生成的可编程逻辑控制程序的正确性,已经成为业内一个有实际意义研究方向。

技术实现思路

1、本申请旨在至少解决现有技术中存在的技术问题之一。为此,本申请提出一种梯形图程序的自动生成方法及其系统、存储介质,能够提高可编程逻辑控制程序的自动生成正确性。

2、根据本申请的第一方面实施例的梯形图程序的自动生成方法,包括:

3、获取针对可编程逻辑控制器的控制需求信息;

4、基于所述控制需求信息,生成符合指令表编写规范的指令逻辑表征信息;其中,所述指令逻辑表征信息包括匹配于所述控制需求信息的触点逻辑、线圈驱动关系以及执行时序;

5、基于所述指令逻辑表征信息,生成梯形图程序;

6、基于所述指令逻辑表征信息与所述梯形图程序,生成输入时间线以及与所述输入时间线对应的多个校验断言;其中,所述输入时间线用于按时间顺序记录各输入信号的状态变化,各所述校验断言用于表征在对应的观察时刻目标软元件的预期状态;

7、以所述输入时间线为输入激励,对所述梯形图程序模拟可编程逻辑控制器的循环扫描,得到各采样时刻的状态快照;

8、将各所述校验断言分别与对应的所述状态快照进行比对,得到验证结果;

9、响应于所述验证结果表征验证失败,根据比对存在差异的所述校验断言确定失败归因、和对应于所述失败归因的归因对象;

10、根据所述失败归因,对所述归因对象进行修订处理;

11、基于修订处理后的所述归因对象,更新所述验证结果;

12、响应于更新后的所述验证结果表征验证通过,将验证通过时的所述梯形图程序确定为目标梯形图程序。

13、根据本申请的第二方面实施例的梯形图程序的自动生成系统,应用于执行本申请的第一方面实施例任一项所述的方法,包括:

14、需求获取模块,用于获取针对可编程逻辑控制器的控制需求信息;

15、规划智能体,用于基于所述控制需求信息,生成符合指令表编写规范的指令逻辑表征信息;其中,所述指令逻辑表征信息包括匹配于所述控制需求信息的触点逻辑、线圈驱动关系以及执行时序;

16、编码智能体,用于基于所述指令逻辑表征信息,生成梯形图程序;

17、测试生成智能体,用于基于所述指令逻辑表征信息与所述梯形图程序,生成输入时间线以及与所述输入时间线对应的多个校验断言;其中,所述输入时间线用于按时间顺序记录各输入信号的状态变化,各所述校验断言用于表征在对应的观察时刻目标软元件的预期状态;

18、质量验证智能体,用于以所述输入时间线为输入激励,对所述梯形图程序模拟可编程逻辑控制器的循环扫描,得到各采样时刻的状态快照;将各所述校验断言分别与对应的所述状态快照进行比对,得到验证结果;以及,响应于所述验证结果表征验证失败,根据比对存在差异的所述校验断言确定失败归因、和对应于所述失败归因的归因对象;

19、编排智能体,用于根据所述失败归因,调度对应的智能体对所述归因对象进行修订处理,并触发所述质量验证智能体基于修订处理后的所述归因对象更新所述验证结果;以及,响应于更新后的所述验证结果表征验证通过,将验证通过时的所述梯形图程序确定为目标梯形图程序。

20、第三方面,本申请实施例提供了一种计算机可读存储介质,所述存储介质存储有程序,所述程序被处理器执行实现如本申请第一方面实施例中任意一项所述的梯形图程序的自动生成方法。

21、根据本申请实施例的梯形图程序的自动生成方法及其系统、存储介质,至少具有如下有益效果:

22、本申请先基于控制需求信息,生成符合指令表编写规范的指令逻辑表征信息,再基于指令逻辑表征信息生成梯形图程序,使触点逻辑、线圈驱动关系以及执行时序在程序生成之前即被确定,需求理解与代码实现被分解为前后衔接的两个环节并各自留下可核查的产物,校验发现错误时能够沿两层产物回溯错误的来源环节;输入时间线与校验断言基于同一份指令逻辑表征信息与梯形图程序生成,构成可机器执行的验证依据,以输入时间线为输入激励模拟可编程逻辑控制器的循环扫描,得到各采样时刻的状态快照并与各校验断言逐条比对,使梯形图程序的动态行为在交付前即被实际执行和检验,逻辑缺陷的存在与否具有明确的判定依据;验证失败时,根据比对存在差异的校验断言确定失败归因以及对应的归因对象,修订处理作用于归因对象,指令逻辑表征信息、梯形图程序、输入时间线与校验断言中未涉及错误的部分保持不变,避免整体重新生成破坏已有正确内容并引入新的缺陷;修订处理后基于修订处理后的归因对象更新验证结果,并在更新后的验证结果表征验证通过时,将验证通过时的梯形图程序确定为目标梯形图程序,每一次修订的正确性均由新一轮的模拟扫描与断言比对实际确认,最终交付的目标梯形图程序以验证通过为前提,从而提高可编程逻辑控制器程序的生成正确性。

23、本申请的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。

1.一种梯形图程序的自动生成方法,其特征在于,包括:

2.根据权利要求1所述的梯形图程序的自动生成方法,其特征在于,所述基于所述控制需求信息,生成符合指令表编写规范的指令逻辑表征信息,包括:

3.根据权利要求2所述的梯形图程序的自动生成方法,其特征在于,所述按照所述触点逻辑、所述线圈驱动关系以及所述执行时序,生成指令表程序段落之后,所述方法还包括对所述指令表程序段落进行合同校验,得到合同校验结果,具体包括:

4.根据权利要求2所述的梯形图程序的自动生成方法,其特征在于,所述按照所述触点逻辑、所述线圈驱动关系以及所述执行时序,生成指令表程序段落,包括:

5.根据权利要求4所述的梯形图程序的自动生成方法,其特征在于,所述按照所述线圈驱动关系以及各所述元件地址对应的所述指令驱动范式,生成各所述元件地址对应的所述驱动类型指令,包括:

6.根据权利要求2所述的梯形图程序的自动生成方法,其特征在于,所述按照所述触点逻辑、所述线圈驱动关系以及所述执行时序,生成指令表程序段落,包括:

7.根据权利要求1所述的梯形图程序的自动生成方法,其特征在于,所述基于所述指令逻辑表征信息与所述梯形图程序,生成输入时间线以及与所述输入时间线对应的多个校验断言,包括生成与所述输入时间线对应的多个所述校验断言,具体包括:

8.根据权利要求1所述的梯形图程序的自动生成方法,其特征在于,所述根据所述失败归因,对所述归因对象进行修订处理,包括:

9.一种梯形图程序的自动生成系统,其特征在于,应用于执行权利要求1至8任一项所述的方法,包括:

10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时,实现如权利要求1至8任一项所述的梯形图程序的自动生成方法。