ROS-gazebo 简介

2023-05-16

gazebo

  • 一、什么是Gazebo?
    • Gazebo的典型用途
    • Gazebo的一些主要特点
  • 二、系统要求
  • 三、安装
    • 1.添加源
    • 2.安装Gazebo
  • 四、用户界面
    • 1、场景
    • 2、左右面板
    • 3、工具栏
    • 4、菜单栏
    • 5、鼠标

 

一、什么是Gazebo?

Gazebo是一款3D动态模拟器,能够在复杂的室内和室外环境中准确有效地模拟机器人群。与游戏引擎提供高保真度的视觉模拟类似,Gazebo提供高保真度的物理模拟,其提供一整套传感器模型,以及对用户和程序非常友好的交互方式。

Gazebo的典型用途

  • 测试机器人算法

  • 设计机器人

  • 用现实场景进行回归测试

Gazebo的一些主要特点

  • 包含多个物理引擎

  • 包含丰富的机器人模型和环境库

  • 包含各种各样的传感器

  • 程序设计方便和具有简单的图形界面

二、系统要求

Gazebo官方建议,Gazebo目前最好在Ubuntu或者其他的Linux发行版上运行。同时您的计算机需要具有以下功能:

  • 专用GPU:Nvidia卡往往在Ubuntu中运行良好

  • 至少是Intel I5或同等产品的CPU

  • 至少500MB的可用磁盘空间

  • 安装尽可能高版本的Ubuntu Trusty

编者注:小编曾经在不同的硬件环境下运行过Gazebo(最低配置为i5-6200u,无GPU)。在经受多次折磨后,给出以下建议:

  • 只有cpu的情况下也是可以运行Gazebo的,但是场景过于庞大时频繁会出现闪退和卡死。

  • 当可用内存过低运行内存而导致界面闪退(这样你的心血就没了),为了避免这种情况最好使用8G+的内存。

  • 不同版本的linux发行版下的Gazebo使用并无太大差别,但是还是建议使用ubuntu,毕竟官方教程都是在ubuntu下运行的。

三、安装

原则上Gazebo是跟ros一起使用的,但是这个系列并不是在教ros的使用,所以还是把Gazebo单独拿出来说

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'
  • 1
$wget http://packages.osrfoundation.org/gazebo.key -O - | sudo apt-key add -
  • 1

2.安装Gazebo

$sudo apt-get update

$sudo apt-get install gazebo9 

$sudo apt-get install libgazebo9-dev
  • 1
  • 2
  • 3
  • 4
  • 5

