windows编译ardupilot源码教程

一、下载ArduPilot 源码

源码地址:GitHub - ArduPilot/ardupilot: ArduPlane, ArduCopter, ArduRover, ArduSub source

使用git clone命令拉取飞控代码。

bash 复制代码
 git clone https://github.com/ArduPilot/ardupilot.git

二、安装编译环境

打开后,通过cd命令,转到.\ardupilot\Tools\environment_install目录

使用管理员权限运行powershell

设置执行策略

bash 复制代码
set-executionpolicy remotesigned

执行完当前指令后已经解除安全机制对.ps1类型的脚本文件的约束,此时再去执行.ps1脚本已经没有问题了

输入.\install然后按Tab键切换到install-prereqs-windows.ps1,回车运行。

此时将自动下载并安装MAVProxy、Cygwin x64、ARM GCC 编译器、python等软件。

安装g++:地址

下载后解压,将源码下的bin路径添加到系统环境变量。

三 切换固件

3.1 查看源代码中包含的所有tag

bash 复制代码
git tag

按回车下一行,找到版本后,按 "q" 退出

例如从多旋翼3.6.7 稳定版固件创建分支,分支名为:MyCopter

bash 复制代码
git checkout -b MyCopter Copter-3.6.7

3.3 更新子模块

bash 复制代码
git submodule update --init --recursive

四、编译飞控源码

以下命令在Cygwin64终端下执行。

4.1 配置飞控类型

查看所有支持的飞控类型

bash 复制代码
./waf list_boards

4.2 选择飞控类型

bash 复制代码
./waf configure --board fmuv3

4.3 选择机型

bash 复制代码
如果是编译多旋翼固件,运行下面的命令 
./waf copter
 
如果是编译常规固定翼固件或者垂直起降固定翼固件(二者同一个固件)
./waf plane
 
如果是编译直升机固件
./waf heli
 
如果是编译无人车固件
./waf rover
 
如果是编译潜水艇固件
./waf sub

编译完成。路径为./ardupilot/bulid/fmuv3/bin/arducopter.apj

若编译失败,则清除build再重复上面步骤

bash 复制代码
./waf distclean

五、固件烧写

使用QGC或MissionPlanner地面站选择编译后的固件进行烧写。

相关推荐
hairenjing11234 小时前
使用 Mac 数据恢复从 iPhoto 图库中恢复照片
windows·stm32·嵌入式硬件·macos·word
九鼎科技-Leo6 小时前
了解 .NET 运行时与 .NET 框架:基础概念与相互关系
windows·c#·.net
九鼎科技-Leo8 小时前
什么是 ASP.NET Core?与 ASP.NET MVC 有什么区别?
windows·后端·c#·asp.net·mvc·.net
黎明晓月12 小时前
Java之字符串分割转换List
java·windows·list
九鼎科技-Leo12 小时前
在 C# 中,ICollection 和 IList 接口有什么区别?
windows·c#·.net
顾辰呀13 小时前
实现uniapp-微信小程序 搜索框+上拉加载+下拉刷新
前端·windows
Bunny Chen16 小时前
如何缩小PPT演示文稿的大小?
windows·microsoft·powerpoint
如光照16 小时前
Linux与Windows中的流量抓取工具:wireshark与tcpdump
linux·windows·测试工具·网络安全
wwc_boke17 小时前
Linux查看端口占用及Windows查看端口占用
linux·运维·windows
WangMing_X18 小时前
C# 一个工具类让winform自动根据窗体大小缩放所有控件
开发语言·windows·c#