核心原理:电压转换
无人机电池通常是高压的,而树莓派需要稳定的低压直流电,整个项目的核心就是电压转换。

(图片来源网络,侵删)
- 无人机电池: 常见的有 3S (11.1V), 4S (14.8V), 6S (22.2V) 锂聚合物电池。
- 树莓派工作电压: 5V DC。
- 关键任务: 将无人机电池的高电压、高电流,转换成树莓派所需的稳定 5V 电压。
硬件选型(最关键的一步)
选择正确的电源模块是成功的关键,你需要考虑以下几个因素:
电压转换模块(降压/Buck Converter)
这是将电池电压转换为 5V 的核心部件。
-
类型: 开关降压稳压器,而不是线性稳压器,因为输入输出压差大时,线性稳压器会产生大量热量,效率极低,不适合无人机使用。
-
关键参数:
(图片来源网络,侵删)- 输入电压范围: 必须覆盖你的无人机电池电压范围,使用 4S 电池 (14.8V),模块输入电压应至少为 5V-25V 或更高,留有余量。
- 输出电流: 必须大于树莓派的峰值电流,树莓派 4B 在满负荷(CPU 100%,USB 设备全开)时可能需要 2.5A - 3A。建议选择持续输出 3A 或 5A 的模块,以提供充足的余量,避免因电压不稳导致重启。
- 效率: 效率越高,发热越小,对电池续航越有利,选择效率 >90% 的模块。
- 尺寸和重量: 无人机对重量非常敏感,选择小巧轻量的模块。
-
推荐模块:
- 基于 MP1584EN 芯片的模块: 非常常见,便宜,效率不错,但电流通常在 2-3A,对于树莓派 3B 或 4B 轻度使用够用,但满载可能吃力。
- 基于 LM2596 芯片的模块: 经典模块,电流较大(3A),散热片做得好,但效率比 MP1584 稍低一些。
- 基于 AP63203 芯片的模块: 性能更好,效率高,电流大(3A-5A),发热控制优秀,是树莓派无人机的首选之一。
- 基于 SY8303 芯片的模块: 性能与 AP63203 类似,也是优秀的选择。
⚠️ 警告:绝对不要直接将电池电压接入树莓派的 5V 引脚!这会立刻烧毁你的树莓派!
飞控
飞控是无人机的“大脑”,负责控制电机,你选择的飞控必须具备串口,用于与树莓派通信。
- 功能: 飞控负责接收遥控信号,控制电调,并读取陀螺仪、加速度计等传感器数据。
- 与树莓派的连接: 通过 UART (串口) 连接,飞控将姿态、高度、速度等数据通过串口发送给树莓派,树莓派也可以通过串口向飞控发送指令(如改变飞行模式、设置航点等)。
- 推荐飞控: Pixhawk 系列飞控(如 CubePilot, Holybro)是行业标准,功能强大,支持多种固件,有丰富的串口资源。
电源分配板
PDB 的作用是将无人机电池的电压分配给各个部件,如飞控、电压转换模块、图传等。

