Sunray地面站架构和ROS功能包
Sunray地面站同时适用于真实飞行实验和仿真飞行实验
Sunray地面站的组成:
- 机载端的
sunray_ground功能包:负责通过ROS话题与Sunray代码中的其他节点进行通信 - 地面端的Sunray地面站软件:通过TCP/UDP与
sunray_ground功能包进行通信,数据下行默认为UDP(机载端->地面端),数据上行默认为TCP(地面端->机载端)
基本使用步骤:
- 在机载端启动对应
sunray_ground的启动脚本 - 在地面端打开地面站,并连接指定无人机
- 确认能够收到无人机的状态信息
Comunication_Module功能包
-
Comunication_Module功能包主要功能
- 将机载端的ROS话题转换成数据发送至地面端地面站监测
- 将接收到的地面端地面站控制指令转换成ROS话题发布,从而驱动其他ROS节点进行控制
-
执行启动脚本:
roslaunch sunray_communication_bridge sunray_communication_bridge.launch
- is_simulation:是否处于仿真状态
- uav_id:当前无人机id,需大于0,默认值为-1
- uav_experiment_num:无人机真机数量
- uav_simulation_num:仿真无人机数量
- ugv_id:前无人车id,需大于0,默认值为-1
- ugv_experiment_num:无人机真机数量
- ugv_simulation_num:仿真无人机数量
- tcp_port:机载端TCP的绑定端口号
- udp_port:机载端UDP的绑定端口号,UDP端口包括绑定监听、组播目标端口,机载端口要一致
- udp_ground_port:组播目标端口,用于机间通信
- 注意:udp_port需要和地面站的目的端口一致
Sunray地面站使用说明
连接智能体
-
点击主界面标注3连接图标,弹出设备列表界面。
-
选择要连接的智能体,点击连接。
- 点击标注1绿色的搜索图标,搜索在线智能体,刷新设备列表。
- 当自动搜索智能体搜索不到时,可以尝试手动输入智能体ip搜索。
智能体切换
- 主界面标注1的第一个开关是用来切换智能体类型。
- 主界面标注1的红点部分是用来显示智能体的连接状态,红色的为未连接,绿色为已连接
- 主界面标注1的UAV1下拉框用来选择无人机
- 主界面标注1的断开连接会断开当前选中的智能体连接
无人机单机控制
- 在进行无人机控制前,需要先阅读指令飞行与控制
- 连接无人机成功后,点击解锁,然后点击起飞,起飞无人机
- 控制当前无人机的解锁、起飞、降落、上锁、紧急上锁、悬停、返航、执行航点、切换到指令控制。
- 注意!紧急上锁功能执行的是kill指令,会造成无人机锁桨失去动力,只能在紧急情况下使用。
- 当前无人机的移动模式控制,移动模式下拉框,旁边的?鼠标移动到那会显示选中的移动模式对应的解释;
- 当无人机处于指令模式时,发送指令按钮才能生效。
启动脚本
- 选择脚本命令: 在脚本下拉框中选择要开启的脚本。
- 操作:
- 点击执行脚本,通过脚本命令,启动机载端对应的节点。
脚本配置功能
- 功能说明: 用于配置脚本命令,配置完成的命令会同步到脚本下拉框,同时保存到本地文件。
- 参数输入(标注1)
- 添加脚本命令:点击+可添加脚本命令。
- 脚本类型开关:用于选择脚本类型,默认是仿真类型。
- 真机为机载scripts_exp文件夹下的脚本,仿真为机载scripts_sim文件夹下的脚本。
- 脚本文件名输入框:用于输入脚本文件名。
- 选择脚本类型和输入脚本名完成后,点击+,可将脚本添加到脚本列表。
- 脚本列表(标注2) 脚本列表,用于显示已添加的脚本。
- 脚本删除与确认操作:
- 删除:在脚本列表中单选或多选要删除的脚本,点击删除,可删除对应脚本。
- 确认:点击确认,关闭脚本配置界面,将脚本保存到本地文件,并同步到脚本下拉框。
航点配置功能
- 基础参数设置(标注1):
- 在航点类型单选框中,可选择NED或经纬;
- 结束事件下拉框中,提供悬停、降落、返航选项 ;
- “移动速度”和“起降高度”默认值均为1,且不允许为空。
- 偏航角设置(标注2):
- 偏航角类型下拉框选项:
- 固定值:选择此选项时,需输入Yaw值(偏航角),同时环绕点X、Y输入框将被禁用。
- 下一航点:选择此选项后,环绕点X、Y输入框以及Yaw值输入框都将被禁用,无人机机头将始终朝向下一个航点。
- 环绕点:选择此选项时,需输入环绕点X、Y值,Yaw值输入框将被禁用,无人机机头将始终朝向环绕点。
- 偏航角类型下拉框选项:
- 航点添加与删除(标注3)
- 添加航点:准备添加航点时,需填写X、Y、Z值(这三个值不能为空),Yaw默认值为0,取值范围为-180°到180°。填写至少三个参数后,点击+号,即可添加航点,最多能添加10个航点。
- 删除航点 点击-号,可删除最后一个航点。
- 操作确认(标注5)
- 上传:点击上传,航点数据会被发送至当前控制的无人机,同时保存到本地文件,随后关闭界面。
- 取消:点击取消,本次编辑的数据将被清空,既不会发送至无人机,也不会保存到本地,随后关闭界面。
UDP配置功能
- 使用建议:仅当软件报UDP端口问题,才使用UDP配置功能;功能正常情况下,强烈建议不使用此功能!
- 参数映射关系
- UDP 监听端的参数要和机载端
ground_control.launch文件里的udp_ground_port参数保持一致。 - UDP目的(机载)端口参数要和机载端的
ground_control.launch文件里的udp_port参数保持一致。 - 默认情况下以上参数已正确配置。
- UDP 监听端的参数要和机载端
- UDP监听端口(标注1)
- 输入框中灰色字体提示当前监听端口。
- 端口设置范围为1024 - 49151的注册端口。
- UDP目的(机载)端口(标注2)
- 输入框中灰色字体提示当前目的端口。
- 端口设置范围为1024 - 49151的注册端口。
- 操作按钮(标注3)
- 配置:点击可配置端口并保存到本地文件,可单独或同时配置两种端口。
- 取消:点击关闭UDP端口配置界面。