功能包创建
catkin_create_pkg pkg_name std_msgs rospy roscpp
// std_msgs rospy roscpp为相关依赖
话题发布者
一般包含如下要素:
- ROS节点初始化
- 创建节点句柄
- 穿件publisher
- 设置循环频率
// ROS节点初始化
ros::init(argc, argv, "string_publisher");
// 创建节点句柄
ros::NodeHandle n;
// 创建一个Publisher,发布名为chatter的topic,消息类型为std_msgs::String; chatter为话题名,
// 1000表缓冲区大小
ros::Publisher chatter_pub = n.advertise<std_msgs::String>("chatter", 1000);
// 设置循环的频率
ros::Rate loop_rate(10);
还需要在CMakeLists.txt中编译
在CMakeLists中的install上方添加
- 设置需要编译的代码和生成的可执行文件
- 设置链接库
add_executable(string_publisher src/string_publisher.cpp)
target_link_libraries(string_publisher ${catkin_LIBRARIES})
其完整代码如下:
/**
* 该例程将发布chatter话题,消息类型String
*/
#include <sstream>
#include "ros/ros.h"
#