您正在阅读的是旧版本但仍受支持的 ROS 2 文档。 Jazzy.

在 ROS 2 中使用 Python 软件包

目标 解释如何与 ROS 2 生态系统中的其他 Python 软件包互操作。

备注

需要注意的是,如果您打算使用预打包的二进制文件(无论是 辩论 文件或二进制归档发行版),Python 解释器必须与构建原始二进制文件时使用的解释器相匹配。如果您打算使用类似 虚拟机pipenv请确保使用系统解释器。如果使用类似 警笛因此,解释器很可能与系统解释器不匹配,并与 ROS 2 二进制文件不兼容。

通过以下方式安装 rosdep

包含第三方 python 软件包的最快方法是使用相应的 rosdep 密钥(如果有的话)。 rosdep 可以通过

这些 rosdep 键可以添加到您的 package.xml 文件,向构建系统表明你的软件包(和依赖软件包)依赖于这些密钥。在一个新的工作区中,你也可以用以下方法快速安装所有 rosdep 密钥:

rosdep install -yr ./path/to/your/workspace

如果目前没有 rosdep 键,就可以将它们添加到您感兴趣的软件包中。 办事处关键贡献指南.

了解更多有关 rosdep 工具及其工作原理,请查阅 ROSDEP 文档.

通过软件包管理器安装

如果您不想制作 rosdep 密钥,但系统软件包管理器(例如 适切),就可以安装和使用该软件包:

sudo apt install python3-serial

如果软件包可在 Python 软件包索引 (PyPI) 并希望在系统中进行全局安装:

python3 -m 核心 安装 -U 串行

如果软件包在 PyPI 上可用,而您想在本地安装到您的用户:

python3 -m pip install -U --user pyserial

通过虚拟环境安装

首先,创建一个 Colcon 工作区:

mkdir -p ~/colcon_venv/src
cd ~/colcon_venv/

然后设置虚拟环境:

# 制作 a 虚拟 环境  启动 virtualenv -p python3 ./venv
source ./venv/bin/activate
# 制作 有把握的  胶管 没有 尝试  构建  v venv
touch ./venv/COLCON_IGNORE

接下来,在虚拟环境中安装所需的 Python 软件包:

python3 -m pip install gtsam pyserial... etc

现在,您可以构建工作区,并运行依赖于虚拟环境中安装的软件包的 python 节点。

# 资料来源 谦卑  构建
source /opt/ros/humble/setup.bash
Colcon build

备注

如果要使用 Bloom 发布软件包,应将所需软件包添加到 rosdep办事处关键贡献指南.