当前位置: 首页 > news >正文

Moveit更换默认规划器KDL

1.KDL介绍

Kinematics and Dynamics Library (KDL)是MoveIt!中的默认运动学求解器。

    官方介绍:https://www.orocos.org/kdl.html
    具有六个旋转关节的串行机器人手臂的骨架。这是运动学结构的一个示例,将运动建模和规范简化为参考系相对运动的几何问题。运动学和动力学库 (KDL) 开发了一个独立于应用程序的框架,用于运动学链的建模和计算,例如机器人、生物力学人体模型、计算机动画人物、机床等。它提供了几何对象(点、框架)的类库, line,… ),各种系列的运动链(串行、人形、并行、移动、…),以及它们的运动规范和插值。

KDL是基于数值解,求解速度慢,在使用的个过程中,经常会提示规划失败、求解失败,所以我们要更换其他的求解器
2.Trac-IK

Trac-IK提供替代 KDL 中流行的反向雅可比方法的反向运动学求解器。具体来说,KDL 的收敛算法基于牛顿方法,在存在关节限制的情况下效果不佳。

一句话:基于KDL做了优化,本质还是数值解。

    TRAC-IK 同时运行两个 IK 实现。一种是对 KDL 基于牛顿的收敛算法的简单扩展,该算法通过随机跳跃检测和减轻由于联合限制引起的局部最小值。第二种是 SQP(顺序二次规划)非线性优化方法,它使用更好地处理关节限制的拟牛顿方法。默认情况下,当这些算法中的任何一个收敛到答案时,IK 搜索会立即返回。

3.Trac-IK安装配置
3.1 安装

    ubuntu20

sudo apt-get install ros-noetic-trac-ik

    1

    ubuntu18

sudo apt-get install ros-melodic-trac-ik

    1

3.2 配置

修改moveit生成的功能包中config目录下的kinematics.yaml文件内容。

替换 kinematics_solver: kdl_kinematics_plugin/KDLKinematicsPlugin (或类似)为 kinematics_solver: trac_ik_kinematics_plugin/TRAC_IKKinematicsPlugin

其他参数:

    kinematics_solver_timeout(以秒为单位的超时,例如 0.005)
    position_only_ik ARE
    solve_type可以是 Speed、Distance、Manipulation1、Manipulation2默认为Speed

不需要的参数

    kinematics_solver_attempts参数:与 KDL 不同,TRAC-IK 求解器在卡住时已经自动分重新启动
    kinematics_solver_search_resolution 也不适用

完成修改后重新运行demo.launch即可,在启动日志中若看到Trae-IK则更换成功

 


http://www.mrgr.cn/news/51895.html

相关文章:

  • web API基础
  • 【Linux】从零开始手搓 Shell (超详解)
  • 机器学习实践
  • 代码签名证书怎么申请?
  • 极化基变化后的散射矩阵
  • 我和双指针的初次亲密邂逅:那一刻心跳加速
  • pikachu靶场CSRF-post测试报告
  • leetcode中常用的enumerate用法和常用场景
  • 基于Python的自然语言处理系列(35):Transformer 模型的微调(Finetuning)
  • 3-6 AUTOSAR RTE数据一致性管理
  • Corgi Raytracing - Built-in RP Forward Deferred URP VR SPI supported 光线追踪
  • spark:Structured Streaming介绍
  • 基于ST VIPERGAN50的50W 反激隔离型智能风冷无霜冰箱电源解决方案
  • Elasticsearch:Redact(编辑) processor
  • 【系统配置】信创系统配置文件保护与防篡改 _ 统信 _ 麒麟 _ 方德
  • MOE论文详解(3)-Switch Transformers
  • 猫头虎 分享:Python库 BeautifulSoup 的简介、安装、用法详解入门教程
  • Redis 常用指令详解
  • 基于Datawhale开源的量化投资学习指南(2):宏观经济学基础概念
  • MySQL - Navicat自动备份MySQL数据