CN115840455A - 用于足式机器人的运动控制方法和装置及足式机器人 - Google Patents
用于足式机器人的运动控制方法和装置及足式机器人 Download PDFInfo
- Publication number
- CN115840455A CN115840455A CN202111104794.2A CN202111104794A CN115840455A CN 115840455 A CN115840455 A CN 115840455A CN 202111104794 A CN202111104794 A CN 202111104794A CN 115840455 A CN115840455 A CN 115840455A
- Authority
- CN
- China
- Prior art keywords
- information
- joint
- motion
- robot
- joints
- 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
Images
Landscapes
- Manipulator (AREA)
Abstract
本公开的实施例提供了一种用于足式机器人的运动控制方法、装置以及足式机器人。本公开的实施例所提供的方法利用人工智能技术,通过基于从活体采集的运动数据所训练的神经网络模型,基于包含脊柱关节的足式机器人的当前状态信息来规划其后续运动轨迹和步态。通过本公开的实施例所提供的方法能够实时自动地规划轨迹和步态,提高了对足式机器人的运动控制效率,且使得所控制的足式机器人的轨迹和步态更灵活且仿生。此外,通过省略对脊柱关节的控制,该方法也同样适用于无脊柱关节的足式机器人。
Description
技术领域
本公开涉及人工智能及机器人领域,更具体地,涉及一种用于足式机器人的运动控制方法和装置、以及一种足式机器人。
背景技术
随着人工智能及机器人技术在民用和商用领域的广泛应用,基于人工智能及机器人技术的机器人在智能交通、智能家居等领域起到日益重要的作用,也面临着更高的要求。在足式机器人领域中,出现了包含脊柱关节的新型设计,使得足式机器人的动作更加灵活且仿生,同时也增大了对足式机器人的运动控制的难度。
传统的用于足式机器人的运动控制方法通常是基于样条曲线来人为地设计机器人的轨迹与步态,并完成对每个电机的期望轨迹的复杂计算。然而,这样的方法通常需要耗费大量人力来完成运动设计,并且所设计的轨迹与步态较为僵硬且机械,缺乏灵动与柔和感。此外,由于轨迹与步态通常是相辅相成的,而所设计的轨迹与步态并不协调,因此这种运动控制方法一般只能通过放慢速度、迭代调试的方式才能增强机器人的平衡性。由于脊柱关节的运动难以通过样条曲线设计,这种传统运动控制方法还难以用于设计包含脊柱关节的新型足式机器人的轨迹与步态。
因此,需要一种高效且自动的运动控制方法,使得对于足式机器人的运动控制更加灵活、仿生,并且对于含脊柱关节和无脊柱关节的足式机器人均可适用。
发明内容
针对以上问题,本公开提供了一种用于足式机器人的运动控制方法和装置及足式机器人。本公开提供的方法利用基于从活体采集的运动数据所训练的神经网络模型,为含脊柱关节的足式机器人自动地设计灵活且仿生的运动轨迹与步态。
根据本公开的一方面,提出了一种用于足式机器人的运动控制方法,所述足式机器人的骨骼关节包括至少一个脊柱关节和至少两个下肢关节,所述方法包括:获取所述足式机器人的期望运动轨迹信息;获取所述足式机器人的当前骨骼关节信息,所获取的当前骨骼关节信息包括对应于所述足式机器人的所述至少一个脊柱关节和所述至少两个下肢关节的骨骼关节信息;基于所述当前骨骼关节信息和所述期望运动轨迹信息,生成所述足式机器人的轨迹控制信息和关节控制信息;以及基于所述轨迹控制信息和关节控制信息,来控制所述足式机器人的骨骼关节的运动。
在一些实施例中,所述方法还包括:获取所述足式机器人的当前步态类型;以及基于所述当前骨骼关节信息、所述期望运动轨迹信息和所述当前步态类型,生成所述足式机器人的后续步态类型;其中,所述期望运动轨迹信息为所述足式机器人的期望重心运动轨迹,所述轨迹控制信息用于控制所述足式机器人的重心运动轨迹,其中,所述骨骼关节信息包括所述足式机器人的骨骼关节的位置信息和方向信息,所述关节控制信息包括用于控制所述足式机器人的骨骼关节的转动的信息。
在一些实施例中,基于所述当前骨骼关节信息和所述期望运动轨迹信息,生成所述足式机器人的轨迹控制信息和关节控制信息包括:基于所述当前骨骼关节信息和所述期望运动轨迹信息,生成所述足式机器人的期望速度信息;基于所述当前骨骼关节信息、所述期望运动轨迹信息、以及所述期望速度信息,生成参考运动轨迹信息和关节控制信息;以及将所述期望运动轨迹信息和所述参考运动轨迹信息进行融合,以生成所述足式机器人的轨迹控制信息。
在一些实施例中,所述至少一个脊柱关节包括两个脊柱关节,所述两个脊柱关节将所述足式机器人的基座分为头部基座、中部基座和尾部基座,所述足式机器人的期望运动轨迹信息和轨迹控制信息分别是所述足式机器人的中部基座的期望运动轨迹信息和轨迹控制信息,其中,所述足式机器人包括多个电机,根据所述关节控制信息来设置所述多个电机的转角,以控制所述足式机器人的骨骼关节的转动。
在一些实施例中,利用预先训练的神经网络模型,基于所述当前骨骼关节信息和所述期望运动轨迹信息,生成所述足式机器人的关节控制信息和轨迹控制信息;其中,所述神经网络模型是基于与所述足式机器人相对应的活体的运动数据训练而成的,所述活体的运动数据包括在所述活体的运动过程中按预定时间间隔采集的关节运动信息,其中,所述活体的骨骼关节包括至少两个下肢关节,所采集的所述活体的关节运动信息包括对应于所述活体的所述至少两个下肢关节的位置信息。
在一些实施例中,所述神经网络模型是基于所述活体的运动数据训练而成的,还包括:基于所采集的所述活体的关节运动信息,进行数据重定向,以得到所述足式机器人的用于对所述神经网络模型进行训练的训练数据;以及利用所述训练数据,对所述神经网络模型进行训练;其中,所述训练数据包括以所述预定时间间隔为间隔的数据序列集合,其中,对于每个采集时刻,基于所采集的所述活体的关节运动信息,进行数据重定向以获得其对应的用于足式机器人的骨骼关节信息、运动轨迹信息、期望速度信息和电机运动信息;其中,所述训练数据包括输入数据部分和输出数据部分,所述输入数据部分包括该采集时刻的所述数据重定向后的骨骼关节信息、运动轨迹信息和期望速度信息,并且所述输出数据部分包括电机运动信息以及下一采集时刻的运动轨迹信息,其中所述电机运动信息对应于所述关节控制信息,所述下一采集时刻的运动轨迹信息对应于所述轨迹控制信息,其中,所述运动轨迹信息包括所述足式机器人在所述采集时刻的位置信息和方向信息,所述骨骼关节信息包括所述足式机器人的骨骼关节在所述采集时刻的位置信息、方向信息和当前速度信息,所述电机运动信息包括所述足式机器人中的各个电机的位置信息和速度信息。
在一些实施例中,对于每个采集时刻,还确定所述活体在所述采集时刻的步态类型标签;并且其中,所述输入数据部分还包括该采集时刻的步态类型标签,并且所述输出数据部分还包括下一采集时刻的步态类型标签。
在一些实施例中,基于所采集的所述活体的关节运动信息,进行数据重定向以获得其对应的用于足式机器人的骨骼关节信息、运动轨迹信息、期望速度信息和电机运动信息,包括:基于所采集的所述活体的关节运动信息,确定所述足式机器人的基座的运动轨迹信息和姿态信息;基于所述足式机器人的基座的姿态信息,确定对于所述至少一个脊柱关节所对应的电机的电机控制信息;根据所述足式机器人的基座的运动轨迹信息和姿态信息以及对于所述至少一个脊柱关节所对应的电机的电机控制信息,确定所述足式机器人的至少两个下肢关节的位置信息和姿态信息,以确定所述足式机器人的至少两个下肢关节所对应的电机的电机控制信息;以及基于所述足式机器人的至少两个下肢关节所对应的电机的电机控制信息,确定所述足式机器人的电机运动信息,其中,所述电机控制信息是在数据重定向后生成的用于控制所述足式机器人中的各个电机的转动的信息。
在一些实施例中,基于所采集的所述活体的关节运动信息,进行数据重定向以获得其对应的用于足式机器人的骨骼关节信息、运动轨迹信息、期望速度信息和电机运动信息,还包括:基于所采集的所述活体的关节运动信息,确定所述足式机器人的至少两个下肢关节的位置信息;根据所述足式机器人的基座的运动轨迹信息和姿态信息以及对于所述至少一个脊柱关节所对应的电机的电机控制信息,更新所述足式机器人的至少两个下肢关节的位置信息和姿态信息;基于更新后的所述足式机器人的至少两个下肢关节的位置信息和姿态信息,确定所述足式机器人的至少两个下肢关节所对应的电机的电机控制信息。
在一些实施例中,所述活体的至少两个下肢关节和所述足式机器人的至少两个下肢关节都包括四个髋关节、四个膝关节和四个趾关节;所述足式机器人的至少一个脊柱关节包括两个脊柱关节,所述两个脊柱关节将所述足式机器人的基座分为头部基座、中部基座和尾部基座;其中,基于所采集的所述活体的关节运动信息,进行数据重定向以获得其对应的用于足式机器人的骨骼关节信息、运动轨迹信息、期望速度信息和电机运动信息,包括:基于所采集的所述活体的关节运动信息,确定所述足式机器人的至少两个下肢关节的位置信息、以及所述中部基座的运动轨迹信息和姿态信息;基于所述足式机器人的至少两个下肢关节的位置信息以及所述中部基座的位置信息和姿态信息,确定所述头部基座和尾部基座的姿态信息,并基于所述头部基座、尾部基座和中部基座的姿态信息确定对于所述两个脊柱关节所对应的电机的电机控制信息;根据所述中部基座的位置信息和姿态信息以及对于所述两个脊柱关节所对应的电机的电机控制信息,更新所述足式机器人的四个髋关节的位置信息和姿态信息;基于更新后的所述足式机器人的四个髋关节的位置信息和姿态信息,确定所述足式机器人的至少两个下肢关节所对应的电机的电机控制信息;以及基于所述足式机器人的至少两个下肢关节所对应的电机的电机控制信息,确定所述足式机器人的电机运动信息,其中,所述电机控制信息是在数据重定向后生成的用于控制所述足式机器人中的各个电机的转动的信息。
在一些实施例中,所述足式机器人的每个髋关节对应于两个电机,每个膝关节对应于一个电机,并且所述两个脊柱关节中的每个脊柱关节对应于三个电机;所采集的所述活体的关节运动信息包括对应于所述活体的所述四个髋关节和四个趾关节的关节运动信息;其中,基于更新后的所述足式机器人的所述四个髋关节的位置信息和姿态信息,确定所述足式机器人的所述至少两个下肢关节所对应的电机的电机控制信息,包括:基于更新后的所述足式机器人的四个髋关节的位置信息和姿态信息,确定所述足式机器人的前部基座和后部基座各自的本地坐标系;以及对于所述足式机器人的四个趾关节中的每个趾关节,利用所述趾关节的位置信息在其对应的本地坐标系下的三维坐标,确定所述足式机器人的下肢关节所对应的电机的电机控制信息。
根据本公开的另一方面,提出了一种用于足式机器人的运动控制装置,所述足式机器人的骨骼关节包括至少一个脊柱关节和至少两个下肢关节,所述装置包括:期望信息获取模块,被配置为获取所述足式机器人的期望运动轨迹信息;当前信息获取模块,被配置为获取所述足式机器人的当前骨骼关节信息,所获取的当前骨骼关节信息包括对应于所述足式机器人的脊柱关节和下肢关节的骨骼关节信息;控制信息生成模块,被配置为基于所述当前骨骼关节信息和所述期望运动轨迹信息,生成所述足式机器人的轨迹控制信息和关节控制信息;以及运动控制模块,被配置为基于所述轨迹控制信息和关节控制信息,来控制所述足式机器人的骨骼关节的运动。
在一些实施例中,所述当前信息获取模块还被配置为获取所述足式机器人的当前步态类型,并且所述装置还包括:步态类型生成模块,被配置为基于所述当前骨骼关节信息、所述期望运动轨迹信息和所述当前步态类型,生成所述足式机器人的后续步态类型;其中,所述期望运动轨迹信息为所述足式机器人的期望重心运动轨迹,所述轨迹控制信息用于控制所述足式机器人的重心运动轨迹,其中,所述骨骼关节信息包括所述足式机器人的骨骼关节的位置信息和方向信息,所述关节控制信息包括用于控制所述足式机器人的骨骼关节的转动的信息。
在一些实施例中,所述控制信息生成模块被配置为利用预先训练的神经网络模型,基于所述当前骨骼关节信息和所述期望运动轨迹信息,生成所述足式机器人的关节控制信息和轨迹控制信息;其中,所述神经网络模型是基于与所述足式机器人相对应的活体的运动数据训练而成的,所述活体的运动数据包括在所述活体的运动过程中按预定时间间隔采集的关节运动信息,所述活体的骨骼关节包括至少两个下肢关节,所采集的所述活体的关节运动信息包括对应于所述活体的所述至少两个下肢关节的位置信息。
在一些实施例中,所述神经网络模型是基于所述活体的运动数据训练而成的,还包括:基于所采集的所述活体的关节运动信息,进行数据重定向,以得到所述足式机器人的用于对所述神经网络模型进行训练的训练数据;以及利用所述训练数据,对所述神经网络模型进行训练;其中,所述训练数据包括以所述预定时间间隔为间隔的数据序列集合,其中,对于每个采集时刻,基于所采集的所述活体的关节运动信息,进行数据重定向以获得其对应的用于足式机器人的骨骼关节信息、运动轨迹信息、期望速度信息和电机运动信息;其中,所述训练数据包括输入数据部分和输出数据部分,所述输入数据部分包括该采集时刻的所述数据重定向后的骨骼关节信息、运动轨迹信息和期望速度信息,并且所述输出数据部分包括电机运动信息以及下一采集时刻的运动轨迹信息,其中所述电机运动信息对应于所述关节控制信息,所述下一采集时刻的运动轨迹信息对应于所述轨迹控制信息,其中,所述运动轨迹信息包括所述足式机器人在所述采集时刻的位置信息和方向信息,所述骨骼关节信息包括所述足式机器人的骨骼关节在所述采集时刻的位置信息、方向信息和当前速度信息,所述电机运动信息包括所述足式机器人中的各个电机的位置信息和速度信息。
在一些实施例中,基于所采集的所述活体的关节运动信息,进行数据重定向以获得其对应的用于足式机器人的骨骼关节信息、运动轨迹信息、期望速度信息和电机运动信息,包括:基于所采集的所述活体的关节运动信息,确定所述足式机器人的至少两个下肢关节的位置信息、以及所述足式机器人的基座的运动轨迹信息和姿态信息;基于所述足式机器人的基座的姿态信息,确定对于所述至少一个脊柱关节所对应的电机的电机控制信息;根据所述足式机器人的基座的运动轨迹信息和姿态信息以及对于所述至少一个脊柱关节所对应的电机的电机控制信息,更新所述足式机器人的至少两个下肢关节的位置信息和姿态信息;基于更新后的所述足式机器人的至少两个下肢关节的位置信息和姿态信息,确定所述足式机器人的至少两个下肢关节所对应的电机的电机控制信息;以及基于所述足式机器人的至少两个下肢关节所对应的电机的电机控制信息,确定所述足式机器人的电机运动信息,其中,所述电机控制信息是在数据重定向后生成的用于控制所述足式机器人中的各个电机的转动的信息。
在一些实施例中,所述活体的所述至少两个下肢关节和所述足式机器人的所述至少两个下肢关节都包括四个髋关节、四个膝关节和四个趾关节;所述足式机器人的至少一个脊柱关节包括两个脊柱关节,所述两个脊柱关节将所述足式机器人的基座分为头部基座、中部基座和尾部基座;其中,基于所采集的所述活体的关节运动信息,进行数据重定向以获得其对应的用于足式机器人的骨骼关节信息、运动轨迹信息、期望速度信息和电机运动信息,包括:基于所采集的所述活体的关节运动信息,确定所述足式机器人的至少两个下肢关节的位置信息、以及中部基座的运动轨迹信息和姿态信息;基于所述足式机器人的至少两个下肢关节的位置信息、以及中部基座的位置信息和姿态信息,确定所述头部基座和尾部基座的姿态信息,并基于所述头部基座、尾部基座和中部基座的姿态信息,确定对于所述足式机器人的两个脊柱关节所对应的电机的电机控制信息;根据所述足式机器人的中部基座的位置信息和姿态信息以及对于所述足式机器人的两个脊柱关节所对应的电机的电机控制信息,更新所述足式机器人的所述四个髋关节的位置信息和姿态信息;基于更新后的所述足式机器人的所述四个髋关节的位置信息和姿态信息,确定所述足式机器人的所述至少两个下肢关节所对应的电机的电机控制信息;以及基于所述足式机器人的所述至少两个下肢关节所对应的电机的电机控制信息,确定所述足式机器人的电机运动信息,其中,所述电机控制信息是在数据重定向后生成的用于控制所述足式机器人中的各个电机的转动的信息。
根据本公开的另一方面,提出了一种足式机器人,所述足式机器人包括:基座部,包括两个脊柱关节,其将所述基座部分为头部基座、中部基座和尾部基座;下肢部,其连接至所述基座部,所述下肢部包括四条下肢,其中每条下肢包括髋关节、膝关节和趾关节;控制器,所述控制器设置在所述足式机器人上,且能够执行如前所述的用于足式机器人的运动控制方法。
本公开的实施例所提供的方法相比于传统的用于足式机器人的运动控制方法而言,能够自动地实现对足式机器人的轨迹和步态规划,节省了传统方法所需耗费的大量人力,并且使足式机器人的轨迹和步态更具灵动与柔和感。
本公开的实施例所提供的方法利用人工智能技术,通过基于从活体采集的运动数据所训练的神经网络模型,基于包含脊柱关节的足式机器人的当前状态信息来规划其后续运动轨迹和步态。通过本公开的实施例所提供的方法能够实时自动地规划轨迹和步态,提高了对足式机器人的运动控制效率,且使得所控制的足式机器人的轨迹和步态更灵活且仿生。此外,通过省略对脊柱关节的控制,该方法也同样适用于无脊柱关节的足式机器人。
附图说明
为了更清楚地说明本公开的实施例的技术方案,下面将对实施例的描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本公开的一些示例性实施例,对于本领域普通技术人员来说,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。以下附图并未刻意按实际尺寸等比例缩放绘制,重点在于示出本公开的主旨。
图1是示出根据本公开的实施例的含脊柱关节和无脊柱关节的足式机器人的示意图;
图2A是示出根据本公开的实施例的用于足式机器人的运动控制方法200的流程图;
图2B是示出根据本公开的实施例的用于足式机器人的运动控制方法300的流程图;
图3是示出根据本公开的实施例的运动数据采集的示意图;
图4是示出根据本公开的实施例的数据重定向处理的流程图;
图5A是示出根据本公开的实施例的足式机器人的基座和脊柱关节的结构的示意图;
图5B是示出根据本公开的实施例的足式机器人的下肢关节的结构的示意图;
图5C是示出根据本公开的实施例的足式机器人的脊柱关节所对应的电机的运动控制的示意图;
图5D是示出根据本公开的实施例的足式机器人的下肢关节所对应的电机的运动控制的示意图;
图6示出了根据本公开的实施例的头部基座、中部基座和尾部基座的结构关系的示意图;
图7是示出根据本公开的实施例的足式机器人的下肢关节及其所对应的电机的结构示意图;
图8示出了根据本公开的实施例的用于足式机器人的运动控制装置的示意图;
图9示出了根据本公开实施例的足式机器人的示例性框图。
具体实施方式
为了使得本公开的目的、技术方案和优点更为明显,下面将参考附图详细描述根据本公开的示例实施例。显然,所描述的实施例仅仅是本公开的一部分实施例,而不是本公开的全部实施例,应理解,本公开不受这里描述的示例实施例的限制。
如本公开和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其他的步骤或元素。
虽然本公开对根据本公开的实施例的装置中的某些模块做出了各种引用,然而,任何数量的不同模块可以被使用并运行在用户终端和/或服务器上。所述模块仅是说明性的,并且所述装置和方法的不同方面可以使用不同模块。
本公开中使用了流程图用来说明根据本公开的实施例的方法和装置所执行的操作。应当理解的是,前面或下面操作不一定按照顺序来精确地执行。相反,根据需要,可以按照倒序或同时处理各种步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。
为便于描述本公开,以下介绍与本公开有关的概念。
本公开的足式机器人是一种使用腿进行移动的机器人,其以动物为仿生对象,目的是依据工程技术和科学研究成果模拟动物的运动形式和复制动物的运动能力。足式机器人对各种环境(包括结构化环境(诸如公路、铁路、经处理的平整路面等)和非结构化环境(诸如山地、沼泽、崎岖不平的路面等))具有很强的适应能力,其能够适应地形的各种变化、翻越较高的障碍物,而且能够有效地减小载荷、提高系统的能量利用效率。足式机器人按照足数可分为单足、双足、四足、六足、八足等,其中,四足机器人具有超强的运动能力,其比双足机器人静态稳定性好,且比六足、八足机器人运动简单灵活,因此,四足机器人是研究足式机器人的一种常见选择。四足机器人的步态是四足机器人为了能够进行连续的移动,其四条腿在时间和空间上的协调关系。四足机器人的步态来自于四足哺乳动物的步态,其可以包括但不限于以下简化的三种形式:行走(walk)、小跑(trot)和跳跃(bound)。
本公开的用于足式机器人的运动控制方法可以是基于人工智能(Artificialintelligence,AI)的。人工智能是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。例如,对于基于人工智能的用于足式机器人的运动控制方法而言,其能够以类似于人类引导活体动物运动的方式来规划足式机器人的运动轨迹和步态,使得足式机器人的运动更灵活仿生。人工智能通过研究各种智能机器的设计原理与实现方法,使本公开的用于足式机器人的运动控制方法具有自动高效地基于机器人的当前运动状态设计机器人的后续运动轨迹和步态的功能。
例如,本公开的用于足式机器人的运动控制方法可以基于机器学习(MachineLearning,ML)技术。机器学习是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。其专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习等技术。其中,本公开的用于足式机器人的运动控制方法可以基于机器学习中的神经网络模型,例如,基于从活体动物的运动过程中采集的运动数据来训练神经网络模型,以利用该神经网络模型获得更符合活体运动特征和规律的运动规划。当然,本公开仅以上述神经网络模型作为示例而非限制来执行运动规划,因此,其他可实现类似效果的机器学习方法同样可适用于本公开的用于足式机器人的运动控制方法。
综上所述,本公开的实施例提供的方案涉及人工智能、机器学习等技术,下面将结合附图对本公开的实施例进行进一步地描述。
图1是示出根据本公开的实施例的含脊柱关节和无脊柱关节的足式机器人的示意图。
随着足式机器人的研究重点从静态低速运动逐渐转移至动态高速移动,传统的不具有脊柱关节(躯体呈完全刚性)的足式机器人(例如,步行四足机器人)的研究变得不再适用。在对足式机器人的研究中,其脊柱关节通常被设计为刚性结构(刚性杆),以便于关注重点内容的研究,但是活体动物(例如,四足哺乳动物)的躯体都是柔性的,在其高速运动的过程中,其躯体会存在剧烈的伸展和弯曲运动。目前生物学领域已经证实,脊柱运动会对动物的运动性能产生重要影响,包括但不限于提高动物的运动速度、能量利用效率和稳定性等。因此,机器人研究领域的技术人员开始关注足式机器人的躯体结构设计和脊柱运动的作用,研发了一种新型的足式机器人,即含脊柱关节的足式机器人,并从仿生的角度对含脊柱关节的足式机器人进行研究。
如图1所示,以四足机器人为例,图1中的(a)和(b)分别示出了含脊柱关节的足式机器人的内部透视图和外部结构图,而图1中的(c)和(d)分别示出了无脊柱关节的足式机器人的内部透视图和外部结构图。其中,图1(c)和(d)所示的无脊柱关节的足式机器人在采用跳跃步态进行动态移动时,移动速度与小跑步态相比并没有很大程度的提高,而且运动僵硬、易于失稳,而图1(a)和(b)所示的含脊柱关节的足式机器人通过基于脊柱关节和下肢关节的协调联动,能够具有更灵活、自然且稳定的动态移动。
在目前用于足式机器人的运动控制方法中,通常是基于样条曲线来人为地设计机器人的轨迹与步态,其中,需要耗费大量人力来计算机器人中的每个电机的期望轨迹,并且所设计的轨迹与步态较为僵硬且机械,缺乏灵动与柔和感。由于活体动物的运动过程中轨迹与步态之间存在紧密关联,而人为设计的轨迹与步态实际上因难以实现这种关联而易导致机器人失稳,因此这种运动控制方法一般需要通过放慢速度、迭代调试的方式才能增强机器人的平衡性。
此外,由于脊柱关节的运动难以通过样条曲线设计,上述用于足式机器人的运动控制方法还难以用于包含脊柱关节的新型足式机器人的轨迹与步态规划。
因此,针对上述问题,本公开提供了一种用于含脊柱关节的足式机器人的运动控制方法,其相比于传统的用于足式机器人的运动控制方法而言,能够自动地实现对足式机器人的轨迹和步态规划,节省了传统方法所需耗费的大量人力,并且使足式机器人的轨迹和步态更具灵动与柔和感。
本公开的实施例所提供的方法利用人工智能技术,通过基于从活体采集的运动数据所训练的神经网络模型,基于包含脊柱关节的足式机器人的当前状态信息来规划其后续运动轨迹和步态。通过本公开的实施例所提供的方法能够实时自动地规划轨迹和步态,提高了对足式机器人的运动控制效率,且使得所控制的足式机器人的轨迹和步态更灵活且仿生。此外,通过省略对脊柱关节的控制,该方法也同样适用于无脊柱关节的足式机器人。
图2A是示出根据本公开的实施例的用于足式机器人的运动控制方法200的流程图。图2B是示出根据本公开的实施例的用于足式机器人的运动控制方法300的流程图。
根据本公开的实施例,所述足式机器人的骨骼关节包括至少一个脊柱关节和至少两个下肢关节。例如,对于如图1(a)所示的四足机器人,其可以包括两个脊柱关节,并且每条腿上可以包括三个下肢关节,例如髋关节、膝关节和趾关节。
根据本公开的实施例的用于足式机器人的运动控制方法200可以包括如图2A所示的以下步骤。
在步骤S201中,可以获取所述足式机器人的期望运动轨迹信息。
根据本公开的实施例,所述期望运动轨迹信息可以为所述足式机器人的期望重心运动轨迹。可选地,足式机器人中其他各部位的期望轨迹可以基于该足式机器人的期望重心运动轨迹来获得。
可选地,该期望运动轨迹信息可以由操作者根据实际任务要求,对期望的机器人重心轨迹进行输入,以用于指导足式机器人的后续运动。可选地,该期望运动轨迹信息可以基于机器人遥操作(Teleoperation),即在机器人控制中将人类操作包含在控制回路中,由人类操作者下达与运动相关的命令,而机器人本体仅负责相应的任务实现。例如,通过操作外部摇杆来向该足式机器人的运动控制装置输入期望重心运动轨迹。
在步骤S202中,可以获取所述足式机器人的当前骨骼关节信息,所获取的当前骨骼关节信息包括对应于所述足式机器人的所述至少一个脊柱关节和所述至少两个下肢关节的骨骼关节信息。
根据本公开的实施例,所述骨骼关节信息可以包括所述足式机器人的骨骼关节的位置信息和方向信息。例如,可以获取足式机器人在当前时刻的骨骼关节中的部分或全部的位置信息和方向信息,该骨骼关节中的部分或全部包括但不限于脊柱关节、髋关节、膝关节和趾关节。
在步骤S203中,可以基于所述当前骨骼关节信息和所述期望运动轨迹信息,生成所述足式机器人的轨迹控制信息和关节控制信息。
根据本公开的实施例,可以利用预先训练的神经网络模型,基于所述当前骨骼关节信息和所述期望运动轨迹信息,生成所述足式机器人的关节控制信息和轨迹控制信息。
可选地,在获取到足式机器人的当前骨骼关节信息和期望运动轨迹信息之后,将其作为如上所述的神经网络模型的输入,可以输出对足式机器人的运动控制信息,所述运动控制信息可以包括参考运动轨迹信息和关节控制信息,然后可以基于参考运动轨迹信息生成所述轨迹控制信息。
根据本公开的实施例,步骤S203可以包括:基于所述当前骨骼关节信息和所述期望运动轨迹信息,生成所述足式机器人的期望速度信息;基于所述当前骨骼关节信息、所述期望运动轨迹信息、以及所述期望速度信息,生成参考运动轨迹信息和关节控制信息;以及将所述期望运动轨迹信息和所述参考运动轨迹信息进行融合,以生成所述足式机器人的轨迹控制信息。
可选地,上述神经网络模型的输入除了所获取的足式机器人的当前骨骼关节信息和期望运动轨迹信息之外,还可以包括基于前述信息所获得的足式机器人的期望速度信息。
可选地,该期望速度信息可以是基于期望运动轨迹信息中与下一时刻的期望重心位置相关的信息和根据当前骨骼关节信息中的位置信息所获得的与足式机器人的当前重心位置相关的信息的差所生成的,也就是说,期望速度信息需要使足式机器人能够在下一时刻到达期望重心位置。此外,可选地,还可以对期望速度信息设置阈值,在期望速度超出阈值时,将期望速度信息设置为所述阈值。
可选地,基于上述三个信息,可以通过预先训练的神经网络模型输出对足式机器人的运动控制信息,所输出的运动控制信息可以包括与空间运动轨迹相关的参考运动轨迹信息和与足式机器人的步态相关的关节控制信息。其中,该参考运动轨迹信息可以被认为是通过预先训练的神经网络模型输出的轨迹控制信息,但由于该神经网络模型是在以活体为仿生对象的情况下训练而成的,所输出的轨迹控制信息相较于期望运动轨迹信息可能更接近于活体最易于实现的运动轨迹,导致基于此情况下的轨迹控制信息(即参考运动轨迹信息)所达到的运动轨迹可能与操作者输入的期望运动轨迹信息差距较大。因此,可以将此情况下的参考运动轨迹信息与期望运动轨迹信息进行融合,以生成用于足式机器人的轨迹控制信息,使得操作者设计的运动轨迹逐渐接近于活体的运动轨迹,并且对该足式机器人的运动控制在满足预期的灵活仿生表现的前提下更加顺滑(即更接近于操作者的期望运动轨迹)。
根据本公开的实施例,所述神经网络模型可以是基于与所述足式机器人相对应的活体的运动数据训练而成的,所述活体的运动数据可以包括在所述活体的运动过程中按预定时间间隔采集的关节运动信息。
可选地,上述活体可以是活体狗,即含脊柱关节的足式机器人可以以活体狗作为仿生对象,利用周期性地采集的活体狗的运动数据来训练神经网络模型。
根据本公开的实施例,所述活体的骨骼关节可以包括至少两个下肢关节,所采集的所述活体的关节运动信息可以包括对应于所述活体的所述至少两个下肢关节的位置信息。
可选地,对于本公开的实施例中采用的活体狗,其骨骼关节可以包括四个髋关节和四个趾关节,所采集的关节运动信息可以包括对应于其髋关节和趾关节的位置信息。除了上述髋关节和趾关节外,该活体狗还可以包括诸如脊柱关节和膝关节的其他骨骼关节。在本公开中,以利用该活体的上述髋关节和趾关节的位置信息作为运动数据为例,进行神经网络模型的训练。在本公开中,可以仅基于上述从活体采集的髋关节和趾关节的位置信息来训练本公开的神经网络模型,但是应当理解,除了上述髋关节和趾关节的位置信息外,还可以利用从活体采集的其他信息来训练神经网络模型。具体地,对神经网络模型的训练可以参见以下参考图3-7所述。
在步骤S204中,可以基于所述轨迹控制信息和关节控制信息,来控制所述足式机器人的骨骼关节的运动。
根据本公开的实施例,所述轨迹控制信息可以用于控制所述足式机器人的重心运动轨迹。
根据本公开的实施例,所述至少一个脊柱关节可以包括两个脊柱关节,所述两个脊柱关节可将所述足式机器人的基座分为头部基座、中部基座和尾部基座。因此,根据本公开的实施例,所述足式机器人的期望运动轨迹信息和轨迹控制信息可以例如分别是所述足式机器人的中部基座的期望运动轨迹信息和轨迹控制信息。
根据本公开的实施例,所述关节控制信息可以包括用于控制所述足式机器人的骨骼关节的转动的信息。
根据本公开的实施例,所述足式机器人可以包括多个电机,可以根据所述关节控制信息来设置所述多个电机的转角,以控制所述足式机器人的骨骼关节的转动。
可选地,足式机器人的多个电机可以设置在该足式机器人的多个骨骼关节处。因此,可以基于关节控制信息生成对这些电机的转角的控制信息,从而根据该控制信息来控制对应的骨骼关节的转动。
可选地,基于足式机器人的骨骼关节的转动连同其轨迹控制信息,可以控制足式机器人的各骨骼关节的运动。
此外,如图2B所示,用于足式机器人的运动控制方法300除了上述步骤S201-S204外,还可以包括以下附加步骤。
根据本公开的实施例,用于足式机器人的运动控制方法300还可以包括步骤S205,获取所述足式机器人的当前步态类型;以及步骤S206,基于所述当前骨骼关节信息、所述期望运动轨迹信息和所述当前步态类型,生成所述足式机器人的后续步态类型。其中,所述步态类型可以包括行走、小跑和跳跃等步态。
在获取到足式机器人的当前步态类型后,基于该足式机器人的当前骨骼关节信息和期望运动轨迹信息,可以通过神经网络模型获得足式机器人在下一时刻的步态类型。
通过上述用于足式机器人的运动控制方法200和300,可以基于包含脊柱关节的足式机器人的当前状态信息来规划其后续运动轨迹和步态,通过利用神经网络模型实时且自动地规划轨迹和步态,提高了对足式机器人的运动控制效率,且使得所控制的足式机器人的轨迹和步态更灵活且仿生。
下面以活体狗和四足机器人为例来说明本公开的用于足式机器人的运动控制方法中的神经网络模型训练过程。但应理解,其中活体狗和四足机器人仅用作示例而非限制,本公开的用于足式机器人的运动控制方法可通过适当修改适用于其他活体和足式机器人,而不脱离本公开的范围。
图3是示出根据本公开的实施例的运动数据采集的示意图。
其中,图3(a)和(b)分别示出了对活体的运动数据采集和与该活体对应的足式机器人的示意图。如图3(a)所示,活体狗的身上被布置有可穿戴式的动作捕捉设备,该动作捕捉设备在活体狗的各个骨骼关节处均设置有动作捕捉点(即图3中的活体狗身上的各个点状凸起)。通过该动作捕捉设备(例如光学与惯量动作捕捉系统),可以获得活体狗的各个骨骼关节的位置与姿态随着时间变化的轨迹。
为了便于以下描述,如图3(b)所示,本公开中以与该活体狗对应的足式机器人的重心作为空间直角坐标系的原点,以与该活体狗对应的足式机器人的长度方向作为空间直角坐标系的x轴(以从足式机器人的尾部向头部为该x轴的正向,以下记为“x方向”),以足式机器人的宽度方向作为空间直角坐标系的y轴(以从足式机器人的右部向左部为该y轴的正向,以下记为“y方向”),并且以足式机器人的高度方向作为空间直角坐标系的z轴(以从足式机器人的底部向顶部为该z轴的正向,以下记为“z方向”)。
由于活体狗与足式机器人(在此情况下对应地为四足机器人)的运动控制存在本质区别,即活体狗的关节基本为球关节而足式机器人由于机械结构的限制只能够具有轴关节,且活体狗的关节自由度远多于足式机器人,因此从活体狗的运动中采集的关节运动信息需要经过特定处理以映射到足式机器人的关节空间上之后,才能应用于足式机器人的运动控制。
根据本公开的实施例,所述神经网络模型是基于所述活体的运动数据训练而成的。如前所述,由于活体狗与足式机器人的运动方式的区别,为了利用活体狗的运动数据来训练神经网络模型,需要基于所采集的所述活体的关节运动信息,进行数据重定向,以得到所述足式机器人的用于对所述神经网络模型进行训练的训练数据;然后再利用所述训练数据,对所述神经网络模型进行训练。
换言之,在活体狗上采集的关节运动信息需要进行数据重定向,以将所采集的运动数据转换为与该活体狗对应的足式机器人的关节空间上的运动数据,从而利用该足式机器人的运动数据作为训练数据来训练神经网络模型,该神经网络模型的输入与输出均对应于该足式机器人。
根据本公开的实施例,所述训练数据包括以所述预定时间间隔为间隔的数据序列集合。由于所采集的运动数据包括在活体的运动过程中按预定时间间隔采集的关节运动信息,其经数据重定向处理后所获得的多个数据序列所组成的数据序列集合同样以该预定时间间隔为间隔,即该数据序列集合中的每两个数据序列之间间隔该预定时间间隔。
根据本公开的实施例,对于每个采集时刻,可以基于所采集的所述活体的关节运动信息,进行数据重定向以获得其对应的用于足式机器人的骨骼关节信息、运动轨迹信息、期望速度信息和电机运动信息。
其中,根据本公开的实施例,基于所采集的所述活体的关节运动信息,进行数据重定向以获得其对应的用于足式机器人的骨骼关节信息、运动轨迹信息、期望速度信息和电机运动信息可以包括:基于所采集的所述活体的关节运动信息,确定所述足式机器人的基座的运动轨迹信息和姿态信息;基于所述足式机器人的基座的姿态信息,确定对于所述至少一个脊柱关节所对应的电机的电机控制信息;根据所述足式机器人的基座的运动轨迹信息和姿态信息以及对于所述至少一个脊柱关节所对应的电机的电机控制信息,确定所述足式机器人的至少两个下肢关节的位置信息和姿态信息,以确定所述足式机器人的至少两个下肢关节所对应的电机的电机控制信息;以及基于所述足式机器人的至少两个下肢关节所对应的电机的电机控制信息,确定所述足式机器人的电机运动信息,其中,所述电机控制信息是在数据重定向后生成的用于控制所述足式机器人中的各个电机的转动的信息。
根据本公开的实施例,上述数据重定向处理还可以包括:基于所采集的所述活体的关节运动信息,确定所述足式机器人的至少两个下肢关节的位置信息;根据所述足式机器人的基座的运动轨迹信息和姿态信息以及对于所述至少一个脊柱关节所对应的电机的电机控制信息,更新所述足式机器人的至少两个下肢关节的位置信息和姿态信息;以及基于更新后的所述足式机器人的至少两个下肢关节的位置信息和姿态信息,确定所述足式机器人的至少两个下肢关节所对应的电机的电机控制信息。
可选地,由于基于所采集的活体的运动数据中至少两个下肢关节的位置信息来获得对于至少一个脊柱关节所对应的电机的电机控制信息的过程中仅考虑了至少一个脊柱关节的姿态而忽略了其位移,在将其代入足式机器人的正运动学方程时,所获得的各下肢关节的位置会不同于所采集的活体的运动数据中下肢关节的位置信息。因此,需要基于上述信息来更新足式机器人的下肢关节的位置信息和姿态信息。
具体地,关于数据重定向处理的具体实施例可以如以下参考图4所述。
其中,根据本公开的实施例,所述运动轨迹信息可以包括所述足式机器人在所述采集时刻的位置信息和方向信息,所述骨骼关节信息可以包括所述足式机器人的骨骼关节在所述采集时刻的位置信息、方向信息和当前速度信息,所述电机运动信息可以包括所述足式机器人中的各个电机的位置信息和速度信息。
例如,基于活体狗上的四个髋关节和四个趾关节的位置信息,经过数据重定向可以获得其对应的四足机器人的骨骼关节信息、运动轨迹信息、期望速度信息和电机运动信息。
根据本公开的实施例,所述训练数据可以包括输入数据部分和输出数据部分,所述输入数据部分可以包括该采集时刻的所述数据重定向后的骨骼关节信息、运动轨迹信息和期望速度信息,并且所述输出数据部分可以包括电机运动信息以及用于下一采集时刻的运动轨迹信息,其中所述电机运动信息对应于所述关节控制信息,所述下一采集时刻的运动轨迹信息对应于所述轨迹控制信息。
可选地,在该神经网络模型的训练阶段,可以以任一采集时刻的数据重定向后的骨骼关节信息、运动轨迹信息和期望速度信息为模型输入,以电机运动信息以及下一采集时刻的运动轨迹信息为模型输出。对应地,在该神经网络模型的应用阶段,可以以所获取的当前骨骼关节信息、期望运动轨迹信息和期望速度信息为模型输入,以关节控制信息和轨迹控制信息为模型输出。
此外,根据本公开实施例,可选地,在采集该活体狗的运动数据之前,可以预先对该活体狗进行步态训练,即训练其在操作空间中根据指令实现各种步态(包括但不限于行走、小跑和跳跃),从而从该活体狗身上采集对应于特定步态序列的运动数据,其中,该特定步态序列可以是预先设定的或随机生成的,本公开对此不作限制。
可选地,在采集该活体狗的运动数据时,可以对活体狗在每一采集时刻所对应的步态类型进行记录,从而形成与所采集的运动数据相对应的步态序列,诸如与按预定时间间隔采集的关节运动信息所组成的关节运动信息集合相对应的步态序列。
因此,根据本公开的实施例,对应地,对于每个采集时刻,还可以确定所述活体在所述采集时刻的步态类型标签;并且其中,所述输入数据部分还包括该采集时刻的步态类型标签,并且所述输出数据部分还包括下一采集时刻的步态类型标签。
可选地,基于先前所述的与所采集的运动数据相对应的步态序列(诸如与按预定时间间隔采集的关节运动信息所组成的关节运动信息集合相对应的步态序列),可以确定活体在每个采集时刻的步态类型,并且对于每一采集时刻,可以将该步态类型和与该采集时刻相对应的训练数据相关联,以形成与该采集时刻的各个训练数据相关联的步态类型标签,从而形成与训练数据的数据序列集合相对应的步态类型标签集合,其中每个数据序列与步态类型标签一一对应。
在此情况下,所述训练数据的输入数据部分可以包括该采集时刻的所述数据重定向后的骨骼关节信息、步态类型、运动轨迹信息和期望速度信息,并且所述训练数据的输出数据部分可以包括电机运动信息以及用于下一采集时刻的运动轨迹信息和步态类型,其中所述电机运动信息对应于所述关节控制信息,所述下一采集时刻的运动轨迹信息对应于所述轨迹控制信息,所述用于下一采集时刻的步态类型对应于所述后续步态类型。因此,利用训练后的神经网络模型,基于包含脊柱关节的足式机器人的当前状态信息来规划其后续运动轨迹和步态,能够实时且自动地规划轨迹和步态,提高了对足式机器人的运动控制效率,且使得所控制的足式机器人的轨迹和步态更灵活且仿生。
图4是示出根据本公开的实施例的数据重定向处理的流程图。
图5A是示出根据本公开的实施例的足式机器人的基座和脊柱关节的结构的示意图。图5B是示出根据本公开的实施例的足式机器人的下肢关节的结构的示意图。图5C是示出根据本公开的实施例的足式机器人的脊柱关节所对应的电机的运动控制的示意图。图5D是示出根据本公开的实施例的足式机器人的下肢关节所对应的电机的运动控制的示意图。
根据本公开的实施例,所述足式机器人的至少一个脊柱关节可以包括两个脊柱关节,所述两个脊柱关节可将所述足式机器人的基座分为头部基座、中部基座和尾部基座,如图5A左侧的足式机器人所示。此外,图5A右侧的足式机器人表示无脊柱关节的足式机器人。
根据本公开的实施例,所述足式机器人和所述活体都可以包括四条下肢,所述活体的至少两个下肢关节和所述足式机器人的至少两个下肢关节都可以包括四个髋关节、四个膝关节和四个趾关节,如图5B所示。所述足式机器人的每条下肢可以包括三个电机,其中,所述足式机器人的每个髋关节可以对应于两个电机,每个膝关节可以对应于一个电机,并且所述两个脊柱关节中的每个脊柱关节可以对应于三个电机。图5C和5D分别示出了脊柱关节和下肢关节所对应的电机的运动控制。
图5C中以其中一个脊柱关节所对应的三个电机为例来说明对脊柱关节的运动控制,其中,(a)、(b)和(c)分别对应于三个电机的转动。如图5C所示,(a)、(b)和(c)可以表示足式机器人的第一个脊柱关节分别围绕与如图3(b)所示的空间直角坐标系中的z轴、x轴或y轴平行的转轴的转动,因此每个脊柱关节所对应的三个电机分别用于控制该脊柱关节围绕空间中三条相互垂直的转轴的转动。根据本公开的实施例,上述一个脊柱关节所对应的三个电机连接了头部基座和中部基座,而足式机器人的另一个脊柱关节所对应的三个电机连接了中部基座和尾部基座。
图5D中以足式机器人的左前腿所对应的三个电机为例来说明对下肢关节的运动控制,其中,(a)、(b)和(c)分别对应于足式机器人的每条下肢上的三个电机的转动(各电机的位置以白色虚线框示出),其中,(a)和(b)对应于与髋关节相对应的两个电机,(c)对应于与膝关节相对应的一个电机。与每个脊柱关节所对应的三个电机类似地,(a)可以表示足式机器人的左前腿围绕与空间直角坐标系中的x轴平行的转轴的转动,(b)和(c)可以表示足式机器人的左前腿的大腿(髋关节和膝关节之间)和小腿(膝关节和趾关节之间)分别围绕与空间直角坐标系中的y轴平行的转轴的转动,因此足式机器人的每条下肢上的三个电机分别用于控制该下肢围绕空间中两条相互垂直的转轴的转动,其中髋关节所对应的两个电机分别用于控制该下肢的侧抬动作和大腿的转动,而膝关节所对应的一个电机用于控制该下肢的小腿的转动。
注意,为了图示清楚,图5B和5D中以无脊柱关节的足式机器人为例进行说明,含脊柱关节的足式机器人的每条下肢的下肢关节结构以及其对应的电机的运动控制与无脊柱关节的足式机器人相同。
根据本公开的实施例,数据重定向的输入是如上所述的所采集的活体的运动数据,其可以用(N,8,3)的张量来表征,而数据重定向的输出可以用(N,19)的矩阵(对于无脊柱关节的足式机器人)或(N,25)的矩阵(对于含脊柱关节的足式机器人)来表征。下面将具体说明运动数据的内容。
可选地,对于数据重定向的输入张量(N,8,3),其第一个维度N表示数据采集的帧数(即采集时刻的数目),第二个维度表示活体身上所关注的8个动作捕捉点(例如,对应于活体的四个髋关节和四个趾关节的8个动作捕捉点),而最后一个维度表示对应的一个动作捕捉点在空间中的三维位置坐标。
可选地,对于数据重定向的输出矩阵(N,19)或(N,25),其第一个维度N与其输入中的N相同,同样表示数据采集的帧数,而第二个维度表示经数据重定向的足式机器人的用于对神经网络模型进行训练的训练数据的维数。例如,对于无脊柱关节的足式机器人而言,如图5A右侧的足式机器人所示,其对应的训练数据的维数为19维,具体地,所述19维的训练数据包括其基座重心对应的三维空间位置坐标和表示其基座的姿态的四元数,以及四条下肢所对应的12个电机的转角参数。而对于含脊柱关节的足式机器人而言,如图5A左侧的足式机器人所示,其对应的训练数据的维数为25维,具体地,其相较于无脊柱关节的足式机器人的19维的训练数据,还需增加用于模拟脊柱姿态的参数,也就是两个脊柱关节所对应的6个电机的转角参数。
根据本公开的实施例,基于所采集的所述活体的关节运动信息,进行数据重定向以获得其对应的用于足式机器人的骨骼关节信息、运动轨迹信息、期望速度信息和电机运动信息可以包括如图4所示的步骤。
在步骤S401中,可以基于所采集的所述活体的关节运动信息,确定所述足式机器人的至少两个下肢关节的位置信息、以及所述中部基座的运动轨迹信息和姿态信息。
根据本公开的实施例,所采集的所述活体的关节运动信息包括对应于所述活体的所述四个髋关节和四个趾关节的关节运动信息。可选地,可以根据所述足式机器人与所述活体的空间尺寸的比例,对所采集的所述活体的骨骼关节信息进行适应性映射。例如,可以基于足式机器人的前髋关节和后髋关节之间的距离与活体的前髋关节和后髋关节之间的距离的比值,对所采集的运动数据的空间尺寸进行缩放。例如,将数据重定向输入张量(N,8,3)中表示空间位置的最后一维的三个数据分别乘以该比值。
对于每一采集时刻所对应的采集的活体的运动数据,基于四个髋关节的三维位置坐标的平均值可以获得该采集时刻下足式机器人的中部基座的三维位置坐标。该中部基座的姿态信息包括如上所述的表示该中部基座的姿态的四元数,其可以基于表示基座的姿态的旋转矩阵到四元数的转换公式得到。其中,表示基座的姿态的旋转矩阵可以由表示该基座的三个正交方向的单位列向量依次排列而成。在表示该基座的三个正交方向的单位列向量中,表示该基座的x方向的单位列向量可以基于活体的关节运动信息中四个髋关节的位置信息得到。具体地,通过将两个前髋关节的三维位置坐标之和减去两个后髋关节的三维位置坐标之和并进行归一化,可以获得表示该中部基座的姿态的x方向的单位列向量。类似地,通过将两个左髋关节的三维位置坐标之和减去两个右髋关节的三维位置坐标之和并进行归一化,可以获得表示该中部基座的姿态的y方向的单位列向量。继而可以基于其正交关系获得表示该中部基座的姿态的z方向的单位列向量。其中,基座的x方向、y方向和z方向的定义类似于上述关于足式机器人的x方向、y方向和z方向的定义,仅需将其中关于足式机器人的描述替换为与该基座对应的描述。
由此,可以获得该足式机器人的下肢关节(包括髋关节和趾关节)的位置信息,以及中部基座的位置信息与姿态信息。
在步骤S402中,可以基于所述足式机器人的至少两个下肢关节的位置信息以及所述中部基座的位置信息和姿态信息,确定所述头部基座和尾部基座的姿态信息,并基于所述头部基座、尾部基座和中部基座的姿态信息确定对于所述两个脊柱关节所对应的电机的电机控制信息。
图6示出了根据本公开的实施例的头部基座、中部基座和尾部基座的结构关系的示意图。
如图6所示,M点表示上述中部基座的位置,而F1、F2、B1、B2分别是所采集的活体的运动数据中的四个髋关节的位置,也就是足式机器人的四个髋关节的位置,其中,F1和F2分别对应于头部基座上的右髋关节和左髋关节,而B1和B2分别对应于尾部基座上的右髋关节和左髋关节。
可选地,基于头部基座的法线方向与M-F1-F2平面的垂直关系以及已得到的M、F1、F2三点的三维位置坐标,可以很容易地获得该M-F1-F2平面的单位法向量,也就是表示头部基座在足式机器人的空间直角坐标系中的z方向的单位列向量。可以以F1到F2方向上的单位向量作为头部基座在足式机器人的空间直角坐标系中的y方向的单位列向量。因此,基于该头部基座的z方向和y方向的单位列向量,根据其与对应的x方向的单位列向量的正交关系可以求得表示该头部基座的姿态的x方向的单位列向量(例如,通过将y方向的单位列向量叉乘z方向的单位列向量以得到对应的x方向的单位列向量)。由此,可以获得表示该头部基座的姿态的姿态信息(即由上述x、y和z方向的单位列向量组成的表示该头部基座的姿态的旋转矩阵)。
类似地,可以基于尾部基座的法线方向与M-B1-B2平面的垂直关系以及已得到的M、B1、B2三点的三维位置坐标,可以获得表示该尾部基座的姿态的姿态信息(即由尾部基座在足式机器人的空间直角坐标系中的x、y和z方向的单位列向量组成的表示该尾部基座的姿态的旋转矩阵)。
可选地,可以利用所述足式机器人的头部基座和尾部基座的姿态信息相对于所述中部基座的姿态信息的差异来确定对于所述足式机器人的两个脊柱关节所对应的电机的电机控制信息。
例如,基于表示中部基座的姿态的旋转矩阵的逆分别与表示头部基座的姿态的旋转矩阵和表示尾部基座的姿态的旋转矩阵的乘积,可以获得旋转变换矩阵,从而求解得到两组欧拉角。可选地,这两组欧拉角中的6个角度分别对应于两个脊柱关节所对应的6个电机的转角参数,也就是对于该两个脊柱关节所对应的电机的电机控制信息。
在步骤S403中,可以根据所述中部基座的位置信息和姿态信息以及对于所述两个脊柱关节所对应的电机的电机控制信息,更新所述足式机器人的四个髋关节的位置信息和姿态信息。
由于上述基于所采集的活体的运动数据中四个髋关节的位置信息来获得对于两个脊柱关节所对应的电机的电机控制信息的过程中仅考虑了脊柱关节的姿态而忽略了其位移,在将其代入足式机器人的正运动学方程时,所获得的各髋关节的位置会不同于所采集的活体的运动数据中四个髋关节的位置信息。因此,需要基于上述信息来更新足式机器人的四个髋关节的位置信息和姿态信息。
可选地,可以通过将上述获得的对于该两个脊柱关节所对应的电机的电机控制信息代入足式机器人的机械结构中,并且连同中部基座的位置信息和姿态信息以及该足式机器人的空间尺寸,计算该足式机器人的四个髋关节的位置信息,并以之替代上述从采集的活体的运动数据中获取的四个髋关节的位置信息。此外,由于脊柱关节所对应的电机的转动,还可以基于各髋关节相对于中部基座的旋转矩阵来更新髋关节的姿态信息。
在步骤S404中,可以基于更新后的所述足式机器人的四个髋关节的位置信息和姿态信息,确定所述足式机器人的至少两个下肢关节所对应的电机的电机控制信息。
根据本公开的实施例,步骤S404可以包括:基于更新后的所述足式机器人的四个髋关节的位置信息和姿态信息,确定所述足式机器人的前部基座和后部基座各自的本地坐标系;以及对于所述足式机器人的四个趾关节中的每个趾关节,利用所述趾关节的位置信息在其对应的本地坐标系下的三维坐标,确定所述足式机器人的下肢关节所对应的电机的电机控制信息。
图7是示出根据本公开的实施例的足式机器人的下肢关节及其所对应的电机的结构示意图(为了图示清楚,对图7所示的足式机器人进行了横向拉伸)。
为了简单起见,这里以呈自然状态的脊柱关节(即脊柱关节无转动)为例来描述对足式机器人的下肢关节所对应的电机的电机控制信息的确定,此时,含脊柱关节的足式机器人与无脊柱关节的足式机器人对该电机控制信息的确定方法相同。
可选地,以足式机器人的左前腿为例,可以计算出该趾关节在中部基座的本地坐标系下的本地三维位置坐标。此外,当脊柱关节发生转动时,根据已获得的中部基座的位置信息与旋转矩阵,基于该左前腿的趾关节的三维位置坐标,可以计算该趾关节在其对应的基座(即头部基座)的本地坐标系下的本地三维位置坐标。
可选地,可以基于该左前腿所对应的三个电机的转角以及机械结构的尺寸,使得从该趾关节对应的基座的本地坐标系出发通过位置变换得到的趾关节的三维位置坐标等于该趾关节在其对应的基座的本地坐标系下的三维位置坐标,从而求解该左前腿所对应的三个电机的转角,也就是足式机器人的下肢关节所对应的电机的电机控制信息。
具体地,如图7所示,θ1、θ2、θ3分别表示该左前腿所对应的三个电机的转角。
作为示例,第一个电机的转轴中心在基座的本地坐标系中的本地坐标为(L1,L2,0),第二个电机的转轴中心在第一个电机的本地坐标系中的本地坐标为(0,L3,0),并且第三个电机的转轴中心在第二个电机的本地坐标系中的本地坐标为(0,0,-L4)。该左前腿的趾关节在第三个电机的本地坐标系中的本地坐标为(0,0,-L5)。
因此,位置变换方程可以表示为以下等式(1)。
其中,(x,y,z)为该左前腿的趾关节在其对应的基座的本地坐标系中的本地三维位置坐标。
上述等式(1)可以简化为以下等式(2)。
考虑到足式机器人的机械结构的限制,第二个电机的转轴必须垂直于第二个电机的转轴中心、第三个电机的转轴中心以及趾关节这三点所构成的平面。由于第二个电机的转轴一定垂直于第二个电机的转轴中心和第三个电机的转轴中心的连线,因此,还可以基于第二个电机的转轴与第二个电机的转轴中心和趾关节的连线的垂直关系来求解上述等式(2)。
由于第二个电机的转轴方向的单位向量在其对应的基座的本地坐标系中可以表示为(0,cosθ1,sinθ1),第二个电机的转轴中心的位置在其对应的基座的本地坐标系中可以表示为(L1,L2+L3cosθ1,L3sinθ1),而趾关节的位置在其对应的基座的本地坐标系中可以表示为(x,y,z),因此可以得到等式(3)。
[(x,y,z)-(L1,L2+L3cosθ1,L3 sinθ1)]·(0,cosθ1,sinθ1)=0 (3)
由于该等式(3)仅包含一个未知量θ1,可以容易地进行求解。等式(3)可以被整理成关于sinθ1的等式(4)如下:
注意,对于等式(4)的判别式在其小于零的情况下,指示期望的趾关节的距离基座过近,从而导致第一个电机的转角θ1无解;在其大于零的情况下,在sinθ1的两个解中,只有一个解满足等式(3)。可选地,当限定θ1的取值范围到-π与π之间时,可以获得第一个电机的转角θ1。
可选地,将获得的θ1的解代入到等式(2)中,可以获得第二个电机和第三个电机的转角θ2与θ3的解。例如,根据足式机器人在实际运动中大腿与小腿的夹角关系,在限定θ3<0的情况下,可以获得唯一的θ2与θ3的解。
注意,当(L1-x)2+(L2+L3cosθ1-y)2+(L3sinθ1-z)2>(L4+L5)2时,会因为期望的趾关节的位置距离基座过远而导致θ2与θ3无解。因此,在实际的操作过程中,由于在数据采集时所选用的活体与数据重定向所用于的足式机器人在尺寸比例上可能存在较大差异,可以在获得足式机器人的下肢关节所对应的电机的电机控制信息时适当地调整基座的高度、或者适当地对期望的趾关节的位置进行平移,以避免出现转角无解的情况,这也能够使经数据重定向的数据更加协调。
可选地,对于脊柱关节发生转动的情况,通过基于上述更新后的足式机器人的髋关节的位置信息和姿态信息确定足式机器人的前部基座和后部基座各自的本地坐标系,并基于髋关节对应的本地坐标系更新L1和L2。然后,根据(L3,L4,L5)以及所采集的活体的运动数据中的相应的趾关节的位置信息,通过等式(1)及其相关求解方法可以获得此情况下足式机器人的下肢关节所对应的电机的电机控制信息。
根据本公开的实施例,经数据重定向的运动数据可对应于足式机器人的骨骼关节信息、运动轨迹信息、期望速度信息和电机控制信息。
在步骤S405中,可以基于所述足式机器人的至少两个下肢关节所对应的电机的电机控制信息,确定所述足式机器人的电机运动信息,其中,所述电机控制信息是在数据重定向后生成的用于控制所述足式机器人中的各个电机的转动的信息。
可选地,在确定了足式机器人的至少两个下肢关节所对应的电机的电机控制信息后,可以基于足式机器人的骨骼关节信息、运动轨迹信息、期望速度信息来确定足式机器人的电机运动信息,其可以包括足式机器人中的各个电机的位置信息和速度信息,该电机运动信息对应于上述关节控制信息。
图8示出了根据本公开的实施例的用于足式机器人的运动控制装置800的示意图。
运动控制装置800可以包括:期望信息获取模块801、当前信息获取模块802、控制信息生成模块803和运动控制模块804。
期望信息获取模块801被配置为执行图2A中步骤S201的过程,获取所述足式机器人的期望运动轨迹信息。
根据本公开的实施例,所述期望运动轨迹信息为所述足式机器人的期望重心运动轨迹。
可选地,该期望运动轨迹信息可以由操作者根据实际任务要求进行输入(例如,通过机器人遥操作),以用于指导足式机器人的后续运动。
当前信息获取模块802被配置为执行图2A中步骤S202的过程,获取所述足式机器人的当前骨骼关节信息,所获取的当前骨骼关节信息包括对应于所述足式机器人的脊柱关节和下肢关节的骨骼关节信息。
根据本公开的实施例,所述骨骼关节信息包括所述足式机器人的骨骼关节的位置信息和方向信息,
例如,可以获取足式机器人在当前时刻的骨骼关节中的部分或全部的位置信息和方向信息,该骨骼关节中的部分或全部包括但不限于脊柱关节、髋关节、膝关节和趾关节。
控制信息生成模块803被配置为执行图2A中步骤S203的过程,基于所述当前骨骼关节信息和所述期望运动轨迹信息,生成所述足式机器人的轨迹控制信息和关节控制信息。
根据本公开的实施例,控制信息生成模块803可以利用预先训练的神经网络模型,基于所述当前骨骼关节信息和所述期望运动轨迹信息,生成所述足式机器人的关节控制信息和轨迹控制信息。
可选地,该神经网络模型以足式机器人的当前骨骼关节信息和期望运动轨迹信息作为输入,以对足式机器人的运动控制信息作为输出。
根据本公开的实施例,所述神经网络模型可以是基于与所述足式机器人相对应的活体的运动数据训练而成的,并且所述活体的运动数据可以包括在所述活体的运动过程中按预定时间间隔采集的关节运动信息。
可选地,所采集的活体的运动数据可以包括对应于活体的各个关节的位置信息。作为示例,以活体狗作为本公开的实施例中的足式机器人的仿生对象,其骨骼关节可以包括四个髋关节和四个趾关节,因此所采集的关节运动信息可以包括对应于其髋关节和趾关节的位置信息。
由于活体狗的关节基本为球关节而足式机器人由于机械结构的限制只能够具有轴关节,且活体狗的关节自由度远多于足式机器人,从活体狗的运动中采集的关节运动信息需要经过数据重定向以映射到足式机器人的关节空间上之后,才能应用于足式机器人的运动控制。
因此,控制信息生成模块803还可以被配置为执行图4中的数据重定向处理。
可选地,数据重定向的输入数据可以包括所采集的活体的骨骼关节的关节运动信息,而其输出数据可以包括表示该足式机器人的基座重心的位置和姿态的数据以及表示该足式机器人中各电机的转动状态的数据。其中,数据重定向的输出数据中的后者也可以称为电机控制信息,其可用于控制足式机器人中的各个电机的转动。
对数据重定向的输出数据进行特定处理后,可以将其转换为足式机器人的骨骼关节信息、运动轨迹信息、期望速度信息和电机运动信息,即该足式机器人的用于训练神经网络模型的训练数据,作为该神经网络模型的输入。
对应地,该神经网络模型的输出为上述与空间运动轨迹相关的参考运动轨迹信息和与足式机器人的步态相关的关节控制信息。其中,该参考运动轨迹信息可以通过与期望运动轨迹信息进行融合,从而生成用于足式机器人的轨迹控制信息,使得操作者设计的运动轨迹逐渐接近于活体的运动轨迹,并且对该足式机器人的运动控制在满足预期的灵活仿生表现的前提下更加顺滑。
运动控制模块804被配置为执行图2A中步骤S204的过程,基于所述轨迹控制信息和关节控制信息,来控制所述足式机器人的骨骼关节的运动。
根据本公开的实施例,所述轨迹控制信息可用于控制所述足式机器人的重心运动轨迹,并且所述关节控制信息可以包括用于控制所述足式机器人的骨骼关节的转动的信息。
可选地,可以基于关节控制信息生成对足式机器人中的相应电机的转角的控制信息,从而根据该控制信息来控制对应的骨骼关节的转动。
通过控制足式机器人的骨骼关节的转动,连同足式机器人的轨迹控制信息,可以控制足式机器人的各骨骼关节的运动。
根据本公开的实施例,当前信息获取模块802还被配置为执行图2B中步骤S205的过程,获取所述足式机器人的当前步态类型。
在训练足式机器人的神经网络模型时,还可以基于每一采集时刻的活体所对应的步态类型对所述训练数据进行标记,即确定与每个采集时刻的各个训练数据相关联的步态类型标签,并将其作为神经网络模型的训练阶段的另一输入,而其对应的下一采集时刻的步态类型标签作为神经网络模型的训练阶段的另一输出。
根据本公开的实施例,运动控制装置800还可以包括步态类型生成模块805,被配置为执行图2B中步骤S206的过程,基于所述当前骨骼关节信息、所述期望运动轨迹信息和所述当前步态类型,生成所述足式机器人的后续步态类型。
由此,在神经网络模型的应用阶段,在获取到足式机器人的当前步态类型后,基于该足式机器人的当前骨骼关节信息和期望运动轨迹信息,可以通过上述基于步态类型标签集合所训练的神经网络模型获得足式机器人在下一时刻的步态类型,从而实现对足式机器人的步态规划。
根据本公开的另一方面,提出了一种足式机器人900。图9示出了根据本公开实施例的足式机器人900的示例性框图。
该足式机器人900可以包括:基座部910、连接至该基座部的下肢部920,其中,基座部910可以包括两个脊柱关节,其将所述基座部分为头部基座、中部基座和尾部基座,并且所述下肢部920可以包括四条下肢,其中每条下肢可以包括髋关节、膝关节和趾关节。
所述下肢部是指该足式机器人用于实现运动的足式部件,其例如包括腿部及将腿部与基座相连且用于实现对该腿部的运动控制的电机。本公开的实施例不受该下肢部的具体组成类型及其下肢数量的限制。
所述基座部是指该足式机器人的主体部分,例如可以为该足式机器人的躯干部,本公开的实施例不受该基座部的具体形状及组成的限制。
在一些实施例中,该基座部例如包括2个脊柱关节,该下肢部例如可以包括8个下肢关节,本公开的实施例不受该基座部及该下肢部所包括的具体关节个数的限制,也不受该足式机器人所具有的具体关节构型的限制。
该足式机器人还可以包括控制器930,该控制器设置在该足式机器人上,且能够执行如前所述的运动控制方法,具有如前所述的功能。
所述控制器例如包括处理装置。处理装置可以包括微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列、状态机或用于处理从传感器线接收的电信号的其他处理器件。这种处理器件可以包括可编程电子设备,例如PLC,可编程中断控制器(PIC)、可编程逻辑器件(PLD)、可编程只读存储器(PROM)、电子可编程只读存储器等。
此外,该足式机器人还可以包括总线、存储器、传感器组件、通信模块和输入输出装置等。
总线可以是将该足式机器人的各部件互连并在各部件之中传递通信信息(例如,控制消息或数据)的电路。
传感器组件可以用于对物理世界进行感知,例如包括摄像头、红外传感器超声波传感器等。此外,传感器组件还可以包括用于测量足式机器人当前运行及运动状态的装置,例如霍尔传感器、激光位置传感器、或应变力传感器等。
通信模块例如可以通过有线或无效与网络连接,以便于与物理世界(例如,服务器)通信。通信模块可以是无线的并且可以包括无线接口,例如IEEE802.11、蓝牙、无线局域网(WLAN)收发器、或用于接入蜂窝电话网络的无线电接口(例如,用于接入CDMA、GSM、UMTS或其他移动通信网络的收发器/天线)。在另一示例中,通信模块可以是有线的并且可以包括诸如以太网、USB或IEEE 1394之类的接口。
输入输出装置可以将例如从用户或任何其他外部设备输入的命令或数据传送到足式机器人的一个或多个其他部件,或者可以将从足式机器人的一个或多个其他部件接收的命令或数据输出到用户或其他外部设备。
多个足式机器人可以组成机器人系统以协同地完成一项任务,该多个足式机器人通信地连接到服务器,并且从服务器接收协同足式机器人指令。
本公开的实施例提供了一种用于足式机器人的运动控制方法、装置以及足式机器人。
本公开的实施例所提供的方法相比于传统的用于足式机器人的运动控制方法而言,能够自动地实现对足式机器人的轨迹和步态规划,节省了传统方法所需耗费的大量人力,并且使足式机器人的轨迹和步态更具灵动与柔和感。
本公开的实施例所提供的方法利用人工智能技术,通过基于从活体采集的运动数据所训练的神经网络模型,基于包含脊柱关节的足式机器人的当前状态信息来规划其后续运动轨迹和步态。通过本公开的实施例所提供的方法能够实时自动地规划轨迹和步态,提高了对足式机器人的运动控制效率,且使得所控制的足式机器人的轨迹和步态更灵活且仿生。此外,通过省略对脊柱关节的控制,该方法也同样适用于无脊柱关节的足式机器人。
技术中的程序部分可以被认为是以可执行的代码和/或相关数据的形式而存在的“产品”或“制品”,通过计算机可读的介质所参与或实现的。有形的、永久的储存介质可以包括任何计算机、处理器、或类似设备或相关的模块所用到的内存或存储器。例如,各种半导体存储器、磁带驱动器、磁盘驱动器或者类似任何能够为软件提供存储功能的设备。
所有软件或其中的一部分有时可能会通过网络进行通信,如互联网或其他通信网络。此类通信可以将软件从一个计算机设备或处理器加载到另一个。因此,另一种能够传递软件元素的介质也可以被用作局部设备之间的物理连接,例如光波、电波、电磁波等,通过电缆、光缆或者空气等实现传播。用来载波的物理介质如电缆、无线连接或光缆等类似设备,也可以被认为是承载软件的介质。在这里的用法除非限制了有形的“储存”介质,其他表示计算机或机器“可读介质”的术语都表示在处理器执行任何指令的过程中参与的介质。
本申请使用了特定词语来描述本申请的实施例。如“第一/第二实施例”、“一实施例”、和/或“一些实施例”意指与本申请至少一个实施例相关的某一特征、结构或特点。因此,应强调并注意的是,本说明书中在不同位置两次或多次提及的“一实施例”或“一个实施例”或“一替代性实施例”并不一定是指同一实施例。此外,本申请的一个或多个实施例中的某些特征、结构或特点可以进行适当的组合。
此外,本领域技术人员可以理解,本申请的各方面可以通过若干具有可专利性的种类或情况进行说明和描述,包括任何新的和有用的工序、机器、产品或物质的组合,或对他们的任何新的和有用的改进。相应地,本申请的各个方面可以完全由硬件执行、可以完全由软件(包括固件、常驻软件、微码等)执行、也可以由硬件和软件组合执行。以上硬件或软件均可被称为“数据块”、“模块”、“引擎”、“单元”、“组件”或“系统”。此外,本申请的各方面可能表现为位于一个或多个计算机可读介质中的计算机产品,该产品包括计算机可读程序编码。
除非另有定义,这里使用的所有术语(包括技术和科学术语)具有与本发明所属领域的普通技术人员共同理解的相同含义。还应当理解,诸如在通常字典里定义的那些术语应当被解释为具有与它们在相关技术的上下文中的含义相一致的含义,而不应用理想化或极度形式化的意义来解释,除非这里明确地这样定义。
上面是对本发明的说明,而不应被认为是对其的限制。尽管描述了本发明的若干示例性实施例,但本领域技术人员将容易地理解,在不背离本发明的新颖教学和优点的前提下可以对示例性实施例进行许多修改。因此,所有这些修改都意图包含在权利要求书所限定的本发明范围内。应当理解,上面是对本发明的说明,而不应被认为是限于所公开的特定实施例,并且对所公开的实施例以及其他实施例的修改意图包含在所附权利要求书的范围内。本发明由权利要求书及其等效物限定。
Claims (18)
1.一种用于足式机器人的运动控制方法,所述足式机器人的骨骼关节包括至少一个脊柱关节和至少两个下肢关节,所述方法包括:
获取所述足式机器人的期望运动轨迹信息;
获取所述足式机器人的当前骨骼关节信息,所获取的当前骨骼关节信息包括对应于所述足式机器人的所述至少一个脊柱关节和所述至少两个下肢关节的骨骼关节信息;
基于所述当前骨骼关节信息和所述期望运动轨迹信息,生成所述足式机器人的轨迹控制信息和关节控制信息;以及
基于所述轨迹控制信息和关节控制信息,来控制所述足式机器人的骨骼关节的运动。
2.如权利要求1所述的方法,其中,所述方法还包括:
获取所述足式机器人的当前步态类型;以及
基于所述当前骨骼关节信息、所述期望运动轨迹信息和所述当前步态类型,生成所述足式机器人的后续步态类型;
其中,所述期望运动轨迹信息为所述足式机器人的期望重心运动轨迹,所述轨迹控制信息用于控制所述足式机器人的重心运动轨迹,
其中,所述骨骼关节信息包括所述足式机器人的骨骼关节的位置信息和方向信息,所述关节控制信息包括用于控制所述足式机器人的骨骼关节的转动的信息。
3.如权利要求1所述的方法,其中,基于所述当前骨骼关节信息和所述期望运动轨迹信息,生成所述足式机器人的轨迹控制信息和关节控制信息包括:
基于所述当前骨骼关节信息和所述期望运动轨迹信息,生成所述足式机器人的期望速度信息;
基于所述当前骨骼关节信息、所述期望运动轨迹信息、以及所述期望速度信息,生成参考运动轨迹信息和关节控制信息;以及
将所述期望运动轨迹信息和所述参考运动轨迹信息进行融合,以生成所述足式机器人的轨迹控制信息。
4.如权利要求1所述的方法,其中,所述至少一个脊柱关节包括两个脊柱关节,所述两个脊柱关节将所述足式机器人的基座分为头部基座、中部基座和尾部基座,所述足式机器人的期望运动轨迹信息和轨迹控制信息分别是所述足式机器人的中部基座的期望运动轨迹信息和轨迹控制信息,
其中,所述足式机器人包括多个电机,根据所述关节控制信息来设置所述多个电机的转角,以控制所述足式机器人的骨骼关节的转动。
5.如权利要求1所述的方法,其中,
利用预先训练的神经网络模型,基于所述当前骨骼关节信息和所述期望运动轨迹信息,生成所述足式机器人的关节控制信息和轨迹控制信息;
其中,所述神经网络模型是基于与所述足式机器人相对应的活体的运动数据训练而成的,所述活体的运动数据包括在所述活体的运动过程中按预定时间间隔采集的关节运动信息,
其中,所述活体的骨骼关节包括至少两个下肢关节,所采集的所述活体的关节运动信息包括对应于所述活体的所述至少两个下肢关节的位置信息。
6.如权利要求5所述的方法,其中,所述神经网络模型是基于所述活体的运动数据训练而成的,还包括:
基于所采集的所述活体的关节运动信息,进行数据重定向,以得到所述足式机器人的用于对所述神经网络模型进行训练的训练数据;以及
利用所述训练数据,对所述神经网络模型进行训练;
其中,所述训练数据包括以所述预定时间间隔为间隔的数据序列集合,
其中,对于每个采集时刻,基于所采集的所述活体的关节运动信息,进行数据重定向以获得其对应的用于足式机器人的骨骼关节信息、运动轨迹信息、期望速度信息和电机运动信息;
其中,所述训练数据包括输入数据部分和输出数据部分,所述输入数据部分包括该采集时刻的所述数据重定向后的骨骼关节信息、运动轨迹信息和期望速度信息,并且所述输出数据部分包括电机运动信息以及下一采集时刻的运动轨迹信息,其中所述电机运动信息对应于所述关节控制信息,所述下一采集时刻的运动轨迹信息对应于所述轨迹控制信息,
其中,所述运动轨迹信息包括所述足式机器人在所述采集时刻的位置信息和方向信息,所述骨骼关节信息包括所述足式机器人的骨骼关节在所述采集时刻的位置信息、方向信息和当前速度信息,所述电机运动信息包括所述足式机器人中的各个电机的位置信息和速度信息。
7.如权利要求6所述的方法,其中,对于每个采集时刻,还确定所述活体在所述采集时刻的步态类型标签;并且
其中,所述输入数据部分还包括该采集时刻的步态类型标签,并且所述输出数据部分还包括下一采集时刻的步态类型标签。
8.如权利要求6所述的方法,其中,基于所采集的所述活体的关节运动信息,进行数据重定向以获得其对应的用于足式机器人的骨骼关节信息、运动轨迹信息、期望速度信息和电机运动信息,包括:
基于所采集的所述活体的关节运动信息,确定所述足式机器人的基座的运动轨迹信息和姿态信息;
基于所述足式机器人的基座的姿态信息,确定对于所述至少一个脊柱关节所对应的电机的电机控制信息;
根据所述足式机器人的基座的运动轨迹信息和姿态信息以及对于所述至少一个脊柱关节所对应的电机的电机控制信息,确定所述足式机器人的至少两个下肢关节的位置信息和姿态信息,以确定所述足式机器人的至少两个下肢关节所对应的电机的电机控制信息;以及
基于所述足式机器人的至少两个下肢关节所对应的电机的电机控制信息,确定所述足式机器人的电机运动信息,其中,所述电机控制信息是在数据重定向后生成的用于控制所述足式机器人中的各个电机的转动的信息。
9.如权利要求8所述的方法,其中,基于所采集的所述活体的关节运动信息,进行数据重定向以获得其对应的用于足式机器人的骨骼关节信息、运动轨迹信息、期望速度信息和电机运动信息,还包括:
基于所采集的所述活体的关节运动信息,确定所述足式机器人的至少两个下肢关节的位置信息;
根据所述足式机器人的基座的运动轨迹信息和姿态信息以及对于所述至少一个脊柱关节所对应的电机的电机控制信息,更新所述足式机器人的至少两个下肢关节的位置信息和姿态信息;以及
基于更新后的所述足式机器人的至少两个下肢关节的位置信息和姿态信息,确定所述足式机器人的至少两个下肢关节所对应的电机的电机控制信息。
10.如权利要求6所述的方法,其中,所述活体的至少两个下肢关节和所述足式机器人的至少两个下肢关节都包括四个髋关节、四个膝关节和四个趾关节;所述足式机器人的至少一个脊柱关节包括两个脊柱关节,所述两个脊柱关节将所述足式机器人的基座分为头部基座、中部基座和尾部基座;
其中,基于所采集的所述活体的关节运动信息,进行数据重定向以获得其对应的用于足式机器人的骨骼关节信息、运动轨迹信息、期望速度信息和电机运动信息,包括:
基于所采集的所述活体的关节运动信息,确定所述足式机器人的至少两个下肢关节的位置信息、以及所述中部基座的运动轨迹信息和姿态信息;
基于所述足式机器人的至少两个下肢关节的位置信息以及所述中部基座的位置信息和姿态信息,确定所述头部基座和尾部基座的姿态信息,并基于所述头部基座、尾部基座和中部基座的姿态信息确定对于所述两个脊柱关节所对应的电机的电机控制信息;
根据所述中部基座的位置信息和姿态信息以及对于所述两个脊柱关节所对应的电机的电机控制信息,更新所述足式机器人的四个髋关节的位置信息和姿态信息;
基于更新后的所述足式机器人的四个髋关节的位置信息和姿态信息,确定所述足式机器人的至少两个下肢关节所对应的电机的电机控制信息;以及
基于所述足式机器人的至少两个下肢关节所对应的电机的电机控制信息,确定所述足式机器人的电机运动信息,其中,所述电机控制信息是在数据重定向后生成的用于控制所述足式机器人中的各个电机的转动的信息。
11.如权利要求10所述的方法,其中,所述足式机器人的每个髋关节对应于两个电机,每个膝关节对应于一个电机,并且所述两个脊柱关节中的每个脊柱关节对应于三个电机;
所采集的所述活体的关节运动信息包括对应于所述活体的所述四个髋关节和四个趾关节的关节运动信息;
其中,基于更新后的所述足式机器人的所述四个髋关节的位置信息和姿态信息,确定所述足式机器人的所述至少两个下肢关节所对应的电机的电机控制信息,包括:
基于更新后的所述足式机器人的四个髋关节的位置信息和姿态信息,确定所述足式机器人的前部基座和后部基座各自的本地坐标系;以及
对于所述足式机器人的四个趾关节中的每个趾关节,利用所述趾关节的位置信息在其对应的本地坐标系下的三维坐标,确定所述足式机器人的下肢关节所对应的电机的电机控制信息。
12.一种用于足式机器人的运动控制装置,所述足式机器人的骨骼关节包括至少一个脊柱关节和至少两个下肢关节,所述装置包括:
期望信息获取模块,被配置为获取所述足式机器人的期望运动轨迹信息;
当前信息获取模块,被配置为获取所述足式机器人的当前骨骼关节信息,所获取的当前骨骼关节信息包括对应于所述足式机器人的脊柱关节和下肢关节的骨骼关节信息;
控制信息生成模块,被配置为基于所述当前骨骼关节信息和所述期望运动轨迹信息,生成所述足式机器人的轨迹控制信息和关节控制信息;以及
运动控制模块,被配置为基于所述轨迹控制信息和关节控制信息,来控制所述足式机器人的骨骼关节的运动。
13.如权利要求12所述的装置,其中,所述当前信息获取模块还被配置为获取所述足式机器人的当前步态类型,并且所述装置还包括:
步态类型生成模块,被配置为基于所述当前骨骼关节信息、所述期望运动轨迹信息和所述当前步态类型,生成所述足式机器人的后续步态类型;
其中,所述期望运动轨迹信息为所述足式机器人的期望重心运动轨迹,所述轨迹控制信息用于控制所述足式机器人的重心运动轨迹,
其中,所述骨骼关节信息包括所述足式机器人的骨骼关节的位置信息和方向信息,所述关节控制信息包括用于控制所述足式机器人的骨骼关节的转动的信息。
14.如权利要求12所述的装置,其中,所述控制信息生成模块被配置为利用预先训练的神经网络模型,基于所述当前骨骼关节信息和所述期望运动轨迹信息,生成所述足式机器人的关节控制信息和轨迹控制信息;
其中,所述神经网络模型是基于与所述足式机器人相对应的活体的运动数据训练而成的,
所述活体的运动数据包括在所述活体的运动过程中按预定时间间隔采集的关节运动信息,
所述活体的骨骼关节包括至少两个下肢关节,所采集的所述活体的关节运动信息包括对应于所述活体的所述至少两个下肢关节的位置信息。
15.如权利要求14所述的装置,其中,所述神经网络模型是基于所述活体的运动数据训练而成的,还包括:
基于所采集的所述活体的关节运动信息,进行数据重定向,以得到所述足式机器人的用于对所述神经网络模型进行训练的训练数据;以及
利用所述训练数据,对所述神经网络模型进行训练;
其中,所述训练数据包括以所述预定时间间隔为间隔的数据序列集合,
其中,对于每个采集时刻,基于所采集的所述活体的关节运动信息,进行数据重定向以获得其对应的用于足式机器人的骨骼关节信息、运动轨迹信息、期望速度信息和电机运动信息;
其中,所述训练数据包括输入数据部分和输出数据部分,所述输入数据部分包括该采集时刻的所述数据重定向后的骨骼关节信息、运动轨迹信息和期望速度信息,并且所述输出数据部分包括电机运动信息以及下一采集时刻的运动轨迹信息,其中所述电机运动信息对应于所述关节控制信息,所述下一采集时刻的运动轨迹信息对应于所述轨迹控制信息,
其中,所述运动轨迹信息包括所述足式机器人在所述采集时刻的位置信息和方向信息,所述骨骼关节信息包括所述足式机器人的骨骼关节在所述采集时刻的位置信息、方向信息和当前速度信息,所述电机运动信息包括所述足式机器人中的各个电机的位置信息和速度信息。
16.如权利要求15所述的装置,其中,基于所采集的所述活体的关节运动信息,进行数据重定向以获得其对应的用于足式机器人的骨骼关节信息、运动轨迹信息、期望速度信息和电机运动信息,包括:
基于所采集的所述活体的关节运动信息,确定所述足式机器人的至少两个下肢关节的位置信息、以及所述足式机器人的基座的运动轨迹信息和姿态信息;
基于所述足式机器人的基座的姿态信息,确定对于所述至少一个脊柱关节所对应的电机的电机控制信息;
根据所述足式机器人的基座的运动轨迹信息和姿态信息以及对于所述至少一个脊柱关节所对应的电机的电机控制信息,更新所述足式机器人的至少两个下肢关节的位置信息和姿态信息;
基于更新后的所述足式机器人的至少两个下肢关节的位置信息和姿态信息,确定所述足式机器人的至少两个下肢关节所对应的电机的电机控制信息;以及
基于所述足式机器人的至少两个下肢关节所对应的电机的电机控制信息,确定所述足式机器人的电机运动信息,其中,所述电机控制信息是在数据重定向后生成的用于控制所述足式机器人中的各个电机的转动的信息。
17.如权利要求16所述的装置,其中,所述活体的所述至少两个下肢关节和所述足式机器人的所述至少两个下肢关节都包括四个髋关节、四个膝关节和四个趾关节;所述足式机器人的至少一个脊柱关节包括两个脊柱关节,所述两个脊柱关节将所述足式机器人的基座分为头部基座、中部基座和尾部基座;
其中,基于所采集的所述活体的关节运动信息,进行数据重定向以获得其对应的用于足式机器人的骨骼关节信息、运动轨迹信息、期望速度信息和电机运动信息,包括:
基于所采集的所述活体的关节运动信息,确定所述足式机器人的至少两个下肢关节的位置信息、以及中部基座的运动轨迹信息和姿态信息;
基于所述足式机器人的至少两个下肢关节的位置信息、以及中部基座的位置信息和姿态信息,确定所述头部基座和尾部基座的姿态信息,并基于所述头部基座、尾部基座和中部基座的姿态信息,确定对于所述足式机器人的两个脊柱关节所对应的电机的电机控制信息;
根据所述足式机器人的中部基座的位置信息和姿态信息以及对于所述足式机器人的两个脊柱关节所对应的电机的电机控制信息,更新所述足式机器人的所述四个髋关节的位置信息和姿态信息;
基于更新后的所述足式机器人的所述四个髋关节的位置信息和姿态信息,确定所述足式机器人的所述至少两个下肢关节所对应的电机的电机控制信息;以及
基于所述足式机器人的所述至少两个下肢关节所对应的电机的电机控制信息,确定所述足式机器人的电机运动信息,其中,所述电机控制信息是在数据重定向后生成的用于控制所述足式机器人中的各个电机的转动的信息。
18.一种足式机器人,包括:
基座部,包括两个脊柱关节,其将所述基座部分为头部基座、中部基座和尾部基座;
下肢部,其连接至所述基座部,所述下肢部包括四条下肢,其中每条下肢包括髋关节、膝关节和趾关节;
控制器,所述控制器设置在所述足式机器人上,且能够执行如权利要求1-11中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111104794.2A CN115840455A (zh) | 2021-09-18 | 2021-09-18 | 用于足式机器人的运动控制方法和装置及足式机器人 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111104794.2A CN115840455A (zh) | 2021-09-18 | 2021-09-18 | 用于足式机器人的运动控制方法和装置及足式机器人 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115840455A true CN115840455A (zh) | 2023-03-24 |
Family
ID=85574374
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111104794.2A Pending CN115840455A (zh) | 2021-09-18 | 2021-09-18 | 用于足式机器人的运动控制方法和装置及足式机器人 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115840455A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117172280A (zh) * | 2023-11-01 | 2023-12-05 | 四川酷盼科技有限公司 | 一种应用于仿生动物中的多源数据处理方法 |
-
2021
- 2021-09-18 CN CN202111104794.2A patent/CN115840455A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117172280A (zh) * | 2023-11-01 | 2023-12-05 | 四川酷盼科技有限公司 | 一种应用于仿生动物中的多源数据处理方法 |
CN117172280B (zh) * | 2023-11-01 | 2024-02-02 | 四川酷盼科技有限公司 | 一种应用于仿生动物中的多源数据处理方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100941209B1 (ko) | 로봇 장치, 얼굴 인식 방법 및 얼굴 인식 장치 | |
Ayusawa et al. | Motion retargeting for humanoid robots based on simultaneous morphing parameter identification and motion optimization | |
Huang et al. | Particle swarm optimization for solving the inverse kinematics of 7-DOF robotic manipulators | |
CN100351054C (zh) | 机器人设备和控制其行为的方法 | |
Chen et al. | Bionic mechanism and kinematics analysis of hopping robot inspired by locust jumping | |
Chung et al. | Contact-consistent elastic strips for multi-contact locomotion planning of humanoid robots | |
CN108098780A (zh) | 一种新型的机器人仿人运动系统 | |
CN113524177B (zh) | 一种足式机器人的控制方法 | |
CN115469576A (zh) | 一种基于人-机械臂异构运动空间混合映射的遥操作系统 | |
CN109064486A (zh) | 一种人形机器人与人体姿态相似度评价方法 | |
Yang et al. | Humanoid motion planning of robotic arm based on human arm action feature and reinforcement learning | |
CN115840455A (zh) | 用于足式机器人的运动控制方法和装置及足式机器人 | |
Li et al. | An efficient motion generation method for redundant humanoid robot arm based on the intrinsic principles of human arm motion | |
Petrič et al. | Reflexive stability control framework for humanoid robots | |
CN113967909A (zh) | 基于方向奖励的机械臂智能控制方法 | |
Zhang et al. | Mechanism analysis of cheetah’s high-speed locomotion based on digital reconstruction | |
He et al. | Learning Visual Quadrupedal Loco-Manipulation from Demonstrations | |
Miripour Fard et al. | On the manipulability of swing foot and stability of human locomotion | |
Thinh et al. | Gait of quadruped robot and interaction based on gesture recognition | |
Davidrajuh | Modeling humanoid robot as a discrete event system: A modular approach based on Petri nets | |
Qian et al. | DH Parameter Method-based Wearable Motion Tracking | |
Ziouzios et al. | A survey of fpga robotics applications in the period 2010–2019 | |
Li et al. | A semiautonomous sprawl robot based on remote wireless control | |
Manseur | Software-aided design of robotic mechanisms | |
Hak et al. | Capture, recognition and imitation of anthropomorphic motion |
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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40083457 Country of ref document: HK |