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通讯的方法,添加一个新的载 ...
最新文章
- oracle schedule stop,Oracle调度Schedule特性(第八部分)-Windows和Window Groups
- 搜素算法(基础)--DFS/BFS算法(JAVA)
- centos7之关于时间和日期以及时间同步的应用
- ISO9000标准简介
- MyEclipse设置字体大小
- 手机视频水印去不掉有马赛克
- Handler看这一篇就够了
- npm install 停在下载某个包的地方不动
- word 批量替换空格和回车
- csrf令牌_是否需要CSRF令牌?
- 百钱买百鸡问题的解法与思路
- Android恶意样本分析——frida破解三层锁机样本
- 鸿蒙定时重启软件,谁有自动定时关机开机的软件!求助!
- java使用多态打印个人信息_java 多态 回顾
- 70 个 Shell 脚本面试问题和答案
- 程序员趣图:有时候我的代码就是这样子……
- 真我手机可以装鸿蒙系统,华为Mate40/P40两大旗舰用户已提前享用鸿蒙手机系统...
- python plot设置坐标轴_python中plot怎么设置横纵坐标名称
- ElasticSearch --- elasticsearch.yml配置详解
- LJJ-C++接口类代码编写规范
热门文章
- 请允许我介绍一下Hadoop之父Doug Cutting以及Hadoop历史版本
- go-zero 使用 gorm,gozero gorm
- 以下为2009软件百强企业名单
- 【论文阅读】Weakly Supervised Semantic Segmentation using Out-of-Distribution Data
- GPT-3核心成员出走打造ChatGPT最强竞品,估值50亿美元
- 猿创征文|java循环结构
- Android实现计步器功能,适配Android10,隔天步数清零,查看历史运动纪录_附源码
- socket5代理 客户端代码
- 计算机学硕一志愿调剂,考研第一志愿和调剂志愿有什么区别
- HTML + JS实现万年历效果