机器人协作方法、装置、机器人和计算机程序产品与流程

文档序号:11530924阅读:392来源:国知局
机器人协作方法、装置、机器人和计算机程序产品与流程

本申请涉及机器人技术领域,特别涉及机器人协作方法、装置、机器人和计算机程序产品。



背景技术:

在移动互联网、m2m(machinetomachine,机器与机器)、物联网相关技术飞速发展的大背景下,现有技术越来越多的采用智能终端替代人工实现完成各种复杂操作,机器人为所述智能终端的典型体现。随着机器人的分工越来越细化,不同的机器人擅长不同的任务处理,多个机器人间的协作将变得更加重要,现有技术中通常由控制方(如控制平台)根据协作任务向需要协作的机器人下发控制指令,机器人分别执行各自的控制指令完成协作。

现有技术的不足在于:

在机器人协作完成任务的过程中,由固定统一的控制方向多个机器人下发控制指令负担大,控制不灵活。



技术实现要素:

本申请实施例提出了机器人协作方法、装置、机器人和计算机程序产品,主要用以提升机器人协作的控制灵活性。

在一个方面,本申请实施例提供了一种机器人协作方法,其特征在于,所述方法包括:获取机器人团队任务信息;根据所述团队任务信息确定所述团队任务对应的机器人团队中的各机器人;当确定自身为领队机器人时,获取所述机器人团队中其他各机器人的状态信息;根据自身的状态信息和所述其他各机器人的状态信息,以及所述团队任务信息,分别生成所述机器人团队中的一个或者多个机器人的控制指令,所述控制指令分别用于控制所述机器人团队中的机器人协作完成所述团队任务;分别向所述机器人团队中的一个或者多个机器人发送所述控制指令。

在另一个方面,本申请实施例提供了一种机器人协作装置,其特征在于,所述装置包括:通信模块,用于获取机器人团队任务信息;任务分析模块,用于根据所述团队任务信息确定所述团队任务对应的机器人团队中的各机器人;所述通信模块,还用于当确定自身为领队机器人时,获取所述机器人团队中其他各机器人的状态信息;控制模块,用于根据自身的状态信息和所述其他各机器人的状态信息,以及所述团队任务信息,分别生成所述机器人团队中的一个或者多个机器人的控制指令,所述控制指令分别用于控制所述机器人团队中的机器人协作完成所述团队任务;所述通信模块还用于,分别向所述机器人团队中的一个或者多个机器人发送所述控制指令。

在另一个方面,本申请实施例提供了一种机器人,其特征在于,所述机器人包括:通信设备,存储器,一个或多个处理器;以及一个或多个模块,所述一个或多个模块被存储在所述存储器中,并被配置成由所述一个或多个处理器执行,所述一个或多个模块包括用于执行任一上述方法中各个步骤的指令。

在另一个方面,本申请实施例提供了一种与机器人结合使用的计算机程序产品,所述计算机程序产品包括内嵌于计算机可读的存储介质中的计算机程序,所述计算机程序包括用于使所述机器人执行任一上述方法中的各个步骤的指令。

本申请实施例的有益效果如下:

本申请中,机器人接收到协作任务信息后,可确定执行任务的机器人团队,并自行确定机器人团队中的领队机器人,由领队机器人控制机器人团队中的各机器人协作完成任务。本申请中由机器人团队中的领队机器人自主控制机器人团队协作完成任务,控制负担小,控制更灵活。

附图说明

下面将参照附图描述本申请的具体实施例,其中:

图1示出了本申请实施例一中机器人协作方法的流程示意图;

图2示出了本申请实施例二中机器人协作装置的结构示意图;

图3示出了本申请实施例三中机器人的结构示意图。

具体实施方式

为了使本申请的技术方案及优点更加清楚明白,以下结合附图对本申请的示例性实施例进行进一步详细的说明,显然,所描述的实施例仅是本申请的一部分实施例,而不是所有实施例的穷举。并且在不冲突的情况下,本说明中的实施例及实施例中的特征可以互相结合。

发明人在发明过程中注意到:在机器人协作完成任务的过程中,由固定统一的控制方向多个机器人下发控制指令负担大,控制不灵活。

针对上述不足,本申请提供了一种机器人协作方法,机器人接收到协作任务信息后,可确定执行任务的机器人团队,并自行确定机器人团队中的领队机器人,由领队机器人控制机器人团队中的各机器人协作完成任务。本申请中由机器人团队中的领队机器人自主控制机器人团队协作完成任务,控制负担小,控制更灵活。

为了便于本申请的实施,下面以实例进行说明。

实施例一:

本实施例中所述的机器人为各种智能终端设备的统称。多个机器人形成组网,每个机器人间保持连接状态,在需要时可以进行通信。用户可为所述机器人组网下发机器人团队任务,机器人组网中的多个机器人组成团队,由该机器人团队中的机器人协作完成所述团队任务。