(图片来源网络,侵删)
- 优点: 集中管理电源,接线整洁,并且通常带有电压传感器,可以实时监测电池电压。
- 连接: 电池接入 PDB,PDB 将主电压输出给电调和降压模块,同时将一个低压(如 5V)输出供给飞控等设备。
其他必要硬件
- 电调: 连接电池和电机,接收飞控的 PWM 信号来控制电机转速。
- 遥控器和接收器: 用于手动控制无人机。
- GPS 模块: 通常直接插在飞控的 GPS 接口上。
- 图传 和摄像头: 用于实时回传图像,可选。
- 外壳: 用于保护树莓派和电路,并减少气流干扰。
连接方法(以 Pixhawk + PDB + 降压模块为例)
这是一个典型的连接方案:
- 电池 -> PDB: 将电池的 XT60 或 Deans 插头连接到 PDB 的主输入端。
- PDB -> 电调: 从 PDB 引出主电压线(通常为红色和黑色)连接到每个电调的输入端。
- 电调 -> 电机: 将电调的三根输出线连接到无刷电机。
- PDB -> 飞控: 从 PDB 引出一组电压线连接到飞控的
VBAT或POWER输入接口,这为飞控供电。 - PDB -> 降压模块: 从 PDB 引出主电压线连接到你选择的 5V 降压模块 的输入端。
- 降压模块 -> 树莓派: 将降压模块的输出端(通常是 USB-A 接口或接线端子)连接到树莓派的 Micro-USB 电源输入口。这是为树莓派供电的唯一正确方式!
- 飞控 -> 树莓派 (串口通信):
- 找到飞控上的 TELEM1 或 TELEM2 串口接口,它通常有 4 个引脚:
TX(发送),RX(接收),5V,GND。 - 使用杜邦线进行交叉连接:
- 飞控的
TX-> 树莓派的RX(GPIO 15) - 飞控的
RX-> 树莓派的TX(GPIO 14) - 飞控的
GND-> 树莓派的GND(任何GND引脚)
- 飞控的
- 注意: 这一步通常不需要连接 5V,因为树莓派已经通过降压模块独立供电了,这样可以避免电平冲突和电源干扰,如果飞控和树莓派的共地(GND)没有通过其他方式(如 PDB)连接,则需要连接
GND。
- 找到飞控上的 TELEM1 或 TELEM2 串口接口,它通常有 4 个引脚:
连接示意图:
+----------------+ +-------------------+ +-----------------+
| 无人机电池 |----->| 电源分配板 |----->| 电调 |
| (LiPo 4S) | | (PDB) | | (ESC) |
+----------------+ | | | |
| [主电压输出]----->| |-----> 无刷电机 |
| [电压监测] | +-----------------+
+-------------------+ |
|
+-------------------+ |
| 飞控 |<------------+
| (Pixhawk) | [5V输出]
| |----->| 降压模块 |
| [TELEM1/TELEM2] | | (Buck Converter)|
| TX, RX, GND | +-----------------+
+-------------------+ |
|
v
+----------+
| 树莓派 |
| (Raspberry Pi)|
| - Micro-USB 供电 |
| - UART (GPIO 14,15)|
+----------+
软件配置
硬件连接好后,软件配置才能让它们协同工作。
树莓派端
-
启用串口:
sudo raspi-config- 选择
Interface Options->Serial Port - 当询问是否登录 shell 时,选择 NO
- 当询问是否启用硬件串口时,选择 YES
- 重启树莓派。
-
安装串口通信库:
MAVLink是无人机领域通用的通信协议。sudo apt-get update sudo apt-get install python3-mavlink
-
编写通信脚本: 可以用 Python 编写一个简单的脚本来读取飞控数据。
import serial from pymavlink import mavutil # 配置串口,/dev/ttyS0 是硬件串口,树莓派 4B 可能是 /dev/ttyAMA0 # 波率必须与飞控设置一致,通常是 57600 connection = mavlink_connection('/dev/ttyS0', baud=57600) while True: msg = connection.recv_match() if msg is not None: # 打印所有可用的消息类型 print(f"Message type: {msg.get_type()}") # 打印全局位置信息 if msg.get_type() == 'GLOBAL_POSITION_INT': lat = msg.lat / 1e7 # 纬度 lon = msg.lon / 1e7 # 经度 alt = msg.alt / 1e3 # 高度 (米) print(f"Lat: {lat}, Lon: {lon}, Alt: {alt}")
飞控端 (以 ArduPilot 固件为例)
- 配置串口:
- 通过 QGroundControl 或 Mission Planner 连接飞控。
- 进入
Parameters(参数) 设置。 - 找到并配置串口,
SERIAL1(对应 TELEM1)。 - 设置
SERIAL1_PROTOCOL为2(MAVLink 1) 或0(MAVLink 2)。 - 设置
SERIAL1_BAUD为57600(与树莓派脚本一致)。 - 设置
MAV_1_CONFIG为TELEM 1,确保该串口用于 MAVLink 通信。
安全与最佳实践
- 断电操作: 在连接或修改任何电路时,务必断开无人机电池。
- 绝缘: 所有裸露的接线端子都要做好绝缘处理,防止短路。
- 重量平衡: 树莓派和额外的电子设备会改变无人机的重心,需要仔细调整,确保飞行稳定。
- 散热: 树莓派在长时间工作时会产生热量,确保外壳有通风孔,必要时可加装小风扇。
- 冗余电源: 对于重要的任务,可以考虑为树莓派增加一个备用电池(如 18650 电池组),并通过二极管切换主备电源,防止主电源故障导致无人机失控和数据丢失。
- 测试: 先在地面进行充分测试,确认供电稳定、通信正常、软件运行无误后再进行试飞,第一次试飞建议用系留绳。
通过以上步骤,你就可以成功地将树莓派接入无人机电源系统,开启你的智能无人机项目了!祝你成功!
标签: 树莓派无人机电源接线 树莓派无人机供电方案 树莓派取电无人机电池
版权声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。