运动控制方法、装置、机器人及存储介质与流程
- 国知局
- 2024-07-08 11:13:36
本公开涉及机器人,具体涉及一种运动控制方法、装置、机器人及存储介质。
背景技术:
1、近年来,机器人技术的技术不断发展,越来越智能化和自动化,动作的丰富性、稳定性和灵活性均得到了不同程度的提高。当前的机器人不仅可以完成扫地、行走等周期性、重复性的动作,而且还能够进行被演奏乐器演奏,例如,机器人可以完成架子鼓的表演。但是相关技术中机器人在进行架子鼓表演时,存在动作机械化、拟人化程度低等问题,即表演效果还有待提高。
技术实现思路
1、为克服相关技术中存在的问题,本公开实施例提供一种运动控制方法、装置、机器人及存储介质,用以解决相关技术中的缺陷。
2、根据本公开实施例的第一方面,提供一种运动控制方法,应用于机器人,所述方法包括:
3、根据所述机器人的末端的当前位置、乐器位置、接触速度和演奏动作的时长,生成与所述演奏动作匹配的末端轨迹,其中,所述接触速度为所述末端与所述乐器接触时的速度,所述末端轨迹包括所述末端在每个采样时刻的位置和速度;
4、根据所述机器人的当前位形、所述演奏动作的参考位形和所述演奏动作的时长,生成与所述演奏动作匹配的位形轨迹,其中,所述位形轨迹包括所述机器人在每个采样时刻的零空间位形;
5、根据所述末端轨迹和所述位形轨迹,控制所述机器人执行所述演奏动作。
6、在一个实施例中,所述根据所述机器人的末端的当前位置、乐器位置、接触速度和演奏动作的时长,生成与所述演奏动作匹配的末端轨迹,包括:
7、确定所述接触速度在三维空间坐标系内每个坐标轴上的分速度;
8、对于所述三维空间坐标系内的每个坐标轴,根据所述当前位置在所述坐标轴上的坐标值、所述乐器位置在所述坐标轴上的坐标值、所述演奏动作的时长、以及所述接触速度在所述坐标轴上的分速度,生成所述末端轨迹在所述坐标轴上的坐标轨迹。
9、在一个实施例中,所述根据所述当前位置在所述坐标轴上的坐标值、所述乐器位置在所述坐标轴上的坐标值、所述演奏动作的时长、以及所述接触速度在所述坐标轴上的分速度,生成所述末端轨迹在所述坐标轴上的坐标轨迹,包括:
10、在所述接触速度在所述坐标轴上的分速度为0的情况下,以余弦轨迹作为参考轨迹,根据所述当前位置在所述坐标轴上的坐标值、所述乐器位置在所述坐标轴上的坐标值、和所述演奏动作的时长,生成所述末端轨迹在所述坐标轴上的坐标轨迹。
11、在一个实施例中,所述根据所述当前位置在所述坐标轴上的坐标值、所述乐器位置在所述坐标轴上的坐标值、所述演奏动作的时长、以及所述接触速度在所述坐标轴上的分速度,生成所述末端轨迹在所述坐标轴上的坐标轨迹,包括:
12、在所述接触速度在所述坐标轴上的分速度非0的情况下,以所述演奏动作的时长作为动作周期的初始时长,按照预设梯度依次降低所述动作周期的时长;
13、对于所述动作周期的每个时长,根据坐标差值、所述时长和所述接触速度在所述坐标轴上的分速度,确定多个参数值,其中,所述坐标差值为所述乐器位置在所述坐标轴上的坐标值与所述当前位置在所述坐标轴上的坐标值的差值;
14、在所述动作周期的任一时长对应的多个参数值之间满足预设的相对关系的情况下,根据该时长以及对应的多个参数值确定所述末端轨迹在所述坐标轴上的坐标轨迹,并停止降低所述动作周期的时长。
15、在一个实施例中,还包括:
16、响应于所述动作周期的时长低于预设阈值,生成提示信息,其中,所述提示信息用于提示用户机器人无法完成所述演奏动作。
17、在一个实施例中,所述根据所述末端轨迹和所述位形轨迹,控制所述机器人执行所述演奏动作,包括:
18、在每个采样时刻,根据所述末端轨迹中所述末端在下个采样时刻的位置确定所述机器人的关节在下个采样时刻的期望位置,并根据所述末端轨迹中所述末端在下个采样时刻的速度和当前的雅克比矩阵确定所述机器人的关节在下个采样时刻的期望速度;
19、在每个采样时刻,根据所述机器人的关节在下个采样时刻的期望位置、所述位形轨迹中所述机器人在下个采样时刻的零空间位形和当前的雅克比矩阵,确定所述关节的位置控制量,并根据所述机器人的关节在下个采样时刻的期望速度、所述位形轨迹中所述机器人在下个采样时刻的零空间位形和当前的雅克比矩阵,确定所述关节的速度控制量;
20、在每个采样时刻,根据所述关节的位置控制量和所述关节的速度控制量,控制所述机器人完成当前采样时刻至下一个采样时刻之间的动作。
21、在一个实施例中,所述根据所述机器人的关节在下个采样时刻的期望位置、所述位形轨迹中所述机器人在下个采样时刻的零空间位形和当前的雅克比矩阵,确定所述关节的位置控制量,并根据所述机器人的关节在下个采样时刻的期望速度、所述位形轨迹中所述机器人在下个采样时刻的零空间位形和当前的雅克比矩阵,确定所述关节的速度控制量,包括:
22、根据所述机器人的关节在下个采样时刻的期望位置,和所述位形轨迹中所述机器人在下个采样时刻的零空间位形之间的偏差,确定第一速度量;
23、根据所述当前雅克比矩阵对应的零空间和所述第一速度量,确定当前雅克比矩阵对应的零空间中的第二速度量;
24、根据所述机器人的关节在下个采样时刻的期望位置、所述第二速度量、和相邻采样时刻间的时间间隔,确定所述关节的位置控制量;
25、根据所述机器人的关节在下个采样时刻的期望速度、和所述第二速度量,确定所述关节的速度控制量。
26、在一个实施例中,还包括:
27、在每个采样时刻,根据所述末端的当前位置、所述末端的当前速度,对所述末端轨迹中所述末端在下个采样时刻的位置进行校正。
28、在一个实施例中,所述根据所述关节的位置控制量和所述关节的速度控制量,控制所述机器人完成当前采样时刻至下一个采样时刻之间的动作,包括:
29、根据当前的前馈力、所述关节的位置控制量和所述关节的速度控制量,生成控制力,并根据所述控制力控制所述机器人完成动作。
30、在一个实施例中,所述演奏动作包括击鼓过程中的抬起动作或敲击动作。
31、根据本公开实施例的第二方面,提供一种运动控制装置,应用于机器人,所述装置包括:
32、第一轨迹模块,用于根据所述机器人的末端的当前位置、乐器位置、接触速度和演奏动作的时长,生成与所述演奏动作匹配的末端轨迹,其中,所述接触速度为所述末端与所述乐器接触时的速度,所述末端轨迹包括所述末端在每个采样时刻的位置和速度;
33、第二轨迹模块,用于根据所述机器人的当前位形、所述演奏动作的参考位形和所述演奏动作的时长,生成与所述演奏动作匹配的位形轨迹,其中,所述位形轨迹包括所述机器人在每个采样时刻的零空间位形;
34、控制模块,用于根据所述末端轨迹和所述位形轨迹,控制所述机器人执行所述演奏动作。
35、在一个实施例中,所述第一轨迹模块具体用于:
36、确定所述接触速度在三维空间坐标系内每个坐标轴上的分速度;
37、对于所述三维空间坐标系内的每个坐标轴,根据所述当前位置在所述坐标轴上的坐标值、所述乐器位置在所述坐标轴上的坐标值、所述演奏动作的时长、以及所述接触速度在所述坐标轴上的分速度,生成所述末端轨迹在所述坐标轴上的坐标轨迹。
38、在一个实施例中,所述第一轨迹模块用于根据所述当前位置在所述坐标轴上的坐标值、所述乐器位置在所述坐标轴上的坐标值、所述演奏动作的时长、以及所述接触速度在所述坐标轴上的分速度,生成所述末端轨迹在所述坐标轴上的坐标轨迹时,具体用于:
39、在所述接触速度在所述坐标轴上的分速度为0的情况下,以余弦轨迹作为参考轨迹,根据所述当前位置在所述坐标轴上的坐标值、所述乐器位置在所述坐标轴上的坐标值、和所述演奏动作的时长,生成所述末端轨迹在所述坐标轴上的坐标轨迹。
40、在一个实施例中,所述第一轨迹模块用于根据所述当前位置在所述坐标轴上的坐标值、所述乐器位置在所述坐标轴上的坐标值、所述演奏动作的时长、以及所述接触速度在所述坐标轴上的分速度,生成所述末端轨迹在所述坐标轴上的坐标轨迹时,具体用于:
41、在所述接触速度在所述坐标轴上的分速度非0的情况下,以所述演奏动作的时长作为动作周期的初始时长,按照预设梯度依次降低所述动作周期的时长;
42、对于所述动作周期的每个时长,根据坐标差值、所述时长和所述接触速度在所述坐标轴上的分速度,确定多个参数值,其中,所述坐标差值为所述乐器位置在所述坐标轴上的坐标值与所述当前位置在所述坐标轴上的坐标值的差值;
43、在所述动作周期的任一时长对应的多个参数值之间满足预设的相对关系的情况下,根据该时长以及对应的多个参数值确定所述末端轨迹在所述坐标轴上的坐标轨迹,并停止降低所述动作周期的时长。
44、在一个实施例中,还包括提示模块,用于:
45、响应于所述动作周期的时长低于预设阈值,生成提示信息,其中,所述提示信息用于提示用户机器人无法完成所述演奏动作。
46、在一个实施例中,所述第二轨迹模块具体用于:
47、在每个采样时刻,根据所述末端轨迹中所述末端在下个采样时刻的位置确定所述机器人的关节在下个采样时刻的期望位置,并根据所述末端轨迹中所述末端在下个采样时刻的速度和当前的雅克比矩阵确定所述机器人的关节在下个采样时刻的期望速度;
48、在每个采样时刻,根据所述机器人的关节在下个采样时刻的期望位置、所述位形轨迹中所述机器人在下个采样时刻的零空间位形和当前的雅克比矩阵,确定所述关节的位置控制量,并根据所述机器人的关节在下个采样时刻的期望速度、所述位形轨迹中所述机器人在下个采样时刻的零空间位形和当前的雅克比矩阵,确定所述关节的速度控制量;
49、在每个采样时刻,根据所述关节的位置控制量和所述关节的速度控制量,控制所述机器人完成当前采样时刻至下一个采样时刻之间的动作。
50、在一个实施例中,所述第二轨迹模块用于根据所述机器人的关节在下个采样时刻的期望位置、所述位形轨迹中所述机器人在下个采样时刻的零空间位形和当前的雅克比矩阵,确定所述关节的位置控制量,并根据所述机器人的关节在下个采样时刻的期望速度、所述位形轨迹中所述机器人在下个采样时刻的零空间位形和当前的雅克比矩阵,确定所述关节的速度控制量时,具体用于:
51、根据所述机器人的关节在下个采样时刻的期望位置,和所述位形轨迹中所述机器人在下个采样时刻的零空间位形之间的偏差,确定第一速度量;
52、根据所述当前雅克比矩阵对应的零空间和所述第一速度量,确定当前雅克比矩阵对应的零空间中的第二速度量;
53、根据所述机器人的关节在下个采样时刻的期望位置、所述第二速度量、和相邻采样时刻间的时间间隔,确定所述关节的位置控制量;
54、根据所述机器人的关节在下个采样时刻的期望速度、和所述第二速度量,确定所述关节的速度控制量。
55、在一个实施例中,还包括校正模块,用于:
56、在每个采样时刻,根据所述末端的当前位置、所述末端的当前速度,对所述末端轨迹中所述末端在下个采样时刻的位置进行校正。
57、在一个实施例中,所述第二轨迹模块用于根据所述关节的位置控制量和所述关节的速度控制量,控制所述机器人完成当前采样时刻至下一个采样时刻之间的动作时,具体用于:
58、根据当前的前馈力、所述关节的位置控制量和所述关节的速度控制量,生成控制力,并根据所述控制力控制所述机器人完成动作。
59、在一个实施例中,所述演奏动作包括击鼓过程中的抬起动作或敲击动作。
60、根据本公开实施例的第三方面,提供一种机器人,所述机器人包括存储器、处理器,所述存储器用于存储可在处理器上运行的计算机指令,所述处理器用于在执行所述计算机指令时实现第一方面所述的运动控制方法。
61、根据本公开实施例的第四方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现第一方面所述的方法。
62、本公开的实施例提供的技术方案可以包括以下有益效果:
63、本公开实施例所提供的运动控制方法,首先可以根据所述机器人的末端的当前位置、乐器位置、接触速度和演奏动作的时长,生成与所述演奏动作匹配的末端轨迹,然后可以根据所述机器人的当前位形、所述演奏动作的参考位形和所述演奏动作的时长,生成与所述演奏动作匹配的位形轨迹,其中,所述位形轨迹包括所述机器人在每个采样时刻的零空间位形,最后可以根据所述末端轨迹和所述位形轨迹,控制所述机器人执行所述演奏动作。由于控制机器人执行演奏动作时,参照末端轨迹的同时还参照了位形轨迹,因此能够使机器人在与乐器接触时达到演奏动作的参考位形,使得演奏动作的路径是所有可能的路径中拟人化程度最高、乐器演奏效果(例如鼓的敲击效果)的路径,即能够使演奏动作执行过程中自然平缓,从而提高了机器人演奏乐器时动作的拟人化程度,使动作更加贴合人类的真实演奏场景,演奏效果得到明显提高。
本文地址:https://www.jishuxx.com/zhuanli/20240617/52554.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表