ROS 2 Dashing Diademata安装和使用文档(含Linux、Windows和OS X)_zhangrelay的博客-程序员秘密

技术标签: ROS2学习笔记与高校课程分享  ROS 2 Dashing Diademata  

全部ROS 2课程参考资料下载链接:https://download.csdn.net/download/zhangrelay/11751608 

在win10安装和使用ROS 2 Dashing:https://blog.csdn.net/ZhangRelay/article/details/101685013

目前,ROS 2最常见的三个版本(期待国产“ROS”早日普及):

ROS 2 Bouncy Bolson ROS 2 Crystal Clemmys ROS 2 Dashing Diademata
2018年7月发布 2018年12月发布 2019年5月发布
支持到2019年7月 支持到2019年12月 支持到2021年5月

 对于ROS 2,官方建议尽可能使用最新版本。个人推荐ROS 2 Dashing Diademata,毕竟支持时间较长,2年。

ROS 2 Bouncy/Crystal/Dashing可共存!可以同时安装在系统中使用。

关于更多详细信息,请参考:ROS 2.0 Target Platforms

对应ROS 2 Dashing Diademata的安装和使用,支持安装包和源码编译,同步支持Linux、Windows和OS X。

ROS 2系列教程侧重基础内容和资讯信息

ROS 1系列教程将全面深度融合AI主题进行更新

Binary packages 安装包

We provide ROS 2 binary packages for the following platforms:

为以下平台提供ROS 2安装包:

Building from source 源码编译

We support building ROS 2 from source on the following platforms:

持在以下平台上从源代码编译ROS 2:


Resources 资源

Setup Locale 区域设置

Make sure you have a locale which supports UTF-8. If you are in a minimal environment, such as a docker container, the locale may be something minimal like POSIX. We test with the following settings. It should be fine if you’re using a different UTF-8 supported locale.

确保支持UTF-8的语言环境。如果处于最小的环境中,例如docker容器,则语言环境可能与POSIX一样精简。使用以下设置进行测试。如果使用不同的UTF-8支持的语言环境,应该没问题。

sudo locale-gen en_US en_US.UTF-8
sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8
export LANG=en_US.UTF-8

Setup Sources 设置安装源

To install the Debian packages you will need to add our Debian repository to your apt sources. First you will need to authorize our gpg key with apt like this:

要安装Debian软件包,需要将Debian库添加到apt源代码中。首先,需要使用以下方式获取授权的gpg密钥:

sudo apt update && sudo apt install curl gnupg2 lsb-release
curl http://repo.ros2.org/repos.key | sudo apt-key add -

And then add the repository to your sources list:

然后将库添加到源列表:

sudo sh -c 'echo "deb [arch=amd64,arm64] http://packages.ros.org/ros2/ubuntu `lsb_release -cs` main" > /etc/apt/sources.list.d/ros2-latest.list'

Install ROS 2 packages 安装ROS 2包

Update your apt repository caches after setting up the repositories.

设置库后更新apt库缓存。

sudo apt update

Desktop Install (Recommended): ROS, RViz, demos, tutorials.

桌面安装(推荐):ROS、RViz、案例、教程。

sudo apt install ros-dashing-desktop

ROS-Base Install (Bare Bones): Communication libraries, message packages, command line tools. No GUI tools.

ROS-Base安装(裸版):通信库、消息包、命令行工具、没有GUI工具。

sudo apt install ros-dashing-ros-base

See specific sections below for how to also install the ros1_bridgeTurtleBot packages, or alternative RMW packages.

有关如何安装ros1_bridgeTurtleBot软件包其他RMW软件包信息,请参阅下面的特定部分。

Environment setup 环境设置

(optional) Install argcomplete 安装命令补全工具argcomplete

ROS 2 command line tools use argcomplete to autocompletion. So if you want autocompletion, installing argcomplete is necessary.

ROS 2命令行工具使用argcomplete来自动完成补全。因此,如果想要自动完成,则需要安装argcomplete。

