目录
版本说明
Liunx端:Ubuntu18.04+ROS melodic
Windows端:Matlab2020b
ROS Network
ROS通信简介
在ROS网络中,存在一个主节点和多个从节点。主节点是作为从节点通信的桥梁,其他从节点都必须在主节点注册(register),才能和其他从节点进行通信。Matlab可作为主节点,也可作为从节点。下图为ROS通信机制示意图。
ROS主节点表示方式
ROS Master Node有三种表示方式,分别为:ROS Master IP、ROS Master Node Computer Host Name、ROS Master Node URI(Uniform Resource Identifier)
三种表示方式示例如下:
ROS IP = '192.168.1.1'
ROS Host Name = 'master_host'
ROS URI = 'http://192.168.1.1:11311'
注:11311为ROS标准port
Network 建立
rosinit函数
matlab通过rosinit函数向Master注册一个名为/matlab_global_node_xxx的节点。rosinit即可让matlab成为主节点,也可让其作为从节点。rosinit函数有两种方式使matlab成为从节点。
有argument
带argument有以下三种方式,完成matlab节点的广播(advertise)。
rosinit('192.168.1.1')
rosinit('master_host')
rosinit('http://192.168.1.1:11311')
无argument
rosinit函数无argument,需配合setenv函数使用,示例如下
setenv('ROS_MASTER_URI','http://192.168.1.1:11311')
rosinit
参考文献
https://ww2.mathworks.cn/help/ros/ug/connect-to-a-ros-network.html