ROS入门21讲笔记——P17

本文档详细介绍了ROS中关于坐标变换的概念,通过乌龟模拟示例展示了如何使用tf进行坐标系转换。在学习过程中,作者遇到了环境配置问题并提供了解决方案,包括修复launch文件错误和解决view_frames工具的数据类型错误。此外,还提到了tf关系的查看工具,如tf_echo和rviz,并展示了如何利用这些工具理解两个海龟坐标系之间的关系。
摘要由CSDN通过智能技术生成

【古月居】古月·ROS入门21讲 | 一学就会的ROS机器人入门教程_哔哩哔哩_bilibili还原最好的ROS入门体验,起航机器人开发之路!ROS入门21讲升级版加入课后考试、定制证书及新增彩蛋2讲,点击“古月居”微信公众号菜单栏 —“古月学院”即可报名;课件、源码下载方式:关注“古月居”微信公众号,回复“ROS入门21讲”获取,古月居网站新增泡泡版块,在这里我会和大家进行课程答疑,交流讨论。https://www.guyuehome.com/bubble/indexhttps://www.bilibili.com/video/BV1zt411G7Vn?p=17本讲用乌龟的例子介绍了ROS中的坐标变换。

首先终端运行

$ roslaunch turtle_tf turtle_tf_demo.launch 

报错了,

/usr/bin/env: “python”: 没有那个文件或目录

根据这个方法可以改正

ROS noetic [turtle1_tf_broadcaster-4] process has died_tanmx219的博客-CSDN博客

 再次运行

会出现两个小海龟,用方向键控制一个海龟的运动,另一只会跟着运动

 .launch文件是一个脚本,可以把很多节点的启动写进去,一次性启动多个节点。

用tf的小工具可以看到tf关系,这个小工具会在根目录下生成pdf文件,显示tf关系

$ rosrun tf view_frames

报错了,而且根目录下没有pdf文件。显示是与数据类型有关的错误,用下面的方法可以解决。

view_frames中错误: cannot use a string pattern on a bytes-like object_Daminate的博客-CSDN博客

重新运行会出现pdf文件

 world是全局坐标系,两个海龟可以抽象为两个坐标系turtle1和turlte2,一只海龟追逐另一只海龟的原理就是让两个坐标系重叠。

除了view_frames这个工具,还有两个工具可以看到坐标系之间的关系。

命令行工具

jw@Z8:~$ rosrun tf tf_echo turtle1 turtle2
At time 1646446170.740
- Translation: [-0.052, -0.172, 0.000]
- Rotation: in Quaternion [0.000, 0.000, 0.597, 0.802]
            in RPY (radian) [0.000, -0.000, 1.280]
            in RPY (degree) [0.000, -0.000, 73.316]
At time 1646446171.476
- Translation: [-0.035, -0.118, 0.000]
- Rotation: in Quaternion [0.000, 0.000, 0.597, 0.802]
            in RPY (radian) [0.000, -0.000, 1.280]
            in RPY (degree) [0.000, -0.000, 73.316]

另一个是rviz可视化工具

终端输入

 $ rosrun rviz rviz -d 'rospack find turtle_tf' /rviz/turtle_rviz.rviz

 图中两个坐标系代表了两只海龟。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值