Configure the ROS Networks: Quick Reference: http://blog.csdn.net/sonictl/article/details/46986565#t4
Above is for the higher user's reference.
Below is the tutorial for the beginners:
在完成了上一节,我们已经可以自己写node向某个topic发送某个msg data structure的Messages。
这一节我想完成 Remote 通信的任务,真正体现ROS的分布式计算的特点。
参考:
http://wiki.ros.org/ROS/NetworkSetup
http://wiki.ros.org/ROS/Tutorials/MultipleMachines
网络连接:
物理连接:
使用Bridge方式桥接,相当于现在有了4台电脑用网线连接起来。(怎么建立见文后附录)
- 配置虚拟机1的ip为:
IP addr:192.168.2.111 Mask:255.255.255.0 DefaultGateway: 192.168.2.1 Bcast:default
- 配置宿主机1的ip为:
IP addr:192.168.2.1 Mask:255.255.255.0 DefaultGateway: 192.168.2.1 Bcast:default - 配置虚拟机2的ip为:
IP addr:192.168.2.222 Mask:255.255.255.0 DefaultGateway: 192.168.2.1 Bcast:default - 配置宿主机2的ip为:
IP addr:192.168.2.2 Mask:255.255.255.0 DefaultGateway: 192.168.2.1 Bcast:default
好,我们假设建立了ubt - ubt之间的连接(怎么建立见文后附录,或http://blog.csdn.net/sonictl/article/details/47005273)
我们在ubt_for_ROS1上ping 192.168.2.222, 在ubt_for_ROS2上ping 192.168.2.111, 都能ping通。
用netcat测试端口是否连通:http://wiki.ros.org/ROS/NetworkSetup#Further_check:_netcat
在ubt_for_ROS1上:
$ netcat -l 1431
在ubt_for_ROS2上:
$ netcat 192.168.2.111 1431此时在俩ubt_for_ROS上的Terminal里,敲入任何字符,回车,都能发送到对方,正如:you will be able to type back and forth between the two consoles, like an old-fashioned chat program.
反过来再测试一遍~ OK。