sudo apt install python3-argcomplete

Sourcing the setup script 导入配置脚本

Set up your environment by sourcing the following file.

通过如下命令设置环境。

source /opt/ros/dashing/setup.bash

You may want to add this to your .bashrc.

通过如下命令添加到.bashrc。同样适用于zshrc等。

echo "source /opt/ros/dashing/setup.bash" >> ~/.bashrc

Install additional RMW implementations 安装附加RMW实现

By default the RMW implementation FastRTPS is used. If using Ardent OpenSplice is also installed.

To install support for OpenSplice or RTI Connext on Bouncy:

默认情况下,使用RMW实现FastRTPS。如果还使用了Ardent OpenSplice。

在Bouncy上安装对OpenSplice或RTI Connext的支持:

sudo apt update
sudo apt install ros-dashing-rmw-opensplice-cpp # for OpenSplice
sudo apt install ros-dashing-rmw-connext-cpp # for RTI Connext (requires license agreement)

By setting the environment variable RMW_IMPLEMENTATION=rmw_opensplice_cpp you can switch to use OpenSplice instead. For ROS 2 releases Bouncy and newer, RMW_IMPLEMENTATION=rmw_connext_cpp can also be selected to use RTI Connext.

If you want to install the Connext DDS-Security plugins please refer to this page.

通过设置环境变量,RMW_IMPLEMENTATION=rmw_opensplice_cpp可以切换为使用OpenSplice。对于ROS 2发布Bouncy和更新版本,RMW_IMPLEMENTATION=rmw_connext_cpp也可以选择使用RTI Connext。

如果要安装Connext DDS-Security插件,请参阅此页面

Install additional packages using ROS 1 packages 使用ROS 1功能包等

The ros1_bridge as well as the TurtleBot demos are using ROS 1 packages. To be able to install them please start by adding the ROS 1 sources as documented here.

If you’re using Docker for isolation you can start with the image ros:melodic or osrf/ros:melodic-desktop (or Kinetic if using Ardent). This will also avoid the need to setup the ROS sources as they will already be integrated.

Now you can install the remaining packages:

ros1_bridge还有TurtleBot演示使用ROS 1包。为了能够安装它们,请首先添加ROS 1源,如此处所述

如果使用Docker进行隔离,则可以从图像开始,ros:melodic或者osrf/ros:melodic-desktop如果使用Ardent则使用Kinetic)。这也将避免设置ROS源的需要,因为它们已经被集成。

现在可以安装剩余的包:

. code-block:: bash

sudo apt update sudo apt install ros-dashing-ros1-bridge

The turtlebot2 packages are not currently available in Dashing.

目前,Dashing中不提供turtlebot2软件包。

Build your own packages 编译自定义功能包

If you would like to build your own packages, refer to the tutorial "Using Colcon to build packages".

如果想编译自己的包,请参阅教程“使用Colcon编译包”


其他系统安装和使用说明参考官方原文文档


其他资讯(来源ROS官网)

We’re especially excited to let you know that Dashing Diademata is the first long(er)-term support (LTS) release for ROS 2. Dashing Diademata是ROS 2的第一个长期限支持(LTS)版本。After several years of development, and following a big boost in productivity over the past half year from new contributors, including the TSC membership, we’ve reached a level of maturity with ROS 2 such that we’re extending the support period for Dashing to be two years, through May 2021.

So whether you’re looking for a platform on which to build a new application, or planning to migrate an existing ROS 1 system, Dashing should be your starting point. Over the coming two years, we’ll be providing patches for Dashing. While we can’t guarantee API compatibility between ROS distributions, for the updates to Dashing we aim to maintain API and ABI stability. This matches what we’ve done in the past with ROS 1 LTS distributions.

To get an idea of what’s in this release and how to update existing code from ROS 2 Crystal, be sure to read the Dashing release page.

