外观
踩坑GitHub unitreerobotics/unitree_sdk2_python5 个月前
Go2订阅/frontvideostream无数据:ROS2 Jazzy与CycloneDDS不兼容
本文由 AI 根据公开内容整理,可能有误,请以原文为准:Default Go2 camera: should we use /frontvideostream or /api/videohub/request? Thank you ^_^(GitHub unitreerobotics/unitree_sdk2_python #102)
状态:已解决
问题
使用unitree_ros2包订阅Go2的/frontvideostream话题时,ros2 topic hz显示约30Hz正常频率,但Python节点回调函数无法接收任何消息。该问题源于Unitree SDK将视频流直接注入DDS而非标准ROS接口,导致非官方支持的ROS2发行版(如Jazzy)配合CycloneDDS时出现数据解析失败,仅能读取话题头信息而无法获取载荷。
环境
机型:Unitree Go2;软件:unitree_ros2、CycloneDDS;系统:ROS2 Jazzy(故障)、ROS2 Humble(正常)。
解决办法
- 确认当前ROS2发行版,Unitree Go2 SDK官方仅支持ROS2 Humble和ROS1 Noetic,不支持Jazzy等新版。
- 卸载或停用ROS2 Jazzy环境,安装并配置ROS2 Humble及对应的unitree_ros2依赖。
- 检查DDS中间件配置,确保使用与Humble兼容的CycloneDDS版本,避免rmw_fastrtps_cpp混用导致的兼容性问题。
- 在Humble环境下重新编译unitree_ros2工作空间并source环境变量,再次运行订阅脚本即可正常接收Go2FrontVideoData消息。
讨论原作者:@AlexWUrobot 等,版权归原作者所有。
来源
本页事实对应的公开页面,以原文为准。