首先,致谢易科(ExBot)ROSWiki中文社区

重要参考文献:

Running ROS across multiple machines

http://wiki.ros.org/ROS/Tutorials/MultipleMachines

ARM端和PC端ROS通讯

http://www.roswiki.com/read.php?tid=312&fid=9

首先,配置主PC机(master):

修改IP地址等,

$ hostname  //可以查看主机名

$ hostname rosxx  //临时修改主机名

$ sudo gedit /etc/hosts

在文件中添加PC(listener)地址,如:

192.168.3.201  ros1  //pc1 hostname

192.168.3.202  ros2  //pc2 hostname

具体如下图所示:

然后,修改bashrc

$ gedit ~/.bashrc

在最下端添加:

export ROS_HOSTNAME=RelayBot-CSLG
export ROS_MASTER_URI=http://192.168.3.200:11311

如下图所示:

添加完成后,注销重新登陆一下。

PC-ros1:

ros1类似,具体如下图所示:

PC-ros2:

在ros2配置与ros1类似,不详细上图,配置完成后。

在主PC启动roscore,然后启动openni2,在ros2下,启动rqt_image_view,就可以看到camera视频,

如下图所示。

在主PC或ros1,ros2都可以用rostopic list。

ros2笔记本上有usb摄像头,这里注意格式mjpeg还是yuyv等,在ros2启动usb_cam

在主PC可以看到,如下图所示的结果:

也可以由主机启动节点,控制ros1,ros2的Arduino底盘运动等,这里需要注意所有PC上的node不能重名,

可以远程键盘控制小车运动等。

在多台PC上进行ROS通讯-学习笔记的更多相关文章

  1. ROS进阶学习笔记(11)- Turtlebot Navigation and SLAM - ROSMapModify - ROS地图修改

    ROS进阶学习笔记(11)- Turtlebot Navigation and SLAM - 2 - MapModify地图修改 We can use gmapping model to genera ...

  2. 用网线直连的两台PC上的虚拟机通过网线通信的配置

    Configure the ROS Networks: Quick Reference: http://blog.csdn.net/sonictl/article/details/46986565#t ...

  3. 开发ProxyServer的时候如何在一台PC上调试

    为了测试在真实的网络环境下你的ProxyServer性能如何,而你手头又只有一台电脑,怎么办? 打开你的ProxyServer(我用java写的,因此ProxyServer的进程是javaw.exe) ...

  4. 同一台PC,配置多个同一存储平台下的Git账号【两个码云账号,配置在同一台PC上】

    问题:配置完 SSH Key, 使用[http地址]拉取代码异常.报一些没有权限的问题. 原因:配置多个gitee账号(码云)后.拉取代码时,应使用~.ssh/config中Host地址,而不是码云给 ...

  5. 倍福TwinCAT(贝福Beckhoff)常见问题(FAQ)-如何在同一台PC上运行多个TwinCAT程序

    右击桌面右下角的TC2图标,切换到PLC Configuration,然后在Plc Settings中设置数量为4(TC2最多可以运行的数量是4个),然后点击Apply   可能需要输入登录用户名和密 ...

  6. ROS 进阶学习笔记(13) - Combine Subscriber and Publisher in Python, ROS

    Combine Subscriber and Publisher in Python, ROS This article will describe an example of Combining S ...

  7. ROS 进阶学习笔记(12) - Communication with ROS through USART Serial Port

    Communication with ROS through USART Serial Port We always need to communicate with ROS through seri ...

  8. ROS进阶学习笔记(11)- Turtlebot Navigation and SLAM

    (写在前面: 这里参考rbx书中第八章和ROS社区教程进行学习,先看社区教程) ===  Doing the Turtlebot Navigation   === ref ros wiki: http ...

  9. ROS进阶学习笔记(10)- 搭建自己的Turtlebot(5) - Interactive Makers

    用interactive_makers控制Turtlebot移动 interactive_makers 是Willow Garage公司开发的一个虚拟控制工具,可通过鼠标在虚拟环境中的操作,完成实际机 ...

随机推荐

  1. ubuntu ssh 防止登陆断开

    client 端: echo -e '\nServerAliveInterval 30' >> ~/.ssh/ssh_config server 端: echo -e '\nClientA ...

  2. iOS开源加密相册Agony的实现(五)

    简介 虽然目前市面上有一些不错的加密相册App,但不是内置广告,就是对上传的张数有所限制.本文介绍了一个加密相册的制作过程,该加密相册将包括多密码(输入不同的密码即可访问不同的空间,可掩人耳目).Wi ...

  3. Android的Spinner控件用法解析

    微调框 微调框提供一种方法,让用户可以从值集中快速选择一个值.默认状态下,微调框显示其当前所选的值. 触摸微调框可显示下拉菜单,其中列有所有其他可用值,用户可从中选择一个新值. 您可以使用 Spinn ...

  4. CSS3 滤镜学习

    html篇 样式篇 grayscale sepia saturate hue-rotate invert opactiy brightness contrast blur drop-shadow 综合 ...

  5. 协议系列之TCP/IP协议

    根据前面介绍的几种协议,将IP协议.TCP协议.UDP协议组合起来,于是便有了TCP/IP协议.现在很多的应用的通信都是建立在TCP/IP协议的基础上,运用非常广泛,很有必要对其学习一下. 打个不太恰 ...

  6. Cocos2D中节点Z序的计算规则

    大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请多提意见,如果觉得不错请多多支持点赞.谢谢! hopy ;) 免责申明:本博客提供的所有翻译文章原稿均来自互联网,仅供学习交 ...

  7. Springmvc注解注入的简单demo

    今天看了注解注入觉得确实简化了xml配置,一般情况下Spring容器要成功启动的三大要件分别是:Bean定义信息,Bean实现类,以及spring本身.如果采取基于XML的配置,Bean信息和Bean ...

  8. 使用IDEA运行Spark程序

    使用IDEA运行Spark程序 1.安装IDEA 从IDEA官网下载Community版本,解压到/usr/local/idea目录下. tar –xzf ideaIC-13.1.4b.tar.gz ...

  9. iOS开发之*.a静态库注意事项

    以*.a静态库的形式引入工程的(比如:libUploadLib.a),*.a里面的class有category形式实现时,除了在工程Target的 Build Phases里面的 Link Binar ...

  10. Linux系统编程----孤儿进程

    什么是孤儿进程? 孤儿进程,  指在父进程退出后,而子进程还在运行,这个子进程就成了孤儿进程,这时由init进程(pid=1)接管 来看看例子: #include <stdio.h> #i ...