首页> 中国专利> 动态生成脚印集方法、装置、存储介质及双足机器人

动态生成脚印集方法、装置、存储介质及双足机器人

摘要

本发明公开了一种动态生成脚印集方法,包括:获取预设的脚印计算参数;根据预设脚印计算参数计算得到落脚点位置;根据落脚点位置确定落脚点范围,对落脚点范围进行碰撞检测;当碰撞检测结果为无碰撞时,将对应落脚点位置记录至脚印集中;记录完毕后,获取预设调整幅度对预设位移角度进行更新;进入根据预设位移角度计算得到落脚点位置的步骤,直到完成脚印集的生成。本方案通过不断对预设位移角度进行调整,计算得到各个落脚点位置,并将其中可行的落脚点位置记录至脚印集中,为导航规划时提供了更多的可行落脚点,计算耗时短,降低了规划落脚点无解的概率,提高了导航规划的效率。此外,还提出了一种动态生成脚印集装置、存储介质及双足机器人。

著录项

说明书

技术领域

本发明涉及机器人技术领域,尤其涉及一种动态生成脚印集方法、装置、存储介质及双足机器人。

背景技术

随着科学技术的进步,双足机器人获得了快速发展并在多个领域被广泛应用。目前大多数建筑和工具是依照人的身高和形体设计的,因此双足机器人作为一种机器人平台具有更好的使用灵活性。同时,双足机器人的脚印集的计算规划是机器人顺畅行走的关键部分。脚印集是指双足机器人导航规划时每一步可行的所有落脚点集合,每一个脚印集中符合最优解条件的落脚点组成双足机器人行走的最优路径。

在简单环境中,预设一定数量脚印的固定脚印集就可以较好地完成导航规划任务;但在障碍较多的复杂环境中,如何设计选择脚印集的大小还未有成熟的解决方案,预设固定脚印集过大会导致导航规划效率急剧下降,预设脚印集过小会增大无解的概率。

发明内容

基于此,有必要针对上述问题,提出了一种动态生成脚印集方法、装置、存储介质和双足机器人,旨在解决双足机器人在复杂环境中使用固定脚印集进行导航规划效率不高的问题。

一种动态生成脚印集方法,所述方法包括:

获取预设的脚印计算参数,所述预设的脚印计算参数包括:预设位移角度、预设最小旋转角度;

根据所述预设位移角度计算得到落脚点位移,根据所述预设位移角度和所述预设最小旋转角度确定落脚点旋转角度,根据所述落脚点位移和所述落脚点旋转角度确定落脚点位置,其中,所述落脚点旋转角度用于控制摆动脚的朝向;

根据所述落脚点位置确定落脚点范围,根据所述落脚点范围进行碰撞检测,得到检测结果;

当所述检测结果为无碰撞时,将所述无碰撞的落脚点位置记录至脚印集中;

获取预设第一位移角度调整幅度;

根据所述预设第一位移角度调整幅度更新所述预设位移角度;

进入根据所述预设位移角度计算得到落脚点位置的步骤,直到完成脚印集的生成。

一种动态生成脚印集装置,所述装置包括:

第一获取模块,用于获取预设的脚印计算参数,所述预设的脚印计算参数包括:预设位移角度、预设最小旋转角度;

计算模块,用于根据所述预设位移角度计算得到落脚点位移,根据所述预设位移角度和所述预设最小旋转角度确定落脚点旋转角度,根据所述落脚点位移和所述落脚点旋转角度确定落脚点位置,其中,所述落脚点旋转角度用于控制摆动脚的朝向;

碰撞检测模块,用于根据所述落脚点位置确定落脚点范围,根据所述落脚点范围进行碰撞检测,得到检测结果;

记录模块,用于在所述检测结果为无碰撞时,将所述无碰撞的落脚点位置记录至脚印集中;

第二获取模块,用于获取预设第一位移角度调整幅度;

调整模块,用于根据所述预设第一位移角度调整幅度更新所述预设位移角度;

