机器人的动力学参数辨识方法、装置、设备及介质与流程

文档序号:32565511发布日期:2022-12-16 19:07阅读:100来源:国知局
机器人的动力学参数辨识方法、装置、设备及介质与流程

1.本技术涉及机器人控制领域,特别涉及一种机器人的动力学参数辨识方法、装置、设备及介质。


背景技术:

2.参数辨识技术,是一种将理论模型和实验数据结合起来用于预测的技术。机器人的动力学参数辨识,是通过对机器人的动力学模型进行处理,从而得到机器人连杆的动力学参数的数值的过程。
3.相关技术中,通常需要设计满足多重约束的机器人的运动轨迹,以实现对动力学模型线性优化,随后对线性优化后的动力学模型进行参数辨识,以获取到相应的动力学参数。
4.而对动力学模型的线性优化需要实验人员有较为专业的数学和机器人知识,从而导致参数辨识的难度较大。


技术实现要素:

5.本技术实施例提供了一种机器人的动力学参数辨识方法、装置、设备及介质,无需对动力学模型进行线性优化,采用非线性优化方法即可实现对动力学模型的参数辨识。所述技术方案如下:
6.根据本技术的一个方面,提供了一种机器人的动力学参数辨识方法,该方法包括:
7.根据机器人的运动学模型,确定机器人的几何信息;
8.根据几何信息,构建机器人的动力学模型;
9.采用非线性优化方法,对动力学模型中的目标参数进行参数辨识,以得到目标参数的辨识值,目标参数包括机器人的质量参数、质心位置参数和转动惯量参数中的至少一种。
10.根据本技术的一个方面,提供了一种动力学参数辨识装置,该装置包括:
11.确定模块,用于根据机器人的运动学模型,确定机器人的几何信息;
12.构建模块,用于根据几何信息,构建机器人的动力学模型;
13.辨识模块,用于采用非线性优化方法,对动力学模型中的目标参数进行参数辨识,以得到目标参数的辨识值,目标参数包括机器人的质量参数、质心位置参数和转动惯量参数中的至少一种。
14.根据本技术的一个方面,提供了一种计算机设备,该计算机设备包括处理器和存储器,存储器中存储有至少一条程序代码,程序代码由处理器加载并执行如上所述的动力学参数辨识方法。
15.根据本技术的一个方面,提供了一种计算机可读存储介质,该计算机可读存储介质中存储有至少一条程序代码,程序代码由处理器加载并执行以实现如上所述的动力学参数辨识方法。
16.本技术实施例提供的技术方案带来的有益效果至少包括:
17.通过非线性优化方法对动力学模型中的目标参数进行参数辨识,不需要对动力学模型进行线性优化,在机器人正常工况下的运动轨迹即可提供参数辨识所需要的信息,降低了机器人的动力学模型的建模难度和数据获取难度,从而降低了参数辨识的难度。
附图说明
18.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
19.图1是本技术一个示例性实施例提供的应用场景示意图;
20.图2是本技术一个示例性实施例提供的机器人的动力学参数辨识方法的流程图;
21.图3是本技术一个示例性实施例提供的机器人的动力学参数辨识方法的流程图;
22.图4是本技术一个示例性实施例提供的机器人的动力学参数辨识方法的流程图;
23.图5是本技术一个示例性实施例提供的机器人的结构图;
24.图6是本技术一个示例性实施例提供的机器人的坐标系简图;
25.图7是本技术一个示例性实施例提供的机器人的结构图;
26.图8是本技术一个示例性实施例提供的机器人的结构图;
27.图9是本技术一个示例性实施例提供的机器人的动力学参数辨识方法的流程图;
28.图10是本技术一个示例性实施例提供的机器人的结构图;
29.图11是本技术一个示例性实施例提供的机器人的动力学参数辨识方法的流程图;
30.图12是本技术一个示例性实施例提供的机器人的动力学参数辨识装置的结构图;
31.图13是本技术一个示例性实施例提供的计算机设备的结构框图。
具体实施方式
32.为使本技术的目的、技术方案和优点更加清楚,下面将结合附图对本技术实施方式作进一步地详细描述。
33.人工智能(artificial intelligence,ai)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
34.人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
35.在人工智能技术应用于机器人的控制中的情况下,图1示出了本技术实施例提供的机器人的动力学参数辨识的应用场景示意图。
36.其中,机器人100与计算机设备200之间具有通信连接,计算机设备200向机器人
100发送期望映射模型,机器人100根据期望映射模型控制机器人的运动。
37.具体的,机器人100可以是任意构型的机器人,包括但不限于串联机器人、并联机器人、足式机器人、轮式机器人、履带式机器人中的至少一种。
38.以下以机器人100是轮腿式机器人为例。
39.轮腿式机器人是一种通过轮结构对机器人主体进行运动控制的机器人结构,由于轮腿式机器人与地面的接触点仅包括车轮与地面的接触点,在轮式结构排布本身不稳定的情况下,存在平衡控制的问题。
40.在本技术的本实施例中,以轮腿式机器人实现为轮式双足机器人为例进行说明,也即,该轮式双足机器人中包括两个用于行动的车轮,两个车轮分别与腿部结构连接,并由腿部结构与机器人主体连接,从而由两个车轮带动机器人主体完成运动控制。但应当理解,本技术中的轮腿式机器人并不局限于上述结构。凡是轮腿式机器人应当被理解为任何包含轮式结构的机器人。
41.示意性的如图1所示,机器人100包括基座部110和轮腿部120。
42.其中,基座部110与轮腿部120连接,轮腿部120中包括2个车轮121,和用于连接车轮121和基座部110的腿部结构122,如图1所示,机器人100中共包括4个腿部结构122,该4个腿部结构122中的2个腿部结构122分别与一个车轮121连接。
43.示意性的,存在腿部结构a、腿部结构b、腿部结构c和腿部结构d,则腿部结构a、腿部结构b与左轮连接,腿部结构c、腿部结构d与右轮连接。
44.其中,腿部结构a、腿部结构b与左轮,以及腿部结构c、腿部结构d与右轮构成了轮腿式机器人的两腿平面并联结构。并联型腿有五个转动关节,分别在横向和垂直方向上有两个平移自由度。与串行机构相比,该并联机构具有结构紧凑、刚度高、承载能力强的特点。因此,机器人可以跳得更高,灵活地克服障碍。
45.示意性的,机器人的动力学参数辨识方法可应用于任意构型的机器人中。
46.结合上述内容,图2是本技术一个实施例提供的机器人的动力学参数辨识方法的流程图,该方法可以实现在图1中示出的应用场景中。以机器人的动力学参数辨识方法由计算机设备200执行为例,示意性的如图2所示,该方法包括如下步骤:
47.步骤102:根据机器人的运动学模型,确定机器人的几何信息。
48.运动学模型,用于从几何角度描述机器人的位置、速度和加速度随时间的变化规律,不涉及机器人本体的物理性质和加在机器人上的力等信息。
49.基于此,根据运动学模型可以确定机器人的几何信息。
50.示意性的,几何信息包括但不限于如下信息中的至少一种:机器人的关节角度和连杆形位信息。其中,连杆形位信息是指与机器人的连杆相关的几何信息,包括形状和位置中的至少一种。
51.可选的,几何信息包括关节角度、连杆长度、关节之间的相对位姿描述。其中,位姿是指机器人的位置和姿态。机器人通常由一系列构件和运动副组合而成,能够在三维空间中实现各种复杂运动和预定操作,关节之间的相对位姿描述,既是为了描述两个关节之间的运动。
52.示意性的,运动学模型,可根据机器人的相邻连杆间的变换矩阵构建。
53.步骤104:根据几何信息,构建机器人的动力学模型。
54.机器人的动力学模型,用于描述机器人的力与物体运动的关系。动力学模型有多种表现形式,其构建可通过多种方式得到,比如根据拉格朗日方程或者牛顿欧拉方程得到。
55.为实现对机器人的力与物体运动的关系的描述,需要获取到机器人的位置、关节角度等信息。
56.根据前述内容,基于运动学模型,可以确定机器人的几何信息。其中,几何信息包括但不限于如下信息中的至少一种:机器人的关节角度和连杆形位信息。其中,连杆形位信息是指与机器人的连杆相关的几何信息,包括形状和位置中的至少一种。
57.基于此,可以构建机器人的动力学模型。
58.可选的,机器人的动力学模型可通过如下方式构建:根据机器人的几何信息,构建机器人的静力学模型;根据机器人的静力学模型,构建机器人的惯量与摩擦模型。
59.示意性的,静力学模型,用于描述机器人处于静平衡态时的受力情况。其中,平衡态是以地球为参考系确定的,是指物体相对于惯性参照系处于静止或匀速直线运动的状态,即加速度为零的状态。惯量与摩擦模型,用于描述机器人受关节摩擦力影响下的受力情况,可根据静力学模型中的一部分参数信息构建。
60.步骤106:采用非线性优化方法,对动力学模型中的目标参数进行参数辨识,以得到目标参数的辨识值。
61.参数辨识是指,根据理论模型与实验数据,对理论模型中的未知参数进行辨识,以获取到未知参数的确定值,从而使得通过理论模型得到的数值结果能达到更好的拟合效果。
62.相当于,对动力学模型进行的参数辨识,可以获取到模型参数的辨识值,该辨识值将使得根据动力学模型得到的数值结果更加接近真实值。
63.示意性的,目标参数又可称为动力学参数,目标参数是动力学模型中的部分或全部模型参数,目标参数包括机器人的质量参数、质心位置参数和转动惯量参数中的至少一种。
64.其中,质量参数可用mi表示,质心位置参数可用r
ci
表示,转动惯量参数可用ic表示,i用于指示第i个连杆,c用于指示质心所在的坐标系。
65.具体的,质心位置参数是指质心在三维空间中的坐标值,可用式子分别表示质心在x轴、y轴和z轴上的坐标值,也即质心位置参数包括三个参数。转动惯量是刚体绕轴转动时惯性(回转物体保持其匀速圆周运动或静止的特性)的量度,可用式子表示,其中包括六个变量,也即转动惯量参数包括六个参数。
66.相当于,目标参数是指一个质量参数、三个质心位置参数和六个转动惯量参数中的至少一种。
67.步骤106中,采用非线性优化方法对动力学模型中的目标参数进行参数辨识,是指对动力学模型进行非线性优化处理。其中,非线性优化处理可以是采用非线性优化算法。
68.可选的,在获取到模型参数的辨识值后,可对模型参数的辨识值的精度进行判别,在模型参数满足精度要求的情况下,确定动力学模型中的目标参数的辨识值。
69.综上所述,本技术实施例提供的机器人的动力学参数辨识方法中,通过非线性优化方法对动力学模型中的目标参数进行参数辨识,不需要对动力学模型进行线性优化,在机器人正常工况下的运动轨迹即可提供参数辨识所需要的信息,降低了机器人的动力学模型的建模难度和数据获取难度,从而降低了参数辨识的难度。
70.结合上述内容,图3示出了本技术实施例提供的动力学参数辨识方法的流程图,该方法可以实现在图1中示出的应用场景中,以机器人的动力学参数辨识方法由计算机设备200执行为例,该方法包括如下步骤:
71.步骤202:根据机器人的运动学模型,确定机器人的几何信息。
72.示意性的,运动学模型,可根据机器人的相邻连杆间的变换矩阵构建。
73.根据前述内容,几何信息包括但不限于如下信息中的至少一种:机器人的关节角度和连杆形位信息。其中,连杆形位信息是指与机器人的连杆相关的几何信息,包括形状和位置中的至少一种。
74.示意性的,步骤202和步骤102相同,可作参考,不再赘述。
75.步骤204:根据几何信息,构建机器人的动力学模型。
76.机器人的动力学模型,用于描述机器人的力与物体运动的关系。动力学模型有多种表现形式,其构建可通过多种方式得到,比如根据拉格朗日方程或者牛顿欧拉方程得到。
77.可选的,机器人的动力学模型可通过如下方式构建:根据机器人的几何信息,构建机器人的静力学模型;根据机器人的静力学模型,构建机器人的惯量与摩擦模型。
78.为实现对机器人的力与物体运动的关系的描述,需要获取到机器人的位置、关节角度等信息。根据前述内容,基于运动学模型,可以确定机器人的几何信息。
79.示意性的,步骤204和步骤104相同,可作参考,不再赘述。
80.步骤206:采集用于参数辨识的数据信息。
81.参数辨识是指,根据理论模型与实验数据,对理论模型中的未知参数进行辨识,以获取到未知参数的确定值,从而使得通过理论模型得到的数值结果能达到更好的拟合效果。
82.相当于,对动力学模型进行的参数辨识,可以获取到模型参数的辨识值,该辨识值将使得根据动力学模型得到的数值结果更加接近真实值。
83.根据前述内容,动力学模型中包括多个未知的模型参数,同时,动力学模型中还包括有其他已知为定值的参数,这些参数需要在进行参数辨识前采集到的,以使得动力学模型中只包括未知的模型参数。
84.基于此,数据信息包括辨识数据和验证数据。
85.其中,辨识数据用于对动力学模型进行参数辨识,验证数据用于对模型参数的辨识值进行验证。
86.具体的,辨识数据和验证数据可根据机器人的运动轨迹进行采集。其中,机器人的运动轨迹,又称为激励轨迹。可选的,激励轨迹包括但不限于如下轨迹中的一种:正弦激励轨迹、傅里叶级数激励轨迹。
87.具体的,在机器人执行激励轨迹期间,可采集到关节角度q、关节角速度关节角
加速度和电机电流i的电流值的多组数据,辨识数据和验证数据分别是其中的一组或多组。
88.步骤208:根据数据信息,对动力学模型中的模型参数进行非线性优化处理,得到模型参数的辨识值。
89.其中,非线性优化处理,是指采用非线性优化方法对动力学模型中的模型参数进行的辨识处理。
90.可选的,非线性优化处理是采用非线性优化算法。示意性的,非线性优化算法包括如下算法中的至少一种:最大似然估计法,迭代算法、变尺度法,最小二乘法,单纯形搜索法,复合形搜索法,随机搜索法。
91.示意性的,模型参数中包括目标参数。也即,动力学模型中包括多个未知的模型参数,多个未知的模型参数可形成一个参数集合,目标参数是参数集合中的一部分。
92.根据前述内容,目标参数又可称为动力学参数,目标参数是动力学模型中的部分或全部模型参数,目标参数包括机器人的质量参数、质心位置参数和转动惯量参数中的至少一种。
93.示意性的,步骤208可实现为如下:
94.将关节运动参数和电流值代入动力学模型,得到更新后的动力学模型;
95.采用非线性优化算法对更新后的动力学模型进行处理,得到模型参数的辨识值。
96.其中,非线性优化算法包括如下算法中的至少一种:最大似然估计法,迭代算法、变尺度法,最小二乘法,单纯形搜索法,复合形搜索法,随机搜索法。
97.以用于参数辨识的数据信息包括关节角度q、关节角速度关节角加速度和电流值i为例,也即,将关节角度q、关节角速度关节角加速度和电流值i代入动力学模型,得到更新后的动力学模型,该模型中只包括未知的模型参数。随后,采用非线性优化算法对更新后的动力学模型进行处理。
98.相当于,使用arg(f)函数求得动力学模型中的模型参数的辨识值,模型参数包括单个参数或者参数集合。
99.其中,arg(f)函数是一种对目标函数(f)求参数或者参数集合的函数。具体的,argmin(f)函数是指求目标函数(f)取最小值时的参数或者参数集合的函数。
100.步骤210:在模型参数的辨识值满足预设精度的情况下,确定目标参数的辨识值。
101.在对动力学模型进行参数辨识后,可以得到模型参数的辨识值。为使得模型参数的精度得到提高,需要对模型参数的辨识值进行精度判别。
102.示意性的,预设精度用于判断模型参数的辨识值的精确度。
103.根据前述内容,目标参数又可称为动力学参数,目标参数是动力学模型中的部分或全部模型参数,目标参数包括机器人的质量参数、质心位置参数和转动惯量参数中的至少一种。也即,目标参数是模型参数中的一部分参数或者是全部参数。
104.根据步骤208,可以获取到动力学模型的模型参数的辨识值。基于此,对模型参数的精度进行判断,在模型参数的辨识值达到精度要求的情况下,将目标参数对应的数值确定为目标的辨识值。
105.综上所述,本技术实施例提供的机器人的动力学参数辨识方法中,通过对动力学模型中的模型参数进行非线性优化处理,以得到模型参数的辨识值,不需要对动力学模型
进行线性优化,在机器人正常工况下的运动轨迹即可提供参数辨识所需要的信息,降低了机器人的动力学模型的建模难度和数据获取难度,从而降低了参数辨识的难度;并在模型参数的辨识值满足预设精度的情况下,确定目标参数对应的辨识值,降低了机器人的动力学模型的建模难度,使得参数权重的调整难度降低,从而降低了参数辨识的难度。
106.根据前述内容,机器人的动力学模型有多种构建方式,本技术实施例提供了一种可选的构建方式:根据机器人的几何信息,构建机器人的静力学模型;根据机器人的静力学模型,构建机器人的惯量与摩擦模型。
107.示意性的,图4示出了本技术另一个实施例提供的机器人的动力学参数辨识方法的流程图,该方法可以实现在图1中示出的应用场景中,以机器人的动力学参数辨识方法由计算机设备200执行为例,该方法包括如下步骤:
108.步骤302:根据机器人的运动学模型,确定机器人的几何信息。
109.示意性的,运动学模型,可根据机器人的相邻连杆间的变换矩阵构建。
110.根据前述内容,几何信息包括但不限于如下信息中的至少一种:机器人的关节角度和连杆形位信息。其中,连杆形位信息是指与机器人的连杆相关的几何信息,包括形状和位置中的至少一种。
111.示意性的,步骤302和步骤102相同,可作参考,不再赘述。
112.步骤304:根据几何信息,构建机器人的静力学模型。
113.示意性的,静力学模型,用于描述机器人处于静平衡态时的受力情况。
114.其中,平衡态是以地球为参考系确定的,是指物体相对于惯性参照系处于静止或匀速直线运动的状态,即加速度为零的状态。
115.示意性的,步骤304可实现为如下:
116.根据几何信息,确定质量参数和质心位置参数;
117.根据质量参数和质心位置参数,生成机器人的质心参数项,质心参数项用于描述机器人中的各个连杆的平衡态;
118.根据质心参数项和质心动力学方程,构建静力学模型。
119.其中,质量参数可用mi表示,质心位置参数可用r
ci
表示,以几何信息包括关节角度和连杆形位信息为例,质量参数和质心位置参数可通过矩阵pg来表示,其中,矩阵pg为机器人的质心在世界坐标系下的位置,世界坐标系是机器人的绝对坐标系,其他坐标系均可与世界坐标系相互转换。
120.示意性的如图5所示,以机器人是轮腿式机器人为例,轮腿式机器人包括基座部110和轮腿部120。
121.其中,基座部110与轮腿部120连接,轮腿部120中包括2个车轮121,和用于连接车轮121和基座部110的腿部结构122。参考图1,机器人100中共包括4个腿部结构122(图5中未示出),该4个腿部结构122中的2个腿部结构122分别与一个车轮121连接。示意性的,存在腿部结构a、腿部结构b、腿部结构c和腿部结构d,则腿部结构a、腿部结构b与左轮连接,腿部结构c、腿部结构d与右轮连接。
122.可选的,轮腿式机器人还包括尾部130,尾部130与主体部分110连接,用于为轮腿式机器人提供平衡支持,辅助轮腿部120进行行走,或者其他用途。
123.示意性的,图6是依据图5构建的机器人的坐标系简图。
124.其中,o
mocap
表示动作捕捉系统(mocap)的世界坐标系,动作捕捉系统用于测量机器人的位置或姿态。oi用于标识机器人的第i连杆的关节坐标系,mi用于指示固定在机器人上的捕捉点。
125.比如,m0用于指示固定于主体部分上的捕捉点,m3用于指示固定在末端连杆上的捕捉点。参考图5和图6,m3共有三个点,分为固定于左、右2个车轮121和尾巴130的末端上。
126.矩阵pg即为机器人的质心在动作捕捉系统下的位置。
127.对矩阵pg进行异或运算(^运算),可以得到也即,根据质量参数和质心位置参数,生成机器人的质心参数项。
128.可选的,质心参数项可用如下式子表示:
129.其中,mi为质量参数,r
ci
为质心位置参数,矩阵pg为机器人的质心在世界坐标系下的位置,质心参数项是对矩阵pg进行异或运算得到的斜对角阵。
130.在机器人运动的情况下,存在机器人的质心动力学方程,可用如下式子表示:该式子中,前三行是牛顿定律,后三行是欧拉方程,二者共同描述了机器人的运动与所受外力的关系。
131.其中,m为机器人的总质量,g为重力加速度,为矩阵pg的二次导数,l为机器人本体关于质心的角动量,i3×3为3维单位矩阵,ri为机器人与地面第i个接触点在世界坐标系(绝对坐标系)下的位置,fi为第i个接触点的作用力。
132.根据前述内容,平衡态下,物体相对于惯性参照系处于静止或匀速直线运动,也即,静力学模型是在加速度为零的状态下构建的。也即,在机器人中的各个连杆处于平衡态时,通常为0。
133.基于此,当机器人保持静止状态时,存在
134.根据质心参数项和质心动力学方程,代入质心动力学方程可构建静力学模型。静力学模型可用如下式子表示:
135.其中,m为机器人的总质量,g为重力加速度,l为机器人本体关于质心的角动量,
nc
为接触点的个数,i3×3为3维单位矩阵,ri为机器人与地面第i个接触点在世界坐标系(绝对坐标系)下的位置,fi为第i个接触点的作用力,为质心参数项。
136.示意性的,静力学模型的构建需要满足约束条件。根据机器人的构型的不同,静力学模型的约束条件有多种,具体阐述如下:
137.一、通用约束条件。
138.示意性的,静力学模型满足几何约束和第一物理约束中的至少一种。
139.其中,几何约束,用于约束机器人的各个连杆的质心的位置;第一物理约束,用于约束机器人的单个连杆的质量、以及部分连杆的质量之和。
140.示意性的,几何约束条件可用如下式子表示:r
min
<r
ci
<r
max
。也即,机器人的各个连杆的质心在其尺寸包围盒内。
141.示意性的,第一物理约束可用如下式子表示:其中,m为连杆的质量,i、j用于指示第i个、第j个连杆。第一物理约束又称为质量非负约束。
142.二、与轮腿式机器人对应的约束条件。
143.参考图5和图7,以机器人是轮腿式机器人为例,轮腿式机器人包括左右两侧的连杆01和02,且左右两侧的连杆为同类型的连杆,基于此,静力学模型满足第一对称约束。
144.其中,第一对称约束,用于约束所述轮腿式机器人相同连杆的质量和质心位置中的至少一种。
145.示意性的,第一对称约束可用如下式子表示:其中,m为连杆的质量,r为连杆的质心位置,l、r用于指示轮腿式机器人的左侧或右侧。
146.步骤306:根据静力学模型,构建机器人的惯量与摩擦模型。
147.示意性的,惯量与摩擦模型,用于描述机器人受关节摩擦力影响下的受力情况,可根据静力学模型中的一部分参数信息构建。
148.基于此,步骤306可实现为如下:
149.根据静力学模型中的质量参数和质心位置参数,以及机器人的动力学方程,构建惯量与摩擦模型。
150.示意性的,动力学方程可用如下式子表示:
151.其中,q为关节角度,为关节角速度,为关节角加速度,h(q)为机器人的惯量矩阵,为机器人的离心力矩阵,g(q)为机器人的重力矩阵,τ为机器人保持当前状态所需的驱动力矩,为第i个接触点的雅可比矩阵,fi为第i个接触点的作用力。
152.示意性的,惯量矩阵、离心力矩阵和重力矩阵可根据实际需要进行设置,在此不做限定。
153.根据前述内容,质量参数和质心位置参数可通过静力学模型获取到。
154.结合质量参数、质心位置参数和动力学方程,惯量与摩擦模型可用如下式子表示:
155.其中,func
id
为逆动力学方程(具体参见下文阐述)的简写,func
id
可根据动力学方程得到,ic为转动惯量参数,sign为符号函数,为关节角速度,i为电机电流,ri为机器人与地面第i个接触点在世界坐标系下的位置,fi为第i个接触点的作用力。
156.基于此,步骤根据静力学模型中的质量参数和质心位置参数,以及机器人的动力学方程,构建惯量与摩擦模型,可实现为如下:
157.根据动力学方程,确定机器人的逆动力学方程,逆动力学方程用于描述机器人中的各个连杆在质心系下的转动惯量;
158.确定机器人的关节摩擦模型和与机器人的电机电流对应的映射模型;
159.根据质量参数、质心位置参数、逆动力学方程、关节摩擦模型、以及映射模型,生成惯量与摩擦模型。
160.可选的,根据动力学方程的具体表达,逆动力学方程可用如下式子表示:
161.其中,q为关节角度,为关节角速度,为关节角加速度,mi为质量参数,r
ci
为质心位置参数,ic为转动惯量参数,τ为机器人保持当前状态所需的驱动力矩,为第i个接触点的雅可比矩阵,fi为第i个接触点的作用力。
162.具体的,质量参数mi和质心位置参数r
ci
可通过静力学模型获取到。因此,逆动力学方程中,质量参数和质心位置参数可以用定值来表示,也可以用未知参数的形式来表示,上文示出的式子中,质量参数和质心位置参数用定值来表示。
163.示意性的,关节摩擦模型,用于描述机器人关节的关节摩擦力。
164.根据机器人的构型的不同,机器人关节对应的关节摩擦力不同。具体的,关节摩擦力根据机器人的传动方式、关节零件加工装配误差、使用磨损程度等因素产生。上述因素均会对关节运动数据造成影响。示意性的,关节运动数据包括如下数据中的至少一种:机器人关节的关节角度、机器人关节的关节角速度和机器人关节的关节角加速度。
165.因此,根据关节摩擦力的成因可以看出,关节摩擦力与机器人关节的关节角度、关节角速度和关节角加速度相关。也即,关节摩擦力受到关节运动数据的影响。
166.可选的,关节摩擦模型可用如下式子表示:其中,τf为关节摩擦力,sign为符号函数,为关节角速度。
167.示意性的,关节摩擦模型可采用任意阶的多项式基、三角函数基、指数函数基等描述,上式仅为示例,本技术对此不做限定。
168.示意性的,机器人的电机电流对应的映射模型,用于描述机器人关节的输出力矩与电机电流的映射关系,且该映射关系可以是非线性的,或者是线性的。
169.可选的,映射模型可用如下式子表示:τm=k1i。其中,τm为输出力矩,ki为转矩系数,i为电机电流。
170.示意性的,与关节摩擦模型类似,映射模型也可采用任意阶的形式来描述,上式仅为示例,本技术对此不做限定。
171.在机器人的控制过程中,根据能量守恒原理,机器人关节的输出力矩一部分用于产生摩擦,一部分用于产生运动。
172.也即,机器人关节需要满足如下约束条件:其中,τm为输出力矩,τf为关节摩擦力,为机器人的第i个接触点的雅可比矩阵,fi为机器人的第i个接触点的作用力。相当于,输出力矩相当于关节摩擦力、驱动力矩以及多个接触点的作用力之和。
173.在质量参数和质心位置参数用定值来表示的情况下,根据上述约束条件和逆运动学方程可得,τm=τf+func
id
(ic)。
174.联立关节摩擦模型、映射模型和τm=τf+func
id
(ic)可得惯量与摩擦模型,惯量与摩擦模型可用如下式子表示:
175.其中,func
id
为逆动力学方程,ic为转动惯量参数,sign为符号函数,为关节角速度,i为电机电流,ri为机器人与地面第i个接触点在世界坐标系下的位置,fi为第i个接触点的作用力。
176.与静力学模型类似,惯量与摩擦模型的构建同样需要满足约束条件。根据机器人的构型的不同,惯量与摩擦模型的约束条件有多种,具体阐述如下:
177.一、通用约束条件。
178.示意性的,惯量与摩擦模型满足第一边界约束和第二物理约束中的至少一种。
179.其中,第一边界约束,用于约束机器人的各个连杆的转动惯量的边界;第二物理约束,用于约束机器人的各个连杆的转动惯量对应的转动轴。
180.示意性的,第一边界约束可用如下式子表示:其中,为第i个连杆的转动惯量,k、a、b、c和d均为惯量与摩擦模型的模型参数。相当于,对机器人的转动惯量、以及惯量与摩擦模型中的参数的取值范围进行限定。
181.示意性的,第二物理约束可用如下式子表示:其中,和用于指示转动惯量对应的转动轴。
182.二、与轮腿式机器人对应的约束条件。
183.参考图5和图7,以机器人是轮腿式机器人为例,轮腿式机器人包括左右两侧的连杆01和02,且左右两侧的连杆为同类型的连杆,基于此,惯量与摩擦模型满足第二对称约束。
184.其中,第二对称约束,用于约束轮腿式机器人相同连杆的转动惯量参数值。
185.示意性的,第二对称约束可用如下式子表示:其中,m为连杆的质量,r为连杆的质心位置,l、r用于指示轮腿式机器人的左侧或右侧。
186.步骤308:采用非线性优化方法,对静力学模型和惯量与摩擦模型中的目标参数进行参数辨识,以得到目标参数的辨识值。
187.根据前述内容,对静力学模型和惯量与摩擦模型进行的参数辨识,可以获取到模型参数的辨识值,该辨识值将使得根据静力学模型和惯量与摩擦模型得到的数值结果更加接近真实值。
188.可选的,在获取到模型参数的辨识值后,可对模型参数的辨识值的精度进行判别,在模型参数满足精度要求的情况下,确定目标参数的辨识值。
189.示意性的,目标参数又可称为动力学参数,目标参数是静力学模型和惯量与摩擦模型中的部分或全部模型参数,目标参数包括机器人的质量参数、质心位置参数和转动惯量参数中的至少一种。其中,质量参数可用mi表示,质心位置参数可用r
ci
表示,转动惯量参数可用ic表示。
190.具体的,静力学模型中的目标参数包括质量参数和质心位置参数中的至少一种,惯量与摩擦模型中的目标参数包括转动惯量参数。
191.采用非线性优化方法对静力学模型和惯量与摩擦模型中的目标参数进行参数辨识,是指对静力学模型和惯量与摩擦模型分别进行非线性优化处理。其中,非线性优化处理可以是采用非线性优化算法。
192.示意性的,步骤308可实现为如下:
193.对静力学模型中的质量参数和质心位置参数进行参数辨识,以得到质量参数和质心位置参数的辨识值;对惯量与摩擦模型中的转动惯量参数进行参数辨识,以得到转动惯量参数的辨识值;
194.或者,
195.对静力学模型中的质量参数和质心位置参数进行参数辨识,以得到质量参数和质心位置参数的辨识值;在质量参数和质心位置参数的辨识值满足预设精度的情况下,对惯量与摩擦模型中的转动惯量参数进行参数辨识,以得到转动惯量参数的辨识值。
196.相当于,在分别构建静力学模型和惯量与摩擦模型后,可分别对其进行参数辨识;或者,在构建静力学模型后,先对静力学模型进行参数辨识,在得到的质量参数和质心位置参数的辨识值满足预设精度的情况下,再对惯量与摩擦模型进行参数辨识。
197.以下分别对参数辨识的具体过程阐述如下:
198.一、对静力学模型进行的参数辨识。
199.可选的,静力学模型可表示为:
200.其中,m为机器人的总质量,g为重力加速度,l为机器人本体关于质心的角动量,
nc
为接触点的个数,i3×3为3维单位矩阵,ri为机器人与地面第i个接触点在世界坐标系(绝对坐标系)下的位置,fi为第i个接触点的作用力,为质心参数项,质心参数项包括质量参数mi和质心位置参数r
ci

