新建   文章列表   相册  后台  网摘
 

Kreos

Kreos 无所不能

暮雨-MATLAB与ROS联合仿真——ROS环境搭建及相关准备工作(上下)(学习笔记)

MATLAB与ROS联合仿真——ROS环境搭建及相关准备工作(上)

news2026/3/28 9:07:50

   本篇文章主要介绍在安装完ROS后,在进行MATLAB与ROS联合仿真之前,需要进行的一些环境搭建以及准备工作,主要分为 创建ROS工作空间及功能包、必备功能包安装、安装Gazebo11、导入实验功能包至工作空间、安装Visual_Studio_Code(选做)、常用便捷工具安装(选做) 六部分。

   本部分内容共分为上下两篇,上篇包括创建ROS工作空间及功能包和必备功能包安装这两部分,下篇包括、安装Gazebo11、导入实验功能包至工作空间、安装Visual_Studio_Code(选做)、常用便捷工具安装(选做)这四部分。


在这里插入图片描述


   第一部分 创建ROS工作空间及功能包

   1、工作空间用来存放工程的文件,里面的src文件夹是用来存放功能包的,功能包的配置文件等,build文件夹用来存放编译过程中产生的一些中间文件,devel文件夹存放编译生成的一些可执行文件,一些库,一些脚本等,install文件夹主要用来存放安装的一些文件。

 

   2、创建工作空间:

   (1)在主文件夹下用mkdir命令创建一个子文件夹,取名为catkin_ws ,这个名字是可以自己起的(为后续代码移植方便,建议不要修改名字),后面的src是不能变的,接下来要利用命令cd进入到该文件夹下,然后用catkin_init_workspace命令将该文件夹变为ros工作空间的属性

   初次接触时,也许你并不理解以上这段话,你只需要按顺序执行下面三条指令就可以了

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

在这里插入图片描述


   (2)创建完工作空间后,要对工作空间进行编译,编译时需要在工作空间的根目录下进行编译,也就是我们需要先进入catkin_ws文件夹下,再利用catkin_make命令对其进行编译,这个命令会编译src下面所有功能包的源码,并将结果放到devel文件夹下,编译后生成了build和devel这两个文件夹,这个命令不能生成install文件夹,需要用catkin_make install命令来生成install文件夹

   以上这段话,同样对应三条指令,只需要按顺序执行下面三条指令就可以了

cd ~/catkin_ws/
catkin_make
catkin_make install

在这里插入图片描述


   (3)为了让系统找到我们的工作空间,还需要设置环境变量,执行以下语句:

source devel/setup.bash

   (4)设置环境变量之后,输入以下指令去检查一下

echo $ROS_PACKAGE_PATH

   3、到这里工作空间就创建完成了,为方便后续的开发,这里可以多做一步操作,当我们改变工作空间里的内容之后,都需要使用catkin_make命令来编译,编译完成后接下来就是利用命令source devel/setup.bash去设置环境变量,为了不在每次运行时都去设置环境变量,可以将该语句添加到主文件下的.bashrc文件中,该文件是隐藏文件,在主文件夹下,需要按ctrl+h才能显示出来,打开后,在最后添加source devel/setup.bash ,添加时候需要修改一下路径改成该工作空间下的路径,比如我应该添加的是source /home/jzx/catkin_ws/devel/ setup.bash 重新启动终端生效,有了这一步操作后,就不用每次都运行source devel/setup.bash了,而且可以在任意路径下运行rosrun命令

   4、创建功能包(选做)

   在创建代码的时候一定要创建一个功能包,功能包是ROS里面放置源码的最小单元,所有的源码必须放到功能包下面,不允许直接放在src文件夹下,用catkin_create_pkg命令创建功能包,后面跟的第一个参数是功能包的名字,后面的参数是这个功能包的依赖,也就是这个功能包需要用到ros里面的那些其他的功能包,因为要用c++编程所以要添加依赖roscpp,因为要用Python编程,所以要添加依赖rospy ,标准的消息结构std_msgs ,创建的功能包要放在src文件夹下,添加完功能包后,我们返回到catkin_ws目录下,再对工作空间进行编译,就会把刚才添加的功能包也编译了。只有设置了环境变量后才能让系统找到我们的工作空间 ,用命令echo $ROS_PACKAGE_PATH来检查我们创建的环境变量

   上面那段话是帮助大家理解的,操作的的话,只需要按顺序输入以下指令就可以了(功能包的名字可以任取)