循环模块,用于进入根据所述预设位移角度计算得到落脚点位置的步骤,直到完成脚印集的生成。

一种计算机可读存储介质,其特征在于,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行以下步骤:

获取预设的脚印计算参数,所述预设的脚印计算参数包括:预设位移角度、预设最小旋转角度;

根据所述预设位移角度计算得到落脚点位移,根据所述预设位移角度和所述预设最小旋转角度确定落脚点旋转角度,根据所述落脚点位移和所述落脚点旋转角度确定落脚点位置,其中,所述落脚点旋转角度用于控制摆动脚的朝向;

根据所述落脚点位置确定落脚点范围,根据所述落脚点范围进行碰撞检测,得到检测结果;

当所述检测结果为无碰撞时,将所述无碰撞的落脚点位置记录至脚印集中;

获取预设第一位移角度调整幅度;

根据所述预设第一位移角度调整幅度更新所述预设位移角度;

进入根据所述预设位移角度计算得到落脚点位置的步骤,直到完成脚印集的生成。

一种双足机器人,其特征在于,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行以下步骤:

获取预设的脚印计算参数,所述预设的脚印计算参数包括:预设位移角度、预设最小旋转角度;

根据所述预设位移角度计算得到落脚点位移,根据所述预设位移角度和所述预设最小旋转角度确定落脚点旋转角度,根据所述落脚点位移和所述落脚点旋转角度确定落脚点位置,其中,所述落脚点旋转角度用于控制摆动脚的朝向;

根据所述落脚点位置确定落脚点范围,根据所述落脚点范围进行碰撞检测,得到检测结果;

当所述检测结果为无碰撞时,将所述无碰撞的落脚点位置记录至脚印集中;

获取预设第一位移角度调整幅度;

根据所述预设第一位移角度调整幅度更新所述预设位移角度;

进入根据所述预设位移角度计算得到落脚点位置的步骤,直到完成脚印集的生成。

上述动态生成脚印集方法、装置、存储介质及双足机器人,首先获取预设的脚印计算参数,所述预设的脚印参数包括预设位移角度、预设最小旋转角度,再根据所述预设位移角度计算得到落脚点位移,根据所述预设位移角度和所述预设最小旋转角度确定落脚点旋转角度,根据所述落脚点位移和所述落脚点旋转角度确定落脚点位置,再根据所述落脚点位置确定落脚点范围,对落脚点范围进行碰撞检测,将检测结果为无碰撞的落脚点位置记录至脚印集中,再获取预设第一位移角度调整幅度对预设位移角度进行更新,最后根据更新后的预设位移角度进行下一次的落脚点位置计算,直到完成脚印集的生成。本方案通过不断对预设位移角度进行调整,计算得到各个落脚点位置,并将其中检测结果为无碰撞的落脚点位置记录至脚印集中,所述脚印集为双足机器人在导航规划时提供了更多的可行落脚点,并且只根据一个位移角度作为变量计算,计算耗时短,降低了规划落脚点无解的概率,提高了导航规划的效率。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

其中:

图1为一个实施例中动态生成脚印集方法的实施流程图;

图2为一个实施例落脚点位置参数化的示意图;

图3为一个实施例动态生成脚印集中搜索落脚点位置的示意图;

图4为一个实施例预设位移调整幅度的示意图;

图5为一个实施例检测碰撞情况下搜索落脚点位置的示意图;

图6为一个实施例最佳路径导航规划的实施流程图;

图7为一个实施例中动态生成脚印集装置的结构框图;

图8为一个实施例中双足机器人的结构框图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

需要说明的是,本申请中提供的实施例均以双足机器人面向的方向为参考方向,以与参考方向垂直的直线为水平线。

如图1所示,提出了一种动态生成脚印集方法,应用于双足机器人所述方法包括:

步骤102,获取预设的脚印计算参数,所述预设的脚印计算参数包括:预设位移角度、预设最小旋转角度。

