单架无人机与地面站通信
在一个局域网内获取无人机的机载电脑ip
通过地面站ssh到机载电脑,实现通信
多架无人机与地面站通信
在ROS基础上,配置主机和从机,实现主机和从机的话题联通
- 配置hosts
在主机和从机的/etc/hosts文件中,配置如下内容,(主机从机都需要全部配置)
192.168.1.107 master192.168.1.137 uav2192.168.1.136 uav3
- 配置.bashrc
主机配置如下
export ROS_HOSTNAME=masterexport ROS_MASTER_URI=http://master:11311
从机配置如下
export ROS_HOSTNAME=uav3export ROS_MASTER_URI=http://master:11311# export ROS_IP=masterexport ROS_NAMESPACE=uav3
-
启动
在主机roscore启动,可以看到无人机所有话题
主机可以是- 主无人机,通过在地面站ssh到主无人机查看所有话题- 地面站,地面站的ubuntu系统直接开启roscore查看所有话题
关于飞行通信的一些思考
-
如果要实现无人机话题之间交互的话就要用rosmater管理,比如ego-swarm他需要知道其它无人机的路径的话题,注册了rosmaster,在从机也可以看到其它从机的所有话题。
-
但是控制无人机的启动命令,还是通过地面站ssh到所有无人机去完成,前提是知道所有无人机的ip地址