【机器人算法】二连杆机器人动力学参数辨识

本文通过二连杆系统实例,详细讲解了机器人动力学参数的辨识过程,包括牛顿欧拉动力学建模、线性化、最小参数集提取和最小二乘法应用。尽管未进行激励轨迹优化,但仿真结果展示了辨识的有效性和精度。参考书籍为《机器人动力学与控制》。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本篇博文以二连杆系统为例子,讲解机器人的动力学参数辨识,并进行仿真,由于本篇主要是进行仿真因此没有实验数据处理的过程。

本篇博文主要参考了霍伟的《机器人动力学与控制》。

机器人动力学参数主要步骤:

  • 牛顿欧拉动力学建模
  • 向外迭代线性化
  • 提取最小参数集
  • 激励轨迹设计
  • 最小二乘法求出动力学参数

动力学建模的方法不用赘述,请参见《机器人学建模、规划与控制》

其中在向外迭代的过程中,对标黄部分进行线性化处理:

于是就可以得到动力学方程的线性化的形式。

这个时候并不能直接使用最小二乘法,因为Y矩阵不满秩,并且如果使用SVD等方式进行伪逆解处理时,由于Y矩阵的条件数较大,Y矩阵是一个病态矩阵,这就导致伪逆计算的结果十分不精确,并且没有实际的物理意义,比如说将质量计算为负值等等的。因此需要对观测矩阵Y和惯量参数矩阵进行修改。
这就涉及到了最小参数集的提取,最小参数集的提取方法见《霍伟》P97页。
对于二连杆系统,其最小参数集为:

Y矩阵和各个关节的位置、速度和加速度有关。因此激励轨迹将直接影响到Y.'*Y求逆时候的可信度,因此需要优化激励轨迹,激励轨迹的优化一般是寻找约束非线性多变量函数的最小值,本篇博文由于没有优化计算量的原因,没有进行激励轨迹的优化。
优化后可以直接使用最小二乘法:

本篇博文二连杆的参数为

subs(p,{'L1','L2','m1','m2','I1','I2','c1x','c1y','c2x','c2y','Izz1','Izz2'},{0.3,0.3,0.5,0.5,5.4e-3,5.4e-3,0.15,0,0.15,0,0.016650,0.016650})

因此真实连杆的最小参数集为:

0.06165
  0.225
      0
0.01665
  0.075

仿真后的结果:

可以看出辨识结果精确有效。

这篇博文输入自由度低的,高自由度的请参考我的另一篇博文->【机器人算法】机械臂动力学参数辨识仿真

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值