1.Publisher(发布者)与subscriber(订阅者)关系。
Publisher的主要作用是对于指定话题发布特定数据类型的消息。
下面是利用代码实现一个节点,节点创建一个Publisher并发布字符串“Hello world”,其详细内容如下:
#include <sstream>
#include "ros/ros.h" **1**
#include "std_msgs/String.h" **1**
int main (int argc,char **argv)
{
//ROS节点初始化
ros::init(argc,argv,"talker"); **2**
//创建节点句柄
ros::NodeHandle n; **3**
//创建一个Publisher,发布名为chatter的topic,消息类型为std_msgs::String
ros::Publisher chatter_pub=n.advertise<std_msgs::String>("chatter",1000); **4**
//设置循环的频率
ros::Rate loop_rate(10); **5**
int count=0;
while(ros::ok()) **6**
{
//初始化std_msgs::String类型的消息
std_msgs::String msg; **7**
std::Stringstream ss; **7**
ss<<"hello world"<<count; **7**
msg.data=ss.str(); **7**
//发布消息
ROS_INFO("%s",msg.data.c_str