重要參考文獻:
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不能重名,
可以遠程鍵盤控制小車運動等。