QGC——无人机地面站
文章平均质量分 83
QGC(QGroundControl)为飞控对应的地面站控制系统,主要做飞行的航线规划、飞行数据可视化显示等。本专栏是对QGC源码的学习笔记和二次开发。 因为某些原因不能尽数记录,有问题可以私信沟通哦~
火山上的企鹅
所有的热爱都要不遗余力
展开
-
windows下 QGC地面站环境搭建(v4.2.x ~ v4.3.x)
默认安装即可。原创 2023-12-25 14:03:42 · 981 阅读 · 1 评论 -
windows 下 QT Android 环境搭建(QGC 4.2.x + Qt 5.15.2)
姊妹篇:win10下新版QGC地面站环境搭建全面攻略(v4.x.x QGroundControl地面站搭建)windows下 QT 的 Android 环境搭建(附软件测试和ADB调试工具)QGC 官方: Build QGroundControlQt version: 5.15.2 (only)Android : Android 5.0 and later.NDK: Standard QGC is built against ndk version 19.JDK : Java JDK原创 2023-11-06 22:56:27 · 2037 阅读 · 1 评论 -
QGC 中添加海康威视摄像头记录(Qt For Android 使用 JNI 进行JAVA 与 C++ 的通讯)
● QGCActivity.java 根文件中导入包并添加 HkwsManager 自定义的类。SDK libs 文件复制到 Android libs下。如下添加相应的动态库,当前使用的为v8a。工程文件 .pro 添加。原创 2023-11-06 22:31:23 · 856 阅读 · 0 评论 -
QGC(GGroundControl) 系统核心架构图
整个 QGC 工程由唯一的单例 _app 进行管理,它这个类只提供了唯一的实例,另外提供了一个访问它的全局函数QGCTool 有两个 protected修饰的变量 _app和 _toolbox ,其派生类可以被调用.................原创 2022-04-07 09:13:32 · 6821 阅读 · 7 评论 -
PX4、APM无人机仿真连接QGC地面站记录(udp连接、更改home点等)
PX4、APM无人机仿真连接QGC地面站记录原创 2022-01-14 15:27:03 · 8837 阅读 · 3 评论 -
QGC 地面站中获取电压完整教程(QGC中无法获取APM电压)
文章目录一、演示二、简介三、代码修改1. 后台数据获取2. json 文件3. 前台显示4. APM 中电压校准5. 工程文件部分四、其它方法介绍(PX4) 关于QGC地面站其它文章请点击这里: QGC地面站 一、演示老规先演示,看效果:PX4 中:数据列表中的 voltage 为电池组中获取的,PX4 中可以获取到APM 中:数据列表中的 voltage 为电池组中获取的,APM 中获取不到二、简介起因是在 APM 中无法在B原创 2021-09-13 10:26:04 · 2973 阅读 · 8 评论 -
QT Quick QML 实例之虚拟操作杆
文章目录一、演示二、实现思路三、代码四、Android 配置1. 创建 AndroidManifest.xml2. 添加 icon3. 修改为全屏一、演示本文参考 QGroundControl 地面站的虚拟操作杆部分,它使用了左右两个遥控共四通道,实现无人机的横滚、俯仰、航向和油门的控制。而在本文中,左右遥控分别控制一个小狗狗和小猫咪的移动,而且确保拇指放下的地方为操作杆的中心, 如下演示Android 平台下:Windows 平台下:二、实现思路核心思路如下:其中核心控件为 MultiP原创 2021-08-02 12:19:55 · 2966 阅读 · 22 评论 -
windows下 QT 的 Android 环境搭建(附软件测试和ADB调试工具)
win10下QGC地面站Android环境搭建全面攻略1. QT环境搭建NDK 安装 所有的热爱都要不遗余力,真正喜欢它便给它更高的优先级,和更多的时间吧!关于QGC地面站其它文章请点击这里: QGC地面站 姊妹篇: win10下新版QGC地面站环境搭建全面攻略(v4.x.x QGroundControl地面站搭建) 1. QT环境搭建Qt 5.12.6安装的时候注意 添加 “Android ARMv7”注意JDK一定是JDK原创 2021-06-22 11:33:53 · 4455 阅读 · 27 评论 -
QGC地面站中视频流配置及gstreamer安装
QGC地面站中视频流配置及gstreamer安装1. 安装gstreamer2. 修改路径3. 地面站配置 关于QGC地面站其它文章请点击这里: QGC地面站 以下为Windows版本的安装,其他版本QGC GitHub上也介绍文档,很有参考价值:Video Streaming1. 安装gstreamer当前安装的是1.14.4版本,已上传 百度云提取码为:b5jr地面站4.0.8版本的,验证通过以下两个都需要安装,且需要完全安装才能原创 2021-06-03 21:31:56 · 9033 阅读 · 27 评论 -
QGC地面站Mavlink生成和MockLink模拟收发通讯
Mavlink生成和收发通讯1. 演示效果2. Mavlink 生成2.1 安装python32.2 Mavlink下载和运行2.3 xml文件修改2.4 自定义Mavlink生成3. 业务逻辑实现3.1 QML前端显示3.1.1 发送部分3.1.2 接收显示3.2 C++后端3.2.1 QGC发送3.2.2 MockLink接收3.2.3 MockLink发送3.2.4 QGC接收 所有的热爱都要不遗余力,真正喜欢它便给它更高的优先级,和更多的时间吧!关于QGC地面站其它文章请点击这里: &nb原创 2021-05-27 23:19:17 · 14552 阅读 · 41 评论 -
QGC全屏和快捷键绑定(Shortcut、showFullScreen)
QGC全屏和快捷键绑定 所有的热爱都要不遗余力,真正喜欢它便给它更高的优先级,和更多的时间吧!关于QGC地面站其它文章请点击这里: QGC地面站我建了个QGC学习交流群,感兴趣的童鞋们可以扫码加入哦,失效了,可以加我微信拉进群 只需要在 MainRootWindow.qml 中增加以下代码就能实现快捷键绑定、全屏正常屏切换:按键效果不好展示,贴一个正常最大化和全屏最大化的效果对比:代码展示:(解释看注释)property bool原创 2021-05-20 20:05:20 · 911 阅读 · 1 评论 -
QGC地面站软件名和Logo修改(QGroundControl)
QGC地面站软件名和Logo修改1. 地面站标题更改2. 地面站Logo修改1. 地面站标题更改打开 qgroundcontrol.pro 文件,搜 “QGC_APP_NAME” 即可,如下改名为 “Name Test”2. 地面站Logo修改原创 2021-05-19 12:21:23 · 2465 阅读 · 2 评论 -
QT、QML、C++中常用功能整理(持续更新...)
● 说明: 把一些QML中常用到的,做一个简单的总结,目前未分类,未细化,未添gif图和实例,想到什么写什么,后续再补…1、将一个数字转化成16进制字符串形式function toHex(num){ return num<16? "0x0"+num.toString(16).toUpperCase() : "0x"+num.toString(16).toUpperCase();}2、小数点位数 xxx.toFixed(x),如:property real _pi:原创 2021-05-11 21:43:01 · 3549 阅读 · 10 评论 -
QGC地面站——Release下模块未安装(module “QGroundControl.xxx“ is not installed)
QGC中手把手教你添加qmldir模块1. 无能为力的试探2. 柳暗花明又一村 所有的热爱都要不遗余力,真正喜欢它便给它更高的优先级,和更多的时间吧!关于QGC地面站其它文章请点击这里: QGC地面站 姊妹篇:QGC地面站手把手教你改——如何添加qmldir模块文件 1. 无能为力的试探按照上文的 如何添加qmldir模块文件 的操作,在debug模式下无任何问题,但是Release下编译,提示模块未安装,如下:于是反复寻找bug原创 2021-04-24 22:19:48 · 1144 阅读 · 5 评论 -
QGC(QGroundControl)地面站手把手教你改——盘旋半径在地图中的显示
盘旋半径在地图中的显示1. 演示效果2. 添加流程2.1 Qml 前台显示2.2 C++后台数据处理2.3 用户输入半径值的交互 所有的热爱都要不遗余力,真正喜欢它便给它更高的优先级,和更多的时间吧!关于QGC地面站其它文章请点击这里: QGC地面站 1. 演示效果 上图:导入.plan文件,地图上就有半径圈的显示;修改特定的盘旋半径,地图中也会实时更新2. 添加流程 &nb原创 2021-03-21 22:56:08 · 5358 阅读 · 3 评论 -
QGC(QGroundControl)地面站手把手教你改——高德地图的添加和瓦片地图在线资源
需求:QGC地面站上使用的地图都比较旧,谷歌地图呢最好用,但是麻烦,你懂的。这里教你添加几款国内的地图效果如下:程序修改1:在 GenericMapProvider.h 最后加入 GaodeSatMapProvider 高德地图类定义//D:\gcs\qgc-src\v4.0.11\qgroundcontrol\src\QtLocationPlugin\GenericMapProvider.h:80class GaodeSatMapProvider : public MapProvider {原创 2021-02-23 23:38:39 · 12698 阅读 · 36 评论 -
QGC地面站手把手教你改——电子罗盘仪表盘如何变刻度尺平移(双仪表变单仪表)
如何添加跟随面板显示关键参数一. 要实现的目标二. 代码分析与修改上层代码修改航线刻度尺具体实现1. 飞行地图文件的分析与修改欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入 所有的热爱都原创 2021-01-31 19:47:57 · 5176 阅读 · 11 评论 -
QGC地面站源码BUG——航点按钮失能后还能添加?
目录一. 前言二. 程序 所有的热爱都要不遗余力,真正喜欢它便给它更高的优先级,和更多的时间吧!关于QGC地面站其它文章请点击这里: QGC地面站 一. 前言● BUG介绍: 在v4.0.4版本后,地面站源码在添加航点时,增加了防止用户误操作的功能。什么意思呢? 比如一开始 “航点” 的按钮是灰色的,只能在添加 “Takeoff” 后才可以添加航点,而且 “Takeoff” 按钮只能在 “Mis原创 2020-12-23 17:59:27 · 6644 阅读 · 21 评论 -
QGC地面站源码BUG——添加测绘后1号航点序号丢失的问题
添加航点时候顺序本该为 0 1 2 3。 但添加测绘区域/走廊扫描/建筑扫描后,变为 0 2 3 4,如视频所示,一般来说缺1号航点,也不影响使用,但定制的时候,需对 0 1 2 号航点做特定的处理,就有影响了。为了看清楚航点序号,我把字体调大了,注意看左小角的地势高度面板。原创 2020-12-20 01:07:34 · 5707 阅读 · 20 评论 -
QGC地面站手把手教你改——如何添加跟随面板显示关键参数
如何添加跟随面板显示关键参数一. 要实现的目标二. 代码分析与修改1. 飞行地图文件的分析与修改2. 代理文件中数据源3. 代理文件中显示形式 所有的热爱都要不遗余力,真正喜欢它便给它更高的优先级,和更多的时间吧!关于QGC地面站其它文章请点击这里: QGC地面站 一. 要实现的目标当飞机在地图上飞行时,实现飞机图标实时跟随一个参数小面板,让用户对关键信息一目了然。 此参数小面板设置为半透明,可实时跟随飞机图标移动,显示内容包括电池剩余百分比原创 2020-12-07 00:43:11 · 14210 阅读 · 32 评论 -
QGC地面站手把手教你改——如何添加qmldir模块文件
QGC中手把手教你添加qmldir模块1. 添加qmldir文件 所有的热爱都要不遗余力,真正喜欢它便给它更高的优先级,和更多的时间吧!QGC其它文章请点击这里: QT QUICK QML 学习笔记 姊妹篇:QT QML 模块化管理(一)——添加工程组(文件组)QT QML 模块化管理(二)——前缀(Prefix)和别名管理 1. 添加qmldir文件src下新建QmldirTest文件夹,然后在该文件夹下新增 “TestQml1原创 2020-12-01 23:56:35 · 7776 阅读 · 23 评论 -
QML Map中测量面积——QtLocation轻量级地图应用学习
文章目录1.实现思路2. 实现代码及git链接本文转载于:QML QtLocation轻量级地图应用学习:实现面积测量1.实现思路参照网上的测面积功能,界面效果和测距差不多,在点和线的基础上多了一个填充区域。点和线参照上一篇博客:QML Map中测距——QtLocation轻量级地图应用学习填充区域使用 MapPolygon ,但是这个类接口很少,大部分操作还是借住折线 MapPolyline 来完成。这个功能最主要的是根据坐标点的集合求面积,在网上找了很多参考代码,大部分思路是球面多边形面积转载 2020-10-30 10:06:05 · 1582 阅读 · 2 评论 -
QML Map中测距——QtLocation轻量级地图应用学习
文章目录1. 实现思路2. 实现代码及git链接本文转载于:QML QtLocation轻量级地图应用学习:实现测距功能1. 实现思路参照百度or高德地图的测距功能,主要由两种元素组成,标记点和连线。其中连线很好解决,Qt 提供了 MapPolyline 类型,可以用来绘制折线,并且提供了增删的便捷函数:对于标记点,我们可以用 MapQuickItem 来实现,里面包含一个标记圆圈、长度Text、删除按钮。对于一组 MapQuickItem,我使用 MapItemView 来管理。而求两个坐转载 2020-10-30 09:55:23 · 2672 阅读 · 5 评论 -
QGC源码分析——UI界面的启动流程(从mian.cc到五大视图)
src\main.cc:400://start_mark_xx_20200324_main.cc-1QCoreApplication::setAttribute(Qt::AA_UseHighDpiPixmaps);//start_mark_xx_20200324_main.cc-2QGCApplication* app = new QGCApplication(argc, argv, runUnitTests);…#endifif (!app->_initForNormalAppBoot原创 2020-09-01 00:15:52 · 3931 阅读 · 5 评论 -
QGC源码分析——航向规划中航点编辑流程(QGroundControl)
文章目录1、 MissionItemEditor.qmlLoader { id: editorLoader anchors.margins: _margin anchors.left: parent.left anchors.top: _readyForSave ? commandPicker.bottom : notReadyForSaveLabel.bottom source:原创 2020-08-26 00:19:42 · 4614 阅读 · 15 评论 -
QGC源码分析——MavCmdInfoCommon.json加载的流程分析(保存了mavlink中航点或指令的常用信息)
MissionItemEditor.qmldelegate: MissionItemEditor {...}MissionCommandDialog.qml:修改航点类别的: QGCComboBox { id: categoryCombo model: QGroundControl.missionCommandTree.categoriesForVehicle(_vehicle)原创 2020-08-28 00:20:21 · 1572 阅读 · 0 评论 -
QGC源码分析——工具栏MainToolBar流程分析
MainToolBar.qml 中/ Loader { id: toolbarIndicators Layout.fillHeight: true source: "/toolbar/MainToolBarIndicators.qml" visible: activeVehicle && !communicationLost } //RowLayout关键信息:MainToolBarIn原创 2020-09-01 20:15:53 · 3037 阅读 · 0 评论 -
QGC Bug修改——飞行模式中高亮行与实际行不匹配的BUG
有没有用v4.0版本的发现遥控器的飞行模式设置有问题的。正常应该是1-4-6 通道可以设置的,而该版本中只有2和5通道能用,如下:定位到问题的具体位置://PX4\PX4SimpleFlightModes.qml:105Repeater { model: 6 QGCLabel { Layout.fillWidth: true text: qsTr("Flight Mode %1").arg(modelData + 1原创 2020-09-03 23:04:09 · 993 阅读 · 0 评论 -
QGC地面站程序打包(利用windeployqt、 inno setup)
1、选择Release,点击编译2、把QGroundControl.exe单独移出来,放到一个文件夹中3、打开MSVC 2017 64-bit控制台4、windeployqt 工具使用进入之前创立的单独文件夹;然后使用 windeployqt 工具命令:windeployqt QGroundControl.exe 可以用tab补全哦点击应用程序,发现运行失败,弹出以下错误。这个时候去之前发布生成的文件夹中寻找“SDL2.dll”,再复制到release文件夹中:我的就报了这一个错原创 2020-07-20 14:57:33 · 1446 阅读 · 7 评论 -
windows下新版QGC地面站环境搭建全面攻略(v4.1.x QGroundControl地面站搭建,附源码百度网盘)
win10下新版本QGC地面站环境搭建1. VS2017编译环境搭建2. QT环境搭建3. 源码下载4. QT Creator工程配置1. VS2017编译环境搭建win10上是使用VS来编译和链接的:VS2017进入链接接下来,选择2017社区版:下载后安装,右边为默认的安装,这个要装蛮久,这时候可以弄QT了2. QT环境搭建● 下载:官网指定的版本,其他我也没试过, QT 5.12.6(点击这里)下载慢的话,可以复制下载链接到迅雷,速度杠杠的!● 安装:记得都是64的安装原创 2020-06-30 11:41:08 · 20864 阅读 · 123 评论 -
QT QGC 中 error: C2220: 警告被视为错误 - 没有生成“object”文件
目录1. 已搭建环境介绍2. 解决办法3. 大功告成1. 已搭建环境介绍按官网推荐已搭建好的环境:VS2017 + QT5.12.6 + QGC4.0稳定版这里不再累赘。2. 解决办法问题报错:这是编码问题,可通过换成GB2312来解决,如图:第四步,一定要选择,“按编码保存”,笔者选择“按编码重新载入”,还有会报错同样其他问题,也用相同的方法解决:3. 大功告成...原创 2020-03-17 11:50:13 · 3201 阅读 · 15 评论 -
RTK接入QGC(QGC转发RTK信息)
目录说明1. Qt Quick 应用程序结构分析2、QML初识3、运行说明本笔记来源于CSDN安晓辉老师的Qt Quick 4小时入门,实际上只有112分钟,另外两小时是他的JavaScript课程加起来共四小时,我只学习了Qt Quick课程。本篇文章是看完后的笔记,没按顺序记录,有错误望指正。具体入门最好是看安晓辉老师的课程,免费的哦。1. Qt Quick 应用程序结构分析一个最简...原创 2020-03-14 23:24:18 · 5077 阅读 · 2 评论