机器人动作序列生成方法、装置和系统转让专利
申请号 : CN201810236772.3
文献号 : CN110297432B
文献日 : 2021-07-02
发明人 : 张彦刚
申请人 : 北京猎户星空科技有限公司
摘要 :
权利要求 :
1.一种机器人动作序列生成方法,其特征在于,方法包括以下步骤:探测用户操作,响应于所述操作从显示的候选动作集合中确定出机器人的目标动作;
其中,所述目标动作为用户根据当前场景机器人需要执行的任务选择的机器人要执行的一个动作;
根据所述目标动作,更新显示所述候选动作集合,并返回执行探测用户操作,响应于所述操作从显示的候选动作集合中确定出机器人的目标动作的步骤,直至所述操作结束,其中,更新显示的所述候选动作集合中的动作为与当前场景下所述目标动作对应的下一个动作的候选动作;
根据各次确定出的目标动作,以及确定出各目标动作的顺序,生成机器人动作序列;
其中,所述根据所述目标动作,更新显示所述候选动作集合,包括:在预设的有向图中,从所述目标动作对应的目标节点处,沿连接所述有向图中不同节点的有向边指示的方向,搜索经过所述目标节点的各路径,以得到各路径中的候选节点;其中,所述有向图中包含了当前场景下各机器人动作对应的节点,所述候选节点是在所述目标节点之后各路径经过的节点;
根据所述候选节点对应的候选动作,更新显示所述候选动作集合。
2.根据权利要求1所述的机器人动作序列生成方法,其特征在于,所述根据所述候选节点对应的候选动作,更新显示所述候选动作集合,包括:从所述有向图中,读取所述目标节点与所述候选节点之间的有向边的权值;所述权值用于指示从执行所述目标节点指示的目标动作,到执行所述候选节点指示的候选动作,所述机器人所需的时长;
在更新后的候选动作集合中,显示读取到的权值和对应的候选动作的标识。
3.根据权利要求1所述的机器人动作序列生成方法,其特征在于,所述搜索经过所述目标节点的路径,以得到所述路径中的候选节点之后,还包括:统计得到的所述候选节点的个数;
若所述候选节点的个数为至少两个,确定执行根据所述候选节点对应的候选动作,更新显示所述候选动作集合的步骤。
4.根据权利要求3所述的机器人动作序列生成方法,其特征在于,所述方法还包括:若所述候选节点的个数为一个,将所述候选节点对应的候选动作作为所述目标动作,重复执行在预设的有向图中,从所述目标动作对应的目标节点处,沿连接所述有向图中不同节点的有向边指示的方向,搜索经过所述目标节点的各路径,以得到各路径中的候选节点的步骤。
5.根据权利要求1所述的机器人动作序列生成方法,其特征在于,所述有向图中的节点包括用于指示一组连贯动作的第一节点;所述搜索经过所述目标节点的各路径,以得到各路径中的候选节点,包括:
搜索经过所述目标节点的各路径,以从各路径经过的第一节点中确定位于所述目标节点之后的所述候选节点。
6.根据权利要求5所述的机器人动作序列生成方法,其特征在于,所述有向图中第一节点指示的一组连贯动作,是根据各任务拆解得到的子任务确定的,一组连贯动作用于执行对应的一个子任务;
所述有向图中有向边的方向,是根据对应的不同组连贯动作之间逻辑顺序确定的。
7.根据权利要求5 所述的机器人动作序列生成方法,其特征在于,所述有向图中的节点还包括:用于指示静态动作的第二节点;
所述第二节点指示的静态动作,包括:过渡动作、预设的复位动作、各第一节点指示的一组连贯动作中的起始动作和结束动作中的一个或多个组合;
其中,所述过渡动作用于衔接所述过渡动作之前和之后执行的两个动作。
8.根据权利要求1‑7任一所述的机器人动作序列生成方法,其特征在于,所述更新显示所述候选动作集合,包括:
以第一显示状态,显示所述候选集合中的各候选动作的相关信息。
9.根据权利要求8所述的机器人动作序列生成方法,其特征在于,所述方法,还包括:以不同于所述第一显示状态的第二显示状态,显示非候选动作的相关信息;其中,所述非候选动作是机器人可执行动作中除所述候选动作以外的部分。
10.一种机器人动作序列生成装置,其特征在于,所述装置包括:确定模块,用于探测用户操作,响应于用户操作从显示的候选动作集合中确定出机器人的目标动作;其中,所述目标动作为用户根据当前场景机器人需要执行的任务选择的机器人要执行的一个动作;
更新模块,用于根据所述目标动作,更新显示所述候选动作集合,并返回执行探测用户操作,响应于用户操作从显示的候选动作集合中确定出机器人的目标动作的步骤,直至所述操作结束,其中,更新显示的所述候选动作集合中的动作为当前场景下与所述目标动作对应的下一个动作的候选动作;其中,还包括:在预设的有向图中,从所述目标动作对应的目标节点处,沿连接所述有向图中不同节点的有向边指示的方向,搜索经过所述目标节点的各路径,以得到各路径中的候选节点;其中,所述有向图中包含了当前场景下各机器人动作对应的节点,所述候选节点是在所述目标节点之后各路径经过的节点;根据所述候选节点对应的候选动作,更新显示所述候选动作集合。
控制模块,用于根据各次确定出的目标动作,以及确定出各目标动作的顺序,生成机器人动作序列。
11.一种终端设备,其特征在于,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现如权利要求1‑9中任一所述的机器人动作序列生成方法。
12.一种机器人的控制系统,其特征在于,所述系统包括如权利要求11所述的终端设备,以及计算机设备;
所述计算机设备,分别与所述终端设备和机器人通信,用于从所述终端设备获取机器人动作序列,根据所述机器人动作序列控制机器人。
13.根据权利要求12所述的控制系统,其特征在于,所述计算机设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,具体实现以下步骤:
从所述终端设备获取所述机器人动作序列,所述机器人动作序列用于指示各目标动作,以及各目标动作的执行顺序;
在预设的有向图中,沿所述有向边指示的方向进行搜索,得到目标路径;所述目标路径所经过的节点中包含各目标动作对应的目标节点,且所述目标路径经过各目标节点的顺序符合对应各目标动作的执行顺序;
根据所述目标路径指示的各规定动作及其执行顺序,对所述机器人进行控制。
14.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1‑9中任一所述的机器人动作序列生成方法。
说明书 :
机器人动作序列生成方法、装置和系统
技术领域
背景技术
端执行器,或由人工操作导引机械模拟装置,或用示教盒来使机器人完成预期的动作,进
而,用户根据动作完成情况进行下个动作的涉及和编程。
动作,操作效率较低。
发明内容
实时为用户设定机器人执行动作提供指示,简化用户操作。
据所述目标动作,更新显示所述候选动作集合,并返回执行探测用户操作,响应于所述操作
从显示的候选动作集合中确定出目标动作的步骤,直至所述操作结束;根据各次确定出的
目标动作,以及确定出各目标动作的顺序,生成机器人动作序列。
用户操作,响应于操作从显示的候选动作集合中确定出目标动作的步骤,直至操作结束,进
而,根据各次确定出的目标动作,以及确定出各目标动作的顺序,生成机器人动作序列。由
此,通过在用户选定机器人所需执行的动作时,根据用户已选定的目标动作,更新可选择的
候选动作集合,实时为用户设定机器人执行动作提供指示,简化用户操作。
的方向,搜索经过所述目标节点的各路径,以得到各路径中的候选节点;其中,所述候选节
点是在所述目标节点之后各路径经过的节点;根据所述候选节点对应的候选动作,更新显
示所述候选动作集合。
于指示从执行所述目标节点指示的目标动作,到执行所述候选节点指示的候选动作,所述
机器人所需的时长;在更新后的候选动作集合中,显示读取到的权值和对应的候选动作的
标识。
据所述候选节点对应的候选动作,更新显示所述候选动作集合的步骤。
点处,沿连接所述有向图中不同节点的有向边指示的方向,搜索经过所述目标节点的各路
径,以得到各路径中的候选节点的步骤。
各路径,以从各路径经过的第一节点中确定位于所述目标节点之后的所述候选节点。
根据对应的不同组连贯动作之间逻辑顺序确定的。
的起始动作和结束动作中的一个或多个组合;其中,所述过渡动作用于衔接所述过渡动作
之前和之后执行的两个动作。
的部分。
出目标动作;更新模块,用于根据所述目标动作,更新显示所述候选动作集合,并返回执行
探测用户操作,响应于用户操作从显示的候选动作集合中确定出目标动作的步骤,直至所
述操作结束;控制模块,用于根据各次确定出的目标动作,以及确定出各目标动作的顺序,
生成机器人动作序列。
用户操作,响应于操作从显示的候选动作集合中确定出目标动作的步骤,直至操作结束,进
而,根据各次确定出的目标动作,以及确定出各目标动作的顺序,生成机器人动作序列。由
此,通过在用户选定机器人所需执行的动作时,根据用户已选定的目标动作,更新可选择的
候选动作集合,实时为用户设定机器人执行动作提供指示,简化用户操作。
前述实施例描述的机器人动作序列生成方法。
信,用于从所述终端设备获取机器人动作序列,根据所述机器人动作序列控制机器人。
用户操作,响应于操作从显示的候选动作集合中确定出目标动作的步骤,直至操作结束,进
而,根据各次确定出的目标动作,以及确定出各目标动作的顺序,生成机器人动作序列。由
此,通过在用户选定机器人所需执行的动作时,根据用户已选定的目标动作,更新可选择的
候选动作集合,实时为用户设定机器人执行动作提供指示,简化用户操作。
所述机器人动作序列,所述机器人动作序列用于指示各目标动作,以及各目标动作的执行
顺序;在预设的有向图中,沿所述有向边指示的方向进行搜索,得到目标路径;所述目标路
径所经过的节点中包含各目标动作对应的目标节点,且所述目标路径经过各目标节点的顺
序符合对应各目标动作的执行顺序;根据所述目标路径指示的各规定动作及其执行顺序,
对所述机器人进行控制。
附图说明
具体实施方式
图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
于机器人的终端设备,该终端设备可以为用户提供操作界面,接收用户在操作界面上设计
的机器人的执行动作,并向应用该执行动作对机器人进行控制。
为用户显示当前机器人可执行的候选动作集合。其中,候选动作集合与当前场景有关,为当
前场景下基本任务对应的机器人动作的集合。
目标动作,其中,目标动作是用户根据当前场景需要执行的任务选择的机器人第一步要执
行的动作。
动作。
咖啡机”、“按动出咖啡按钮”、“将咖啡杯从咖啡机中取出”、“接取热水”等动作组成,而每两
个动作之间具有执行逻辑,比如,“按动出咖啡按钮”对应的执行动作,一定在“将咖啡杯放
入咖啡机”后,因而,在确定出目标动作后,根据执行动作的执行逻辑,与该目标动作对应的
下一步可操作的执行动作对应的候选动作集合也相应变化。
合包括“把咖啡放在咖啡机下”和“把咖啡放在奶管下”。
根据各次确定出的目标动作,以及确定出各目标动作的顺序,生成机器人动作序列。
中,用户输入第一步动作的方式,包括但不限于以下方式:
应的机械臂实现,比如,拖动机械臂1,则确定与机械臂1对应的可执行动作集合为当前候选
动作集合,进而,如图2(b)所示,显示用户选定的候选动作集合,接收用户在图2(b)所示的
候选动作集合中选择的第一个目标动作“拿起咖啡杯”后,如图2(c)所示,候选动作集合更
新为把咖啡杯放在咖啡机下”和“把咖啡杯放在奶管下”,进而,接收用户在如图2(c)所示的
候选动作集合中选择的第二个目标动作…,如此直到选择的目标动作满足任务需要时,根
据各次确定出的目标动作,以及确定出各目标动作的顺序,生成机器人动作序列。
择的候选动作集合,实时为用户设定机器人执行动作提供指示,简化用户操作,避免用户需
要不断实验才能确定下一步可执行的目标动作。
作是机器人可执行动作中除候选动作以外的部分,其中,第一显示状态和第二显示状态对
应,比如,第一显示状态为高亮显示,则第二显示状态为灰度显示,又比如,第一显示状态为
立体突出显示,则第二显示状态为非立体突出显示。
执行探测用户操作,响应于操作从显示的候选动作集合中确定出目标动作的步骤,直至操
作结束,进而,根据各次确定出的目标动作,以及确定出各目标动作的顺序,生成机器人动
作序列。由此,通过在用户选定机器人所需执行的动作时,根据用户已选定的目标动作,更
新可选择的候选动作集合,实时为用户设定机器人执行动作提供指示,简化用户操作。
性,比如,机器人在执行倒咖啡任务和执行烧水任务时,都包括“拿起”和“打开”动作等。
成动作的位置元素等,因此,在本发明的实施例中,基于执行任务之间可以共享的机器人动
作对应的节点构建有向图,该有向图包含了执行场景中灵活多变的多个任务对应的机器人
动作的指示节点。
径指示的多个相关节点及多个相关节点之间的有向边指示的节点执行顺序,可以执行当前
任务要求。
用于执行对应的一个子任务,比如,当前任务为“饮品服务”,则根据该任务拆解为子任务
“冲泡一杯美式咖啡”、“冲泡一杯拿铁”等。
顺序确定的,第二节点包括的静态动作用于完成当前场景任务的目标动作,比如,当前子任
务为“冲一杯美式咖啡”,则完成当前场景任务的目标动作为“抓起杯子”、“把杯子放到咖啡
机下”、“按动咖啡机的出咖啡按钮”等。
务时,以从复位动作开始到复位动作结束的闭环操作方式,便于对机器人的控制)、各第一
节点指示的一组连贯动作中的起动作和/或结束动作等相对静态存在的位置元素。
第二节点按照一定的顺序组合起来,该组合起来的目标路径不但描述了节点指示的动作的
空间转换关系,还描述了动作之间的执行逻辑关系,比如,当前任务为“冲一杯美式咖啡”
时,生成的目标路径经过的节点中,“复位位置”的上一步一定是“放下咖啡杯”,有向地图的
这种执行逻辑的体现,保证了在经过目标路径时的执行逻辑与实际应用中执行对应任务的
逻辑的一致性,保证了有向地图的稳定性和实用性。
人在经过目标路径的节点时,能够在各个节点之间自由移动,本发明实施例中的第二节点
还包括过渡动作,以用于衔接过渡动作前和后执行的两个节点指示的动作,避免机器人直
接由起始动作过渡到终止动作导致的碰撞。
的第二节点进行添加或更新等。
二节点为“复位位置”等,进而,在有向图中,从预设的一个第二节点开始,沿有向边指示的
方向搜索顺序经过各目标节点后,并以预设的一个第二节点结束的路径;其中,目标节点属
于用于指示一组连贯动作的第一节点,根据搜索得到的路径,确定目标路径。
始位置”,预设的结束的第二节点为“复位位置”,则从预设的一个第二节点开始,沿有向边
指示的方向搜索顺序经过各目标节点后,并以预设的一个第二节点“复位位置”结束的路
径,确定出的目标路径为如图3中虚线线条所示,参照图3,目标路径将相关第一节点和第二
节点按照执行顺序组合在一起,以完成当前任务。
以根据该目标动作对应的有向边连接的节点中,可穿越即允许通过的下一个节点对应的动
作生成候选动作集合。
中,候选节点是在目标节点之后各路径经过的节点。
节点与有向边指示的方向一致,代表了可以在目标动作下一刻可执行的动作,进而,根据候
选节点对应的候选动作,更新显示候选动作集合。
索经过目标节点的各路径,以从各路径经过的第一节点中确定位于目标节点之后的候选节
点,即候选节点是从第一节点中确定出的。
执行的目标动作以指示,在本发明的实施例中,还可在显示候选动作结合时,对候选集中每
个候选动作的时间成本进行显示。
示的动作,机器人所需的时长。
人所需的时长。在更新后的候选动作集合中,显示读取到的权值和对应的候选动作的标识。
比如,如图5所示,在在更新后的候选动作集合中,显示每个候选动作读取到的权值,以为用
户选择下一个目标动作提供依据。
显示步骤。
据候选节点对应的候选动作,更新显示候选动作集合的步骤,即重复执行与上一次选定目
标动作时相同的步骤。
图中不同节点的有向边指示的方向,搜索经过目标节点的各路径,以得到各路径中的候选
节点的步骤,即当候选节点为一个时,直接将该候选节点作为目标动作,不需要执行从候选
动作集合中选定目标动作的步骤,直接按照该唯一的候选节点对应的有向边的方向执行下
一步的候选节点集合更新的动作。
模块100、更新模块200和控制模块300。
执行探测用户操作,响应于操作从显示的候选动作集合中确定出目标动作的步骤,直至操
作结束,进而,根据各次确定出的目标动作,以及确定出各目标动作的顺序,生成机器人动
作序列。由此,通过在用户选定机器人所需执行的动作时,根据用户已选定的目标动作,更
新可选择的候选动作集合,实时为用户设定机器人执行动作提供指示,简化用户操作。
述实施例描述的机器人动作序列生成方法。
设备1000和计算机设备2000,其中,计算机设备2000,分别与终端设备1000和机器人通信,
用于从终端设备1000获取机器人动作序列,根据机器人动作序列控制机器人。
各目标动作的执行顺序;
执行探测用户操作,响应于操作从显示的候选动作集合中确定出目标动作的步骤,直至操
作结束,进而,根据各次确定出的目标动作,以及确定出各目标动作的顺序,生成机器人动
作序列。由此,通过在用户选定机器人所需执行的动作时,根据用户已选定的目标动作,更
新可选择的候选动作集合,实时为用户设定机器人执行动作提供指示,简化用户操作。
述的机器人动作序列生成方法。
点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不
必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任
一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技
术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结
合和组合。
隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三
个等,除非另有明确具体的限定。
分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺
序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明
的实施例所属技术领域的技术人员所理解。
指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执
行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设
备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传
输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装
置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电
连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器
(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存
储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的
介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其
他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技
术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离
散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编
程门阵列(FPGA)等。
质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如
果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机
可读取存储介质中。
制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变
型。
中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁
碟、光盘、只读存储记忆体(Read‑Only Memory,ROM)或随机存储记忆体(Random Access
Memory,RAM)等。
涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。