ROS2分布式通讯失败
-
环境
2台 电脑,
虚拟机均为Oracle VM VirtualBox
网络都是桥接
系统均为Ubuntu22.04,
ROS2版本均为humble问题详情
1、 两台电脑均能成功运行用键盘控制小海龟运动案例,并单机内节点通讯,但是在电脑1运行ros2 run turtlesim turtlesim_node,在电脑2运行ros2 run turtlesim turtle_teleop_key,但是海龟没有动起来,在电脑2也没有订阅到相关话题,反过来也一样。
2、 两台电脑处于同一局域网中,互相能够ping通
3 、两台电脑均关闭了防火墙(域网络、专用网络、公用网络)
尝试解决
1 、用 export ROS_DOMAIN_ID=0 在两电脑中设定一致的DOMAIN ID,不行
2、直接指定服务地址:http://fishros.org/doc/ros2/humble/Tutorials/Advanced/Discovery-Server/Discovery-Server.html?highlight=discovery
测试正常,但是小海龟依然不动