DDS 实现
默认情况下,ROS 2 使用 DDS 作为其 中间件。它与多个 DDS 或 RTPS(DDS 的传输协议)供应商兼容。当前支持 eProsima 的 Fast DDS、RTI 的 Connext DDS、Eclipse Cyclone DDS 和 GurumNetworks 的 GurumDDS。有关支持的 DDS 供应商,请参阅 https://ros.org/reps/rep-2000.html。
默认的 DDS 供应商是 eProsima 的 Fast DDS。
使用 Eclipse Cyclone DDS 解释了如何使用 Cyclone DDS。
使用 eProsima Fast DDS 解释了如何使用 Fast DDS。
使用 GurumNetworks GurumDDS 进行开发 详细说明了如何使用 GurumDDS。
如果您想使用其他供应商的产品,您需要在构建之前单独安装他们的软件。ROS 2 构建将自动为已正确安装和配置的供应商构建支持。
一旦您安装了新的 DDS 供应商,您可以在运行时更改所使用的供应商:使用多个 RMW 实现。
下面提供了安装其他 DDS 供应商的详细说明。
Ubuntu Linux 源码安装
RTI Connext(版本6.0.1,仅支持amd64)
Debian软件包可在ROS 2 apt软件库中找到
您可以安装在ROS 2 apt软件库中提供的RTI Connext的Debian软件包。您需要接受RTI的许可证。
sudo apt update && sudo apt install -q -y rti-connext-dds-6.0.1
运行设置文件以设置``NDDSHOME``环境变量。
cd /opt/rti.com/rti_connext_dds-6.0.1/resource/scripts && source ./rtisetenv_x64Linux4gcc7.3.0.bash; cd -
注意:如果使用``zsh``,在运行设置文件时需要位于脚本所在的目录,以确保其正常工作。
现在您可以按照正常流程进行构建,并同时构建RTI支持。
RTI 提供官方的二进制软件包
您可以通过 RTI Connext DDS 中提供的选项,安装由 RTI 提供的 Linux 版本的 Connext 6.0.1 软件包,其中包括学术、购买或评估。
下载后,在 .run
可执行文件上使用 chmod +x
命令,并执行它。请注意,如果您要安装到系统目录,请同时使用 sudo
命令。
默认安装位置是 ~/rti_connext_dds-6.0.1
安装后,运行 RTI 启动器,并指向您的许可文件(从 RTI 获取)。
将以下行添加到您的 .bashrc
文件中,指向您的许可文件副本。
export RTI_LICENSE_FILE=path/to/rti_license.dat
运行设置文件以设置``NDDSHOME``环境变量。
cd ~/rti_connext_dds-6.0.1/resource/scripts && source ./rtisetenv_x64Linux4gcc7.3.0.bash; cd -
现在您可以按照正常流程进行构建,并同时构建RTI支持。
Ubuntu Linux 二进制安装
RTI Connext(版本6.0.1,仅支持amd64)
要使用RTI Connext DDS,有完整套件安装选项可供选择:参考文档 大学、购买或评估,或者您可以安装 RTI Connext 6.0.1 的仅库 Debian 包,该包可在 OSRF Apt 软件源库中以 `非商业许可证<https://www.rti.com/ncl>`__ 形式获取。
要安装仅库 Debian 包:
sudo apt update && sudo apt install -q -y rti-connext-dds-6.0.1
您需要接受 RTI 的许可协议,并在安装过程中找到一个 'rti_license.dat' 文件。
将以下行添加到您的 .bashrc
文件中,指向您的许可证副本(并对其进行源码引用)。
export RTI_LICENSE_FILE=path/to/rti_license.dat
所有选项都需要您源码引用设置文件以设置 NDDSHOME
环境变量:
cd /opt/rti.com/rti_connext_dds-6.0.1/resource/scripts && source ./rtisetenv_x64Linux4gcc7.3.0.bash; cd -
注意:上述内容可能需要修改以匹配您的RTI安装位置
如果您想安装Connext DDS-Security插件,请参考:此页面。
OSX源码安装
RTI Connext(6.0.1)
如果您还想构建针对RTI Connext DDS的内容,可以使用以下选项:大学、购买或评估
您还需要安装Java运行时环境才能运行RTI代码生成器,可以在`此处 <https://support.apple.com/kb/DL1572?locale=en_US>`__ 获取。
安装后,运行RTI启动器并将其指向您的许可证文件。
在构建工作空间之前,使用设置文件设置``NDDSHOME``环境变量。
source /Applications/rti_connext_dds-6.0.1/resource/scripts/rtisetenv_x64Darwin17clang9.0.bash
您可能需要根据https://community.rti.com/kb/osx510增加共享内存资源。
如果您想安装Connext DDS-Security插件,请参考:此页面。
OSX二进制安装
启用Connext支持
要使用RTI Connext DDS,有以下选项可供选择:大学版、购买版或评估版
安装后,运行RTI启动器并将其指向您的许可证文件。
在构建工作空间之前,使用设置文件设置``NDDSHOME``环境变量。
source /Applications/rti_connext_dds-6.0.1/resource/scripts/rtisetenv_x64Darwin17clang9.0.bash
您可能需要根据 https://community.rti.com/kb/osx510 增加共享内存资源。
如果您想安装Connext DDS-Security插件,请参考:此页面。
Windows源代码安装
RTI Connext 6.0.1
如果您还想构建针对RTI Connext DDS的内容,可以使用以下选项:大学、购买或评估
安装完成后,请使用RTI启动器加载您的许可证文件。
然后在构建ROS 2之前,设置Connext环境:
call "C:\Program Files\rti_connext_dds-6.0.1\resource\scripts\rtisetenv_x64Win64VS2017.bat"
请注意,根据您选择安装RTI Connext DDS的位置和所选的Visual Studio版本,此路径可能需要稍作更改。上述路径是6.0.1版本的当前默认路径,但随着未来版本号的增加,该路径将发生变化。
如果您想安装Connext DDS-Security插件,请参考:此页面。
Windows二进制安装
RTI Connext
要使用RTI Connext DDS,有以下选项可供选择:大学版、购买版或评估版
安装后,运行RTI启动器并将其指向您的许可证文件。
在使用ROS 2之前,请先设置Connext环境:
call "C:\Program Files\rti_connext_dds-6.0.1\resource\scripts\rtisetenv_x64Win64VS2017.bat"
如果您想安装Connext DDS-Security插件,请参考:此页面。