在Windows上安装ROS 2

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

备注

The pre-built binary does not include all ROS 2 packages. All packages in the ROS base variant are included, and only a subset of packages in the ROS desktop variant are included. The exact list of packages are described by the repositories listed in this ros2.repos file.

系统要求

仅支持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]

备注

To install debug libraries for ROS 2, see Extra Stuff for Debug. Then continue on with downloading ros2-rolling-*-windows-debug-AMD64.zip.

  • Unpack the zip file somewhere (we'll assume C:\dev\ros2_rolling).

环境设置

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

call C:\dev\ros2_rolling\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. If you installed your workspace with colcon as instructed above, "uninstalling" could be just a matter of opening a new terminal and not sourcing the workspace's setup file. This way, your environment will behave as though there is no Rolling install on your system.

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

    rmdir /s /q \ros2_rolling
    

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

To download the ROS 2 debug libraries you'll need to download ros2-rolling-*-windows-debug-AMD64.zip. Please note that debug libraries require some more additional configuration/setup to work as given below.

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

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

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