QGC地面站二次开发教程一
这一节是关于Q Ground Control源码编译安装的教程。因为需要做二次开发,所以必须要用QtCreator进行编译、改程序、再编译。采用的QGC源码版本是v3.4.0,是2018年8月10日最新的版本,在QGC develop网站上可以开到,目前的源码编译需要的QtCreator版本是5.11.0。
在Qt官网下载是比较慢的,可以去清华或者中科大的镜像下载,速度比较快,中科大的镜像Qt下载链接(http://mirrors.ustc.edu.cn/qtproject/official_releases/qt/5.10/5.10.0/)。 下载完则是一个qt-opensource-linux-x64-5.11.0.run文件,可以剪切放在/home文件夹中,方便操作。
第一步:需要对其进行授权,防止超出权限 chmod 777 qt-opensource-linux-x64-5.11.0.run
第二步:开始执行安装命令 ./qt-opensource-linux-x64-5.11.0.run 在安装过程中可能会有点卡,耐心等待一会,整个安装 过程大概20分钟左右,若是失败可以重新安装再次尝试一下,安装位置可以默认即可。
第三步:安装一些依赖包 sudo apt-get install espeak libespeak-dev libudev-dev libsdl1.2-dev libsdl2-dev 直接复制粘贴即可
第四步:对Qt源进行更换,因为默认的源是Qt4 export QT_SELECT=qt5
之后便可以查看Qt环境 qtchooser -print-env
第一个导向和我们安装的不一致,需要对其进行更改。sudo gedit /usr/lib/x86_64-linux-gnu/qtchooser/5.conf 第一行需要更改,目录与自己安装的位置有关,例如我的是改成 /home/lxk/Qt5.11.0/5.11.0/gcc_64/bin
最后查看Qt的qmake的版本 qmake -v
如果是这样的话则代表安装成功了,接下来可以编译QGC源码了。
一、使用git命令clone源码,跟新submodules
git clone --recursive https://github.com/mavlink/qgroundcontrol.git
git submodule update
二、用Qt打开,一开始可能会有些messages输出,不用管
三、点击编译按钮,编译,第一次编译时间比较长,可以去干点其他的事
编译完成后会出现这个页面,提示我们将用户加入权限组,并移除设备管理器,因为设备管理器会对串口造成影响。
在命令行输入 sudo usermod -a -G dialout $USER 和 sudo apt-get remove modemmanger
最后出现了QGC地面站,表示编译成功。连接上PIXHAWK,需要新建立一个串口,最好再重新启动一下Ubuntu
QGC地面站二次开发教程一相关推荐
- QGC地面站二次开发(二)QGC 界面自定义和修改
目录 1.QGC 地面站的显示机制 1.1.C++类注册为 qml 可访问类型 1.2.注册属性或者方法 1.1.1. 属性声明 1.1.2.方法声明 2.QGC 地面站界面初步修改 3.QGC 地面 ...
- QGC地面站二次开发(一)地面站介绍以及软件框架(1)地面站使用介绍和接口介绍
目录 QGC界面显示框架 页面介绍 飞行页面 Application Setting页面 General Offline map 连接 Mock Link Vehicle Setup页面 Plan页面 ...
- QGC地面站二次开发(三)Qt 简洁地面站
目录 多机控制原理 多机控制实现 简洁地面站优化 1. 飞机的飞行轨迹以不同的颜色区分 2. 控制所有的飞机 3. 将设定航线送给特定的飞机 多机控制原理 多机地面站支持 TCP. UDP 和串口等三 ...
- QGC地面站二次开发(一)地面站介绍以及软件框架(3)QGC汉化步骤介绍
目录 更新翻译 添加资源文件 添加源码 运行查看结果 其他 更新翻译 qgroundcontrol.pro中添加TRANSLATIONS += zh_en.ts更新翻译,点击工具->外部-&g ...
- qgc开发文档_QGC地面站二次开发教程二
上一次带大家进行了ubuntu下的Q Ground Control安装与编译,这次教大家对地面站的页面进行修改,对按钮或者页面进行删减,如何添加下次再说吧,我还没研究明白. 一开始打开qgroundc ...
- 无人机地面站二次开发、深度开发
字节科技定制化地面站,可实现对pix飞控的日志导出和分析功能,可筛选出不同传感器的数据文件,以图表等形式显示出来,同时支持将筛选结果导出为第三方软件可识别的文件类型,方便快速衔接. 航测领域需要提前规 ...
- discuz二次开发 教你识别程序目录和文件列表
本列表总览分两个部分, 第一个部分为:目录.文件篇. 第二个部分为:模板文件结构篇. 目录+文件篇: | – admin.php 管理员入口 | – api.php 接口文件 | – category ...
- QGroundControl(QGC)飞控地面站二次开发-修改地图
一.问题 QGC的地图在国内某些地方,只用bing可用,其他都不能使用.而且bing卫星图也没有道路和标签信息,还死慢死慢的.据说bing其实就没有国内的卫星地图版权,在网页上查查看bing地图,时没 ...
- MP地面站二次开发教程(五)简易地面站多机控制系统框架
目录 一 .硬件框架 二.使用方式 三.软件框架 1.设备链表 没添加一个载具/飞机,就在链表里面添加一个实例化了的类(飞机/载具对象) 2.Device类包含了串口和TCP通讯的方法,添加一个新的载 ...
最新文章
- 最简单人工智能python_Python人工智能之路 - 第四篇 : jieba gensim 最好别分家之最简单的相似度实现...
- 【学习笔记】分布式Tensorflow
- 【数据竞赛】2020首届海洋目标智能感知国际挑战赛冠军方案分享
- Jquery日历编写小练习
- 最新js实现复制粘贴功能实例
- list.php tid 1,DedeCMS栏目用目录名个性化伪静态
- oracle 感叹号,Oracle错误案例:ORA-00922
- 浙大 PAT b1029
- 对话彭军、楼教主:1.12亿美元融资来了,Pony.ai车队也已在路上 | 变局者
- Java开发团队管理细则
- 基因表达式编程的任务指派问题求解算法设计与实现
- android camera实例
- 关于OpenGL源码下载说明
- Vue SSR 学习
- 2021-06-01
- 时序分析基本概念介绍ILM
- WPF 实现label换行
- 网络 - 收藏集 - 掘金
- 火星辩证派第1期·精华版:为什么在DeFi这个赛道上国外项目异常火爆,中国市场却反应迟缓?...
- 基于html5鼠标悬停图片动画展示效果