WSL2+Win10环境下ROS2无法通过VcXsrvr连接X-server启动rviz问题
解决WSL下ROS2环境调用rviz遇ROS Master连接错误且窗口不显示的问题
问题现象
- 运行
rviz后弹出X窗口,提示「无法连接http://localhost:11311处的ROS master,重试中...」 - 手动设置
ROS_IP和ROS_MASTER_URI环境变量后,错误暂时消失,但rviz窗口始终没出现,过段时间又会弹出新地址的同类连接错误 - Windows端的VcXsrvr X-server能正常运行
gedit、xcalc这类程序,网络连通性、防火墙规则、Qt应用测试都没问题,调整.wslconfig配置也无效 - 启动ROS2示例
ros2 launch dummy_robot_bringup dummy_robot_bringup.launch.py后,问题依旧存在
核心问题点
混淆了ROS1与ROS2的工具链及通信架构:
rviz是ROS1专属可视化工具,必须依赖ROS1的Master节点(默认端口11311),需配合roscore启动才能正常工作- ROS2采用DDS分布式通信架构,不存在ROS1的Master节点机制,对应的可视化工具为
rviz2
解决方法
- 先终止所有异常的rviz进程:
pkill rviz - 在ROS2环境下直接运行正确的可视化工具:
rviz2 - 若需配合ROS2节点使用,先启动对应的ROS2节点或launch文件,再打开
rviz2即可正常连接并显示可视化界面
内容的提问来源于stack exchange,提问作者Twenkid
相关产品推荐
相关产品推荐

