恒美微站
首页
关于我们
建站服务
主题模板
案例展示
资讯中心
联系我们
BLDC驱动板拆解:功率级电路与采样设计实战解析
首页
资讯中心
/
BLDC驱动板拆解:功率级电路与采样设计实战解析
BLDC驱动板拆解:功率级电路与采样设计实战解析
发布时间:2026/10/6 14:48:08
这块板子我前后摸了小半年从最开始照着例程让电机空转到后面为了做闭环调速被迫把原理图从头到尾捋了一遍功率管、栅驱、采样电阻、运放、ADC通道每个节点都用示波器戳过。今天这篇就当是还账把BLDC驱动板里最关键的两块内容拆开讲透功率级电路怎么搭采样设计为什么这么搞。文章会顺着原理图逐步走过程中所有计算都给出具体数字踩过的坑也一并列出来给正准备搞无刷电机驱动、或者想从六步换相往FOC方向走的朋友做个参考。这块板子的整体思路可以浓缩成一句话用STM32做大脑半桥栅极驱动芯片做肌肉六个N沟道MOS管组成三相全桥去推电机再从采样电阻和分压电阻里把电流、电压信息反馈回MCU。硬件上一点不花哨但每个环节都有讲究尤其采样部分直接决定了电机转得稳不稳、堵转保护灵不灵敏。1. 整体架构与设计思路拆解1.1 驱动板在电机控制系统里的位置先看信号流向。MCU产生六路PWM这六路PWM不是直接去推MOS管而是先进栅极驱动芯片由驱动芯片完成电平转换和功率放大再送到六个MOS管的栅极。MOS管组成的桥臂把直流母线电压“切成”三相交变电压驱动BLDC电机运转。采样回路的信号流向刚好相反。相电流流过采样电阻在电阻两端形成一个毫伏级压降这个微弱信号经过运算放大器放大后进入MCU的ADC引脚MCU据此算出当前相电流。母线电压则通过分压电阻网络分压再经过RC滤波和电压跟随器同样送进ADC。整块板子的硬件核心就是这两条链路一条正向的功率链路一条反向的采样链路。用术语说这就是典型的“强电与弱电混合系统”。功率链路走的是大电流、高电压、高dv/dt采样链路走的是毫伏信号、微安电流。两块电路放在同一块板子上最容易出现的问题就是采样信号被功率电路污染。这也是为什么我看一块电机驱动板第一眼永远是看采样电路的地怎么处理、采样信号怎么走线而不是先看主控芯片是什么型号。1.2 为什么选“MCU分立栅驱MOS管”而不是集成驱动模块正点原子这块板子没有用DRV8301、L6234这类全集成驱动芯片而是用“半个桥驱动芯片独立MOS管”的组合。这个选型放在学习板卡上非常合理因为要把每一个环节暴露出来让你看清原理。三个半桥驱动芯片各管一相六个MOS管各管一个开关哪个环节出问题一目了然。对比一下两种方案的差异。集成方案的优点是外围元件少、布板面积小、上下管匹配好缺点也很明显贵、可替换性差、一旦炸管往往整颗芯片报废。分立方案的优点则反过来MOS管选型灵活可以根据电机功率随时更换不同规格的管子栅极电阻、自举电容也都能单独调整烧了哪相换哪相成本低得多。对于学习和做原型验证来说分立方案还有一层隐性好处你可以用示波器单独测低端MOS的Vgs波形、单独看自举电容两端的电压把每个开关动作都看得清清楚楚。这在集成方案里几乎不可能做到因为芯片内部的栅极驱动节点你根本够不到。1.3 这套硬件同时兼容六步换相与FOC很多初学者把六步换相方波控制和FOC当成两种完全不同的硬件方案其实用到的基本电路是完全一致的。六步换相只需要检测反电动势过零点或者霍尔信号而FOC需要准确的相电流信息。也就是说FOC对采样链路的要求比六步换相高得多硬件上的差异主要就体现在电流采样环节做得够不够好。这块板子的采样电路用了“低端采样电阻运放放大”方案天生就是为了伺候FOC这类需要连续相电流的应用。因为低端采样电阻在PWM的任意时刻都串联在电流回路里只要采样时机对就能拿到连续的电流波形不像高端采样那样还要考虑共模电压问题。从后续扩展角度看这套采样链路的设计余量是够的后面想从方波控制版本升级到FOC版本核心硬件不需要大改。2. 功率级电路逐段拆解2.1 三相全桥的结构与导通逻辑三相全桥是驱动板最核心的功率拓扑。六个MOS管分成三组每组两个管子上下串联串联中点就是电机相线输出。上管接直流母线正极下管接采样电阻再到地上下管绝对不能同时导通否则就是直通短路炸管。具体到导通逻辑六步换相在任何时刻都只有一个上管和一个下管导通形成“电流从某相流入从另一相流出”的回路。比如U相上管和V相下管导通时电流从U相进电机从V相流回地电机在这一步被通电。六个换相状态轮流切换就形成了旋转磁场。这里有个新手特别容易误解的地方MOS管栅极信号虽然只有高和低两个状态但电机的相电压不是简单的方波。因为PWM在持续快速地开关相电压是一串占空比可调的脉冲经过电机绕组的电感滤波后电流才会变得平滑。这也是为什么我说功率级“不花哨但讲究”——每个MOS管的开通和关断时序都要精确控制死区时间是必须加的否则上下管换流瞬间会有贯穿电流轻则发热重则直接炸管。2.2 半桥驱动芯片如何工作电平转换与自举原理MCU输出的PWM高电平一般是3.3V而驱动板上管需要让MOS管的栅源电压达到10V左右才能完全导通。低端MOS管还好说源极接地10V驱动电压相对好办。高端MOS管就麻烦了源极跟着输出相电压上下跳低的时候是0V高的时候接近母线电压几十伏3.3V的信号根本够不着。半桥驱动芯片解决这个问题的办法是“自举”。芯片内部的驱动逻辑把输入信号转换成高端驱动输出用一个悬浮的高压侧通道去驱动上管。这个悬浮通道的电源从哪里来就是自举电容。当下管导通时自举电容通过自举二极管从驱动芯片的电源端充到一定电压当下管关断、上管需要导通时电容放电为上管的栅极驱动提供能量。用我调试时的实际体验来解释更直观。有一段时间板子的上管出现不规则的不导通现象后来排查发现是自举电容焊错了封装容量只有标称的十分之一。换回正确电容后示波器看HO引脚对VS引脚的电压从掉电状态恢复到稳定的11V左右问题立刻消失。所以不要小看那颗小小的电容它是整个高端驱动的能量来源。2.3 自举电容与栅极电阻的参数计算自举电容的容量怎么定核心依据是MOS管栅极的总电荷量Qg加上开关过程中的漏电流和驱动芯片自身的静态电流。公式不复杂C_boot ≥ Qg / ΔV_boot其中Qg是MOS管栅极电荷可以从数据手册查到ΔV_boot是允许的自举电容电压降落。一般取0.5V到1V比较合适降落太大会导致上管栅极电压不足进入线性区发热。假设选用的MOS管Qg是45nC允许压降0.5V那么C_boot至少需要90nF。实际工程上还要留出3到5倍余量加上考虑电容老化和温度变化取1μF到2.2μF比较稳妥。这里建议用X7R或X5R材质的陶瓷电容容量随电压和温度变化小不要用便宜的Y5V。栅极电阻的选择同样有讲究。栅极电阻用来控制MOS管的开关速度阻值太大开关变慢开关损耗上升阻值太小开关过快会产生明显的电压振铃和电磁干扰。通常在10Ω到33Ω之间。我在这块板子上实测22Ω栅极电阻配IRLR2905这类管子表现稳定开关波形没有明显过冲。2.4 输入保护与滤波电路驱动板的电源入口通常不是直接接母线而是经过一个二极管做防反接再并联TVS管吸收浪涌后面再接一大一小两个滤波电容。大电解电容负责储能和抑制低频纹波小陶瓷电容负责滤高频噪声。防反接这个设计很多人会忽略但在实际使用中极其重要。实验室里电源线插反是高频操作事故如果没有防反接二极管一瞬间就可能把板子上好几颗芯片报销掉。用二极管防反接的代价是导通压降带来一点功率损耗但对学习板来说是完全可以接受的。TVS管则是给母线电压上了一道保险防止电机急停或者反电动势抬升母线电压时击穿MOS管。3. 采样系统深度分析与参数计算3.1 电流采样为什么放在低端而不是高端低端采样就是在下管和地之间串联一颗小阻值采样电阻电流从电机经过下管、采样电阻回到电源负极。因为电阻一端直接接地运放的输入共模电压很低放大电路设计简单可靠这是它最大的优点。高端采样虽然能直接测到相电流但采样电阻两端的电压是悬浮在母线电压上的动辄几十伏需要用到昂贵的差分放大器或者隔离放大器信号链路的成本直接翻倍。对于学习板和大多数中小功率应用场景低端采样是完全够用的性价比最高。低端采样也有它的软肋当PWM关断时电流通过体二极管续流此时采样电阻上可能没有电流或者电流方向反转导致采样到的电流波形是断断续续的。所以ADC采样时机必须对齐到PWM开通且下管导通的阶段这个同步问题我在第4章详细讲。3.2 采样电阻阻值与运放增益的实际计算采样电阻的阻值选择是个折中阻值越大信号越强但功耗也越大还会降低电机端电压阻值越小功耗小但信号太微弱容易淹没在噪声里。一般原则是让电阻在最大电流时的压降控制在100mV到200mV之间。拿一个很典型的参数来算。假设电机额定电流2A堵转电流5A选择50mΩ采样电阻。堵转时电阻上的压降是5A × 0.05Ω 0.25V。如果运放增益取10倍放大后输出2.5V在STM32的3.3V ADC量程内还有余量。如果增益取太高比如20倍堵转时输出5V早就超出ADC量程了采样值会削顶。这里面有个新手常犯的错只看额定电流来定增益结果启动瞬间堵转电流一上来运放输出直接打到电源轨ADC读到的全是满量程。正确做法是拿最大可能电流来校核并且留出至少20%的余量。同时要注意运放输出端到ADC之间还要加一个小阻值串联电阻和电容组成的低通滤波截止频率大概在几百千赫兹滤掉开关噪声但保留电流的基波信息。3.3 母线电压采样与分压滤波计算母线电压采样电路在原理图上非常好认一串电阻从母线正极拉下来中间节点接电容到地再接运放电压跟随器输出进ADC。用分压电阻把几十伏的母线电压降到3.3V以内再用电压跟随器隔离阻抗避免ADC采样瞬间的分流影响分压精度。以48V母线为例假设分压电阻选51kΩ和3.3kΩ分压比就是3.3 / (51 3.3) 0.060848V时分压点电压是48 × 0.0608 ≈ 2.92V在ADC量程内留了余量。这里电阻选值还有一个讲究因为分压电阻直接消耗母线功率阻值不能太小。51kΩ这个量级下静态电流不到1mA功耗可以忽略。分压点后面的RC滤波时间常数根据PWM频率来定。20kHz的PWM开关周期50μsRC取100Ω和10nF时间常数1μs能有效滤掉高频开关噪声又不至于让电压信号严重滞后。实际测试中加了这个滤波电路后ADC读到的母线电压稳定性明显改善。3.4 温度采样与保护逻辑联动除了电流和电压驱动板上一般还会有一个NTC热敏电阻贴在MOS管附近用于功率级温度监测。NTC电阻和固定电阻串联分压温度变化时NTC阻值变化分压点的电压跟着变化MCU采样后就能换算成温度。这个温度信号通常不只是拿来显示的它要和过流保护、过压保护一起组成一套完整的保护逻辑。比如温度达到85℃时开始降功率运行达到100℃时直接封锁PWM输出。要是没有温度保护长时间大电流运行后MOS管热量堆积最后的结果就是炸管。我遇到过最典型的案例是风扇停转后没发现电机继续带载运行温度一路飙升到110℃以上然后下管先击穿紧接着母线短路三个桥臂全部烧毁。后来在代码里加了温度保护逻辑并且把温度阈值调低了一点就再没出过这种事。硬件上的保护电路配合软件上的保护逻辑才能真正把板子保护住。4. 原理图阅读实战拿到图纸先看哪里4.1 用“电源→功率→采样→控制”四步快速过图拿到一份电机驱动板的原理图不要从头到尾顺序读那样会被各种外围电路绕晕。我的习惯是分成四个模块按顺序过一遍很快就能建立整板的轮廓。第一步看电源找到电源输入端子看防反接二极管、TVS、滤波电容然后顺着电源网络看栅极驱动芯片的供电是怎么来的MCU的3.3V是从哪里降压来的。第二步看功率找到三相全桥的六个MOS管确认它们的源漏方向找到每相输出点确认栅极电阻和自举电容连在哪个芯片。第三步看采样顺着每相下管的源极找采样电阻看它连接到哪个运放运放输出又进到哪个ADC引脚。第四步看控制看MCU的PWM输出引脚是怎么连到栅极驱动芯片的输入端的死区时间是在芯片外围由硬件实现还是靠MCU的定时器实现。这套读图顺序的本质是“信号流优先”在脑海里先建立电流从哪儿来、信号往哪儿走的大框架再回填细节参数。实际读图时我会在关键是节点上采样电阻、自举电容、母线电压分压点停下来多停留一会儿把对应的计算在纸上验算一遍确认元件取值没有明显不合理。4.2 关键元件参数速查与选型意图工程上有个经验习惯看到元件值先快速判断它的“角色”再验证取值是否合理。比如100Ω电阻出现在栅极驱动输出走线上通常是栅极电阻用于控制开关速度10nF电容出现在采样运放输出端多半是和电阻配合组成低通滤波而一个几百μF的大电解电容出现在母线端一定是储能电容负责维持母线电压稳定。我在看正点原子这块驱动板原理图的时候会特别留意几个参数。采样电阻的阻值决定了电流采样的放大系数栅极电阻决定了开关速度自举电容容量决定了高端驱动能力母线分压电阻的阻值决定电压采样精度。这四类元件在原理图上基本一眼就能分辨读数也快是快速评估一块驱动板设计水平的关键抓手。顺便说一句原理图上每一个电阻电容都对应着具体的设计意图不是随便焊上的。如果在看原理图时遇到一个“说不出为什么”的元件就先查它的位置和连接方式然后回到对应的功能模块里去推很多时侯这个元件恰恰是整个电路的精妙之处。4.3 ADC采样时机与PWM同步的关键问题这是采样链路里最隐蔽的坑。STM32的ADC采样需要一定时间如果你在PWM的任意时刻都去采样电流得到的值可能是“时有时无”“杂乱无章”的因为低端采样电阻上只有在特定开关状态下才有电流流过。正确的做法是让ADC触发时刻对齐到PWM载波的底部或顶部。用六步换相和FOC中常用的中心对齐PWM模式一个PWM周期内有两个ADC触发点在计数器归零时触发或者在计数器到达周期值时触发。这时候对应的是下管持续导通、电流流经采样电阻的稳定窗口采到的电流值才有意义。我在实际调试时用过一个很笨但很有效的方法先用示波器量采样电阻两端的电压波形再把ADC采样完成的位置通过GPIO拉高拉低引到示波器上对齐观察采样点是否落在了PWM导通窗口的中间区域。位置不对就调整PWM定时器的重复计数寄存器设置直到采样点稳稳落在窗口中心。这个问题不解决后面无论怎么调PID、改滤波参数电机都会抖得像筛子一样。5. 调试实录常见问题与排查方法5.1 电机一启动就报过流这个现象非常典型九成原因是电流采样链路有偏差而不是真的有电流过流。先检查运放输出的零点是否偏了。不知道大家有没有遇到过用万用表量运放输出在电机静止时应该有接近0V或者某个固定偏置的电压如果偏移很大可能就是运放输入端的偏置电流被某个烧坏的电阻影响了。另一个常见原因是采样时序不对。如果ADC在开关噪声最大的时刻采样读到的电流可能是真实电流的好几倍。排查方法用我前面说的示波器对齐大法确认采样点在PWM窗口的中心。还有一种可能就是采样电阻被大电流冲击后阻值漂移了这个只能换电阻来验证。过流保护阈值不要设得太小我通常把阈值放到堵转电流的1.2倍左右既能保护MOS管又避免正常启动电流误触发。5.2 采样波形毛刺大、零点漂移毛刺大说明采样到的高频噪声多零点漂移说明运放偏置或者PCB布局有问题。先从硬件滤波下手把运放输出端的RC低通滤波做重一点但要注意别把电流波形的高频部分滤掉太多否则闭环控制带宽会受到影响。PCB布局的影响更大。正常驱动板都会做分区功率地、模拟地、数字地先在合适位置汇合采样电阻的地网络要走粗线直接回到母线电容负端绝对不要让采样信号线和大电流走线平行长距离挨着走。我有一块板子是自己画的一开始毛刺大到没法看后来把采样电阻地线的路径改了绕过功率部分单独回到电容负极毛刺立刻小了一个数量级。零点漂移则要在代码里做校准上电时电机还没运转先采几十次运放输出取平均值存起来作为零点补偿基准。这个方法几乎所有商用驱动器都会用非常有效。5.3 上管不导通自举电容没充起来上管不导通的现象很容易和栅极驱动芯片损坏混淆。先用示波器看栅极驱动芯片的VB引脚和VS引脚之间的电压正常时应稳定在11V到15V之间。如果这个电压只有几伏甚至更低说明自举电容没有充起来或者自举二极管损坏、电容容量严重不足。自举电容充不上电还有一个常见原因PWM占空比过大或者长时间保持输出。因为自举电容只在低端MOS导通时才能充电如果占空比接近100%低端导通时间太短自举电容来不及补电高端就供不上能量。这时候就要考虑是不是PWM限制设置没做好或者控制策略本身有问题。5.4 MOS管莫名炸管母线尖峰与泵升电压炸管是电机驱动调试里最让人崩溃但也最能学到东西的事故。排查炸管原因时不要只盯着管子本身先用示波器看母线电压波形。电机急停或减速时电机会把能量回馈到母线导致母线电压泵升严重时可能比电源电压高出好几倍。如果没做能量泄放和保护高压直接击穿MOS管。泵升电压的应对办法一般有三个方向一是把母线电容加大吸收一部分回馈能量二是加电压检测电路和泄放电阻电压超过阈值时接通电阻把能量消耗掉三是在软件里控制减速斜率别让电机刹得太猛。另外还要检查栅极电阻取值是否合适如果开关瞬间栅极电压振铃过大导致管子进入了线性区瞬间功耗巨大也会炸管。这个可以用示波器看栅极波形如果有明显的振铃和过冲就把栅极电阻调大一点或者加一个反向钳位二极管。5.5 示波器实测判断采样质量的几个标准判断一套采样系统好不好我的经验是看三个波形运放输出端在PWM周期内的波形是否干净、ADC采样值换算后的电流波形是否平滑、堵转瞬间电流响应是否迅速准确。正常情况下运放输出应该能看到清晰的锯齿状电流波形每个PWM周期重复一次波形包络平滑尖刺幅度不超过主信号的5%。用串口把ADC换算后的电流数据发出来画成波形电流跟踪速度应该能跟上指令变化不出现明显台阶和跳变。堵转测试时电流应该能快速被限制到设定值不发生振荡也不误触发过流保护。我一直觉得采样调试是电机驱动整个过程中最磨人的环节它不像写控制算法那么“抽象”也不像换MOS管那么“粗暴”需要的是耐心、仔细和一点点玄学般的直觉。但一旦采样系统调到理想状态后面的控制算法工作就会非常顺手所以这个时间是值得花的。6. 往FOC方向扩展需要改动哪些电路6.1 六步换相和FOC对采样需求的差异如果现在跑的代码基于六步换相只需要反电动势检测就能正常工作对电流采样的利用率其实不高。但FOC需要实时的相电流重构而且对采样时序、精度、噪声的要求都高了一个档次。硬件改动不算大但采样的每一处细节几乎都要重新校一遍。首先是采样时机FOC要求在一个PWM周期内的固定时刻对两相或三相电流同时采样这对MCU定时器和ADC的同步能力提出更高要求。其次是运放带宽FOC的电流环带宽通常在1kHz以上运放和RC滤波的截止频率都必须相应提高否则电流信号会有明显相位滞后直接影响控制效果。6.2 从这块板子升级需要关注的重点如果你手头就是类似正点原子这样的学习板想往FOC方向升级我建议按优先级做三件事。第一把采样链路的噪声和失真解决干净这决定了电流环能做多快。第二确认MCU的ADC采样率是否够用至少要在PWM每个周期内完成两相电流采样对STM32F1系列来说一般需要合理的DMA配置才能实现。第三做好母线电压和温度监测FOC长时间运行时保护机制要比学习板时代更可靠。如果采样电阻和运放的增益配比不够或者运放输出噪声偏大直接改板子上的元件参数也是可以接受的。学习板的好处就在这哪个参数不合适就换哪个焊盘都在调试起来自由度比集成驱动芯片高得多。这个方向扩展完之后你会发现当初花在采样调校上的功夫完全没白费。电机控制的核心从来不只是那些看起来玄乎的数学变换底层一定是一套扎实可靠、经得起实测的硬件采样系统在托底。把这套东西摸透了换任何板子心里都有底。