2019年那个项目,我到现在还记得清清楚楚。
那是一块工业控制板,带了两个无刷电机,还要采几路温度和电流信号。板子设计得很紧凑,两层板,成本压得低,原理图review的时候也没人说接地有什么问题。
样机回来测试那天,电机一转,ADC采回来的温度值就开始乱跳。
明明温度传感器只接了个10K的NTC,环境温度26度,读数却在20到35度之间疯狂波动。电机停了,读数就稳了;电机一转,又跳起来。
当时我第一反应:软件滤波不够?
一、软件调了三天,发现方向错了说实话,一开始我真没往硬件噪声那边想。
加了滑动平均滤波,不行;换了个卡尔曼滤波算法,还是不行。甚至把采样率从10Hz提到100Hz,再配合数字滤波,那该死的波动依旧存在。
直到有天晚上,示波器往板子上一搭,我整个人都愣了。
ADC的基准地线上,趴着50mVpp的纹波,频率跟电机的PWM频率一模一样。

图2:示波器测量到的ADC地线噪声波形,50mVpp纹波
那一刻我才明白:软件滤波救不了硬件的坑。
地线上有噪声,ADC采的就不是真实信号了。电机开关的大电流,通过某种途径跑到了我的模拟地线上。
二、地环路?我以前只听过这个词说起地环路(Ground Loop),教科书上的定义挺拗口:多个接地点形成闭合回路,电流在环路中流动产生噪声。
翻译成人话就是:你的地线太"大方"了,给了电流好几条路可以走,结果这些路互相打架,噪声就这么来了。

图3:PCB地环路形成原理示意图——多点接地形成闭合环路
我那块板子的问题,复盘之后其实挺典型的:
- 多点接地:功率地(电机驱动)、数字地(MCU)、模拟地(ADC)各自铺铜,结果在三个地方都有连接,形成了一个三角形环路
- 回流路径混乱:电机电流部分回流走了模拟地平面,把噪声带进来了
- 地平面被分割:为了"隔离",我把模拟地和数字地用一条缝隔开,但信号线又跨着缝走
这些错误,教科书上都有说,但不到现场踩坑,真的很难有切肤之痛。
三、怎么确认就是地环路在作怪?排查地环路,我后来总结了一套"土办法",不用什么高端设备,示波器就够了。
方法一:测地线上的噪声用示波器的高阻抗探头,一端接模拟地,另一端接电源入口的"安静地"(最好是输入电容的地)。
关键是探头的接地线要尽量短,用接地弹簧最好,别用那种长长的鳄鱼夹线——那玩意儿本身就是个天线,测出来的东西不准。
我看到的结果是:电机工作时,两地之间的电压差高达50mVpp,频率跟PWM同步。
方法二:断开测试这是最粗暴但也最有效的办法。把模拟地和功率地的连接断开,用一根飞线单独把模拟地连到电源入口。
一试,ADC读数立刻稳了。
确认了:就是地环路在搞鬼。
方法三:近场扫描(进阶)如果手头有频谱仪+近场探头,可以扫一下板子,看哪里辐射最强。地环路往往会表现出一圈一圈的磁场分布。
不过说实话,大多数问题用前两个方法就能定位,近场扫描更多是验证用的。
四、根治:从源头解决问题确认了地环路,接下来就是整改。我把整个过程拆成了三步。
第一步:重新规划接地拓扑之前那种"各自为政"的接地方式必须改。
我采用了单点接地(星形接地):

图4:PCB单点接地星形拓扑结构图
- 在电源入口(输入电容附近)选一个点作为"接地点"
- 功率地、数字地、模拟地各自走线(或铺铜)连到这个点
- 绝对不在其他地方再有连接
画出来像个星星,所以叫星形接地。
【注意】 单点接地适用于低频电路(<1MHz)。如果你的板子有高速信号(比如几十MHz以上的时钟),可能需要多点接地,但那是另一个话题了。
第二步:模拟地和数字地的"正确分手"混合信号板子,模拟地和数字地到底该不该分开?这个问题争议挺大。
我的经验是:可以分,但分完必须在一点连接,而且位置要选对。
正确做法:
- 分区布局:模拟电路和数字电路物理上分开,各自有自己的地平面
- 单点桥接:在ADC或MCU的正下方,用0Ω电阻或磁珠把两地连起来
- 禁止跨分割布线:绝对不让信号线从模拟地跨到数字地,否则回流路径会绕一大圈,形成大面积环路
我之前的错误就是:分是分了,但信号线跨着分割缝走,结果反而加剧了噪声。
第三步:给敏感信号加"保镖"有些信号实在太敏感,光靠接地优化还不够,得加额外防护。
ADC输入端加RC低通滤波:1KΩ电阻串联+100nF电容并联到地,截止频率约1.6kHz,能有效滤除高频噪声。
模拟电源用LDO单独供电:不要直接用开关电源的输出,加个低噪声LDO做二次稳压。
关键信号线"包地":在敏感信号线两侧加地线保护,每隔一段距离打地过孔,形成屏蔽效果。
五、整改效果与反思改完板子重新打样,测试结果让我挺满意的:
- ADC基准地噪声从50mVpp降到<5mVpp
- 温度采样值波动<0.5度
- 电机满载运行时,模拟信号稳定
回头复盘这个案例,有几个教训是刻在骨子里的:
教训一:接地不是"铺铜就行"新手最容易犯的错误,就是把接地理解成"把GND网络连起来"。
其实接地的核心是控制回流路径。每一路信号、每一路电源,都有自己的回流,你要做的是让这些回流各走各道,互不干扰。
教训二:分割地平面要谨慎很多人听说"模拟地要和数字地分开",就到处开槽、挖沟。
实际上,盲目分割地平面往往适得其反。信号线跨分割,回流被迫绕远,环路面积增大,EMI问题更严重。
正确的做法是:先保证地平面完整,在需要隔离的地方做局部处理,并通过单点桥接。
教训三:软件解决不了硬件的根本问题这句话看起来显而易见,但当你真正遇到问题时,往往会本能地用自己熟悉的方式去解决。
软件工程师用代码,硬件工程师用烙铁。先确认问题在哪一层,再用对应层的工具去解决,这是最基本的工程思维。
六、给你的快速自查清单如果你的板子也有类似问题,可以对照这个清单自查:
| 接地拓扑 | 低频电路用单点接地,高频电路用多点接地+完整地平面 |
| 地平面完整性 | 无明显开槽,关键信号下方地连续 |
| 数模地连接 | 单点连接,位置在ADC/MCU下方 |
| 信号跨分割 | 禁止信号线跨地平面分割区 |
| 地过孔密度 | 地平面不同区域用过孔缝合,间距≤500mil |
| 功率地隔离 | 大电流功率地单独走线,单点连接主地 |
地环路这个问题,说复杂也复杂,说简单也简单。
复杂的是,它涉及电磁场、回流路径、阻抗匹配一堆概念;简单的是,一旦你真正理解了"电流要走最短路径回家"这个道理,很多问题就迎刃而解了。
我现在设计板子,会习惯性地在脑子里想象电流的流动:
- 这个信号从哪里来,要回哪里去?
- 它的回流路径是什么?
- 会不会跟别人的回流撞车?
想清楚这三个问题,接地设计的基本功就差不多了。
希望我的这个踩坑经历,能帮你少走点弯路。
如果你也有类似的故事,欢迎在评论区分享,我们一起进步。

扫码关注






