其中,双足机器人的两只脚是交替移动的,准备移动的那个脚称为“摆动脚”,另一个处于不动的脚称为“支撑脚”;脚印计算参数是指用于计算出落脚点位置的参数;位移角度是指摆动脚可能产生的位移与水平线形成的锐角或直角,以水平线为界,偏向参考方向的位移与水平线产生的位移角度为正角度;偏向与参考方向的相反方向的位移与与水平线产生的位移角度为负角度。在一个实施例中,如图3所示,当摆动脚在参考方向上移动时,其位移角度为90°,当摆动脚在与参考方向相反的方向上移动时,其位移角度为-90°。

由于机器人受运动学和动力学的约束,机器人的摆动脚的旋转角度是有极限的,所以为了避免超出极限导致损坏,所以需要预设最小旋转角度。

在一个实施例中,请参考图2,图2为落脚点位置参数化的示意图,其中摆动脚右脚为R,摆动后的右脚为R’,α为根据右脚产生的位移与水平线产生的位移角度。

可以理解的是,本方法应用于双足机器人,机器人双足交替摆动,交替计算得到摆动脚下一步的脚印集。在一个实施例中,在进行动态生成脚印集之前,先将所述预设的脚印计算参数进行初始化,获取预设位移角度及预设最小旋转角度。

步骤104,根据所述预设位移角度计算得到落脚点位移,根据所述预设位移角度和所述预设最小旋转角度确定落脚点旋转角度,根据所述落脚点位移和所述落脚点旋转角度确定落脚点位置,其中,所述落脚点旋转角度用于控制摆动脚的朝向。

其中,所述落脚点位移是指摆动前后摆动脚可能产生的位移,包括距离和方向;所述落脚点旋转角度用于控制摆动脚的朝向,是指摆动脚的朝向与水平线形成的锐角或直角;落脚点位置是指摆动脚可能落下的位置,以落脚点位移确定摆动脚的落点,以落脚点旋转角度确定摆动脚的朝向;。请参考图2,其中f

步骤106,根据所述落脚点位置确定落脚点范围,根据所述落脚点范围进行碰撞检测,得到检测结果。

其中,先根据所述落脚点位置中的所述落脚点位移确定摆动脚的落点,再根据所述落脚点旋转角度确定摆动脚的朝向,最后根据预设的双足机器人摆动脚的形状大小确定所述落脚点位置覆盖的具体区域范围;根据所述具体区域范围进行碰撞检测。

在一个实施例中,采用对所述具体区域范围内的像素进行遍历的方法,识别所述具体区域范围内是否有与背景颜色相异的障碍物,得到碰撞检测结果。

在另一个实施例中,在确定了落脚点位置覆盖的具体区域范围后,将所述具体区域范围的图像输入采用训练好的神经网络进行识别,根据神经网络输出的结果得到碰撞检测的结果。

步骤108,当所述检测结果为无碰撞时,将所述无碰撞的落脚点位置记录至脚印集中。

其中,当所述检测结果为无碰撞时,说明其对应的落脚点位置为有效的、可行的摆动选择,将其记录至脚印集中后,继续搜索计算下一个有效可行的选择,直至完成脚印集的生成。

步骤110,获取预设第一位移角度调整幅度。

其中,预设第一位移角度调整幅度是指预设的位移角度调整幅度值,用于对预设位移角度进行调整更新。所述预设第一位移角度调整幅度可以是正值,也可以是负值。

步骤112,根据所述预设第一位移角度调整幅度更新所述预设位移角度。

其中,在预设位移角度方向搜索到有效落脚点之后,为了搜索下一个可选的落脚点,对预设位移角度进行更新,便于采用更新的预设位移角度进行下一个落脚点位置的计算。