201.基于此,步骤对静力学模型中的质量参数和质心位置参数进行参数辨识,以得到质量参数和质心位置参数的辨识值,可实现为如下:
202.采集机器人的静力学数据;
203.根据静力学数据,对静力学模型中的第一模型参数进行非线性优化处理,得到第一模型参数的辨识值,第一模型参数中包括质量参数和质心位置参数;
204.在第一模型参数的辨识值满足预设精度的情况下,确定为质量参数和质心位置参数的辨识值。
205.示意性的,第一模型参数中包括质量参数和质心位置参数。
206.根据前述内容,静力学模型中包括多个参数,除包括质量参数和质心位置参数的质心参数项之外,还包括机器人的总质量m、机器人本体关于质心的角动量l、接触点位置ri和接触点的作用力fi,以上参数可视为机器人的静力学数据中的一部分。也即,静力学数据包括但不限于机器人的总质量、机器人本体关于质心的角动量、接触点位置和接触点的作用力中的至少一种。
207.示意性的,静力学数据的采集有多种实现方式。比如,通过称量得到机器人的总质量。
208.可选的,步骤采集机器人的静力学数据可实现为如下:根据外部检测仪器提供的检测数据,获取静力学数据。其中,外部检测仪器包括如下以下中的至少一种:激光跟踪仪、视觉相机、动作捕捉系统、测力板。
209.参考图8,以机器人是轮腿式机器人为例,可通过测力板03获取接触点位置和接触点的作用力。
210.将轮腿式机器人放置于测力板03上,变换轮腿式机器人的构型,比如从构型1变换到构型2,可测得轮腿式机器人与测力板03的接触点的作用力fi。
211.同时,根据测力板03提供的六维接触力信息,还可以计算得到轮腿式机器人在当前构型下在测力板03上的接触点位置。
212.示意性的,测力板03的坐标系定义可参考图6。接触点位置ri可通过下式子计算得到表示:和r
iz
=0。其中,my和m
x
分别是测力板03在y方向和x方向上的力矩输出,f
iz
是测力板03对机器人的支撑力(相当于接触点的作用力fi)在z发现上的分量。
213.在采集到的静力学数据后,将静力学数据代入静力学模型中,得到更新后的静力学模型;随后,采用非线性优化算法对更新后的静力学模型进行处理,得到第一模型参数的辨识值。
214.示意性的,更新后的静力学模型可用如下式子表示:
[0215][0216]
其中,arg(f)函数是一种对目标函数(f)求参数或者参数集合的函数。具体的,argmin(f)函数是指求目标函数(f)取最小值时的参数或者参数集合的函数。
[0217]
也即,根据更新后的静力学模型可得,在目标函数取最小值时的参数集合中的每个参数的辨识值。其中,参数集合中包括质量参数mi和质心位置参数r
ci

