干硬件设计十多年,每次评审PCB,地的问题永远是争论最多的地方。三相无刷电机驱动板是典型的功率、模拟、数字混叠系统,AGND、PGND、GND这三个名字看着差不多,实际处理不好,轻则ADC采出来全是毛刺,重则MOSFET驱动波形乱跳、板子在运行中直接复位。下面这套方法是踩了不少坑之后沉淀下来的,包括地之间怎么分区、星形汇聚点放在哪、最常见的几个地故障怎么排查,适合正在调BLDC驱动板或者准备改板的工程师参考。
1. 先把AGND、PGND、GND的职责边界搞清楚
1.1 三种地在一块三相驱动板里分别管什么
三相无刷电机驱动板的结构大同小异:直流母线进来,经过六个MOSFET组成的三相全桥,再输出到电机绕组。控制侧通常是一颗MCU,负责产生六路PWM或FOC算法输出;驱动侧可能是栅极驱动芯片,也可能只用分立推挽电路;电流采样一般用低边采样电阻加运放,有些板子还会加母线电压检测、温度检测这些模拟电路。
这块板子上会同时出现三个地网络:
- PGND:功率地。指直流母线负极、MOSFET源极、低边采样电阻、母线电容负极这一整套功率回流路径。它流过的是开关脉冲电流,数值很大,经常是几十安培的峰值电流在十几纳秒内切换。
- AGND:模拟地。指电流采样运放、采样电阻的参考点、滤波器、分压电阻等模拟小信号电路的回流地。
- GND:数字地,也叫逻辑地。指MCU、时钟电路、接口、数字隔离器件这些数字电路的回流地。
很多工程师在原理图里把所有地网络都画成同一个符号,画PCB时也图省事直接铺一大片铜了事。短时间能跑,但性能上限很低。只要电机负载往上加,地弹电压会把模拟信号淹没,数字电路也容易误触发。
1.2 为什么不能把三种地直接往一起铺
关键原因有两个:电流性质不同和噪声敏感度不同。
先看电流性质。PGND上的电流是脉冲状的,PWM开关频率往往在8kHz到20kHz,但边沿的dv/dt和di/dt非常高。假设一段走线寄生电感是10nH,电流在50ns内从0跳到20A,也就是di/dt约0.4A/ns,按公式U=L×di/dt算,这段走线上会砸出大约4V的尖峰。这套电压直接加到模拟地参考点上,运放芯片的GND引脚和目标电压一起波动,输出端肯定跟着跳。
再看噪声敏感度。电流采样运放的输出通常是毫伏级的小信号,例如1mΩ采样电阻流过10A电流时,压降只有10mV。这种情况下哪怕地上有1mV的噪声,换算到电流就是1A的误差,控制精度自然无从谈起。反过来,门极驱动信号允许瞬时有几伏的过冲,PGND稍微脏一点,只要不超过MOSFET的栅源耐压,其实问题不大。把两者放在同一个回流路径上,就是让低频小信号去承担高频大电流造成的后果,得不偿失。
1.3 典型驱动的电源架构与地网络划分
一块24V/20A级别的三相无刷驱动板,电源架构一般是这样的:直流电源进来,先经过母线电容组(大电解并联几个陶瓷电容),再分配到三相全桥;控制电源从母线取电,经过降压芯片或者LDO变成5V和3.3V,单独给MCU、运放和栅极驱动芯片供电。
这块板子的地回路至少包含四个环:母线电容到上下管之间的大电流换流环、低边采样电阻到比较器的信号回环、栅极驱动芯片到MOSFET源极的驱动电流回环、MCU数字电路的回流环。这四个环如果相互交叉,问题就来了。所以我习惯在原理图阶段就把地网络按角色分开命名,PGND、AGND、GND各用各的符号,画PCB时再决定汇聚方式,这样每一步回流路径都是明确的。
2. 布线设计核心原则:控制回路比给地起名更重要
2.1 单点接地还是多点接地,不能拍脑袋
低频电路常用的单点接地,是把所有地的信号回引汇聚到同一个点,目的是避免不同电路之间通过地线互相干扰。高频电路则倾向多点接地,也就是大面积地平面,因为地平面能提供低阻抗回流路径,减少寄生电感。
三相驱动板卡在两者之间:PWM开关沿陡,等效频谱能到几十兆甚至上百兆,适合多点接地;但功率地和模拟地之间又需要一定隔离,避免噪声串扰。我的经验是用一种混合策略:控制侧(AGND和GND)做整块连续的参考地平面,功率侧PGND单独铺铜区,两块地在母线电容负极处单点汇聚。这样既有低阻抗回流路径,又避免了功率噪声污染控制电路。
这里有一个实用的判断依据:当走线长度小于最高有效频率波长的1/20时,单点接地仍然有效。100MHz对应的波长约3m,1/20是15cm,大多数电机驱动板的地线长度不会超过这个范围。所以只要汇聚点选得好,单点汇聚是完全够用的,不需要刻意把地平面切成很多块。
2.2 电流回路面积才是第一优先级
很多人在“AGND、PGND怎么分割”上纠结半天,却没注意到真正决定噪声的是回路面积。电感正比于回路面积,回路面积越大,等效电感越大,di/dt产生的压降就越明显。
以三相桥最常见的换流环路为例:母线电容正极、上管、电机绕组、下管、采样电阻、母线电容负极,形成一个完整的高频环流。PWM每个周期这个环路都工作在快速切换状态。让这个环路面积尽可能小,比花精力去切地平面更有效。
具体做法是:母线电容尽量靠近MOSFET桥臂,陶瓷电容直接放在桥臂电源端和地端;六个MOSFET围绕电机的U/V/W三相输出排列,不要拉长走线;相线输出走线尽量短和粗,从桥臂直接引到接线端子。
2.3 PCB叠层怎么选
如果条件允许,三相驱动板优先选四层板。两层板也能做,但控制侧的地平面不完整,AGND和GND区域很容易被迫走很长的细线,噪声性能很难做好。
四层板的典型叠层我一般这样安排:
- 顶层:功率器件、栅极驱动芯片、采样电阻、控制芯片尽量放同一层,减少过孔带来的寄生参数。
- 第二层:完整的地平面,用作控制侧AGND/GND的参考平面。这里不切分,保持连续性。
- 第三层:电源走线和部分模拟小信号走线,例如3.3V、5V电源平面,以及远离功率区的模拟信号。
- 底层:铺铜和辅助走线,功率地可以在这里做加强铺铜。
两层板也不是不能救,只是代价更大:PGND要尽量用大面积铺铜,同一网络不要出现细脖子;采样电阻的检测线要作为差分走线紧贴在一起走,长度越短越好;MCU和模拟电路尽量集中在铺铜区域的安静角落。
3. 实操:一块典型三相驱动板的接地布线全流程
3.1 先给板子划好物理分区
拿到原理图别急着连线,先做物理分区。功率区和控制区之间要有一条明确的分界线,这条线通常从母线电容位置开始,沿着驱动芯片的隔离带,一直延伸到电机接口。
我习惯把板子分成三个区块:母线区和三相桥放在板子的一侧,驱动信号线和采样线从中间穿过,MCU和模拟电路放在另一侧。这样做的目的是让功率级的强干扰源和控制级的敏感电路在物理距离上拉开,地之间自然形成两个相对独立的回流区域。
3.2 PGND功率地的走线和铺铜细节
PGND的设计目标是低阻抗、低电感。母线电容负极到低边MOSFET源极、再到采样电阻,这一段要尽量短和粗,绝对不能用一根细线跳来跳去。
实际走线时,我会把PGND当作一个专属铜皮区域来处理,而不是普通的地线网络。铜皮宽度按电流密度估算,表层铜厚1oz(35μm)时,长期20A电流建议至少8到10mm宽,再配合底面铺铜和过孔缝合来降低电阻。过孔不是随便打几个就完事,大电流过孔要一组一组地排,每个过孔孔径0.4mm左右,20A至少需要10个以上的过孔并联,并且两端要直接落在铜皮中间,不要只搭在边缘。
采样电阻的摆放要特别注意。低边采样电阻串联在低边MOSFET源极和PGND之间,电流流过电阻产生压降。电阻的两个检测脚要直接引出差分线送给运放,这就是开尔文连接。千万不要让大电流走线经过检测脚之间,否则走线上的压降会叠加到采样信号里。
3.3 AGND模拟地的布线与滤波电容放置
AGND是电流采样运放、滤波器、基准源的参考地,它在布线中要做的最重要事情是:不要被PGND的大电流路径借道。
采样电阻靠近PGND,运放靠近MCU一侧,这中间的距离不长,但需要一条防护性的路径。我一般让运放的GND引脚通过一段较宽的AGND铜皮直接连到星形汇聚点,而不是就近铺到PGND。运放电源的滤波电容必须放在运放电源引脚旁边,电容负极接AGND,而不是接到旁边的PGND铜皮。
模拟信号走线方面,采样差分线要等长、平行走,中间最好包一圈地线防护走线,防止PWM开关噪声从侧面耦合进来。进入MCU的ADC引脚之前,加一个一阶RC低通滤波器,通常取100Ω加1nF到10nF,截止频率控制在几十kHz到几百kHz,够满足电流环带宽就行。
3.4 数字GND与MCU处理
MCU和数字电路的GND,我的处理方式是和AGND合二为一。意思就是,MCU的地并不单独划一个“数字地”,而是和运放、模拟滤波电路共用同一块完整的参考地平面,统称为控制地。这样做最大的好处是避免数字地回流穿过模拟区,造成不必要的回流路径交叉。
MCU的相邻两个地引脚之间要就近打过孔,连接到第二层地平面。所有去耦电容都尽量靠近对应的电源引脚,电容的地端直接落到地平面,走线越短越好。MCU的复位引脚和供电引脚加一个小电容做滤波,可以显著降低上电瞬间和负载突变时复位引脚被干扰的概率。
3.5 星形汇聚点:三种地唯一交汇的地方
这是整篇布线技巧里最关键的一步。AGND和PGND不是永远不相交,而是在某一处严格单点相连。这个点我统一放在直流母线电容组的负极,具体可以说是电解电容的负极焊盘与PGND铜皮的交接处。
为什么选这里?因为母线电容是功率电流回流的终点,也是高频电流的蓄水池。控制地在这里汇聚,能保证模拟参考点和功率回流之间的电位差最小。如果换个位置,比如放在板子边缘的接线端子,那么控制电流和功率电流会共用很长一段回流路径,负载变化时控制地就会被抬起来。
在实际PCB上,我通常会从母线电容负极焊盘引出一小段PGND铜皮,然后在铜皮上开一个十字星形的连接点,让控制地平面只通过这一个点与PGND相连。检查方法很简单:用万用表通断档测AGND和PGND,应该只在这一点听到蜂鸣,其他地方都不能有直接连接。
4. 常见问题与排查技巧实录
4.1 电机一启动MCU就复位
这是功率和数字地没处理好最典型的症状。电机启动瞬间,母线上会出现很大的浪涌电流,如果MCU的参考地正好处在PGND回流路径上,地电位瞬间抬高,MCU的供电电压被短暂拉低或者复位引脚被干扰,程序就重启了。
排查时先用示波器看MCU的VDD引脚对AGND的波形,注意要用短地弹簧测试,不要用长鳄鱼夹。如果看到几十毫伏的尖峰同时伴随复位,基本可以锁定是地弹。解决思路是先检查星形汇聚点是否唯一,再检查MCU的供电是否经过了足够的去耦电容,必要时在MCU供电入口加一个小磁珠和一个较大的电解电容,把瞬态能量隔离开。
4.2 电流采样在轻载时波动巨大
电流采样值在一两安培以下就开始明显漂移,多半不是算法问题,而是AGND被干扰。比较常见的原因是采样电阻到运放的走线太长,或者差分走线配线不对称,导致差模噪声转成共模噪声。
处理过的板子里有一块问题特别典型:采样线走了大约3cm,从功率区一路穿到MCU附近,中途和三相相线走线平行。改成把运放挪到采样电阻旁边,采样线缩短到1cm以内,并且差分走线紧贴后,采样噪声立刻降了一个数量级。记住一条原则:运放离采样电阻越近越好,哪怕把运放放在功率区边缘,也不要为了整齐难看把采样线拉得满天飞。
4.3 MOSFET栅极波形振铃严重
栅极驱动波形的问题是另一种高频回流问题。栅极驱动电流从驱动芯片流出,经过栅极电阻到MOSFET栅极,再从MOSFET源极回驱动芯片GND,这个回环如果面积太大,环路上的寄生电感就会和栅极电容产生LC振铃。
解决办法是尽量缩短驱动芯片到MOSFET的距离,驱动芯片的GND引脚直接就近回到MOSFET的源极,不要绕到别的地方。栅极电阻放在靠近MOSFET栅极的位置,可以增加阻尼。栅极走线不要和相线走线平行,避免耦合。如果振铃依然明显,可以再给栅极并联一个小电容,比如2.2nF,但要注意这会增加开关损耗。
4.4 传导骚扰测试超标
传导骚扰超标时,大家第一反应是加共模电感,但很多情况下根源是功率回路和地平面之间寄生电容过大。三相桥的散热焊盘如果直接大面积连接相线,相线上的高dv/dt就会通过寄生电容向外传导。
排查时先看相线铜皮面积是不是铺得太大,开关节点处的铺铜建议收缩,只保留足够的载流宽度。再有就是母线输入端加共模电感,共模电感的安装方向要保证两个绕组的磁通互相抵消,否则起不了作用。如果加完共模电感仍超标,试着增大栅极电阻让开关边沿变缓,代价是效率稍降,但对EMI帮助很大。
下面把常见的故障现象和解决思路整理成速查表:
| 故障现象 | 最可能原因 | 排查方向 | 常用解决手段 |
|---|---|---|---|
| 电机启动时MCU复位 | 地弹导致逻辑地电位抬升 | 量MCU供电和AGND尖峰 | 星形点唯一化,MCU供电加磁珠和去耦 |
| ADC采样异常波动 | 采样线过长、AGND被干扰 | 示波器量运放输出,看纹波 | 运放靠近采样电阻,差分走线,加RC滤波 |
| 栅极波形振铃 | 驱动回路电感过大 | 看栅源电压振铃频率 | 缩短驱动回环,调整栅极电阻 |
| 传导骚扰超标 | 开关节点dv/dt过高 | 用近场探头扫相线区域 | 收窄铺铜,加共模电感,调整开关沿 |
| AGND和PGND阻值不唯一 | 地平面多处相连 | 万用表通断逐个区域排除 | 切开多余连接,只保留星形点 |
5. 几个我踩过的坑和最终建议
关于地处理,网上能查到很多理论和规则,但真正改板子时还是会掉进一些坑里。第一个坑是我早期喜欢把地平面一分为二,中间用磁珠或者0欧电阻连起来,结果低速信号跨过分割缝隙没有回流路径,噪声反而更严重。我现在更倾向于“物理分区加完整地平面”,用布局把安静电路和噪声电路分开,而不是在地平面上拉一道裂缝。
第二个坑是磁珠选型。给AGND串磁珠的确能隔开一些高频噪声,但磁珠本身有直流电阻,也会带来压降和参考点漂移。尤其运放的地参考和供电参考如果隔着磁珠,两边的地电位不在同一水平,采样误差反而增大。所以现在除非是隔离型设计,一般板子上我更愿意直接单点连接,少串磁珠。
第三个坑是实际量测时被长接地线误导。示波器的接地夹随便夹在某个地孔上,量出来的噪声很大,实际上是接地引线自己形成天线。测地弹和纹波一定要用地弹簧或者针尖地,尽量靠近芯片引脚量,才能看到真实的地噪声水平。
再分享一个小技巧:画完PCB后,试着在原理图上把所有电源和地的回流路径都画出来,看看每一路信号电流最终怎么回到母线电容负极。如果哪一路信号的回流路径绕了一个大圈,或者和功率电流有一段共用路径,不用想,这块板子上电后大概率会出问题。这个习惯帮我省了很多调试时间,推荐你也试试。