图1示出了本申请实施例一中机器人协作方法流程示意图,如图1所示,所述机器人协作方法包括:

步骤101,获取机器人团队任务信息;

步骤102,根据所述团队任务信息确定所述团队任务对应的机器人团队中的各机器人;

步骤103,根据所述团队任务信息和自身状态信息,确定自身领导能力;

步骤104,获取所述机器人团队中其他各机器人的领导能力;

步骤105,确定所述机器人团队中领导能力最高的机器人为领队机器人。

步骤106,判断自身是否为领队机器人;当确定自身为领队机器人时,至步骤107a-109a;当确定自身为非领队机器人时,至步骤107b-109b;

步骤107a,当确定自身为领队机器人时,获取所述机器人团队中其他各机器人的状态信息;

步骤108a,根据自身的状态信息和所述其他各机器人的状态信息,以及所述团队任务信息,分别生成所述机器人团队中的一个或者多个机器人的控制指令,所述控制指令分别用于控制所述机器人团队中的机器人协作完成所述团队任务;

步骤109a,分别向所述机器人团队中的一个或者多个机器人发送所述控制指令。

步骤107b,当确定自身为非领队机器人时,确定所述机器人团队中的领队机器人;

步骤108b,接收所述领队机器人发送的控制指令;

步骤109b,执行所述控制指令。

在步骤101中,由机器人控制平台、任务平台或者用户向机器人下发团队任务信息,下发所述团队任务信息的方式可以为广播,全部机器人均可接收到所述团队任务信息;下发所述团队任务信息的方式还可以为仅将所述团队任务信息发送给所述团队任务信息相关的机器人,例如所述团队任务为采集某一物体的图像以对其进行建模时,仅将所述团队任务发送给所述物体附近的具有图像采集功能或者建模功能的机器人。各机器人能够根据上述各种方式获取机器人团队任务信息。

在步骤102中,某机器人接收到所述团队任务信息后,可根据所述团队任务信息确定所述团队任务对应的机器人团队中的各机器人。

所述团队任务信息中可以包含机器人团队中各机器人的信息,即在下发任务时已经确定由那些机器人组成一个团队执行该任务。该团队任务信息可以上是采用广播形式发送给全部机器人的,也可以是仅发送给已经确定的团队中的各机器人。某机器人可根据团队任务信息获取其所属的机器人团队中还有哪些机器人。确定机器人团队中的各机器人的方法还可以为,各机器人获取团队任务信息后,可以确定自身是否属于执行该团队任务的机器人团队,如果属于,则基于各机器人间的通信找到同样属于所述团队的其他机器人,进而确定所述团队中的所有机器人。

在一些实施方式中,所述步骤102为,根据所述团队任务信息,确定经认证的所述团队任务对应的经机器人团队中的各机器人。

即在步骤102中确定的属于同一团队的机器人均为经过认证的机器人,所述认证可以是对于团队中其他机器人的通信连接的安全性进行认证,也可以是对机器人终端的型号、软件安全、硬件完好性等进行认证。所述认证过程可以发生在确定了团队中的各机器人后进一步对其进行认证,仅在团队中保留经认证的机器人;所述认证过程也可以发生在确定团队中的各机器人之前,即仅有经过了认证的机器人才可能确定属于执行所述团队任务的机器人团队。

在步骤103中,团队中的各机器人可以根据获取到的团队任务信息和机器人自身状态信息,确定自身在所述团队任务执行过程中的领导能力,即根据机器人自身与所述团队任务的匹配程度或者自身的运算性能等评估自身在当前的团队任务中的领导能力。

在一些实施方式中,所述状态信息包括以下任意一种或者几种指标的组合:

机器人位置,可包括机器人当前的经度、纬度、高度或者距团队任务执行点的距离等;

机器人姿态,可包括机器人当前的朝向和动作形态等;

机器人移动能力,可包括机器人是否可移动、移动的方式、移动的平均速度或者移动的最快速度等;

机器人类型,可包括机器人的型号、功能、挂载的传感器或者外接设备的信息等;

机器人运算能力,可包括机器人中央处理器的运算能力等;

机器人续航能力,可包括机器人剩余电量、剩余电量可维持运行的时长等;

机器人通信能力,可包括机器人的通信方式、通信带宽和通信质量等。

安全状态,可包括机器人对自身软、硬件进行检查后确定的机器人当前的安全状态。

针对不同的团队任务,可对自身各指标的情况行评价,并给出量化的评价等级或者评价分数,例如,当某一指标越契合领队机器人需要具备的要求时,评价越高,该项指标打分越高,最后将各项指标的分数相加得到领导能力总分,所述总分越高,表明所述机器人更适合作为当前任务下机器人团队中的领队机器人。此外可针对不同的任务进一步为各指标赋予不同的权重,以便更合理的计算机器人的领导能力。

