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

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

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


在这里插入图片描述



   第三部分 安装Gazebo11

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

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.设置秘钥

wget https://packages.osrfoundation.org/gazebo.key -O - | sudo apt-key add -

   3.安装Gazebo

sudo apt-get update
sudo apt-get install gazebo11
sudo apt-get install libgazebo11-dev

   4.检查你的安装

gazebo

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

sudo apt-get install ros-noetic-rviz
sudo apt-get install ros-noetic-robot-state-publisher
sudo apt-get install ros-noetic-gazebo-ros-pkgs ros-noetic-gazebo-ros-control
sudo apt install ros-noetic-moveit

   6、运行 安装包索引

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

cd ~/catkin_ws/
catkin_make
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)并且运行下面的命令:

sudo snap install --classic code

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


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

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

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

 sudo apt-get install gparted

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

   使用以下指令进行安装:

sudo apt-get install clang-format-9

   3、安装软件包管理器synaptic

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

sudo apt-get install synaptic


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/7126.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Mysql错误日志、通用查询日志、二进制日志和慢日志的介绍和查看

一.日志 1.日志和备份的必要性 日志刷新 2.mysql的日志类型 (1)错误日志 查看当前错误日志和是否记录警告设置 (2)通用查询日志 查看通用查询日志的设置 (3)二进制日志 查看二进制文件的设置&…

-Ddfs.checksum.combine.mode=COMPOSITE_CRC参数解析

-Ddfs.checksum.combine.modeCOMPOSITE_CRC -Ddfs.checksum.combine.modeCOMPOSITE_CRC是一个Hadoop配置参数,用于指定HDFS(Hadoop分布式文件系统)在计算文件校验和时使用的模式。 具体来说,dfs.checksum.combine.mode 参数决定…

最小二乘拟合椭圆

目录 1.拟合椭圆2.示例代码 爬虫网站自重。 1.拟合椭圆 二次曲线的一般方程为: A x 2 B x y C y 2 D x E y F 0 Ax^2BxyCy^2DxEyF0 Ax2BxyCy2DxEyF0 令: Δ B 2 − 4 A C Δ B^2-4AC ΔB2−4AC 那么,当 Δ > 0 Δ >0 Δ>0…

js基础-练习三

九九乘法表&#xff1a; <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthsc, initial-scale1.0"><title>九九乘法表</title><style&g…

NLP杂记

来京一周余&#xff0c;初病将愈&#xff0c;终跑通llama及ViT&#xff0c;记于此—— 之前都是做的图像&#xff0c;大模型迁移基本上都是NLP相关的知识&#xff0c;很多东西和CV差距还是有点&#xff0c;再加上大模型对算力要求较高&#xff0c;基于云的操作对我一个习惯在本…

【uniapp学习之】uni-forms必填项校验

代码块 <uni-forms ref"baseForm" :modelValue"baseFormData" label-widthauto :rules"rules"><uni-forms-item label"企业名称" required name"principalName"><uni-easyinput v-model"baseFormData.…

node中间件-koa框架

文章目录 1. koa 基本使用2. 参数解析3. 请求路径区分4. 路由5 参数解析5.1 params 与query解析5.2 body参数与urlencoded 解析5.3 form-data参数 6 . 文件上传7. 静态服务器8 响应数据9 错误处理 1. koa 基本使用 安装 npm i koakoa导出的是一个类&#xff0c;必须用new关键字…

Linux 用户组相关命令

添加用户组的命令是 groupadd&#xff0c;命令格式如下: [rootlocalhost ~]# groupadd [选项] 组名 选项&#xff1a; -g GID&#xff1a;指定组 ID&#xff1b;-r&#xff1a;创建系统群组。 使用 groupadd 命令创建新群组非常简单&#xff0c;例如&#xff1a; [rootlocalh…

Pytorch个人学习记录总结 05

目录 神经网络的基本骨架 卷积操作 torch.nn.functional.conv2d 神经网络的基本骨架 搭建Neural Network骨架主要用到的包是torch.nn&#xff0c;官方文档网址&#xff1a;torch.nn — PyTorch 2.0 documentation&#xff0c;其中torch.nn.Module很重要&#xff0c;是所有所…