cd ~/catkin_ws/src
catkin_create_pkg test_pkg std_msgs rospy roscpp
cd ~/catkin_ws
catkin_make
source ~/catkin_ws/devel/setup.bash

   在创建的功能包test_pkg中有一个src文件夹,用来放置功能包的代码,比如cpp文件等,include文件夹可以用来存放头文件,另外两个文件是每个功能包必须存在的两个文件,这两个文件的存在才标志着,这个文件夹是一个功能包,而不是普通文件夹

在这里插入图片描述



   第二部分 必备功能包安装

   1、安装JAVA环境:

   (1)输入以下指令安装JAVA环境:

sudo apt update
sudo apt install openjdk-11-jdk

   (2)如果你需要安装其他版本的,将上面的版本11改成对应的数字就行了,比如说版本8,就改为sudo apt install openjdk-8-jdk 指令java -version可以查看 Java 版本

   (3)以下指令可以查看JAVA的安装路径

sudo update-alternatives --config java

   (4)通过下面第一条指令,可以打开环境设置文件,在文件的最后添加下面的第二条指令,可以设置 JAVA_HOME 指定到 OpenJDK 11

sudo nano /etc/environment
 JAVA_HOME="/usr/lib/jvm/java-11-openjdk-amd64"

   (5)执行以下指令使其生效

source /etc/environment

   2、安装32位运行库:

   输入以下指令,安装:

sudo apt-get install lib32z1
深入探索
图书与文学
脚本语言
计算机硬件
 

   3、安装effort_controllers

   输入以下指令,安装:

sudo apt-get install ros-noetic-effort-controllers

   4、安装python3.8

   (1)可运行以下指令安装 :

sudo apt-get install python3.8

   (2) 设置软连接,依次输入以下指令进行设置

whereis python3.8
cd /usr/bin
sudo ln -s /usr/bin/python3.8 python

   5、安装ackermann-msgs

   可运行以下指令安装 :

sudo apt install ros-noetic-ackermann-msgs

   6、安装net-tools

   可运行以下指令安装 :

sudo apt install net-tools

   7、安装 map-server功能包

 

 

 


 

 

 

MATLAB与ROS联合仿真——ROS环境搭建及相关准备工作(下)

 

 

 

 

本篇文章主要介绍在安装完ROS后,在进行MATLAB与ROS联合仿真之前,需要进行的一些环境搭建以及准备工作,主要分为 创建ROS工作空间及功能包、必备功能包安装、安装Gazebo11、导入实验功能包至工作空间、安装Visual_Studio_Code(选做)、常用便捷工具安装(选做) 六部分。

本部分内容共分为上下两篇,上篇包括创建ROS工作空间及功能包和必备功能包安装这两部分,下篇包括、安装Gazebo11、导入实验功能包至工作空间、安装Visual_Studio_Code(选做)、常用便捷工具安装(选做)这四部分。




第三部分 安装Gazebo11

1.设置你的电脑来接收软件

 
cpp复制代码
sudo sh -c 'echo "deb http://packages.osrfoundation.org/gazebo/ubuntu-stable `lsb_release -cs` main" > /etc/apt/sources.list.d/gazebo-stable.list'

2.设置秘钥

 
cpp复制代码
wget https://packages.osrfoundation.org/gazebo.key -O - | sudo apt-key add -

3.安装Gazebo

 
cpp复制代码
sudo apt-get update
 
cpp复制代码
sudo apt-get install gazebo11
 
cpp复制代码
sudo apt-get install libgazebo11-dev

4.检查你的安装

 
cpp复制代码
gazebo

5.安装其他关联安装包(应该已自动安装了,可输入指令看一下是否已自动安装,没装的话装一下)

 
cpp复制代码
sudo apt-get install ros-noetic-rviz
 