在一个实施例中,如图3所示,图3为动态生成脚印集中搜索落脚点位置的示意图,双足机器人在-90°~0°~90°范围内搜索有效落脚点位置,如初始化后的预设位移角度为自然朝前的90°,所述预设第一位移角度调整幅度设为-60°,双足机器人在90°方向上搜索到有效落脚点位置并记录之后,按照预设第一位移角度调整幅度更新预设位移角度,在更新后的预设位移角度30°方向上搜索;以此类推,机器人会在90°、30°、-30°、-90°方向依次搜索落脚点位置,并将其中的有效落脚点位置记录至脚印集中。

可以理解的是,如初始化后的预设角度为-90°时,相应的预设第一位移角度调整幅度可以设为60°。

进一步地,当搜索落脚点位置的方向为从前到后,即从90°到-90°时,所述预设第一位移角度调整幅度为负值;相反,当搜索落脚点位置的方向为从后到前,即从-90°到90°时,所述预设第一位移角度调整幅度为正值。

步骤114,进入根据所述预设位移角度计算得到落脚点位置的步骤,直到完成脚印集的生成。

其中,得到更新后的预设位移角度之后,根据更新后的预设位移角度进行落脚点位置的计算,再根据所述落脚点位置进行碰撞检测,将无碰撞的有效落脚点位置记录在脚印集中;最后根据预设第一位移角度调整幅度更新预设位移角度,再进入落脚点位置的计算步骤,不断循环。

其中,调整更新后的预设位移角度值达成预设阈值条件时完成脚印集生成。

上述动态生成脚印集方法,首先获取预设的脚印计算参数,所述预设的脚印参数包括预设位移角度、预设最小旋转角度,再根据所述预设位移角度计算得到落脚点位移,根据所述预设位移角度和所述预设最小旋转角度确定落脚点旋转角度,根据所述落脚点位移和所述落脚点旋转角度确定落脚点位置,再根据所述落脚点位置确定落脚点范围,对落脚点范围进行碰撞检测,将检测结果为无碰撞的落脚点位置记录至脚印集中,再获取预设第一位移角度调整幅度对预设位移角度进行更新,最后根据更新后的预设位移角度进行下一次的落脚点位置计算,直到完成脚印集的生成。本方案通过不断对预设位移角度进行调整,计算得到各个落脚点位置,并将其中检测结果为无碰撞的落脚点位置记录至脚印集中,所述脚印集为双足机器人在导航规划时提供了更多的可行落脚点,并且只根据一个位移角度作为变量计算,计算耗时短,降低了规划落脚点无解的概率,提高了导航规划的效率。

在一个实施例中,在所述根据所述落脚点位置进行碰撞检测,得到检测结果之后,还包括:当所述检测结果为有碰撞时,确定所述落脚点位置对应的落脚点位移;获取预设位移调整幅度;根据所述预设位移调整幅度更新所述落脚点位移,根据所述更新后的落脚点位移计算得到更新后的落脚点位置;进入根据所述落脚点位置进行碰撞检测,得到检测结果的步骤。

其中,预设位移调整幅度是指对所述落脚点位置中的落脚点位移进行调整的幅度值,用于对落脚点位移进行调整更新;在预设位移角度的方向上,如计算得出的落脚点位置不是有效的落脚点位置,则根据预设位移调整幅度对所述落脚点位移进行调整,保持角度方向不变,不断按照预设位移调整幅度减小落脚点位移,直到在所述角度方向上找到有效的落脚点位置,或者调整后的落脚点位移达成预设的阈值条件,完成在所述角度方向上的搜索。

可以理解的是,在当前双足机器人的形态和运动能力限制下,根据预设位移角度计算得到的落脚点位置,是机器人在所述预设位移角度方向所能达到的最远的点,对落脚点位移的调整只能减小,因此预设位移调整幅度的值为负数。

在一个实施例中,所述预设位移调整幅度是根据机器人视觉图像的最小单元格确定的,根据所述最小单元格对落脚点位移进行调整,可以精确地得到在当前预设角度方向上最远的有效落脚点位置,为最佳路径的导航规划提供更优的解;具体地,如图4所示,图4为预设位移调整幅度的示意图,设所述最小单元格边长为1,则调整幅度值Δf

