ROS-创建工作空间与功能包

这里写目录标题

  • 一、工作空间的组成与结构
  • 二、创建工作空间
  • 三、创建功能包
  • 四、设置环境变量
  • 五、功能包的package.xml文件和CMakeLists.txt文件

一、工作空间的组成与结构

工作空间的组成:
src用于存放功能包源码;
build用于存放编译过程中的文件,一些二进制文件。我们一般用不到build;
devel是存放开发过程中的一些文件;
install是存放开发完成后的一些文件。
ROS-创建工作空间与功能包_第1张图片
工作空间的结构:

ROS-创建工作空间与功能包_第2张图片

二、创建工作空间

1、创建工作空间
其中,catkin_ws是我们所命名的工作空间的名字
catkin_init_workspace是初始化,经过初始化catkin_ws才真正意义上成为了工作空间。

$ mkdir -p ~/catkin_ws/src
$ cd ~/catkin_ws/src
$ catkin_init_workspace

2、编译工作空间
$ catkin_make语句产生devel和build文件夹;
$ catkin_make install产生install文件夹。

$ cd ~/catkin_ws/
$ catkin_make
$ catkin_make install

3、经过1、2步的操作之后,结果如下:
ROS-创建工作空间与功能包_第3张图片

三、创建功能包

创建工作空间下的src下的功能包。
创建功能包:
其中,catkin_create_pkg是创建功能包的命令;
test_pkg是我们命名的功能包的名称;
std_msgs、rospy、roscpp分别是test_pkg所依赖的其他功能包,包括:标准功能包、python程序、cpp程序。

$ cd ~/catkin_ws/src
$ catkin_create_pkg test_pkg std_msgs rospy roscpp

编译功能包:

$ cd ~/catkin_ws
$ catkin_make
$ source ~/catkin_ws/devel/setup.bash

注:
同一个工作空间下,不允许存在同名功能包
不同工作空间下,允许存在同名功能包

四、设置环境变量

如果想运行功能包下的某一程序,得需要先设置好环境变量。
设置环境变量:

$ source devel/setup.bash

检查环境变量:
环境变量ROS_PACKAGE_PATH的作用是,查找ROS所有功能包的路径。
echo是打开环境变量。

$ echo $ROS_PACKAGE_PATH

五、功能包的package.xml文件和CMakeLists.txt文件

在功能包中有如下文件和文件夹:
ROS-创建工作空间与功能包_第4张图片
package.xml文件是记录功能包的基本信息,包括:名字、描述、依赖等等:
ROS-创建工作空间与功能包_第5张图片

CMakeLists.txt文件作用是描述功能包的编译规则:
ROS-创建工作空间与功能包_第6张图片

你可能感兴趣的:(ROS,ROS)