Ros机器人之(五)订阅subscriber消息
这个讲的是订阅节点消息。
learning_topic里src下创建一个cpp文件
touch pos_subscriber
内容如下:
#include<ros/ros.h>
#include "turtlesim/Pose.h"
void posecallback(const turtlesim::Pose::ConstPtr& msg)
{
ROS_INFO("Turtle pose: x=%0.6f,y=%0.6f ",msg->x,msg->y);
}
int main(int argc,char **argv)
{
ros::init(argc,argv,"pos_subscriber");
ros::NodeHandle n;
ros::Subscriber pose_sub= n.subscribe("/turtle1/pose",10,posecallback);
ros::spin();
return 0;
}
完成后在Cmakelist中添加:
#消息订阅
add_executable(pos_subscriber src/pos_subscriber.cpp)
target_link_libraries(pos_subscriber ${catkin_LIBRARIES})
编译
catkin_make
source devel/setup.bash
然后运行小乌龟
roscore
rosrun turtlesim turtlesim_node
开启订阅
rosrun learning_topic pos_subscriber
运行上一篇讲的发步消息,会看到小乌龟的位置实时传回终端。
rosrun learning_topic publisher
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)