前阵子清理工作台又从抽屉底翻出几片烧掉的电调板子最早一片还是ATmega8时代的SimonK。FPV玩久了基本都遇到过电调炸MOS、固件刷死、或者想弄明白控制逻辑的时刻。我自己前前后后焊过几款FPV电调从BLHeli_S一路折腾到AM32又照着开源工程画过VESC板子也就是圈里常说的本杰明电调。这个过程比买成品有意思得多也把无刷电机换相、电流采样、FOC控制这些概念彻底吃透了。这篇我不讲虚的把做过的几款方案、硬件设计要点、固件配置和调试踩坑摊开聊给想动手自制电调的人一条能直接落地的路径。1. 自制电调之前这些基础必须扎实1.1 三相无刷电机的换相逻辑无刷电机和三年前玩航模的有刷电机完全不是一个思路。有刷电机靠物理换相通上电就转无刷电机定子上有三相绕组转子是永磁体必须由电调按照转子位置不断切换通电相序电机才会持续转下去。这个“切换相序”的动作圈里叫换相。最经典的换相方式是六步换相也叫梯形波控制。六个步骤对应转子六个扇区每一时刻只让三相中的两相通电剩下的第三相悬空用来检测反电动势过零从而判断“该换相了”。FPV穿越机电机转速动不动就是几万转换相时序稍差一点效率就会掉发热也跟着上来所以要靠高速MCU实时算。另一种是FOC场定向控制。这种控制方式不是简单通断两相而是把三相电流实时分解成直轴和交轴分量让定子磁场始终和转子磁铁保持最佳角度。FOC优点是安静、平顺、效率高但计算量和硬件复杂度都上了一个台阶。VESC走的就是这条路这也是它和FPV电调在本质上的差异。1.2 电调核心构件每家都差不多无论FPV电调还是VESC拆开看核心构件都是这一套MCU负责换相计算和外部通信。FPV电调常见STM32F051或者Silabs的EFM8VESC常用STM32F405这类更高性能的芯片。栅极驱动芯片把MCU输出的弱信号放大到能驱动功率MOS管的电压。集成度高的驱动芯片还会附带电流采样放大和降压电源比如DRV8301。三相半桥MOSFET这是真正通大电流的功率级。上桥和下桥交替导通把直流母线电压变成三相方波或者SPWM波形。电流采样电阻一般放在下桥MOS管源极和地之间也有放在三相输出线上的。电流信息一方面用于保护另一方面是FOC控制的关键输入。母线电容紧靠功率级放置用于吸收开关瞬间的能量冲击稳定母线电压。稳压电路把电池电压降成MCU和逻辑电路需要的3.3V或5V俗称BEC。把这几个模块弄明白看任何一款电调原理图都不会一头雾水。1.3 为什么值得自己动手做自制电调最大的价值不是省钱。现在一片AM32电调成品也就几十上百块自己做板子加元件算上打样和损坏损耗说实话成本没什么优势。真正的收益有两个。第一个是故障判断能力。FPV飞久了电调“插上电不响”“推油门抖”“飞着飞着断动力”这些故障你只有知道电调内部怎么工作才能快速定位是MOS问题、驱动问题还是固件参数问题。我修炸鸡的板子时经常看一眼波形就知道是哪一路有问题这就是自己焊板子练出来的。第二个是定制能力。想要更小的尺寸、更大的电流、特定方向的排线、特殊的固件功能成品电调不一定能满足。开源的AM32和VESC硬件工程摆在那里改板子、换MOS、调布局都是顺手的事。对于电子爱好者来说把手里无刷电机彻底摸透本身就值回票价。2. 几款主流FPV电调方案与VESC的定位差异2.1 方案横向对比FPV电调市场这几年变化很大自己动手前一定要搞清楚几款固件和硬件的关系。我做了个表格方便大家一眼看明白。方案固件开源性常用主控控制方式适用场景自制友好度SimonK开源ATmega8等梯形波老式穿越机、入门学习硬件老不太推荐BLHeli_S固件开源Silabs EFM8梯形波老款FPV电调芯片货源少固件也淡出BLHeli_32固件闭源授权STM32F051梯形波/改进现成FPV电调硬件图多但不能自刷新固件AM32全开源STM32F051/G071等梯形波自制FPV电调首选很友好资料全VESC全开源STM32F405/307加预驱FOC为主滑板、机器人、载具硬件开源自制资料丰富这里重点说一下热词里大家对“VESC全开源么”的疑问。VESC是瑞士人Benjamin Vedder做的开源电调项目硬件原理图、PCB文件、固件源码全是开放的所以称呼“本杰明电调”就是因为作者名字。正因为它全开源社区衍生出了VESC4、VESC6、Mini FOC等大量变种板子我也照着做过。2.2 为什么FPV圈子很少用VESC这个问题经常有人问。既然VESC又开源又支持FOC为什么穿越机不用VESC当电调核心原因是三个体积、重量和控制方式差异。VESC为了做高性能FOC主控用STM32F4系列外围有编码器或霍尔接口至少四层板起步板子尺寸明显比一片20mm乘20mm的FPV电调大很多。穿越机对重量和响应速度极其敏感电调越轻越好BLHeli系和AM32的梯形波控制加上高压晶体管逻辑足以满足快速油门响应需求。VESC的静音和平顺在载具上优势明显但穿越机要的是爆发力两者设计取向天生不同。另外AM32固件本身就是为FPV电机调速设计的当中很多参数比如电机进角、阻尼补偿、DShot协议直接给飞控用而VESC定位是通用电机控制器配置逻辑更偏机器人。所以我个人的选型经验很简单玩FPV穿越机自制电调优先考虑AM32做电动滑板、机器人底盘直接上VESC。2.3 自制路线怎么走我的建议是分两步走。第一步用现成的开源硬件工程来打样先把固件烧进去用电机转起来把整个链路的每个环节都走一遍这时候先别改电路。第二步才是自己改板子比如调整MOS型号、改电流采样布局、缩小板子尺寸。一上来就自己画板出问题的时候根本分不清是固件问题还是硬件问题调试会非常痛苦。3. 自制FPV电调的硬件设计要点以AM32平台为例3.1 主控和栅极驱动怎么选AM32本身是固件项目支持的MCU比较广常见STM32F051、STM32G071也有少部分ATtiny。打样阶段我建议直接用STM32F051原因是市面上大量BLHeli_32电调用的就是这颗芯片参考工程和引脚定义都齐全刷固件选型时不会卡壳。栅极驱动方面fpv电调的集成度通常很高。国产的FD6288T、EG2133都很常见它们内部集成了三路半桥驱动把MCU的六路PWM信号转成功率MOS需要的栅极电压同时还内置死区时间控制。选择驱动芯片时要特别注意耐压和峰值驱动电流4S电池应用选耐压40V以上的5S、6S就往60V看。驱动电流太小MOS开关边沿变软开关损耗就会明显增加。3.2 MOSFET和电流采样电阻选型MOS管是整个电调里最容易烧的器件选型时我会先看三个参数耐压电池电压的1.5到2倍比较稳妥。4S电池满电约16.8V选30V到40V的MOS余量足够6S满电25.2V建议选40V以上。导通电阻RDS(on)越小越好。追求大电流的时候毫欧级别差距就是发热量的差距。但RDS(on)小的MOS往往栅极电荷Qg大对驱动能力要求也高要平衡。栅极电荷Qg和开关速度FPV电调PWM频率动辄24kHz到48kHz开关损耗不能忽略。Qg太大的MOS开关响应慢不同步的死区反而容易造成桥臂直通。电流采样电阻一般选毫欧级合金电阻几毫欧到几十毫欧都有。阻值选大了采样电压清晰但功率损耗增加选小了损耗小可是信号噪声大。AM32参考设计里通常给的是0.5毫欧到1毫欧级别的分流电阻配合运放放大到MCU的ADC量程。打样时千万别随手抓一个普通贴片电阻一定要用合金电阻温漂和可靠性完全不同。3.3 PCB布局与焊接的实战细节PCB布局直接决定电调能不能稳定工作。我的经验是几条原则母线电容必须紧挨着MOS半桥摆放距离越近开关尖峰越小。大电流路径上的走线要加宽最好在顶层和底层同路径走线并用过孔连接减少寄生电感和发热。相线输出不要和信号线平行长距离走线干扰会让反电动势采样出错。MOS管的散热焊盘一定要按芯片手册做阵列过孔焊盘漏到背面才好散热不然大电流下MOS温度会高得离谱。焊接的时候MOS和驱动芯片焊盘散热快普通烙铁温度不够会形成虚焊。我的做法是把焊台温度调到350到400度涂助焊剂快速完成焊接。焊完后别急着上电先用万用表蜂鸣档测一下每颗MOS的D-S两极和G-S两极有没有短路这是最常见的烧板源头。如果发现两相之间短路多半是焊锡珠或者焊盘搭连清理干净再继续。4. VESC与FPV电调在硬件上的本质差别4.1 为什么VESC的电路架构更复杂很多从FPV电调转过来做VESC的人第一眼看到原理图会有点懵。FPV电调的核心是“MCU加驱动加MOS”VESC也是这样但它的外围明显更多。原因在于FOC控制需要高带宽、高精度的相电流采样。VESC要在几十微秒的控制周期里读取三相电流、母线电压、转子角度再加上电流环和速度环的计算。为了让MCU拿到干净的电流信号VESC板子上通常有专门的差分采样放大电路甚至直接把集成的栅极驱动芯片换成带高精度电流检测放大的型号比如DRV8301。这跟FPV电调“电流采样只要够保护就行”的思路完全是两个层次。4.2 原版VESC4.12电路的关键点我做的第一块VESC板子就是经典的原版4.12拓扑核心元件是STM32F405RGT6加DRV8301。DRV8301可以说是VESC制作过程中的明星芯片。它集成了三相栅极驱动、电流检测放大器和一个降压型稳压源。好处是外围元件少很多坏处是这颗芯片是QFN封装的引脚间距很小手工焊接需要耐心。按照数据手册关键是VC、GV、AV这几个电源引脚要对它们分别对应控制逻辑电源、栅极驱动电源和模拟采样电源。我做板子时第一次上电后栅极波形完全不对排查了半天发现就是AV引脚没供好电。所以焊完板子第一步永远是查这几个电压而不是急着刷固件。另外VESC板子上那排大容量电解电容或者固态电容不是装饰品。无刷电机大油门启动瞬间母线电流尖峰会非常大没有足够的容值支撑母线电压会被拉低轻则掉动力重则触发欠压保护甚至烧管子。原版设计放了多个大电容不是堆料是为了应对动态负载。4.3 自改VESC板子的几个容易踩的细节如果你不是直接打样原版而是自己改板子我提醒三个点。第一三相低边采样电阻不一定要用三个独立电阻也可以用单电阻采样方案但FOC满性能还是建议三电阻。每个采样电阻都要走四线开尔文接法采样电压的走线单独拉回MCU的ADC引脚不要在电阻焊盘上并线直接引到运放否则大电流下采样电压受寄生电阻干扰电流环就会抖。第二ADC采样引脚附近不要摆放高频信号线。DRV8301输出的是模拟电压MCU的ADC输入阻抗有限如果走线上窜进PWM开关噪声校准之后电流值还是偏的。这个噪声问题在“断动力”故障里经常扮演幕后黑手。第三如果打算支持霍尔或者编码器接口的排针布局要充分考虑电机线走向。VESC板子常见安装位置和电机出线方向不一致接线乱七八糟就容易把霍尔传感器弄坏。5. 固件刷写、参数校准与首次试机5.1 AM32固件刷写这件事AM32固件的刷写方式和BLHeli_32不太一样但如果你用的板子本来就带BLHeli_32的bootloaderAM32可以直接通过串口或者USB刷进去。这也是很多玩家把BLHeli_32板子刷成AM32的原因固件开源、随时能看参数、不受商业授权限制。刷写之前先确认电调型号和主控类型去官方的刷写工具里选对固件文件选错主控会直接变砖只能拆芯片用编程器救。对于已经焊在飞机上的电调常见刷写方式是接飞控的4合1电调调参接口或者用专用的转接板通过Betaflight的passthrough模式刷。我第一次刷的时候忘了把螺旋桨拆掉焊上烧录器突然电机转了一下虽然转速不高但也吓出一身冷汗。刷固件、调参之前拆桨是铁律。刷完之后电调调参页面里有两个参数我几乎每次都会动电机进角timing和PWM频率。穿越机电机默认进角一般是中等如果你的电机高速段容易失步或者温度偏高可以微调。PWM频率选48kHz会安静一点响应也快一些但MOS开关损耗会增加电池电压高的时候尤其明显。5.2 VESC的上电与bootloader烧录VESC第一次上电如果板子还是空片插上USB电脑不会有反应需要先用ST-Link给STM32F405烧写bootloader。这一步很多人会卡住因为VESC Tool软件版本和bootloader版本匹配不对时后续固件升级会失败。我的建议是直接用VESC Tool里自带的固件烧录功能按提示连ST-Link先擦除再烧bootloader最后再烧最新固件。注意烧录过程中绝对不能断开电源否则芯片锁死还得用救砖模式。VESC Tool连接之后第一件事不是做电机参数检测而是先校准硬件。校准内容包括母线电压采样、电流采样偏移、温度传感器等。这一步如果跳过之后FOC参数识别出来的电流值可能整体偏移表现为电机轻微发热、噪音大、转速闭环不稳。电机参数检测在VESC Tool里点一下就行但执行过程电机真的会高速转起来而且是带着螺旋桨转所以一定要先拆桨。检测完成后软件会算出电机内阻、电感、磁链常数这些参数再填入电流限制、速度限制基本就可以试机了。注意电流限制一开始给保守值比如持续电流20A、峰值30A等波形确认没问题再逐步放开。5.3 首次试机从限流电源开始自制电调第一次上电不要直接怼大电池。我的习惯是用一台可调限流电源先把电流限制设到1A以内电压调到电池标称电压然后慢拧油门听声音看电流。如果电流异常大、电机不转、有嘶嘶声立刻断电检查。这一步能避免大部分MOS炸管事故。确认控制链路正常工作后再换容量足够的大电池。这时候还是要坚持一个原则桨永远不装除非你要做推力测试。FPV穿越机电机一旦装上桨满油门的反扭矩能把平台拽翻更别说桨叶本身伤人的风险。我见过不止一次新手做电调测试时忘了拆桨启动瞬间直接被桨叶打中手。6. 实测调试与“断动力”问题的排查链路6.1 波形怎么看电调调试离不开示波器。我至少会测两个点MOS管栅极波形和相线输出波形。栅极波形能看出驱动是否正常。正常的PWM波形应该有干净的上升沿和下降沿没有严重振铃死区时间符合配置。如果栅极波形上升沿变成缓慢爬坡说明驱动能力不足或者栅极电阻选大了MOS开关损耗会变大时间久了管子过热。相线波形在电机转动时能看到一个梯形波或者正弦包络。FPV电调在梯形波控制下悬空相会有明显的反电动势波形换相点对应反电动势过零。用示波器抓这个过零时刻是否和固件计算吻合就能判断换相时序有没有偏。偏了的话电机会有“咔哒”声电流也会异常。6.2 VESC断动力一次完整排查过程圈热词里总有“vesc断动力”的讨论我自己也遇到过那次印象特别深。具体情况是滑板底盘空转一切正常带上负载跑出十几米一压油门电机突然停转等几秒又能恢复。整个过程没有冒烟VESC Tool里能看到故障码。当时的第一反应是电流保护阈值设太低毕竟带负载以后电流确实会瞬间冲高。于是我把电流限幅从30A调到45A结果还是断。第二次推断电池问题因为那组18650电池已经用了两年内阻可能偏大大电流下母线电压被拉低。我插上电压表实测果然压油门瞬间电压从25V掉到16V欠压保护直接触发了。换了一组满电电池后问题消失。但另一个场景下的断动力就没这么好查了。那是换了一款电机以后才出现的空转正常低速小油门正常一到大油门就断。看故障码是ABS_OVER_CURRENT绝对过流保护动作。用示波器看三相采样电阻电压发现其中一相在高电流下有明显毛刺拆下来检查发现那颗采样电阻的焊盘有虚焊接触电阻会随温度变化漂移。重新焊接并稳定回流一遍后问题解决。6.3 FOC断动力背后的三类原因把VESC断动力问题归纳一下大部分跑不出三类原因。第一类是采样环节。检流电阻虚焊、ADC走线受干扰、电流校准没做都会让电流环看到错误的电流值触发过流或者让FOC观测器失锁。这类问题往往表现为偶发性负载越重越多见。第二类是功率环节。电池内阻大、C数不够或者母线电容老化会导致瞬间母线电压跌落。FOC是高带宽控制环电压一塌电流环就跟着崩电机自然失去同步。第三类是参数环节。无感FOC启动和低速段依赖观测器算法如果电机电阻电感识别不准或者最大电流限制太小加速过程中转子位置算错电机就会一顿一顿甚至完全停止。这种情况通常降低加速电流需求或者重新做电机参数识别就能改善。6.4 FPV电调上的类似问题FPV电调虽然控制逻辑简单但“断动力”或者“空中丢转”也经常发生。我遇到最多的是DShot协议配置问题。飞控设成DShot600电调固件里却还是老的PWM信号模式两者握手不成功电调当然不响应。还有一种情况是电调固件版本和飞控固件版本在双向DShot遥测上的兼容性不一致导致电机转速回传数据错误飞控以为电机堵转就降低输出。遇到这类问题我会按这个顺序查先确认飞控电调协议设置再查电调调参页面里的DShot模式再查线材接头是否接触良好。很多时候问题根本不在固件而是电调信号线焊点长时间震动后裂了虚焊导致信号时有时无。这种故障示波器都看不出来只能拿放大镜或者干脆重新补焊一遍。7. 自制电调三年下来想分享的几点实在经验工具上一台回温快的焊台、一瓶好助焊剂、一只万用表、一个示波器是刚需。示波器不用多高级双通道100MHz带宽就够用了。至于那些专用的电机测试台如果你只是玩票完全可以用一个固定支架加电压电流表代替我到现在都这么干。路线选择上第一块板子强烈建议打样现成开源工程而不是自己从零画。等整条链路走通再改板子这时候你对每个模块的作用已经有概念了。测试顺序永远是先静态量电压、再低压空转、再低压带载、最后才上高压满油门每一步都确认没有异常再走下一步。安全方面要再强调一遍测试电机必须拆桨第一次上电必须用限流电源MOS异常发烫、栅极波形不对、冒烟第一时间断电不要抱着“再试一下”的念头。电调板子烧了可以再焊手被桨打了可没有后悔药。回到正题当你亲手把一片板子从空PCB变成能带电机稳定转动的成品波形干净、温度正常、参数看得到摸得着的时候那种成就感是买成品电调完全给不了的。如果你也准备动手我真心建议别一上来就挑战大功率版先从一片AM32小电调开始把三相逆变、电流采样、固件刷写这条链路走通再升级到VESC或者大电流方案都会顺手很多。途中烧掉两三块板子是正常学费排查的过程才是自制电调真正值钱的部分。
阅读完成 · 觉得有帮助?