一种配置算法执行顺序号的方法及装置制造方法及图纸

技术编号:7026684 阅读:195 留言:1更新日期:2012-04-11 18:40
一种配置算法执行顺序号的方法及装置;方法包括:a、提取并保存基本信息;b、找到所有第一、第二算法,配置执行顺序号;c、遍历前一半算法的每个输出并执行d,完成后执行e;d、对于输出连线不为跟踪线且不处于连接循环中的输出,如该输出算法的执行顺序号大于本算法,且在大于本算法的输出算法中最小,是则将该输出算法和本算法的执行顺序号互换;e、遍历各算法的每个输入并执行f;完成后结束;f、对于输入连线不为跟踪线的输入,如果本算法的执行顺序号大于该输入的输入算法,并且该输入算法的执行顺序号在所有执行顺序号小于本算法的输入算法中最大,则将该输入算法的执行顺序号与本算法的互换。

【技术实现步骤摘要】

本专利技术设计工业控制领域,尤其涉及一种配置算法执行顺序号的方法及装置
技术介绍
算法执行顺序号智能排序是EDPF NT+系统的控制组态工具中页面配置模块的一项重要功能。算法执行顺序号是算法的属性之一,保存在算法记录中,用于记录某个算法在 SAMA图中第几个被运算。一张SAMA图(控制逻辑图)中算法的算法执行顺序号从1开始顺序分配,每个算法都必须有连续、唯一的算法执行顺序号,当该SAMA图在DPU(分散处理单元)中运行时,将根据算法执行顺序号依次进行算法运算。算法执行顺序号是在页面配置操作中指定;页面配置模块所要做的操作包括1、 给SAMA图分配域号、站号、页号;2、指定SAMA图在控制区中的执行顺序;3、指定SAMA图可被哪些设备操作;4、给算法分配算法名;5、为算法分配算法执行顺序号。目前,算法执行顺序号默认的是以算法被增加到SAMA图上的顺序号,即算法是第几个被增加到SAMA图中的,算法执行顺序号就是多少,但通常这个顺序号并不准确,需要人工指定,即在页面配置属性对话框中,通过在算法排序对话框中上下移动算法来指定算法的执行顺序号。这种模式并不方便,也增加了页面配置操作的耗时。
技术实现思路
本专利技术要解决的技术问题是提供一种配置算法执行顺序号的方法及装置,可以在页面配置的过程中自动为算法配置执行顺序号,提高了页面配置操作的效率。为了解决上述问题,本专利技术提供了一种配置算法执行顺序号的方法,包括a、提取并保存控制逻辑图中算法的基本信息,包括算法的索引、各算法的输入/ 输出个数、输入/输出算法的索引、输入/输出连线是否为跟踪线;b、按照索引遍历算法,找到所有第一、第二算法;按照索引顺序依次为各所述第一算法配置从最小索引开始递增的执行顺序号;按反向索引顺序依次为各所述第二算法配置从最大索引开始递减的执行顺序号;所述第一算法为没有输出,或者输出连线为跟踪线的算法;所述第二算法为没有输入,或者输入连线为跟踪线的算法;C、从最小索引开始按索引遍历前一半算法的每个输出,遍历到各算法的每个输出时都执行一次步骤d ;遍历完成后执行步骤e ;d、如果该输出的输出算法没有执行顺序号,则为该输出算法配置从所述当前最小值加1开始的执行顺序号,配置后将所述当前最小值加1 ;判断是否该输出的输出连线不为跟踪线、且该输出不处于连接循环中,不是则遍历下一个输出;如果是则判断是否该输出算法的执行顺序号大于本算法,且在大于本算法的输出算法中是最小的,是则将该输出算法和本算法的执行顺序号互换后遍历下一个输出,否则直接遍历下一个输出;e、根据所述索引遍历各算法的每个输入,遍历到各算法的每个输入时都执行一次步骤f ;遍历完成后结束;f、当该输入的输入连线不为跟踪线时,如果本算法的执行顺序号大于该输入的输入算法的执行顺序号,并且该输入算法的执行顺序号在所有执行顺序号小于本算法的输入算法中是最大的,则将该输入算法的执行顺序号与本算法的互换;然后遍历下一个输入。进一步地,所述步骤d中,将该输出算法和本算法的执行顺序号互换后,遍历下一个输出前还包括步骤从该输出算法开始,按照执行顺序号由后往前遍历已经分配执行顺序号的算法的各输入,遍历到各算法的每个输入时都执行一次步骤f ;遍历完成后按索引遍历下一个输出ο进一步地,所述步骤c中,遍历完成后,在执行步骤e前还包括步骤g、如果所述第二算法的个数大于0,则从索引为所述最大执行顺序号减去所述当前最小值的算法开始,按索引遍历该算法及其后各算法的每个输出,遍历到各算法的每个输出时都执行一次步骤d ;遍历完成后执行步骤e。进一步地,所述步骤a包括al、按照画图顺序遍历控制逻辑图内所有算法,在内存中保存各算法的索引、初始值为0的输入/输出个数,暂时为空的输入/输出算法的索引,默认为非跟踪的每个输入/ 输出的跟踪标记;a2、分离出跟踪线和连接了不需要算法执行顺序号的图元,整理出算法执行流程主干图;a3、在所述算法执行流程主干图中,遍历所有连接线;如果连接线两端是普通算法,则对于该连接线的输入端算法,在内存中将该算法的基本信息的输出个数加1,增加该连接线输出端算法的索引,如果连接线是跟踪线,将该输出的跟踪标记置为是跟踪;对于该连接线的输出端算法,在内存中将该算法的基本信息的输入个数加1,增加该连接线输入端算法的索引,如果连接线是跟踪线,将该输入的跟踪标记置为是跟踪。进一步地,所述步骤b包括bl、将所述最小索引作为当前最小值,按所述索引遍历内存中的所有算法,找到第一算法时,将所找到的第一算法的执行顺序号配置为当前最小值,然后将当前最小值加1 后继续遍历,直到遍历完成;b2、将所述最大索引作为当前最大值,按所述索引遍历内存中的所有算法,找到第二算法时,将所找到的第二算法的执行顺序号配置为当前最大值,然后将当前最大值减1 后继续遍历,直到遍历完成。本专利技术还提供了一种配置算法执行顺序号的装置,包括第一、第二配置模块、第一、第二遍历模块、存储模块、初配置模块;提取模块,用于提取存控制逻辑图中算法的基本信息,包括算法的索引、各算法的输入/输出个数、输入/输出算法的索引、输入/输出连线是否为跟踪线,并保存在所述存储模块中;完成后启动所述初配置模块;所述初配置模块用于按照索引遍历所述存储模块中的算法,找到所有第一、第二算法,按照索引顺序依次为各所述第一算法配置从最小索引开始递增的执行顺序号,按反向索引顺序依次为各所述第二算法配置从最大索引开始递减的执行顺序号,完成后启动所述第一遍历模块;所述第一算法为没有输出,或者输出连线为跟踪线的算法;所述第二算法为没有输入,或者输入连线为跟踪线的算法;所述第一遍历模块用于从最小索引开始按索引遍历所述存储模块中前一半算法的每个输出,遍历到各算法的每个输出时都调用一次所述第一配置模块;遍历完成后启动所述第二遍历模块;所述第一配置模块用于当该输出的输出算法没有执行顺序号时,为该输出算法配置从所述当前最小值加1开始的执行顺序号,配置后将所述当前最小值加1 ;判断是否该输出的输出连线不为跟踪线、且该输出不处于连接循环中,不是则通知调用本模块的模块遍历下一个输出;如果是则判断是否该输出算法的执行顺序号大于本算法,且在大于本算法的输出算法中是最小的,是则将所述存储模块中该输出算法和本算法的执行顺序号互换, 然后通知调用本模块的模块遍历下一个输出,否则直接通知调用本模块的模块遍历下一个输出;所述第二遍历模块用于根据所述索引遍历所述存储模块中各算法的每个输入,遍历到各算法的每个输入时都调用一次所述第二配置模块;所述第二配置模块用于当该输入的输入连线不为跟踪线时,如果本算法的执行顺序号大于该输入的输入算法的执行顺序号,并且该输入算法的执行顺序号在所有执行顺序号小于本算法的输入算法中是最大的,则将所述存储模块中该输入算法的执行顺序号与本算法的互换,通知调用本模块的模块遍历下一个输入。进一步地,所述第一配置模块还用于在将输出算法和本算法的执行顺序号互换后,通知调用本模块的模块遍历下一个输出前,从该输出算法开始,按照执行顺序号由后往前遍历已经分配执行顺序号的算法的各输入,遍历到各算法的每个输入时都调用一次所述第二配置模块;遍历完成后再通知调用本模块的模块遍历下一个输出。进一步地,所述的装置还包括第三遍历模块;所述第一本文档来自技高网...

