PX4 飞控硬件详解CUAV X25-EVO 规格、接线与固件构建指南【免费下载链接】PX4-AutopilotPX4 Autopilot Software项目地址: https://gitcode.com/gh_mirrors/px/PX4-Autopilot本文基于 PX4-Autopilot 仓库中 X25-EVO 官方文档 与 快速接线指南结合 boards/cuav/x25-evo 目录下的板级源码Kconfig 配置、传感器初始化脚本、定时器映射、PWM 电压切换模块等完整梳理这款 STM32H743 飞控的硬件特性、串口与 PWM 资源分配、供电冗余机制、外设接线方法以及固件编译流程。读完本文你将能独立完成 X25-EVO 的整机装配、外设连接与 PX4 固件构建并理解其板级实现的底层细节。::: note PX4 并不生产该或任何飞控硬件硬件支持与合规性问题请联系 CUAV。X25-EVO 属于「厂商支持」的飞控相关维护与驱动由 CUAV 官方负责。 :::定位与设计理念X25-EVO 是 CUAV 推出的高端飞控面向商业系统集成同时也适用于学术研究与各类二次开发场景。从仓库中的板级源码看它是一块「FMU 一体式」飞控全部 16 路 PWM 输出均由 FMU 直接驱动DIRECT_PWM_OUTPUT_CHANNELS 16见 board_config.h没有独立 IO 协处理器因此 PWM 输出能力完全依赖 STM32H743 的定时器资源。其核心设计亮点可概括为Arm Cortex-M7 主控STM32H743XI480MHz 主频2MB Flash、1MB RAM可承载更复杂的控制算法与模型。三重冗余 IMU 双冗余气压计分布在独立总线上PX4 检测到某传感器失效后会自动无缝切换到其余传感器。车规级 RM3100 磁力计稳定性与抗干扰能力更强。独立 LDO 电源控制 减震系统为每组传感器独立供电隔离高频振动、降低噪声提升整机飞行性能。双温度补偿系统IMU 板与 FMU 板各一套由板载加热电阻将 IMU 控制在最佳工作温度。集成 Microchip 以太网 PHY可通过以太网与机载计算机mission computer高速通信。PWM 舵机输出电平可在 3.3V / 5V 间切换。模块化设计方便 DIY 载板扩展。处理器与传感器配置从 default.px4board 的CONFIG_DRIVERS_*配置以及 rc.board_sensors 的启动脚本中可以完整还原板载传感器清单类别型号数量总线挂载来自 rc.board_sensors主处理器STM32H743XICortex-M7480MHz2MB Flash1MB RAM1-加速度计/陀螺仪IIM426522SPI1iim42652 -s -b 1加速度计/陀螺仪IIM426531SPI2 / SPI5iim42653 -s -b 2、iim42653 -s -b 5磁力计RM31001内部总线 4rm3100 -s -b 4气压计BMP5811内部总线 4bmp581 -s -b 4气压计ICP-201001内部总线 4icp201xx -I -b 4外部磁力计GPS 模块内IST8310可选-GPS1/I2C1 外部总线ist8310 -X -b 1对应地default.px4board 中启用了CONFIG_DRIVERS_IMU_INVENSENSE_IIM42652y、CONFIG_DRIVERS_IMU_INVENSENSE_IIM42653y、CONFIG_DRIVERS_BAROMETER_BMP581y、CONFIG_DRIVERS_BAROMETER_INVENSENSE_ICP201XXy、CONFIG_DRIVERS_HEATERy等驱动。值得说明的是 rc.board_sensors 中iim42652带-R 2 -C 32768参数表示使用 SPI 片选 2 与 32.768kHz 外部时钟icp201xx -I则代表通过 I2C 接口访问该气压计。此外脚本还会依据ADC_ADS1115_EN参数决定是否启动外部 ADS1115 ADC 扩展。温度补偿实现rc.board_defaults中为双加热器预设了默认参数# IMU thermal control (multi-instance heater) # HEATER1_SENS_ID: 2818058(IIM42652 SPI1) # HEATER2_SENS_ID: 3014698(IIM42653 SPI5) param set-default SENS_EN_THERMAL 1 param set-default HEATER1_SENS_ID 2818058 param set-default HEATER1_TEMP 45 param set-default HEATER2_SENS_ID 3014698 param set-default HEATER2_TEMP 45即默认启用热控SENS_EN_THERMAL1两路加热电阻分别将 IIM42652 与 IIM42653 维持在 45°C 的最佳工作温度。在 board_config.h 中加热器输出引脚为GPIO_HEATER1_OUTPUTPB10与GPIO_HEATER2_OUTPUTPE6并定义了HEATER_NUM 2。电气与机械数据供电规格项目参数额定输入电压10~18VPOWER C1/C2USB 供电4.75~5.25V舵机电源轨输入0~9.9V总输出最大电流10ATELEM1 / TELEM2 输出限流4ACAN1 / CAN2 输出限流2.4A其他端口输出限流1.5A重量飞控模块110g工作/存储温度-20 ~ 85°C供电三重冗余X25-EVO 在提供三路电源POWERC1、POWERC2、USB时可实现供电三重冗余。POWER C1 与 POWER C2 均为 DroneCAN/UAVCAN 电池接口正常工作时按以下优先级供电POWER C1 / POWER C210V~18VUSB4.75V~5.25V数字式 DroneCAN/UAVCAN 电池监控默认开启。板级层面board_config.h 通过GPIO_nPOWER_IN_A/B/C检测三路电源的有效性BOARD_HAS_LTC44XX_VALIDS 2表示支持两路数字电源砖并定义了BOARD_ADC_BRICK1_VALID、BOARD_ADC_BRICK2_VALID、BOARD_ADC_USB_VALID等电源状态判断宏。此外rc.board_sensors 会根据SENS_EN_INA226、SENS_EN_INA228、SENS_EN_INA238参数启动对应的数字电源监控芯片INA226/INA228/INA238并且会通过mft query查询 MFT 表项MFT_PM2来判断是否挂载了 PMU2 Lite 电源模块HAVE_PM2逻辑有则启动第二路监控。这解释了为什么 default.px4board 中同时启用了三个电源监控驱动。若采用模拟电源PX4 使用BAT1_V_DIV与BAT1_A_PER_V进行电压/电流换算rc.board_defaults中预设BAT1_V_DIV 18、BAT1_A_PER_V 24。尺寸接口总览X25-EVO 提供以下对外接口接口说明16x PWM 舵机输出M1~M16支持 3.3V/5V 电平切换1x RC IN专用遥控接收机输入支持 Spektrum / DSM / S.Bus1x 模拟/PWM RSSI 输入信号强度反馈2x TELEM 端口全流控串口接数传模块1x UART4 端口通用串口2x GPS 端口GPS1含安全开关GPS2带 I2C1x USBTYPE-C地面站连接、固件烧录1x 以太网口Transformerless 应用100Mbps3x I2C 总线端口外部 I2C 设备如外接罗盘1x SPI 总线1 路片选、1 路 Data Ready、1 路复位5x CAN 端口3x CAN1 总线复用 2x CAN2 总线复用2x 电源输入端口DroneCAN/UAVCAN 电源输入2x AD 端口模拟输入 3.3V模拟输入 6.6VPX4 不支持1x 调试端口FMU Debug系统控制台 SWD串口映射表UART设备节点端口USART1/dev/ttyS0GPS1USART2/dev/ttyS1GPS2USART3/dev/ttyS2Debug ConsoleUART4/dev/ttyS3UART4UART5/dev/ttyS4TELEM2USART6/dev/ttyS5RC INUART7/dev/ttyS6TELEM1以上映射与 default.px4board 中的配置完全一致CONFIG_BOARD_SERIAL_GPS1/dev/ttyS0、CONFIG_BOARD_SERIAL_GPS2/dev/ttyS1、CONFIG_BOARD_SERIAL_TEL1/dev/ttyS6、CONFIG_BOARD_SERIAL_TEL2/dev/ttyS4、CONFIG_BOARD_SERIAL_EXT2/dev/ttyS3。RC IN 对应/dev/ttyS5RC_SERIAL_PORT /dev/ttyS5且启用单线模式RC_SERIAL_SINGLEWIRE见 board_config.h。PWM 输出详解X25-EVO 支持最多 16 路 FMU PWM 输出MAIN输出能力约束如下输出 1~8 支持 DShot。输出 9~16 不支持 DShot。输出 1~7 支持双向 DShot含 eRPM 遥测。输出 8 仅支持双向 DShot 输出无 eRPM 捕获。16 路输出分为 5 组同一组内的所有输出必须使用相同的输出协议与速率组输出通道定时器group1输出 1-4Timer5group2输出 5-8Timer4group3输出 9-11Timer1group4输出 12-14Timer8group5输出 15-16Timer12该分组可以在 timer_config.cpp 中找到源码级佐证io_timers数组依次注册了Timer5、Timer4、Timer1、Timer8、Timer12五个定时器通道映射中 FMU_CH1~CH8 依次占用 TIM5_CH4/CH3/CH2/CH1 与 TIM4_CH2/CH3/CH1/CH4而 TIM1、TIM8、TIM12 的其余通道则作为FMU_CAP1~CAP8捕获输入对应输出 9~16 的复用引脚。PWM 输出电压切换3.3V / 5VX25-EVO 支持通过参数PWM_VOLT_SEL切换 PWM 输出电平。该参数定义在板级扩展模块 parameters.yaml 中参数类型取值默认值说明PWM_VOLT_SELenum03.3V15.0V0控制 PWM 输出电压修改后需重启启动时由 rc.board_defaults 调用pwm_voltage_apply start应用该参数。其实现pwm_voltage.cpp读取参数值后直接驱动 GPIOPWM_5V_VOLT_SEL(true/false)底层引脚为 board_config.h 中的GPIO_PWM_VOLT_SELPG8。舵机供电说明X25-EVO不为舵机供电。如需驱动舵机在 M1~M16 中任一列的电源正负极接入 BEC同一列的正负极内部互联。将舵机连接到同一列上。务必确认电源轨电压与所用舵机匹配。快速接线指南完整的接线示意图参见 X25 EVO Wiring Quick Start以下为核心外设的连接要点GPS 罗盘 蜂鸣器 安全开关 LED推荐使用 CAN 版 GPS/RTK如 CUAV Neo 4SE直接接到CAN1或CAN2端口。也可将标准 GPS/RTK如 NEO310 针接口接到GPSSAFETY端口该端口集成 GPS、安全开关与蜂鸣器。需要辅助 GPS 时接GPS2端口。GPS/罗盘应尽量远离其他电子设备安装减少电磁干扰且方向标记朝机头NEO GPS 上的箭头需与飞控箭头一致。GPS 模块集成的安全开关默认启用启用状态下 PX4 不允许解锁长按安全开关 1 秒可关闭安全并解锁再次按下可重新启用安全并强制上锁。遥控器RC手动飞行需要一套遥控系统自动飞行模式不强制要求。先选择兼容的发射机/接收机并完成对频再按类型接线安卓遥控器如 H16将TELEM1/TELEM2接到 H16 的 UART0 口H16 的 SBUS 引脚接RC IN。SBUS/DSM/PPM 协议接收机直接用导线接到飞控后部的RC IN端口。ELRS/CRSF 接收机接到 X25-EVO 任意 UART 串口如TELEM2相关说明见 CRSF 遥测。电源模块X25-EVO 标配 PMU2 Lite 电源模块支持 20~70V 输入、最大 220A 电流测量直接插入Power C1/C2端口即插即用无需额外配置板级rc.board_sensors中的MFT_PM2查询正是用于自动识别该模块并启动第二路 INA 监控。数传与 SD 卡数传将机载数传接到TELEM1或TELEM2端口实现地面站对无人机状态的监控与控制。SD 卡出厂已预装用于飞行数据记录与分析、任务执行及 UAVCAN 总线硬件支持强烈建议保留。电机/舵机与机架配置电机/舵机按 Airframe Reference 中对应机型的顺序连接至M1~M16端口。若飞控安装方向无法满足默认朝向需在软件中配置实际安装朝向见飞控安装方向配置。其他可选/不常见外设的接线与配置参考外设文档。通用配置见自动飞控配置复合翼QuadPlane机型配置见 QuadPlane VTOL 配置。固件构建::: tip 绝大多数用户无需自行编译固件连接硬件后QGroundControl会自动为 X25-EVO 安装预编译固件。 :::如需从源码构建在 PX4-Autopilot 仓库根目录执行make cuav_x25-evo_default构建系统将读取 boards/cuav/x25-evo/default.px4board 的配置。该板级配置面向 Cortex-M7CONFIG_BOARD_ARCHITECTUREcortex-m7与 STM32H7 芯片CONFIG_ARCH_CHIP_STM32H7y并启用了以太网CONFIG_BOARD_ETHERNETy与完整的多旋翼/固定翼/垂直起降VTOL控制模块。固件元数据在 firmware.prototype 中定义board_id: 7002与 hw_config.h 的BOARD_TYPE 7002一致。更完整的构建说明见 构建 PX4。调试端口FMU Debug端口同时承载 PX4 系统控制台与 SWD 调试接口功能引脚信号电平1红5V5V2黑DEBUG TX (OUT)3.3V3黑DEBUG RX (IN)3.3V4黑FMU_SWDIO3.3V5黑FMU_SWCLK3.3V6黑GNDGND调试串口对应/dev/ttyS2USART3。支持的机型X25-EVO 适用于任何可通过普通 RC 舵机或 Futaba S-Bus 舵机控制的多旋翼 / 固定翼 / 无人车 / 无人船。完整的支持机型列表见 Airframes Reference。【免费下载链接】PX4-AutopilotPX4 Autopilot Software项目地址: https://gitcode.com/gh_mirrors/px/PX4-Autopilot创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考