package(软件包),是ROS项目的基本组成单位,每个package都有其特定的实现功能。本文以在ROS中自己从零开始实现节点通信为例,讲解如何编写自己的package。
1、创建工作区,即工作目录:
mkdir -p ~/roswhite_ws/src
这里使用 -p 关键字,可以创建两层目录,即roswhite和子目录src。
我们自己创建的package或者从别人那里拷贝过来的package必须要放在src目录下。
2、创建package
进入src
cd ~/roswhite_ws/src
创建package目录
catkin_create_pkg roswhite std_msgs roscpp
roswhite是package名称(最好不要有大写), std_msgs(ROS原始数据类型)和roscpp(如果用python编程,就用rospy)是依赖项。
3、编写cpp文件
进入刚刚创建的package目录下
cd ~/roswhite_ws/src/roswhite/src
使用vim创建cpp文件,这里我们需要两个文件,一个用于发布递增数字(topic_publisher.cpp),另一个用于订阅已经发布的数字(topic_subscribler.cpp)。
1) vim topic_publisher.cpp
内容如下:
#include "ros/ros.h"
#include "std_msgs/Int32.h"
int main(int argc, char **argv)<