外观
踩坑Robotics Stack Exchange7 个月前
ROS2 Humble节点话题不可见:Discovery Server未运行或CLI非Super C。
本文由 AI 根据公开内容整理,可能有误,请以原文为准:ROS2 Humble Nodes and Topics Don't Show Up(Robotics Stack Exchange #113412)
状态:已解决
问题
ROS 2 Humble下ros2 run demo_nodes_cpp talker有输出但ros2 node list和ros2 topic list无法显示节点及自定义话题,仅见/parameter_events和/rosout。重启daemon及重装ROS 2无效,问题源于环境变量自动启用了Discovery Server模式。
环境
Ubuntu 22.04.5 LTS, ROS 2 Humble, rmw_fastrtps_cpp, Turtlebot 4
解决办法
- 检查
.bashrc是否配置了Discovery Server,若本地调试无需该模式,切换RMW实现(如CycloneDDS)以恢复Simple Discovery。 - 若必须使用Discovery Server,确保服务端进程已启动;Turtlebot 4等机器人通常自动启动,纯本机调试需手动开启。
- 若服务端已运行但CLI仍不可见,需将ROS 2 Daemon配置为Super Client以获取完整网络流量:设置
export FASTDDS_DEFAULT_PROFILES_FILE=super_client_configuration_file.xml。 - 执行
ros2 daemon stop后执行ros2 daemon start重载配置,再运行ros2 node list验证。
原问题作者:humble_roboticist;采纳答案作者:humble_roboticist。原内容依 CC BY-SA 4.0 授权,本页摘要同样依 CC BY-SA 4.0 授权。
来源
本页事实对应的公开页面,以原文为准。