在一些实施方式中,在所述步骤103之后,还包括将自身领导能力发送至机器人团队中其他各机器人。即确定了自身领导能力后,将自身的领导能力告知机器人团队中的其他各机器人,具体的可通过自身与其他机器人间的通信直接发送所述领导能力,也可以将自身领导能力汇总至平台服务器,由平台服务器转发。

在步骤104中,获取所述机器人团队中其他各机器人的领导能力,所述领导能力可以为能力评价等级或评价分数等,其可以是自身基于机器人间的通信接收的,也可以是平台服务器汇总后转发至自身的。上述步骤103和104顺序不限。

在步骤105中,当获取了机器人团队中所有机器人的领导能力后,可确定其中领导能力最高的机器人为领队机器人,即根据机器人领导能力评价等级或领导能力评价分数等确定领队机器人。

在一些实施方式中,当所述领队机器人不能正常运行时,重新确定所述机器人团队中领导能力最高的机器人为领队机器人。

在后续执行任务过程中,当已经确定的领队机器人不能正常的作为领队机器人继续运行时,例如领队机器人软件安全风险高于一定阈值、存在硬件故障、失去通信连接、运算负荷超过一定阈值时,领队机器人可主动通知各机器人重新确定领队机器人,或者由机器人团队中的各成员在领队机器人失联后自行重新确定领队机器人。

在步骤106中,某机器人判断自身是否为领队机器人,需要说明的是,其确定领队机器人的方式可以是上述步骤103-105,即基于领导能力评价,也可以是其他方式。例如在获取的团队任务信息中指明了领队机器人;或者以最先获取到团队任务信息的机器人为领队机器人;或者以团队内的机器人以其他方式协商确定领队机器人等。

当某机器人确定自身为领队机器人时,执行步骤107a-109a;

在步骤107a中,当某机器人确定自身为执行团队任务的机器人团队中的领队机器人时,获取所述机器人团队中其他各机器人的状态信息,其他机器人的状态信息也可以为步骤103中提到的各种指标中任一一种或者几种的组合。

在一些实施方式中,所述步骤107a还包括:当确定自身为领队机器人时,将自身为领队机器人的信息发送至所述机器人团队中的各其他机器人。

即当某机器人根据机器人团队中所有机器人的领导能力或者其他方式确定自身为领队机器人时可以尽快向机器人团队中的其他各机器人发送自身为领队机器人的身份信息,尤其是在根据领导能力确定领队机器人的方法中,当自身和团队中的另一个机器人的领导能力相同时,双方可约定哪一方先下发了身份信息,哪一方即为机器人团队的领队机器人。

在步骤107a中,非领队机器人的各机器人可在自身根据领导能力确定领队机器人后向领队机器人发送自身的状态信息,也可以在接收到领队机器人的身份信息后在向其发送自身的状态新。

在步骤108a中,领队机器人根据团队任务信息和机器人团队中所有机器人的状态信息为机器人团队中的机器人生成用于协作完成团队任务的控制指令。所述控制指令可以为移动、采集图像、搬运、变形等各种机器人能够接收的指令,对于相对智能的机器人,也可下发相对复杂的指令,例如指示团队中的建模机器人对某一物体进行三维建模,该建模机器人获取该指令后可自行确定其一系列工作内容,例如定位所述物体,移动至所述物体附近,围绕该物体进行圆周运动并在多个固定角度采集物体图像,进行图像处理得到该物体的三维建模等。领队机器人为每个机器人下发的所述控制指令也可以是一个指令集,其中包含多条子控制指令,并为每条子控制指令设定执行时间,以使各机器人能够基于不同的指令执行时间形成协作。例如所述领队机器人可以向团队中的另一搬运机器人下发控制指令,令其在上述建模机器人完成建模工作后,根据物体的三维建模信息对其进行搬运。

可以理解的,在综合考虑了团队中各机器人的状态信息后,可以仅确定一个机器人完成所述团队任务,也可以确定由多个或者全部机器人完成所述团队任务;可以由领队机器人完成所述团队任务或者由一个非领队机器人完成所述团队任务,也可以由一个领队机器人和一个或者多个非领队机器人完成所述团队任务。

在步骤109a中,分别向所述机器人团队中的一个或者多个机器人发送该机器人对应的所述控制指令,以便团队中的各机器人执行各自的控制指令协作完成所述团队任务。

若在步骤106中,某机器人确定自身为非领队机器人,则执行步骤107b-109b;

步骤107b,当某机器人确定自身不是所属机器人团队中的领队机器人时,可根据步骤103-105中各机器人的领导能力确定领队机器人,也可以在接收到领队机器人发送的身份信息后确定领队机器人。

