CN114169803A - 机器人调度方法、装置、设备及存储介质 - Google Patents
机器人调度方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN114169803A CN114169803A CN202111671575.2A CN202111671575A CN114169803A CN 114169803 A CN114169803 A CN 114169803A CN 202111671575 A CN202111671575 A CN 202111671575A CN 114169803 A CN114169803 A CN 114169803A
- Authority
- CN
- China
- Prior art keywords
- robot
- target scene
- scheduling
- current
- request
- 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 53
- 238000012545 processing Methods 0.000 claims description 15
- 238000004891 communication Methods 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 11
- 230000002159 abnormal effect Effects 0.000 claims description 8
- 238000013500 data storage Methods 0.000 claims description 6
- 238000012544 monitoring process Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000010408 sweeping Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06312—Adjustment or analysis of established resource schedule, e.g. resource or task levelling, or dynamic rescheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06313—Resource planning in a project environment
Landscapes
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Engineering & Computer Science (AREA)
- Entrepreneurship & Innovation (AREA)
- Economics (AREA)
- Strategic Management (AREA)
- Operations Research (AREA)
- Physics & Mathematics (AREA)
- Educational Administration (AREA)
- Marketing (AREA)
- Development Economics (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Game Theory and Decision Science (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biodiversity & Conservation Biology (AREA)
- Manipulator (AREA)
Abstract
本发明公开了一种机器人调度方法、装置、设备及存储介质,该方法包括:接收控制器当前时刻发起的调度请求作为当前调度请求,当前调度请求包含目标场景和目标任务;判断目标场景下是否存在在线且可调度的机器人;如果判断的结果为是,则确定目标场景下存在的在线且可调度的机器人均为候选机器人,选取一候选机器人作为当前机器人,并控制当前机器人执行目标任务;如果判断的结果为否,则向控制器返回预设的调度异常信息,或者将当前调度请求加入至目标场景下的请求队列中,等待至目标场景下存在在线且可调度的机器人。本申请面对多场景多机器人能够合理实现对机器人的调度控制,有效提高调度控制机器人以实现相应任务执行的效率。
Description
技术领域
本发明涉及机器人控制技术领域,更具体地说,涉及一种机器人调度方法、装置、设备及存储介质。
背景技术
常见的对于机器人的控制是用户通过控制器下发相关指令让机器人执行,这种方式适用于点对点控制,即控制器选定一台机器人,然后下发指令到选定的这台机器人;但是随着对机器人的应用快速增多,多场景多机器人的情况也随之变得普遍,上述场景的机器人控制方案是无法实现多场景多机器人下对机器人的调度控制,因此,如何提供一种多场景多机器人下对机器人进行调度控制的技术方案,是目前本领域技术人员亟待解决的问题。
发明内容
本发明的目的是提供一种机器人调度方法、装置、设备及存储介质,在面对多场景多机器人的情况下,能够合理实现对机器人的调度控制,进而有效提高调度控制机器人以实现相应任务执行的效率。
为了实现上述目的,本发明提供如下技术方案:
一种机器人调度方法,包括:
接收控制器当前时刻发起的调度请求作为当前调度请求,所述当前调度请求包含目标场景和目标任务;
判断所述目标场景下是否存在在线且可调度的机器人;
如果判断的结果为是,则确定所述目标场景下存在的在线且可调度的机器人均为候选机器人,选取一候选机器人作为当前机器人,并控制所述当前机器人执行所述目标任务;
如果判断的结果为否,则向所述控制器返回预设的调度异常信息,或者将所述当前调度请求加入至所述目标场景下的请求队列中,等待至所述目标场景下存在在线且可调度的机器人。
可选的,如果判断的结果为否,则向所述控制器返回预设的调度异常信息,或者将所述当前调度请求加入至所述目标场景下的请求队列中,等待至所述目标场景下存在在线且可调度的机器人,包括:
如果判断的结果为否的情况具体为所述目标场景下不存在在线的机器人,则向所述控制器返回所述调度异常信息;如果判断的结果为否的情况具体为所述目标场景下存在的均为在线但不可调度的机器人,则将所述当前调度请求加入至所述目标场景下的请求队列中,向所述控制器返回预设的排队信息,等待至所述目标场景下存在在线且可调度的机器人。
可选的,还包括:
接收各机器人上报的表示自身状态的状态信息,并将所述状态信息实时更新至预先设置的数据存储库中,以基于所述数据存储库中的状态信息确定所述目标场景下各机器人是否在线及是否可调度。
可选的,接收各机器人上报的表示自身状态的状态信息之后,还包括:
基于接收的状态信息对所述目标场景下的各机器人进行判断;如果判断出所述目标场景下各机器人均变更为不在线,则清空所述目标场景下的请求队列;如果判断出所述目标场景下任意机器人的状态变更为在线且可调度,则调整为已等待至所述目标场景下存在在线且可调度的机器人;如果判断出所述目标场景下任意机器人的状态变更为在线但不可调度,且该状态变更为在线但不可调度的机器人正在执行任务,向所述控制器返回预设的机器异常信息。
可选的,等待至所述目标场景下存在在线且可调度的机器人之后,还包括:
基于预设规则确定所述请求队列中当前需处理的调度请求,如果所述请求队列中当前需处理的调度请求是所述当前调度请求,则执行确定所述目标场景下存在的在线且可调度的机器人均为候选机器人的步骤,否则,继续等待。
可选的,控制所述当前机器人执行所述目标任务之后,还包括:
如果在预设时间段内接收到当前机器人返回的任务执行结果,则将所述任务执行结果反馈给所述控制器,否则,将当前机器人执行任务超时未完成的信息反馈给所述控制器。
可选的,控制所述当前机器人执行所述目标任务之后,还包括:
如果接收到所述控制器针对所述当前调度请求发起的任务处理请求,则按照所述任务处理请求对当前机器人正在执行的任务进行相应的处理,并将处理的结果反馈给所述控制器;其中,所述任务处理请求为任务取消请求、任务暂停请求或者任务重启请求。
可选的,将所述当前调度请求加入至所述目标场景下的请求队列中之后,还包括:
如果接收到所述控制器发送的排队取消请求,则将所述当前调度请求从所述目标场景下的请求队列中移除。
可选的,与所述机器人之间的通信及与所述控制器之间的通信均基于MQTT协议实现。
一种机器人调度装置,包括:
接收模块,用于接收控制器当前时刻发起的调度请求作为当前调度请求,所述当前调度请求包含目标场景和目标任务;
判断模块,用于判断所述目标场景下是否存在在线且可调度的机器人;
第一调度模块,用于在所述判断结果判断的结果为是时,确定所述目标场景下存在的在线且可调度的机器人均为候选机器人,选取一候选机器人作为当前机器人,并控制所述当前机器人执行所述目标任务;
第二调度模块,用于在所述判断结果判断的结果为否时,向所述控制器返回预设的调度异常信息,或者将所述当前调度请求加入至所述目标场景下的请求队列中,等待至所述目标场景下存在在线且可调度的机器人。
一种机器人调度设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上任一项所述机器人调度方法的步骤。
一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上任一项所述机器人调度方法的步骤。
本发明提供了一种机器人调度方法、装置、设备及存储介质,本申请的机器人调度方法将接收到控制器发起的调度请求后,判断相应场景下是否有在线且可调度的机器人,在判断结果为是时从中选取在线且可调度的机器人执行调取请求对应任务,否则将调度请求加入至请求队列中,等待至相应场景下有在线且可调度的机器人后,再从中选取在线且可调度的机器人执行调取请求对应任务。可见,本申请在面对多场景多机器人的情况下,能够合理实现对机器人的调度控制,进而有效提高调度控制机器人以实现相应任务执行的效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例提供的一种机器人调度方法的流程图;
图2为本发明实施例提供的一种机器人调度方法的实现示意图;
图3为本发明实施例提供的一种机器人调度装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1,其示出了本发明实施例提供的一种机器人调度方法的流程图,具体可以包括:
S11:接收控制器当前时刻发起的调度请求作为当前调度请求,当前调度请求包含目标场景和目标任务。本申请为在面对多场景多机器人的情况下实现对机器人调度控制的方案,该方案可以由设置于控制器及机器人之间的中控调度中心实现,以下均以中控调度中心作为执行主体进行具体说明。
其中,不同的场景可以为不同的地点(如卧室、客厅等),在这些场景中的任意场景下可以存在有多个机器人,以由这多个机器人实现该任意场景下的任务执行(执行的任务如扫地、清洁玻璃等)。具体来说,在用户需要调度机器人执行相应任务时,可以通过控制器向中控调度中心发起调度请求,调度请求中可以包括用户需要执行的任务对应指令、用户需要执行任务的场景;中控调度中心在接收到用户当前时刻通过控制器发起的调度请求后,可以将用户当前时刻通过控制器发起的调度请求作为当前调度请求,获取当前调度请求中包含的用户需要执行任务的场景作为目标场景,当前调度请求中包含的用户需要执行的任务指令作为目标任务,从目标场景下确定出可以执行任务的一机器人,控制该机器人执行目标任务。
S12:判断目标场景下是否存在在线且可调度的机器人,如果是,则执行步骤S13,如果否,则执行步骤S14。
S13:确定目标场景下存在的在线且可调度的机器人均为候选机器人,选取一候选机器人作为当前机器人,并控制当前机器人执行目标任务。
S14:向控制器返回预设的调度异常信息,或者将当前调度请求加入至目标场景下的请求队列中,等待至目标场景下存在在线且可调度的机器人。
机器人的状态可以包括是否在线以及是否可调度,任意机器人在线说明中控调度中心能够与该任意机器人进行通信,否则说明中控调度中心无法与该任意机器人进行通信,任意机器人可调度说明该任意机器人处于未执行任务的状态且未发生任何故障等影响任务执行的情况,否则说明该任意机器人无法实现任务执行;因此为了从目标场景下确定出可以执行任务的一机器人,本申请实施例可以判断目标场景下是否存在在线且可调度的机器人,如果判断的结果为是,则从目标场景下存在的在线且可调度的机器人中挑选一机器人作为当前机器人,进而由当前机器人执行当前调度请求中的目标任务,如果判断的结果为否,则可以执行两种操作中的一种,而这两种操作中第一种操作为向控制器返回预设的调度异常信息,第二中操作为将当前调度请求加入至目标场景下的请求队列中以进入排队状态,等待至目标场景下存在在线且可调度的机器人后,再从从目标场景下存在的在线且可调度的机器人中挑选一机器人作为当前机器人,进而由当前机器人执行当前调度请求中的目标任务。其中,请求队列与场景是一一对应的,任意场景的请求队列中包含的调度请求为该任意场景下等待执行相应任务的调度请求。
本申请中接收到控制器发起的调度请求后,判断相应场景下是否有在线且可调度的机器人,在判断结果为是时从中选取在线且可调度的机器人执行调取请求对应任务,否则将调度请求加入至请求队列中,等待至相应场景下有在线且可调度的机器人后,再从中选取在线且可调度的机器人执行调取请求对应任务。可见,本申请在面对多场景多机器人的情况下,能够合理实现对机器人的调度控制,进而有效提高调度控制机器人以实现相应任务执行的效率。
本发明实施例提供的一种机器人调度方法,与机器人之间的通信及与控制器之间的通信均可以基于MQTT协议实现。具体来说,本申请实施例基于MQTT协议在云端搭建能够提供中控调度服务的中控调度中心,使得中控调度中心能够通过MQTT协议分别实现与机器人及控制器之间的通信,从而能够通过MQTT协议使得即使在弱网环境下也能够实现相应的通信,进一步提高对机器人调度控制的可靠性。
本发明实施例提供的一种机器人调度方法,如果判断的结果为否,则向控制器返回预设的调度异常信息,或者将当前调度请求加入至目标场景下的请求队列中,等待至目标场景下存在在线且可调度的机器人,可以包括:
如果判断的结果为否的情况具体为目标场景下不存在在线的机器人,则向控制器返回调度异常信息;如果判断的结果为否的情况具体为目标场景下存在的均为在线但不可调度的机器人,则将当前调度请求加入至目标场景下的请求队列中,向控制器返回预设的排队信息,等待至目标场景下存在在线且可调度的机器人。
本申请实施例对目标场景下各机器人的状态进行判断时,可以判断出目标场景下各机器人的状态包括三种情况,第一种情况为目标场景下所有的机器人均不在线,此时即使等待也无法实现当前调度请求对应任务的执行,因此可以直接向控制器返回预先根据实际需要设定的调度异常信息,该调度异常信息表示暂时无法执行当前调度请求对应任务,通常可以将某些设定的字符串作为调度异常信息,如“000”“暂时无法执行任务”等字符串;第二种情况为目标场景下一台或者多台机器人在线,但是这些在线的机器人均不可调度,因此可以将当前调度请求加入至目标场景的请求队列中,以使得当前调度请求进入排队状态,并且还会向控制器返回预设的排队信息,排队信息中可以包括当前调度请求为目标场景的请求队列中第几个调度请求的信息,如“目前为请求队列中的第5位”等;第三种情况为目标场景下一台或者多台机器人在线,这些在线的机器人中存在可调度的机器人,则按照特定算法选择一台在线且可调度的机器人,实现当前调度请求对应目标任务的执行,从而在不同情况下实现不同的控制操作,有效提高机器人调度控制的灵活性。其中,特定算法可以为随机选取可执行任务的任一机器人,也可以为优先选取未执行任务的持续时间最长的机器人,还可以为在该可选的若干机器人中执行该任务时行走路径最短的机器人或者执行该任务时行走时间最短的机器人,当然根据实际需要进行的其他设定,也均在本发明的保护范围之内。
本发明实施例提供的一种机器人调度方法,还可以包括:
接收各机器人上报的表示自身状态的状态信息,并将状态信息实时更新至预先设置的数据存储库中,以基于数据存储库中的状态信息确定目标场景下各机器人是否在线及是否可调度。
接收各机器人上报的表示自身状态的状态信息之后,还可以包括:
基于接收的状态信息对目标场景下的各机器人进行判断;如果判断出目标场景下各机器人均变更为不在线,则清空目标场景下的请求队列;如果判断出目标场景下任意机器人的状态变更为在线且可调度,则目标场景下的状态信息调整为已等待至目标场景下存在在线且可调度的机器人;如果判断出目标场景下任意机器人的状态变更为在线但不可调度,且该状态变更为在线但不可调度的机器人正在执行任务,向控制器返回预设的机器异常信息。
需要说明的是,各机器人均可以通过MQTT协议向中控调度中心汇报自己的状态相应状态信息,包括是否在线、是否可调度、不可调度原因、电量及机器人自身的其他数据;各机器人汇报状态信息的汇报频率为触发式,比如机器人电量由11%掉到10%时可触发汇报不可调度、不可调度原因为电量过低的状态信息。中控调度中心在接收到各机器人汇报的状态信息后,会将状态信息实时更新至预先设置的数据存储库中,从而在需要判断目标场景下各机器人的状态时则可以先从数据存储库中获取目标场景下各机器人的状态信息,然后基于获取的目标场景下各机器人的状态信息实现相应机器人状态的判断,进而基于判断的结果实现后续的操作。从而通过这种方式便于中控调度中心快速实现机器人状态信息的获取及机器人状态的判断。
另外,在各机器人上报状态信息时,中控调度中心可以基于当前时刻接收到的状态信息对目标场景下的请求队列进行更新操作,具体来说,如果当前时刻接收到的状态信息表示目标场景下全部机器人均由其他状态变更为了不在线,则清空目标场景下的调度请求,如果当前时刻接收到的状态信息表示目标场景下任意机器人的状态由其他状态变更为了在线且可调度,则说明已经等待至目标场景下存在在线且可调度的机器人,因此从目标场景下的请求队列中取出需处理的调度请求,并由目标场景下存在的在线且可调度的机器人中选取一机器人对取出的调度请求进行相应的任务执行,如果当前时刻接收到的状态信息表示目标场景下任意机器人的状态由其他状态变更为了在线但不可调度,且变更为了在线但不可调度的机器人正在执行任务,则向控制器返回预设的机器异常信息,该机器异常信息表示相应机器人无法继续执行其所执行的任务,通常可以将某些设定的字符串作为机器异常信息,如“111”“无法继续执行任务”等字符串;从而通过机器人上报的状态实现请求队列的更新操作,进一步保证机器人调度的合理性。
本发明实施例提供的一种机器人调度方法,等待至目标场景下存在在线且可调度的机器人之后,还可以包括:基于预设规则确定请求队列中当前需处理的调度请求,如果请求队列中当前需处理的调度请求是当前调度请求,则执行确定目标场景下存在的在线且可调度的机器人均为候选机器人的步骤,否则,继续等待。
其中,预设规则可以是优选确定存入请求队列中持续时间最长的调度请求为当前需处理的调度请求,也即本申请在目标场景下出现可执行任务的机器人后,从目标场景的请求队列中请求在请求队列中存储时间最长的调度请求,如果取出的调度请求为当前调度请求,则选取目标场景下可执行任务的一机器人执行当前调度请求中的目标任务,否则,选取目标场景下可执行任务的一机器人执行从请求队列取出的调度请求中的目标任务,也即本申请在等待至目标场景下存在在线且可调度的机器人之后,先按照预设原则确定目标场景下请求队列中当前需处理的调度请求,如果当前需处理的调度请求为当前调度请求,则可以实现后续候选机器人的选取及相应任务执行的步骤,否则继续等待,从而进一步提高机器人调度的合理性。
本发明实施例提供的一种机器人调度方法,控制当前机器人执行目标任务之后,还可以包括:如果在预设时间段内接收到当前机器人返回的任务执行结果,则将任务执行结果反馈给控制器,否则,将当前机器人执行任务超时未完成的信息反馈给控制器。具体来说,预设时间段可以根据实际需要进行设定,如10分钟、20分钟、1小时等;在控制目标机器人执行当前调度请求对应任务后,可以监听相应的MQTT协议主题,以等待目标机器人执行任务的结果,如果在预设时间段内接收到目标机器人返回的任务执行结果,则说明目标机器人正常实现相应的任务执行,否则,说明目标机器人无法正常实现相应的任务执行,从而通过超时等待的设置,提高对机器人实现调度控制的灵活性及合理性。
本发明实施例提供的一种机器人调度方法,控制当前机器人执行目标任务之后,还可以包括:如果接收到控制器针对当前调度请求发起的任务处理请求,则按照任务处理请求对当前机器人正在执行的任务进行相应的处理,并将处理的结果反馈给控制器;其中,任务处理请求为任务取消请求、任务暂停请求或者任务重启请求。
将当前调度请求加入至目标场景下的请求队列中之后,还可以包括:如果接收到控制器发送的排队取消请求,则将当前调度请求从所属的请求队列中移除。
需要说明的是,在当前调度请求处于排队状态时,允许用户通过控制器发送排队取消请求以主动取消当前调度请求排队,中控调度中心通过MQTT协议监听到排列取消请求后则可以将当前调度请求从所属请求队列中删除。另外,中控调度中心可以充当控制器和机器人通信的媒介,即可转发控制器发出的相关信息到机器人,同时可监听相应的通道给控制器返回机器人的相关信息,借此机器人可以将任务执行情况实时的反馈给控制器,控制器也可以通过相应请求(任务取消请求、任务暂停请求、任务重启请求)暂停、取消、重启机器人正在执行的任务。从而通过上述操作,能够有效提高用户操作的灵活性。
在一种具体实现方式中,如图2所示,本发明实施例提供的一种机器人调度方法可以包括以下步骤:
1、机器人通过MQTT协议向中控调度中心汇报自己的状态(是否在线、是否可调度、不可调度原因、电量和机器人自身的一些数据),汇报频率为触发式,比如机器人电量由11%掉到10%此时会触发不可调度及不可调度原因为电量过低的状态汇报;
2、中控调度中心监听机器人通过MQTT协议汇报的状态,触发更新请求队列操作,并更新数据库。
3、当控制器发起调度请求时(通过HTTS协议或MQTT协议,部分应用不支持MQTT协议),中控调度中心首先会判断需调度控制的机器人处于什么场景中,进而确定该场景中机器人的状态:
(1)所有机器人均不在线,返回异常(通过指定的MQTT协议主题);
(2)一台或者多台在线,且有机器人可调度,则按照特定算法选择一台;
(3)一台或者多台在线,且都不可调度,则进去排队状态,并返回相应的排队信息(通过指定的MQTT协议主题);
4、按照特定算法选择一台机器人后,发送调度请求中的指令到这台机器人,并且监听相应MQTT协议主题,等待机器人的任务执行结果(设置超时等待),并返回给控制器;另外,在调度请求的排队过程中,相应场景下的机器人如果出现各种异常导致均不在线,则会通过MQTT协议告知中控调度中心,此时中控调度中心会清空相应的请求队列(或者将请求队列中的调度请求转移到同场景下的其他请求队列中);
5、在调度请求处于排队状态时,允许控制器主动取消排队,中控调度中心通过MQTT协议监听到相应的事件后可将该调度请求从请求队列中删除;
6、中控调度中心可充当控制器和机器人通信的媒介,即可转发相关的信息到机器人,及监听相应的通道给控制器返回信息,因此机器人端可以将任务执行情况实时的反馈给控制器,控制器可以暂停、取消、重启任务。
可见,本申请提出基于MQTT协议的机器人调度方案,可以解决多场景多机器人的调度控制问题及弱网环境下同机器人通信的问题,不需要人为干预调度过程,只需要简单的一按键,就可以完成调度,节省了大量的人力和避免了人为干预以后的各种异常,保障了机器人执行任务的可靠性,同时通过监听机器人状态和设计请求队列,使得机器人运行更加高效。
本发明实施例还提供了一种机器人调度装置,如图3所示,可以包括:
接收模块11,用于接收控制器当前时刻发起的调度请求作为当前调度请求,当前调度请求包含目标场景和目标任务;
判断模块12,用于判断目标场景下是否存在在线且可调度的机器人;
第一调度模块13,用于在判断结果判断的结果为是时,确定目标场景下存在的在线且可调度的机器人均为候选机器人,选取一候选机器人作为当前机器人,并控制当前机器人执行目标任务;
第二调度模块14,用于在判断结果判断的结果为否时,向控制器返回预设的调度异常信息,或者将当前调度请求加入至目标场景下的请求队列中,等待至目标场景下存在在线且可调度的机器人。
本发明实施例还提供了一种机器人调度设备,可以包括:
存储器,用于存储计算机程序;
处理器,用于执行计算机程序时实现如上任一项机器人调度方法的步骤。
本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时可以实现如上任一项机器人调度方法的步骤。
需要说明的是,本发明实施例提供的一种机器人调度装置、设备及存储介质中相关部分的说明请参见本发明实施例提供的一种机器人调度方法中对应部分的详细说明,在此不再赘述。另外,本发明实施例提供的上述技术方案中与现有技术中对应技术方案实现原理一致的部分并未详细说明,以免过多赘述。
对所公开的实施例的上述说明,使本领域技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (12)
1.一种机器人调度方法,其特征在于,包括:
接收控制器当前时刻发起的调度请求作为当前调度请求,所述当前调度请求包含目标场景和目标任务;
判断所述目标场景下是否存在在线且可调度的机器人;
如果判断的结果为是,则确定所述目标场景下存在的在线且可调度的机器人均为候选机器人,选取一候选机器人作为当前机器人,并控制所述当前机器人执行所述目标任务;
如果判断的结果为否,则向所述控制器返回预设的调度异常信息,或者将所述当前调度请求加入至所述目标场景下的请求队列中,等待至所述目标场景下存在在线且可调度的机器人。
2.根据权利要求1所述的方法,其特征在于,如果判断的结果为否,则向所述控制器返回预设的调度异常信息,或者将所述当前调度请求加入至所述目标场景下的请求队列中,等待至所述目标场景下存在在线且可调度的机器人,包括:
如果判断的结果为否的情况具体为所述目标场景下不存在在线的机器人,则向所述控制器返回所述调度异常信息;如果判断的结果为否的情况具体为所述目标场景下存在的均为在线但不可调度的机器人,则将所述当前调度请求加入至所述目标场景下的请求队列中,向所述控制器返回预设的排队信息,等待至所述目标场景下存在在线且可调度的机器人。
3.根据权利要求2所述的方法,其特征在于,还包括:
接收各机器人上报的表示自身状态的状态信息,并将所述状态信息实时更新至预先设置的数据存储库中,以基于所述数据存储库中的状态信息确定所述目标场景下各机器人是否在线及是否可调度。
4.根据权利要求3所述的方法,其特征在于,接收各机器人上报的表示自身状态的状态信息之后,还包括:基于接收的状态信息对所述目标场景下的各机器人进行判断;如果判断出所述目标场景下各机器人均变更为不在线,则清空所述目标场景下的请求队列;如果判断出所述目标场景下任意机器人的状态变更为在线且可调度,则调整为已等待至所述目标场景下存在在线且可调度的机器人;如果判断出所述目标场景下任意机器人的状态变更为在线但不可调度,且该状态变更为在线但不可调度的机器人正在执行任务,向所述控制器返回预设的机器异常信息。
5.根据权利要求4所述的方法,其特征在于,已等待至所述目标场景下存在在线且可调度的机器人之后,还包括:
基于预设规则确定所述请求队列中当前需处理的调度请求,如果所述请求队列中当前需处理的调度请求是所述当前调度请求,则执行确定所述目标场景下存在的在线且可调度的机器人均为候选机器人的步骤,否则,继续等待。
6.根据权利要求5所述的方法,其特征在于,控制所述当前机器人执行所述目标任务之后,还包括:
如果在预设时间段内接收到当前机器人返回的任务执行结果,则将所述任务执行结果反馈给所述控制器,否则,将当前机器人执行任务超时未完成的信息反馈给所述控制器。
7.根据权利要求6所述的方法,其特征在于,控制所述当前机器人执行所述目标任务之后,还包括:
如果接收到所述控制器针对所述当前调度请求发起的任务处理请求,则按照所述任务处理请求对当前机器人正在执行的任务进行相应的处理,并将处理的结果反馈给所述控制器;其中,所述任务处理请求为任务取消请求、任务暂停请求或者任务重启请求。
8.根据权利要求7所述的方法,其特征在于,将所述当前调度请求加入至所述目标场景下的请求队列中之后,还包括:
如果接收到所述控制器发送的排队取消请求,则将所述当前调度请求从所述目标场景下的请求队列中移除。
9.根据权利要求8所述的方法,其特征在于,与所述机器人之间的通信及与所述控制器之间的通信均基于MQTT协议实现。
10.一种机器人调度装置,其特征在于,包括:
接收模块,用于接收控制器当前时刻发起的调度请求作为当前调度请求,所述当前调度请求包含目标场景和目标任务;
判断模块,用于判断所述目标场景下是否存在在线且可调度的机器人;
第一调度模块,用于在所述判断结果判断的结果为是时,确定所述目标场景下存在的在线且可调度的机器人均为候选机器人,选取一候选机器人作为当前机器人,并控制所述当前机器人执行所述目标任务;
第二调度模块,用于在所述判断结果判断的结果为否时,向所述控制器返回预设的调度异常信息,或者将所述当前调度请求加入至所述目标场景下的请求队列中,等待至所述目标场景下存在在线且可调度的机器人。
11.一种机器人调度设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至9任一项所述机器人调度方法的步骤。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至9任一项所述机器人调度方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111671575.2A CN114169803A (zh) | 2021-12-31 | 2021-12-31 | 机器人调度方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111671575.2A CN114169803A (zh) | 2021-12-31 | 2021-12-31 | 机器人调度方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114169803A true CN114169803A (zh) | 2022-03-11 |
Family
ID=80488821
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111671575.2A Pending CN114169803A (zh) | 2021-12-31 | 2021-12-31 | 机器人调度方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114169803A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023193653A1 (zh) * | 2022-04-08 | 2023-10-12 | 百果园技术(新加坡)有限公司 | 内容操作方法、装置、服务器及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110209166A (zh) * | 2019-05-22 | 2019-09-06 | 重庆大学 | 多个移动式服务机器人的协同控制方法、装置和存储介质 |
CN112862351A (zh) * | 2021-03-05 | 2021-05-28 | 上海有个机器人有限公司 | 一种服务器及调度机器人自动到位装货的方法和装置 |
CN113537583A (zh) * | 2021-07-05 | 2021-10-22 | 北京云迹科技有限公司 | 用于调度的信息处理方法及装置 |
-
2021
- 2021-12-31 CN CN202111671575.2A patent/CN114169803A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110209166A (zh) * | 2019-05-22 | 2019-09-06 | 重庆大学 | 多个移动式服务机器人的协同控制方法、装置和存储介质 |
CN112862351A (zh) * | 2021-03-05 | 2021-05-28 | 上海有个机器人有限公司 | 一种服务器及调度机器人自动到位装货的方法和装置 |
CN113537583A (zh) * | 2021-07-05 | 2021-10-22 | 北京云迹科技有限公司 | 用于调度的信息处理方法及装置 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023193653A1 (zh) * | 2022-04-08 | 2023-10-12 | 百果园技术(新加坡)有限公司 | 内容操作方法、装置、服务器及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104156263B (zh) | 芯片部件管理任务中断方法、芯片及包括所述芯片的组件 | |
CN105159769B (zh) | 一种适用于计算能力异构集群的分布式作业调度方法 | |
CN109048996B (zh) | 机器人异常状态处理方法和装置 | |
JPWO2007072544A1 (ja) | 情報処理装置、計算機、リソース割り当て方法及びリソース割り当てプログラム | |
JP4430296B2 (ja) | プログラム配信システム | |
US20110179307A1 (en) | Failover method and system for a computer system having clustering configuration | |
CN113051019A (zh) | 流程任务执行管控方法、装置以及设备 | |
EP4123451A1 (en) | Scheduling complex jobs in a distributed network | |
CN114169803A (zh) | 机器人调度方法、装置、设备及存储介质 | |
CN112099821A (zh) | 程序升级方法、装置以及空调系统 | |
CN113010379A (zh) | 电子设备监控系统 | |
JP6308580B2 (ja) | 管理装置、ワーク実行システム、管理方法及びプログラム | |
CN108234215B (zh) | 一种网关的创建方法、装置、计算机设备及存储介质 | |
CN114567536A (zh) | 异常数据处理方法、装置、电子设备和存储介质 | |
CN113553163A (zh) | 一种基于调度器的Jenkins应用部署方法及装置 | |
JPH06314263A (ja) | サーバ処理方式 | |
CN112084014A (zh) | 一种数据处理方法、装置、设备及介质 | |
WO2013051145A1 (ja) | コンピュータシステム、管理装置、管理方法、及びプログラム | |
CN114852806B (zh) | 机器人叫梯方法及相关设备 | |
JP4284732B2 (ja) | 生産システム | |
CN114932553B (zh) | 机器人组队方法、机器人及存储介质 | |
CN116080457B (zh) | 启停控制设备、启停控制方法、换电站和储存介质 | |
CN115514622B (zh) | 交互式对象处理方法、网络通信系统、设备和存储介质 | |
WO2024020743A1 (zh) | 数据生产的主从集群任务调度方法及应用 | |
JP5098456B2 (ja) | プロセス状態監視装置 |
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 |