(5)将固件加载到没有ArduPilot固件的主板上

文章目录

前言

[5.1 下载驱动程序和烧录工具](#5.1 下载驱动程序和烧录工具)

[5.2 下载ArduPilot固件](#5.2 下载ArduPilot固件)

[5.3 使用测试版和开发版](#5.3 使用测试版和开发版)

[5.3.1 测试版](#5.3.1 测试版)

[5.3.2 最新开发版本](#5.3.2 最新开发版本)

[5.4 将固件上传到自动驾驶仪](#5.4 将固件上传到自动驾驶仪)

[5.5 替代方法](#5.5 替代方法)

[5.6 将固件加载到带有外部闪存的主板上](#5.6 将固件加载到带有外部闪存的主板上)


前言

ArduPilot 的最新版本(Copter-3.6, Plan-3.9, Rover-3.5)运行在相对较小的、非 Pixhawk 的、使用 ChibiOS 操作系统的自动驾驶仪上。这些电路板的例子包括 OpenPilot RevoMiniMateksys F405-WingOmnibus F4 Pro


大多数情况下,这些板子都预装了另一个飞行控制器软件。(如果板子上已经安装了 ArduPilot,请参阅 Loading Firmware 了解固件加载说明。

将 ArduPilot 安装到这些自动驾驶仪上涉及:

  • 安装所需的驱动程序和烧录工具;
  • 下载合适的 ArduPilot 固件;
  • 将 ArduPilot 加载到主板上。

Note

ArduPilot 使用 ChibiOS 到 Pixhawk 自动驾驶仪的说明可以在这里(here)找到。

5.1 下载驱动程序和烧录工具

STM32CubeProgrammer 将安装所需的 DFU(直接固件上传)驱动程序,并可用于在 DFU 模式下将固件烧录到自动驾驶仪。这适用于 Windows、Linux 和 MacOS 系统。下载并安装此程序。你可能需要同时安装 JAVA,以便设置这个程序。

5.2 下载ArduPilot固件

firmware.ardupilot.org 下载你的主板的 ArduPilot 固件。通常你可以通过以下方式找到合适的固件:

  • 打开 firmware.ardupilot.org
  • 选择点击你的飞行器类型的链接(如 PlaneCopterRoverSubAntenna Tracker);
  • 选择"测试版"或"稳定版";
  • 寻找名称与自动驾驶仪最接近的目录;
  • 下载"arduXXX_with_bl.hex"文件,点击它。它通常会被保存在你的下载文件夹中。

5.3 使用测试版和开发版

5.3.1 测试版

在稳定版(Stable)发布之前,会有一个或多个测试版(Beta)被发布。如果你想尝试更新的功能或帮助开发人员进一步测试代码,可以使用这些版本。由于它们是"测试版",可能仍然有错误(尽管这在稳定版固件中也是可能的)。然而,它已经由开发团队进行了测试,并且已经进行了飞行测试。这个版本允许更多的用户在稳定版(Stable)固件发布之前对其进行最终测试。我们鼓励有经验的 ArduPilot 用户试飞这个固件并提供反馈。

5.3.2 最新开发版本

这反映了 ArduPilot 代码的开发分支的当前状态。它已经被开发团队审查,通过了所有的自动测试套件,并且在大多数情况下,如果做了重大的改变,可以进行试飞。这段代码每天都会被构建,并且可以供有经验的用户测试。这相当于一个"阿尔法"版本,可能会有错误,尽管很少有"导致崩溃的"。在增加了一个改变或引入了一个功能后不久,Wiki 的 Upcoming Features 部分就会更新有关增加或改变的信息。

5.4 将固件上传到自动驾驶仪

按住电路板的 DFU 按钮或临时桥接其"BOOT"引脚,并插入 USB 调试线(连接到你的 PC)。通电后释放按钮或解除桥接。

打开 windows 设备管理器,在"通用串行总线设备"下查找"STM32 BOOTLOADER",以确认该板处于 DFU 模式。

启动 STM32CubeProgrammer。

  1. 选择连接方法:USB;

  2. 确保有一个 USB 端口显示......这意味着在 DFU 模式下检测到了电路板;

  3. 按下"Connect";

  4. 然后板子上的 cpu 具体情况会出现在这里;

  5. 按"Open file",选择你下载的"arduXXX_with_bl.hex"文件;

  6. 文件名将出现在标签中;

  1. 按"Download",将文件烧录到电路板上。

你现在可以重新启动电路板,并与你喜欢的地面站(Mission Planner、QGC 等)连接(connect with your favourite ground station),未来的固件上传也应该可以使用 Pixhawk 电路板的正常方法。

5.5 替代方法

5.6 将固件加载到带有外部闪存的主板上

篇幅过多,另起一篇介绍:

相关推荐
Rense15 小时前
开源RK3588 AI Module7,并与Jetson Nano生态兼容的低功耗AI模块
人工智能·开源
程序员皮皮林9 小时前
开源PDF工具 Apache PDFBox 认识及使用(知识点+案例)
java·pdf·开源·apache
EmotionFlying12 小时前
(11)(2.1.2) DShot ESCs(一)
外设硬件·copter·ardupilot
MinIO官方账号13 小时前
从 HDFS 迁移到 MinIO 企业对象存储
人工智能·分布式·postgresql·架构·开源
giszz16 小时前
【开源大模型生态9】百度的文心大模型
人工智能·开源
棱镜七彩16 小时前
供方软件供应链安全保障要求及开源场景对照自评表(下)
安全·开源
华为云开源18 小时前
openGemini 社区人才培养计划:助力成长,培养新一代云原生数据库人才
数据库·云原生·开源
铁匠匠匠1 天前
从零开始学数据结构系列之第六章《排序简介》
c语言·数据结构·经验分享·笔记·学习·开源·课程设计
sqll5671 天前
最新简洁大方的自动发卡网站源码/鲸发卡v11.61系统源码/修复版
前端·开源·html
小强在此1 天前
【基于开源鸿蒙(OpenHarmony)的智慧农业综合应用系统】
华为·开源·团队开发·智慧农业·harmonyos·开源鸿蒙