ROS Indigo learning_tf-02 编写一个 监听器 程序 (Python版)
我使用的虚拟机软件:VMware Workstation 11
使用的Ubuntu系统:Ubuntu 14.04.4 LTS
ROS 版本:ROS Indigo
1. 这一节要做的事情:
上一节我们已经编写了一个广播员的程序,下面我们编写一个监听器程序来监听广播员发布的小海龟的坐标系信息:
监听器程序:利用广播员程序广播的坐标信息,在同一个窗口中,有2只小海龟,我们控制 小海龟1 ,让 小海龟2 自动跟随 小海龟1 运行。
2. 程序如何实现:
这个监听器,监听广播员发出的广播(turtle1 和 turtle2 之间坐标系的变化信息),然在同个运算,把结果发布给 turtle2 订阅的 turtle2/cmd_vel
话题上,从而控制 turtle2 运动。
废话少说,开始编程。
2.1. 将路径切换到 learning_tf
软件包,在 nodes
文件夹里创建一个 turtle_tf_listener.py
文件:
$ roscd learning_tf
$ gedit nodes/turtle_tf_listener.py
2.2. 将下面的代码添加进去:
#!/usr/bin/env python
import roslib
roslib.load_manifest('learning_tf')
import rospy
import math
import tf
import geometry_msgs.msg
import turtlesim.srv
if __name__ == '__main