# ZED ROS2 Wrapper启用Nitros时报错intraprocess communicat。

> 原文链接：https://robotics.hellobike.com/pitfalls/2025-11-24-zed-ros2-wrapper-393
> 频道：pitfalls | 更新日期：2025-11-24 | 标签：auto, github-issue, zed-ros2-wrapper
> 核心摘要：ZED组件配合Isaac ROS Nitros启动时因IPC与QoS冲突崩溃，需在launch参数中显式设置enable_ipc:=false绕过。

# ZED ROS2 Wrapper启用Nitros时报错intraprocess communicat。

::: v-pre
> 本文由 AI 根据公开内容整理，可能有误，请以原文为准：[intraprocess communication allowed only with volatile durability](https://github.com/stereolabs/zed-ros2-wrapper/issues/393)（GitHub stereolabs/zed-ros2-wrapper #393）

**状态**：有绕过办法

## 问题

在Jetson AGX Orin上使用ZED SDK v5.1.1运行zed_wrapper并启用Isaac ROS Nitros时，组件检测到Nitros后抛出std::invalid_argument异常并崩溃，报错信息为intraprocess communication allowed only with volatile durability。

## 环境

Ubuntu 22.04.5 LTS, Jetson AGX Orin (Tegra Orin GA10B), Linux kernel 5.15.148-tegra, ZED SDK v5.1.1, zed-ros2-wrapper commit 755e164b

## 解决办法

1. 在执行 `ros2 launch zed_wrapper zed_camera.launch.py` 命令时，显式添加启动参数 `enable_ipc:=false` 以禁用ROS 2原生进程内通信。
2. 注意仅设置 `extra_arguments=[{'use_intra_process_comms': 'false'}]` 对Nitros无效，因为Nitros节点默认强制启用IPC且不受该参数控制。
3. 接受当前wrapper无法自动检测Nitros并切换配置的限制，在使用Nitros加速时必须手动关闭IPC以避免QoS策略冲突导致的崩溃。

讨论原作者：@leonce-m 等，版权归原作者所有。
:::

## 原始参考来源 (Sources)

- [GitHub stereolabs/zed-ros2-wrapper #393：intraprocess communication allowed only with volatile durability](https://github.com/stereolabs/zed-ros2-wrapper/issues/393)