在Windows上安装ROS 2

本页介绍如何通过预编译的二进制包在Windows上安装ROS 2。 [Alyssa@5639]

注解

预编译的二进制文件不包括所有ROS 2包。包括 ROS base variant 中的所有包,并且只包括 ROS desktop variant 中的包的一个子集。包的准确列表在 this ros2.repos file 仓库中完整列出。 [Alyssa@5527]

系统要求

仅支持Windows 10。

安装先决条件

安装Chocolatey

Chocolatey是Windows的包管理器,请按照安装说明进行安装: [Alyssa@5643]

https://chocolatey.org/

您将使用Chocolatey安装一些其他开发工具。 [待校准@5645]

安装Python

打开命令行终端并键入以下内容以通过Chocolatey安装Python: [Alyssa@5647]

choco install -y python --version 3.8.3

ROS 2希望python的安装文件可以在目录 C:\python 38 中找到。仔细检查它是否有安装在那里。 [Alyssa@5648]

安装Visual c ++ 可再发行版 [待校准@5649]

打开命令行终端并键入以下内容以通过Chocolatey安装它们: [Alyssa@5650]

choco install -y vcredist2013 vcredist140

安装OpenSSL

this page 下载 * Win64 OpenSSL v1.1.1L * OpenSSL安装程序。滚动到页面底部并下载 * Win64 OpenSSL v1.1.1L *。不要下载Win32或Light版本。 [待校准@5652]

使用默认参数运行安装程序,以下命令将假定您使用了默认安装目录。 [Alyssa@5653]

此命令将设置一个永久性的环境变量: [Alyssa@5654]

setx -m OPENSSL_CONF "C:\Program Files\OpenSSL-Win64\bin\openssl.cfg"

您还需要将OpenSSL-Win64的bin文件夹添加到您的路径。您可以通过单击窗口图标,键入 "Environment Variables" ,然后单击 "Edit the system environment variables" 来实现这一点。在弹出的对话框中,单击 "Environment Variables" ,然后单击底部窗格上的 "Path" ,最后单击 "Edit" 并添加以下路径。 [Alyssa@5655]

  • C:\Program Files\OpenSSL-Win64\bin\

安装Visual Studio

安装Visual Studio 2019。

如果您已经拥有Visual Studio 2019 (专业版、企业版) 的付费版本,请跳过此步骤。

微软提供了一个免费的Visual Studio 2019版本,叫做社区版,可用于编译使用ROS 2的应用程序。 你可以通过此链接直接下载安装包. [Alyssa@5660]

确保已安装Visual C++ 功能。 [待校准@5661]

确保已安装它们的一种简单方法是在安装过程中选择 Desktop development with C++ 工作流程。 [Alyssa@5662]

../_images/vs_community_screenshot.png

通过在要安装的组件列表中取消选择它们,确保没有安装C++ cmake工具。 [Alyssa@5663]

安装额外的DDS实现 (可选) [待校准@5495]

如果您想使用除默认的eProsima快速RTPS之外的其他DDS或RTPS供应商,您可以参考 here. [Alyssa@5664]

安装OpenCV

一些示例需要安装OpenCV。 [待校准@5666]

你可以从 https://github.com/ros2/ros2/releases/download/opencv-archives/opencv-3.4.6-vc16.VS2019.zip 下载OpenCV 3.4.6的预编译版本。 [Alyssa@5667]

假设您将其解压缩到 C:\opencv,请在命令行终端下键入以下内容 (需要管理员权限): [Alyssa@5668]

setx -m OpenCV_DIR C:\opencv

由于您使用的是预编译的ROS版本,因此我们必须告诉它在哪里可以找到OpenCV库。您必须在 PATH 变量中加入 ``C:opencvx64vc16bin``路径。 [Alyssa@5669]

安装依赖项

有一些依赖项在Chocolatey包数据库中不可用。为了简化手动安装过程,我们提供了必要的Chocolatey包。 [待校准@5670]

由于一些chocolatey包需要依赖它,我们从安装CMake开始 [Alyssa@5671]

choco install -y cmake

您需要将CMake bin文件夹 C:\Program Files\CMake\bin 附加到您的系统路径。 [Alyssa@5672]

