描述:本教程介绍如何用 C++ 编写发布者和订阅者节点。
node: 表示连接到 ROS 网络的可执行文件。
总结
关于发布:
1.包含相应的头文件
2.定义节点句柄和发布器,要指明发布的数据类型,话题和缓存队列大小
3.定义一个相应数据类型的对象并给其成员赋值
4.发布消息
参考:
#include "std_msgs/String.h"
...
ros::NodeHandle nh;
ros::Publisher chatter_pub = n.advertise<std_msgs::String>("chatter", 1000);
std_msgs::String msg;
msg.data = 1;
chatter_pub.publish(msg);
关于订阅:
1.包含相应的头文件
2.定义节点句柄和订阅器,要指明订阅器订阅的话题,缓存队列大小和回调函数名
3.编写回调函数,回调函数的形参数据类型一定要对应正确的数据类型
4.进入循环
参考:
#include "ros/ros.h"
#include "std_msgs/Int8.h"
void chatterCallback(const std_msgs::String::ConstPtr& msg)
{
...
}
int main(int argc, char *