0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

ROS中的TF该如何使用

麦辣鸡腿堡 来源:古月居 作者:古月居 2023-11-22 17:24 次阅读

TF命令行操作

ROS中的TF该如何使用呢?我们先通过两只小海龟的示例,了解下基于坐标系的一种机器人跟随算法

小海龟跟随例程

这个示例需要我们先安装相应的功能包,然后就可以通过一个launch文件启动,之后我们可以控制其中的一只小海龟,另外一只小海龟会自动跟随运动。

** sudo apt install ros-humble-turtle-tf2-py ros-humble-tf2-tools** sudo pip3 install transforms3d

具体运行的效果如何?我们来试一试。

** ros2 launch turtle_tf2_py turtle_tf2_demo.launch.py** ros2 run turtlesim turtle_teleop_key

当我们控制一只海龟运动时,另外一只海龟也会跟随运动。

查看TF树

在当前运行的两只海龟中,有哪些坐标系呢,我们可以通过这个小工具来做查看。

$ ros2 run tf2_tools view_frames

默认在当前终端路径下生成了一个frames.pdf文件,打开之后,就可以看到系统中各个坐标系的关系了。

图片

查询坐标变换信息

只看到坐标系的结构还不行,如果我们想要知道某两个坐标系之间的具体关系,可以通过tf2_echo这个工具查看:

$ ros2 run tf2_ros tf2_echo turtle2 turtle1

运行成功后,终端中就会循环打印坐标系的变换数值了,由平移和旋转两个部分组成,还有旋转矩阵。

图片

坐标系可视化

看数值还不直观?可以试试用可视化软件来做显示:

** ros2 run rviz2 rviz2 -d **(ros2 pkg prefix --share turtle_tf2_py)/rviz/turtle_rviz.rviz

再让小海龟动起来,Rviz中的坐标轴就会开始运动,这样是不是更加直观了呢!

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 机器人
    +关注

    关注

    206

    文章

    27048

    浏览量

    201430
  • 控制
    +关注

    关注

    4

    文章

    997

    浏览量

    122151
  • ROS
    ROS
    +关注

    关注

    1

    文章

    272

    浏览量

    16686
收藏 人收藏

    评论

    相关推荐

    系统镜像Ubuntu_ROS2ROS2是什么意思,带有ROS2开发环境吗?

    请问一下,百度文库资料里面,下图所示的系统镜像Ubuntu_ROS2ROS2是什么意思,带有ROS2开发环境吗?与前面4GB版本的镜像有什么区别?
    发表于 03-01 23:06

    ROS与RPLIDAR结合使用说明及问题汇总

    的ROSpackage rplidar_ros介绍:rplidar_ros是国内第一款面向全球ROS开发者推出相应package的激光雷达,其低廉的价格大大推动了激光雷达在ROS
    发表于 09-07 16:27

    超详细 ROS安装教程

    ROS Kinetic Kame博主分别用过 Indigo 和 Kinetic,其实在使用过程差距并不大,除了极少数第三方库,只支持 Indigo版本,毕竟 Kinetic 刚刚发布,存在一些
    发表于 05-16 19:35

    如何在ROS2运行小乌龟呢

    ROS2运行小乌龟,其实主要就是安装两个工具,turtlesim和rqt。A: 安装turtlesim。输入【sudo apt update】输入【sudo apt install
    发表于 11-05 06:08

    ROS简介

    目录一、ROS简介1、什么是ROS2、ROS产生、发展和壮大的原因和意义二、在Ubuntu系统,安装对应版本的ROS软件1、确定Ubunt
    发表于 12-17 08:24

    ROSTF坐标变换如何实现

    TF功能包能干什么?TF坐标变换如何实现?
    发表于 02-14 06:29

    怎样去使用ROS的launch启动文件呢

    怎样去使用ROS的launch启动文件呢?ROS的launch启动文件怎样去使用呢?
    发表于 02-14 07:23

    ROS服务数据怎样去使用呢

    ROS服务数据是怎样去定义的?ROS服务数据怎样去使用呢?
    发表于 02-14 06:20

    怎样通过Arduino IDE直接使用ROS提供的一些特性呢

    直接使用ROS提供的一些特性。rosserial包提供了一个ROS通信协议,工作在Arduino的UART之上。它可以让你的Arduino是一个ROS节点,可以直接发布和订阅ROS消息
    发表于 07-06 11:49

    如何低成本搭建ARM+ROS的硬件载体?

    ,所以需要调整HDG2L-IoT的启动参数,将启动参数改为引导到TF空间中。市面上常见的树莓派部署ROS方案也是如此操作。2. 方案准备首先,需要用到的硬件如下所示。3. TF卡挂载Ubuntu固件修改
    发表于 10-13 12:02

    搭建ARM+ROS的硬件载体之ROS部署前的筹备工作及步骤分解

    的Ubuntu系统大概占用3.1G空间,剩余3.2G空间,在构建docker+ROS环境时可能会报eMMC空间不足的错误,所以需要调整HDG2L-IoT的启动参数,将启动参数改为引导到TF空间中。市面上
    发表于 03-09 14:11

    如何使用代码发布导航需要的传感器信息

    /PointCloud ,都和ROStf帧信息等时间相关的消息一样,带标准格式的头信息。 #Standard metadata for higher-level flow data types #sequence ID: consecuti
    发表于 05-22 10:32 397次阅读

    关于配置机器人的导航功能的教程分享

    ,却是一件较为复杂的工程。作为导航功能包使用的必要先决条件,机器人必须运行ROS,发布tf变换树,并发布使用ROS消息类型的传感器数据。
    发表于 10-12 17:21 1336次阅读
    关于配置机器人的导航功能的教程分享

    ros小车激光雷达

    些usb数据线,杜邦线啥的了。2|0 环境:ubuntu16.04 + ros kinetic部分参考代码#include #include #include
    发表于 12-16 16:51 13次下载
    <b class='flag-5'>ros</b>小车激光雷达

    ROS中Message队列介绍

    Message中的队列 在ROS中有一些复杂的消息中可以包含其他的消息,并形成消息数组。 例如在exampleHelperROSCreateSampleNetwork例子中,变量tf包含
    的头像 发表于 11-15 15:39 209次阅读
    <b class='flag-5'>ROS</b>中Message队列介绍