AP电池故障保护
ArduPilot电池故障保护(Battery Failsafe)参数设置
电池故障保护是ArduPilot飞控系统的一项重要安全机制。当检测到电池电压或容量低于设定阈值时,飞控可自动执行预设动作(如返航、降落),以提升飞行安全性[2](@ref)。
概述
ArduPilot的电源管理系统采用模块化设计,支持多种电池监控硬件,从简单的电压监测到复杂的智能电池(如SMBus、DroneCAN协议电池)[1,2](@ref)。系统通过持续监控电池状态,并在触及预设阈值时触发多级故障保护机制,确保飞行器能够安全应对电源问题[2](@ref)。
核心参数详解
下表列出了电池故障保护中最关键的几个参数[2,4](@ref)。
保护动作参数
| 参数名称 | 描述 | 常用取值与含义 | BATT_FS_LOW_ACT
|
定义触发“低电压”故障保护时执行的动作。 | * 0:无动作 (None)
|
BATT_FS_CRT_ACT
|
定义触发“严重低电压”故障保护时执行的动作。 | * 0:无动作 (None)
|
|---|
电压阈值与触发参数
BATT_LOW_VOLT:低电压阈值(单位:伏特)。当电池电压低于此值并持续指定时间后,将触发BATT_FS_LOW_ACT设定的动作。BATT_CRT_VOLT:严重低电压阈值(单位:伏特)。此值应低于BATT_LOW_VOLT,用于触发更高级别的保护动作。BATT_LOW_TIMER:电压需持续低于阈值的秒数(默认常为10秒),用于防止因瞬时电压波动(如大油门加速)而误触发[2,4](@ref)。BATT_CAPACITY:设置电池的标称容量(单位:毫安时,mAh)。此参数用于库仑计数(计算消耗电量),是容量监控功能的基础[1,2](@ref)。
配置指南
禁用自动降落/返航
若希望完全依赖手动控制,禁用电池低压时的自动动作,需进行如下设置:
- 在Mission Planner的“配置/调试” → “全部参数表”中,找到以下参数:
- 设置
BATT_FS_LOW_ACT = 0 - 设置
BATT_FS_CRT_ACT = 0
- 设置
- 务必合理设置
BATT_LOW_VOLT和BATT_CRT_VOLT,以便地面站能及时发出警告,为手动干预留出足够时间[4](@ref)。
典型配置示例(4S锂电池)
<syntaxhighlight lang="ini">
- 监控器与容量设置
BATT_MONITOR = 4 # 启用模拟电压和电流监控 BATT_CAPACITY = 5200 # 电池容量为5200mAh
- 电压阈值设置 (基于单片电芯3.5V和3.3V计算)
BATT_LOW_VOLT = 14.0 # 低电压阈值 (14.0V) BATT_CRT_VOLT = 13.2 # 严重低电压阈值 (13.2V)
- 保护动作设置 (若需禁用自动动作)
BATT_FS_LOW_ACT = 0 # 低压时无动作 BATT_FS_CRT_ACT = 0 # 严重低压时无动作
- 触发延时
BATT_LOW_TIMER = 10 # 低压需持续10秒才触发 </syntaxhighlight>
重要安全提示
- 禁用自动保护动作(设置为0)意味着飞控在电池电量危急时将不会自动介入。 飞行员将完全负担及时手动接管控制的责任[4](@ref)。
- 此配置显著增加了因完全耗尽电量而导致失控或坠毁的风险。请仅在绝对安全的环境和具备充分手动操控能力的情况下使用。
- 禁用自动动作后,务必依据电池规格(如4S锂电池)合理设置电压阈值,并为手动干预预留充足电量/时间余量[2,4](@ref)。
进阶功能与故障排查
- 电压检测源:参数
BATT_FS_VOLTSRC(或类似参数)可设置电压检测源。设置为1(压降补偿)可基于估算的“静态电压”判断,避免大电流导致的瞬时电压降误触发,结果更准确[2](@ref)。 - 容量保护:除了电压,还可设置
BATT_LOW_MAH参数,当消耗电量达到设定值时触发保护[2](@ref)。 - 多电池系统:对于配置多个电池的系统,可使用
BATT2_、BATT3_等参数集进行独立监控和设置[1](@ref)。 - 常见问题:若出现电压读数跳动或低电压误报警,可检查硬件连接、重新校准传感器,或调整
BATT_LOW_VOLT参数及BATT_LOW_TIMER延时[2](@ref)。
参见
- ArduPilot参数说明 - 获取更多飞控参数的详细说明。
- Mission Planner地面站使用指南 - 学习如何使用地面站进行参数配置。
- ArduPilot电源管理系统 - 深入了解电源监控架构。