ROS教程合集(3)—在Github上寻找ROS软件包、编译并使用

登发 发布于 阅读:3863 ROS技术

除了官方的应用商店,在全球最大的开源网站Github上,也蕴藏了许多优质的ROS软件包。

image.png

上图便是Github的官方网站,ROS系统本身以及我们在ROS Index上看到的大部分软件包都在Github上开放了源代码,与官方应用软件商店不同的是,Github上的软件包都是以源代码的形式存在,下载后还需要编译才能运行,所以我们需要先建立一个工作空间来进行源代码编译,所谓工作空间,就是符合某种要求的目录结构,编译器会按照这个目录结构检索源代码,我们来看看怎么来建立一个这样的目录结构。

mkdir catkin_ws
cd catkin_ws
mkdir src

这样,一个工作空间就建立好了,我们的源代码工程需要放在子目录src里面,才能正常编译。

cd src

然后就可以从giehub上下载源代码了,在下载之前,我们还需要下载一个工具。

sudo apt install git

好,所有工作准备完成后,我们试着在Github上下载一个源码包,对他进行编译,然后把它运行起来。

a08ae3f2e30a48271f148ed216e0a71.png

image.png

2601e852625d8c184ddfaca244ba4ac.png

git clone https://github.com/6-robot/wpr_simulation.git

出现以下结果证明从Github下载源代码成功。

2ac01f1933fae27f8942befbd0aa88e.png

ls
cd wpr_simulation/
ls

命令执行结果如下:

7e6a4243e1f058c91d1f719f91688db.png

打开文件夹查看结果如下,我们看到的基本上是一个软件包的全部结构了。

c3318c420dc7cba562f06d13430f143.png

我们先来了解以下scripts文件夹的用途,scripts文件夹用于放置脚本文件和python程序,用来完成一些使用频率并不高的操作,比如安装依赖包或者为实体机器人映射端口。

6772759d626c6ec901df781097ec293.png

从上图我们可以看到,这个软件包的scripts文件夹放置了三个安装脚本文件,分别针对kinetic、melodic、noetic三个版本,如果缺失这些文件,我们在安装和编译软件的过程中可能会会出现问题,因此,我们需要执行一下对应的脚本。

cd scripts
./install_for_noetic.sh
cd
cd catkin_ws
catkin_make

这就开始对src目录里的所有源代码工程进行编译了,注意catkin_make命令需要运行在catkin_ws文件夹下,而不是src子目录。

a38b7e24f3bcea29350928f8f416dd3.png

可以看到,编译已经完成,我们来运行一下软件包里的一些功能,首先需要使用source指令把这个catkin_ws工作空间里的环境参数加载到终端程序中。

source ~/catkin_ws/devel/setup.bash
roslaunch wpr_simulation wpb_simple.launch

这时候就会出现如下图所示的三维界面,我们可以看到界面中有一个机器人和一个书柜,这就是后面我们经常会用到的仿真环境Gazebo。

a03e456d5ac9e76edf39f8508c6572d.png

我们可以用前面下载的机器人速度控制软件来来驱使它移动。

rosrun rqt_robot_steering rqt_robot_steering

9d862e00c3847c2ce6502ed3bd34350.png

到这里,我们大致体验了从Github下载软件包源代码,然后编译、运行的整个过程,以后我们自己编写的源代码,也可以放在这个catkin_ws工作空间中,通常我们会把设置工作空间环境的source指令添加到终端程序初始化的脚本~/bashrc文件中,这样每次打开终端就可以马上运行ROS程序了,免得每次都忘记设置,我们看看怎么操作。

gedit ~/.bashrc
 ~/catkin_ws/devel/setup.bash

如下图,点击保存按钮保存配置,这样就设置完成了。

fcb37c32f910b52c8cdeb1022900229.png

收到1条评论
avatar
EdwardBiago 1 年前
test gooogle [url=http://google.pl/]http://google.pl/[/url]