ROS开发实践(十)——ROS多机通讯及网络配置讲解
一、控制背景
- 我们设计了一台ROS机器人,其中ROS机器人上搭载 树莓派4b 控制器,我们将其设为ROS主机,主要负责激光雷达扫描、视觉信息读取、SLAM算法运行等工作;同时,我们将电脑端的虚拟机设为ROS从机,主要负责运行RVIZ、GAZEBO 以及键盘控制节点等功能。
二、控制模式
- 如下图所示,ROS主机发出WIFI信号,ROS从机连接WIFI信号,使得ROS主机和从机均位于同一局域网之下。我们采用这种控制方式可以大大节约树莓派(ROS主机)的资源,从而使运行效率更高。
三、网络连接方式
上图中采用ROS从机连接ROS主机发出的WIFI,从而达到两者在同一局域网的目的。其实下述两种方案均可实现两者在同一局域网的目的。
通过实际项目测试发现,方案2的网络更加稳定。
四、网络配置
1.我们通过 “ ifconfig ”的命令分别来查询ROS主机和ROS从机的IP地址。
关于“ ifconfig ”命令的详解,读者可以参考此片文章:ifconfig详解
此时,我们可以得到ROS从机(虚拟机端)的IP为:192.168.1.200
使用同样的方法我们可以得到ROS主机(树莓派端)的IP为:192.168.1.101
2. 配置 .bashrc 文件
我们使用下述命令打开 .bashrc 文件
sudo gedit ~/.bashrc
在ROS主机的 .bashrc 文件末尾添加
export ROS_MASTER_URI=http://192.168.1.101:11311
export ROS_HOSTNAME=192.168.1.101
在ROS从机的 .bashrc 文件末尾添加
export ROS_MASTER_URI=http://192.168.1.101:11311
export ROS_HOSTNAME=192.168.1.200
其中:
3.配置host文件
关于host文件的作用可以,读者可以查阅此篇文章:host文件
我们使用下述命令打开host文件:
sudo vi /etc/hosts
4.软件设置注意事项
5.远程控制
ROS开发实践(十)——ROS多机通讯及网络配置讲解相关推荐
- 四.卡尔曼滤波器(EKF)开发实践之四: ROS系统位姿估计包robot_pose_ekf详解
本系列文章主要介绍如何在工程实践中使用卡尔曼滤波器,分七个小节介绍: 一.卡尔曼滤波器开发实践之一: 五大公式 二.卡尔曼滤波器开发实践之二: 一个简单的位置估计卡尔曼滤波器 三.卡尔曼滤波器(EK ...
- ROS学习笔记(十)——ROS试用练习(一)
ROS学习笔记(十)--ROS试用练习 在此说明:之前使用的ROS是indigo,前两天电脑"炸"了,所以换了kinetic. 一.ROS文件系统导览 1.1如果你想找到turtl ...
- 虚拟机网络、联网设置、与宿主机互联、网络配置
虚拟机网络.联网设置.与宿主机互联.网络配置 一.虚拟机网络 二.虚拟机的联网设置 三.与宿主机互联 四.手动配置网络 1.ifconfig 2.netstat 一.虚拟机网络 检查虚拟机网络编辑器 ...
- 遨博协作机器人ROS开发 - 末端工具ROS驱动
目录 一.简介 二.环境版本 三.学习目标 四.知识储备 五.任务实施 六.任务拓展 七.课堂小结 八.课后练习 一.简介 大家好,欢迎关注遨博学院带来的系列技术分享文章(协作机器人ROS开发),今天 ...
- Vmware Esxi宿主机及虚拟机网络配置
1.网络规划 ESXI管理网段==>10.10.10.0/24==>vlan10 虚拟机网段==>10.10.20.0/24==>vlan20 2.当前ESXi主机使用两块物理 ...
- 虚机安装Linux网络配置的一些笔记(隔离,桥接,NAT)
我的需求: 记得最开始学Linux的时候,使用VM虚拟机安装,配置网络,希望可以和主机互通,同时希望可以访问外网,改配置文件,照着网上的博客,改了又改,捣鼓了好几天也弄不好. 我需要解决的问题: 后来 ...
- OpenWrt 刷机后的网络配置
写在前面: 本文章旨在总结备份.方便以后查询,由于是个人总结,如有不对,欢迎指正:另外,内容大部分来自网络.书籍.和各类手册,如若侵权请告知,马上删帖致歉. 之前那一篇TP-wr703N TTL刷机以 ...
- ROS开发实践(十三)——ROS中SLAM地图(.pgm格式)编辑软件的安装与使用
一.应用背景 在ROS机器人通过SLAM算法构建好场景地图之后,为了保证ROS机器人的运行效果,我们通常会对场景地图进行修改,这里所说的场景地图通常为 .pgm 格式的文件,如下图所示. 二.地图编辑 ...
- ROS开发实践-QT工具箱
安装QT工具箱 $ sudo apt-get install ros-kinetic-rqt $ sudo apt-get install ros-kinetic-rqt-common-plugins ...
最新文章
- Java Web学习总结-文件下载
- R开发(part8)--应用R语言中的函数环境空间
- 关于结构体里面结构体的申明和使用
- 详解STL中的空间配置器(SGI版本)
- 如何在React Native和Firebase中设置Google登录
- Step By Step(Lua字符串库)
- 【java】java 线程状态之 TIMED_WAITING
- JAVA生成UUID
- 湿空气性质计算,随笔与学习记录 (4.空气比容,空气密度)
- Cesium中的相机—方向余弦阵
- 上焦如雾实际上是指何项作用_广西中医药大学赛恩斯新医药学院《中医基础理论》期考试卷卷16...
- 2009年以来我买过的书(部分)
- 属牛的女孩取名:优美文雅、声声入耳的女孩名字
- 2023第八届少儿模特明星盛典 小超模矫沐含 担任全球赛代言人
- 数据结构:并查集和图
- springboot整合springsecurity安全框架(后端spring_security模块代码可直接使用,根据需求自定义修改)
- 同态加密在联邦计算中的应用
- 反向链接的类型(转)
- 基于python与scipy拟合椭圆
- 如何改变讨好型人格?修