在确定了领队机器人后,可向所述领队机器人发送自身的状态信息,以便领队机器人综合考虑团队中各机器人的状态信息下发协作完成所述团队任务的控制指令。

在步骤108b中,各非领队机器人接收领队机器人发送的控制指令。

在步骤109b中,各非领队机器人执行领队机器人发送的控制指令,实现与团队中各机器人协作完成所述团队任务。

本申请中,机器人接收到协作任务信息后,可确定执行任务的机器人团队,并自行确定机器人团队中的领队机器人,由领队机器人控制机器人团队中的各机器人协作完成任务。本申请中由机器人团队中的领队机器人自主控制机器人团队协作完成任务,控制负担小,控制更灵活。本申请还能够根据机器人团队中各机器人的状态信息计算领导能力,基于领导能力的计算,能够更合理的确定领队机器人;在已经确定的领队机器人不能正常运行时重新确定领队机器人,时刻保障机器人团队的正常协作;团队中的机器人均为经认证的机器人,提升了机器人团队的安全性;此外本申请还提供了机器人团队内各机器人间传递各种信息以确保协作过程可靠进行的方案。

实施例二:

基于同一发明构思,本申请实施例中还提供了一种机器人协作装置,由于这些装置解决问题的原理与机器人协作方法相似,因此这些装置的实施可以参见方法的实施,重复之处不再赘述。如图2所示,所述机器人协作装置200包括:

通信模块201,用于获取机器人团队任务信息;

任务分析模块202,用于根据所述团队任务信息确定所述团队任务对应的机器人团队中的各机器人;

所述通信模块201,还用于当确定自身为领队机器人时,获取所述机器人团队中其他各机器人的状态信息;

控制模块203,用于根据自身的状态信息和所述其他各机器人的状态信息,以及所述团队任务信息,分别生成所述机器人团队中的一个或者多个机器人的控制指令,所述控制指令分别用于控制所述机器人团队中的机器人协作完成所述团队任务;

所述通信模块201还用于,分别向所述机器人团队中的一个或者多个机器人发送所述控制指令。

在一些实施方式中,在所述通信模块201获取所述机器人团队中其他各机器人的状态信息之前:

所述通信模块201还用于,获取所述机器人团队中其他各机器人的领导能力;

所述装置200还包括领队确认模块204,用于根据所述团队任务信息和自身状态信息,确定自身领导能力;以及确定所述机器人团队中领导能力最高的机器人为领队机器人。

在一些实施方式中,所述通信模块201还用于,在所述领队确认模块204根据所述团队任务信息和自身状态信息,确定自身领导能力之后,将自身领导能力发送至机器人团队中其他各机器人。

在一些实施方式中,所述领队确认模块204还用于,在所述确定所述机器人团队中领导能力最高的机器人为领队机器人之后,当所述领队机器人不能正常运行时,重新确定所述机器人团队中领导能力最高的机器人为领队机器人。

在一些实施方式中,所述通信模块201还用于,当确定自身为领队机器人时,将自身为领队机器人的信息发送至所述机器人团队中的各其他机器人。

在一些实施方式中,所述领队确认模块204还用于,当确定自身为非领队机器人时,确定所述机器人团队中的领队机器人;

所述通信模块201还用于,接收所述领队机器人发送的控制指令;

所述装置200还包括,执行模块205,用于执行所述控制指令。

在一些实施方式中,所述任务分析模块202具体用于,根据所述团队任务信息,确定经认证的所述团队任务对应的经机器人团队中的各机器人。

在一些实施方式中,所述状态信息包括以下任意一种或者几种指标的组合:

机器人位置;机器人姿态;机器人移动能力;机器人类型;机器人运算能力;机器人续航能力;机器人通信能力;安全状态。

实施例三:

基于同一发明构思,本申请实施例中还提供了一种机器人,由于其原理与机器人协作方法相似,因此其实施可以参见方法的实施,重复之处不再赘述。如图3所示,所述机器人300包括:通信设备301,存储器302,一个或多个处理器303;以及一个或多个模块,所述一个或多个模块被存储在所述存储器中,并被配置成由所述一个或多个处理器执行,所述一个或多个模块包括用于执行任一上述方法中各个步骤的指令。

本实施例中,所述机器人为各种智能终端设备的统称。

实施例四:

基于同一发明构思,本申请实施例还提供了一种与机器人结合使用的计算机程序产品,所述计算机程序产品包括内嵌于计算机可读的存储介质中的计算机程序,所述计算机程序包括用于使所述机器人执行任一上述方法中的各个步骤的指令。

为了描述的方便,以上所述装置的各部分以功能分为各种模块分别描述。当然,在实施本申请时可以把各模块或单元的功能在同一个或多个软件或硬件中实现。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1