在一个实施例中,在根据所述预设位移调整幅度更新所述落脚点位移之后,还包括:判断更新后的所述落脚点位移是否小于预设阈值,若否,则进入所述根据所述更新后的落脚点位移计算得到更新后的落脚点位置的步骤;若所述更新后的所述落脚点位移小于所述预设阈值,则获取预设第二位移角度调整幅度,所述预设第二位移角度调整幅度小于所述预设第一位移角度调整幅度;根据所述预设第二位移角度调整幅度更新所述预设位移角度;进入根据所述预设位移角度计算得到落脚点位置的步骤,直到完成脚印集的生成。

其中,预设阈值可以根据实际需求设定。在一个实施例中,所述预设阈值可以设置为0,即在所述预设位移角度方向上一直搜索不到有效落脚点位置,落脚点位移在经过多次调整后小于或者等于0时,结束在所述预设位移角度方向上的搜索,进入下一个搜索步骤;预设阈值也可以设置为其他数值,在具体实施时可能出于提高搜索效率的考虑,放弃与摆动前位置过近的落脚点位置,因此以预设阈值进行限定。

其中,预设第二位移角度调整幅度是指对预设位移角度进行调整的幅度值,用于对预设位移角度进行调整更新,所述预设第二位移角度调整幅度小于所述预设第一位移角度调整幅度。

在一个实施例中,摆动脚为右脚,在-90°~0°~90°之间搜索有效落脚点位置,初始化后的预设位移角度为90°,所述预设第二位移角度调整幅度为-45°。如图5所示,图5为检测碰撞情况下搜索落脚点位置的示意图,S为机器人左右两脚之间的距离,f

可以理解的是,所述预设第二位移角度调整幅度与所述预设第一位移角度调整幅度一样,其正负值由搜索落脚点位置的方向决定,当搜索落脚点位置的方向为从前到后,即从90°到-90°时,所述预设第二位移角度调整幅度为负值;相反,当搜索落脚点位置的方向为从后到前,即从-90°到90°时,所述预设第二位移角度调整幅度为正值。

需要说明的是,调整预设位移角度的公式为:

α=α+Δα 公式3

其中,α为预设位移角度;Δα为位移角度调整幅度,可以为预设第一位移角度调整幅度,也可以为预设第二位移角度调整幅度。

在一个实施例中,所述进入根据所述预设位移角度计算得到落脚点位置的步骤,直到完成脚印集的生成,包括:当更新后的所述预设位移角度满足预设阈值条件时,完成所述脚印集的生成。

其中,预设阈值是指双足机器人搜索有效落脚点位置的角度范围的最大值或最小值,预设阈值条件是指更新后的预设位移角度大于所述角度范围的最大值或小于所述角度范围的最小值。

在一个实施例中,所述根据所述预设位移角度和所述预设最小旋转角度计算得到落脚点旋转角度,包括:当所述预设位移角度大于预设最小旋转角度时,以所述预设位移角度作为所述落脚点旋转角度;当所述预设位移角度小于所述预设最小旋转角度时,以所述预设最小旋转角度作为所述落脚点旋转角度。

其中,最小旋转角度不一定是机器脚所能旋转的极限角度,也可以是出于获取有效数据的考虑,不需要过小的旋转角度对应的数据,因此根据最小旋转角度对落脚点位置的计算进行限制。

在一个实施例中,所述根据所述预设位移角度计算得到落脚点位置,还包括:所述落脚点位置计算为:

