- 嵌入式
- 物联网
- 机器人
- 自动驾驶
- 智能硬件
【免费下载链接】PX4-Autopilot
PX4 Autopilot Software
mRo Pixracer(Pixhawk XRacer 板卡家族)是 PX4 官方维护团队支持的一款飞控,专为小型穿越机(Racing Quad)与固定翼机型优化设计。本文以 PX4 用户指南中的 Pixracer 官方文档 为主体,结合仓库内boards/px4/fmu-v4/的板级源码、Kconfig 配置与接线文档,系统梳理该飞控的核心特性、完整引脚定义、串口映射、WiFi 免 USB 工作流、固件构建命令及关键配置要点,帮助你快速完成从选型、接线到编译固件的全流程。
注意:PX4 项目本身并不生产这款(或任何)飞控硬件,硬件支持与合规性问题请直接联系制造商 mRo。
核心硬件特性
Pixracer 的定位是"为竞速而生":与同家族的 Pixfalcon 和经典 Pixhawk 相比,它内置 WiFi 模块、采用更新的传感器、提供完整的舵机直插排针、支持 CAN 总线,并拥有 2M Flash。其关键特性如下:
- 主控 SoC:STM32F427VIT6 rev.3
- CPU:180 MHz ARM Cortex-M4,带单精度 FPU
- RAM:256 KB SRAM(L1)
- 标准 FPV 外形:36×36 mm,30.5 mm 标准孔距(可直接适配常见 FPV 机架与减震座)
- 传感器组合:
- Invensense ICM-20608 加速度计 / 陀螺仪(4 KHz)
- MPU9250 加速度计 / 陀螺仪 / 磁力计(4 KHz)
- HMC5983 磁力计(带温度补偿)
- Measurement Specialties MS5611 气压计
- 接口与存储:JST GH 连接器、microSD 卡槽(用于日志记录)
- 遥控协议支持:Futaba S.BUS / S.BUS2、Spektrum DSM2 / DSMX、Graupner SUMD、PPM 输入、Yuneec ST24
- 遥测:FrSky 遥测端口;内置 ESP8266 WiFi 模块
- 输出:OneShot PWM 输出(可配置)
- 可选件:安全开关与蜂鸣器
从源码结构看,这些特性在仓库的 default.px4board 中均有对应驱动开关支撑:例如CONFIG_DRIVERS_IMU_INVENSENSE_ICM20608G=y、CONFIG_DRIVERS_IMU_INVENSENSE_MPU9250=y、CONFIG_COMMON_BAROMETERS=y、CONFIG_DRIVERS_PWM_OUT=y(OneShot 等 PWM 输出)、CONFIG_DRIVERS_SAFETY_BUTTON=y(安全开关)与CONFIG_DRIVERS_TONE_ALARM=y(蜂鸣器)等。
购买渠道与配件
Pixracer Pro 可从 store.3dr.com 购买。官方文档列出的可选配件包括:
- 数字空速传感器
- Hobbyking OSD + EU 遥测模块(433 MHz)(已停产)
套件组成
Pixracer 的设计要求使用独立的航电电源供电。这是为了避免电机或电调(ESC)产生的电流浪涌回流到飞控,干扰其灵敏的传感器读数。标准套件通常包含:
- 电源模块(带电压与电流检测)
- I2C 分线器(支持 AUAV、Hobbyking 和 3DR 外设)
- 覆盖常见外设的线缆套件
电源检测在板级源码中同样有迹可循:boards/px4/fmu-v4/src/board_config.h定义了ADC_BATTERY_VOLTAGE_CHANNEL(通道 2)与ADC_BATTERY_CURRENT_CHANNEL(通道 3),default.px4board中CONFIG_DRIVERS_POWER_MONITOR_INA226=y、CONFIG_MODULES_BATTERY_STATUS=y使能了电池监测链路。
WiFi 功能:无需 USB 的完整工作流
WiFi 是这块板子最突出的卖点之一,它允许通过 WiFi 完成固件烧写、系统设置与飞行中遥测,摆脱了对桌面电脑的依赖:
- 使用 ESP8266 WiFi 模块(通常随板附带)
- 可刷写 自定义 ESP8266 MAVLink 固件(MavESP8266)
限制说明:当前固件升级尚未通过 WiFi 启用(默认 bootloader 已支持,但功能未开启);系统设置与遥测功能均可用。
从板级源码看,ESP8266 并非简单的串口外设,飞控对它拥有完整的电源与复位控制能力。boards/px4/fmu-v4/src/board_config.h中定义了:
GPIO_8266_GPIO0(PE2,ESP8266 GPIO0 输入监测)GPIO_8266_GPIO2(PB4,GPIO2 输入监测)GPIO_8266_PD(PE5,电源控制,默认置位)GPIO_8266_RST(PE6,复位控制,默认置位)
串口侧,ESP8266 挂在 UART1,设备节点为/dev/ttyS0(见下文串口映射表),default.px4board中CONFIG_BOARD_SERIAL_WIFI="/dev/ttyS0"与之对应。
ESP8266 出厂默认热点参数
依据 ESP8266 WiFi 模块文档,常见的出厂网络设置如下(具体以板卡背面或包装上的印刷信息为准):
- SSID:PixRacer
- 密码:pixracer
- WiFi 信道:11
- UART 速率:921600
其他模块可能使用类似设置:SSID 为IFFRC_xxxxxxxx、密码12345678、IP192.168.4.1、端口6789(TCP)。
QGC 无线连接方式
当地面站电脑连接到名为Pixracer的 WiFi 热点时,QGroundControl 会自动连接飞控;若使用其他名称的热点,则需在 QGC 的Application Settings > Comm Links中手动新建连接(设置 IP/端口后点击 Connect)。
在通过 WiFi 工作之前,先用 USB 连接飞控完成三步准备(详见 ESP8266 WiFi 模块文档):
- 通过 QGroundControl 加载最新 PX4 固件;
- 按照 串口配置指南 配置连接 ESP8266 的串口,波特率务必设为 921600,与 ESP8266 固件保持一致;
- 按 MAVLink 外设文档 在对应串口上配置 MAVLink,以便通过 ESP8266 收发遥测与指令。
ESP8266 固件刷写(进阶)
若模块未预装兼容固件,可参考以下两种方式(详见 ESP8266 文档的刷写章节):
- 源码构建:克隆 MavESP8266 固件仓库,使用其自带的 PlatformIO 环境构建并烧写。
- OTA 升级:若已装有 1.0.4 及以上固件,可连接其 AP 热点后访问
http://192.168.4.1/update直接上传固件——这是最简单的升级途径。 - 命令行烧写:下载 esptool 工具后执行:
esptool.py --baud 921600 --port /dev/your_serial_port write_flash 0x00000 firmware_xxxxx.bin其中firmware_xxxxx.bin为下载的固件文件,your_serial_port为 ESP8266 所连串口(如/dev/cu.usbmodem)。进入 Flash 模式需将 GPIO-0 拉低(GND)、CH_PD 拉高(VCC),并注意大部分 ESP8266 模块仅支持 3.3V 供电。
装配与接线
完整的接线教程请参阅 Pixracer 接线快速入门。其中重点包括:
- 遥控接收机连接:FrSky 接收机通过专用端口并配合随附 I/O 连接器接线;PPM-SUM 与 S.BUS 接收机接入RCIN端口;逐通道独立引线的 PPM/PWM 接收机须经 PPM 编码器接入RCIN(PPM-Sum 接收机则单信号线即可)。
- 外部遥测:Pixracer 内置 WiFi,同时也支持在
TELEM1或TELEM2端口外接 WiFi 数传或电台数传。若使用TELEM2外接数传,必须通过MAV_2_CONFIG参数将其配置为第二个 MAVLink 实例(参考 MAVLink 外设 > MAVLink 实例 与 串口配置)。 - 遥控系统选型:手动飞行需要遥控系统(自主飞行模式不需要),先选择兼容的发射机/接收机并完成对频。
官方提供的接线参考图如下(自上而下分别为顶部接线、底部接线、GPS 接线):
ACSP5 电源模块
说明:最后一张图片路径以仓库实际文件
grau_acsp5_roh.jpg为准,完整图片清单见docs/assets/flight_controller/pixracer/目录。
连接器标准与引脚定义
所有连接器均遵循 Pixhawk 连接器标准,除特别注明外均为 JST GH 型号。官方引脚图如下:
TELEM1、TELEM2+OSD 端口
| 引脚 | 信号 | 电压 |
|---|---|---|
| 1(红) | VCC | +5V |
| 2(黑) | TX(出) | +3.3V |
| 3(黑) | RX(入) | +3.3V |
| 4(黑) | CTS(入) | +3.3V |
| 5(黑) | RTS(出) | +3.3V |
| 6(黑) | GND | GND |
GPS 端口
| 引脚 | 信号 | 电压 |
|---|---|---|
| 1(红) | VCC | +5V |
| 2(黑) | TX(出) | +3.3V |
| 3(黑) | RX(入) | +3.3V |
| 4(黑) | I2C1 SCL | +3.3V |
| 5(黑) | I2C1 SDA | +3.3V |
| 6(黑) | GND | GND |
FrSky 遥测 / SERIAL4
| 引脚 | 信号 | 电压 |
|---|---|---|
| 1(红) | VCC | +5V |
| 2(黑) | TX(出) | +3.3V |
| 3(黑) | RX(入) | +3.3V |
| 4(黑) | GND | GND |
RC 输入(支持 PPM / S.BUS / Spektrum / SUMD / ST24)
| 引脚 | 信号 | 电压 |
|---|---|---|
| 1(红) | VCC | +5V |
| 2(黑) | RC IN | +3.3V |
| 3(黑) | RSSI IN | +3.3V |
| 4(黑) | VDD 3V3 | +3.3V |
| 5(黑) | GND | GND |
CAN
| 引脚 | 信号 | 电压 |
|---|---|---|
| 1(红) | VCC | +5V |
| 2(黑) | CAN_H | +12V |
| 3(黑) | CAN_L | +12V |
| 4(黑) | GND | GND |
提示:
default.px4board中CONFIG_DRIVERS_UAVCAN=n但CONFIG_BOARD_UAVCAN_INTERFACES=1,表明硬件具备 1 路 CAN 接口,可按需启用 UAVCAN 驱动。
POWER 端口
| 引脚 | 信号 | 电压 |
|---|---|---|
| 1(红) | VCC | +5V |
| 2(黑) | VCC | +5V |
| 3(黑) | CURRENT | +3.3V |
| 4(黑) | VOLTAGE | +3.3V |
| 5(黑) | GND | GND |
| 6(黑) | GND | GND |
SWITCH 端口(安全开关 / 蜂鸣器)
| 引脚 | 信号 | 电压 |
|---|---|---|
| 1(红) | SAFETY | GND |
| 2(黑) | !IO_LED_SAFETY | GND |
| 3(黑) | VCC | +3.3V |
| 4(黑) | BUZZER- | - |
| 5(黑) | BUZZER+ | - |
调试端口(Debug Port)
引脚与连接器符合 Pixhawk Debug Mini 接口规范(即 Pixhawk 连接器标准中的 JST SM06B 连接器):
| 引脚 | 信号 | 电压 |
|---|---|---|
| 1(红) | VCC TARGET SHIFT | +3.3V |
| 2(黑) | CONSOLE TX(出) | +3.3V |
| 3(黑) | CONSOLE RX(入) | +3.3V |
| 4(黑) | SWDIO | +3.3V |
| 5(黑) | SWCLK | +3.3V |
| 6(黑) | GND | GND |
该端口的详细用法参见 SWD 调试端口 与 PX4 系统控制台(注意:FMU 控制台映射到 UART7)。
串口映射
官方文档给出的串口映射如下:
| UART | 设备 | 端口 |
|---|---|---|
| UART1 | /dev/ttyS0 | WiFi(ESP8266) |
| USART2 | /dev/ttyS1 | TELEM1(带流控) |
| USART3 | /dev/ttyS2 | TELEM2(带流控) |
| UART4 | ||
| UART7 | CONSOLE | |
| UART8 | SERIAL4 |
仓库的板级配置文件 default.px4board 印证了上述映射,并补全了 GPS 与 RC 串口:
CONFIG_BOARD_SERIAL_WIFI="/dev/ttyS0" CONFIG_BOARD_SERIAL_TEL1="/dev/ttyS1" CONFIG_BOARD_SERIAL_TEL2="/dev/ttyS2" CONFIG_BOARD_SERIAL_GPS1="/dev/ttyS3"此外,boards/px4/fmu-v4/src/board_config.h定义RC_SERIAL_PORT "/dev/ttyS4"(RC 串行输入),并注明 Spektrum 接收机绑定信号走 UART6(PC7);NuttX 配置(如boards/px4/fmu-v4/nuttx-config/nsh/defconfig)中CONFIG_UART4_BAUD=57600、CONFIG_UART7_SERIAL_CONSOLE=y、CONFIG_UART8_BAUD=57600等项进一步确认了 UART4/7/8 的默认波特率与 UART7 作为系统控制台的角色。
原理图(Schematics)
官方提供 Altium 设计文件(AUAV-OpenSource/FMUv4-PixRacer)作为参考。为方便查阅,仓库内另附两份 PDF(仅供参考):
- pixracer-rc12-12-06-2015-1330.pdf
- pixracer-r14.pdf(R14 或 RC14 字样印在 SD 卡槽旁)
构建固件
提示:大多数用户无需自行编译固件!当识别到对应硬件时,QGroundControl 会自动安装预编译固件。
如需针对该目标构建 PX4,执行:
make px4_fmu-v4_default在仓库结构中可以确认该目标的存在:boards/px4/fmu-v4/目录下除default.px4board外,还提供了test.px4board与rover.px4board变体,分别对应测试构建与无人车(Rover)配置,可按需替换目标名。firmware.prototype与uavcan_board_identity等文件则定义了固件元数据与 UAVCAN 板卡标识。
配置要点
- 罗盘校准:罗盘校准 应在断开 USB的情况下进行。这对所有飞控都是推荐做法,对 Pixracer 而言尤其必要——因为其 USB 连接会产生特别大的磁场干扰。
- 其余配置与其他板卡完全一致。
设计贡献者
该设计由 Nick Arsov 与 Phillip Kocmoud 创建,架构由 Lorenz Meier、David Sidrane 与 Leonard Hall 完成。
延伸阅读:本文涉及的关键仓库路径一览,便于继续深入:
- 板级配置:boards/px4/fmu-v4/default.px4board
- 板级源码:boards/px4/fmu-v4/src/board_config.h
- 启动脚本补充:boards/px4/fmu-v4/init/rc.board_extras(如 FrSky 遥测驱动默认以
/dev/ttyS6启动) - NuttX 配置:boards/px4/fmu-v4/nuttx-config/nsh/defconfig
- 接线指南:docs/en/assembly/quick_start_pixracer.md
- WiFi 模块:docs/en/telemetry/esp8266_wifi_module.md
- 嵌入式
- 物联网
- 机器人
- 自动驾驶
- 智能硬件
【免费下载链接】PX4-Autopilot
PX4 Autopilot Software
相关推荐
PX4 飞控适配指南:CubePilot Cube Orange 硬件特性、引脚定义与固件构建
PX4 飞控适配指南:CubePilot Cube Orange 硬件特性、引脚定义与固件构建 Cube Orange 是由 CubePilot 推出的模块化自
嵌入式物联网机器人自动驾驶智能硬件SIYI UniFC 6 PICO 飞控板完整指南:PX4 硬件特性、引脚定义与固件烧录
SIYI UniFC 6 PICO 飞控板完整指南:PX4 硬件特性、引脚定义与固件烧录 SIYI UniFC 6 PICO 是 SIYI Technology
嵌入式物联网机器人自动驾驶智能硬件PX4 飞控板实战指南:Amovlab Flycore(STM32H743)硬件规格、引脚定义与固件构建
PX4 飞控板实战指南:Amovlab Flycore(STM32H743)硬件规格、引脚定义与固件构建 本文是 PX4 Autopilot 仓库中 Amovl
嵌入式物联网机器人自动驾驶智能硬件
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考