MATLAB - Gazebo 仿真环境

news2024/12/23 22:11:12

系列文章目录


前言

机器人系统工具箱(Robotics System Toolbox™)为使用 Gazebo 模拟器可视化的模拟环境提供了一个界面。通过 Gazebo,您可以在真实模拟的物理场景中使用机器人进行测试和实验,并获得高质量的图形。

Gazebo 可在 Linux® 机器或 Linux 虚拟机上运行,并使用插件包与 MATLAB® 和 Simulink® 进行通信。在 Gazebo 中进行仿真时,请注意以下要求和限制。


一、在 Linux 虚拟机上运行 Gazebo 仿真器

从 "Virtual Machine with ROS and Gazebo "中下载并安装虚拟机(VM)。在虚拟机中,所需的 Gazebo 插件位于 /home/user/src/GazeboPlugin 文件夹中。虚拟机包含这些软件,并有这些硬件要求。

虚拟机中包含的软件

  • 操作系统 - Ubuntu® Ubuntu 20.04.3 LTS (Focal Fossa)
  • 软件包 - CMake 3.16.3、Gazebo 11 和 Gazebo 插件

最低硬件要求

  • 处理器(CPU)- 四核 Intel® i5 或同等配置
  • 内存(RAM)- 4 GB 或以上
  • 图形卡(GPU)- 1 GB 或更大显存的专用 GPU
  • 磁盘空间 - 至少 20 GB 可用磁盘空间

1.1 ROS 2 Foxy and Gazebo

本页列出了作为机器人系统工具箱(Robotics System Toolbox™)和 ROS 工具箱(ROS Toolbox™)补充的虚拟机的安装说明。您可以使用 MATLAB® 和 Simulink® 与 Gazebo 机器人模拟器以及外部 ROS(机器人操作系统)和 ROS 2 网络协同工作。Ubuntu® Focal 20.04 虚拟机适用于多种平台(Windows®、Mac 和 Linux®),包含以下内容:

  • ROS 2 Foxy 桌面安装
  • ROS Noetic 桌面安装
  • Gazebo 机器人模拟器 11.0.0
  • 模拟 TurtleBot® 3 的 Gazebo 世界示例

支持的平台包括 64 位 Windows、64 位 Linux 和 64 位 Mac OS X。安装说明按主机平台列出。


