578

阿木币

1

精华

1451 小时

在线时间

管理员

Rank: 9Rank: 9Rank: 9

发表于 2022-8-16 17:21:12 3468 浏览 0 回复

[新手上路] Prometheus-v2新增地面站,助力高效研发!

Prometheus地面站是基于Prometheus系统的人机交互界面,地面站采用TCP/UDP通信进行发送和接收数据,而在机载端中则采用ROS/MSG消息进行通信,该地面站可以更快地让用户复现Prometheus系统的各种功能,且同时适用于真机和仿真系统

这次Prometheus-v2新增的地面站主要是配合Prometheus系统中控制模块(uav_control)开发的一个版本,支持无人机的起飞、降落、悬停、以及惯性系和机体系的移动模式控制,实现实时监控无人机的各种数据状态,在操作过程中还会打印反馈信息进而提醒用户;且同时支持windows和ubuntu操作系统



                               
登录/注册后可看大图

一起来看看Prometheus-v2测试版中地面站在仿真中的使用演示吧!





为什么做这个地面站?有哪些优势?



①  Prometheus v1版本中无地面站,全程终端指令需要手动输入进行控制操作,而Prometheus v2版本配备的地面站能够支持图形化界面操作,极大减少手动输入终端命令的频率,使初学者上手更方便。

② Prometheus v1版本中需要打开多个终端观察数据的变化,而在Prometheus v2版本上,地面站将多个终端界面需要查看的数据集成到地面站上同时显示,让开发者观察数据更便捷。


  • 配合Prometheus-v2测试版本推出,适配控制模块,方便开发者的使用。



该地面站支持哪些功能?

1、数据监控

地面站会实时显示无人机的状态,包括以下两个话题的数据:


  • 无人机状态(注:*代表ID):/uav*/prometheus/state
  • 无人机控制状态(注:*代表ID):/uav*/prometheus/control_state



具体数据内容可以参考Prometheus中common模块的prometheus_msgs功能包的msg,UAVState.msg和UAVControlState.msg。



                               
登录/注册后可看大图


2、信息反馈

地面站会根据用户操作、触发不同的信息反馈,根据信息反馈的提示可以更好地操作地面站。信息反馈话题如下:


  • 信息反馈:/uav*/prometheus/text_info


具体数据内容可以参考Prometheus中common模块的prometheus_msgs功能包的msg,TextInfo.msg。



                               
登录/注册后可看大图

3、无人机控制


地面站会根据用户的操作,发送不同的指令,其中起飞、降落、悬停是已经封装好指令的按钮,点击即可发送对应指令。而移动则不同,需要配合移动模式的选择、共6种移动模式、分别为惯性系和机体系的位置、速度、定高,根据提示输入对应的预期位置或者预期速度,然后点击移动按钮即可。控制话题如下:

● 无人机控制:/uav*/prometheus/command

具体数据内容可以参考Prometheus中common模块的prometheus_msgs功能包的msg,UAVCommand.msg。



                               
登录/注册后可看大图


用到了哪些技术?

首先,地面站是配合Prometheus通信节点进行使用的,两者之间是通过TCP/UDP(TCP通信、UDP组播等)进行通信,而通信节点与其他模块之间采用ROS/MSG通信(服务、话题);地面站和通信节点同时采用Prometheus协议进行数据的编解码,并且将数据段进行序列化以及反序列化操作,实现模版函数,大大提高了可扩展性,方便后期传输数据(自定义数据)的添加以及删改;

目前推出的地面站由Qt开发,UI界面主要由QWidget实现。QWidget类是所有用户界面对象的基类。通俗来讲,Qt基本上所有的UI类都是由QWidget继承出来的。Widget属于传统界面开发,和VB/VC/Delphi等拖曳控件开发类似,走CPU绘制,能最大化的兼容现有的硬件和过去的相对偏低性能的硬件。

后面我们还会推出的升级版地面站,包含gstreamer、opencv等第三方库,实现视觉模块的控制和显示,如框选、点击跟踪、吊舱控制等;同时还会涉及QML技术,实现离线地图、平面地图上无人机位置的实时显示、轨迹打印等;并且还会支持Prometheus模块中的绝大多数功能模块,以及Rhea小车的部分功能,敬请期待~


软件下载及使用方法

地面站软件下载地址:https://download.amovlab.com/public/%E8%BD%AF%E4%BB%B6%E4%B8%8B%E8%BD%BD/Prometheus%E5%9C%B0%E9%9D%A2%E7%AB%99/

具体使用方法详见Prometheus使用手册(全新)中第7节内容:

Prometheus使用手册(全新):https://wiki.amovlab.com/public/prometheus-wiki/


目前Prometheus地面站还处于测试阶段,如果大家在使用过程中发现bug,欢迎在项目技术交流群/阿木社区/评论区留言反馈,项目组将根据各位开发者的建议与意见,持续优化与改进,使之更贴近开发者的使用与操作习惯。


如需申请进入Prometheus项目交流群,请添加客服微信jiayue199506。



我知道答案 回答被采纳将会获得 已有0人回答

扫一扫浏览分享
回复

使用道具 举报

返回列表
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表