请从 这个 GitHub仓库下载这些包。 [Alyssa@5673]

  • asio.1.12.1.nupkg

  • bullet.2.89.0.nupkg [Alyssa@5675]

  • cunit.2.1.3.nupkg

  • eigen-3.3.4.nupkg

  • tinyxml-usestl.2.6.2.nupkg

  • tinyxml2.6.0.0.nupkg

  • log4cxx.0.10.0.nupkg

下载这些包后,打开一个管理权限的shell终端并执行以下命令: [Alyssa@5681]

choco install -y -s <PATH\TO\DOWNLOADS> asio cunit eigen tinyxml-usestl tinyxml2 log4cxx bullet

请用您下载安装包到的文件夹路径替换 <PATH\TO\DOWNLOADS>[Alyssa@5682]

您还必须为命令行工具安装一些python依赖项: [待校准@5683]

python -m pip install -U catkin_pkg cryptography empy ifcfg lark-parser lxml netifaces numpy opencv-python pyparsing pyyaml setuptools rosdistro

RQt的依赖项 [Alyssa@5684]

python -m pip install -U pydot PyQt5

要运行rqt_graph,您还需要安装 Graphviz[Alyssa@5685]

choco install graphviz

您需要通过上面给出的步骤打开 "Edit the system environment variables" 窗口,将Graphviz bin文件夹 C:\Program Files\Graphviz\bin 添加到您的系统路径。 [Alyssa@5686]

下载ROS 2

注解

可能有多个二进制下载选项,这些选项可能会导致文件名不同。 [Alyssa@5689]

注解

要为ROS 2安装调试库,请参见 Extra Stuff for Debug 。然后继续下载 ros2-foxy-*-windows-debug-AMD64.zip[待校准@5690]

  • 将zip文件解压缩到某个地方 (我们假设为 C:\dev\ros2_foxy)。 [Alyssa@5691]

环境设置

打开一个shell命令终端并source ROS 2的安装文件以配置工作空间的环境: [Alyssa@5610]

call C:\dev\ros2_foxy\local_setup.bat

如果没有其他错误,正常情况下前一个命令只会输出 一次 “系统找不到指定的路径”。 [Alyssa@5612]

尝试运行一些例子 [Alyssa@5504]

在一个命令行终端中,如上所述设置ROS 2环境,然后运行一个C++的 talker : [Alyssa@5692]

ros2 run demo_nodes_cpp talker

启动另一个命令行终端并运行一个Python的 listener : [Alyssa@5693]

ros2 run demo_nodes_py listener

你应该看到了 talker 说这是 Publishing 消息 ,listenerI heard 这些消息。这证明了C++和Python的APIs都是正常工作的。万岁! [Alyssa@5507]

安装后的下一步

继续使用 教程和Demo 来配置您的环境,创建您自己的工作区和包,并学习ROS 2核心概念。 [小鱼@5509]

使用ROS 1 bridge

ROS 1bridge可以连接从ROS 1到ROS 2的话题,反之亦然。看看这个专门的文献 documentation 如何编译和使用ROS 1bridge。 [Alyssa@5511]

附加RMW实现 (可选)

ROS 2使用的默认中间件是 Fast-RTPS ,但中间件 (RMW) 可以在运行时进行替换。查看 guide 了解如何使用多个RMWs。 [Alyssa@5513]

故障排除

故障排除技术可以参考 这份文档[Alyssa@5637]

卸载

  1. 如果你按照上面的指示用colcon安装了你的工作空间, "uninstalling" 可能只是打开一个新的终端,而没有source工作空间的 setup 文件。因此,您的环境就会表现得好像您的系统上没有安装Foxy。 [Alyssa@5523]

  2. 如果您还打算释放所有空间,则可以使用以下命令删除整个工作空间的目录: [Alyssa@5524]

    rmdir /s /q \ros2_foxy
    

调试相关的额外内容 [Alyssa@5694]

要下载ROS 2调试库,您需要下载 ros2-foxy-*-windows-debug-AMD64.zip 。请注意,调试库需要一些额外的配置/设置才能使用,如下所示。 [Alyssa@5695]

Python的安装可能需要修改以启用调试标志同时安装调试二进制包: [Alyssa@5696]

(可选) 从aka.ms/ros构建安装ROS 2 [Alyssa@5703]

https://aka.ms/ros项目托管针对发布快照的ROS 2构建。你可以在 here 找到最新的说明书。 [Alyssa@5704]