ROS-分布式通信

ROS是一个分布式计算环境。==一个运行中的ROS系统可以包含分布在多台计算机上多个节点。==根据系统的配置方式,任何节点可能随时需要与任何其他节点进行通信。

因此,ROS对网络配置有某些要求:

  • 所有端口上的所有机器之间必须有完整的双向连接。
  • 每台计算机必须通过所有其他计算机都可以解析的名称来公告自己。

1.准备

先要保证不同计算机处于同一网络中,最好分别设置固定IP,如果为虚拟机,需要将网络适配器改为桥接模式;

2.配置文件修改

分别修改不同计算机的 /etc/hosts 文件,在该文件中加入对方的IP地址和计算机名:

主机端:

bash 复制代码
从机的IP    从机计算机名

从机端:

bash 复制代码
主机的IP    主机计算机名

设置完毕,可以通过 ping 命令测试网络通信是否正常。

IP地址查看名: ifconfig

计算机名称查看: hostname

安装一下net-tools


3.配置主机IP

配置主机的 IP 地址

~/.bashrc 追加

bash 复制代码
export ROS_MASTER_URI=http://主机IP:11311
export ROS_HOSTNAME=从机IP

测试

1.主机启动 roscore(必须)

2.主机启动订阅节点,从机启动发布节点,测试通信是否正常

3.反向测试,主机启动发布节点,从机启动订阅节点,测试通信是否正常

参考:

1\][Autolabor-ROS机器人入门课程《ROS理论与实践》季基础教程](http://www.autolabor.com.cn/book/ROSTutorials/di-2-zhang-ros-jia-gou-she-ji/22hua-ti-tong-xin/211-li-lun-mo-xing.html) \[2\][【Autolabor初级教程】ROS机器人入门](https://www.bilibili.com/video/BV1Ci4y1L7ZZ?p=52&vd_source=7a4fcf1e79c6c978598c4f5c8e5dddf0) \[3\]胡春旭.ROS机器人开发实践\[M\].机械工业出版社,2018.

相关推荐
想要成为计算机高手3 小时前
11. isaacsim4.2教程-Transform 树与Odometry
人工智能·机器人·自动驾驶·ros·rviz·isaac sim·仿真环境
RPA+AI十二工作室8 小时前
影刀RPA_抖音评价获取_源码解读
运维·机器人·自动化·源码·rpa·影刀
音视频牛哥13 小时前
如何打造毫秒级响应的RTSP播放器:架构拆解与实战优化指南
人工智能·机器人·音视频开发
计算机sci论文精选19 小时前
CVPR 前沿洞察 | 人机交互论文出圈,引领交互模式变革
计算机网络·机器学习·机器人·人机交互·cvpr·计算机系统·并行与分布计算
WSSWWWSSW1 天前
认识自我的机器人:麻省理工学院基于视觉的系统让机器了解自身机体
人工智能·机器人
WSSWWWSSW1 天前
基于模拟的流程为灵巧机器人定制训练数据
人工智能·chatgpt·机器人
菠萝炒饭pineapple-boss1 天前
ElastAlert通过飞书机器人发送报警通知
elk·机器人·飞书
go54631584652 天前
基于阿里云平台的文章评价模型训练与应用全流程指南
图像处理·人工智能·深度学习·阿里云·cnn·机器人·云计算
Blossom.1183 天前
基于深度学习的图像分类:使用EfficientNet实现高效分类
人工智能·python·深度学习·机器学习·分类·数据挖掘·机器人
小森( ﹡ˆoˆ﹡ )3 天前
LangChain聊天机器人教程
大数据·langchain·机器人