发明内容
考虑到上述问题而提出了本发明。本发明提供了一种机器人控制方法、一种机器人控制系统、一种机器人控制设备及一种存储介质。
根据本发明实施例的一方面,提供了一种机器人控制方法,所述方法用于机器人控制系统,所述系统包括机器人控制设备和多个运动控制部件,其中所述机器人控制设备用于控制所述多个运动控制部件,每个所述运动控制部件用于控制机器人的至少一个运动部件;所述方法包括:
获取所述机器人的运动部件的分组信息,其中对于每个分组,该分组的分组信息包括该分组的识别信息和该分组内的运动部件的标识符,任何一个分组能够包括任何一个运动部件;
接收控制所述机器人的运动部件运动的命令,其中所述命令包括当前分组的识别信息;
根据所述向至少一个运动控制部件发送运动参数,其中所述至少一个运动控制部件包括控制所述当前分组内的运动部件的目标运动控制部件;以及
所述目标运动控制部件根据所述运动参数控制所述当前分组内的运动部件运动;
其中,所述当前分组内的运动部件根据所述当前分组的识别信息和所述当前分组内的运动部件的标识符确定。
示例性地,所述向至少一个运动控制部件发送运动参数包括:
根据所述当前分组的识别信息确定所述当前分组;
根据所述当前分组内的运动部件的标识符,确定所述目标运动控制部件;
向所述目标运动控制部件发送所述运动参数。
示例性地,所述获取机器人的运动部件的分组信息包括:
利用人机交互接口自用户获取所述机器人的运动部件的分组信息。
示例性地,所述方法还包括:
存储所述分组信息。
示例性地,所述获取机器人的运动部件的分组信息包括:
获取预先建立的控制端分组文件;
基于从所述控制端分组文件提取所述机器人的运动部件的分组信息。
示例性地,对于所述至少一个运动控制部件中的每一个,向该运动控制部件发送的运动参数包括当前分组的识别信息,
其中,所述方法还包括:
向所述多个运动控制部件中的每一个发送对应的分组信息;
所述多个运动控制部件中的每一个存储所述对应的分组信息;
所述目标运动控制部件根据所述运动参数控制所述当前分组内的运动部件运动包括:
根据所述运动参数确定所述当前分组的识别信息;
利用所述当前分组的识别信息在所存储的对应的分组信息中检索所述当前分组内的运动部件的标识符;以及
根据所述当前分组内的运动部件的标识符确定所述当前分组内的运动部件;
根据所述运动参数中的运动数据驱控所述当前分组内的运动部件运动。
示例性地,对于所述至少一个运动控制部件中的每一个,向该运动控制部件发送的运动参数包括对应的、当前分组内的运动部件的标识符;
所述至少一个运动控制部件根据所述运动参数控制所述当前分组内的运动部件运动包括:
根据所述当前分组内的运动部件的标识符确定所述当前分组内的运动部件;
中的运动数据驱控所述当前分组内的运动部件运动根据所述当前分组。
根据本发明实施例的另一方面,还提供了一种机器人控制系统,包括:机器人控制设备和多个运动控制部件,其中,所述机器人控制设备用于控制所述多个运动控制部件,每个所述运动控制部件用于控制机器人的至少一个运动部件;
所述机器人控制设备具体用于:获取所述机器人的运动部件的分组信息,其中对于每个分组,该分组的分组信息包括该分组的识别信息和该分组内的运动部件的标识符,任何一个分组能够包括任何一个运动部件;接收控制所述机器人的运动部件运动的命令,其中所述命令包括当前分组的识别信息;向至少一个运动控制部件发送运动参数,其中所述至少一个运动控制部件包括控制所述当前分组内的运动部件的目标运动控制部件;
所述运动控制部件具体用于根据所接收的运动参数控制所述当前分组内的运动部件运动;
其中,所述当前分组内的运动部件根据所述当前分组的识别信息和所述当前分组内的运动部件的标识符确定。
示例性地,所述机器人控制设备向至少一个运动控制部件发送运动参数通过以下方式实现:
根据所述当前分组的识别信息确定所述当前分组;
根据所述当前分组内的运动部件的标识符,确定所述目标运动控制部件;
向所述目标运动控制部件发送所述运动参数。
示例性地,所述机器人控制设备获取机器人的运动部件的分组信息通过以下方式实现:
利用人机交互接口自用户获取所述机器人的运动部件的分组信息。
示例性地,所述机器人控制设备还用于:
存储所述分组信息。
示例性地,所述机器人控制设备获取机器人的运动部件的分组信息通过以下方式实现:
获取预先建立的控制端分组文件;
从所述控制端分组文件提取所述机器人的运动部件的分组信息。
示例性地,所发送的运动参数包括当前分组的识别信息,
所述机器人控制设备还用于:
向所述多个运动控制部件中的每一个发送对应的分组信息;
所述运动控制部件还用于存储所述对应的分组信息;
所述运动控制部件根据所述运动参数控制所述当前分组内的运动部件运动通过以下方式实现:
根据所述运动参数确定所述当前分组的识别信息;
利用所述当前分组的识别信息在所存储的对应的分组信息中检索所述当前分组内的运动部件的标识符;以及
根据所述当前分组内的运动部件的标识符确定所述当前分组内的运动部件;
根据所述运动参数中的运动数据驱控所述当前分组内的运动部件运动。
示例性地,所发送的运动参数包括接收该运动参数的运动控制部件控制的、当前分组内的运动部件的标识符;
所述运动控制部件根据所述运动参数控制所述当前分组内的运动部件运动通过以下方式实现:
根据所述当前分组内的运动部件的标识符确定所述当前分组内的运动部件;
根据所述运动参数中的运动数据驱控所述当前分组内的运动部件运动。
根据本发明实施例的再一方面,还提供了一种机器人控制设备,用于控制机器人的多个运动控制部件,每个运动控制部件用于控制所述机器人的至少一个运动部件,所述机器人控制设备包括处理器和存储器,其中,所述存储器中存储有计算机程序指令,所述计算机程序指令被所述处理器运行时用于使所述机器人控制设备执行以下步骤:
获取所述机器人的运动部件的分组信息,其中对于每个分组,该分组的分组信息包括该分组的识别信息和该分组内的运动部件的标识符,任何一个分组能够包括任何一个运动部件;
接收控制所述机器人的运动部件运动的命令,其中所述命令包括当前分组的识别信息;
向所述机器人的至少一个运动控制部件发送运动参数,其中所述至少一个运动控制部件包括控制所述当前分组内的运动部件的目标运动控制部件,以由所述目标运动控制部件根据所述运动参数控制所述当前分组内的运动部件运动;
其中,所述当前分组内的运动部件根据所述当前分组内的识别信息和所述当前分组内的运动部件的标识符确定。
根据本发明实施例的又一方面,还提供了一种存储介质,用于机器人控制设备,所述机器人控制设备用于控制机器人的多个运动控制部件,每个运动控制部件用于控制所述机器人的至少一个运动部件,在所述存储介质上存储了程序指令,所述程序指令在运行时用于执行以下步骤:
获取所述机器人的运动部件的分组信息,其中对于每个分组,该分组的分组信息包括该分组的识别信息和该分组内的运动部件的标识符,任何一个分组能够包括任何一个运动部件;
接收控制所述机器人的运动部件运动的命令,其中所述命令包括当前分组的识别信息;
向所述机器人的至少一个运动控制部件发送运动参数,其中所述至少一个运动控制部件包括控制所述当前分组内的运动部件的目标运动控制部件,以由所述目标运动控制部件根据所述运动参数控制所述当前分组内的运动部件运动;
其中,所述当前分组内的运动部件根据所述当前分组内的识别信息和所述当前分组内的运动部件的标识符确定。
根据本发明实施例的机器人控制方法、系统、设备及存储介质,能够对机器人的多个运动控制部件控制的运动部件的进行随意分组,并按照分组来同时控制同一分组内的运动部件运动。由此,可以更加灵活的控制机器人的运动部件,满足了用户的不同需求,提高了用户体验。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
具体实施方式
为了使得本发明的目的、技术方案和优点更为明显,下面将参照附图详细描述根据本发明的示例实施例。显然,所描述的实施例仅仅是本发明的一部分实施例,而不是本发明的全部实施例,应理解,本发明不受这里描述的示例实施例的限制。基于本发明中描述的本发明实施例,本领域技术人员在没有付出创造性劳动的情况下所得到的所有其它实施例都应落入本发明的保护范围之内。
根据本发明一个实施例,提供了一种机器人控制方法。该机器人控制方法用于机器人控制系统。该机器人控制系统包括机器人控制设备和多个运动控制部件。机器人控制设备用于控制多个运动控制部件,每个所述运动控制部件用于控制机器人的至少一个运动部件。
在运动控制领域,运动部件(如电机等)是实现运动控制的核心部件,比如机器人的运行就需要电机配合运动执行部件(或称为丝杠、减速器等)来带动机器人运动。以利用电机配合减速器进行运动控制的多轴机器人(或称为多关节机械手、多关节机器人、机械臂等)为例,通过控制电机配合减速器的运行,实现机器人根据预定的路线从一个初始位置夹取目标物体到目标位置。此类多轴机器人适用于诸多工业领域的机械自动化作业。
现在市场上的多轴机器人主要包括四轴机器人(具有四个关节)和六轴机器人(具有六个关节)。它们均包括有基座、手臂和末端执行器(物体夹持部)。手臂上关节的多少决定了机器人的“轴”的数量,每一个关节都是由一个电机的转动来驱动,以实现关节的运动。
目前,用户需要通过机器人控制设备(如电脑、示教器等)实现对机器人的参数设定和控制。目前市场上的机器人控制设备大都是针对机器人整体而设计。用户一般通过编辑每个关节的运动数据实现对机器人的运动控制,所述的运动数据实际上是用于控制运动部件运动的各种数据。示例性地,运动数据可以包括位置数据、速度数据和时间数据中的一项或多项。所述位置数据可以是空间直角坐标系中的坐标数据,也可以是旋转角度或其他与位置相关的数据。机器人控制设备接收用户所编辑的机器人的运动数据后,发送给机器人本体的运动控制部件(或称为驱控器等),运动控制部件对接收到的运动数据进行解算后控制运动部件运动。
图1示出了一种机器人控制系统100,包括有机器人控制设备101、控制器局域网络(Controller Area Network,CAN)数据线102、和用于控制电机107的运动控制部件103。运动控制部件103包括有控制部104、波形产生部105、驱动部106。机器人控制系统100可以包含多个运动控制部件103。每个运动控制部件103可以用于控制机器人的一个或多个电机107。
所述机器人控制设备101可以是示教器,还可以是安装有上位机软件的电脑,还可以是安装有APP的手机/Pad等,以实现人机交互,使得用户可以通过机器人控制设备101配置运动参数、控制电机的运行状态、显示运动曲线等功能。该运动参数可以包括上述运动数据,以精准控制机器人的运动部件执行相应的运动。
所述CAN数据线102实现机器人控制设备101和运动控制部件103之间的通信,CAN总线是一种标准总线,广泛应用于汽车电子、工业控制、运动控制等领域,CAN总线数据具有固定的格式,CAN数据线102可以是双绞线或同轴线等。作为替代,还可以通过串行通信等替代CAN数据线102实现二者之间的通信。
所述运动控制部件103实现对机器人控制设备101发送来的运动数据的解算,得到实际的电机控制数据(一般为PWM波),通过调整PWM波的周期和占空比等调节电机107的运行状态。运动控制部件103包括控制部104、波形产生部105和驱动部106。
控制部104实现对运动数据的解算,可以将运动数据解算成为对应的产生PWM波形的波表数据。
波形产生部105是一种PWM波形发生器,例如由FPGA芯片实现的PWM波形发生器,可以根据控制部104产生的波表数据生成对应的PWM波形数据。
控制部104和波形产生部105也可以是一个部件,例如由可由一片内嵌有ARM内核的FPGA芯片实现,该芯片既可以实现控制部104的功能、同时又可以实现波形产生部105的功能。
驱动部106是电机107的驱动单元,可以根据波形产生部105产生的PWM波形数据驱动电机107运动。
用户通过机器人控制设备101编辑好运动数据后,可以通过CAN数据线102发送到运动控制部件103中。运动控制部件103中的控制部104将接收到的运动数据解算为波表数据,波形产生部105则根据解算得到的波表数据生成一组PWM波形数据,而驱动部106则根据PWM波形数据驱动电机107运动。
在机器人控制系统100中,电机107可以单独作为运动部件使用,电机107也可以连接减速器后、共同作为一个运动部件使用,电机107还可以连接丝杠后、共同作为一个运动部件使用,等等。电机107具有一定的带负载能力。例如在机器人上,通常在电机107的输出轴上安装减速器,然后在减速器的输出轴上安装机器人的臂结构。电机107的运转带动减速器运转,进而带动机器人的臂结构运动。电机107的带负载能力具体受驱动部106的控制。驱动部106产生的驱动电流大小不同、那么电机107的带负载能力不同。
上述机器人控制系统100可以用于控制一个或多个机器人。如图1所示,该机器人控制系统100包括多个运动控制部件103。每个运动控制部件103用于控制一个或多个电机107。在一个示例中,每个运动控制部件103都控制多个电机107,且所有运动控制部件103所控制的电机的数目相同。这些运动控制部件103可以设置在一个或多个机器人上,以相应地控制这些机器人上设置的电机107。每个电机107可以驱动机器人的一个关节。例如一个四轴运动控制部件可以设置在一个四轴机器人上,以驱动该四轴机器人。四轴机器人具有四个关节,分别对应一个电机107。该四轴机器人工作时需要四个电机107在该四轴运动控制部件的控制下协同工作,以共同驱动该四轴机器人运动。在一个示例中,机器人控制系统100中包括多个四轴运动控制部件。
图2示出了根据本发明一个实施例的机器人控制方法200的示意性流程图。该机器人控制方法200可以用于前述机器人控制系统100。如图2所示,机器人控制方法200包括如下步骤:
步骤S210,获取机器人的运动部件的分组信息。
图3示出了根据本发明另一个实施例的机器人控制系统的原理性框图。如图3所示,机器人控制设备通过CAN数据线连接所有运动控制部件,每个运动控制部件可以控制至少一个运动部件。如图所示,该机器人控制系统有多个运动控制部件,每个运动控制部件用于控制多个运动部件,每个运动控制部件和每个运动部件都有相应的编号。具体例如,运动控制部件1有4个运动部件,分别为运动部件1、运动部件2、运动部件3和运动部件4。
为了方便的进行多个运动部件的灵活控制,可以通过对多个运动部件进行分组,这样机器人控制系统200可以按组来控制运动部件运动。可以理解,该机器人控制系统200可以控制一个或多个机器人。换言之,所控制的运动部件可以属于一个或多个机器人。
本申请的实施例能够对机器人的多个运动部件的进行随意分组,并按照分组来同时控制同一个分组内的运动部件运动。任何一个分组能够包括任何一个运动部件,以确保可以通过分组控制任何期望的运动部件。运动部件的分组信息是针对机器人的运动部件进行分组的相关信息。每个分组具有其分组信息。该分组信息包括该分组的识别信息和分组内的运动部件的标识符。
分组的识别信息能够有效区分各个分组。所述识别信息可以用数字编号来表示。运动部件的标识符用于区分不同的运动部件,也可以用数字编号来表示。
对于如图3所示的机器人控制系统,可以将所有运动控制部件所控制的具有相同编号的运动部件都分到一个分组内。例如,将所有运动控制部件所控制的运动部件1都分到一个分组内。该分组可以用分组1来表示。又例如,将所有运动控制部件所控制的运动部件2都分到一个分组内。该分组可以用分组2来表示。同样地,可以确定分组3和分组4。为了同时控制运动控制部件1所控制的运动部件1和运动控制部件2所控制的运动部件3运动,可以将运动控制部件1所控制的运动部件1和运动控制部件2所控制的运动部件3分到一个分组5中。
在上述示例中,分组1、分组2、分组5等“分组”后面的数字编号为分组的识别信息。另外,分组信息还包括所属该分组的运动部件的标识符,以区别分配到该分组的运动部件。具体例如,分组5包括运动控制部件1控制的运动部件1(比如该运动部件的标识符为1-1)、和运动控制部件2控制的运动部件3(比如该运动部件的标识符为2-3)。其中上述“1-1”和“2-3”分别为分组5中的运动部件的标识符。
为了描述简单,在上述示例中,对于每个运动控制部件,其所控制的运动部件分别在不同的分组内。但是可以理解,也可以将一个或多个运动控制部件中的多个运动部件分在一个分组内。例如,运动控制部件2控制的运动部件2、3和4可以都在一个分组中。
步骤S220,接收控制机器人的运动部件运动的命令,其中所述命令包括当前分组的识别信息。
可以理解,基于分组信息来控制机器人的运动部件运动时,控制机器人的运动部件运动的命令可以包括分组的识别信息。分组的识别信息可以用于确定该命令所期望控制的分组,可以简称为当前分组。然后,基于当前分组就可以确定所属当前分组中的运动部件。由此,可以同时控制期望的运动部件运动。
该步骤S220可以通过人机交互接口实现。用户根据期望目标,通过人机交互接口输入前述命令。仍以上述示例为例,用户可以通过人机交互接口输入“分组5”,由此,同时控制分组5内的标识符为1-1的运动部件和标识符为2-3的运动部件运动。
步骤S230,向至少一个运动控制部件发送运动参数,其中所述至少一个运动控制部件包括控制所述当前分组内的运动部件的目标运动控制部件。
如在描述机器人控制系统时所述,运动控制部件用于控制运动部件。运动参数包括上述运动数据和用于机器人的运动部件分组的参数。可以理解,控制运动部件运动需要向运动控制部件发送运动参数。运动控制部件根据所述运动参数控制相应运动部件运动。
在一个示例中,向所有的运动控制部件发送运动参数,以驱控所有运动控制部件控制相应的运动部件运动。在该示例中,每个分组内的运动部件都涉及全部的运动控制部件。所以,在发送运动参数的时候,可以向所有的运动控制部件发送。这些运动控制部件再分别控制该分组内的运动部件运动。
在另一个示例的实际控制操作中,根据运动参数控制当前分组内的运动部件的是机器人控制系统中的一部分运动控制部件,可以称这部分运动控制部件为目标运动控制部件。
在这种情况下可以向至少一个运动控制部件发送运动参数,其中至少一个运动控制部件包括控制所述当前分组内的运动部件的目标运动控制部件。再以上述根据图3举例的分组5为例,可以向运动控制部件1和运动控制部件2发送运动参数,其中运动控制部件1和运动控制部件2为目标控制部件。
当然,这种情况下,也可以向所有运动控制部件发送运动参数。仍参考前述示例,可以向所有的运动控制部件(包括运动控制部件1、运动控制部件2......和运动控制部件N)发送运动参数。
可以理解,在这种情况下,可以仅向目标运动控制部件发送运动参数。图4示出了根据本发明一个实施例的步骤S230中向至少一个运动控制部件发送运动参数的示意性流程图。如图4所示,步骤S230包括以下子步骤。
步骤S2301,根据当前分组的识别信息确定当前分组。在步骤S220中,接收的命令中包括当前分组的识别信息。根据其中的当前分组的识别信息确定当前分组。
步骤S2302,根据当前分组内的运动部件的标识符,确定所述目标运动控制部件。在步骤S2301确定了当前分组之后,就可以根据分组信息中的分组内的运动部件的标识符确定待控制的运动部件。进而,确定控制这些运动部件的运动控制部件,所述确定的运动控制部件即为目标运动控制部件。
步骤S2303,向所述目标运动控制部件发送所述运动参数。
可以理解,确定目标运动控制部件后,可以将运动参数只发送给目标运动控制部件,非目标运动控制部件无需接收所述运动参数。只向目标运动控制部件发送运动参数,减少了通信负担,避免了非目标运动控制部件处理不必要的数据,提高了运动控制部件的运行效率。
步骤S240,目标运动控制部件根据运动参数控制当前分组内的运动部件运动。
可以理解,经过步骤S230,可以确保目标运动控制部件能够接收到控制运动部件运动的运动参数,这样目标运动控制部件能够根据运动参数控制当前分组内的运动部件运动。
可以理解,在上述机器人控制方法100中,可以首先根据当前分组的识别信息识别分组,然后根据当前分组内的运动部件的标识符确定需要控制的当前分组内的运动部件,最后控制该运动部件进行运动。所述运动部件可以是一个或多个。
上述技术方案能够对机器人的运动部件的进行随意分组,并按照分组来同时控制机器人的运动部件运动。由此,可以更加灵活的控制机器人的运动部件,满足了用户的不同需求,提高了用户体验。
示例性地,上述步骤S210获取机器人的运动部件的分组信息包括利用人机交互接口自用户获取所述机器人的运动部件的分组信息。分组是基于用户需求来确定的。用户能够直接通过人机交互接口输入分组信息,方便了用户灵活控制运动部件运动。
示例性地,机器人控制方法还包括存储前述分组信息。
可以理解,在利用人机交互接口自用户获取分组信息后,为了下次控制机器人时可以不再重新自用户接收分组信息,可以存储所述分组信息。例如,将所述分组信息存储在机器人控制设备上。在一个示例中,可根据分组信息建立控制端分组文件,以便后续控制操作时从该控制端分组文件提取所需的分组信息。
通过存储分组信息,减少了分组信息获取次数,避免了用户的重复劳动,提高了用户体验。
示例性地,获取机器人的运动部件的分组信息包括:获取预先建立的控制端分组文件;以及从控制端分组文件提取机器人的运动部件的分组信息。
如前所述,可以根据自用户获取的分组信息,建立控制端分组文件。替代地,可以经由网络、存储介质或通过其他方式获得控制端分组文件。该控制端分组文件中包括机器人的运动部件的分组信息。
通过预先建立的控制端分组文件获取机器人的运动部件的分组信息可以避免与用户的无谓交互,提高了控制流程的可操作性。
在一个示例中,对于上述步骤S230中向其发送运动参数的至少一个运动控制部件中的每一个,向该运动控制部件发送的运动参数包括当前分组的识别信息。如前所述,上述机器人控制方法100中,在步骤S210之后,还包括向机器人控制系统100中的多个运动控制部件中的每一个发送对应的分组信息。分组信息与接收该分组信息的运动控制部件相对应。所述多个运动控制部件中的每一个运动控制部件接收并存储与该运动控制部件对应的分组信息。所述与该运动控制部件对应的分组信息是指该运动控制部件控制的运动部件分到的分组的分组信息。再次参考图3,假设,各个运动控制部件控制的运动部件1分到分组1,各个运动控制部件控制的运动部件2分到分组2,各个运动控制部件控制的运动部件3分到分组3,各个运动控制部件控制的运动部件4分到分组4,运动控制部件1控制的运动部件1和运动控制部件2控制的运动部件3分到一个分组5中。同样的,将运动控制部件1控制的运动部件3和运动控制部件N控制的运动部件2分到一个分组6中。那么与运动控制部件1对应的分组为分组1至分组6,与运动控制部件2对应的分组也为分组1至分组5,与运动控制部件N对应的分组为分组1至分组4和分组6。根据上述运动控制部件与分组的对应关系,各个运动控制部件分别存储对应分组的分组信息。
在上述示例中,步骤S240中目标运动控制部件根据运动参数控制当前分组内的运动部件运动包括以下子步骤。
步骤S2401,目标运动控制部件根据所接收的运动参数确定当前分组的识别信息。
步骤S2402,利用所述当前分组的识别信息在所存储的对应的分组信息中检索所述当前分组内的运动部件的标识符。
可以理解,目标运动控制部件在根据步骤S2401中确定了当前分组的识别信息后,可以根据所述当前分组的识别信息检索存储在该目标运动控制部件中的分组信息。然后,根据分组信息获取到当前分组内的所有运动部件的标识符。
步骤S2403,根据所述当前分组内的运动部件的标识符确定所述当前分组内的运动部件。
步骤S2404,根据所述运动参数中的运动数据驱控所述当前分组内的运动部件运动。
再以图3所示机器人控制系统为例,首先,各个目标运动控制部件根据运动参数中包括的分组识别信息,确定当前分组是分组5。可以理解,这里的目标运动控制部件包括运动控制部件1和运动控制部件2。然后,运动控制部件1在其存储的分组信息中检索到当前分组5内的运动部件的标识符1-1,运动控制部件2在其存储的分组信息中检索到当前分组5内的运动部件的标识符2-3。运动控制部件1根据标识符1-1确定当前分组内的运动部件1,运动控制部件2根据标识符2-3确定当前分组内的运动部件3。然后,这两个运动控制部件分别根据运动参数中的运动数据驱控运动部件1和运动部件3执行相应的运动。
将分组信息存储在与之对应的运动控制部件中,由各个运动控制部件分别确定自己将驱控的运动部件,减少了机器人控制设备的数据处理量,减轻了其工作压力。
在另一个示例中,对于上述步骤S230中向其发送运动参数的至少一个运动控制部件中的每一个,向该运动控制部件发送的运动参数包括对应的、当前分组内的运动部件的标识符。
可以理解,在运动控制部件没有存储与其对应的分组信息的情况下,运动控制部件需要根据与其对应的、当前分组内的运动部件的标识符来确定具体的待驱控运动部件。
可选地,接收到运动参数的运动控制部件根据所述运动参数控制所述当前分组内的运动部件运动还包括以下子步骤。首先根据所述当前分组内的运动部件的标识符确定所述当前分组内的运动部件,然后根据所述运动参数中的运动数据驱控所述当前分组内的运动部件运动。
上述技术方案使得运动控制部件无需存储分组信息,减少了运动控制部件的存储压力和数据处理能力的要求,因为运动控制部件为多个,所以降低了机器人控制系统的总成本。此外,方便控制端统一管理存储分组信息,避免了分散存储分组信息导致的分组信息不一致的问题。
根据本发明另一个实施例,还提供了一种机器人控制系统。该机器人控制系统包括机器人控制设备和多个运动控制部件,其中,所述机器人控制设备用于控制所述多个运动控制部件,每个所述运动控制部件用于控制机器人的至少一个运动部件。所述机器人控制设备具体用于:获取所述机器人的运动部件的分组信息,其中对于每个分组,该分组的分组信息包括该分组的识别信息和该分组内的运动部件的标识符,任何一个分组能够包括任何一个运动部件;接收控制所述机器人的运动部件运动的命令,其中所述命令包括当前分组的识别信息;向至少一个运动控制部件发送运动参数,其中所述至少一个运动控制部件包括控制所述当前分组内的运动部件的目标运动控制部件。所述运动控制部件具体用于根据所接收的运动参数控制所述当前分组内的运动部件运动。所述当前分组内的运动部件根据所述当前分组的识别信息和所述当前分组内的运动部件的标识符确定。
示例性地,机器人控制设备向至少一个运动控制部件发送运动参数通过以下方式实现:根据所述当前分组的识别信息确定所述当前分组;根据所述当前分组内的运动部件的标识符,确定所述目标运动控制部件;向所述目标运动控制部件发送所述运动参数。
示例性地,机器人控制设备获取机器人的运动部件的分组信息通过以下方式实现:利用人机交互接口自用户获取所述机器人的运动部件的分组信息。
示例性地,所述机器人控制设备还用于:存储所述分组信息。
示例性地,所述机器人控制设备获取机器人的运动部件的分组信息通过以下方式实现:获取预先建立的控制端分组文件;从所述控制端分组文件提取所述机器人的运动部件的分组信息。
示例性地,发送的运动参数包括当前分组的识别信息,所述机器人控制设备还用于:向所述多个运动控制部件控制的每一个发送对应的分组信息。所述运动控制部件还用于存储所述对应的分组信息。所述运动控制部件根据所述运动参数控制所述当前分组内的运动部件运动通过以下方式实现:根据所述运动参数确定所述当前分组的识别信息;利用所述当前分组的识别信息在所存储的对应的分组信息中检索所述当前分组内的运动部件的标识符;以及根据所述当前分组内的运动部件的标识符确定所述当前分组内的运动部件;根据所述运动参数中的运动数据驱控所述当前分组内的运动部件运动。
示例性地,所发送的运动参数包括接收该运动参数的运动控制部件控制的、当前分组内的运动部件的标识符。所述运动控制部件根据所述运动参数控制所述当前分组内的运动部件运动通过以下方式实现:根据所述当前分组内的运动部件的标识符确定所述当前分组内的运动部件;根据所述运动参数中的运动数据驱控所述当前分组内的运动部件运动。
根据本发明再一个实施例,还提供了一种机器人控制设备。该机器人控制设备用于控制机器人的多个运动控制部件,每个运动控制部件用于控制所述机器人的至少一个运动部件,所述机器人控制设备包括处理器和存储器。所述存储器中存储有计算机程序指令,所述计算机程序指令被所述处理器运行时用于使所述机器人控制设备执行以下步骤:获取所述机器人的运动部件的分组信息,其中对于每个分组,该分组的分组信息包括该分组的识别信息和该分组内的运动部件的标识符,任何一个分组能够包括任何一个运动部件;接收控制所述机器人的运动部件运动的命令,其中所述命令包括当前分组的识别信息;向所述机器人的至少一个运动控制部件发送运动参数,其中所述至少一个运动控制部件包括控制所述当前分组内的运动部件的目标运动控制部件,以由所述目标运动控制部件根据所述运动参数控制所述当前分组内的运动部件运动;其中,所述当前分组内的运动部件根据所述当前分组内的识别信息和所述当前分组内的运动部件的标识符确定。
此外,根据本发明又一方面,还提供了一种存储介质,在所述存储介质上存储了程序指令。所述存储介质例如可以包括平板电脑的存储部件、个人计算机的硬盘、只读存储器(ROM)、可擦除可编程只读存储器(EPROM)、便携式紧致盘只读存储器(CD-ROM)、USB存储器、或者上述存储介质的任意组合。所述计算机可读存储介质可以是一个或多个计算机可读存储介质的任意组合。
在一个实施例中,所述存储介质用于机器人控制设备,所述机器人控制设备用于控制机器人的多个运动控制部件,每个运动控制部件用于控制所述机器人的至少一个运动部件。所述存储介质上存储的程序指令在运行时用于执行以下步骤:
获取所述机器人的运动部件的分组信息,其中对于每个分组,该分组的分组信息包括该分组的识别信息和该分组内的运动部件的标识符,任何一个分组能够包括任何一个运动部件;
接收控制所述机器人的运动部件运动的命令,其中所述命令包括当前分组的识别信息;
向所述机器人的至少一个运动控制部件发送运动参数,其中所述至少一个运动控制部件包括控制所述当前分组内的运动部件的目标运动控制部件,以由所述目标运动控制部件根据所述运动参数控制所述当前分组内的运动部件运动;
其中,所述当前分组内的运动部件根据所述当前分组内的识别信息和所述当前分组内的运动部件的标识符确定。
本领域普通技术人员通过阅读上文关于机器人控制系统100和机器人控制方法200的相关描述,可以理解上述机器人控制系统、机器人控制设备和存储介质的具体实现方案,为了简洁,在此不再赘述。
根据本发明实施例的机器人控制方法、系统、设备及存储介质,能够对多个运动控制部件控制的不同运动部件根据期望进行灵活分组,便于按照分组控制运动部件运动,满足了用户的不同需求,提高了用户体验。
尽管这里已经参考附图描述了示例实施例,应理解上述示例实施例仅仅是示例性的,并且不意图将本发明的范围限制于此。本领域普通技术人员可以在其中进行各种改变和修改,而不偏离本发明的范围和精神。所有这些改变和修改意在被包括在所附权利要求所要求的本发明的范围之内。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。例如,以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个设备,或一些特征可以忽略,或不执行。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本发明并帮助理解各个发明方面中的一个或多个,在对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该本发明的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如相应的权利要求书所反映的那样,其发明点在于可以用少于某个公开的单个实施例的所有特征的特征来解决相应的技术问题。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域的技术人员可以理解,除了特征之间相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的用于机器人控制系统中的一些模块的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
以上所述,仅为本发明的具体实施方式或对具体实施方式的说明,本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。本发明的保护范围应以权利要求的保护范围为准。