CN119200450A - 对任务流程进行控制的方法及系统 - Google Patents
对任务流程进行控制的方法及系统 Download PDFInfo
- Publication number
- CN119200450A CN119200450A CN202411318080.5A CN202411318080A CN119200450A CN 119200450 A CN119200450 A CN 119200450A CN 202411318080 A CN202411318080 A CN 202411318080A CN 119200450 A CN119200450 A CN 119200450A
- Authority
- CN
- China
- Prior art keywords
- task flow
- instructions
- instruction
- executed
- task
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 56
- 230000009471 action Effects 0.000 claims abstract description 55
- 230000008569 process Effects 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 8
- 238000003860 storage Methods 0.000 claims description 5
- 239000000725 suspension Substances 0.000 description 45
- 230000001276 controlling effect Effects 0.000 description 22
- 230000000875 corresponding effect Effects 0.000 description 20
- 238000012545 processing Methods 0.000 description 13
- 238000010586 diagram Methods 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 5
- 238000003754 machining Methods 0.000 description 4
- 238000011084 recovery Methods 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 238000010924 continuous production Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 238000011143 downstream manufacturing Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 235000003642 hunger Nutrition 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000037351 starvation Effects 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明涉及对任务流程进行控制的方法和系统。该方法包括如下步骤:a)使需要被暂停的任务流程停止执行新的指令,同时对每个所述要被暂停的任务流程的已执行指令中需要执行停止动作的指令执行停止动作;b)保存所有被暂停的任务流程的暂停状态信息以及暂停指令信息;c)当需要恢复至少一个所述被暂停的任务流程时,对于每一个需要恢复的任务流程,基于所述保存的暂停状态信息和暂停指令信息创建一个新任务流程;以及d)执行所述新任务流程,同时重新执行被执行停止动作的指令。本发明还相应地提供一种系统。通过本发明,可以实现任务流程基于断点信息的暂停和恢复,极大地提高了任务流程执行效率且降低了成本。
Description
技术领域
本发明涉及自动化控制,更具体地涉及对任务流程进行控制的方法及系统。
背景技术
在现代工业环境中,经常会设计可编程逻辑控制器(PLC)来实现对自动化的控制。有时也可以由软件来实现该PLC,此时可以将该由软件实现的PLC称为任务流程。该任务流程包括执行一个或多个指令。
然而,当因为发生人为停止或设备出现报警等时需要停止某个或某些任务流程时,只要某个任务流程被暂停过,重新恢复后都无法从暂停的地方继续执行该任务流程,而必须从头开始执行该任务流程。例如,在通过机床对管材进行切割的过程中,当在执行用于实现上料的任务流程时,某个中间环节忽然停止,当重新恢复后,必需手动将正在被上料的管材卸下,再从头开始重新执行该上料的任务流程,这无疑耗费了大量的时间和人力成本,对自动化连续生产极其不利。
因此,亟需一种新的技术能够在恢复暂停的任务流程时从暂停的地方继续执行该任务流程。
发明内容
本发明就旨在克服现有技术中的上述和/或其它问题。本发明所提供的对任务流程进行控制的方法及系统,当恢复暂停的任务流程时,可以从暂停的地方继续执行该任务流程,而不需要从头执行该任务流程,从而显著地提高了任务流程的执行效率。
根据本发明的第一方面,提供一种对任务流程进行控制的方法,所述任务流程包括执行一个或多个指令,所述方法可包括如下步骤:a)使需要被暂停的任务流程停止执行新的指令,同时对每个所述要被暂停的任务流程的已执行指令中需要执行停止动作的指令执行停止动作;b)保存所有被暂停的任务流程的暂停状态信息以及暂停指令信息;c)当需要恢复至少一个所述被暂停的任务流程时,对于每一个需要恢复的任务流程,基于所述保存的暂停状态信息和暂停指令信息创建一个新任务流程;以及d)执行所述新任务流程,同时重新执行被执行停止动作的指令。
根据本发明的第二方面,提供一种对任务流程进行控制的系统,所述任务流程包括执行一个或多个指令,所述系统包括执行器单元和管理器单元。所述管理器单元可配置成:a)使需要被暂停的任务流程停止执行新的指令,同时使所述执行器单元对每个所述要被暂停的任务流程的已执行指令中需要执行停止动作的指令执行停止动作;b)保存所有被暂停的任务流程的暂停状态信息以及暂停指令信息;c)当需要恢复至少一个所述被暂停的任务流程时,对于每一个需要恢复的任务流程,基于所述保存的暂停状态信息和暂停指令信息创建一个新任务流程;以及d)使所述执行器单元执行所述新任务流程,同时重新执行被执行停止动作的指令。
本发明的上述方法和系统通过创新地对所暂停的任务流程的断点信息进行保存并在需要恢复该暂停的任务流程时执行基于该保存的断点信息创建的新的任务流程,实现了从先前暂停的断点位置对该任务流程的继续执行。相比于现有技术必须重新从头开始执行暂停的任务流程,本发明极大地降低了人力成本和时间成本,显著地提高了任务流程的执行效率,保证了自动控制的连续性。
在上述方法中,所述步骤a)可包括如下步骤:a1)当一个任务流程需要被暂停时,识别所述任务流程的已执行指令中所有存在安全隐患的指令或期望停止的指令并对所述存在安全隐患的指令或所述期望停止的指令执行停止动作;a2)基于所述存在安全隐患的指令或所述期望停止的指令与其它正在执行的并行任务流程的相关性,判定是否需要暂停其它正在执行的并行任务流程;以及a3)若需要暂停其它正在执行的并行任务流程,则对所述需要暂停的其它正在执行的并行任务流程执行步骤a1)和a2)。相应地,在上述系统中,在执行所述a)时,所述管理器单元可被进一步配置成:a1)当一个任务流程需要被暂停时,识别所述任务流程的已执行指令中所有存在安全隐患的指令或期望停止的指令并使所述执行器单元对所述存在安全隐患的指令或所述期望停止的指令执行停止动作;a2)基于所述存在安全隐患的指令或所述期望停止的指令与其它正在执行的并行任务流程的相关性,判定是否需要暂停其它正在执行的并行任务流程;以及a3)若需要暂停其它正在执行的并行任务流程,则对所述需要暂停的其它正在执行的并行任务流程执行a1)和a2)。
停止一个任务流程时,其中已经在之前瞬时完成的指令的对应动作并不会马上停下来,因此需要对这些动作执行停止指令。本发明通过识别出真正有安全隐患或真正期望停止的那些动作并对应地执行停止指令,可在保证安全性的情况下进一步提高任务流程的执行效率。此外,本发明也不需要将所有并行的任务流程都停下来,而是将真正与要被停止的任务流程相关的那些并行任务流程停下来,而且对需要暂停的正在执行的并行任务流程也执行a1)和a2),使得能够遍历所有并行任务流程,找出其中每一个需要暂停的并行任务流程,并对其中真正有安全隐患或真正期望停止的那些动作执行停止指令,从而在保证安全性的同时实现更高效的任务流程停止控制。
所述暂停指令信息可包括暂停指令参数和暂停指令队列序号。
在上述方法中,所述步骤c)可包括如下步骤:解析所述暂停状态信息和所述暂停指令信息;将被暂停的指令创建出来;以及将指令参数恢复至所述暂停指令参数。相应地,在上述系统中,在执行所述c)时,所述管理器单元可被进一步配置成:解析所述暂停状态信息和所述暂停指令信息;将被暂停的指令创建出来;以及将指令参数恢复至所述暂停指令参数。
在上述方法中,所述步骤d)可包括从所述暂停指令队列序号的指令开始执行所述新任务流程。相应地,在上述系统中,在执行所述d)时,所述执行器单元可被进一步配置成:从所述暂停指令队列序号的指令开始执行所述新任务流程。
根据本发明的第三方面,还提供一种计算机可读存储介质,其上记录有经编码的指令,当执行该指令时实现本发明的上述对任务流程进行控制的方法。
根据本发明的第四方面,还提供一种计算机程序产品,包括计算机程序,当执行该计算机程序时实现本发明的上述对任务流程进行控制的方法。
通过下面结合附图的详细描述,本发明的其它特征和方面会变得更加清楚。
附图说明
通过结合附图对于本发明的示例性实施例进行描述,可以更好地理解本发明,在附图中:
图1示出了根据本发明实施例的对任务流程进行控制的方法的流程图;
图2示出了图1所示方法的变型例的流程图;
图3A-图3C示出了根据本发明的示例性实施例的对任务流程进行控制的时序图;
图4示出了图1所示方法的另一变型例的流程图;以及
图5示出了根据本发明实施例的对任务流程进行控制的系统的结构框图。
具体实施方式
下面将结合具体实施例和附图对本发明作进一步说明,在以下的描述中阐述了更多的细节以便于充分理解本发明,但是本发明显然能够以多种不同于此描述的其它方式来实施,本领域技术人员可以在不违背本发明精神的情况下根据实际应用情况作类似推广、演绎,因此不应以此具体实施例的内容限制本发明的保护范围。
除非另作定义,权利要求书和说明书中使用的技术术语或者科学术语应当为本发明所属技术领域内具有一般技能的人士所理解的通常意义。本申请的说明书以及权利要求书中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“一个”或者“一”等类似词语并不表示数量限制,而是表示存在至少一个。“包括”或者“包含”等类似的词语意指出现在“包括”或者“包含”前面的元件或者物件涵盖出现在“包括”或者“包含”后面列举的元件或者物件及其等同元件,并不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,也不限于是直接的还是间接的连接。
根据本发明的实施例,提供一种对任务流程进行控制的方法。
图1示出了根据本发明实施例的对任务流程进行控制的方法100的流程图。如图1中所示,该方法100可包括步骤120、步骤140、步骤160和步骤180。
在步骤120,可使需要被暂停的任务流程停止执行新的指令,同时对每个要被暂停的任务流程的已执行指令中需要执行停止动作的指令执行停止动作。
以机床加工中的上料任务流程为例,其可包括执行以下指令:
传感器打开指令:打开传感器,用于进行监测;
轴运动指令:使机床的直线轴和旋转轴开始运动;
传送带运动指令:使传送带运动,以将加工件运送到机床的支架上;
支架上升指令:使支架上升,以将支架上的加工件移送到卡盘夹持区域;以及
卡盘夹紧指令:通过卡盘将移送至卡盘夹持区域的加工件进行夹紧和固定。
当暂停上料任务流程时,假设已经执行了传感器打开指令、轴运动指令、传送带运动指令和支架上升指令,那么此时上料任务流程不再执行卡盘夹紧指令。
而对于已经执行完毕的传感器打开指令、轴运动指令、传送带运动指令和支架上升指令,由于其对应动作已经在之前完成了,此时并不会马上停下来,可以按照预先设定的方案从中选出可能影响安全的那些指令并执行对应的停止动作,也可以根据实际加工情况从中识别出真正会影响安全的那些指令并执行对应的停止动作。显然,后一种方式更能灵活地适应实际加工情况,可以进一步提高安全性和任务流程的执行效率,具体将在下文中进行展开。
回到方法100,接下来,在步骤140,可保存所有被暂停的任务流程的暂停状态信息以及暂停指令信息。
仍然以上述机床加工中的上料任务流程为例,在发生暂停后,可对该上料任务流程的暂停状态信息以及暂停指令信息进行保存。所述暂停状态信息可指示上料任务流程被暂停的机床编号(例如,机床A)。所述暂停指令信息可指示被暂停执行的指令,即,尚未执行的卡盘夹紧指令。暂停指令信息可例如包括暂停指令参数和暂停指令队列序号,即,所述卡盘夹紧指令的指令参数和该卡盘夹紧指令在指令队列中的序号(例如,卡盘夹紧指令是上料任务流程的指令队列中的第五个指令)。
接下来,在步骤160,当需要恢复至少一个被暂停的任务流程时,对于每一个需要恢复的任务流程,基于所保存的暂停状态信息和暂停指令信息创建一个新的任务流程。接着,在步骤180,执行新任务流程,同时重新执行被执行停止动作的指令。
上述示例中仅暂停了某个机床的上料任务流程,但实际操作中,也可以暂停该机床的多个任务流程或者多个机床的上料任务流程或者多个机床的多个任务流程。对这些任务流程进行暂停时,同样可执行上述步骤120和步骤140。而当这些被暂停的任务流程中有至少一个需要被恢复执行,则对于每一个需要被恢复执行的任务流程基于所保存的暂停状态信息和暂停指令信息创建一个新的任务流程。
例如,如果上述示例中被暂停的上料任务流程需要被恢复执行,则基于之前所保存的机床暂停状态信息和卡盘夹紧指令信息创建一个新的任务流程。该新的任务流程即为对机床A执行卡盘夹紧指令。同时,之前被执行了停止动作的那些指令(传感器打开指令、轴运动指令、传送带运动指令和支架上升指令中的全部或部分)也被重新执行。所述被暂停的上料任务流程在重新恢复执行后,轴继续运动,传动带继续运动,支架继续上升,卡盘接着完成对加工件的夹紧和固定。
由于一个任务流程一旦被暂停,之后还想继续执行该任务流程,只能重新开始,而不能从暂停处的指令继续执行。也就是说,想要恢复被暂停的任务流程,就必须从头开始执行该任务流程,该任务流程暂停前完成的所有指令都必须重新再执行一遍。仍然以上述机床加工中的上料任务流程为例,当对管材进行上料时,如果执行到卡盘夹紧指令时该上料任务流程停止了,则当要继续执行该上料任务流程时,必须将传感器打开指令、轴运动指令、传送带运动指令和支架上升指令都重新执行一遍后再接着执行卡盘夹紧指令,这严重影响了加工效率。为了重新开始该上料任务流程,需要将之前完成的进度全部先恢复到初始状态,例如需要先手动将管材卸下,再重新上料,一根大型管材重量超过一吨,将其从上料设备上卸下再安装到初始位置并重新开始,这个过程需要耗费大量人力和时间,对自动化连续生产更加不利。
为了打破上述现有技术在恢复暂停的任务流程时只能重新开始执行该任务流程的局限性,本发明通过基于暂停状态信息和暂停指令信息创建新任务流程,巧妙地将暂停时还未执行的指令从暂停的任务流程中独立出来。由此,当需要恢复暂停的任务流程时,只要执行该创建的新任务流程,即相当于从暂停前未执行的指令(断点)处继续原来被暂停的任务流程,这极大地提高了任务流程的执行效率,用户也无需在恢复任务流程时复原设备和工件,从而也降低了时间成本和人工成本。
可选地,上述步骤120可包括步骤1202和步骤1204,如图2所示。在步骤1202,当一个任务流程需要被暂停时,识别所述任务流程的已执行指令中所有存在安全隐患的指令或期望停止的指令并对所述存在安全隐患的指令或所述期望停止的指令执行停止动作。
作为说明而非限制,所述存在安全隐患的指令可以是在系统中内置有相应处理逻辑的在所有场景中都存在安全隐患的指令(例如,负载功率过大),也可以是由用户通过配置接口自行配置的在暂停时需要对其进行处理的特定应用的指令(例如,上述机床加工应用中的缺料情形)。在步骤1204,基于所述存在安全隐患的指令或所述期望停止的指令与其它正在执行的并行任务流程的相关性,判定是否需要暂停其它正在执行的并行任务流程。若判定还需要暂停其它正在执行的并行任务流程,则方法返回到步骤1202,即对所述需要暂停的其它正在执行的并行任务流程也执行步骤1202和步骤1204,以此类推,直到没有其它正在执行的并行任务流程需要被暂停为止。
如前所述地,当停止一个任务流程时,该任务流程中已经在之前瞬时完成的指令的对应动作并不会马上停下来,例如,机床加工中用于上料和下料的传送带传送,这无疑是十分危险的。为了避免这种危险情况的发生,可以按照预先设定的方案从已经完成的指令中选出可能影响安全的那些指令并执行相应的停止动作。这种方式一定程度上可以提高安全性,但需要用户自己进行预先设定,特别当任务流程中涉及的设备具有不同的指令动作,这更会增加用户的工作量。此外,这种方式必然存在未被方案考虑进去的情况,因此可能会对不需要停止的动作也执行停止指令,而对真正需要停止的动作却没有执行停止指令。而且,上述方法还会造成不同任务流程的相互影响,因为当一个任务流程停止时,所有相关的并行任务流程都会停止。正是考虑到了上述因素,发明人针对步骤120中所涉及的需要执行停止动作的指令,提供了另一种基于实际情况的识别机制,即,从已执行指令中识别出存在安全隐患的指令或期望停止的指令,并且是基于这些指令与其它正在执行的并行任务流程的相关性(例如,对应的资源调用情况以及其可能带来的安全隐患程度等)来决定是否也要暂停其它正在执行的并行任务流程,由此可以进一步提高安全性和任务流程的执行效率。
图3A中示出了三台机床并行执行上料任务流程310的时序图,其中针对每台机床(即,机床A、机床B、机床C),所述上料任务流程310包括:传感器打开指令(指令1)、轴运动指令(指令2)、传送带运动指令(指令3)、支架上升指令(指令4)、卡盘夹紧指令(指令5)。
可在传送带上设置一定的缓冲区,以便在上游设备(例如上料机)和下游设备(例如加工机床)之间出现速度不匹配时,能够暂时存放多余的加工件,由此可以防止因设备速度不一致而导致的生产中断。对传送带的缓冲区进行管理,可优化生产线的效率和稳定性。图3B示出了三台机床并行执行缓冲区管理任务流程320的时序图,其中针对每台机器(即,机床A、机床B、机床C),所述缓冲区管理任务流程320包括:报警器启动指令(指令1’:启动报警器,以在缓冲区即将溢出或其它异常情况发生时自动发出报警)、传感器读取指令(指令2’:通过传感器读取传送带上的加工件的位置、数量等信息)、逻辑判断指令(指令3’:基于当前的加工情况判断是否需要对传送带的速度进行调节,例如,判断缓冲区是否达到一定容量,使得应当对传送带进行减速以避免缓冲区的过度填充)、速度调节指令(指令4’:对传送带的传送速度进行调节,例如,对传送带进行减速以避免对缓冲区的过度填充,或者对传送带进行加速以将加工件快速传送到下游加工设备)。
假设在机床A已经执行了指令1-4时,机床A发生了缺料。此时,期望暂停机床A的上料任务流程310。除了不再执行该上料任务流程310中的指令5,还需要判断是否需要针对指令1-4执行对应的停止动作。按照预先设定的方案,比如,如果出现影响安全的情况,则将对指令1-4都执行对应的停止动作,但实际上在有些情形下并不需要停止指令1的传感器打开,相反地还需要使传感器保持打开状态继续监测;还比如,如果出现影响安全的情况,则只对指令2-4执行对应的停止动作,但在有些情形下传感器也需要关闭,即,指令1也需要执行停止动作。
本发明提供了全新的识别机制,根据实际加工情况来识别出真正存在安全隐患的指令或期望停止的指令,从而很好地弥补了上述方案的不全面。首先,对于指令1,其使传感器打开,但即使上料暂停,传感器仍需继续监测加工件和设备状态,以确保在恢复上料时能够立即获取准确的状态信息,因此不需要对指令1执行停止动作。指令2的轴运动一旦完成,轴就会一直运动,因此需要一个停止指令阻止该轴继续运动。指令3的传送带运动是一个持续的动态过程,一旦启动,它不会自行结束,因此需要明确的指令来停止该传送带运动,以避免传送带空转。类似地,指令4的支架上升运动如果不停止,则支架将会在没有装载加工件的情况下继续上升。因此,在步骤1202仅对已经执行完毕的指令1-4中的指令2、指令3和指令4执行停止动作(即,执行轴停止、传送带停止、支架停止)。可以理解,如果导致上料任务流程需要暂停的原因是负载功率过大,则在步骤1202就需要对已经执行完毕的指令1-4都执行停止动作,因为此时传感器也需要关闭。本发明所提供的应变于实际情况的识别机制可以更安全、更准确地关停真正有安全隐患或期望停止的指令。
对于机床B和机床C,由于机床A、B、C各自具有相应的传感器、轴、传送带、支架和卡盘等,因此即使机床A的上料任务流程310被暂停了,机床B和机床C的上料任务流程310也并不需要被暂停。
但当机床A的上料任务流程310暂停后,随着其传送带运动被停止,加工件的传送也被停止。此时如果继续执行缓冲区管理任务流程320,将没有实际的加工件传送信息可以管理。此外,如果机床A不再运行上料任务流程310,则继续执行缓冲区管理任务流程320会导致不必要的计算和资源使用。因此,在暂停机床A的上料任务流程310的同时,也期望暂停机床A对应的缓冲区管理任务流程320。
假设此时机床A已经执行了缓冲区管理任务流程320中的所有指令1’-指令4’。由于如前所述地,机床A的传送带运动被停止了,因此不再需要对传送带的速度进行调节,可以对缓冲区管理任务流程320中已经执行的速度调节指令(指令4’)执行停止动作。同样地,逻辑判断指令(指令3’)是判断是否需要对传送带的速度进行调节,这在传送带运动被停止的情况下也不需要了,因此可以对所述逻辑判断指令执行停止动作,以避免计算资源的浪费。相比之下,传感器读取指令(指令2’)通常不需要停止,因为保持传感器读取有助于在上料任务流程310和缓冲区管理任务流程320恢复时立即获取准确的加工件信息。报警器启动指令(指令1’)通常也不需要停止,因为报警器在暂停期间仍然可以帮助监控异常情况。由此,关于缓冲区管理任务流程320,仅需要对已执行的指令3’和指令4’执行停止动作。
类似地,机床B和机床C各自的缓冲区管理任务流程320并不会因为机床A的缓冲区管理任务流程320的暂停而受到影响,因此不需要被暂停。
以上的示例中,对于机床A的上料任务流程,“其它正在执行的并行任务流程”仅列举了同为机床A的缓冲区管理任务流程和机床B以及机床C的上料任务流程和缓冲区管理任务流程,但可以理解,实际操作中,还可以包括机床A、机床B和机床C的其它并行任务流程。此外,也可以理解,在上述示例中,上料任务流程和缓冲区管理任务流程在各个机床中是各自独立的,因此不需要因为一个机床的上料任务流程或缓冲区管理任务流程的暂停而把其余机床的上料任务流程或缓冲区管理任务流程也暂停,但对于有些任务流程,比如避障任务流程,各个机床是需要互相协调合作的,此时暂停一个机床的避障任务流程必然需要同时把其余机床的避障任务流程也暂停。
根据本发明的实施例,一旦存在需要被暂停的任务流程,就可以对与该任务流程中需要执行停止动作的指令相关的其他任务流程进行遍历,并且根据实际需要仅对每个相关任务流程中确实需要停止的指令执行停止动作,从而在穷尽所有可能因设备报警或人为需要停止而造成安全隐患的指令的同时,提高任务流程的执行效率。
可选地,上述步骤160可包括步骤1602、步骤1604和步骤1606,如图4所示。
在步骤1602,可解析所述暂停状态信息和所述暂停指令信息。
在步骤1604,可将被暂停的指令创建出来。
在步骤1606,可将指令参数恢复至所述暂停指令参数。
可选地,上述步骤180可包括:从所述暂停指令队列序号的指令开始执行所述新任务流程。
以下在图3A和图3B的基础上结合图3C所示的时序图进一步详细描述通过本发明对机床加工中的并行任务流程进行控制的示例。
如前文所述,在机床A执行完支架上升指令(指令4)后发生缺料,此时针对上料任务流程310,不再执行卡盘夹紧指令(指令5),同时对指令2、指令3和指令4执行停止动作,即,使轴停止运动、传送带停止运动、支架停止上升。(例如,由系统管理器)保存关于机床A的上料任务流程310被暂停的信息,并且保存关于指令2、指令3和指令4被执行对应停止动作、以及指令5尚未被执行的信息。针对与上料任务流程310并行的机床A的缓冲区管理任务流程320,对指令3’和指令4’执行停止动作,即,停止逻辑判断,停止传送带速度调节。保存关于机床A的缓冲区管理任务流程320被暂停的信息,并且保存关于指令3’和指令4’被执行对应停止动作的信息。
在解决了造成任务流程暂停的原因之后,可以检查是否存在被暂停的任务流程并进行相应恢复工作,当然根据需要也可以只恢复其中的一部分。在本示例中造成任务流程暂停的原因是机床A缺料,在补充了机床A的加工件之后,检查到机床A的上料任务流程被暂停了,开始恢复该暂停的上料任务流程。
首先,针对机床A创建新的任务流程310’,通过解析所保存的暂停状态信息(关于机床A的上料任务流程310被暂停的信息)和暂停指令信息(指令5尚未被执行的信息)创建指令5(卡盘夹紧指令),并且将任务流程310’的指令参数恢复至卡盘夹紧指令的参数。随后,执行上述新的任务流程310’以完成卡盘对加工件的固定和夹紧,同时识别之前被执行停止动作的指令2、指令3和指令4,并使这些指令继续执行,即,使轴继续运动、使传送带继续运动、使支架继续上升。相应地,可删除之前暂停时所保存的关于机床A的上料任务流程310被暂停的信息、关于指令2-4被执行对应停止动作的信息以及指令5尚未被执行的信息。
接着继续检查到机床A的缓冲区管理任务流程也被暂停了,开始恢复该暂停的缓冲区管理任务流程。由于之前暂停时该缓冲区管理任务流程不存在尚未执行的指令,因此不需要创建新的任务流程,而仅需要重新执行暂停时被执行停止动作的指令3’和指令4’,即重新进行逻辑判断和传送带速度调节。相应地,可删除之前暂停时所保存的关于机床A的缓冲区管理任务流程320被暂停的信息以及关于指令3’和4’被执行对应停止动作的信息。
接着可以继续检查是否还存在其它被暂停的任务流程,并根据需要进行相应的恢复工作。在本示例中,经再次检查后,所有之前被暂停的任务流程都已被恢复,任务流程的恢复工作结束。需要特别说明的是,虽然以上以包括三台机床的机床加工系统为例进行了描述,但本发明的控制方法同样可以适用于仅包括一台机床、包括两台机床、或包括四台甚至更多台机床的机床加工系统。
同样可以理解,虽然以上的说明性实施例涉及的是机床加工领域,但是本发明的对任务流程进行控制的方法同样可以适用于自动化控制的任何其他现代工业场景中。
至此描述了根据本发明的对任务流程进行控制的方法,其针对现有技术只能从头开始执行暂停的任务流程的缺陷提供了一种全新的从断点恢复任务流程的机制,通过对需要暂停的相关任务流程进行断点保存并执行基于断点信息创建的新任务流程实现了从断点对所暂停任务流程的恢复,这极大地提高了任务流程的执行效率,有效节省了现有技术中为了将暂停的任务流程恢复到初始状态而花费的人工成本和时间成本。此外,本发明的控制方法还额外创新了暂停任务流程时根据实际加工情况来识别出真正存在安全隐患或期望停止的指令的机制,从而可以在暂停任务流程时更安全、更准确地关停真正有安全隐患或期望停止的指令。
根据本发明的实施例,还提供一种计算机可读存储介质,其上记录有经编码的指令,当执行该指令时可实现上述根据本发明的对任务流程进行控制的方法。所述计算机可读存储介质可以包括硬盘驱动器、软盘驱动器、光盘读/写(CD-R/W)驱动器、数字通用磁盘(DVD)驱动器、闪存驱动器和/或固态存储装置等。
根据本发明的实施例,还提供一种计算机程序产品,包括计算机程序,当执行该计算机程序时可实现上述根据本发明的对任务流程进行控制的方法。所述计算机程序产品可以使用多种编程语言实现,例如C、C++、Java、Python、JavaScript等,以适应不同的开发环境和平台需求。
根据本发明的实施例,还相应地提供一种对任务流程进行控制的系统。
参考图5,其中示出了根据本发明的对任务流程进行控制的系统500,其可包括执行器单元520和管理器单元540。
管理器单元540可被配置成:a)使需要被暂停的任务流程停止执行新的指令,同时使执行器单元520对每个所述要被暂停的任务流程的已执行指令中需要执行停止动作的指令执行停止动作;b)保存所有被暂停的任务流程的暂停状态信息以及暂停指令信息;c)当需要恢复至少一个所述被暂停的任务流程时,对于每一个需要恢复的任务流程,基于所述保存的暂停状态信息和暂停指令信息创建一个新任务流程;以及d)使执行器单元520执行所述新任务流程,同时重新执行被执行停止动作的指令。
可选地,在执行所述a)时,所述管理器单元540可进一步配置成:a1)当一个任务流程需要被暂停时,识别所述任务流程的已执行指令中所有存在安全隐患的指令或期望停止的指令并使执行器单元520对所述存在安全隐患的指令或所述期望停止的指令执行停止动作;a2)基于所述存在安全隐患的指令或所述期望停止的指令与其它正在执行的并行任务流程的相关性,判定是否需要暂停其它正在执行的并行任务流程;以及a3)若需要暂停其它正在执行的并行任务流程,则对所述需要暂停的其它正在执行的并行任务流程执行a1)和a2)。
可选地,所述暂停指令信息可包括暂停指令参数和暂停指令队列序号。
可选地,在执行所述c)时,所述管理器单元540可进一步配置成:解析所述暂停状态信息和所述暂停指令信息;将被暂停的指令创建出来;以及将指令参数恢复至所述暂停指令参数。
可选地,在执行所述d)时,所述执行器单元520可进一步配置成:从所述暂停指令队列序号的指令开始执行所述新任务流程。
上述对任务流程进行控制的系统500可以实现如前面所述地根据本发明的对任务流程进行控制的方法。上述在本发明的对任务流程进行控制的方法中适用的很多设计构思和细节同样适用于上述对任务流程进行控制的系统500,且可以得到相同的有益技术效果,此处不再赘述。
以上通过一些示例性实施例对本发明的各个方面进行了描述。然而,应该理解的是,在不脱离本发明精神和范围的情况下,还可以对上述示例性实施例做出各种修改。例如,如果所描述的技术以不同的顺序执行和/或如果所描述的系统、架构、设备或电路中的组件以不同方式被组合和/或被另外的组件或其等同物替代或补充,也可以实现合适的结果,那么相应地,这些修改后的其它实施方式也落入权利要求书的保护范围内。
Claims (12)
1.一种对任务流程进行控制的方法,所述任务流程包括执行一个或多个指令,所述方法包括如下步骤:
a)使需要被暂停的任务流程停止执行新的指令,同时对每个所述要被暂停的任务流程的已执行指令中需要执行停止动作的指令执行停止动作;
b)保存所有被暂停的任务流程的暂停状态信息以及暂停指令信息;
c)当需要恢复至少一个所述被暂停的任务流程时,对于每一个需要恢复的任务流程,基于所述保存的暂停状态信息和暂停指令信息创建一个新任务流程;以及
d)执行所述新任务流程,同时重新执行被执行停止动作的指令。
2.如权利要求1所述的方法,其特征在于,所述步骤a)包括:
a1)当一个任务流程需要被暂停时,识别所述任务流程的已执行指令中所有存在安全隐患的指令或期望停止的指令并对所述存在安全隐患的指令或所述期望停止的指令执行停止动作;
a2)基于所述存在安全隐患的指令或所述期望停止的指令与其它正在执行的并行任务流程的相关性,判定是否需要暂停其它正在执行的并行任务流程;以及
a3)若需要暂停其它正在执行的并行任务流程,则对所述需要暂停的其它正在执行的并行任务流程执行步骤a1)和a2)。
3.如权利要求1所述的方法,其特征在于,所述暂停指令信息包括暂停指令参数和暂停指令队列序号。
4.如权利要求3所述的方法,其特征在于,所述步骤c)包括:
解析所述暂停状态信息和所述暂停指令信息;
将被暂停的指令创建出来;以及
将指令参数恢复至所述暂停指令参数。
5.如权利要求4所述的方法,其特征在于,所述步骤d)包括:
从所述暂停指令队列序号的指令开始执行所述新任务流程。
6.一种对任务流程进行控制的系统,所述任务流程包括执行一个或多个指令,所述系统包括:
执行器单元;以及
管理器单元,配置成:
a)使需要被暂停的任务流程停止执行新的指令,同时使所述执行器单元对每个所述要被暂停的任务流程的已执行指令中需要执行停止动作的指令执行停止动作;
b)保存所有被暂停的任务流程的暂停状态信息以及暂停指令信息;
c)当需要恢复至少一个所述被暂停的任务流程时,对于每一个需要恢复的任务流程,基于所述保存的暂停状态信息和暂停指令信息创建一个新任务流程;以及
d)使所述执行器单元执行所述新任务流程,同时重新执行被执行停止动作的指令。
7.如权利要求6所述的系统,其特征在于,在执行所述a)时,所述管理器单元进一步配置成:
a1)当一个任务流程需要被暂停时,识别所述任务流程的已执行指令中所有存在安全隐患的指令或期望停止的指令并使所述执行器单元对所述存在安全隐患的指令或所述期望停止的指令执行停止动作;
a2)基于所述存在安全隐患的指令或所述期望停止的指令与其它正在执行的并行任务流程的相关性,判定是否需要暂停其它正在执行的并行任务流程;以及
a3)若需要暂停其它正在执行的并行任务流程,则对所述需要暂停的其它正在执行的并行任务流程执行a1)和a2)。
8.如权利要求6所述的系统,其特征在于,所述暂停指令信息包括暂停指令参数和暂停指令队列序号。
9.如权利要求8所述的系统,其特征在于,在执行所述c)时,所述管理器单元进一步配置成:
解析所述暂停状态信息和所述暂停指令信息;
将被暂停的指令创建出来;以及
将指令参数恢复至所述暂停指令参数。
10.如权利要求9所述的系统,其特征在于,在执行所述d)时,所述执行器单元进一步配置成:
从所述暂停指令队列序号的指令开始执行所述新任务流程。
11.一种计算机可读存储介质,其上记录有经编码的指令,当执行该指令时实现如权利要求1-5中任一项所述的方法。
12.一种计算机程序产品,包括计算机程序,当执行该计算机程序时实现如权利要求1-5中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202411318080.5A CN119200450A (zh) | 2024-09-20 | 2024-09-20 | 对任务流程进行控制的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202411318080.5A CN119200450A (zh) | 2024-09-20 | 2024-09-20 | 对任务流程进行控制的方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN119200450A true CN119200450A (zh) | 2024-12-27 |
Family
ID=94063761
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202411318080.5A Pending CN119200450A (zh) | 2024-09-20 | 2024-09-20 | 对任务流程进行控制的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN119200450A (zh) |
-
2024
- 2024-09-20 CN CN202411318080.5A patent/CN119200450A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5375356B2 (ja) | 自動組立システム及び機械製品の製造方法 | |
US9442793B2 (en) | Robust hardware/software error recovery system | |
US10018990B2 (en) | Numerical controller including DNC operation unit | |
US5170109A (en) | Method of controlling robot in event of a power failure | |
CN119200450A (zh) | 对任务流程进行控制的方法及系统 | |
US10528040B2 (en) | Program optimization system | |
US20130085583A1 (en) | Method for Setting an Operating Status | |
CN116610351A (zh) | 服务端热升级方法、终端设备及计算机可读存储介质 | |
JPH01146642A (ja) | 切削工具の停止制御装置 | |
KR970033457A (ko) | 수치제어장치에 있어서의 기억수단 엑세스 제어방법 및 수치제어장치 | |
JP2012238055A (ja) | 生産装置の制御方法、プログラム及び記録媒体 | |
JP4656432B2 (ja) | 数値制御工作機械および割込み加工方法 | |
CN115061793A (zh) | 一种多任务执行方法、装置、设备及介质 | |
US20150073582A1 (en) | Numerical controller having program resuming function | |
KR20230051532A (ko) | 로봇 보조 프로세스 중에 모니터링 | |
CN115302291A (zh) | 一种机床加工自动线的高效加工方法、装置及介质 | |
JP2002099310A (ja) | 制御装置 | |
US10564887B2 (en) | Control device and data writing method thereof | |
JP7436192B2 (ja) | 制御装置及び産業機械 | |
JP2020086485A (ja) | 数値制御装置 | |
US10664274B2 (en) | Controller and editor | |
JPH09223035A (ja) | 計算機システム | |
US11287797B2 (en) | Numerical control device | |
WO2024003990A1 (ja) | プログラム最適化装置及び記憶媒体 | |
CN111105062B (zh) | 基于设备状态的物料调度方法及物料调度系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |