自动化流程的管理方法、装置、电子设备及存储介质
文献发布时间:2023-06-19 19:13:14
技术领域
本申请涉及自动化领域,更具体地涉及一种自动化流程的管理方法、一种自动化流程的管理装置、一种电子设备及一种存储介质。
背景技术
目前,很多的领域都在不断地实现自动化改造,从而达到解放人力、提高效率的目的。不论是自动化制造、自动化检测还是自动化试验/实验等,都会大量使用自动化系统。在自动化系统中,将整个自动化流程拆解为各个设备执行的多个操作。该操作不仅包括执行设备对目标如进行处理的主操作,还包括转运设备对目标在不同的执行设备间进行转运的转运操作。
以实验室自动化系统为例,可以通过集成不同厂商的执行设备如培养箱、离心机、移液工作站、去盖器、酶标仪等对对应的样本执行不同的实验操作。此外,在不同的执行设备间往往还需要通过诸如机械臂的转运设备来对样本进行转运操作,以保证实验流程的顺利执行。在自动化流程的运行过程中,每个转运设备完成每个转运操作都需要一定的执行时间,但会因为设备故障或者通信问题导致超时的发生。此外,由于某些样本本身对暴露时间有特殊要求。例如在对孔板所载的菌液进行转运时,超过一定时间就可能导致菌液毁坏。
现有技术中,自动化系统可以按时间规划自动化流程中的操作。例如,自动化流程中的一个转运设备会花费一定的时间执行对应的转运操作。自动化系统可以据此对自动化流程中的、位于该转运设备之后的后续设备的执行操作进行规划,以使后续设备按照规划执行对应的操作。但通常忽视了对样本转运的转运操作时间过长从而导致样本的暴露时间过长的问题,这进而可能会导致样本的损坏。而样本的损坏极有可能使得自动化流程无法正常执行,从而得出错误的结果。
发明内容
考虑到上述问题而提出了本申请。根据本申请的第一方面,提供了一种自动化流程的管理方法。包括:获取自动化流程中相邻两个节点之间的时间约束信息和节点信息,其中,时间约束信息用于约束目标在相邻两个节点之间的转运操作的执行时间;基于相邻两个节点的节点信息,确定转运操作的总时间;以及基于总时间,校验时间约束信息是否合理。
示例性地,节点信息包括节点类型,节点类型包括设备节点,设备节点的节点信息还包括:设备节点对应的设备所支持的操作的时长信息;基于相邻两个节点的节点信息,确定转运操作的总时间,包括:基于节点类型以及设备节点对应的设备所支持的操作的时长信息,确定总时间。
示例性地,节点类型还包括起始节点;基于节点类型以及设备节点对应的设备所支持的操作的时长信息,确定总时间,包括:在相邻两个节点中的上游节点是起始节点的情况下,确定相邻两个节点中的下游节点对应的前操作的第一执行时间,其中,前操作为在该下游节点对应的设备执行自身操作之前完成的操作;以及将第一执行时间确定为总时间。
示例性地,基于节点类型以及设备节点对应的设备所支持的操作的时长信息,确定总时间,包括:在相邻两个节点均是设备节点的情况下,确定相邻两个节点中的上游节点对应的后操作的第二执行时间,并确定相邻两个节点中的下游节点对应的前操作的第三执行时间,其中,后操作为在该上游节点对应的设备执行自身操作之后完成的操作,前操作为在该下游节点对应的设备执行自身操作之前完成的操作;以及将第二执行时间和第三执行时间加和,以获得总时间。
示例性地,节点类型还包括结束节点;基于节点类型以及设备节点对应的设备所支持的操作的时长信息,确定总时间,包括:在相邻两个节点中的下游节点是结束节点的情况下,确定相邻两个节点中的上游节点对应的后操作的第四执行时间,其中后操作为在该上游节点对应的设备执行自身操作之后完成的操作;以及将第四执行时间确定为总时间。
示例性地,获取自动化流程中相邻两个节点之间的时间约束信息和节点信息,包括:对于自动化流程中的每个起始节点或设备节点,获取该起始节点或设备节点的节点信息,遍历与该起始节点或设备节点直接连接的下游节点,并且对于该下游节点是设备节点或结束节点的情况,获取该下游节点的节点信息。
示例性地,相邻两个节点中的设备节点对应多个目标,时间约束信息用于分别约束多个目标中的每个目标在相邻两个节点之间的转运操作的执行时间,确定转运操作的总时间,包括:确定对多个目标中的每个目标的转运操作的总时间;校验时间约束信息是否合理,包括:基于对每个目标的转运操作的总时间,分别校验每个目标的时间约束信息是否合理。
示例性地,时间约束信息包括过期时间信息,校验时间约束信息是否合理,包括:在过期时间信息所示的过期时间大于或等于总时间的情况下,确定时间约束信息合理;以及在过期时间信息所示的过期时间小于总时间的情况下,确定时间约束信息有误。
示例性地,在获取自动化流程中相邻两个节点之间的时间约束信息之前,方法还包括:显示图形用户界面,图形用户界面包括可操作控件;响应于用户利用可操作控件的第一操作,自用户接收时间约束信息。
示例性地,时间约束信息包括过期时间信息,在校验时间约束信息是否合理之后,方法还包括:在确定时间约束信息合理之后,响应于用户的第二操作,运行自动化流程;其中,在运行自动化流程的过程中,确定目标在相邻两个节点之间的转运操作的执行时间是否超出过期时间信息所示的过期时间,并且,在超出的情况下,将目标标记为过期状态。
示例性地,在校验时间约束信息是否合理之后,方法还包括:根据相邻两个节点在自动化流程中的连接关系,确定相邻两个节点之间的最小子操作的执行次序;至少根据执行次序以及每个最小子操作的预设执行时间,再次确定总时间;以及根据所再次确定的总时间,再次校验时间约束信息是否合理。
根据本申请的第二方面,还提供一种自动化流程的管理装置,包括:获取模块,用于获取自动化流程中相邻两个节点之间的时间约束信息和节点信息,时间约束信息用于约束目标在相邻两个节点之间的转运操作的执行时间;确定模块,用于基于相邻两个节点的节点信息,确定转运操作的总时间;以及校验模块,用于基于总时间,校验时间约束信息是否合理。
根据本申请的第三方面,还提供一种电子设备,包括处理器和存储器,其中,存储器中存储有计算机程序指令,计算机程序指令被处理器运行时用于执行上述自动化流程的管理方法。
根据本申请的第四方面,还提供一种存储介质,在存储介质上存储了程序指令,程序指令在运行时用于执行上述自动化流程的管理方法。
在上述技术方案中,利用自动化流程中的相邻两个节点的节点信息,确定在两个节点之间对目标的转运操作的总时间,进而基于该总时间对预先设置的、用于约束该转运操作的执行时间的时间约束信息进行校验。这种方案可以确保目标在自动化流程中的有效性,从而可以保证自动化流程的准确、顺利进行。
上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,而可依照说明书的内容予以实施,并且为了让本申请的上述和其它目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。
附图说明
通过结合附图对本申请实施例进行更详细的描述,本申请的上述以及其它目的、特征和优势将变得更加明显。附图用来提供对本申请实施例的进一步理解,并且构成说明书的一部分,与本申请实施例一起用于解释本申请,并不构成对本申请的限制。在附图中,相同的参考标号通常代表相同部件或步骤。
图1示出根据本申请一个实施例的自动化流程的管理方法的示意性流程图;
图2示出根据本申请一个实施例的自动化流程的局部的示意图;
图3a示出根据本申请另一个实施例的自动化流程的管理方法的第一部分的示意性流程图;
图3b示出根据本申请另一个实施例的自动化流程的管理方法的第二部分的示意性流程图;
图3c示出根据本申请另一个实施例的自动化流程的管理方法的第三部分的示意性流程图;
图4示出根据本申请一个实施例的自动化流程的管理装置的示意性框图;以及
图5示出根据本申请一个实施例的电子设备的示意性框图。
具体实施方式
为了使得本申请的目的、技术方案和优点更为明显,下面将参照附图详细描述根据本申请的示例实施例。显然,所描述的实施例仅仅是本申请的一部分实施例,而不是本申请的全部实施例,应理解,本申请不受这里描述的示例实施例的限制。基于本申请中描述的本申请实施例,本领域技术人员在没有付出创造性劳动的情况下所得到的所有其它实施例都应落入本申请的保护范围之内。
为了至少部分地解决上述技术问题,根据本申请的第一方面,提供了一种自动化流程的管理方法。根据本申请实施例的管理方法可以应用于各种领域中针对各种合适的目标的自动化流程。为了简便,下文以生物化学领域的自动化系统中的自动化流程为例进行展开阐释。
图1示出了根据本申请一个实施例的自动化流程的管理方法1000的示意性流程图。如图1所示,该管理方法1000可以包括以下步骤。
步骤S1200,获取自动化流程中相邻两个节点之间的时间约束信息和节点信息,其中,时间约束信息用于约束目标在相邻两个节点之间的转运操作的执行时间。
自动化流程可以是根据实际的实验/试验需求预先设计好的。示例性而非限制性地,步骤S1200可以是在自动化流程设计完成之后,响应于用户的任一触发操作执行的。该触发操作可以是任何合适的操作,例如其可以是在自动化流程设计后,用户点击“保存流程”的控件所触发的。根据本申请实施例,自动化流程可以包含一系列对目标执行实验/试验所需的各种相关操作。其中可以包含各种流程信息,例如各个操作的执行主体和执行对象、执行操作的内容、执行条件、执行时间、执行逻辑等。目标可以是在该自动化流程中被操作的对象,其可以是任何合适的目标。示例性而非限制性地,目标可以是诸如承载菌液等样本的试管、玻璃片、孔板等实验用的耗材。当然,对于其他领域的自动化流程,目标也可以是其他形式的被操作对象。
自动化流程可以是由多个节点按照一定的连接顺序连接而成的流程。每个节点的节点信息可以包括在该节点要完成的各种操作相关的任何信息,例如与操作类型、操作时间、操作指令、操作的相关执行主体和/或操作中所涉及的子操作相关的信息等等。在节点要完成的操作可以是任何合适的操作。这些操作例如:执行设备对目标执行的对应的处理操作,具体例如离心机对目标执行的诸如离心处理操作。这些操作又例如转运设备对目标执行的不同设备间的转运操作,转运操作对应的节点信息可以包括目标的位置的信息,例如关于目标的起始位置、目标的结束位置以及流程发生错误时目标的错误位置的信息。此外,有些节点可以用于流程控制,例如用于执行流程中的判断和循环。另外,在步骤S1200中相邻两个节点之间的节点信息既可以是建立自动化流程时设置的节点信息,也可以是在建立自动化流程之前,预先对节点进行配置的节点信息。
示例性而非限制性地,节点信息可以包括节点名称、节点类型、节点操作的预估耗时等。具体地,节点名称是用于与其他节点进行区分的标识,可以是用户自命名的,也可以直接采用节点的主要操作对应的设备的名称,例如离心机,节点类型是基于节点对应的功能进行划分的,例如设备节点、起始节点、结束节点、流程控制节点等,节点操作的预估耗时可以表示该节点对目标执行的各个操作的预估耗时。
相邻两个节点可以是自动化流程中的任意两个按照执行先后顺序直接连接的节点,在该两个节点之间可以获取到时间约束信息。相邻两个节点例如包括上游节点A和下游节点B。容易理解,上游节点A比下游节点B距离自动化流程的起始端更近。下游节点B对应的主操作的执行是在上游节点对应的主操作执行结束之后才开始执行,两者之间具有顺次执行的逻辑关系。需要说明的是,每个节点相关的操作可以包括主操作,前操作和后操作。
如前所述,在自动化流程的实际运行过程中,由于设备故障或者通信问题等各种各样的因素影响,往往导致操作的实际执行时间可能超出其理论执行时间。同时对于一些特定的目标,例如菌液等实验耗材,其在特定的设备中或转运过程中超出一定时间可能导致过期而无效。综合这两方面因素的考虑,为保证自动化流程的顺利进行同时保证目标的有效性,可以对一些相关操作的执行时间进行合理的容错。可以通过在时间约束信息中设置合理的时间约束条件约束相关操作的实际执行时间。这样既可以在其超过理论执行时间时仍允许其继续正常执行,又可以在其超出约束的安全时间或有效时间时对目标进行诸如过期或待丢弃的标记,还可以在将其标记为待丢弃之后,进一步将其搬运至丢弃位置。
根据本申请实施例,可以根据实际的时间约束需求,在相邻两个节点之间设置时间约束信息。该时间约束信息用于约束目标在相邻两个节点之间的转运操作的执行时间。如前所述,转运操作可以是转运设备对目标执行的操作。对于上游节点A和下游节点B中的任意一个节点涉及转运操作的情况,可以在自动化流程的设计过程中,在两个节点之间设置时间约束信息。相邻两个节点之间的时间约束信息的约束内容也可以根据流程的约束需求进行任意设置。示例性而非限制性地,时间约束信息可以包括过期时间信息和最大等待时间信息。过期时间信息可以是预设的对目标的转运操作的最大安全时长,以在超出该时长时对目标执行相应的过期处理,例如标记为过期。最大等待时间信息可以是预设的对目标的转运操作的最大有效时长,以在超出该时长时对目标执行相应的无效和/或丢弃处理,例如标记为无效并丢弃。当然,时间约束信息也可以是其他合适的用于约束对目标的转运操作的时长的信息。在步骤S1200可以通过例如读取相邻两个节点之间的时间约束信息的方式得到时间约束信息中所约束的相应时长。
步骤S1400,基于相邻两个节点的节点信息,确定转运操作的总时间。
如前所述,相邻两个节点的节点信息可以包括在每个节点执行的各种操作相关的任何信息。示例性地,节点信息可以包括与节点对应的各种操作的操作列表和每种操作的预计执行时间。例如,在节点涉及对目标的转运操作的情况下,节点信息可以包括在该节点执行的转运操作的子操作列表和各个子操作的预计执行时间。在此步骤中,即可根据在两个节点分别执行的转运操作的子操作的预计执行时间,确定在两个节点之间执行的对目标的转运操作的总时间。即,可以基于相邻两个节点中的每个节点的节点信息,确定其中所包含的在该两个节点间执行的转运操作的预估时间信息,并可以基于该预估时间信息确定总时间。该总时间可以是预计的、在相邻两个节点间执行的转运操作的所有子操作的总执行时间。此步骤可以采用任何合适的方式实现,例如可以首先从每个节点的节点信息中筛选出涉及节点间的转运操作的各个子操作,然后可以按照合适的统计方法基于筛选出的各个子操作的预计执行时间,确定两个节点间的转运操作的总时间。
步骤S1600,基于总时间,校验时间约束信息是否合理。
在自动化流程的设计阶段,可能由于用户在预估时间时预估不当等各种原因导致当时所设置的流程中的部分相邻两个节点间的时间约束信息不合理。而在此步骤中,则可以遍历整个自动化流程中的各个节点,对每相邻两个节点之间的时间约束信息的合理性进行校验。
如前所述,在步骤S1400中所确定的总时间,可以是采用任何合适的方法统计的、在相邻两个节点间的转运操作的所有子操作的预计执行时间或说理论执行时间。而步骤S1200中所获取的该两个节点间的时间约束信息用于约束该转运操作的实际执行时间。并且两个节点之间的时间约束信息的设置目的是为了对例如转运操作的执行时间进行合理的容错,即允许转运操作的实际执行时间在保证目标的安全或有效范围内适当超出理论执行时间。换言之,时间约束信息中所约束的实际执行时间是立足于其理论时间进行设置的,两者之间存在相关关系。因此,可以在步骤S1600,基于步骤S1400所确定的转运操作的总时间,校验该相邻两个节点间的时间约束信息是否合理。可以采用任何合适的校验逻辑,校验时间约束信息的合理性。例如可以通过对比总时间和时间约束信息中所指示的约束时间的大小进行校验等。
在上述技术方案中,利用自动化流程中的相邻两个节点的节点信息,确定在两个节点之间对目标的转运操作的总时间,进而基于该总时间对预先设置的、用于约束该转运操作的执行时间的时间约束信息进行校验。这种方案可以确保目标在自动化流程中的有效性,从而可以保证自动化流程的准确、顺利进行。
示例性地,在步骤S1200获取自动化流程中相邻两个节点之间的时间约束信息之前,方法1000还包括步骤S1110和步骤S1120。
在步骤S1110,显示图形用户界面,图形用户界面包括可操作控件。如前所述,可以在自动化流程的设计阶段,对相邻两个节点间的时间约束信息进行设置。相邻两个节点可以是上游节点A和下游节点B。示例性而非限制性地,可以响应于用户对上游节点的时间约束信息的选中操作,显示用于设置时间约束信息的图形用户界面。根据本申请实施例,两个节点间的时间约束信息可以包括一种或多种,因此,在图形用户界面中,也可以包括一个或多个可操作控件。每个可操作控件可以用于操作设置每一种时间约束信息。例如,两个节点间的时间约束信息可以包括过期时间信息和最大等待时间信息。在图形用户界面中可以包括“节点间时间约束信息设置”列表。在该列表下可以包括两个用于设置在当前选中的节点和其相邻的下游节点之间的时间约束信息的可操作控件。其中一个可以是用于设置该两个节点间的转运操作的“过期时间”的可操作控件,另一个可以是用于设置“最大等待时间”的可操作控件。可操作控件可以是任何合适的控件,例如输入控件或下拉列表选择控件。此外,对于该相邻两个节点之间包括对多个目标的时间约束信息的情况下,还可以利用该图形用户界面对每个目标的时间约束信息进行设置。同样在上述示例中,在图形用户界面中的“节点间时间约束信息设置”列表下还可以包括多行排布的可操作性控件,可以分别用于设置用于约束每个目标的转运操作的时间约束信息。
在步骤S1120,响应于用户利用可操作控件的第一操作,自用户接收时间约束信息。用户利用可操作控件的第一操作可以是任何合适的操作。第一操作例如可以是用户通过输入控件输入期望的时间数字的操作,也可以是用户通过下拉列表控件选择期望的时间数字的操作。在用户输入完成或选定其期望的约束时间时,可以接收用户输入的或选定的时间约束信息,并可以显示在图形用户界面上。例如,可以在步骤S1120接收用户利用图形用户界面中的“过期时间”列表下的可输入控件输入的时间数字“55”,并可以在该界面上对应显示该约束时间“55”。由此可以完成对在两个节点间执行的对例如“耗材1”的转运操作的执行时间的约束。在该设置完成后,在步骤S1200可以在该节点获取目标的该过期时间,并可以在步骤S1600基于确定的总时间,对该时间约束信息中的过期时间“55”秒进行校验。
上述提供可视化的人机交互界面和可操作控件供用户自由设置时间约束信息的方案,可以方便用户设置更准确的时间约束信息。用户体验也较好。
示例性地,节点信息包括节点类型。如前所述,节点类型是基于节点对应的功能进行划分的,例如设备节点、起始节点、结束节点、流程控制节点等。根据本申请实施例,节点的节点类型可以包括设备节点。设备节点的节点信息还包括:设备节点对应的设备所支持的操作的时长信息。设备节点对应的设备可以包括一个或多个设备。设备节点对应的设备可以至少包括用于对目标执行主操作的主要执行设备。此外,对于在设备节点要完成目标的转运操作的情况,该设备节点对应的设备还可以包括对目标执行转运操作的转运设备。设备节点对应的设备所支持的操作的时长信息可以包括主要执行设备对目标的主操作的预计时长信息,还可以包括转运设备对目标的转运操作的预计时长信息。容易理解,设备节点对应的设备所支持的操作是否属于转运操作并不以执行主体本身进行区分,而是以执行的操作的目的进行区分。该转运设备也可以包括主要执行设备和主要执行设备的周边设备,例如开盖和关盖设备。该转运设备也可以是其他设备例如机械臂。
在一个具体的示例中,对于主要执行设备为离心机的设备节点,该设备节点对应的设备可以包括离心机和机械臂等。因此,该离心机对应的设备节点的节点信息可以包括离心机执行的离心操作的预计时长、离心机或离心机的关盖设备执行的关盖操作的预计时长以及机械臂将承载菌液的孔板从离心机移动至下一节点的预计时长。在实验室的自动化流程中,设备节点的主要执行设备还可以包括移液工作站、培养箱、酶标仪等。转运设备可以包括上述主要执行设备本身,也可以仅包括机械臂。
步骤S1400基于相邻两个节点的节点信息,确定转运操作的总时间,包括步骤S1410。在步骤S1410,基于节点类型以及设备节点对应的设备所支持的操作的时长信息,确定总时间。即,相邻两个节点中的至少一个是设备节点。可以根据该两个节点的节点类型,以及两个节点中的每个设备节点对应的设备所支持的操作的时长信息,确定总时间。在一个示例中,对于相邻两个节点均为设备节点的情况,可以分别统计其中的上游节点对应的设备所支持的相关操作的时长信息和下游节点对应的设备所支持的相关操作的时长信息,进而确定总时间。相关操作例如是对目标的转运操作。在另一示例中,对于相邻两个节点中仅包括一个设备节点的情况,可以基于另一节点的节点类型,统计设备节点对应的设备所支持的相关操作的时长信息,确定总时间。该相关操作例如对目标执行的部分转运操作。
根据上述方案,可以基于自动化流程中相邻两个节点的节点类型以及设备节点对应的设备所支持的操作的时长信息,确定总时间。该方案确定的总时间较准确,从而所对时间约束信息的校验也较准确。并且,该方案实较简单,计算量也较小。
示例性地,节点类型还包括起始节点。起始节点可以是位于自动化流程的起始端的节点。对于步骤S1410基于节点类型以及设备节点对应的设备所支持的操作的时长信息,确定总时间包括步骤S1411和步骤S1412。
在步骤S1411,在相邻两个节点中的上游节点是起始节点的情况下,确定相邻两个节点中的下游节点对应的前操作的第一执行时间,其中,前操作为在该下游节点对应的设备执行自身操作之前完成的操作。
根据本申请实施例,对目标的转运操作可以包括设备节点所涉及的、在主要执行设备执行主操作之前完成的前操作。示例性地,前操作可以是由设备节点涉及的搬运设备执行的搬运操作和主要执行设备或主要执行设备的周边设备如开盖设备执行的开盖操作、关盖操作等。该前操作可以理解为在主要执行设备执行主操作之前的准备操作。
相邻两个节点中的上游节点可以是起始节点,下游节点可以是设备节点。例如上游节点是耗材1的起始节点,下游节点是表示移液工作站的设备节点。则可以基于移液工作站的设备节点的节点信息,确定在移液工作站执行移液操作之前完成的前操作的第一执行时间。该前操作可以是为了方便移液工作站执行移液操作而做的准备工作。可以基于该设备节点的节点信息中的前操作列表找到其前操作的第一执行时间。例如,前操作可以包括机械臂将耗材1从其起始位置搬运至移液工作站的搬运操作。此时,可以将预设的机械臂搬运耗材1的搬运操作时间作为第一执行时间。例如,在该搬运时间为20秒的情况下,第一执行时间即等于20秒。容易理解,对于设备节点所涉及的前操作包括多个操作的情况下,该第一执行时间可以是该多个操作的预计执行时间之和。即可以统计该设备节点所涉及的所有前操作的预计执行时间的和。
进而,可以在步骤S1412,将第一执行时间确定为总时间。例如,可以将耗材1从起始位置搬运至移液工作站所用的预计搬运时间20秒确定为节点间的转运操作的总时间。或者也可以将起始节点直接连接的设备节点所涉及的多个前操作的预计执行时间之和确定为转运操作的预计总时间。进而可以基于该总时间,校验起始节点和设备节点之间的时间约束信息是否合理。本领域普通技术人员容易理解该方案,在此不再赘述。
根据上述方案,可以在相邻两个节点为起始节点和设备节点的情况下,将该设备节点所涉及的前操作的第一执行时间,确定在为该两个节点之间的转运操作的预计总时间。这种方案执行逻辑简单,计算量小,且确定的总时间较准确,从而可以提高校验的效率和准确性。
示例性地,步骤S1410基于节点类型以及设备节点对应的设备所支持的操作的时长信息,确定总时间,包括步骤S1413和步骤S1414。
在步骤S1413,在相邻两个节点均是设备节点的情况下,确定相邻两个节点中的上游节点对应的后操作的第二执行时间,并确定相邻两个节点中的下游节点对应的前操作的第三执行时间,其中,后操作为在该上游节点对应的设备执行自身操作之后完成的操作,前操作为在该下游节点对应的设备执行自身操作之前完成的操作。
根据本申请实施例,对目标的转运操作可以包括设备节点所涉及的、在主要执行设备执行主操作之前完成的前操作,也可以包括在主要执行设备执行主操作之后完成的后操作。相邻两个节点均可以是设备节点。每个设备节点均可以涉及前操作和后操作。对于两个设备节点间的转运操作可以是两个设备节点中的上游设备节点所涉及的转运设备对目标执行的后操作和下游设备节点所涉及的转运设备对该目标执行的前操作。每个设备的节点信息均可以包括前操作列表和后操作列表。可以从上游设备节点的后操作列表中找到其中对目标的后操作的预计执行时间作为第二执行时间。并可以从下游设备节点的前操作列表中找到其中对目标的前操作的预计执行时间作为第三执行时间。每个设备节点所涉及的前操作和后操作可以是在流程设计阶段根据实际需求进行设置的各种合适的操作。上游设备节点的后操作可以视作将目标从该上游设备节点主要执行设备中转运至下游设备节点的主要执行设备的转运操作。在一个具体的示例中,上游设备节点可以是主要执行设备为离心机的设备节点,下游设备节点可以是主要执行设备为培养箱的设备节点。该离心机的上游设备节点所涉及的后操作可以是在离心机离心操作之后完成的操作。例如在该离心机的设备节点可以包括离心机将耗材旋转至出口处的旋转操作、离心机开门操作、机械臂将耗材取出的操作、离心机关门操作。因此,可以基于该离心机设备节点的前后操作列表,确定上述所有后操作的预计执行时间之和,作为第二执行时间。主要执行设备为培养箱的下游设备节点所涉及的前操作可以包括培养箱的放板操作。可以将该放板操作的预计执行时间作为第三执行时间。
在步骤S1414,将第二执行时间和第三执行时间加和,以获得总时间。可以计算上述步骤所确定的上游设备节点所涉及的后操作的预计执行时间和下游设备节点所涉及的前操作的预计执行时间的和,并将两个执行时间的确定为目标在该两个设备节点之间的转运操作的预计总时间。
根据上述方案,对于相邻两个节点均为设备节点的情况,通过将上游设备节点所涉及的后操作的预计执行时间和下游设备节点所涉及的前操作的预计执行时间的和确定为目标在相邻两个节点间的转运操作的预计总时间,进而基于总时间验证时间约束信息是否合理。这种方案执行逻辑简单,计算量小,且确定的总时间较准确,从而可以提高校验的效率和准确性。
示例性地,节点类型还包括结束节点。结束节点可以是表示流程结束的结束位置点。容易理解,结束位置点并非设备节点,因此在结束节点不包括对目标的转运操作。步骤S1410基于节点类型以及设备节点对应的设备所支持的操作的时长信息,确定总时间,包括步骤S1415和步骤S1416。在步骤S1415,在相邻两个节点中的下游节点是结束节点的情况下,确定相邻两个节点中的上游节点对应的后操作的第四执行时间,其中后操作为在该上游节点对应的设备执行自身操作之后完成的操作。在步骤S1416,可以将确定的第四执行时间确定为总时间。
对于相邻两个节点的上游节点是设备节点、下游节点是结束节点的情况,可以基于上游节点的节点信息,确定上游节点所涉及的所有后操作的预计执行时间,作为第四执行时间。与结束节点直接连接的设备节点所涉及的后操作也可以是任何合适的转运操作。如对主要执行设备的开门操作或关门操作等,或者也可以包括机械臂将目标从设备节点的主要执行设备搬运至结束位置点的搬运操作等。该第四执行时间可以是上述后操作的预计执行时间之和。可以将该第四执行时间作为在该设备节点和结束节点之间的转运操作的预计总时间,并可以基于该总时间校验时间约束信息是否合理。
根据上述方案,对于相邻两个节点为设备节点和结束节点的情况,可以将设备节点所涉及的后操作的预计执行时间确定为该两个节点之间的转运操作的预计总时间,进而可以基于该总时间校验时间约束信息的合理性。这种方案执行逻辑简单,计算量小,且确定的总时间较准确,从而可以提高校验的效率和准确性。
示例性地,步骤S1200获取自动化流程中相邻两个节点之间的时间约束信息和节点信息,包括步骤S1210。
在步骤S1210,对于自动化流程中的每个起始节点或设备节点,获取该起始节点或设备节点的节点信息,遍历与该起始节点或设备节点直接连接的下游节点,并且对于该下游节点是设备节点或结束节点的情况,获取该下游节点的节点信息。根据本申请实施例,可以以整个自动化流程的流程图为导向,遍历整个自动化流程获取每相邻两个节点之间的时间约束信息和节点信息。并且对每相邻两个节点之间的时间约束信息进行校验。具体地,可以按照自动化流程的执行方向,首先获取与耗材的起始节点直接连接的设备节点的节点信息和两者之间的时间约束信息,并校验每个时间约束信息是否合理。其次,可以获取该设备节点和与其直接连接的下游节点,在该下游节点为设备节点或结束节点时,获取该两个节点的节点信息和两者之间的时间约束信息,并进行校验。接着,在该下游节点是设备节点的情况下,可以继续获取与该设备节点直接连接的设备节点或结束节点之间的时间约束信息,并校验时间约束信息的合理性。以此类推,可以持续获取后续的相邻两个节点的时间约束信息并校验其合理性……最终,可以获取自动化流程中的最后一个设备节点和结束节点的节点信息和时间约束信息,并对其时间约束信息进行校验。当然,也可以首先遍历自动化流程中,找到相邻两个节点分别为起始节点和设备节点、设备节点和设备节点、设备节点和结束节点的情况下的、每两个节点的节点信息和时间约束信息。之后再对每两个节点之间的时间约束信息进行分别校验。
根据上述方案,可以遍历整个自动化流程中获取流程中的任意相邻两个节点的节点信息和时间约束信息,并分别校验时间约束信息的合理性。既可以保证对每个时间约束信息均进行有效地校验,从而保证自动化流程的顺利执行。还可以提高校验的效率。
示例性地,相邻两个节点中的设备节点对应多个目标。例如,相邻两个节点中的任一个设备节点包含主要执行设备对多个耗材的操作。该设备节点也涉及对多个耗材执行的转运操作。时间约束信息用于分别约束多个目标中的每个目标在相邻两个节点之间的转运操作的执行时间。
步骤S1400确定转运操作的总时间,包括:确定对多个目标中的每个目标的转运操作的总时间。骤S1600校验时间约束信息是否合理,包括:基于对每个目标的转运操作的总时间,分别校验每个目标的时间约束信息是否合理。例如,在前述步骤S1110和步骤S1120的示例中,接收用户利用图形用户界面的可操作控件输入的时间约束信息,例如“耗材1”的过期时间“55”秒、“耗材2”的过期时间“50”秒。则需要在步骤S1400确定该两个节点的设备节点所涉及的对“耗材1”的转运操作的预设执行时间的总时间。并在步骤S1600对约束“耗材1”的过期时间“55”秒进行校验,并确定过期时间“55”秒设置的是否合理。并且在步骤S1400确定该两个节点的设备节点所涉及的对“耗材2”的转运操作的预设执行时间的总时间。并在步骤S1600对约束“耗材2”的过期时间“50”秒进行校验,并确定其过期时间“50”秒设置的是否合理。
图2示出根据本申请一个实施例的自动化流程的局部的示意图。如图所示,该图中为自动化流程中的三个设备节点。其中上游节点“移液工作站”和下游节点“离心机”为相邻的设备节点。该两个设备节点之间可以包括用于约束对“耗材3”的转运操作的执行时间的时间约束信息。对于该两个设备节点,可以在步骤S1400确定“移液工作站”的设备节点涉及的对“耗材3”的后操作的预计执行时间和“离心机”的设备节点所涉及的对“耗材3”的前操作的预计执行时间的和,作为在该两个节点之间执行的对“耗材3”的转运操作的总时间。并可以在步骤S1600基于确定的总时间,对用于约束对“耗材3”的转运操作的执行时间的时间约束信息进行校验。
在该图中,上游节点“移液工作站”和下游节点“培养箱”也为相邻的设备节点。在该两个设备节点之间可以包括分别用于约束对“耗材4”和“耗材5”的转运操作的时间约束信息。可以在步骤S1400确定“移液工作站”的设备节点涉及的对“耗材4”的后操作的预计执行时间和“培养箱”的设备节点所涉及的对“耗材4”的前操作的预计执行时间的和,作为在该两个节点之间执行的对“耗材4”的转运操作的总时间,如称作“耗材4的总转运时间”。并确定“移液工作站”的设备节点涉及的对“耗材5”的后操作的预计执行时间和“培养箱”的设备节点所涉及的对“耗材5”的前操作的预计执行时间的和,作为在该两个节点之间执行的对“耗材5”的转运操作的总时间,如称作“耗材5的总转运时间”。在步骤S1600可以基于“耗材4的总转运时间”,对用于约束对“耗材4”的转运操作的执行时间的时间约束信息进行校验;并可以基于“耗材5的总转运时间”,对用于约束对“耗材5”的转运操作的执行时间的时间约束信息进行校验。
根据上述方案,可以在设备节点包括对多个目标的时间约束信息的情况下,分别对每个目标的时间约束信息进行校验。这样可以保证校验的准确性和有效性。从而可以保证自动化流程的准确执行。
示例性地,时间约束信息包括过期时间信息。如前所述,过期时间信息可以用于指示目标的过期时间的信息。预设的过期时间可以等于转运操作的执行时间与容错时间的和。步骤S1600校验时间约束信息是否合理,包括步骤S1610和步骤S1620。
在步骤S1610,在过期时间信息所示的过期时间大于或等于总时间的情况下,确定时间约束信息合理。若过期时间大于或等于在步骤S1400确定的在该两个节点之间执行的对目标的转运操作的预设时间,则可以说明该过期时间设置的较合理。在步骤S1620,在过期时间信息所示的过期时间小于总时间的情况下,确定时间约束信息有误。即过期时间应不小于转运操作的预计总时间。否则,说明时间约束信息设置的不合理,从而可能影响自动化流程的顺利进行。
在确定时间约束信息不合理的情况下还可以发出相应的提示信息以提醒用户进行修改。例如,可以在校验的界面弹出“校验失败”的提示框,还可以提示校验失败的节点信息。从而可以方便用户基于提示信息对相应的节点之间的时间约束信息进行修改。
根据上述方案,可以通过比较相邻两个节点间的过期时间信息所示的过期时间与该两个节点间的转运操作的预设总时间的大小,确定时间约束信息是否合理。该校验逻辑更简单,计算量也较小。
示例性地,在步骤S1600校验时间约束信息是否合理之后,方法1000还包括步骤S1710、步骤S1720和步骤S1730。在上述对相邻两个节点间的时间约束信息进行初次校验之后,还可以对该时间约束信息进行再次校验。例如,可以在用户对流程中的时间约束信息进行修改之后,响应于用户对流程的预运行操作,通过执行步骤S1710、步骤S1720和步骤S1730对时间约束信息进行再次校验。
在步骤S1710,根据相邻两个节点在自动化流程中的连接关系,确定相邻两个节点的最小子操作的执行次序。例如,可以根据自动化流程中的相邻两个节点的节点信息,解析相邻两个节点所涉及的各个最小子操作。这些最小子操作例如可以是设备节点所涉及的各个设备对目标执行的各种操作的最小操作单元,其可以包括主要执行设备执行的主操作的最小操作单元,也可以包括转运设备所执行的前操作和后操作的最小操作单元。例如,最小子操作例如离心机的开门操作、关门操作、机械臂的搬运操作、离心机的旋转操作等等。然后可以基于两个节点的连接关系,确定解析出的各个最小子操作的执行次序。该执行次序例如可以包括串行执行次序,也可以包括并行执行次序。
在步骤S1720,至少根据执行次序以及每个最小子操作的预设执行时间,再次确定总时间。例如,可以根据确定的解析出的各个最小子操作的执行次序,确定一组按照串行次序执行的串行子操作。可以对应得到将该串行子操作中的每个最小子操作的预设执行时间。并可以基于串行子操作中涉及目标的转运操作的各个最小子操作的执行时间,再次确定转运操作的总时间。例如,对于相邻两个节点是起始节点和设备节点的情况,可以计算该设备节点对应的前操作所涉及的每个最小子操作的第一预设执行时间之和,以作为转运操作的总时间;对于相邻两个节点均为设备节点的情况,可以计算上游设备节点对应的后操作所涉及的每个最小子操作的第二预设执行时间之和以及下游设备节点对应的前操作所涉及的每个最小子操作的第三预设执行时间之和,以及将第二预设执行时间之和和第三预设执行时间之和相加,以作为转运操作的总时间;对于相邻两个节点分别为设备节点和结束节点的情况,可以计算该设备节点对应的后操作所涉及的每个最小子操作的第四预设执行时间之和,以作为转运操作的总时间。在一个具体的示例中,例如串行子操作中涉及目标的转运操作的最小子操作包括离心机的开门操作、关门操作、机械臂的搬运操作,因此可以将离心机的开门操作、关门操作、机械臂的搬运操作的预设执行时间之和,确定为总时间。
在步骤S1730,根据所再次确定的总时间,再次校验时间约束信息是否合理。该步骤与步骤S1600类似,本领域普通技术人员容易理解其各种实现方案,在此不再赘述。
根据上述方案,可以在初次校验两个节点间的时间约束信息正确之后,在自动化流程的运行之前,对该时间约束信息进行再次校验。这种方案可以保证时间约束信息的合理性,从而可以确保目标的有效性和可用性,进而可以保证自动化流程的顺利有效执行。
示例性地,时间约束信息包括过期时间信息,在步骤S1600校验时间约束信息是否合理之后,方法1000还包括步骤S1800。
在步骤S1800,在确定时间约束信息合理之后,响应于用户的第二操作,运行自动化流程。其中,在运行自动化流程的过程中,确定目标在相邻两个节点之间的转运操作的执行时间是否超出过期时间信息所示的过期时间,并且,在超出的情况下,将目标标记为过期状态。第二操作可以是任何合适的操作。示例性而非限制性地,在用户界面可以包括“运行流程”的控件,第二操作可以是用户点击该控件的操作。根据本申请实施例,在校验相邻两个节点之间的时间约束信息正确之后,可以运行该自动化流程。并且,在时间约束信息包括过期时间信息的情况下,可以在流程运行至与该过期时间信息关联的转运操作时,可以对目标在该两个节点之间的转运操作的实际执行时间进行监控,并可以在其实际执行时间超过过期时间时,将该目标标记为过期状态。从而可以提示用户该目标已过期,以方便对该过期目标进行相应的处理。
上述方案,可以在自动化流程的运行阶段,基于校验正确的时间约束信息对目标的转运操作的实际执行时间进行过期监控,并在确定目标过期的情况下对目标进行过期标记。从而可以提醒用户对过期的目标进行特别关注,以保证目标的有效性和可用性,进而可以保证自动化流程的顺利有效执行。
图3a至图3c分别示出根据本申请另一个实施例的自动化流程的管理方法的三个不同部分的示意性流程图。其中,图3a示出根据本申请另一个实施例的自动化流程的管理方法的第一部分的示意性流程图。如图3a所示,对于自动化流程中的每个起始节点,遍历从该节点出发的每个线条。若与该线条连接的另一节点是设备节点,则可以获取该两个节点的节点信息和两个节点间的时间约束信息。时间约束信息例如包括过期时间信息。并可以计算设备节点所涉及的前操作时间,作为该两个节点间的转运操作的预计总时间。然后,可以通过对比过期时间信息所示的过期时间和总时间的大小,校验时间约束信息是否合理。其中若过期时间小于总时间,则确定校验失败,否则确定校验成功。图3b示出根据本申请另一个实施例的自动化流程的管理方法的第二部分的示意性流程图。如图3b所示,对于自动化流程中的每个设备节点,遍历从该节点出发的每个线条。对于与该线条连接的另一节点是设备节点的情况,可以获取该两个设备节点的节点信息和两个设备节点之间的时间约束信息。时间约束信息例如包括过期时间信息。并可以计算上游设备节点所涉及的后操作时间和下游设备节点所涉及的前操作时间之和,作为该两个节点间的转运操作的预计总时间。然后,可以通过对比过期时间信息所示的过期时间和总时间的大小,校验时间约束信息是否合理。图3c示出根据本申请另一个实施例的自动化流程的管理方法的第三部分的示意性流程图。如图3c所示,对于自动化流程中的每个设备节点,遍历从该节点出发的每个线条。对于与该线条连接的另一节点是结束节点的情况,可以获取两个节点的节点信息和两个节点之间的时间约束信息。时间约束信息例如包括过期时间信息。并可以计算上游设备节点所涉及的后操作时间,作为该两个节点间的转运操作的预计总时间。然后,可以通过对比过期时间信息所示的过期时间和总时间的大小,校验时间约束信息是否合理。
根据本申请第二方面,还提供一种自动化流程的管理装置。图4示出根据本申请一个实施例的自动化流程的管理装置400的示意性框图。如图所示,该装置400包括:
获取模块410,用于获取自动化流程中相邻两个节点之间的时间约束信息和节点信息,其中,时间约束信息用于约束目标在相邻两个节点之间的转运操作的执行时间。
确定模块420,用于基于相邻两个节点的节点信息,确定转运操作的总时间。
校验模块430,用于基于总时间,校验时间约束信息是否合理。
根据本申请第三方面,还提供一种电子设备。图5示出根据本申请一个实施例的电子设备500的示意性框图。如图所示,该电子设备500包括处理器510和存储器520。其中,存储器中存储有计算机程序指令,计算机程序指令被处理器运行时用于执行上述自动化流程的管理方法1000。
根据本申请的第四方面,还提供了一种存储介质。在存储介质上存储了程序指令,程序指令在运行时用于执行上述自动化流程的管理方法。存储介质例如可以包括平板电脑的存储部件、个人计算机的硬盘、只读存储器(ROM)、可擦除可编程只读存储器(EPROM)、便携式只读存储器(CD-ROM)、USB存储器、或者上述存储介质的任意组合。所述计算机可读存储介质可以是一个或多个计算机可读存储介质的任意组合。
本领域普通技术人员通过阅读上述有关自动化流程的管理方法的相关描述,可以理解上述自动化流程的管理装置、电子设备和存储介质的具体实现方案及其有益效果,为了简洁,在此不再赘述。
尽管这里已经参考附图描述了示例实施例,应理解上述示例实施例仅仅是示例性的,并且不意图将本申请的范围限制于此。本领域普通技术人员可以在其中进行各种改变和修改,而不偏离本申请的范围和精神。所有这些改变和修改意在被包括在所附权利要求所要求的本申请的范围之内。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。例如,以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个设备,或一些特征可以忽略,或不执行。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本申请的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本申请并帮助理解各个发明方面中的一个或多个,在对本申请的示例性实施例的描述中,本申请的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该本申请的方法解释成反映如下意图:即所要求保护的本申请要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如相应的权利要求书所反映的那样,其发明点在于可以用少于某个公开的单个实施例的所有特征的特征来解决相应的技术问题。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本申请的单独实施例。
本领域的技术人员可以理解,除了特征之间相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本申请的范围之内并且形成不同的实施例。例如,在权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本申请的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本申请实施例的自动化流程的管理装置中的一些模块的一些或者全部功能。本申请还可以实现为用于执行这里所描述的方法的一部分或者全部的装置程序(例如,计算机程序和计算机程序产品)。这样的实现本申请的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本申请进行说明而不是对本申请进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本申请可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
以上所述,仅为本申请的具体实施方式或对具体实施方式的说明,本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。本申请的保护范围应以权利要求的保护范围为准。
- 多版本数据存储管理方法及装置、电子设备、存储介质
- 集中式密码管理方法、装置、电子设备及计算机存储介质
- 人力资源管理方法、装置、电子设备及存储介质
- 智慧门店的管理方法、装置、电子设备及计算机存储介质
- 一种AED电量管理方法、装置、电子设备及存储介质
- 自动化流程的管理方法、装置、电子设备及存储介质
- 自动化流程的管理方法、装置、电子设备及存储介质