ROS Indigo learning_tf-01 坐标系变换(tf)广播员 (Python版)
我使用的虚拟机软件:VMware Workstation 11
使用的Ubuntu系统:Ubuntu 14.04.4 LTS
ROS 版本:ROS Indigo
1. 什么是 tf :
tf : 坐标系变换。
想要确定一个物体在什么位置,最好的方法是找一个坐标系,我们就可以得到这个物体的坐标,所以就确定了这个物体的空间位置。tf 库就是为这个而生的。
你可能还是没有明白究竟是什么意思,下面我们来写个程序,看看 tf 这个库到底是干什么的:
2. 我们下面编写一个程序:
程序的功能:
(我们先启动一个小海龟节点) 当这个小海龟在小海龟窗口中的 pose(pose:姿态,包括平移和旋转)发生了改变的时候,我们发布这个小海龟在这个小海龟窗口中的pose信息。
这就是我们下面这个程序要做的事情,简单的说就是编写一个:当小海龟坐标改变时,向外界广播 ( broadcast ) 小海龟的坐标(pose )的程序。(将坐标换成 pose 更为准确。)
2.1. 好,我们先创建一个程序包:learning_tf,用来学习 tf 的。
$ cd ~/catkin_ws/src
$ catkin_create_pkg learning_tf tf roscpp rospy turtlesim
$ cd ~/catkin_ws
$ catkin_make