外观
踩坑GitHub stereolabs/zed-ros2-wrapper11 个月前
ZED ROS2 Wrapper启用Nitros时报错intraprocess communicat。
本文由 AI 根据公开内容整理,可能有误,请以原文为准:intraprocess communication allowed only with volatile durability(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
解决办法
- 在执行
ros2 launch zed_wrapper zed_camera.launch.py命令时,显式添加启动参数enable_ipc:=false以禁用ROS 2原生进程内通信。 - 注意仅设置
extra_arguments=[{'use_intra_process_comms': 'false'}]对Nitros无效,因为Nitros节点默认强制启用IPC且不受该参数控制。 - 接受当前wrapper无法自动检测Nitros并切换配置的限制,在使用Nitros加速时必须手动关闭IPC以避免QoS策略冲突导致的崩溃。
讨论原作者:@leonce-m 等,版权归原作者所有。
来源
本页事实对应的公开页面,以原文为准。