ROS学习笔记:tf的学习与使用(一)

本文详细介绍了ROS中tf坐标变换的使用,包括一个简单的tf转换演示,如何编写tf broadcaster程序来发送坐标变换,以及创建tf listener来接收和处理变换信息。在实践中,可能会遇到由于通信延迟导致的查找目标帧不存在的问题,这需要正确理解和处理。
摘要由CSDN通过智能技术生成

ROS机器人的开发过程中,经常需要用到tf坐标变换。简单来讲,tf定义了两个不同坐标系之间的旋转变换关系。

1. 一个简单的demo

$ roslaunch turtle_tf turtle_tf_demo.launch
    这时候屏幕中会出现两个turtle, 可以通过控制前面的turtle来引导后面的turtle

$ rosrun turtlesim turtle_teleop_key
$ evince frames.pdf

从上面我们可以清楚地看到三个坐标系之间的关系。

我们还可以使用tf_echo来看两个坐标系之间是如何变换的

rosrun tf tf_echo [reference_frame] [target_frame]


也可以通过rviz来查看坐标系的变换及移动情况。

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

2.写一个简单的tf broadcaster程序

 $ catkin_create_pkg learning_tf tf roscpp rospy turtlesim
 $ catkin_make
 $ source ./devel/setup.bash
 $ roscd learning_tf
src/turtle_tf_broadcaster.cpp

https://raw.githubusercontent.com/ros/geometry_tutorials/hydro-devel/turtle_tf/src/turtle_tf_broadcaster.cpp

  16 br.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值