ubuntu18.04 ROS下两台计算机话题交互

无人机搭载机载计算机需要与地面站进行信息交互,所以记录一下过程防止忘记!

目录

前言

二、ROS_HOSTNAME/ROS_IP

三、具体使用

1、硬件连接

2、相关设置

3、测试

1)机载计算机

2)地面站

总结


前言

无人机在飞行过程中,地面站需要采集其相关信息,所以通过ros来进行无人机信息的订阅,这里也就是相关话题的发布和订阅。主要介绍的内容也很简单包括 ROS_MASTER_URI、ROS_HOSTNAME、ROS_IP的相关信息和使用。


一、ROS_MASTER_URI

上面是官方文档的介绍和使用,然后我的理解是有两台计算机你要设置其中一台计算机为主计算机,另一台来订阅其发布的话题(我是这么使用的),那么这两台计算机就都需要设置和主计算机相同的这个ip地址,也就是图中的mia值。相当于一台计算机的ros_master管理了两台计算机。当然也可以是多台计算机。 

二、ROS_HOSTNAME/ROS_IP

 同样是官方文档上图。然后我是用到的是用ROS_HOSTNAME来设置ip地址。

三、具体使用

1、硬件连接

使用路由器将两台计算机连接至相同的局域网(LAN),可以在路由器上找到这个接口,一般LAN接口多于WAN接口。不要忘记给路由器充电!没电不干活。然后通过网线分别连接至两台计算机上,也可以通过wifi连接,都可以使它们拥有相同的ip地址。

2、相关设置

分别在两台计算机上使用 ifconfig 命令,来查看本机的ip。然后将它们写入 家目录下的 .bashrc 文件中去,最后都要 source 一下才可以生效。

例如:你的机载计算机的 ip 地址是 192.168.1.101 ,然后地面站的 ip 地址是 192.168.1.100。

在机载计算机的 ~/.bashrc 中末尾加入

export ROS_HOSTNAME = 192.168.1.101
export ROS_MASTER_URI = http://192.168.1.101:11311

在地面站的 ~/.bashrc 中末尾加入,注意这里的ROS_MASTER_URI的设置噢

export ROS_HOSTNAME = 192.168.1.100
export ROS_MASTER_URI = http://192.168.1.101:11311

 ,添加完成之后不要忘记 source 一下。

3、测试

1)机载计算机

在机载计算机中打开终端 ctrl+alt+t 。然后输入以下命令:

roscore
#打开一个新终端,输入
rosrun turtlesim turtlesim_node 

2)地面站

打开终端,输入以下命令:

rostopic list

 之后就可以订阅到机载计算机发布的话题了!


总结

主要是介绍了两台计算机在 ros 环境下的话题的订阅和发布。

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值