hoverboard-firmware-hack-FOC 接线指南:平衡车 FOC 固件的引脚、烧录与首次上电

hoverboard-firmware-hack-FOC 接线指南:平衡车 FOC 固件的引脚、烧录与首次上电

【免费下载链接】hoverboard-firmware-hack-FOC With Field Oriented Control (FOC) 【免费下载链接】hoverboard-firmware-hack-FOC 项目地址: https://gitcode.com/GitHub_Trending/ho/hoverboard-firmware-hack-FOC

本文带你从零完成 hoverboard-firmware-hack-FOC 的硬件接线与首次上手。这是一套给普通平衡车主板换脑的 FOC(磁场定向控制)固件,能显著降低电机噪音、提升扭矩平顺性,还支持弱磁扩速。读完后,你能独立完成主板供电、电机动力线、控制信号线和调试口的接线,并把固件解锁烧录进去、通过串口观察电机指令是否正常。

认识硬件清单:你手上需要什么 📦

这套固件直接刷在平衡车主板的 MCU 里,主控通常是 STM32F103RCT6,部分主板是 GD32F103RCT6,两者都支持。主板两侧插着两块副板(sideboard),原厂的陀螺仪和显示就在副板上。你需要的硬件如下:

| 硬件 | 说明 | | -- | -- | | 平衡车主板 | 含 STM32F103 主控与左右两套三相桥 | | 10S 锂电池组 | 标称约 36V~42V,经 XT60 接口供电 | | 左右电机 | 轮毂内置,三根相线 + 霍尔信号,由主板直接驱动 | | 左/右副板线 | 4 针线:GND、12/15V、TX、RX,是外接控制设备的入口 | | 输入设备(三选一) | 电位器/踏板(ADC)、RC 遥控器(PPM/PWM/iBUS)或 Nunchuk | | 3.3V USB-TTL 适配器 | 接调试串口,115200 波特率 | | ST-Link 调试器 | 首次解锁与烧录用,接 SWD 口 |

hoverboard-firmware-hack-FOC 平衡车主板引脚定义图

主板所有引脚以 PCB 丝印标注,上图为官方引脚定义图。接线前对照实物把每组线的位置确认一遍,比任何文字描述都可靠。

接线前先把安全做到位 🔒

平衡车主板直接扛几十伏高压,接线顺序错了代价很大:

  • 全程断电操作。接任何线之前先拆电池 XT60 插头,接完检查再通电。
  • 认清那根红线。副板 4 针线里有一根是 12/15V 供电,官方文档原话:15V 会让 3.3V 器件"destroy everything"。接适配器、电位器、踏板时,只用 GND 和信号线。
  • 左边线不是 5V 耐压的。左侧长接线对应 USART2,不支持 5V 电平;右侧短接线对应 USART3,才是 5V tolerant。
  • 裸线做绝缘。热缩管或电工胶布包好每个节点,主板上电容密集,一处短路可能烧掉整板。
  • 条件允许的话,在电池正极串一个防反接二极管,能救命。

分步接线实操:按电流走向来 🔌

第一步:供电,先接 XT60 主电源

  • 接口位置:主板边缘的 XT60 插座,标注 VDD 36V-42V 与 GND。
  • 对应引脚:不是 MCU 引脚,而是整板电源输入,经板内 DC-DC 给逻辑电路供电。
  • 连接对象:10S 锂电池组的 XT60 插头,注意极性。
  • 易错点:主板默认按 10 节电池校准(config.h 里 BAT_CELLS 10),别拿 12S 或更低电压的包上电,欠压保护和电量提示都会失准。

第二步:动力,电机相线与霍尔信号

  • 接口位置:主板两组三相输出端子,分别接左右轮毂电机。
  • 对应引脚:左电机走 TIM8,高边 PC6/PC7/PC8、低边 PA7/PB0/PB1;右电机走 TIM1,高边 PA8/PA9/PA10、低边 PB13/PB14/PB15。相电流采样在 ADC 上:左侧 PC0、PA0、PC3,右侧 PC1、PC4、PC5。霍尔信号读入 PB5/PB6/PB7(左)和 PC10/PC11/PC12(右),这些映射已固化在 Inc/defines.h,无需改动。
  • 连接对象:每根电机相线对应一个 U/V/W 端子,霍尔三线加 5V、GND。
  • 易错点:FOC 不依赖霍尔换相,但换相方向错了电机可能反转或抖动。上电后若方向不对,交换任意两根相线,或在 config.h 里打开 INVERT_L_DIRECTION / INVERT_R_DIRECTION。

