ROS配置多主机通讯

不知道什么原因,个人按照网络上别人配置ROS多主机通讯的一般方法没有成功,经尝试后,发现一种配置方法可以成功实现多主机的通讯,所以分享一下。
多主机通讯分为主机和从机,并且两台机子需要在同一局域网下
为了方便浏览,两台机器的信息如下
主机IP:192.168.1.101,机器名:fast02-NUC11TNKi7
从机IP:192.168.1.102,机器名:BIGPOT

一 从机配置

1.ifconfig 查看本机IP ,以192.168.1.102为例
2.sudo gedit /etc/hosts 进入hosts文件,将192.168.1.102替换到第二行
在这里插入图片描述
3.添加主机IP,在主机上输入ifconfig查看IP,以192.168.1.101为例。主机输入hostname查看机器名,以fast02-NUC11TNKi7为例。
另起一行,将这两项填入,中间用Tab键分割,不是空格。
在这里插入图片描述
4在.bashrc中添加如下
export ROS_HOSTNAME=BIGPOT #从机机器名
export ROS_IP=192.168.1.102#从机IP地址
export ROS_MASTER_URI=http://fast02-NUC11TNKi7:11311 #主机机器名

二 主机配置

和从机配置类似,将自己的IP值替换到hosts文件的第二行,同时将从机的IP和机器名另起一行填入hosts文件,不同的是.bashrc文件。
做完上述步骤后,在.bashrc文件填入以下三行
export ROS_HOSTNAME=fast02-NUC11TNKi7 #主机机器名
export ROS_IP=192.168.1.101#主机IP地址
export ROS_MASTER_URI=http://fast02-NUC11TNKi7:11311 #主机机器名

三 测试

以上步骤完成后可以运行官方的乌龟GUI节点和键盘控制节点进行测试多主机通讯是否配置成功。
首先主机启动roscore
然后任意一个机器启动GUI节点rosrun turtlesim turtlesim_node
之后另外的一个机器启动键盘控制节点rosrun turtlesim turtle_teleop_key,键盘上下左右控制,即可在另一台机器上看到乌龟运动。

四 其它事项

如果平时不需要多主机通讯,可以在.bashrc文件中将之前的三行注释,改为以下内容
export ROS_MASTER_URI=http://127.0.0.1:11311
export ROS_IP=127.0.0.1

  • 10
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
要在多台PC之间进行ROS通信配置,需要进行以下步骤: 1. 安装ROS:首先,在每台PC上安装相同版本的ROS。可以按照ROS官方文档提供的安装指南进行操作。 2. 设置ROS Master:选择一台PC作为ROS Master,并在该PC上启动ROS Master。可以使用以下命令启动ROS Master: ``` $ roscore ``` 3. 配置网络:确保所有PC都连接在同一个局域网中,并且可以相互访问。可以通过ping命令测试PC之间的连通性。 4. 设置环境变量:在每台PC上设置ROS_MASTER_URI和ROS_IP环境变量。ROS_MASTER_URI应设置为ROS Master所在PC的IP地址,而ROS_IP应设置为当前PC的IP地址。 ``` $ export ROS_MASTER_URI=http://<ROS_MASTER_IP>:11311 $ export ROS_IP=<CURRENT_PC_IP> ``` 其中,<ROS_MASTER_IP>是ROS Master所在PC的IP地址,<CURRENT_PC_IP>是当前PC的IP地址。 5. 运行节点:在每台PC上运行节点,使其能够与ROS Master进行通信。可以使用以下命令运行节点: ``` $ rosrun <package_name> <node_name> ``` 其中,<package_name>是节点所在的包名,<node_name>是节点的名称。 6. 测试通信:在每台PC上,可以使用rostopic或rosnode命令测试节点之间的通信。例如,可以使用以下命令查看当前PC与ROS Master之间的连接情况: ``` $ rostopic list $ rosnode list ``` 如果能够看到正确的话题和节点列表,则表示ROS通信配置成功。 请根据实际情况进行相应的配置和调整,以上步骤仅作为通用指南提供。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值