springboot mybatis-plus 多数据源配置(HikariCP)

1.导入依赖jar <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-jdbc</artifactId></dependency><dependency><groupId>org.postgresql</groupId><artifactId>postgres…

【JVM】浅看JVM的运行流程和垃圾回收

1.JVM是什么 JVM&#xff08; Java Virtual Machine&#xff09;就是Java虚拟机。 Java的程序都运行在JVM中。 2.JVM的运行流程 JVM的执行流程&#xff1a; 程序在执行之前先要把java代码转换成字节码&#xff08;class文件&#xff09;&#xff0c;JVM 首先需要把字节码通过…

springboot中logback日志配置

springboot中logback日志配置 前言默认配置logback-spring.xml详细配置 前言 Spring Boot使用Apache的Commons Logging作为内部的日志框架&#xff0c;其仅仅是一个日志接口&#xff0c;在实际应用中需要为该接口来指定相应的日志实现。 Spring Boot从1.4版本开始内置的日志框…

程序员面试系列,kafka常见面试题

原文链接 Kafka是什么&#xff1f;它的主要作用是什么&#xff1f;什么是Kafka的主题&#xff08;Topic&#xff09;和分区&#xff08;Partition&#xff09;&#xff1f;Kafka中的消息是如何被生产者发送和消费者接收的&#xff1f;Kafka中的分区有什么作用&#xff1f;为什…

聊聊Linq中.AsEnumerable(), AsQueryable() ,.ToList(),的区别和用法

聊聊Linq中.AsEnumerable(), AsQueryable() ,.ToList(),的区别和用法 当使用LINQ查询数据时&#xff0c;我们常常会面临选择使用.AsEnumerable(), .AsQueryable(), 和 .ToList()方法的情况。这些方法在使用时有不同的效果和影响&#xff0c;需要根据具体场景来选择合适的方法。…

springboot热加载spring-boot-devtools:

springboot热加载 基于idea开发springboot项目使用热加载 pom依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-devtools</artifactId><scope>runtime</scope><optional>true</op…

金融领域:产业链知识图谱包括上市公司、行业和产品共3类实体,构建并形成了一个节点10w+,关系边16w的十万级别产业链图谱

项目设计集合&#xff08;人工智能方向&#xff09;&#xff1a;助力新人快速实战掌握技能、自主完成项目设计升级&#xff0c;提升自身的硬实力&#xff08;不仅限NLP、知识图谱、计算机视觉等领域&#xff09;&#xff1a;汇总有意义的项目设计集合&#xff0c;助力新人快速实…

前端 | ( 十三)CSS3简介及基本语法(下)| 伸缩盒模型 | 尚硅谷前端html+css零基础教程2023最新

学习来源&#xff1a;尚硅谷前端htmlcss零基础教程&#xff0c;2023最新前端开发html5css3视频 系列笔记&#xff1a; 【HTML4】&#xff08;一&#xff09;前端简介【HTML4】&#xff08;二&#xff09;各种各样的常用标签【HTML4】&#xff08;三&#xff09;表单及HTML4收尾…

Go 语言 值类型和引用类型

Go 语言 值类型和引用类型 值类型&#xff1a; 概述&#xff1a; 值类型的人变量直接存储其值&#xff0c;他们通常在栈上分配内存。当把一个值类型的变量赋值给另外一个变量、作为函数参数传递或从函数返回时&#xff0c;进行值的复制。因此每个变量都有自己独立的存储&…

Flutter 自定义 虚线 分割线

学习使用Flutter 进行 虚线 自定义控件 练习 // 自定义虚线 &#xff08;默认是垂直方向&#xff09; class DashedLind extends StatelessWidget {final Axis axis; // 虚线方向final double dashedWidth; // 根据虚线的方向确定自己虚线的宽度final double dashedHeight; //…

实训笔记7.24

实训笔记7.24 7.24笔记一、Hadoop中MapReduce框架的使用原理和流程1.1 涉及到一些框架核心组件1.1.1 InputFotmat1.1.2 MapTask1.1. 3Partitioner1.1.4 WritableComparable1.1.5 Combiner&#xff08;可选&#xff09;1.1.6 WritableComparator(GroupingComparator)1.1.7 Reduc…