树莓派 4B 连接大疆 M300 无人机开发指南
本教程基于 Raspberry Pi 4B 与 DJI Matrice 300 RTK 无人机,通过 Payload SDK (PSDK) 实现负载控制。不同型号间存在细节差异,建议结合官方文档进行针对性调整。
1. 硬件准备
1.1 设备选型
- 无人机:M300 RTK。顶部接口包括 OSDK、云台口(Payload SDK Port)及 Type-C 调参口。Type-C 口用于连接电脑升级固件或调试。
- 开发板:Raspberry Pi 4B。
- 扩展套件:E-Port 开发者套件。
- 连接线:
- USB-TTL (CH340):用于串口通信,部分树莓派原生串口性能不足时建议使用。
- XT30 转 Type-C:用于 E-Port 供电。
- Type-A 转 Type-C 数据线:需支持数据传输,用于高速 Bulk 传输。
- E-Port 同轴线:连接无人机与开发板。
![硬件接口示意图]
| 接口编号 | 功能说明 |
|---|---|
| 26 | OSDK 接口 |
| 27 | PSDK 接口 |
| 25 | 调参接口 |
注意:E-Port 套件左侧开关靠近接口侧为 OFF,反之为 ON;右侧 USB 主/从切换,靠近接口侧为 Host,反之为 Device。
1.2 硬件连接
- USB-TTL 连接:树莓派 USB3.0 口接 TTL 线 Type-A 端;TTL 线另一端 RX 接 TX,TX 接 RX,GND 接 GND。此路用于 UART 低速数据。
- 同轴线连接:Type-C 端插入 E-Port 的 E-Port 接口(B 标识朝上),另一端 A 标识插入无人机 OSDK 端口。PSDK 3.x 版本将 OSDK 与 PSDK 功能集成,结构更清晰。
- Bulk 数据传输:使用 Type-A 转 Type-C 数据线,连接树莓派 USB2.0 口与 E-Port USB2.0 口。此路用于高速数据流。
- 供电连接:XT30 转 Type-C 线连接 E-Port 5V/2A 输出与树莓派 Type-C 电源口。
- 模式设置:启动前确保 E-Port 开关拨至 ON,USB 切换拨至 Device 模式。无人机作为 Device,开发板作为 Host。
![连线效果示意图]
2. 软件环境搭建
2.1 系统安装
推荐使用 Raspberry Pi OS (64-bit)。烧录后需更新源并安装依赖。
sudo apt-get update
sudo apt-get upgrade
2.2 依赖库安装
以下依赖是运行 PSDK 3.11.0 的基础,请依次执行。
# 安装 libusb
sudo apt-get install libusb-1.0-0-dev
# 安装 OpenCV 3.4.15
sudo apt install libgtk2.0-dev pkg-config
unzip opencv-3.4.15.zip
opencv-3.4.15/
build && build
cmake ../
make -j4
make install
wget https://ffmpeg.org/releases/ffmpeg-4.3.2.tar.gz
tar -zxvf ffmpeg-4.3.2.tar.gz
./configure --enable-shared
make -j4
make install
tar -xzvf opus-1.3.1.tar.gz
opus-1.3.1/
autoreconf -f -i
./configure
make -j4
make install
apt-get install automake libaio-dev gcc g++ cmake


