System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及软件开发,尤其涉及用于智慧物流系统的自动生成plc程序的方法及系统。
技术介绍
1、在智慧物流系统中,各个环节的设备通过互相配合进行工作,每种设备负责自身所属环节的工作,设备的自动控制通过plc程序来实现;由于在智慧物流系统中,对设备的控制逻辑大多时候比较固定,且逻辑不复杂,控制不同设备的plc程序的不同之处在于,设备本身属性的区别,设备在系统中的位置以及流程中的顺序,因此,在开发人员编写plc程序时,程序整体的相似度和重复度都比较高,只有其中部分内容是根据设备特性定制化的;大量重复的工作降低了编程效率。
技术实现思路
1、本专利技术的目的在于针对现有技术的不足提供用于智慧物流系统的自动生成plc程序的方法及系统,旨在解决开发人员在开发plc程序时进行大量重复工作效率较低的问题。
2、本专利技术通过以下技术方案来实现上述目的:
3、一种用于智慧物流系统的自动生成plc程序的方法,包括:
4、导入步骤:导入预先编写的程序模板、动作条件文档、设备清单及流程清单;
5、提取步骤:根据所述设备清单提取关于设备属性的第一信息,根据所述流程清单提取关于设备与系统中其他设备的协作关系的第二信息;
6、拼接步骤:根据所述第一信息和所述第二信息从所述程序模板中分别对应选择对应当前设备的第一程序模块和对应当前系统的第二程序模块,再对所述第一程序模块中不适应当前设备的部分代码和所述第二程序模块不适应当前系统的部分代码进行修改,并按
7、生成步骤:根据所述动作条件文档对所述程序草稿中的程序执行条件进行修改得到plc程序文档,按照所述plc程序文档生成plc程序。
8、进一步的,所述导入步骤中,所述动作条件文档包括:
9、用于表示设备的特定行为对应的触发条件,
10、判断所述触发条件是否被触发的判断语句,
11、执行所述特定行为的执行语句;
12、所述执行语句与所述判断语句按照预定逻辑循环执行。
13、进一步的,所述预定逻辑包括:
14、在所述判断语句判断所述触发条件被满足时,所述执行语句被执行。
15、进一步的,所述导入步骤中,
16、所述设备清单包括独立设备和所述独立设备的硬件属性;
17、所述流程清单包括所述智慧物流系统中的独立设备、独立设备的连接关系及独立设备的配合关系。
18、进一步的,所述提取步骤包括:
19、提取第一信息子步骤:所述第一信息包括独立设备的硬件属性,根据所述设备清单,以独立设备为单位创建设备对象,将所述独立设备的硬件属性加入所述设备对象的属性列表;
20、提取第二信息子步骤:所述第二信息包括所述独立设备在所述智慧物流系统中与其他独立设备配合的关系信息,创建关系对象,将所述关系对象加入到所述设备对象的属性列表中,根据所述流程清单获取所述独立设备的所处区域、与所述独立设备直接连接的其他独立设备的地址、所述独立设备的运行模式及优先级。
21、进一步的,所述拼接步骤包括:
22、选择模块子步骤:所述第一信息包括独立设备的硬件属性,从所述程序模板中选择与所述硬件属性适配的第一程序模块,所述第二信息包括所述独立设备在所述智慧物流系统中与其他独立设备配合的关系信息,从所述程序模板中选择与所述关系信息适配的第二程序模块;
23、拼接草稿子步骤:使用所述第一信息替换所述第一程序模块中对应的所述硬件属性的信息,按照所述关系信息设定所述第一程序模块的执行顺序,和所述第二程序模块对所述第一程序模块的调用关系,按照所述执行顺序和所述调用关系将所述第一程序模块和所述第二程序模块进行拼接得到程序草稿。
24、进一步的,所述生成步骤包括:
25、条件替换子步骤:按照所述第一信息和所述第二信息,从所述动作条件文档中选择触发条件,使用所述触发条件替换所述程序草稿中与所述第一信息、所述第二信息对应的程序执行条件得到程序文档;
26、生成程序子步骤:识别所述程序文档,并按照所述程序文档生成plc程序;
27、语法检查子步骤:预先设定程序所采用的编程语言的语法规则,遍历所述plc程序的每一行与所述语法规则匹配,对所述拼接后的程序进行语法纠错;
28、预编译子步骤:建立设备对应的逻辑设备,将所述plc程序预编译后执行,控制所述逻辑设备,若所述逻辑设备正确工作,则判定所述plc程序完整可运行,并将所述plc程序的源文件输出。
29、一种用于智慧物流系统的自动生成plc程序的系统,应用上述的用于智慧物流系统的自动生成plc程序的方法,包括:
30、导入模块:导入预先编写的程序模板、动作条件文档、设备清单及流程清单;
31、提取模块:根据设备清单提取第一信息,结合流程清单提取第二信息;
32、拼接模块:根据所述第一信息和所述第二信息从所述程序模板中分别对应选择第一程序模块和第二程序模块,再对所述第一程序模块和所述第二程序模块进行信息替换,并按照所述第一信息和将要生成的plc程序的执行逻辑进行拼接得到程序草稿;
33、生成模块:根据所述动作条件文档对所述程序草稿中的程序执行条件进行修改得到plc程序文档,按照所述plc程序文档生成plc程序。
34、一种计算机设备,包括:
35、至少一个处理器和存储器;
36、所述存储器存储计算机执行指令;
37、所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行上述的用于智慧物流系统的自动生成plc程序的方法及系统。
38、一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当所述计算机执行指令被执行时,实现上述的用于智慧物流系统的自动生成plc程序的方法及系统。
39、本专利技术的有益效果是:本专利技术通过先收集plc程序所需的要素:预先编写的程序模板、设备清单、流程清单及动作条件文档,以设备清单和流程清单为依据从程序模板中选择需要的程序模块,并进行拼接和调整得到程序草稿,再根据动作条件文档将程序草稿中对应的模块执行条件替换得到程序文档,最后按照程序文档生成plc程序;进而实现了根据设备和需求自动生成plc程序的技术效果,减少了程序开发人员的重复工作,提高了效率。
本文档来自技高网...【技术保护点】
1.一种用于智慧物流系统的自动生成PLC程序的方法,其特征在于,包括:
2.根据权利要求1所述的用于智慧物流系统的自动生成PLC程序的方法,其特征在于,所述导入步骤中,所述动作条件文档包括:
3.根据权利要求2所述的用于智慧物流系统的自动生成PLC程序的方法,其特征在于,所述预定逻辑包括:
4.根据权利要求1所述的用于智慧物流系统的自动生成PLC程序的方法,其特征在于,所述导入步骤中,
5.根据权利要求1所述的用于智慧物流系统的自动生成PLC程序的方法,其特征在于,所述提取步骤包括:
6.根据权利要求1所述的用于智慧物流系统的自动生成PLC程序的方法,其特征在于,所述拼接步骤包括:
7.根据权利要求1所述的用于智慧物流系统的自动生成PLC程序的方法,其特征在于,所述生成步骤包括:
8.一种用于智慧物流系统的自动生成PLC程序的系统,应用权利要求1-权利要求7所述的用于智慧物流系统的自动生成PLC程序的方法,其特征在于,包括:
9.一种计算机设备,其特征在于,包括:
10.一
...【技术特征摘要】
1.一种用于智慧物流系统的自动生成plc程序的方法,其特征在于,包括:
2.根据权利要求1所述的用于智慧物流系统的自动生成plc程序的方法,其特征在于,所述导入步骤中,所述动作条件文档包括:
3.根据权利要求2所述的用于智慧物流系统的自动生成plc程序的方法,其特征在于,所述预定逻辑包括:
4.根据权利要求1所述的用于智慧物流系统的自动生成plc程序的方法,其特征在于,所述导入步骤中,
5.根据权利要求1所述的用于智慧物流系统的自动生成plc程序的方法,其特征在于,所述提取步骤包括:
6.根据权利要求1所述的用于智慧...
【专利技术属性】
技术研发人员:邵健锋,李金水,曾巍巍,何川临,
申请(专利权)人:深圳市今天国际软件技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。