【机械臂算法】基于Franka Emika Panda机械臂动力学参数辨识/系统辨识、物理一致性/物理合理性(physical consistency)研究及动力学应用

这篇具有很好参考价值的文章主要介绍了【机械臂算法】基于Franka Emika Panda机械臂动力学参数辨识/系统辨识、物理一致性/物理合理性(physical consistency)研究及动力学应用。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

根据之前的理论推导->【机器人算法】机械臂动力学参数辨识仿真,我们在这直接给出franka机械臂的最小参数集和激励轨迹,

激励轨迹

激励轨迹如下(这里考虑到了碰撞的情况->【算法】基于分离轴定理的机器人碰撞检测,自碰撞和与安装桌面干涉碰撞):

franka机械臂,机器人,参数辨识,算法franka机械臂,机器人,参数辨识,算法franka机械臂,机器人,参数辨识,算法franka机械臂,机器人,参数辨识,算法

最小参数集

最小参数集有43个元素,如下:

franka机械臂,机器人,参数辨识,算法

实验

使用libfranka的接口对franka emika panda进行控制,实际采集的力矩如下:

franka机械臂,机器人,参数辨识,算法franka机械臂,机器人,参数辨识,算法

为了验证采集数据的正确性,我们可以用rtb进行仿真比较。可以看出,从趋势上讲力矩是可以对的上的,因此采集的数据有效。

由于采集信号中存在大量的噪音,因此需要对信号进行滤波,滤波前后对比如下:

franka机械臂,机器人,参数辨识,算法

验证

我们将滤波后的信号进行参数辨识使用,将辨识出的最小参数集代入。使用另一端轨迹可得:

franka机械臂,机器人,参数辨识,算法

辨识误差如下:

franka机械臂,机器人,参数辨识,算法

误差是由于:

  • 信号存在噪音
  • 辨识轨迹过约束
  • 没有考虑摩擦力

其中,信号噪音问题是难免的,在线情况下只能通过调节滤波器系数来进行改善,这里就不再赘述。辨识轨迹过约束是因为在轨迹规划过程中,考虑到了防碰撞等问题导致关节1关节运动不充分,信号质量不佳,可以通过轨迹规划来提升,
摩擦力可以在关节在关节7中看出,摩擦力的比重很大,因此我们对观测矩阵进行调整,将摩擦力(摩擦力包括:滑动摩擦 粘滞摩擦 和 偏执)考虑进去,考虑摩擦力模型的辨识结果如下:

franka机械臂,机器人,参数辨识,算法

可以看出,辨识结果确实更准确了。

物理一致性

在参数辨识中,我们发现一个问题,那就是辨识的参数往往与实际值不同。
这里首先给出一篇参考论文,Dynamic Identification of the Franka Emika Panda Robot With Retrieval of Feasible Parameters Using Penalty-Based Optimization,本篇论文虽然是通过逆向工程来进行参数辨识的,但是其基于物理一致性原理是可参考的。并且mdl_panda的动力学也是根据这篇论文来实现的。
物理一致性问题实质上就是优化问题,在求解最小惯量参数集的时候加上约束即可:

  • 质量>0;
  • 转动惯量的特征值满足物理一致性,可以直接参考论文里写的;
  • 质心在指定方框内。

具体的优化方式可以直接参考上述论文。
下图是,“真实的”franka的机械臂各杆质量(mdl_panda)和根据物理一致性参数优化的各杆质量。

franka机械臂,机器人,参数辨识,算法franka机械臂,机器人,参数辨识,算法

可以看出优化数据和“真实”数据还是有差异的,这个差异最核心上还是由于信号采集的干扰问题,并且mdl_panda的参数其实也是论文辨识出来的,和真实的机械臂有区别。

重力配平

通过实践我们可知,动力学中比较难以解决的一点就是信号获取,例如,速度及加速度一般需要很强的滤波才能保证动力学的稳定性,但是在线的滤波又会导致信号的滞后,但是一般位置信号的获取并不需要特别强的滤波,因此我们可以将辨识出来的重力参数加以使用,来实现重力配平的功能。
通过libfranka的接口我们可以得出一组轨迹的重力矩,同时我们使用辨识出来的重力和他进行比较。

franka机械臂,机器人,参数辨识,算法

经过比较可以看出重力可以完美的辨识出来,因此我们可以将动力学简单的用在重力配平上。
其中1和7关节由于噪音的影响并不能辨识完美的辨识出来,但是一关节由于不受重力矩影响,因此可以直接将他设为0。7关节由于质量较小,不能完美的辨识出来。这是需要后续解决的。文章来源地址https://www.toymoban.com/news/detail-785285.html

