publisher
publisher节点用于不断广播信息
例:创建一个节点,不断发布信息:Tom 18 male
代码如下:
/*
*发布/person_info_pub话题,自定义消息类型learning_topic::Person
* */
#include <ros/ros.h>
#include "learning_topic/Person.h"
int main(int argc, char **argv)
{
// init node
ros::init(argc, argv, "person_publisher");
// 创建节点句柄
ros::NodeHandle n;
// 创建一个Publisher,
// 发布名为/person_info的topic
// 消息类型为learning_topic::Person
// 队列长度10
ros::Publisher person_info_pub = n.advertise<learning_topic::Person>("/Person_info", 10);
// 设置循环频率
ros::Rate loop_rate(1);
int count = 0;
// 开始发布
while(ros::ok()){
// 初始化learning_topic::Person类型的消息
learning_topic::Person person_msg;
person_msg.name = "Tom";
person_msg.age = 18;
person_msg.sex = learning_topic::Person::male;
// 发布消息
person_info_pub.publish(person_msg);
ROS_INFO("Publish Person Info:name:%s, age:%d, sex:%d",
person_msg.name.c_str(), person_msg.age, person_msg.sex);
// 按照循环频率延时
loop_rate.sleep();
}
}
博客介绍了机器人相关内容,涉及publisher和subscriber节点。publisher节点用于不断广播信息,还给出创建节点发布信息“Tom 18 male”的示例。
668

被折叠的 条评论
为什么被折叠?