[0218]
二、对惯量与摩擦模型进行的参数辨识。
[0219]
可选的,惯量与摩擦模型可表示为:
[0220]
其中,func
id
为逆动力学方程,ic为转动惯量参数,sign为符号函数,为关节角速度,i为电机电流,ri为机器人与地面第i个接触点在世界坐标系下的位置,fi为第i个接触点的作用力。
[0221]
基于此,步骤对所述惯量与摩擦模型中的所述转动惯量参数进行参数辨识,以得到所述转动惯量参数的辨识值,,可实现为如下:
[0222]
采集机器人的关节运动数据和电机电流;
[0223]
根据关节运动数据和电机电流,对惯量与摩擦模型中的第二模型参数进行非线性优化处理,得到第二模型参数的辨识值,第二模型参数中包括转动惯量参数;
[0224]
在第二模型参数的辨识值满足预设精度的情况下,确定转动惯量参数的辨识值。
[0225]
示意性的,第二模型参数中包括转动惯量参数。
[0226]
根据前述内容,与静力学模型的参数辨识类似,惯量与摩擦模型中除转动惯量参数之外,还包括的关节角度q、关节角速度关节角加速度和电机电流i应当为定值。其中,关节角度q、关节角速度和关节角加速度包括于关节运动数据。
[0227]
可选的,步骤采集机器人的关节运动数据和电机电流可实现为如下:根据机器人的运动轨迹,采集关节运动参数和电流值。
[0228]
其中,机器人的运动轨迹,又称为激励轨迹。可选的,激励轨迹包括但不限于如下轨迹中的一种:正弦激励轨迹、傅里叶级数激励轨迹。具体的,在机器人执行激励轨迹期间,可采集到关节角度q、关节角速度关节角加速度和电机电流i的取值。
[0229]
在采集到关节运动参数和电流值后,将其代入惯量与摩擦模型中,得到更新后的惯量与摩擦模型;随后,采用非线性优化算法对更新后的惯量与摩擦模型进行处理,得到第二模型参数的辨识值。
[0230]
示意性的,更新后的惯量与摩擦模型可用如下式子表示:
[0231][0232]
其中,arg(f)函数是一种对目标函数(f)求参数或者参数集合的函数。具体的,argmin(f)函数是指求目标函数(f)取最小值时的参数或者参数集合的函数。
[0233]
也即,根据更新后的惯量与摩擦模型可得,在目标函数取最小值时的参数集合中的每个参数的辨识值。其中,参数集合中包括转动惯量参数ic。
[0234]
综上所述,本技术实施例给出了机器人的动力学模型的具体构建方法,首先构建机器人的静力学模型,随后再构建机器人的惯量与摩擦模型,并根据动力学模型的具体构建方法,给出了两种可选的参数辨识方法。
[0235]
具体的,通过先对静力学模型进行参数辨识,随后构建惯量与摩擦模型进行参数辨识的方法,本技术实施例将机器人参数解耦为静态可辨识部分和动态可辨识部分分别进行辨识,降低了参数辨识的调参数量,从而降低了参数辨识的难度。
[0236]
结合上述内容,图9示出了本技术另一个实施例提供的机器人的动力学参数辨识方法的流程图,该方法可以实现在图1中示出的应用场景中,以机器人的动力学参数辨识方法由计算机设备200执行为例,该方法包括如下步骤:
[0237]
步骤502:确定机器人的相邻连杆间的变换矩阵。
[0238]
机器人通常由一系列构件和运动副组合而成,根据机器人的关节的不同,每个关节对应一个关节坐标系。比如,第i个关节对应有i关节坐标系,第i-1个关节对应有i-1关节坐标系。
[0239]
示意性的,相邻连杆间的变换矩阵,用于实现连杆在两个相邻的关节坐标系中的位置转换。也即,机器人的某一关节在不同的关节坐标系中的位置表示不同,变换矩阵可用于描述某一点的位置从i关节坐标系变化到i-1关节坐标系下的矩阵。
[0240]
可选的,变换矩阵可用如下式子表示:
[0241]
其中,i、i-1用于指示第i个关节和第i-1个关节,另外,qi为第i个关节的关节角度,为用于描述i关节坐标系中的原点在i-1关节坐标系下的位置的矩阵,i3×3为3维单位矩阵,为i关节坐标系相对于i-1关节坐标系的旋转矩阵。
[0242]
示意性的,旋转矩阵可根据多种形式确定,包括但不限于欧拉角、旋转向量和四元数中的至少一种。
[0243]
参考图6示出的坐标系简图,以欧拉角为例,旋转矩阵可用如下式子表示:其中,x、y和z用于指示相应的坐标轴,α、β和γ用于指示旋转角度。
[0244]
步骤504:根据变换矩阵,构建机器人的运动学模型。
[0245]
运动学模型,用于从几何角度描述机器人的位置、速度和加速度随时间的变化规律。
[0246]
参考图6以及步骤502中得到的变换矩阵,构建运动学模型需要借助位姿变换等式。
[0247]
示意性的,步骤504可实现为如下:
[0248]
根据变换矩阵和机器人的位姿变换等式,构建运动学模型。
[0249]
其中,位姿变换等式用于将目标点在某一关节坐标系下的位置转换为在基坐标系下的位姿。
[0250]
可选的,位姿变换等式可用如下式子表示:其中,为目标点c在基坐标下的位置,为用于描述目标点c的位置从i关节坐标系变化到i-1关节坐标系下的矩阵。为目标点c在i关节坐标下的位置。
[0251]
随后,将位姿变换等式改写为包含运动学误差项的函数形式,具体可用如下式子表示:其中,q为关节角度,δq为机器人的关节角度误差,δp为相邻关节坐标系之间的相对位置误差,δα,δβ,δγ描述相邻关节坐标系之间旋转偏差的rpy欧拉角形式。
[0252]
参考图5和图6,oi用于标识机器人的第i连杆的关节坐标系,m0用于指示固定于主体部分上的捕捉点,m3用于指示固定在末端连杆上的捕捉点。参考图5和图6,m3共有三个点,分为固定于左、右2个车轮121和尾巴130的末端上。
[0253]
根据外部测量仪器提供的位置或姿态测量数据,结合变换矩阵和位姿变换等式,可构建运动学模型。
[0254]
示意性的,运动学模型可用如下式子表示:其中,为捕捉值,用于指示捕捉点m3在任意时刻相对于机器人基坐标系oo的位置;为测量值,根据前述的函数形式计算得到。
[0255]
与静力学模型、惯量与摩擦模型类似,运动学模型的构建同样需要满足约束条件。根据机器人的构型的不同,运动学模型的约束条件有多种,具体阐述如下:
[0256]
一、通用约束条件。
[0257]
示意性的,运动学模型满足第二边界约束。
[0258]
其中,第二边界约束,用于约束与机器人的结构安装对应的误差项的边界。
[0259]
示意性的,第二边界约束可用如下式子表示:min<δq,δp,δα,δβ,δγ<max。
[0260]
二、与轮腿式机器人对应的约束条件。
[0261]
参考图10,以机器人是轮腿式机器人为例,运动学模型满足第一形位约束和第二形位约束中的至少一种。
[0262]
其中,第一形位约束,用于约束轮腿式机器人的开链连杆的平衡状态;第二形位约束,用于约束轮腿式机器人的多个连杆的封闭构型。
[0263]
示意性的,第一形位约束可用如下式子表示:其中,
m3
用于指示轮腿式机器人的目标点,
o0
用于指示轮腿式机器人的基坐标,l、r用于指示轮腿式机器人的前腿或后腿的开链机构。
[0264]
示意性的,第二形位约束可用如下式子表示:其中,θ为轮腿式机器人的一个内角,δθ为内角的误差值,l、r用于指示轮腿式机器人的左侧或右侧。
[0265]
步骤506:对运动学模型进行参数辨识,以得到几何信息。
[0266]
根据前述内容,几何信息包括但不限于如下信息中的至少一种:机器人的关节角度和连杆形位信息。其中,连杆形位信息是指与机器人的连杆相关的几何信息,包括形状和位置中的至少一种。
[0267]
示意性的,步骤506可实现为如下:
[0268]
确定机器人的目标关节点的捕捉值和测量值;
[0269]
根据捕捉值和测量值,对运动学模型中的第三模型参数进行非线性优化处理,得到第三模型参数参数的辨识值,第三模型参数中包括几何信息对应的参数;
[0270]
在第三模型参数的辨识值满足预设精度的情况下,确定几何信息。
[0271]
具体的,参考图5和图6,将捕捉点m3视为目标关节点,其捕捉值可通过动作捕捉系统测量获得。
[0272]
测量值的确定过程如下:
[0273]
在机器人以任一规划的轨迹运动时,通过读取关节编码器可获取机器人的关节角度值;由于捕捉点通常通过设计高精度的附加标定件粘贴于机器人的连杆的确定位置,所以捕捉点m3在对应关节坐标系的准确位置可通过相应的仪器获取得到,比如通过cad直接获取;随后,将和关节角度值代入可以计算得到测量值。
[0274]
示意性的,步骤根据捕捉值和测量值,对运动学模型中的第三模型参数进行非线性优化处理,得到第三模型参数参数的辨识值,可实现为如下:
[0275]
将捕捉值和测量值代入运动学模型,得到更新后的运动学模型;
[0276]
采用非线性优化算法对更新后的运动学模型进行处理,得到第三模型参数的辨识
值。
[0277]
其中,第三模型参数中包括机器人的几何信息。
[0278]
与静力学模型、惯量与摩擦模型的参数辨识过程类似,将捕捉值和测量值代入运动学模型,得到更新后的运动学模型。示意性的,更新后的运动学模型可用如下式子表示:其中,更新后的运动学模型中的第三模型参数包括与几何信息对应的参数。
[0279]
结合前述内容,与静力学模型、惯量与摩擦模型类似,通过对更新后的运动学模型进行非线性优化处理,可以得到第三模型参数参数的辨识值。随后,对第三模型参数的辨识值的精度进行判别,在满足预设精度的情况下,确定几何信息。
[0280]
步骤508:根据几何信息,构建机器人的动力学模型。
[0281]
机器人的动力学模型,用于描述机器人的力与物体运动的关系。动力学模型有多种表现形式,其构建可通过多种方式得到,比如根据拉格朗日方程或者牛顿欧拉方程得到。
[0282]
可选的,机器人的动力学模型可通过如下方式构建:根据机器人的几何信息,构建机器人的静力学模型;根据机器人的静力学模型,构建机器人的惯量与摩擦模型。
[0283]
为实现对机器人的力与物体运动的关系的描述,需要获取到机器人的位置、关节角度等信息。根据前述内容,基于运动学模型,可以确定机器人的几何信息。
[0284]
示意性的,步骤508和步骤104相同,可作参考,不再赘述。
[0285]
步骤510:采用非线性优化方法,对动力学模型中的目标参数进行参数辨识,以得到目标参数的辨识值。
[0286]
对动力学模型进行的参数辨识,可以获取到模型参数的辨识值,该辨识值将使得根据动力学模型得到的数值结果更加接近真实值。
[0287]
示意性的,目标参数又可称为动力学参数,目标参数是动力学模型中的部分或全部模型参数,目标参数包括机器人的质量参数、质心位置参数和转动惯量参数中的至少一种。其中,质量参数可用mi表示,质心位置参数可用r
ci
表示,转动惯量参数可用ic表示。
[0288]
可选的,在获取到模型参数的辨识值后,可对模型参数的辨识值的精度进行判别,在模型参数满足精度要求的情况下,确定动力学模型中的目标参数的辨识值。
[0289]
示意性的,步骤510和步骤106相同,可作参考,不再赘述。
[0290]
图11示出了另一种机器人的动力学参数辨识方法的流程图,该方法可以实现在图1中示出的应用场景中,以机器人的动力学参数辨识方法由计算机设备200执行为例,包括如下步骤:
[0291]
步骤601:采集运动学辨识数据与验证数据。
[0292]
示意性的,辨识数据用于对运动学模型进行参数辨识,验证数据用于对运动学中的第一模型参数的辨识值进行验证。
[0293]
具体的,辨识数据和验证数据可根据外部测量仪器采集或确定。
[0294]
步骤602:进行运动学模型的参数辨识。
[0295]
运动学模型,用于从几何角度描述机器人的位置、速度和加速度随时间的变化规律,不涉及机器人本体的物理性质和加在机器人上的力等信息。
[0296]
示意性的,对运动学模型进行的参数辨识,是指采用非线性优化方法对运动学模型进行处理。其中,非线性优化方法可以是非线性优化算法。示意性的,非线性优化算法包
括如下算法中的至少一种:最大似然估计法,迭代算法、变尺度法,最小二乘法,单纯形搜索法,复合形搜索法,随机搜索法。
[0297]
步骤603:判断辨识参数是否达到精度要求。
[0298]
在对运动学模型进行参数辨识后,可以得到第一模型参数的辨识值。为使得模型参数的精度得到提高,需要对第一模型参数的辨识值进行精度判别。
[0299]
示意性的,第一模型参数中包括与几何信息对应的参数。
[0300]
基于此,步骤603中,在模型参数的辨识值达到精度要求的情况下,完成运动学模型的参数辨识,可以确定机器人的几何信息,并执行步骤604;在模型参数的辨识值未达到精度要求的情况下,继续执行步骤602。
[0301]
步骤604:采集静力学辨识数据与验证数据。
[0302]
示意性的,辨识数据用于对静力学模型进行参数辨识,验证数据用于对运动学中的第一模型参数的辨识值进行验证。
[0303]
步骤605:进行静力学模型的参数辨识。
[0304]
静力学模型,用于描述机器人处于静平衡态时的受力情况。其中,平衡态是以地球为参考系确定的,是指物体相对于惯性参照系处于静止或匀速直线运动的状态,即加速度为零的状态。
[0305]
示意性的,对静力学模型进行的参数辨识,是指采用非线性优化方法对静力学模型进行处理。其中,非线性优化方法可以是非线性优化算法。示意性的,非线性优化算法包括如下算法中的至少一种:最大似然估计法,迭代算法、变尺度法,最小二乘法,单纯形搜索法,复合形搜索法,随机搜索法。
[0306]
步骤606:判断辨识参数是否达到精度要求。
[0307]
在对静力学模型进行参数辨识后,可以得到第二模型参数的辨识值。为使得模型参数的精度得到提高,需要对第二模型参数的辨识值进行精度判别。
[0308]
示意性的,第二模型参数包括质量参数和质心位置参数中的至少一种。
[0309]
基于此,步骤606中,在模型参数的辨识值达到精度要求的情况下,完成静力学模型的参数辨识,可以确定机器人的质量参数和质心位置参数的辨识值,并执行步骤607;在模型参数的辨识值未达到精度要求的情况下,继续执行步骤605。
[0310]
步骤607:采集惯量与摩擦的辨识数据与验证数据。
[0311]
示意性的,辨识数据用于对惯量与摩擦模型进行参数辨识,验证数据用于对运动学中的第一模型参数的辨识值进行验证。
[0312]
具体的,辨识数据和验证数据可根据机器人的运动轨迹进行采集。
[0313]
其中,机器人的运动轨迹,又称为激励轨迹。可选的,激励轨迹包括但不限于如下轨迹中的一种:正弦激励轨迹、傅里叶级数激励轨迹。
[0314]
具体的,在机器人执行激励轨迹期间,可采集到关节角度、关节角速度、关节角加速度和电机电流i的多组数据,辨识数据和验证数据分别是其中的一组或多组。
[0315]
步骤608:进行惯量与摩擦模型的参数辨识。
[0316]
惯量与摩擦模型,用于描述机器人受关节摩擦力影响下的受力情况。
[0317]
示意性的,对惯量与摩擦模型进行的参数辨识,是指采用非线性优化方法对惯量与摩擦模型进行处理。其中,非线性优化方法可以是非线性优化算法。示意性的,非线性优
化算法包括如下算法中的至少一种:最大似然估计法,迭代算法、变尺度法,最小二乘法,单纯形搜索法,复合形搜索法,随机搜索法。
[0318]
步骤609:判断辨识参数是否达到精度要求。
[0319]
在对惯量与摩擦模型进行参数辨识后,可以得到第一模型参数的辨识值。为使得模型参数的精度得到提高,需要对第一模型参数的辨识值进行精度判别。
[0320]
基于此,步骤609中,在模型参数的辨识值达到精度要求的情况下,完成惯量与摩擦模型的参数辨识;在模型参数的辨识值未达到精度要求的情况下,继续执行步骤608。
[0321]
综上所述,本技术实施例给出了机器人的运动学模型的具体构建方法,通过对运动学模型的参数辨识,得到几何信息以构建动力学模型。
[0322]
图12是本技术一个实施例提供的机器人的动力学参数辨识装置的结构框图。该装置包括:
[0323]
确定模块1220,用于根据机器人的运动学模型,确定机器人的几何信息;
[0324]
构建模块1240,用于根据几何信息,构建机器人的动力学模型;
[0325]
辨识模块1260,用于采用非线性优化方法,对动力学模型中的目标参数进行参数辨识,以得到目标参数的辨识值,目标参数包括机器人的质量参数、质心位置参数和转动惯量参数中的至少一种。
[0326]
在一个可选的实施例中,辨识模块1260,用于采集用于参数辨识的数据信息;根据数据信息,对动力学模型中的模型参数进行非线性优化处理,得到模型参数的辨识值,模型参数中包括目标参数;在模型参数的辨识值满足预设精度的情况下,确定目标参数的辨识值。
[0327]
在一个可选的实施例中,辨识模块1260,用于将数据信息代入动力学模型,得到更新后的动力学模型;采用非线性优化算法对更新后的动力学模型进行处理,得到模型参数的辨识值。
[0328]
在一个可选的实施例中,构建模块1240,用于根据几何信息,构建机器人的静力学模型;根据静力学模型,构建机器人的惯量与摩擦模型。
[0329]
在一个可选的实施例中,构建模块1240,用于根据几何信息,确定质量参数和质心位置参数;根据质量参数和质心位置参数,生成机器人的质心参数项,质心参数项用于描述机器人中的各个连杆的平衡态;根据质心参数项和质心动力学方程,构建静力学模型。
[0330]
在一个可选的实施例中,构建模块1240,用于根据静力学模型中的质量参数和质心位置参数,以及机器人的动力学方程,构建惯量与摩擦模型。
[0331]
在一个可选的实施例中,构建模块1240,用于根据动力学方程,确定机器人的逆动力学方程,逆动力学方程用于描述机器人中的各个连杆在质心系下的转动惯量;确定机器人的关节摩擦模型和与机器人的电机电流对应的映射模型;根据质量参数、质心位置参数、逆动力学方程、关节摩擦模型、以及映射模型,生成惯量与摩擦模型。
[0332]
在一个可选的实施例中,辨识模块1260,用于对静力学模型中的质量参数和质心位置参数进行参数辨识,以得到质量参数和质心位置参数的辨识值;对惯量与摩擦模型中的转动惯量参数进行参数辨识,以得到转动惯量参数的辨识值;或者,对静力学模型中的质量参数和质心位置参数进行参数辨识,以得到质量参数和质心位置参数的辨识值;在质量参数和质心位置参数的辨识值满足预设精度的情况下,对惯量与摩擦模型中的转动惯量参
数进行参数辨识,以得到转动惯量参数的辨识值。
[0333]
在一个可选的实施例中,确定模块1220,用于确定机器人的相邻连杆间的变换矩阵;根据变换矩阵,构建机器人的运动学模型;对运动学模型进行参数辨识,以得到几何信息。
[0334]
在一个可选的实施例中,确定模块1220,用于根据变换矩阵和机器人的位姿变换等式,构建运动学模型。
[0335]
在一个可选的实施例中,确定模块1220,用于确定机器人的目标关节点的捕捉值和测量值;根据捕捉值和测量值,对运动学模型中的第三模型参数进行非线性优化处理,得到第三模型参数参数的辨识值,第三模型参数中包括几何信息对应的参数;在第三模型参数的辨识值满足预设精度的情况下,确定几何信息。
[0336]
在一个可选的实施例中,确定模块1220,用于将捕捉值和测量值代入运动学模型,得到更新后的运动学模型;采用非线性优化算法对更新后的运动学模型进行处理,得到第三模型参数的辨识值。
[0337]
需要说明的是:上述实施例提供的装置,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的装置,与前述内容中的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
[0338]
图13示出了本技术一个示例性实施例提供的电子设备1300的结构框图。
[0339]
该电子设备1300可以是便携式移动终端,比如:智能手机、平板电脑、mp3播放器(moving picture experts group audio layer iii,动态影像专家压缩标准音频层面3)、mp4(moving picture experts group audio layer iv,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。电子设备1300还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。本技术实施例中,该电子设备1300实现为机器人中的控制设备部分。
[0340]
通常,电子设备1300包括有:处理器1301和存储器1302。
[0341]
处理器1301可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器1301可以采用dsp(digital signal processing,数字信号处理)、fpga(field-programmable gate array,现场可编程门阵列)、pla(programmable logic array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器1301也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称cpu(central processing unit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器1301可以集成有gpu(graphics processing unit,图像处理器),gpu用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器1301还可以包括ai(artificial intelligence,人工智能)处理器,该ai处理器用于处理有关机器学习的计算操作。
[0342]
存储器1302可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1302还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1302中的非暂态的计算机可
读存储介质用于存储至少一个指令,该至少一个指令用于被处理器1301所执行以实现本技术中方法实施例提供的机器人的动力学参数辨识,或者期望映射模型的参数辨识方法。
[0343]
在一些实施例中,电子设备1300还可选包括有:外围设备接口1303和至少一个外围设备。处理器1301、存储器1302和外围设备接口1303之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口1303相连。具体地,外围设备包括:射频电路1304、显示屏1305、摄像头组件1306、音频电路1307、定位组件1308和电源1309中的至少一种。
[0344]
外围设备接口1303可被用于将i/o(input/output,输入/输出)相关的至少一个外围设备连接到处理器1301和存储器1302。在一些实施例中,处理器1301、存储器1302和外围设备接口1303被集成在同一芯片或电路板上;在一些其他实施例中,处理器1301、存储器1302和外围设备接口1303中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
[0345]
射频电路1304用于接收和发射rf(radio frequency,射频)信号,也称电磁信号。射频电路1304通过电磁信号与通信网络以及其他通信设备进行通信。射频电路1304将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选的,射频电路1304包括:天线系统、rf收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路1304可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:万维网、城域网、内联网、各代移动通信网络(2g、3g、4g及5g)、无线局域网和/或wi-fi(wireless fidelity,无线保真)网络。在一些实施例中,射频电路1304还可以包括nfc(near field communication,近距离无线通信)有关的电路,本技术对此不加以限定。
[0346]
显示屏1305用于显示ui(user interface,用户界面)。该ui可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏1305是触摸显示屏时,显示屏1305还具有采集在显示屏1305的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器1301进行处理。此时,显示屏1305还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏1305可以为一个,设置在电子设备1300的前面板;在另一些实施例中,显示屏1305可以为至少两个,分别设置在电子设备1300的不同表面或呈折叠设计;在另一些实施例中,显示屏1305可以是柔性显示屏,设置在电子设备1300的弯曲表面上或折叠面上。甚至,显示屏1305还可以设置成非矩形的不规则图形,也即异形屏。显示屏1305可以采用lcd(liquid crystal display,液晶显示屏)、oled(organic light-emitting diode,有机发光二极管)等材质制备。
[0347]
摄像头组件1306用于采集图像或视频。可选的,摄像头组件1306包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及vr(virtual reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件1306还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
[0348]
音频电路1307可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器1301进行处理,或者输入至射频电路1304以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在电子设备1300的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器1301或射频电路1304的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路1307还可以包括耳机插孔。
[0349]
定位组件1308用于定位电子设备1300的当前地理位置,以实现导航或lbs(location based service,基于位置的服务)。定位组件1308可以是基于美国的gps(global positioning system,全球定位系统)、中国的北斗系统或俄罗斯的伽利略系统的定位组件。
[0350]
电源1309用于为电子设备1300中的各个组件进行供电。电源1309可以是交流电、直流电、一次性电池或可充电电池。当电源1309包括可充电电池时,该可充电电池可以是有线充电电池或无线充电电池。有线充电电池是通过有线线路充电的电池,无线充电电池是通过无线线圈充电的电池。该可充电电池还可以用于支持快充技术。
[0351]
在一些实施例中,电子设备1300还包括有一个或多个传感器1310。该一个或多个传感器1310包括但不限于:加速度传感器1311、陀螺仪传感器1312、压力传感器1313、指纹传感器1314、光学传感器1315以及接近传感器1316。
[0352]
加速度传感器1311可以检测以电子设备1300建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器1311可以用于检测重力加速度在三个坐标轴上的分量。处理器1301可以根据加速度传感器1311采集的重力加速度信号,控制显示屏1305以横向视图或纵向视图进行用户界面的显示。加速度传感器1311还可以用于游戏或者用户的运动数据的采集。
[0353]
陀螺仪传感器1312可以检测电子设备1300的机体方向及转动角度,陀螺仪传感器1312可以与加速度传感器1311协同采集用户对电子设备1300的3d动作。处理器1301根据陀螺仪传感器1312采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变ui)、拍摄时的图像稳定、游戏控制以及惯性导航。
[0354]
压力传感器1313可以设置在电子设备1300的侧边框和/或显示屏1305的下层。当压力传感器1313设置在电子设备1300的侧边框时,可以检测用户对电子设备1300的握持信号,由处理器1301根据压力传感器1313采集的握持信号进行左右手识别或快捷操作。当压力传感器1313设置在显示屏1305的下层时,由处理器1301根据用户对显示屏1305的压力操作,实现对ui界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
[0355]
指纹传感器1314用于采集用户的指纹,由处理器1301根据指纹传感器1314采集到的指纹识别用户的身份,或者,由指纹传感器1314根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器1301授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器1314可以被设置在电子设备1300的正面、背面或侧面。当电子设备1300上设置有物理按键或厂商logo时,
指纹传感器1314可以与物理按键或厂商logo集成在一起。
[0356]
光学传感器1315用于采集环境光强度。在一个实施例中,处理器1301可以根据光学传感器1315采集的环境光强度,控制显示屏1305的显示亮度。具体地,当环境光强度较高时,调高显示屏1305的显示亮度;当环境光强度较低时,调低显示屏1305的显示亮度。在另一个实施例中,处理器1301还可以根据光学传感器1315采集的环境光强度,动态调整摄像头组件1306的拍摄参数。
[0357]
接近传感器1316,也称距离传感器,通常设置在电子设备1300的前面板。接近传感器1316用于采集用户与电子设备1300的正面之间的距离。在一个实施例中,当接近传感器1316检测到用户与电子设备1300的正面之间的距离逐渐变小时,由处理器1301控制显示屏1305从亮屏状态切换为息屏状态;当接近传感器1316检测到用户与电子设备1300的正面之间的距离逐渐变大时,由处理器1301控制显示屏1305从息屏状态切换为亮屏状态。
[0358]
本领域技术人员可以理解,图13中示出的结构并不构成对电子设备1300的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
[0359]
本技术的实施例还提供了一种计算机设备,该计算机设备包括处理器和存储器,该存储器中存储有至少一条程序代码,程序代码由处理器加载并执行以实现如上所述的机器人的动力学参数辨识。
[0360]
本技术的实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有至少一条程序代码,程序代码由处理器加载并执行以实现如上所述的机器人的动力学参数辨识。
[0361]
本技术的实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行如上所述的机器人的动力学参数辨识。
[0362]
可选的,该计算机可读存储介质可以包括:只读存储器(rom,read only memory)、随机存取记忆体(ram,random access memory)、固态硬盘(ssd,solid state drives)或光盘等。其中,随机存取记忆体可以包括电阻式随机存取记忆体(reram,resistance random access memory)和动态随机存取存储器(dram,dynamic random access memory)。
[0363]
上述本技术实施例序号仅仅为了描述,不代表实施例的优劣。
[0364]
应当理解的是,在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
[0365]
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
[0366]
以上所述仅为本技术的可选实施例,并不用以限制本技术,凡在本技术的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1