cpp复制代码
sudo apt-get install ros-noetic-robot-state-publisher
 
cpp复制代码
sudo apt-get install ros-noetic-gazebo-ros-pkgs ros-noetic-gazebo-ros-control
 
cpp复制代码
sudo apt install ros-noetic-moveit

6、运行 安装包索引

 
cpp复制代码
sudo apt-get update

第四部分 导入实验功能包至工作空间

1、将实验资料里的ackerman_sim功能包复制到工作空间catkin_ws的src文件夹下,如果不能粘贴,就在win10下选中该功能包,直接拖到虚拟机下的src文件夹下


2、打开ackerman_sim功能包将smartcar_plane文件夹复制


在主文件夹下,使用Ctrl+h,显示隐藏文件,选择,.gazebo文件夹,打开后选择models文件夹,打开后将刚才复制的文件粘贴至该文件夹下,如下所示:(如果没有找到.gazebo文件夹,说明你安装完成后没有启动过,启动一次后就生成了,如果没有models文件夹就在.gazebo文件夹下自己创建一个)


3、我整理下载了一些常用的gazebo模型,由于GitHub网站访问并不友好,所以想要使用某些模型的时候,最好先下载至本地,然后添加至gazebo的models中,就像上一步一样,大家可以把实验资料里的模型按照上一步的方法导入进行(选做)

大家拿到的是下面这样一个压缩包,将其复制到虚拟机,要是不能粘贴,同样采用拖拽的方式

将压缩包复制到虚拟机后,双击打开,讲里面的内容拖拽至主文件下完成解压,这时候压缩包就可以删除了,打开解压后的文件夹,选择你想要的,或者全部,添加到第2步提到的models文件夹下就可以了,此时打开gazebo,在insert界面就可以看到导入的本地模型了


4、之前也提过了,在我们对工作空间进行修改后,要重新编译工作空间,依次执行下面三条指令:

 
cpp复制代码
cd ~/catkin_ws/
 
cpp复制代码
catkin_make
 
cpp复制代码
source ~/catkin_ws/devel/setup.bash

第五部分 安装Visual_Studio_Code(选做)

Ubuntu环境下安装Vscode有多种方式,这里介绍的是作为一个 Snap 软件包安装 Visual Studio Code,这种方式比较简单,较适合新手,但存在一些局限性,部分功能受限,所以此处也可以根据需要,更改为使用完整版安装方式

Snaps 是一种自包含的软件包,它包含需要运行这个应用所有的依赖。 Snap 软件包容易升级,并且非常安全。和标准的 deb 软件包不同,snaps 需要占用更大的磁盘空间,和 更长的应用启动时间。

Snap 软件包可以通过命令行或者 Ubuntu 软件应用来安装。

想要安装 VS Code snap版,打开你的终端(Ctrl+Alt+T)并且运行下面的命令:

 
cpp复制代码
sudo snap install --classic code

Visual Studio Code 已经在你的 Ubuntu 机器上安装好了,你可以开始使用它了。


第六部分 常用便捷工具安装(选做)

1、安装可视化分区工具gparted

在我们创建虚拟机的时候,如果分配的磁盘过小,在后续的使用时可能需要进行扩容,在扩容后你会发现好像磁盘并没有变大,这时候就需要进行重新分区,Ubuntu重新分区的方法很多,这里我采用了较简单的一种,采用可视化分区工具gparted进行重新分区,使用以下指令进行安装:

 
cpp复制代码
 sudo apt-get install gparted

2、安装自动格式化整理代码功能包clang-format-9

使用以下指令进行安装:

 
cpp复制代码
sudo apt-get install clang-format-9

3、安装软件包管理器synaptic

打开终端并输入以下指令进行安装:

 
cpp复制代码
sudo apt-get install synaptic
 

 

posted on 2026-03-28 09:09  前沿风暴  阅读(5)  评论(0)    收藏  举报

导航


校内网 © 2004-2026

京公网安备 33010602011771号 京ICP备2021040463号-3