当前位置: 首页 > article >正文

windows编译ardupilot源码教程

在这里插入图片描述

一、下载ArduPilot 源码

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

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

 git clone https://github.com/ArduPilot/ardupilot.git

二、安装编译环境

打开后,通过cd命令,转到.\ardupilot\Tools\environment_install目录
使用管理员权限运行powershell
设置执行策略

set-executionpolicy remotesigned

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

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

在这里插入图片描述
此时将自动下载并安装MAVProxy、Cygwin x64、ARM GCC 编译器、python等软件。

安装g++:地址
在这里插入图片描述
下载后解压,将源码下的bin路径添加到系统环境变量。

三 切换固件

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

git tag

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

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

git checkout -b MyCopter Copter-3.6.7

3.3 更新子模块

git submodule update --init --recursive

四、编译飞控源码

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

4.1 配置飞控类型

查看所有支持的飞控类型

./waf list_boards

4.2 选择飞控类型

./waf configure --board fmuv3

4.3 选择机型

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

编译完成。路径为./ardupilot/bulid/fmuv3/bin/arducopter.apj
若编译失败,则清除build再重复上面步骤

./waf distclean

五、固件烧写

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


http://www.kler.cn/a/299819.html

相关文章:

  • 编译dpdk19.08.2中example时一系列报错解决
  • 【JavaWeb06】Tomcat基础入门:架构理解与基本配置指南
  • web集群
  • 大数据治理实战:架构、方法与最佳实践
  • 【教学类-89-01】20250127新年篇01—— 蛇年红包(WORD模版)
  • 【ESP32】ESP-IDF开发 | WiFi开发 | UDP用户数据报协议 + UDP客户端和服务器例程
  • 在PowerShell环境查看和删除环境变量
  • 链表相关OJ
  • 基于多技术融合在生态系统服务构建生态安全格局中的实践技术应用
  • spring Reactive 响应式编程
  • webpack5 创建多页面应用配置
  • Hive查询计划
  • 基于ts写法的一些 项目中会有所用到的功能函数
  • 助力汽车零部件产业发展,2025 第十二届广州国际汽车零部件加工技术及汽车模具展览会与您相约“羊城”广州
  • 未来数据中心网络的创新光互连解决方案
  • css 个人喜欢的样式 速查笔记
  • OSPFv2几类LSA、路由过滤、邻居建立
  • 在Ubuntu上使用阿里源安装docker
  • 基于 NIM 建构多模态 AI-Agent (代码解析)
  • 光影漫游者:沉浸式科技空间,打造未来体验—轻空间
  • 什么是边缘案例测试?如何查找并确定优先级
  • TCP协议多进程多线程并发服务器
  • .iso文件怎么打开?
  • 番外--自由切换java-jdk版本
  • Linux网络——socket编程与UDP实现服务器与客户机通信
  • GDB 查看汇编