1.1.1 Windows(64 位)

  1. 下载并安装 VMware® Player 软件(许可证)(VMware® Player software (license)icon-default.png?t=N7T8https://www.vmware.com/download/eula/universal_eula.html)。
  2. 下载包含虚拟机的存档(archiveicon-default.png?t=N7T8https://ssd.mathworks.com/supportfiles/ros/virtual_machines/v3/ros_noetic_foxy_gazebov11_linux_win_v1.zip)。
  3. 将存档解压缩到硬盘驱动器上的某个位置。
  4. 启动 VMware Player。
  5. 在 VMware Player 中,按打开虚拟机。
  6. 浏览到 Ubuntu 映像的位置,选择 ros_noetic_foxy_gazebov11.vmx 文件,然后按确定。
  7. 现在虚拟机已添加到库中。
  8. 在 VMware Player 中启动虚拟机。
  9. 如果打开的窗口询问您是否复制或移动了虚拟机,请按我复制了它。 

1.1.2 Mac OS X(64 位)


该平台使用 VirtualBox® 运行虚拟机,因为 VMware Player 不适用于 Mac。如果您拥有 VMware Fusion® 的有效许可证,则可以按照 Windows 的安装说明进行安装。

下载并安装 VirtualBox® (VirtualBox®icon-default.png?t=N7T8https://download.virtualbox.org/virtualbox/6.1.26/VirtualBox-6.1.26-145957-OSX.dmg)for OS X 主机(许可证)((license)icon-default.png?t=N7T8https://www.gnu.org/licenses/old-licenses/gpl-2.0.html)。
将虚拟机(virtual machineicon-default.png?t=N7T8https://ssd.mathworks.com/supportfiles/ros/virtual_machines/v3/ros_noetic_foxy_gazebov11_mac_v1.ova)下载到硬盘驱动器上的文件夹。
启动 VirtualBox。
在 VirtualBox 中,选择文件菜单中的导入设备条目。
选择刚刚下载的文件,然后按 Next(下一步)。
验证虚拟机设置,然后按导入。导入过程可能需要几分钟。
虚拟机现已添加到库中。
在 VirtualBox 中,启动虚拟机。
根据主机的网络配置,您可能需要调整虚拟机的网络设置。如果首次启动时虚拟机显示找不到网络接口的警告,请按更改网络设置并选择主机的主网络适配器名称。

1.1.3 Linux(64 位)


下载 VMware® Player 软件捆绑包(许可证)。
以管理员权限执行软件包安装程序,安装 VMware Player。
下载包含虚拟机的存档(archiveicon-default.png?t=N7T8https://ssd.mathworks.com/supportfiles/ros/virtual_machines/v3/ros_noetic_foxy_gazebov11_linux_win_v1.zip)。
将存档解压缩到硬盘驱动器上的某个位置。
启动 VMware Player。
在 VMware Player 中,按打开虚拟机。
浏览到 Ubuntu 映像的位置,选择 ros_noetic_foxy_gazebov11.vmx 文件,然后按确定。
现在虚拟机已添加到库中。
在 VMware Player 中启动虚拟机。
如果打开的窗口询问您是否复制或移动了虚拟机,请按我复制了它。

二、局限性


MATLAB

  • 不支持代码生成。
  • MATLAB 与 Gazebo 模拟器之间的通信是异步的。

Simulink

  • 不支持代码生成。
  • 不支持快速加速器模式。

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

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

相关文章

promise:一文理解promise常用的方法

目录 第一章 介绍promise 1.1 简介 1.2 什么是地域回调 第二章 promise理论 2.1 promise的状态 2.2 promise对象的值 2.3 promise构造函数 2.4 Promise.resolve()与Promise.reject() 2.5 promise常用的几种方法 2.5.1 Promise.all(promises) 2.5.2 Promise.race(pr…

Elasticsearch的使用总结

Elasticsearch 是一个分布式、高扩展、高实时的搜索与数据分析引擎。它能很方便的使大量数据具有搜索、分析和探索的能力。 put/post请求:http://localhost:9200/索引库名称 {"settings":{"index":{"number_of_shards":1, # 分片数量…

HQL的其他优化

CBO优化 CBO是指Cost based Optimizer,即基于计算成本的优化。 在Hive中,计算成本模型考虑到了:数据的行数、CPU、本地IO、HDFS IO、网络IO等方面。Hive会计算同一SQL语句的不同执行计划的计算成本,并选出成本最低的执行计划。目前…

在Java中高效使用Lambda表达式和流(Streams)的技巧

Java中如何高效使用Lambda表达式和流(Streams)的技巧 1. 简介 在Java中,Lambda表达式和流(Streams)是Java 8引入的两个强大的特性。Lambda表达式为Java添加了一种简洁的方式来实现函数式编程,而流提供了一…

056:vue工具 --- CSS在线格式化

第056个 查看专栏目录: VUE ------ element UI 专栏目标 在vue和element UI联合技术栈的操控下,本专栏提供行之有效的源代码示例和信息点介绍,做到灵活运用。 (1)提供vue2的一些基本操作:安装、引用,模板使…

【Unity 实用工具篇】✨| I2 Localization 实现本地化及多种语言切换,快速上手

前言【Unity 实用工具篇】| I2 Localization 实现本地化及多种语言切换,快速上手一、多语言本地化插件 I2 Localization1.1 介绍1.2 效果展示1.3 使用说明及下载二、插件资源简单介绍三、通过示例快速上手3.1 添加 Languages语种3.2 添加 Term资源3.3 静

如何确保对称密钥管理的存储安全?

确保对称密钥管理的存储安全是保障信息安全的重要一环。以下是一些建议,以确保对称密钥管理的存储安全: 使用安全存储设备:选择使用经过验证的安全存储设备来存储对称密钥。这些设备通常具有高度的物理安全性,可以防止未经授权的访…

【CLion】使用CLion开发STM32

本文主要记录使用CLion开发STM32,并调试相关功能 使用的CLion版本:2023.3.1 CLion嵌入式配置教程:STM32CubeMX项目 |CLion 文档 (jetbrains.com) OpenOCD官网下载:Download OpenOCD for Windows (gnutoolchains.com) GNU ARM工…

面试每日三题

MySQL篇 MySQL为什么使用B树索引 B树每个节点可以包含关键字和对应的指针,即B树的每个节点都会存储数据,随机访问比较友好,B树的叶子节点之间是无指针相连接的 B树所有关键字都存储在叶子节点上,非叶子节点只存储索引列和指向子…

【算法Hot100系列】删除链表的倒数第 N 个结点

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

Mac安装Nginx

一起学习 1、确认你的电脑是否安装homebrew,打开电脑终端 输入: /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"2、确认homebrew是否安装成功,在终端输入: br…

表格的合并

1.需要实现的效果 use-span-method.js文件 * 合并相同数据,导出合并列所需的方法(只适合el-table)* param {Object} data* param {Object} rowSpanArray*/ export function getRowSpanMethod(data, rowSpanArray) {/*** 要合并列的数据*/const rowSpanNumObject {}…

读取spring boot项目resource目录下的文件

背景 项目开发过程中,有一些情况下将配置文件放在resource下能简化代码实现和部署时的打包步骤。例如: 项目中使用的数据库升级脚本、初始化脚本。将文件放到resource下,打包在jar包中,不能直接通过File路径读取。下面介绍两种读…

论文降重方法同义词替换的实际应用与成效评估

大家好,今天来聊聊论文降重方法同义词替换的实际应用与成效评估,希望能给大家提供一点参考。 以下是针对论文重复率高的情况,提供一些修改建议和技巧,可以借助此类工具: 标题:论文降重方法同义词替换的实际…

【文末送书】OpenCV4工业缺陷检测的六种方法

欢迎关注博主 Mindtechnist 或加入【智能科技社区】一起学习和分享Linux、C、C、Python、Matlab,机器人运动控制、多机器人协作,智能优化算法,滤波估计、多传感器信息融合,机器学习,人工智能等相关领域的知识和技术。关…

刷题第四十七天 583. 两个字符串删除操作 72. 编辑距离

class Solution:def minDistance(self, word1: str, word2: str) -> int:# dp: 以i - 1结尾的word1和以j - 1结尾的word2相同需要的最小步数# if word1[i - 1] word2[j - 1]: dp[i][j] dp[i - 1][j - 1]# else: dp[i][j] min(dp[i - 1][j], dp[i][j - 1]) 1dp [[0] * (…

postman脚本生成可执行文件(6)

一.通过Python脚本(executescript.py)执行newman指令 #!usr/bin/python import subprocess from datetime import datetimeclass Newman_automate():Newman_automate():该类主要是定义postman脚本执行__path:cmd命令行中执行newnan脚本指令(…

DataGrip 2023.3 新功能速递!

1 数据可视化 自 DataGrip 2023.3 发布以来,已整合 Lets-Plot 库,实现数据可视化。该可视化功能可用于所有三种类型的网格: 主选项卡:在打开表、视图或 CSV 文件时,在分割模式下显示图表。结果选项卡:在 服…

OO AutoBackup 6: 自动备份同步文件工具箱软件

保护您的数据,让备份变得轻松简单。 概述 O&O AutoBackup 6 是一款功能强大的自动备份同步文件工具箱软件。通过实时监控您的文件和文件夹,O&O AutoBackup 6 确保您的重要数据始终得到保护。无论您是在工作还是在家庭环境中,这款软…

二叉树【数据结构】

目录 二叉树1. 二叉树定义二叉树的存储定义 2. 遍历二叉树(1) 前序遍历(2) 中序遍历(3) 后序遍历(4) 层序遍历 3. 二叉树的相关操作(1) 二叉树的初始化(2) 二叉树的结点的手动创建(3) 二叉树结点的个数(4) 二叉树叶子结点的个数(5) 二叉树的高度(6) 第k层结点个数(7) 通过前序遍…