ROS进阶学习手记 6 -- Configure ROS Network - 利用PC1控制PC2上的乌龟

本文介绍了如何配置ROS网络,实现从一台计算机远程控制另一台虚拟机上的乌龟节点。通过设置静态IP地址、主机名、hosts映射,确保两台虚拟机间能互相ping通,并配置ROS_MASTER_URI和ROS_HOSTNAME环境变量,成功建立ROS网络连接。通过ssh登录和rostopic list验证网络配置的正确性。
摘要由CSDN通过智能技术生成

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。

  === ROS 对 名称 的解析 ===

  当一个ROS节点广播一个topic时,它会提交 hostname:port 组合(URI),别的nodes想要收听这个topic时,会用到这个URI。所以一个node提供的hostname一定要被所有别的nodes用得上,才能与那个topic联系。ROS客户端的库使用了这个名字,这个名字是机器报告的它的hostname。这个hostname 就是在Terminal里运行命令hostname
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值