0
点赞
收藏
分享

微信扫一扫

手把手教会:ROS——机器人操作系统工作空间和功能包的创建02(笔记02)

        在上一篇文章中,我已经把ROS的工作空间的创建步骤进行了介绍。接下来,我们就来看一下ROS的功能包是如何创建的。

一、功能包的组成

        对于功能包我们可以理解为是一个存放在ROS工作空间中的“src”文件夹中的一个由include、src两个文件夹和Package.xm、Cmakelists.txt两个文件组成的文件夹。

1、功能包的组成

(1)src:用来存放实现功能包功能的包括代码(主要是cpp文件);

(2)Package.xml:描述功能包属性的信息;

(3)Cmakelists.txt:记录了功能包的编译规则;

(4)include:用来存放src中代码的头文件。

(5)scripts:用来存放实现功能包功能的py文件(这个文件夹需要自己建立,主要是用来把C++和Python的代码区分出来,本质功能跟src文件夹一样)。

二、功能包的创建

1、功能包的创建步骤

        功能包的创建步骤主要由功能包的创建功能包的编译两部分组成。

        这里我们来创建一个能够实现控制小海龟进行转圈的功能包。

(1)功能包的创建

①cd catkin_ws/src(这里的工作空间名字要根据自己创建的工作空间名字进行更改

        打开终端,输入上述命令行,将终端跳转到工作空间下。

        我创建的工作空间是“learning_ws”所以我需要输入的指令为:cd learning_ws/src

② catkin_create_pkg <package_name> [depend1] [depend2] [depend3]

        上述指令是创建功能包的命令行,<package_name>是我们要创建的功能包的名字,[depend1] [depend2] [depend3]是我们创建的功能包中所需要使用到的其他功能包。

        具体输入的指令为:catkin_create_pkg test_pkg std_msgs rospy roscpp

 

(2)功能包的编译

        重新打开一个终端

①cd catkin_ws(这里的工作空间名字要根据自己创建的工作空间名字进行更改

        打开终端,输入上述命令行,将终端跳转到工作空间下。

        我创建的工作空间是“learning_ws”所以我需要输入的指令为:cd learning_ws

②catkin_make

        打开终端,输入上述命令行,对工作空间进行编译(这里主要是对功能包进行编译,虽然现在功能包里还没有代码)。

 

③source catkin_ws/devel/setup.bash(重新打开一个终端

        打开终端,输入上述命令行,设置功能包所需要的环境变量。

        我创建的工作空间是“learning_ws”所以我需要输入的指令为:source learning_ws/devel/setup.bash

        这里可以对环境变量的设置是否成功进行检验,可以使用上篇文章中的检查指令:echo $ROS_PACKAGE_PATH

 

三、小结

        完成上面的步骤,我们就创建好了一个功能包。前面我们提到要创建一个可以实现小海龟进行转圈的功能包,但是这里并没有向大家展示代码的编写,这一部分我将在下一篇文章对大家进行介绍。

        最后,也希望各位想要学习ROS的小伙伴一起加油,冲冲冲!

举报

相关推荐

0 条评论