【机械臂算法】机械臂动力学参数辨识仿真

这篇具有很好参考价值的文章主要介绍了【机械臂算法】机械臂动力学参数辨识仿真。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

本文以puma560m机械臂为例子进行动力学参数辨识的讲解,puma560m可以在robotic toolbox中找到,这里以它真实机械臂对他的动力学参数进行辨识。

此外这里还有要说的是,机械臂参数辨识其实是一个系统工程,其中和机械、电子、嵌入式都有着很深的联系,并不是仿真这么简单的。

但是仿真又是很重要的,如果仿真都做不出来,那么实验结果不可能有理论依据,仿真做不出来的,实验也是做不出来的。

本篇文章的思路和我的另一篇是完全一样的,只不过是扩展到了多自由度->【机器人算法】二连杆机器人动力学参数辨识。

仿真环境

因为这里是仿真,所以要有一个仿真环境,这里为了简单直接用matlab中的mdl_p560akb,把他当成真实的机械臂,此外这里再对其进行建模作为真实机械臂的仿真。
下图为“真实”机械臂和仿真结果的对比,其中线是真实机械臂的数据,点是我们仿真出来的数据,可以看出仿真结果完全正确。

机械臂动力学参数辨识,matlab,参数辨识,机器人,运动控制机械臂动力学参数辨识,matlab,参数辨识,机器人,运动控制

线性化

线性化实际上就是将辨识参数分离出来,不考虑关节动力学和不考虑摩擦力,那么一个杆子就有10个待辨识参数,p560就有6*10个待辨识参数。那么动力学公式就可以转化为如下的形式:

tau=K*pi;

其中K就是一个和DH参数和关节位置、速度和加速度有关的矩阵。

一般思路来说我们直接采集实验数据然后,用最小二乘法就可以了:

机械臂动力学参数辨识,matlab,参数辨识,机器人,运动控制

但是,由于机械臂靠近基座关节的自由度缺失和我们只关心关节轴的力矩的原因(力传感缺失),K.'K是不可逆的。有人说可以用SVD求伪逆云云,但是SVD求得的伪逆是一个没有物理意义的“假”值,用这个值求出的待辨识参数也一定是不真实的,辨识没有意义。
因此我们需要通过转化,使得K.'K可逆,这个过程就是提取最小参数集。

最小惯性参数集

我们不可能辨识出所有的动力学参数,但是我们可以通过提取最小参数集来辨识出动力学参数的线性组合。
提取最小参数集的方式在网上有很多种,例如霍伟老师所著《机器人动力学与控制》中提到的使用DH参数直接推导出来。
本博客使用的是根据观测矩阵推导出最小惯性参数集。这里参考了一篇论文核心思想是通过QR分解K来对惯量矩阵Psi进行重组。通过论文中所提到的方法,我们得出最小惯性参数集为36个,具体如下:

机械臂动力学参数辨识,matlab,参数辨识,机器人,运动控制

我们随机对关节位置速度加速度进行赋值,进行仿真,仿真结果如下,左侧为真实的最小惯性参数集,右侧为辨识出的最小惯性参数集,可以看出结果有效。

机械臂动力学参数辨识,matlab,参数辨识,机器人,运动控制

激励轨迹设计

为什么要有激励轨迹设计?可以看出线性化后的动力学方程为tau=K*Psi,其中K是和机器人关节位置速度加速度有关的量,如果我们的轨迹设计不合理,那么K矩阵很容易成为病态矩阵,这十分不利于参数辨识。同时,激励轨迹还需要满足不损坏机器人本体。因此需要一定的考究。
激励轨迹的设计问题实质上是一个优化问题,你可以用各种各样的优化算法比如说图搜索,fmincon、GA等等的,这里直接调用matlab的函数包就可以了。优化的目标就是要满足以上要求,转化为公式的话,如下:

机械臂动力学参数辨识,matlab,参数辨识,机器人,运动控制

cost function是使得K的条件数最小。

这里我首先建议用一台性能高的电脑去完成,用轻薄本的话注定要跑很久,同时也要注意计算技巧,如果计算方法选不对那么也会耗费很多的时间。

这里给出我是用上述方法计算出来的激励轨迹,共花费三个半小时,如下图:
机械臂动力学参数辨识,matlab,参数辨识,机器人,运动控制

机械臂动力学参数辨识,matlab,参数辨识,机器人,运动控制机械臂动力学参数辨识,matlab,参数辨识,机器人,运动控制

激励轨迹的执行如上图,因为我这里给的限位都比较大,所以看起来有些夸张。

实验

基于使用franka emika panda,进行参数辨识实验。这里见我的另一篇博文->【机械臂算法】Franka Emika Panda动力学参数辨识。文章来源地址https://www.toymoban.com/news/detail-613723.html

