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

2023-11-29 / 1 评论 / 1907 阅读
温馨提示:
本文最后更新于 2023-11-29,已超过半年没有更新,若内容或图片失效,请留言反馈。

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

  • 打开浏览器,输入www.github.com

image.png

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

  • 打开一个终端程序,输入以下命令,回车,建立一个文件夹
mkdir catkin_ws
  • 然后执行以下命令,进入这个文件夹,再建立一个src文件夹,这个src里存放的酒店程序源代码这类资源材料。
cd catkin_ws
mkdir src

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

  • 执行以下命令,进入子目录src
cd src

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

  • 在终端程序里输入以下命令,回车然后输入密码
sudo apt install git

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

  • 在Github的搜索框填入wpr_simulation,点击下图框选的这一条结果

a08ae3f2e30a48271f148ed216e0a71.png

  • 进入页面以后,点击下图右上角的绿色的Code图标

image.png

  • 点击Code图标,会弹出一个小窗体,中间有一个网址,我们点一下网址右的复制按钮

2601e852625d8c184ddfaca244ba4ac.png

  • 返回终端程序界面,在src目录下输入以下命令
git clone https://github.com/6-robot/wpr_simulation.git

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

2ac01f1933fae27f8942befbd0aa88e.png

  • 在src目录下输入以下命令,查看wpr_simulation下的详细文件信息
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
  • 删除下图框选的路径前的turtle/,仅仅保留cmd_vel,如下图:

9d862e00c3847c2ce6502ed3bd34350.png

  • 上下左右滑动控制滑条,可以看到,小乌龟的方向和速度可以通过滑条来控制(文末有视频)

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

  • 在终端程序中输入以下命令,回车
gedit ~/.bashrc
  • 来到文件的末尾,新增加一行输入以下内容
 ~/catkin_ws/devel/setup.bash

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

fcb37c32f910b52c8cdeb1022900229.png

评论一下?

OωO
取消
    1. 头像
      EdwardBiago
      沙发
      test gooogle [url=http://google.pl/]http://google.pl/[/url]
      回复