一、通用控制模式
一辆ros小车发出WiFi信号,使用pc连接这个wifi信号可以实现小车的远程控制
远程控制的原因:
①远程输入控制信息
②远程查看效果
③节约ros主控资源
设置多机通信:
①多机通信需要所有的ros主控都处于同一个网络下
②在bashrc文件里面设置多机通信的环境
二、网络连接
由以上两种方案
方案一:(ros从机少可选)
Ros主机提供网络,发出wifi,ros丛机(PC端)连接WiFi
ssh远程连接小车——展现ros主机控制端
Ros丛机——pc端——eg:启动rviz
方案二:(ros从机多可选)
第三方路由器提供网络,ros主机与从机分别连接wifi
三、软件设置
ROS主机的.bashrc文件
export ROS_MASTER_URI=http://(这里填ros主机的IP地址):11311
export ROS_HOSTNAME=(这里填ros主机的IP地址)
ROS_MASTER_URI : ros主机 的ip地址
ROS_HOSTNAME : 当前电脑的ip地址
ROS从机的.bashrc文件
export ROS_MASTER_URI=http://(这里填ros主机的IP地址):11311
export ROS_HOSTNAME=(这里填ros从机的IP地址) # ifconfig查询
查看ros主机的.bashrc文件:
在ssh远程连接后输入
nano .bashrc
可以看到ros主机的一些配置
注意事项
①ros从机程序的运行依赖于ros主机的rosmaster(只有ros主机可以运行roscore)
②两个IP地址需要同网段
③不建议使用localhost, 建议使用具体的ip地址(静态IP地址)
④从机ip地址没设置对, 依然可以访问到rosmaster, 但不能输入控制信息
⑤如果是虚拟机, 网络模式需要设置成桥接模式
⑥多机通信无法 查看/订阅 本地不存在的消息数据类型话题
四、远程控制
SSH
优点:
①消耗网络资源少
②运行稳定
缺点:
①图形化界面卡顿
②对新手不友好
VNC
优点:
①对新手友好
②运图形化界面比ssh流畅
缺点:
①消耗网络资源