第三步:信号,通过副板线接你的输入设备

  • 接口位置:主板左右两侧 4 针副板插座。左线(长接线)= USART2,PA2 是 TX、PA3 是 RX,兼作 ADC1/ADC2;右线(短接线)= USART3,PB10 是 TX、PB11 是 RX,兼作 I2C2。
  • 对应引脚与连接对象:
    • 电位器或踏板(VARIANT_ADC / VARIANT_HOVERCAR):接左线,信号 0~3.3V;
    • PPM/iBUS(VARIANT_PPM / VARIANT_IBUS):接右线,PB11 收信号;
    • PWM(VARIANT_PWM):右线 PB10 接通道 1(转向)、PB11 接通道 2(速度);
    • Nunchuk(VARIANT_NUNCHUK):右线走 I2C,注意加上下拉/上拉电阻。
  • 易错点:红线(12/15V)只用来给外接设备供电,3.3V 适配器只碰 GND 和 RX/TX 两根。左边线接 5V 设备会烧毁 PA2/PA3。

第四步:调试口,SWD 加串口

  • 接口位置:MCU 的 SWD 焊盘(PA13 为 SWDIO、PA14 为 SWCLK,STM32 标准位置);调试串口复用任意一条副板线。
  • 对应引脚:串口只接 GND 和 RX 两根,3.3V 电平,115200 波特率。
  • 连接对象:ST-Link 接 SWD 四线;USB-TTL 适配器接副板线看调试输出。
  • 易错点:官方反复强调不要用红色 15V 线接适配器,这是最容易烧板的一步。

下面是官方 hovercar 变体的完整接线示意,包括踏板、RC 接收机和 LED 的连接关系,可作对照:

平衡车 FOC 固件 hovercar 变体完整接线示意图

解锁、烧录与首次上电验证 🔥

原厂固件开了读保护,ST-Link 连上会提示无法读取内存,这是正常现象,不是硬件故障。用 STM32 ST-LINK Utility 进 Target 菜单的 Option Bytes,把读保护级别设为 0 并应用,芯片会被整体擦除,之后即可正常烧录:

hoverboard-firmware-hack-FOC MCU 解锁 Option Bytes 操作界面

然后克隆仓库、选一个 variant 烧录:

git clone https://gitcode.com/GitHub_Trending/ho/hoverboard-firmware-hack-FOC

在 platformio.ini 里把对应 default_envs 取消注释(比如 VARIANT_ADC),再执行 pio run -t upload,用 ST-Link 上传。也可以用 Keil uVision 打开 MDK-ARM 工程,或在 Linux 下 make -e VARIANT=VARIANT_ADC。

关键配置都在 Inc/config.h,首次上电前建议核对三处:CTRL_TYP_SEL(默认 FOC_CTRL)、CTRL_MOD_REQ(默认 VLT_MODE,踏板类应用推荐 TORQUE 模式)、以及限流 I_MOT_MAX 15 与限速 N_MOT_MAX 1000。variant 未选或选多个会直接编译报错,这是保护机制,别绕过。

上电后的观察清单,按顺序做:

  1. 按住电源键开机,听蜂鸣器反馈,副板 LED 应亮。
  2. 打开调试串口(115200),应持续滚出 in1:xxx in2:xxx cmdL:0 cmdR:0 BatADC:xxx BatV:xxx TempADC:xxx Temp:xxx。
  3. 核对 BatV:它是电池电压 ×100 的校准值,拿万用表量电池端对一下,偏差大就先做电压校准(BAT_CALIB_ADC / BAT_CALIB_REAL_VOLTAGE)。
  4. 动一下输入设备(拨电位器或给油门),in1/in2 数值应跟随变化,松回中位 cmdL/cmdR 归 0。
  5. 让一只车轮悬空给小油门,确认转向正确、无异响;两只轮都悬空再试倒车方向。

避坑速查 ⚡

  • ST-Link 提示 Can not read memory → 原厂固件开了 RDP 读保护 → 进 Option Bytes 关闭读保护后重试,注意此操作会清空 Flash,属预期行为。
  • 接上 USB 适配器瞬间冒烟或无法开机 → 12/15V 红线接到了 3.3V 适配器 VCC → 断电检查,适配器只接 GND 和信号线;适配器损坏需更换。
  • 左边线接 5V 设备后无响应或烧口 → USART2 引脚不耐 5V → 改用右边线(USART3,5V tolerant),或换 3.3V 电平设备。
  • 上电后电机不转,串口有输出 → variant 未正确定义,或 MOTOR_LEFT_ENA / MOTOR_RIGHT_ENA 被注释 → 确认只有一个 variant 生效,两个 #define 都在。

写在最后

到这里,你已经完成了从电池供电、电机动力线、控制信号线到调试口的完整接线,并跑通了"解锁—烧录—串口验证"全流程。电机参数校准、弱磁扩速和巡航控制都在 config.h 与 Src/BLDC_controller_data.c 里,建议先稳定跑通默认配置再逐项调整。仓库 Wiki 的 Getting Started 与 Troubleshooting 页面有更完整的细节,遇到硬件异常时优先去那里对照排查。

【免费下载链接】hoverboard-firmware-hack-FOC With Field Oriented Control (FOC) 【免费下载链接】hoverboard-firmware-hack-FOC 项目地址: https://gitcode.com/GitHub_Trending/ho/hoverboard-firmware-hack-FOC

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值