【技术保护点】
1.一种配置算法执行顺序号的方法,包括:a、提取并保存控制逻辑图中算法的基本信息,包括算法的索引、各算法的输入/输出个数、输入/输出算法的索引、输入/输出连线是否为跟踪线;b、按照索引遍历算法,找到所有第一、第二算法;按照索引顺序依次为各所述第一算法配置从最小索引开始递增的执行顺序号;按反向索引顺序依次为各所述第二算法配置从最大索引开始递减的执行顺序号;所述第一算法为没有输出,或者输出连线为跟踪线的算法;所述第二算法为没有输入,或者输入连线为跟踪线的算法;c、从最小索引开始按索引遍历前一半算法的每个输出,遍历到各算法的每个输出时都执行一次步骤d;遍历完成后执行步骤e;d、如果该输出的输出算法没有执行顺序号,则为该输出算法配置从所述当前最小值加1开始的执行顺序号,配置后将所述当前最小值加1;判断是否该输出的输出连线不为跟踪线、且该输出不处于连接循环中,不是则遍历下一个输出;如果是则判断是否该输出算法的执行顺序号大于本算法,且在大于本算法的输出算法中是最小的,是则将该输出算法和本算法的执行顺序号互换后遍历下一个输出,否则直接遍历下一个输出;e、根据所述索引遍历各算法的每个输入,遍历到各算法的每个输入时都执行一次步骤f;遍历完成后结束;f、当该输入的输入连线不为跟踪线时,如果本算法的执行顺序号大于该输入的输入算法的执行顺序号,并且该输入算法的执行顺序号在所有执行顺序号小于本算法的输入算法中是最大的,则将该输入算法的执行顺序号与本算法的互换;然后遍历下一个输入。...

【技术特征摘要】

【专利技术属性】
技术研发人员:彭琪吕大军张智夏明李文王朝辉周海东黄焕袍王中胜孙瑜王疆
申请(专利权)人:北京国电智深控制技术有限公司
类型:发明
国别省市:11

网友询问留言 已有1条评论
  • 来自[美国加利福尼亚州圣克拉拉县山景市谷歌公司] 2015年01月18日 21:33
    法执,佛教用语,是断尽一念无明以后之境界。断尽一念无明之后,想要修行成佛才知有法执。
    0
1