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

MoveIt2中使用trac_ik

文章目录

  • 1.下载trac_ik的源码
  • 2.安装 NLopt library
  • 3.编译源码
  • 4.使用
  • 4.1.已经配置好的项目
  • 4.2.新使用moveIt_setup_assistant进行配置时

在ros1+moveit1中,使用trac_ik是很简单的一件事情:【TRAC-IK Kinematics Solver】
但是在Ros2中,无论MoveIt2也好,还是trac_ik也好,都没有提供标准的trac_ik集成(使用)方法。
不过有个大神他基于trac_ik的源码实现了功能:【aprotyas / trac_ik】
使用起来也挺方便

1.下载trac_ik的源码

将【aprotyas /trac_ik】的源码压缩包下载下来,放到一个文件夹中。我这里放在trac_ik文件夹中。
然后将解压后的东西放在src文件夹中。
在这里插入图片描述

2.安装 NLopt library

安装过程参考:【 stevengj / nlopt 】

3.编译源码

colcon build

在这里插入图片描述
在编译时,出现这个问题:

‘const IKCallbackFn’ {aka ‘const class std::function<void(const geometry_msgs::msg::Pose_<std::allocator >&, const std::vector<double, std::allocator >&, moveit_msgs::msg::MoveItErrorCodes_<std::allocator >&)>’} has no member named ‘empty’; did you mean ‘_M_empty’?

在这里插入图片描述原因据chatgpt说是std::function的empty()函数是在c++14才引入的,而我目前使用的貌似是c++11的std库。
在这里插入图片描述真正的原因作者回复了:【 Ros2 plugin #34 】
主要是之前的库是boot::function,现在改成了std::function。因此,需要改一下
在这里插入图片描述

     - if (!solution_callback.empty())+ if (solution_callback)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xQocUOL7-1685325527159)(hbae4.png)]

4.使用

到我们自己的moveit项目中,source一下trac_ik的setup.bash
在这里插入图片描述

4.1.已经配置好的项目

然后按照这里,在我们之前用moveit_setup_assistant创建的配置文件中,将原来的:
kinematics_solver: kdl_kinematics_plugin/KDLKinematicsPlugin
更改为:
kinematics_solver: trac_ik_kinematics_plugin/TRAC_IKKinematicsPlugin
在这里插入图片描述

4.2.新使用moveIt_setup_assistant进行配置时

在这里插入图片描述
最后对我们自己的moveit项目colcon build一下,然后就可以使用trac_ik来规划路径了。

http://www.lryc.cn/news/89318.html

相关文章:

  • 搭建服务器的主流中间件有哪些?如何在外网访问内网的服务?
  • MapperFacade使用
  • @开源爱好者,字节跳动这项技术,正式宣布开源了
  • React学习笔记八-受控与非受控组件
  • gcc编译
  • 华为云服务器租用费用及CPU性能(1核2G/2核4G/4核8G)
  • Redis---事务管道
  • Python的内置数据类型(通过故事来学习)
  • 继瑞吉外卖后的又一个项目——SpringBoot+Vue的前后端博客系统
  • 2023暑期实习历程总结
  • UART-STM32
  • jetson nano csi摄像头 tensorrt 运行yolov8检测
  • 提升国际品牌影响力:小企业海外网红营销实战指南
  • 从零开始的力扣刷题记录-第三十九天
  • PDPS教程:机器人工作站导出为JT格式文件操作方法
  • 【面试】为什么Mysql用B+树做索引而不用B-树或红黑树
  • 教你如何选择真正有用的防关联指纹浏览器
  • 某程序员哀叹:月薪四五万,却每天极度焦虑痛苦,已有生理性不适,又不敢裸辞,该怎么办?
  • 不愧是腾讯出来的,太厉害了...
  • 2023年上半年系统集成项目管理工程师上午真题及答案解析
  • psd文件丢失了怎么恢复?分享原因及对应恢复方法
  • 【Netty】 工作原理详解(十一)
  • SQL面试必备:100道高频考题解析
  • 基于区域的图像分割
  • 【Python json】零基础也能轻松掌握的学习路线与参考资料
  • 大数据开发之Hive案例篇8-解析XML
  • Sentinel降级规则
  • 基于非靶向和靶向代谢组学分析婴幼儿血管瘤的氨基酸代谢
  • 程序员困局:去大城市进大厂却买不了房,回老家又没有高薪工作…
  • 数字化转型下企业 IT 发展趋势-大企业自主研发,中小企业上云