Here are a few features and improvements we would like to highlight in this release:

  • Components are now the recommended way to write your node. They can be used standalone as well as being composed within a process and both ways are fully support from launch files.
  • 现在,组件是编写节点的推荐方法。它们既可以单独使用,也可以在一个进程中组合使用,并且两种方式都完全支持launch文件。
  • The intra-process communication (C++ only) has been improved - both in terms of latency as well as minimizing copies.
  • The Python client library has been updated to match most of the C++ equivalent and some important bug fixes and improvements have landed related to memory usage and performance.
  • Parameters are now a complete alternative to dynamic_reconfigure from ROS 1 including constraints like ranges or being read-only.
  • By relying on (a subset of) IDL 4.2 for the message generation pipeline it is now possible to use .idl files (beside .msg / .srv / .action files). This change comes with support for optional UTF-8 encoding for ordinary strings as well as UTF-16 encoded multi-byte string.
  • Command line tools related to actions and components.
  • Support for Deadline, Lifespan & Liveliness QoS
  • MoveIt 2.0 alpha release
  • MoveIt 2.0 alpha版本
  • OpenEmbedded Thud (2.6)/webOS OSE as Tier 3 supported platform

We’re looking forward to getting your feedback and contributions, and to hearing about your new applications based on Dashing! If you have demonstrations of Dashing from your own work that you can share, feel free to post in this thread.

We also invite you to release your ROS 2 packages in Dashing! A huge thanks to all those who’ve already participated in our pre-release testing and packaging effort.

And finally the name of the next ROS 2 release scheduled for November 2019 will be:

Eloquent Elusor

In light of the build.ros.org security issue we have decided to retire the key previously used to sign ROS 2 apt repositories.

We believe the ROS 2 repositories to be intact. We have no reason to believe that any malicious access or use of the GPG key occurred. To be abundantly cautious we are updating the repository signing key to curb future abuse of the potentially exposed key but the packages in the repository are unchanged. When we perform the first sync for Dashing later today it will update the signing key for all ROS 2 repositories.

Adding the new repository key

You may get the key from the GPG keyserver network, which requires apt-key and GnuPG

sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654

or from the ROS 2 build repository host

curl http://repo.ros2.org/repos.key | sudo apt-key add -

Removing the old key from your apt keyring

This key is still used for ROS 1 packages on packages.ros.org and the key has not been updated there yet. Removing the key will prevent updates from the ROS and ROS testing (shadow fixed) repositories until they are redeployed.

If you’re only using packages from ROS 2, you can safely remove this key now. No package updates will be pushed to repositories signed with this key. Unless you need to install ROS 1 packages not previously installed on your system, you could remove it now to be as safe as possible.

sudo apt-key del 421C365BD9FF1F717815A3895523BAEEB01FA116

After the ROS 1 repository has been redeployed there will be no future legitimate use of this key and you should remove it from your systems. When that redeployment occurs we will make another announcement and update this thread.


 

 

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/ZhangRelay/article/details/90695078

智能推荐

TypeScript 从零实现 axios 0x2 项目初始化_axios typescript 发布npm rollup_cellinlab的博客-程序员秘密

功能分析初始化项目TypeScript libray startergit clone https://github.com/alexjoverm/typescript-library-starter.git ts-axiosnpm i关联远程仓库git remote add origin https://gitee.com/username/ts-axios.git...

php排行榜系统,PHP CMS系统排行榜_weixin_39644915的博客-程序员秘密

CMS系统中文名称为网站内容管理系统,大概在2002年左右,如果想进行网站的内容管理,那么基本上都是靠手工维护,但是一个网站的内容成千上万,如果还继续靠手工完成那是基本上不可能的事,如果有CMS系统来支撑你的网站,那将节省了不少的人力,只要你能够配置好!站长只需要定时更新就可以了!这样通俗的解释,很容易理解的!TOP 4帝国CMS帝国CMS是不同于以往的CMS系统,他可以直接在后台通过新建表、自定...