到了这里,关于【机械臂算法】机械臂动力学参数辨识仿真的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 建模分析 | 平面2R机器人(二连杆)运动学与动力学建模(附Matlab仿真)

    🔥附C++/Python/Matlab全套代码🔥课程设计、毕业设计、创新竞赛必备!详细介绍全局规划(图搜索、采样法、智能算法等);局部规划(DWA、APF等);曲线优化(贝塞尔曲线、B样条曲线等)。 🚀详情:图解自动驾驶中的运动规划(Motion Planning),附几十种规

    2024年02月05日
    浏览(29)
  • 基于Matlab的Robotics Toolbox工具箱的机器人仿真函数介绍(空间位姿表示与动力学)

    随着我们了解到机器人如何建立运动学模型和动力学模型之后,我们可以使用Matlab中的仿真工具箱内来对模型的准确性进行验证,并且可以通过内置的函数进行简单的轨迹规划和可视化观察,本节涉及到的工具箱是MATLAB自带的Robotics Toolbox工具箱。 平移与旋转函数: SE2(x,y,t

    2024年02月07日
    浏览(36)
  • 机械臂的动力学分析-工业机器人

    工业机器人动力学研究采用的方法有很多,例如拉格朗日法、牛顿-欧拉法、高斯法、凯恩法等,在此重点介绍牛顿-欧拉法和拉格朗日法。牛顿-欧拉法需要从运动学出发求得加速度,并计算各内作用力。对于较复杂的系统,此种分析方法十分复杂与麻烦。而拉格朗日法,只需

    2023年04月08日
    浏览(31)
  • MATLAB仿真Gough-Stewart并联机器人斯图尔特6自由度并联机器人逆运动学仿真 动力学控制pid控制

    MATLAB仿真Gough-Stewart并联机器人斯图尔特6自由度并联机器人逆运动学仿真 动力学控制pid控制 1.搭建了六自由度Stewart并联机器人simulink simscape仿真模型 2.建立了逆向运动学仿真 输入位置和姿态求解各个杆长 3.运用pid控制器进行动力学跟踪控制 使用MATLAB进行了Gough-Stewart并联机器

    2024年01月16日
    浏览(43)
  • 二维离散动力学系统的混沌研究【基于matlab的动力学模型学习笔记_9】

    摘 要: 混沌(Chaos)是指发生在确定系统中的貌似随机的不规则运动,本文将基于经典的二维系统,然后根据动力学方程研究其混沌产生过程以及相对应的MATLAB仿真,再讨论Lyapunov指数以及正平衡点。 上一篇中介绍了一维系统,这次我们将维数提升到二。 /*仅当作学习笔记,

    2024年02月05日
    浏览(46)
  • LabVIEW开发航天器动力学与控制仿真系统

    LabVIEW开发航天器动力学与控制仿真系统 计算机仿真是工程设计和验证的非常有用的工具。它节省了大量的时间、金钱和精力。航天器动力学与控制仿真系统由LabVIEW程序开发,它是模拟航天器等动态系统的有用工具。还可轻松与硬件连接并输出真实信号。 项目采用系统工程过

    2024年02月15日
    浏览(34)
  • 平面三自由度机器人动力学建模与仿真

    网上二自由度机器臂动力学分析有很多,三自由度比较少,碰巧本科课设需要完成相关项目,分享一些经验供参考。 实际的三连杆机器臂的结构相对较复杂,很难进行精确地描述,因此,在本文中利用简化的数学模型进行讨论。简化条件如下: 假设机器臂是刚性结构,不考

    2024年02月04日
    浏览(40)
  • 无人机|四旋翼运动动力学建模及位置控制仿真

    本文将实现对无人机动力学以及运动学的公式推导完成建模,该模型以电机转速为输入,以无人机的状态量为输出。并在此基础上实现位置控制,以期望位置作为输入,使用串级pid结合无人机模型生成控制指令并对无人机进行控制。 对于任意刚体运动,均可分解为转动和平动

    2024年04月11日
    浏览(34)
  • MATLAB - 四旋翼飞行器动力学方程

      本例演示了如何使用 Symbolic Math Toolbox™(符号数学工具箱)推导四旋翼飞行器的连续时间非线性模型。具体来说,本例讨论了 getQuadrotorDynamicsAndJacobian 脚本,该脚本可生成四旋翼状态函数及其雅各布函数。这些函数将在使用非线性模型预测控制(模型预测控制工具箱)控制

    2024年01月22日
    浏览(54)
  • 直升机空气动力学基础---002 桨叶的主要参数

    源于 由于其设计制造比较简单,早期直升机大多采用矩形桨叶,缺点是在高速气流中,无法抑制桨尖涡,会消耗向下的诱导速度,降低旋翼的拉力。现代多采用梯形桨叶。 桨尖后掠能够降低桨尖涡 图片上方称之为前缘,下方称为后缘。 展弦比: λ = L b a v g lambda = frac{L}{

    2023年04月26日
    浏览(27)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包