注:小编在自己的电脑上(ubuntu18.04)按以上步骤未出现错误,如果出现错误可以自行百度or留言,建议参考官方教程(http://gazebosim.org/tutorials?tut=guided_b1&cat=)。

四、用户界面

这节将对Gazebo图形用户界面和GUI进行介绍。我们将学习到一些基本操作,例如按钮的功能以及如何在场景中导航。
首先,你应该安装好Gazebo了。然后你可以按Alt-F2,键入Gazebo,然后按Enter键。你就可以看到Gazebo的启动图标了。
在这里插入图片描述

tips:看到这个界面按下回车就出来拉~然后你应该看到这个画面

在这里插入图片描述

现在我们介绍界面的各个组成,相信大家英文都不错,部分图片就直接用官方的图片了,如果觉得有困难的同学可以配合注释理解。

1、场景

场景是模拟器的主要部分,是仿真模型显示的地方,你可以在这操作仿真对象,使其与环境进行交互。

在这里插入图片描述

2、左右面板

在这里插入图片描述
a、左面板
启动Gazebo时,默认情况下界面会出现左侧面板。面板左上方有三个选项卡:

  • WORLD:“世界”选项卡,显示当前在场景中的模型,并允许你查看和修改模型参数,例如它们的姿势。你还可以通过展开“GUI”选项并调整相机姿势来更改摄像机视角。

  • INSERT:“插入”选项卡,向模拟添加新对象(模型)。要查看模型列表,您可能需要单击箭头以展开文件夹。在要插入的模型上单击(和释放),然后在场景中再次单击以添加它。

  • LAYER:“图层”选项卡可组织和显示模拟中可用的不同可视化组(如果有)。图层可以包含一个或多个模型。打开或关闭图层将显示或隐藏该图层中的模型。这是一个可选功能,因此在大多数情况下此选项卡将为空。要了解有关图层的更多信息,请查看(http://gazebosim.org/tutorials?tut=visual_layers&cat=build_robot)

b、右侧面板
默认情况下Gazeb界面隐藏右侧面板。单击并拖动栏以将其打开。右侧面板可用于与所选模型(joint)的移动部件进行交互。如果未在场景中选择任何模型,则面板不会显示任何信息。

3、工具栏

Gazebo界面有两个工具栏。一个位于场景上方,另一个位于下方。

a、上部工具栏
在这里插入图片描述
上部工作栏是Gazebo的主工具栏,它包含一些最常用的与模拟器交互的选项,例如:选择,移动,旋转和缩放对象等按钮; 创造一些简单的形状(如立方体,球体,圆柱体); 复制/粘贴模型选项。
-选择模式(select mode):在场景中导航

  • 翻译模式(translate mode):选择要移动的模型

  • 旋转模式(rotate mode):选择要旋转的模型

  • 缩放模式(scale mode):选择要缩放的模型

  • 撤消/重做(undo/redo):撤消/重做场景中的操作

  • 简单形状(simple shape):将简单形状插入场景中

  • 灯光(lights):为场景添加灯光

  • 复制/粘贴(copy/paste):在场景中复制/粘贴模型

  • Align:将模型彼此对齐

  • Snap:将一个模型与另一个模型对齐

  • 更改视图(change view):从各个角度查看场景

b、底部工具栏
在这里插入图片描述
底部工具栏显示有关模拟的数据,如模拟时间及其与实际时间的关系。

  • “模拟时间”是指模拟运行时模拟器中时间流逝的速度。模拟时间可以比实时更慢或更快,具体取决于运行模拟所需的计算量。

  • “实时”是指模拟器运行时在现实生活中经过的实际时间。模拟时间和实时之间的关系称为“实时因子”(RTF)。它是模拟时间与实时的比率。RTF衡量模拟运行与实时相比的速度或速率。

  • Gazebo的世界状况每迭代一次,计算一次。你可以在底部工具栏的右侧看到迭代次数。每次迭代都会将模拟推进固定的秒数,称为步长。默认情况下,步长为1 ms。您可以按暂停按钮暂停模拟,并使用步骤按钮逐步执行几个步骤。

4、菜单栏

像大多数应用程序一样,Gazebo顶部有一个应用程序菜单。某些菜单选项会显示工具栏中。在场景中,右键单击上下文菜单选项,可查看各种菜单。
在这里插入图片描述
注意:某些Linux桌面会隐藏应用程序菜单。如果没有看到菜单,请将光标移动到应用程序窗口的顶部,然后会出现菜单。
在这里插入图片描述

5、鼠标

鼠标操作方法,一般常用的就是“shift+鼠标左键”转换视角,“鼠标左键”平移视角,“滚轮”缩放大小
在这里插入图片描述

至此我们已经介绍完gazebo的安装、界面以及一些基本操作了,在下一篇中会介绍如何构建一个简单的机器人,敬请期待噢。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ROS-gazebo 简介 的相关文章

  • Python 实现 Dijkstar 路径规划算法

    Dijstar 最短路径算法 用于计算起始点到最终点的最短路径 一般采用的是贪心算法策略 原理可以参考 图解 Open list 和 close list 环境 Terminal 需要预先安装两个库 matplotlib 和 math pi
  • ROS之QtCreator开发环境搭建

    文章目录 系统环境 官方教程 安装 卸载 使用 导入工作空间 构建与运行 编写测试程序 系统环境 操作系统 Ubuntu20 04 ROS版本 Noetic 官方教程 按照官方教程或者下面笔记中的内容均能进行环境搭建 笔记中另外做了部分补充
  • ROS中使用VLP16激光雷达获取点云数据

    ROS中使用VLP16激光雷达获取点云数据 个人博客地址 本文测试环境为 Ubuntu20 04 ROS Noetic 需要将激光雷达与PC连接 然后在设置 gt 网络 gt 有线中将IPv4改为手动 并且地址为192 168 1 100
  • Webots小车与Gampping建图仿真与ORB3算法实践

    此篇博客转自本作者在古月居的博客 https www guyuehome com 34537 前言 在研一的时候 由于XXX项目的需要 其中一项就是需要测试Gmapping建图 自然也要求使用ROS系统 由于之前经常在webots中进行仿真
  • SLAM-hector_slam 简介与使用

    hector slam功能包使用高斯牛顿方法 不需要里程计数据 只根据激光信息便可构建地图 所以他的总体框架如下 hector slam功能包 hector slam的核心节点是hector mapping 它订阅 scan 话题以获取SL
  • 无人驾驶论坛

    1 百度Apollo论坛 http www 51apollo com 2 人工智能中文资讯网 http www ailab cn
  • ROS turtlebot_follower :让机器人跟随我们移动

    ROS turtlebot follower 学习 首先在catkin ws src目录下载源码 地址 https github com turtlebot turtlebot apps git 了解代码见注释 其中有些地方我也不是很明白
  • Hypervisor介绍及在智能驾驶的应用

    转自Hypervisor 智能座舱和智能驾驶融合的关键技术 腾讯新闻
  • 激光雷达LMS111在ROS上的使用

    LMS111 10100 在ROS上的测试与使用 准备工作 设备 硬件 LMS111 101000激光雷达 软件 ubuntu16 04 ROS 开始 设备连接 将激光雷达与处理器 电脑 工控机等 通过以太网连接好 激光雷达默认的IP地址为
  • Ubuntu18.04配置Seetaface6

    目录 一 下载安装Qt软件 1 安装包下载 2 安装Qt 3 配置 二 下载源码 三 编译工具 四 编译 1 编译OpenRoleZoo 2 编译SeetaAuthorize 3 编译TenniS 五 运行 1 修改lib路径 2 buil
  • Ubuntu安装ROS

    原文链接 https blog csdn net qq 44830040 article details 106049992 这也是我在ubuntu里面安装ROS的第N次 以前每次安装过程都忘记总结了 导致每次安装ROS都浪费了很多的时间用
  • Ubuntu16.04及ROS Kinetic环境下安装使用RealSense SR300

    Ubuntu16 04及ROS Kinetic环境下安装使用RealSense SR300 1 准备条件 需要安装Ubuntu16 04及ROS Kinetic 2 安装驱动 安装realsense的驱动流程可以根据Github上的官方推荐
  • 树莓派配置wifi做热点方法

    http wiki jikexueyuan com project raspberry pi wifi html
  • 【ROS】usb_cam相机标定

    1 唠叨两句 当我们要用相机做测量用途时 就需要做相机标定了 不然得到的计算结果会有很大误差 标定的内容包括三部分 内参 外参还有畸变参数 所以标定的过程就是要求得上面这些参数 以前弄这个事估计挺麻烦 需要做实验和计算才能得到 现在通过ro
  • 将 CUDA 添加到 ROS 包

    我想在 ros 包中使用 cuda 有人给我一个简单的例子吗 我尝试使用 cuda 函数构建一个静态库并将该库添加到我的包中 但总是出现链接错误 未定义的引用 cuda 我已经构建了一个可执行文件而不是库并且它可以工作 请帮忙 我自己找到了
  • 我的代码的 Boost 更新问题

    我最近将 boost 更新到 1 59 并安装在 usr local 中 我的系统默认安装在 usr 并且是1 46 我使用的是ubuntu 12 04 我的代码库使用 ROS Hydro 机器人操作系统 我有一个相当大的代码库 在更新之前
  • catkin_make 编译报错 Unable to find either executable ‘empy‘ or Python module ‘em‘...

    文章目录 写在前面 一 问题描述 二 解决方法 参考链接 写在前面 自己的测试环境 Ubuntu20 04 一 问题描述 自己安装完 anaconda 后 再次执行 catkin make 遇到如下问题 CMake Error at opt
  • ROS 从 python 节点发布数组

    我是 ros python 的新手 我正在尝试从 python ros 节点发布一个一维数组 我使用 Int32MultiArray 但我无法理解多数组中布局的概念 谁能给我解释一下吗 或者还有其他方式发布数组吗 Thanks usr bi
  • 无法在 Ubuntu 20.04 上安装 ROS Melodic

    我正在尝试使用这些命令在 Ubuntu 20 04 上安装 ROS Melodic sudo sh c echo deb http packages ros org ros ubuntu lsb release sc main gt etc
  • 使用 CMake 链接 .s 文件

    我有一个我想使用的 c 函数 但它是用Intel编译器而不是gnu C编译器 我在用着cmake构建程序 我实际上正在使用ROS因此rosmake但基础是cmake所以我认为这更多是一个 cmake 问题而不是ROS问题 假设使用构建的文件

随机推荐

  • 华为鸿蒙系统:基于微内核的全场景分布式OS

    华为鸿蒙系统 xff1a 基于微内核的全场景分布式OS 1 分布式架构首次用于终端OS xff0c 实现跨终端无缝协同体验 2 确定时延引擎和高性能IPC技术实现系统天生流畅 3 基于微内核架构重塑终端设备可信安全 4 通过统一IDE支撑一
  • STM32 通用GPIO模拟I2C实现

    STM32 通用GPIO模拟I2C实现 通用GPIO模拟I2C通信实现样例 1 GPIO初始化 ifdef HW I2C1 硬件I2C初始化 PA8 I2C1 SCL GPIO StructInit amp GPIO InitStructu
  • STM32 定时器实现样例

    STM32 定时器实现样例 1 定时器的初始化2 中断使能和中断优先级设置 1 定时器的初始化 void Tim5 init void TIM TimeBaseInitTypeDef TIM5 TimeBaseStructure NVIC
  • SVN服务器端口号(80)被占用导致无法访问的解决方案

    SVN服务器端口号被占用导致无法访问的解决方案 1 问题现象描述2 解决方法 1 问题现象描述 1 xff09 SVN show log 命令提示如下 xff1a 2 xff09 SVN commit代码时提示 xff1a 以一种访问权限不
  • 电磁波谱和光纤通信使用频段

    电磁波谱和光纤通信使用频段
  • STM32复位类型及判断方法

    STM32复位类型及判断方法 一 系统复位 xff1a 二 电源复位三 备份域复位四 复位的标志位五 复位标志位检索 判断什么原因导致的复位六 STM32软件复位方法 转载连接 xff1a https www cnblogs com per
  • C波段 波长和中心频率对应表

    C波段 波长和中心频率对应表
  • [译]badblocks指令

    原贴 http www linuxfly org post 192 htm 14 12月 译 badblocks指令 大 中 小 2007 12 14 16 40 分类 基础知识 系统命令 by linuxing 硬盘是一个损耗设备 xff
  • SecureCRT 脚本示例

    SecureCRT 脚本示例 language 61 34 VBScript 34 interface 61 34 1 0 34 crt Screen Synchronous 61 True 39 This automatically ge
  • rdesktop使用参数解析

    我自己使用的参数 xff1a rdesktop f z a 16 g workarea x modem u wangkai p wangkai r clipboard PRIMARYCLIPBOARD r disk MyDisk 61 va
  • linux-011中休眠函数以及唤醒函数的分析(sleep_on,wake_up)

    先看一下代码 xff1a void sleep on struct task struct p struct task struct tmp if p return if current 61 61 amp init task task p
  • ubuntu无法打开terminal

    在编译openjdk源码的时候 xff0c 将语言设置为LANG 61 c 关机之后再开机就无法打开terminal 无论采用哪种方式 后来到网上查找答案 xff0c 解决方法如下 1 ctrl 43 alt 43 F1 进入命令行模式 之
  • 51单片机三线串行驱动12864液晶

    以前写12864的液晶程序都是用的并行的方式 xff0c 这种方式焊接起来很麻烦 xff0c 而且占用的IO口比较多 今天尝试使用串行方式来驱动该模块 本程序是基于STC89C52的12864串行模式的程序 xff0c 硬件电路连接只需要5
  • 基于形状的模板匹配

    前段时间一直在做图像模板匹配 需要对旋转模板进行匹配 xff0c 并且对速度精度都有较高的要求 OpenCV里面并没有较好的解决方法 cvMatchTemplate const CvArr image constCvArr templ Cv
  • 相机模型详解

    相机模型 数码相机图像拍摄的过程实际上是一个光学成像的过程 相机的成像过程涉及到四个坐标系 xff1a 世界坐标系 相机坐标系 图像坐标系 像素坐标系 以及这四个坐标系的转换 理想透视模型 针孔成像模型 相机模型是光学成像模型的简化 xff
  • 相机镜头工作原理图解

    本文目录 xff08 一 xff09 机身 xff08 二 xff09 关于镜头一 如何平衡机身与镜头的预算二 镜头的作用三 镜头的组成部分四 关于焦距 什么是焦距 xff1f 为什么焦距很重要 xff1f 五 变焦与定焦镜头六 光圈及最大
  • 【Git】TortoiseGit代码冲突解决方法

    TortoiseGit冲突解决方法 场景一 xff1a 本地相同文件冲突场景二 xff1a 服务端相同文件冲突场景三 xff1a 服务端不同文件冲突场景四 xff1a 服务端文件名冲突小结 场景一 xff1a 本地相同文件冲突 冲突场景 x
  • RTOS系统问答

    RTOS 系统区别 RTOS Real Time Operating System 是专门为实时系统设计的操作系统 实时系统是指需要在规定的时间内响应某些事件或完成某些任务的系统 RTOS 和一般的操作系统相比 xff0c 具有更高的实时性
  • VTK与ITK的详细安装指南

    1 说明 本文来自一个付费下载文档 xff0c 好像是一本图书的第一章的部分内容 感觉比网上很多指南写的要详细 特整理出来和大家分享 xff0c 向原作者表示感谢 xff01 2 获取安装资源 xff08 1 xff09 CMake 安装资
  • ROS-gazebo 简介

    gazebo 一 什么是Gazebo xff1f Gazebo的典型用途Gazebo的一些主要特点二 系统要求三 安装 1 添加源2 安装Gazebo四 用户界面 1 场景2 左右面板3 工具栏4 菜单栏5 鼠标 一 什么是Gazebo x