安卓仿微信朋友圈拍照获取照片,压缩照片,显示上传,可以预览根据手势放大与缩小图片_photoadapter.setmaxcount(_屌丝逆袭记的博客-程序员秘密

最近项目要求做一个仿微信朋友圈拍照获取照片显示上传,要对图片进行压缩处理,防止OOM,废话不多说,下面进行拍照功能实现:实现效果如图:1.选择界面:    预览界面(可以根据手势放大缩小):已经封装成一个lib包,直接添加项目依赖就能使用:下载依赖包地址源码:https://download.csdn.net/download/zqr772791008/10300742项目大概长这样:对类的说明:...

【更新中】SmartGit 注册码 算法注册机_smartgit 22 注册码_准女婿_的博客-程序员秘密

软件官网地址:http://www.syntevo.com/smartgit算法已基本摸清,有空实现一下注册机

1.Ext文件系统原理、链接文件_wangzhenyu177的博客-程序员秘密

0.目录目录文件系统概念索引式文件系统1 superblockinodeblock2 读取文件Ext系列文件系统1 Ext文件系统结构2 查看文件系统命令3 Ext文件系统如何存储和读取文件31 存储文件32 读取文件过程4 创建文件过程与日志文件系统41 创建文件过程42 数据不一致状态43 日志文件系统5 链接文件51 硬链接52 软链接1.文件系统概念格式化

随便推点

【狂神说Java】JavaScript快速入门_白夜橙的博客-程序员秘密

文章根据B站狂神说Java视频教程,视频链接:https://space.bilibili.com/95256449。目录1、什么是JavaScript1.2.历史2、快速入门2.1.引入Javascript2.2.基本语法入门2.3.数据类型2.4.严格检查模式1、什么是JavaScriptJavascript是一门世界上最流行的脚本语言(十天开发完成)一个合格的后端,必须精通Javascript1.2.历史https://blog.cs.

未能加载文件或程序集 'System.Web.Extensions, Version=1.0.61025.0, ……_zlb168的博客-程序员秘密

昨天在配置服务器的时候,发现了一个问题,问题提示信息是:未能加载文件或程序集 System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35。自己想不明白,就从网络上查找资料发现,上述错误大致说明了:程序使用了 ASP.NET AJAX,但 .NET Frame

jax-ws cxf_带有CXF的WS-Security_cusi77914的博客-程序员秘密

像本系列前面的文章中讨论的Axis2和Metro Web服务堆栈一样,Apache CXF(您在“ CXF简介 ”中遇到了)支持使用WS-Security SOAP扩展技术来为消息提供全方位的与安全性相关的功能。交流。 与这些其他堆栈类似,CXF使用WS-SecurityPolicy配置WS-Security处理(尽管也可以进行手动配置)。 CXF的实现的WS-Security的是基于开放...

CentOS-Stream安装ansible报错 - nothing provides python3.9dist(ansible-core) needed by ansible-6.3.0-1_Frank.高的博客-程序员秘密

- nothing provides python3.9dist(ansible-core) needed by ansible-6.3.0-1.el8.noarch - nothing provides (python3.9dist(ansible-core) >= 2.13.3 with python3.9dist(ansible-core) < 2.14) needed by ansible-6.3.0-1.el8.noarch(try to add '--skip-broken' to s

Huawei 5G CPE Pro 2 Router Review_华为5gcpepro2固件_小2不语的博客-程序员秘密

The first generation Huawei 5G Router – Huawei 5G CPE Pro was already available in the market for long time. Recently, Huawei provides the upgraded version huawei 5G CPE Pro 2(Model Number: H122-373). In some countries, Huawei 5G CPE Pro 2 is introduced fo

android中的长按复制_android 长按复制_冯昕睿feng的博客-程序员秘密

android:textIsSelectable=”true” 重点写在最前面,只用在textView中加入这个属性就可以满足长按复制了一。网上查了下有两中方式可以实现长按复制粘贴 1)使用setTextIsSelectable()方法  代码中直接对TextView使用setTextIsSelectable()方法,将TextView设置成可点按选择的即可.  TextView tv =

推荐文章

热门文章

相关标签