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六大卷說明 第一,分佈卷 在分布式卷文件被随机地分布在整个砖的体积.使用分布式卷,你需要扩展存储,冗余是重要或提 ...
随机推荐
- bzoj 5286: [Hnoi2018]转盘
Description Solution 首先注意到一个点不会走两次,只会有停下来等待的情况,把序列倍长 那么如果枚举一个起点\(i\),答案就是 \(min(max(T[j]+n-(j-i)-1)) ...
- [Codeforces]906D Power Tower
虽说是一道裸题,但还是让小C学到了一点姿势的. Description 给定一个长度为n的数组w,模数m和询问次数q,每次询问给定l,r,求: 对m取模的值. Input 第一行两个整数n,m,表示数 ...
- 习题9-8 uva1631
题意: 给你一串密码,每次我们可以转动1-3个数字,求转出最终答案的最小步数 思路: 感觉自己好坑,最开始想的是dp[cur][t1][t2][t3]也就是t1的位置以及连续的三个数的状态 但是卡死循 ...
- [bzoj4873]寿司餐厅
来自FallDream的博客,未经允许,请勿转载,谢谢. Kiana最近喜欢到一家非常美味的寿司餐厅用餐.每天晚上,这家餐厅都会按顺序提供n种寿司,第i种寿司有一个代号ai和美味度di,i,不同种类的 ...
- bzoj4034[HAOI2015]树上操作 树链剖分+线段树
4034: [HAOI2015]树上操作 Time Limit: 10 Sec Memory Limit: 256 MBSubmit: 6163 Solved: 2025[Submit][Stat ...
- 笔记10 在XML中声明切面(1)
1.无注解的Audience package XMLconcert; public class Audience { public void silenceCellPhones() { System. ...
- Hinton's paper Dynamic Routing Between Capsules 的 Tensorflow , Keras ,Pytorch实现
Tensorflow 实现 A Tensorflow implementation of CapsNet(Capsules Net) in Hinton's paper Dynamic Routing ...
- Python笔记(一)——打印输出
一.输出语句input 输出语句print 例:用户输入 username = input("username:") #变量名 显示的字符 password = input( ...
- .9-浅析express源码之请求处理流程(2)
上节漏了几个地方没有讲. 1.process_params 2.trim_prefix 3.done 分别是动态路由,深层路由与最终回调. 这节就只讲这三个地方,案例还是express-generat ...
- 什么样的简历受HR青睐?
简历是我们在求职过程中的名片,那么如何写出更容易受到HR青睐的简历呢? HR可能一天要看上百份的简历,他们都希望能够尽快筛选出合适的人,然后用更多的时间去跟候选人沟通.所以招聘人员一般看一份简历只会花 ...