β=max(α,β

其中,公式1为根据位移角度计算出对应落脚点位移的公式;公式2为根据位移角度计算得到落脚点旋转角度的公式;根据计算得到的所述落脚点位移及所述落脚点旋转角度得到所述落脚点位置。

其中,α为摆动脚的位移角度、f

需要说明的是,计算落脚点位移的公式1中,0.3和0.1的固定参数是根据此实施例中双足机器人的实际运动能力而选取的,由机器人的足长、步幅等因素综合决定,可以最大限度地利用机器人的运动能力;在其他不同型号的双足机器人的实施例中,两个固定参数可以进行对应更改。

在一个实施例中,在所述完成所述脚印集的生成后,包括:将所述脚印集中的落脚点位置加入至双足机器人的下一节点的候选队列中,以供所述双足机器人从所述候选队列中挑选出符合导航规划最佳路径条件的脚印。

其中,节点是指双足机器人在从起点节点到目标节点的最佳路径中的每一个落脚点位置。

在一个实施例中,如图6所示,图6为最佳路径导航规划的实施流程图,双足机器人在进行导航规划时,先获取当前节点,对预设固定脚印集中的落脚点位置进行碰撞检测,若搜索到无碰撞的有效落脚点位置则直接将其加入至所述当前节点的候选队列中,不进行动态脚印集的生成;若固定脚印集中没有有效的落脚点位置,则启动动态脚印集的生成,将生成的动态脚印集中的有效落脚点位置加入至所述的候选队列中;从候选队列挑选出其中符合导航规划最佳路径条件的脚印后,检测当前节点是否接近终点,如判定未接近终点,则获取下一节点,将下一节点作为当前节点,进入获取当前节点的步骤;如判定已接近终点,则发布最佳路径的落脚点位置序列,完成最佳路径的导航规划。

如图7所示,在一个实施例中,提出了一种动态生成脚印集装置,应用于双足机器人,所述装置包括:

第一获取模块702,用于获取预设的脚印计算参数,所述预设的脚印计算参数包括:预设位移角度、预设最小旋转角度;

计算模块704,用于根据所述预设位移角度计算得到落脚点位移,根据所述预设位移角度和所述预设最小旋转角度确定落脚点旋转角度,根据所述落脚点位移和所述落脚点旋转角度确定落脚点位置,其中,所述落脚点旋转角度用于控制摆动脚的朝向;

碰撞检测模块706,用于根据所述落脚点位置确定落脚点范围,根据所述落脚点范围进行碰撞检测,得到检测结果;

记录模块708,用于在所述检测结果为无碰撞时,将所述无碰撞的落脚点位置记录至脚印集中;

第二获取模块710,用于获取预设第一位移角度调整幅度;

调整模块712,用于根据所述预设第一位移角度调整幅度更新所述预设位移角度;

循环模块714,用于进入根据所述预设位移角度计算得到落脚点位置的步骤,直到完成脚印集的生成。

在一个实施例中,在所述根据所述落脚点位置进行碰撞检测,得到检测结果之后,还包括:当所述检测结果为有碰撞时,确定所述落脚点位置对应的落脚点位移;获取预设位移调整幅度;根据所述预设位移调整幅度更新所述落脚点位移,根据所述更新后的落脚点位移计算得到更新后的落脚点位置;进入根据所述落脚点位置进行碰撞检测,得到检测结果的步骤。

在一个实施例中,在根据所述预设位移调整幅度更新所述落脚点位移之后,还包括:判断更新后的所述落脚点位移是否小于预设阈值,若否,则进入所述根据所述更新后的落脚点位移计算得到更新后的落脚点位置的步骤;若所述更新后的所述落脚点位移小于所述预设阈值,则获取预设第二位移角度调整幅度,所述预设第二位移角度调整幅度小于所述预设第一位移角度调整幅度;根据所述预设第二位移角度调整幅度更新所述预设位移角度;进入根据所述预设位移角度计算得到落脚点位置的步骤,直到完成脚印集的生成。

在一个实施例中,所述进入根据所述预设位移角度计算得到落脚点位置的步骤,直到完成脚印集的生成,包括:当更新后的所述预设位移角度满足预设阈值条件时,完成所述脚印集的生成。

在一个实施例中,所述根据所述预设位移角度和所述预设最小旋转角度计算得到落脚点旋转角度,包括:当所述预设位移角度大于预设最小旋转角度时,以所述预设位移角度作为所述落脚点旋转角度;当所述预设位移角度小于所述预设最小旋转角度时,以所述预设最小旋转角度作为所述落脚点旋转角度。

在一个实施例中,所述根据所述预设位移角度计算得到落脚点位置,还包括:

所述落脚点位置计算为:

β=max(α,β

其中,公式1为根据位移角度计算出对应落脚点位移的公式;公式2为根据位移角度计算得到落脚点旋转角度的公式;根据计算得到的所述落脚点位移及所述落脚点旋转角度得到所述落脚点位置;

其中,α为摆动脚的位移角度、f

在一个实施例中,其特征在于,在所述完成所述脚印集的生成后,包括:将所述脚印集中的落脚点位置加入至双足机器人的下一节点的候选队列中,以供所述双足机器人从所述候选队列中挑选出符合导航规划最佳路径条件的脚印。

图8示出了一个实施例中双足机器人的内部结构图。如图8所示,该双足机器人包括通过系统总线连接的处理器、存储器和网络接口。其中,存储器包括非易失性存储介质和内存储器。该双足机器人的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现上述的动态生成脚印集方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行上述的动态生成脚印集方法。本领域技术人员可以理解,图8中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的双足机器人可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,提出了一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行以下步骤:获取预设的脚印计算参数,所述预设的脚印计算参数包括:预设位移角度、预设最小旋转角度;根据所述预设位移角度计算得到落脚点位移,根据所述预设位移角度和所述预设最小旋转角度确定落脚点旋转角度,根据所述落脚点位移和所述落脚点旋转角度确定落脚点位置,其中,所述落脚点旋转角度用于控制摆动脚的朝向;根据所述落脚点位置确定落脚点范围,根据所述落脚点范围进行碰撞检测,得到检测结果;当所述检测结果为无碰撞时,将所述无碰撞的落脚点位置记录至脚印集中;获取预设第一位移角度调整幅度;根据所述预设第一位移角度调整幅度更新所述预设位移角度;进入根据所述预设位移角度计算得到落脚点位置的步骤,直到完成脚印集的生成。

在一个实施例中,在所述根据所述落脚点位置进行碰撞检测,得到检测结果之后,还包括:当所述检测结果为有碰撞时,确定所述落脚点位置对应的落脚点位移;获取预设位移调整幅度;根据所述预设位移调整幅度更新所述落脚点位移,根据所述更新后的落脚点位移计算得到更新后的落脚点位置;进入根据所述落脚点位置进行碰撞检测,得到检测结果的步骤。

在一个实施例中,在根据所述预设位移调整幅度更新所述落脚点位移之后,还包括:判断更新后的所述落脚点位移是否小于预设阈值,若否,则进入所述根据所述更新后的落脚点位移计算得到更新后的落脚点位置的步骤;若所述更新后的所述落脚点位移小于所述预设阈值,则获取预设第二位移角度调整幅度,所述预设第二位移角度调整幅度小于所述预设第一位移角度调整幅度;根据所述预设第二位移角度调整幅度更新所述预设位移角度;进入根据所述预设位移角度计算得到落脚点位置的步骤,直到完成脚印集的生成。

在一个实施例中,所述进入根据所述预设位移角度计算得到落脚点位置的步骤,直到完成脚印集的生成,包括:当更新后的所述预设位移角度满足预设阈值条件时,完成所述脚印集的生成。

在一个实施例中,所述根据所述预设位移角度和所述预设最小旋转角度计算得到落脚点旋转角度,包括:当所述预设位移角度大于预设最小旋转角度时,以所述预设位移角度作为所述落脚点旋转角度;当所述预设位移角度小于所述预设最小旋转角度时,以所述预设最小旋转角度作为所述落脚点旋转角度。

在一个实施例中,所述根据所述预设位移角度计算得到落脚点位置,还包括:

所述落脚点位置计算为:

β=max(α,β

其中,公式1为根据位移角度计算出对应落脚点位移的公式;公式2为根据位移角度计算得到落脚点旋转角度的公式;根据计算得到的所述落脚点位移及所述落脚点旋转角度得到所述落脚点位置;

其中,α为摆动脚的位移角度、f

在一个实施例中,其特征在于,在所述完成所述脚印集的生成后,包括:将所述脚印集中的落脚点位置加入至双足机器人的下一节点的候选队列中,以供所述双足机器人从所述候选队列中挑选出符合导航规划最佳路径条件的脚印。

在一个实施例中,提出了一种双足机器人,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行以下步骤:获取预设的脚印计算参数,所述预设的脚印计算参数包括:预设位移角度、预设最小旋转角度;根据所述预设位移角度计算得到落脚点位移,根据所述预设位移角度和所述预设最小旋转角度确定落脚点旋转角度,根据所述落脚点位移和所述落脚点旋转角度确定落脚点位置,其中,所述落脚点旋转角度用于控制摆动脚的朝向;根据所述落脚点位置确定落脚点范围,根据所述落脚点范围进行碰撞检测,得到检测结果;当所述检测结果为无碰撞时,将所述无碰撞的落脚点位置记录至脚印集中;获取预设第一位移角度调整幅度;根据所述预设第一位移角度调整幅度更新所述预设位移角度;进入根据所述预设位移角度计算得到落脚点位置的步骤,直到完成脚印集的生成。

在一个实施例中,在所述根据所述落脚点位置进行碰撞检测,得到检测结果之后,还包括:当所述检测结果为有碰撞时,确定所述落脚点位置对应的落脚点位移;获取预设位移调整幅度;根据所述预设位移调整幅度更新所述落脚点位移,根据所述更新后的落脚点位移计算得到更新后的落脚点位置;进入根据所述落脚点位置进行碰撞检测,得到检测结果的步骤。

在一个实施例中,在根据所述预设位移调整幅度更新所述落脚点位移之后,还包括:判断更新后的所述落脚点位移是否小于预设阈值,若否,则进入所述根据所述更新后的落脚点位移计算得到更新后的落脚点位置的步骤;若所述更新后的所述落脚点位移小于所述预设阈值,则获取预设第二位移角度调整幅度,所述预设第二位移角度调整幅度小于所述预设第一位移角度调整幅度;根据所述预设第二位移角度调整幅度更新所述预设位移角度;进入根据所述预设位移角度计算得到落脚点位置的步骤,直到完成脚印集的生成。

在一个实施例中,所述进入根据所述预设位移角度计算得到落脚点位置的步骤,直到完成脚印集的生成,包括:当更新后的所述预设位移角度满足预设阈值条件时,完成所述脚印集的生成。

在一个实施例中,所述根据所述预设位移角度和所述预设最小旋转角度计算得到落脚点旋转角度,包括:当所述预设位移角度大于预设最小旋转角度时,以所述预设位移角度作为所述落脚点旋转角度;当所述预设位移角度小于所述预设最小旋转角度时,以所述预设最小旋转角度作为所述落脚点旋转角度。

在一个实施例中,所述根据所述预设位移角度计算得到落脚点位置,还包括:

所述落脚点位置计算为:

β=max(α,β

其中,公式1为根据位移角度计算出对应落脚点位移的公式;公式2为根据位移角度计算得到落脚点旋转角度的公式;根据计算得到的所述落脚点位移及所述落脚点旋转角度得到所述落脚点位置;

其中,α为摆动脚的位移角度、f

在一个实施例中,其特征在于,在所述完成所述脚印集的生成后,包括:将所述脚印集中的落脚点位置加入至双足机器人的下一节点的候选队列中,以供所述双足机器人从所述候选队列中挑选出符合导航规划最佳路径条件的脚印。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号