Gazebo與ROS版本說明
使用哪种ROS / Gazebo版本的组合
介绍
本文档提供了有关将不同版本的ROS与不同版本的Gazebo结合使用的选项的概述。建议在安装Gazebo ROS包装之前阅读它。
重要!简单的分析,快速和正确的决定
如果您计划使用特定版本的ROS,并且没有理由使用特定版本的Gazebo,那么您应该继续安装gazebo_ros_pkgs教程,该教程解释了如何安装ROS完全支持的gazebo版本。
警告:请注意,使用与从ROS存储库提供的官方版本不同的Gazebo版本可能会导致冲突或其他与ROS包的集成问题。
Gazebo版本和ROS集成
Gazebo是一个独立的项目,如boost,ogre或ROS使用的任何其他项目。通常,在每个ROS发布周期开始时提供的最新主要版本的Gazebo(例如ROS Jade的gazebo5)被选为完全集成和支持的官方版本,并且将在ROS分发的整个生命期间保持。
Gazebo开发不与ROS同步,因此每个新的主要版本的Gazebo必须在使用ROS分发之前被释放。以下部分介绍如何在不同版本的Gazebo中使用ROS。
注意,Gazebo ABI稳定性策略遵循语义版本化哲学,其中具有相同主要编号的所有版本(gazebo_6.0.0,gazebo_6.1.0,gazebo_6.0.1,...)是二进制兼容的,因此当使用相同的ROS分布。
安装Gazebo
Gazebo Ubuntu包
安装Gazebo的最简单的方法是使用软件包。 Gazebo包有两个主要的仓库:一个是packages.ros.org,另一个是packages.osrfoundation.org。在写作时:
packages.ros.org
Indigo:主机Gazebo版本2.x包。
Jade:主机Gazebo版本5.x包。
packages.osrfoundation.org
gazebo 5.x系列(包名称gazebo5)
gazebo 6.x系列(包名称gazebo6)
gazebo 7.x系列(包名称gazebo7)
这意味着,包含osrfoundation存储库不是绝对需要得到Gazebo Ubuntu包。它可以从ros存储库安装。
Gazebo从源建造
如果你从源码编译了Gazebo版本,注意,根据使用的存储库分支(gazebo6,gazebo7,...)你的Gazebo将与gazebo_ros_pkgs(和所有其他ROS包编译在Gazebo顶部)二进制兼容只有主要版本匹配您的本地分支存储库和您的ROS发行版中使用的Gazebo版本。例如,如果您从Gazebo分支gazebo_2.0进行编译,则可以使用Indigo中的gazebo_ros_pkgs(使用gazebo2系列)。
注意,如果你使用默认分支,你可能不是二进制兼容任何发布的软件包,所以你需要一个catkin工作区,以获得一个有效的gazebo_ros_pkgs。
使用ROS分发的默认Gazebo版本
对于需要运行特定版本的ROS并想要使用所有gazebo ROS相关软件包的用户,这是推荐的部分:
Jade
ROS Jade托管5.x版本的Gazebo。对于完全集成的ROS系统,我们建议使用5.x版本的Gazebo。继续的方式只是使用ROS存储库(它将自动安装gazebo5),而不使用osrfoundation存储库。
Indigo
ROS Indigo主机是2.x版本的Gazebo。对于完全集成的ROS系统,我们建议使用2.x版本的Gazebo。继续的方式只是使用ROS存储库(它将自动安装gazebo2),并且不使用osrfoundation存储库。
使用ROS的特定Gazebo版本
警告!:使用此选项,您将无法使用与ROS deb存储库中的Gazebo相关的任何ROS Ubuntu软件包。相当于gazebo_ros_pkgs可以从debian软件包安装,但所有其他软件(如turtlebot_gazebo)必须从源代码构建。感谢catkin工作区,这是很容易做到的。
有一种方法使用任何特定版本的Gazebo和ROS,如果真的需要:
Gazebo 7.x系列
OSRF存储库提供了建立在gazebo7软件包之上的-gazebo7版本的ROS / Indigo和ROS / Jade gazebo包装器(gazebo7_ros_pkgs)。使用它们的步骤是:
将osrfoundation存储库添加到源列表。
从osrfoundation仓库安装ros- $ ROS_DISTRO-gazebo7-ros-pkgs,它将安装gazebo7软件包。
使用catkin工作区来编译从源代码使用的其余软件。
Gazebo 6.x系列
OSRF存储库提供了-gazebo6-版本的ROS / Indigo和ROS / Jade gazebo包装器(gazebo6_ros_pkgs),它们构建在gazebo6软件包之上。使用它们的步骤是:
将osrfoundation存储库添加到源列表。
从osrfoundation仓库安装ros- $ ROS_DISTRO-gazebo6-ros-pkgs,它将安装gazebo6软件包。
使用catkin工作区来编译从源代码使用的其余软件。
Gazebo 5.x系列
OSRF存储库提供了-gazebo5-版本的ROS / Indigo gazebo包装器(gazebo5_ros_pkgs),它们构建在gazebo5软件包的顶部。使用它们的步骤是:
将osrfoundation存储库添加到源列表。
从osrfoundation仓库安装ros-indigo-gazebo5-ros-pkgs,这将安装gazebo5软件包。
使用catkin工作区来编译从源代码使用的其余软件。
常问问题
我根本不使用ROS,我应该使用哪个版本?
如果您不需要ROS支持,推荐的版本是可以使用osrfoundation repo安装的最新发布的版本。
我想使用bullet / simbody / dart物理引擎,我应该使用哪个版本的Gazebo?
从gazebo4开始,bullet和simbody支持内置在Ubuntu包中,因此请按照上述说明使用gazebo4和ROS。 Dart仍然需要从源码安装gazebo(从gazebo3开始),因此您可以使用gazebo3或更高版本,并按照本页上面的说明使其与ROS配合使用。
我需要使用gazebo5 / gazebo6 / gazebo7和ROSIndigo,我能做什么?
警告!:使用此选项,您将无法使用与ROS deb存储库中的Gazebo相关的任何ROS Indigo软件包。方法是从源代码构建它们。感谢catkin工作区,这是很容易做到的。
如果你需要一些功能只存在于版本5.x,6.x或7.x的Gazebo,有一种方法来安装gazebo5,gazebo6或gazebo7和ROSIndigo。请按照说明,关于如何使用ROS与gazebo4,gazebo5或gazebo6在同一个文档。
我需要使用gazebo6 / gazebo7和ROSJade,我能做什么?
警告!:使用此选项,您将无法使用与ROS deb存储库中的Gazebo相关的任何ROS Jade包。方法是从源代码构建它们。感谢catkin工作区,这是很容易做到的。
如果你需要一些功能只存在于版本6.x / 7.x的Gazebo,有一种方法来安装gazebo6或gazebo7和ROSJade。请按照同一文档中关于如何使用ROS与gazebo6软件包的说明。
一些ROS包与GazeboX ROS Wrappers冲突!
注意,每个ROS分布被设计为与特定版本的Gazebo(gazebo5在Jade中)一起使用。当有人选择使用与ROS发行版中推荐的版本不同的Gazebo版本时,可能会出现问题,其中一些可能无法解决。
如果在尝试安装本文档中描述的某个版本之后发现依赖性冲突(例如使用RVIZ),您将需要从源代码安装ROS或Gazebo。
官網原文,翻譯爲谷歌翻譯。
Introduction
This document provides an overview about the options to use different versions of ROSin combination with different versions of Gazebo.It is recommended to read it before installing the Gazebo ROS wrappers.
Important! simple analysis for a quick and correct decision
If you are planning on using a specific version of ROS and don't have a reasonto use a specific version of Gazebo, you should proceed with theInstalling gazebo_ros_pkgstutorial which explains how to install the fully supported version of gazeboby ROS.
Warning: note that using a different gazebo version than the official version delivered from the ROSrepositories could end up in conflicts or other integration problems with ROS packages.
Gazebo versions and ROS integration
Gazebo is an independent project like boost, ogre orany other project used by ROS. Usually, the latest major version of gazeboavailable at the beginning of every ROS release cycle (for example gazebo5
for ROS Jade) is selected as the official one to be fully integrated andsupported and will be kept during the whole life of the ROS distribution.
Gazebo development is not synced with ROS, so each new major version of Gazebomust be released before being used in a ROS distribution. The followingsections cover how to use ROS with different versions of Gazebo.
Note that Gazebo ABI stability policy follows thesemantic versioning philosophy, in which all versionsthat have the same major number (gazebo_6.0.0
, gazebo_6.1.0
,gazebo_6.0.1
, ...) are binary compatible and thus interchangeable when usingthe same ROS distro.
Installing Gazebo
Gazebo Ubuntu packages
The easiest way of installing Gazebo is to use packages. There are two main repositories which host Gazebo packages: one is packages.ros.org
and the other is packages.osrfoundation.org
. At the time of writing:
- packages.ros.org
- Indigo: host gazebo version 2.x package.
- Jade: host gazebo version 5.x package.
- packages.osrfoundation.org
- gazebo 5.x series (package name
gazebo5
) - gazebo 6.x series (package name
gazebo6
) - gazebo 7.x series (package name
gazebo7
)
- gazebo 5.x series (package name
This means that including the osrfoundation repository is not strictly needed to get the Gazebo Ubuntu package.It can be installed from the ros repository.
Gazebo built from source
If you have compiled a gazebo version from source, note that depending on therepository branch used (gazebo6
,gazebo7
,...) your gazebo will bebinary compatible with the gazebo_ros_pkgs
(and all other ROS packages compiledon top of gazebo) only if the major version matches your local branchrepository and the gazebo version used in your ROS distro. For example, if youare compiling from gazebo branch gazebo_2.0
, you can use the gazebo_ros_pkgs
present in Indigo (which uses gazebo2 series).
Note that if you are using default
branch, you are probably not binarycompatible with any of the packages released, so you will need a catkinworkspace for getting a valid gazebo_ros_pkgs
.
Using the default Gazebo version for a ROS distribution
For the users that need to run a specific version of ROSand want to use all the gazebo ROS related packages out-of-the-box,this is the recommended section:
Jade
ROS Jade hosts the 5.x version of Gazebo.For a fully-integrated ROS system, we recommend using the 5.x version ofGazebo. The way to proceed is just to use the ROS repository (it willautomatically install gazebo5
) and do not use the osrfoundationrepository.
Indigo
ROS Indigo hosts the 2.x version of Gazebo.For a fully-integrated ROS system, we recommend using the 2.x version of Gazebo.The way to proceed is just to use the ROS repository (it will automatically install gazebo2
)and do not use the osrfoundation repository.
Using a specific Gazebo version with ROS
Warning!: Using this option, you won't be able to use any ROS Ubuntu packagerelated to Gazebo from ROS deb repository. The equivalent of gazebo_ros_pkgs
can be installed from debian packages, but all other software (such asturtlebot_gazebo) must be built fromsource. Thanks to catkin workspacesthis is quite easy to do.
There is a way of using any specific version of gazebo and ROS if really needed:
Gazebo 7.x series
The OSRF repository provides -gazebo7-
versions of ROS/Indigo and ROS/Jadegazebo wrappers (gazebo7_ros_pkgs
) which are built on top of the gazebo7
package. The steps to use them are:
- Add the osrfoundation repository to your sources list.
- Install
ros-$ROS_DISTRO-gazebo7-ros-pkgs
from the osrfoundation repository, which will install thegazebo7
package. - Use catkin workspaces to compile the rest of the software used from source.
Gazebo 6.x series
The OSRF repository provides -gazebo6-
versions of ROS/Indigo and ROS/Jadegazebo wrappers (gazebo6_ros_pkgs
) which are built on top of the gazebo6
package. The steps to use them are:
- Add the osrfoundation repository to your sources list.
- Install
ros-$ROS_DISTRO-gazebo6-ros-pkgs
from the osrfoundation repository, which will install thegazebo6
package. - Use catkin workspaces to compile the rest of the software used from source.
Gazebo 5.x series
The OSRF repository provides -gazebo5-
versions of ROS/Indigo gazebo wrappers(gazebo5_ros_pkgs
) which are built on top of the gazebo5
package.The steps to use them are:
- Add the osrfoundation repository to your sources list.
- Install
ros-indigo-gazebo5-ros-pkgs
from the osrfoundation repository, which will install thegazebo5
package. - Use catkin workspaces to compile the rest of the software used from source.
FAQ
I am not using ROS at all, which version should I use?
If you don't need ROS support, the recommended version is the latest released version that can beinstalled using the osrfoundation repo.
I want to use the bullet/simbody/dart physics engine, which version of Gazebo should I use?
Starting from gazebo4
, bullet and simbody support is built into the Ubuntu package,so please follow the above instructions to use gazebo4
in combination with ROS.Dart still requires gazebo installation from source (starting from gazebo3
),so you can use gazebo3
or above and follow the instructions above in this page to make it work with ROS.
I need to use gazebo5/gazebo6/gazebo7 and ROS Indigo, what can I do?
Warning!: Using this option, you won't be able to use any ROS Indigo package related to Gazebo from ROS deb repository. The way to go is to build them from source. Thanks to catkin workspaces this is quite easy to do.
If you need some features only present in version 5.x, 6.x or 7.x of Gazebo,there is a way of installing gazebo5
, gazebo6
or gazebo7
and ROS Indigo.Please follow the instructions about how to use ROS with gazebo4, gazebo5 orgazebo6 which are in this same document.
I need to use gazebo6/gazebo7 and ROS Jade, what can I do?
Warning!: Using this option, you won't be able to use any ROS Jade packagerelated to Gazebo from ROS deb repository. The way to go is to build them fromsource. Thanks to catkin workspaces this is quite easy to do.
If you need some features only present in versions 6.x/7.x of Gazebo,there is a way of installing gazebo6
or gazebo7
and ROS Jade. Pleasefollow the instructions about how to use ROS with gazebo6 packagewhich are in this same document.
Some ROS packages conflict with GazeboX ROS Wrappers!
Note that each ROS distribution is designed to be used with an specific versionof Gazebo (gazebo5
in Jade). When someone chooses to use a different versionof Gazebo than the one recommended in the ROS distribution, problems may appearand some of them could be unsolvable.
If you a find a dependency conflict (for example with RVIZ) after trying toinstall one of the versions described in this document, you will need toprobably install ROS or Gazebo from source.
Gazebo與ROS版本說明的更多相关文章
- Gazebo機器人仿真學習探索筆記(二)基本使用說明
在完成Gazebo7安裝後,需要熟悉Gazebo,方便之後使用. 部分源代碼可以參考:https://bitbucket.org/osrf/gazebo/src/ 如果還沒有安裝請參考之前內容完成安裝 ...
- man page分類與說明
轉載自http://itzone.hk/article/article.php?aid=200407152225014657 (如有侵權,請留言或來信告知) 前言 Man page是每位程式設計員及U ...
- NUC970 U-Boot 使用說明
U-Boot 使用說明U-Boot 是一個主要用於嵌入式系統的開機載入程式, 可以支援多種不同的計算機系統結構, 包括ARM.MIPS.x86與 68K. 這也是一套在GNU通用公共許可證之下發布的自 ...
- JavaFX結合 JDBC, Servlet, Swing, Google Map及動態產生比例圖 (2):JavaFX建立及程式碼說明 (转帖)
說明:就如同標題一樣,前端會用到JavaFX.Swing.Java Web Start.Google Map 的技術, 後端就是JDBC.Servlet的技術,以及我們會簽署認證jar檔案,這樣才可存 ...
- [DE2i-150] 重建PCIe_Fundmental範例說明
以下資料的整理主要是做備忘錄,避免以後忘了,順便留給需要的人. ========================================== 本文主要是參考友晶科技的DE2i-150光碟裡面的 ...
- vi 常用命令使用說明
vi是一種文字模式全螢幕文字編輯軟體(Text Editor).對初學者來說,vi是個很難用的工具,一般需要2個星期的時間才能得心應手.之所以介紹vi,其理由如下: vi是Unix上的標準文字編輯軟體 ...
- 【转】UniGUI Session管理說明
[转]UniGUI Session管理說明 (2015-12-29 15:41:15) 转载▼ 分类: uniGUI 台中cmj朋友在uniGUI中文社区QQ群里发布的,转贴至此. UniGUI ...
- GlusterFS六大卷模式說明
GlusterFS六大卷說明 第一,分佈卷 在分布式卷文件被随机地分布在整个砖的体积.使用分布式卷,你需要扩展存储,冗余是重要或提供其他硬件/软件层.(簡介:分布式卷,文件通过hash算法随机的分 ...
- 【转载】GlusterFS六大卷模式說明
本文转载自翱翔的水滴<GlusterFS六大卷模式說明> GlusterFS六大卷說明 第一,分佈卷 在分布式卷文件被随机地分布在整个砖的体积.使用分布式卷,你需要扩展存储,冗余是重要或提 ...
随机推荐
- [JS]手动实现一个横屏滚动公告js插件
前言 工作中要用到.在github上找的大部分都是竖屏滚动没办法只能自己手动写. 本来只是想随便实现一下的,结果一时兴起把它弄成了一个简单的小插件,开了个github仓库(希望路过点个星) JS横屏滚 ...
- 使用vba做一个正则表达式提取文本工具
测试中经常会遇到对数据的处理,比如我要删除某些特定数据,数据源是从网页请求中抓取,这时候可能复制下来一大堆内容,其中我们只需要特定的某些部分,笔者通常做法是拷贝到notepad++中处理,结合RegT ...
- 【Python3.6+Django2.0+Xadmin2.0系列教程之三(入门篇-下)】学生信息管理系统
上一篇我们已经初步的构建起了一个学生管理系统的模型,现在接着来继续完善它吧. 1.上传图片/文件等资源 有时候需要添加一些附件,例如,新生刚入学,大家相互之间还不熟悉,希望能通过照片来加深印象,并且方 ...
- Amazon新一代云端关系数据库Aurora(上)
本文由 网易云发布. 在2017年5月芝加哥举办的世界顶级数据库会议SIGMOD/PODS上,作为全球最大的公有云服务提供商,Amazon首次系统的总结 了新一代云端关系数据库Aurora的设计实现 ...
- 解决nodejs中json序列化时Date类型默认为UTC格式
在nodejs中,json序列化时Date类型时,默认转为UTC格式. 如下图 上面只是一个例子,下面我用一个更具体化的例子来展示一个这个情况,我们在开发WEB项目中,经常用到Express组件, 我 ...
- Java类加载器的工作原理
Java类加载器的作用就是在运行时加载类.Java类加载器基于三个机制:委托.可见性和单一性.委托机制是指将加载一个类的请求交给父类加载 器,如果这个父类加载器不能够找到或者加载这个类,那么再加载它. ...
- ubuntu + 远程桌面连接命令 + rdesktop + 连接windows或者ubuntu远程桌面
原文 https://www.cnblogs.com/xiaouisme/p/5166469.html sudo apt-get install rdesktop rdesktop 124.42.12 ...
- [HCNA]VLAN配置Access接口
实验目的 1.理解VLAN的应用场景 2.掌握VLAN的基本配置 3.掌握Access接口的配置方法 4.掌握Access接口加入相应VLAN的方法 实验仪器 eNSP 实验原理 如网络拓扑图所示 各 ...
- oracle拆分一个连续的字符串
create or replace procedure pc( sss out varchar2)isstr varchar2(20):='ph,p,cod,do,cu';en integer:=i ...
- 导出数据子集:带where条件的exp导出
举个例子:用select * from all_objects创建了一张表T.想要导出object_id小于5000的所有行.(1)windows下: exp userid=cms0929/cms09 ...