二十、ros分布式通信_摇滚马侬的博客-爱代码爱编程
1. 简介
ROS是一个分布式控制环境,这就需要不同计算机上的不同节点进行通信,通过网络设置,可实现不同计算机上的不同节点进行通信
2. 实现
- 保证计算机处于同一网络中,最好设置固定IP地址
- 修改 /etc/hosts 文件,让主机,从机完成IP地址和计算机名的互相映射
- 主机端:
从机的IP 从机计算机名 172.17.0.2 d102-W65KJ1-KK2
- 从机端:
主机的IP 主机的计算机名 172.17.0.1 d102-W65KJ1-KK1
- 注:
- IP地址查看:ifconfig
- 计算机名称查看:hostname
- 配置主机IP
在.bashrc中追加
记得添加完source一下export ROS_MASTER_URI=http://172.17.0.1(主机IP):11311 export ROS_HOSTNAME=172.17.0.1(主机IP)
- 配置从机IP
在.bashrc中追加
记得添加完source一下export ROS_MASTER_URI=http://172.17.0.1(主机IP):11311 export ROS_HOSTNAME=172.17.0.2(从机IP)
3. 测试
3.1 ping的方法:
- ping IP地址
- ping 电脑名称
3.2 节点测试
- 主机启动roscore
- 主机启动订阅节点
- 从机启动发布节点
- 主机,从机节点对调,反向测试