一、前导
在学习如何创建工作空间和功能包前,我们先来玩一下ROS上的一个小游戏——“小海龟”
第一步:打开ubuntu,进入虚拟机
第二步:卡开控制终端,快捷键:Ctrl+Alt+T
第三步:启动rosmaster,即在终端输入命令行:roscore(输入后按回车)
如上图,就是rosmaster启动成功的显示。
第四步:(重新打开一个新的终端,在新的终端中输入命令行)打开海龟节点,即在终端输入命令行:rosun turtlesim turtlesim_node(输入后按回车)
成功启动节点后,系统就会弹出一个海龟界面,如上图所示。
第五步:(重新打开一个新的终端,在新的终端中输入命令行)打开海龟的键盘控制节点,即在终端输入命令行:rosrun turtlesim turtle_teleop_key(输入后按回车)
输入后如上图显示,这样就可以使用你电脑的方向键(上下左右)来控制海龟的移动了。这里如果按下键盘海龟没有反应,可以用鼠标点一下上面启动键盘控制节点的界面,再按下键盘的方向键就可以控制海龟的移动了。
海龟移动效果如下:
到这里,我们的海龟小游戏就结束了。在实现海龟控制的过程中,我们就体验过了一次如何使用功能包中的节点在工作空间中实现对海龟的控制。下面,我们就来具体的看一下如何自己来创建工作空间和功能包。
二、创建工作空间
工作空间就是一个存放工程开发相关文件的文件夹。
1、工作空间的组成
src:代码空间(source space),用来存放功能包的相关代码,也就是实现相关节点的代码;
build:编译空间(build space),用来存放工作空间编译过程中产生的缓冲信息和中间文件;
devel:开发空间(development space),用来放置编译生成的可执行文件;
install:安装空间(install space),编译成功后,可以使用make install命令将可执行文件安装到该空间中,运行该空间中的环境变量脚本,即可在终端中运行这些可执行文件。(安装空间不是必需的,很多工作空间中可能没有改文件夹)
2、工作空间的创建
工作空间的创建主要有四部分:创建工作空间、编译工作空间、设置环境变量、检查环境变量。、
创建步骤:
·首先,打开终端,快捷键:Ctrl+Alt+T
(1)创建工作空间
①mkdir catkin_ws
在终端中输入上述命令行,创建一个叫“catkin_ws”的工作空间文件夹
②cd catkin_ws/
在终端中输入上述命令行,将终端跳转到工作空间中。
④mkdir src
在终端中输入上述命令行,创建一个“src”文件夹。
⑤cd src/
在终端中输入上述命令行,将终端跳转到"src"中。
⑥catkin_init_workspace
在终端中输入上述命令行,对工作空间进行初始化。(这里是为下面的工作空间的编译做准备,在完成编译之前,工作空间只是一个普通的文件夹而已)
这里以创建一个名为“learning_ws”的工作空间为例,创建过程如下:
(2)编译工作空间
①cd catkin_ws/
在终端中输入上述命令行,将终端跳转到工作空间下。
②catkin_make
在终端中输入上述命令行,对工作空间进行编译。(到这一步,工作空间才真正意义上成为一个“工作空间”。)
创建过程如下:
(3)设置环境变量
①source devel/setup.bash
在终端中输入上述命令行,对环境变量进行设置。(只有对环境变量进行设置,工作空间才能正常使用,很多人第一次就是忘记设置环境变量才创建失败的,比如说我哈哈哈)
(4)检查环境变量
①echo $ROS_PACKAGE_PATH
在终端中输入上述命令行,检查环境变量是否设置成功。
操作过程如下:
到这里,我们的工作空间就创建完成了。
由于内容过多,篇幅过长。创建功能包部分就到下一篇文章里讲解!