到了这里,关于【机械臂算法】基于Franka Emika Panda机械臂动力学参数辨识/系统辨识、物理一致性/物理合理性(physical consistency)研究及动力学应用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • 自动驾驶控制算法——车辆动力学模型

    考虑车辆 y 方向和绕 z 轴的旋转,可以得到车辆2自由度模型,如下图: m a y = F y f + F y r (2.1) ma_y = F_{yf} + F_{yr} tag{2.1} m a y ​ = F y f ​ + F yr ​ ( 2.1 ) I z ψ ¨ = l f F y f − l r F y r (2.2) I_zddotpsi = l_fF_{yf} - l_rF_{yr} tag{2.2} I z ​ ψ ¨ ​ = l f ​ F y f ​ − l r ​ F yr ​ ( 2.2 ) 经验公

    2024年01月18日
    浏览(57)
  • (8.1)基于牛顿-欧拉公式的动力学方程

    目录 1、坐标系的建立: 2、为什么要递推: 3、前向递推与反向递推: 1、速度和加速度的前向递推: 1.1、旋转关节的速度传递:  1.2、平移关节的速度传递:  1.3、速度变换到质心: 1.4、加速度传递:  1.5、转化为递归形式:  2、力与力矩的方向递推: 4、总结: 连杆坐

    2024年02月03日
    浏览(41)
  • 动力学约束下的运动规划算法——Hybrid A*算法(附程序实现及详细解释)

       前言(推荐读一下)    本文主要介绍动力学约束下的运动规划算法中非常经典的Hybrid A*算法,大致分为三部分,第一部分是在传统A * 算法的基础上,对Hybrid A * 算法的原理、流程进行理论介绍。第二部分是详细分析 MotionPlanning运动规划库中Hybrid A * 算法的源码,进一

    2024年02月08日
    浏览(57)
  • 基于卡尔曼滤波进行四旋翼动力学建模(Simulink&Matlab)

      💥💥💞💞 欢迎来到本博客 ❤️❤️💥💥 🏆博主优势: 🌞🌞🌞 博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️ 座右铭: 行百里者,半于九十。 📋📋📋 本文目录如下: 🎁🎁🎁 目录 💥1 概述 📚2 运行结果 🎉3 参考文献 🌈4 Matlab代码实现 文献来

    2024年02月11日
    浏览(45)
  • 机器人动力学与控制学习笔记(十七)——基于名义模型的机器人滑模控制

            滑模运动包括趋近运动和滑模运动两个过程。系统从任意初始状态趋向切换面,直到到达切换面的运动称为趋近运动,即趋近运动为的过程。根据滑模变结构原理,滑模可达性条件仅保证由状态空间任意位置运动点在有限时间内到达切换面的要求,而对于趋近运动的

    2024年02月12日
    浏览(44)
  • 机器人控制算法十之运动学与动力学:DH建模与雅可比矩阵详解

    简介: 正运动学建模 逆运动学求解 动力学-雅可比矩阵 … 1.1 标准DH建模方法 关于标准DH建模的详细说明,可参考:一文带你完全掌握机器人DH参数建模(详细步骤+实例+代码) 例:Puma560: 6自由度关节机器人,6个关节都是旋转副;前3个关节用于确定手腕参考点的位置,后3个关

    2024年02月14日
    浏览(41)
  • 机器人学基础(3)-动力学分析和力-拉格朗日力学、机器人动力学方程建立、多自由度机器人的动力学方程建立

    本章节主要包括拉格朗日力学、拉格朗日函数及建立求解、多自由度机器人的动力学方程、机器人的静力分析、坐标系间力和力矩的变换,主要结合例题进行掌握理解 动力学分析是为了研究机器人应该以多大力进行驱动,虽然根据运动学方程+微分运动可以得到机器人的位置

    2024年02月05日
    浏览(60)
  • 【现代机器人学】学习笔记七:开链动力学(前向动力学Forward dynamics 与逆动力学Inverse dynamics)

    这节的内容主要讲述机器人动力学的内容。相对于本书其他部分运动学内容相比,把动力学一下子合成了一章。看完以后有三个感受: 1.本章难度相对其他章节较大,因此需要反复去看,以求对重要内容的眼熟,不求全部记住,但只求说起某块内容时,心中有数。2.阅读时一

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

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

    2024年02月07日
    浏览(49)
  • 自动驾驶——车辆动力学模型

    A矩阵离散化 B矩阵离散化 反馈计算 前馈计算: 超前滞后反馈:steer_angle_feedback_augment 参考【运动控制】Apollo6.0的leadlag_controller解析 控制误差计算 横向距离误差计算 横向误差变化率计算 航向角误差计算 航向角误差变化率计算 参考:Apollo代码学习(三)—车辆动力学模型

    2024年02月12日
    浏览(56)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包