listener.py文件代码
#!/usr/bin/env python
#指定使用python解释代码
import rospy #导入rospy包,rospy是ROS的python客户端
from std_msgs.msg import String #导入python的标准字符处理库;String是一个函数可以另外赋值。
def callback(data):#定义callback返回函数
rospy.loginfo(rospy.get_caller_id()+'I heard%s',data.data)#日志信息输出接收到的主题信息
def listener():#定义接收者函数
rospy.init_node('lisener',anonymous=True)#初始化节点lisener节点,要求每个节点名称唯一避免冲突
rospy.Subscriber('chatter',String,callback)#使用订阅函数订阅chatter主题当有新内容时使用callback函数处理
rospy.spin()#保持节点运行,直到节点关闭,不像roscpp rospy.spin不影响订阅的回调函数,因为回调函数有自己的线程
if __name__ == '__main__':
listener()
#代码测试使用roscore启动rosmaster,
#使用rosrun 包名 listener.py启动接收订阅
« ubuntu修改USB权限
|
使用python在ros中发布主题消息»
|