
前阵子把一款用于配电柜/控制柜的以太网温湿度变送器送去做预认证测试结果辐射发射在120MHz附近超了差不多15dB传导发射在几十kHz频段也冒了三四个尖刺。回去把PCB和结构都动了一遍折腾两周后才在第二次送测时全项通过。这个项目本身不复杂难就难在它要装进柜体里——旁边就是变频器、接触器和开关电源干扰源密度比普通室内环境高一个量级。这篇东西把这块PCB设计和EMC整改的完整过程记录下来涉及传感器信号链、以太网PHY与RJ45布局走线、四层板层叠、TVS/磁珠/Y电容选型以及几个从“照抄参考设计”到“真正理解原理”的关键认知转变供做工业传感器、智能柜体监控、以太网IoT设备的朋友参考。1. 项目背景与需求拆解1.1 为什么“柜体强电磁环境”是个特殊赛道先说清楚这个产品形态。以太网温湿度变送器说穿了就是一路温湿度探头加一个网口通过Modbus TCP或者MQTT把数据送进后台。市面上类似的模块很多长得像个小盒子导轨安装供电一般是24V直流传感器探头用线引出装在柜内或者柜门内侧。但“装在柜体里”这件事直接把设计难度往上拉了一大截。配电柜、动力柜、控制柜内部是什么环境变频器是标配输出侧IGBT开关频率动辄十几kHz走线长的话会把谐波辐射到整个柜内空间接触器吸合释放的瞬间会产生很宽的暂态骚扰属于典型的EFT脉冲群开关电源的漏感尖峰、继电器线圈反向电动势都会顺着供电线窜来窜去。一个只有几瓦功耗的温湿度变送器塞在这种环境里它上面的每一条走线都是一根小天线每一个地平面节点都在被动接收柜内的高频噪声。而且这玩意儿还有个致命点自带以太网口。网口线缆长度不定短则几米长则几十米线缆本身既是骚扰发射天线也是从外界引入骚扰的路径。民用路由器那边EMC压力小因为环境相对干净、对认证要求也温和一些但工业柜体里的以太网节点必须把收发器和网络变压器那一整条链路都按工业级要求去设计否则真到现场就是三天两头丢包、重启。1.2 系统拆解一个变送器到底包含哪些关键子系统拆开看这个产品可以分成四个独立的功能域传感器信号链探头端的温湿度传感器我们用的是I2C接口的数字传感器、连接器、线缆、主板端的滤波和上拉电路。信号幅度小、频率低但最容易受共模干扰影响。主控与协议栈MCU负责数据采集和以太网协议处理。我们选了STM32F407内置MAC通过RMII接口外接百兆PHY芯片。MCU本身不是EMC瓶颈但它是敏感器件电源和复位如果被扰动表现就是死机、通信中断。以太网物理层PHY芯片、网络变压器、RJ45连接器、差分走线、共模扼流圈。这是整个板子的“射频中心”也是辐射发射和ESD/EFT耦合的主要通道。电源与防护24V输入经过防护器件TVS、保险丝、防反接、滤波网络π型滤波或磁珠加电容变成3.3V内核电源和3.3V/P HY电源。电源端口是传导发射和浪涌的主要入口。这四个域之间的耦合路径才是EMC问题的根源。比如传感器探头线从主板上穿过走线贴近PHY到变压器的那段差分信号区探头线上的低频共模噪声就可能耦合到网口反过来网口进来的高频骚扰也可能通过地平面传导到传感器I2C线上。等画完第一版PCB这些问题会以各种奇怪现象冒出来。2. 传感器与信号链设计要点2.1 传感器选型与I2C走线的抗干扰思路温湿度传感器选型我踩过一个坑。一开始直接用开发板常用的SHT30模块I2C接口一切正常精度温度±0.3℃、湿度±2%完全够用。但样板做出来装机测试的时候发现变频器一启动湿度数据偶尔会跳变一个大的值比如从45%瞬间跳到60%再跳回来。抓I2C波形发现是SDA线上的毛刺触发了错误的数据读取。后来分析问题出在两方面。一是传感器探头是独立小板的通过四pin杜邦线/连接线连接到主板线长大概200mm。柜体内变频器辐射的电场耦合到这根悬空的I2C线上产生共模电流进而转化成差模毛刺。二是I2C是开漏结构上拉电阻驱动的抗干扰能力很弱线上稍微有点串扰就容易误触发。整改方案分三层传感器端加一个小型RC滤波SCL和SDA各串33Ω电阻然后对地各并一个100pF电容。100pF的值是在不影响400kHz I2C时序的前提下选的实测200mm线长下上升沿只劣化了约20%不影响通信。上拉电阻从4.7kΩ改成2.2kΩ把线拉得更快、更硬一定程度上削弱外部噪声对电平的干扰。物理上给I2C线做包地处理——探头连接器在PCB上两侧走地线铜箔线缆本身选用屏蔽线屏蔽层单端接地在主板上接GND探头端悬空。这三点做完变频器启动时湿度数据基本稳定偶发毛刺从几分钟一次变成半天一次后来又加了软件滤波才算彻底压住。所以这里给做传感器变送器的朋友一个建议数字传感器不是简单的“I2C读寄存器”线缆长度超过100mm就要把信号完整性当成一个问题来对待。2.2 24V供电防护与电源树设计工业现场普遍用24V直流给这类设备供电但这路24V一点都不干净。开关电源纹波、逆变器母线波动、雷击浪涌残压、电机启停造成的电压跌落都会顺着供电线找上门来。变送器功率很小功耗大概不到2W电流不到100mA反而给了我们使用低功耗高抑制比LDO的底气。电源入口的防护顺序是固定的保险丝 → 防反接 → TVS → π型滤波 → DCDC/LDO。保险丝选的是自恢复保险丝PPTC额定保持电流500mA目的是防止板子内部短路或者网口异常时把柜内电源拖垮。防反接用一颗PMOS管做理想二极管方案压降小比串联肖特基更省电。TVS选了一颗单向的SMBJ24A钳位电压在38.9V左右主要扛浪涌瞬间的过压注意TVS要放在保险丝之后、极性保护之前且TVS的接地脚到主GND的过孔尽量短。电源滤波这里有个细节值得展开。24V进来之后先过一个共模电感型号通用的是几百μH到mH级别的贴片共模电感额定电流1A左右。共模电感对差模电流没作用但对供电线上的共模骚扰很有效——柜内变频器的骚扰往往是以共模形式在供电线上传播的。很多低成本小模块为了省成本省掉这颗电感结果传导发射测试直接在电源口翻车。共模电感之后接差模π型滤波一个10μH功率电感前后各两颗电容22μF电解并0.1μF陶瓷组成CLC结构。到这里24V供电线上的高频成分已经压掉了大部分再进LDO选了一颗3.3V输出的低压差线性稳压器做最后一级稳压。LDO的PSRR在高频段会衰减明显所以前面那些滤波不是白做的它们正是为补偿LDO高频抑制能力不足而存在。整条电源链路我建议按“粗滤波细滤波线性稳压”的思路去搭不要一上来就只上DCDC。变送器功耗低用LDO换纹波非常划算。3. 以太网物理层与PCB设计实战3.1 PHY芯片、网络变压器与接口架构选择以太网部分选了LAN8720A这颗百兆PHY和ESP32以太网模块、很多开发板上常用的那款是同一颗。选它的原因很实在便宜封装小QFN-24RMII接口只需8根信号线外围器件少而且数据手册上的参考设计非常成熟照着画基本不会有功能性问题。RMII和MII的选择我认为对小系统来说RMII几乎是唯一合理选项。MII需要24根信号线一个MCU引脚本来就紧张再被以太网占走一大片PCB布局也会被逼到很难堪的地步。RMII只需要TXD0/1、RXD0/1、TX_EN、CLK、MDC/MDIO这八九根线信号速率50MHz配合F407自带的MAC跑满百兆没问题。这里要特别注意RMII的50MHz参考时钟怎么来。LAN8720A有两种模式外部25MHz晶振内部PLL倍频到50MHz或者直接外部输入50MHz时钟。我们选了外部25MHz晶振方案PHY内部锁相环生成50MHz再把50MHz的REF_CLK输出给MCU。这颗晶振要靠近PHY引脚放置两侧负载电容按数据手册标称值贴不要随手用15pF去替换——去年我就在另一块板上因为负载电容不匹配导致时钟信号幅度偏低以太网偶尔起不来。网络变压器选型同样不能敷衍。百兆以太网变压器型号很多比如HX1188NL、YD12系列、HC025等关键是关注几点匝数比1:1、隔离耐压至少要1500Vrms、共模扼流圈内置还是外置。我们直接用了一体化网络变压器带RJ45的连接器方案省掉单独变压器布局的问题但代价是RJ45高度较高对结构设计有个小要求。如果机壳高度受限也可以考虑分离式变压器加普通RJ45但布局难度会大一点后面细说。3.2 四层板层叠与关键走线规则PCB层叠直接定了四层板理由比“四层看起来高级”要实在得多以太网50MHz差分信号需要完整的参考平面两层板根本给不了24V电源进入后经过多级滤波每一级滤波电容都需要就近回到参考地柜体内强干扰环境下内层走线还能天然屏蔽一部分外部电场耦合。层叠顺序我们是这么排的顶层信号器件→ 第二层完整GND→ 第三层电源分割→ 底层杂散信号少量器件。关键点在于第二层必须是完整不分割的地平面。有人为了在第三层走线方便在地层上打了很多分割槽这在高频下是灾难——回流电流绕着分割槽走回路面积变大就像天线一样往外辐射。我们所有关键信号都参考第二层第三层的电源分割靠焊盘区域自然划分不依靠地平面的“开槽”来隔离。以太网差分对的走线规则这里重点列一下阻抗控制100Ω±10%四层板表层微带线线宽约0.2mm、线距约0.15mm具体数值以板厂阻抗计算为准。差分对内等长控制在±5mil以内整对差分线的长度尽量控制在25mm以内。短距离布线下不需要画蛇添足搞蛇形等长走线越短越直反而比凑出来的蛇形线更好。差分信号必须全程参考第二层GND同层两侧包地铜箔并且打满地过孔。包地间距不小于2倍线距不然包地铜箔反而会改变差分阻抗。RMII的信号线虽然不算高速50MHz但也要短而直接TXD/RXD和REF_CLK尽量同层走完避免换层。REF_CLK要跟其他信号保持至少2倍线宽间距串33Ω匹配电阻放在PHY侧靠近输出引脚。还有一个非常容易被忽略的网络变压器下方的地平面处理。很多参考设计会把变压器正下方的地层掏空目的是切断初级侧和次级侧之间的耦合。但工业以太网节点我不赞成完全掏空而是建议做成一个独立的“隔离地”也叫PGND或 chassis GND通过一颗1nF/2kV的高压电容和主GND相连。这个电容就是Y电容它给网口上的共模干扰提供一个低阻抗泄放路径同时阻断低频回路。掏空且不接任何地会让网口共模电流没有去处EMC测试时辐射项大概率过不去。4. EMC整改全过程实录4.1 第一次送测失效项目与共模电流的路径分析第一版PCB回来后我们做了功能验证通信正常、数据准确感觉万事大吉。结果送去做预认证辐射发射项目直接被判不合格30MHz~1GHz频段在120MHz和240MHz两个频点附近超了大约15dB传导发射在电源口1MHz以内也有三个尖刺超标。这两个频点有点对称一看就知道基频和二次谐波关系——120MHz是240MHz的二分之一大概率不是时钟谐波50MHz的二次是100MHz三次是150MHz更像是某段布线上1又1/2次振荡。回去抓问题拿频谱分析仪顶在板上看了半天最后确定噪声源头在以太网PHY到变压器这一段。RMII的50MHz时钟是三倍频产生的150MHz分量REF_CLK走线过孔较多、回流路径不连续导致共模电流穿过整个板子通过RJ45外壳、网口线缆往外辐射。另外变压器次级侧的直流偏置电阻通常叫Bob Smith终端那组RC应该接到隔离地结果我们参考设计里直接接到了主GND相当于把共模泄放路径短路了。这里得讲清楚一个概念共模电流到底回到哪里去了。在以太网链路中PHY到变压器初级是正确的差模信号变压器把初级和次级隔离开来理想情况下次级只有差模没有共模。但实际中RJ45到变压器次级这一段线缆上的共模噪声会通过变压器线圈间的寄生电容耦合到初级再进入PHY和主GND同时主板上的噪声也会反向耦合到次级沿网线跑到对端设备去。共模电流必须形成完整回路才能流动——它的回路就是通过线缆/外壳/寄生电容回到它的源头。如果我们在PCB上没有给它设计一个低阻抗路径它就会自己“开路找路”往往就顺着地平面乱窜甚至窜到传感器线缆上去。所以EMC整改的核心根本不是堵而是给共模电流铺一条可控的低阻抗回路。4.2 第一次整改TVS网络、隔离地与Y电容的取舍整改动作分了三条线同时进行。第一条线重做网络变压器次级侧的端接。原设计把Bob Smith端接电阻75Ω和高压电容1nF/2kV接到主GND这是不对的。标准做法是次级侧差模端接电阻直接跨在差分对上共模端接电阻和电容接到隔离地。我们在RJ45连接器下方单独画了一个隔离地铜箔把次级侧相关的电阻电容都归到这块铜箔上再通过一颗1nF/2kV的Y电容桥接到主GND。这颗Y电容是有意为之的高频短路、低频开路它让网口高频共模电流能以最小回路回流到主板地而不是辐射出去。第二条线整改REF_CLK走线。把之前换了两次层的50MHz时钟线强制改到顶层紧贴PHY引脚出来串33Ω电阻后近可能直接连到MCU全程参考第二层GND两侧加地孔包边。同时PHY的电源去耦电容0.1μF和1nF两颗并联直接放在电源引脚正下方连接焊盘到过孔的引线尽量短到1mm以内。第三条线是关于“PCB地与金属壳体之间加一个大电容”的讨论——这是网上经常被问到的问题。直接给结论大电容uF级不是万能的甚至可能帮倒忙1nF到10nF级别的高压Y电容才是在外壳与主板地之间最合理的接法。我们这次整改没有在主板地与金属外壳之间横跨一个uF级电容因为那会让低频接地电流在壳体上形成环路反而变成新的辐射源。实测验证时把Y电容从1nF换成10nF低频段的传导发射没有明显变化但30MHz附近辐射反而有上升这就是谐振点往低频移动了。所以不要迷信“大电容镇场”选对容值和位置才关键。做完这三条再上频谱仪120MHz频点降了8dB左右240MHz降了6dB但距离限值仍差3~5dB。说明还有一条更隐蔽的路径没堵住。4.3 第二次整改结构屏蔽、接地螺柱与网口外壳处理第二次整改把矛头转向结构与外壳。变送器用的金属壳体是压铸铝表面做了喷粉绝缘处理。喷粉工艺好看但致命问题是它导致壳体接地不良——外壳和PCB GND之间只有几颗螺丝连接喷粉层的绝缘阻抗很大高频下根本不算连接。这样一来共模电流即使想通过外壳泄放也被绝缘层挡住只能趴在PCB地平面和连接器上。方案是两个点一是在壳体固定螺柱的位置局部刮掉喷粉露出基底铝材用带齿垫圈的接地螺丝把PCB的GND铜箔直接压接在螺柱上建立真正的金属-金属连接二是RJ45外壳脚就近连接到隔离地而不是直接接主GND避免隔离地噪声灌入主板。还顺便给RJ45金属外壳做了个屏蔽罩延伸用导电泡棉把RJ45座四周与壳体开口贴合让网口区形成一个局部屏蔽腔。这样次级侧隔离地的共模电流就倾向于通过壳体回到源头而不是从开口处往外漏辐射。传感器探头线缆换成了双屏蔽层线缆内屏蔽层单端接地到主板GND外屏蔽层接到壳体螺柱。探头侧保持浮空不接地——两侧都接地会形成地环路低频下反而引入更多干扰。第二次送测结果辐射发射全频段余量达到6dB以上传导发射余量8dBEFT和ESD也顺利通过。这里特别提一句EFT接触器干扰测试时没有出现以太网丢包证明变压器次级隔离和Y电容的整改确实把共模脉冲压住了。4.4 关于ESD与浪涌防护的补充实测EFT过了之后ESD和浪涌也补测了一下。ESD点位主要是RJ45外壳、24V电源端子、传感器连接器。RJ45外壳直接打±8kV接触放电整改后无复位、无丢包传感器连接器因为没有金属外壳打了±6kV后I2C数据偶发抖动这暴露了传感器信号线防护的弱点。最后又在探头连接器旁边加了一颗超低电容TVS阵列例如ESDA6V1-5T6结电容约几pF对I2C几乎无影响才算完全压住。浪涌测试根据IEC 61000-4-5做±500V对地浪涌电源口的TVS加上前面提到的一整条电源防护链路毫无压力网口浪涌由于有网络变压器隔离和隔离地Y电容的帮助也顺利通过。整体来说变送器这类小功率设备ESD和EFT的威胁远大于浪涌重点是传感器线缆接口和外壳接地点这两个薄弱环节。5. 常见问题与排查方法实录5.1 典型问题速查表整理一下这次项目踩过以及同事那边常见的几个问题直接给排查方向和解决办法。现象可能原因排查方向与解决办法变频器启动后温湿度读数跳变I2C线缆耦合共模噪声传感器线缆改屏蔽线单端接地串33Ω100pF RC滤波上拉电阻改2.2kΩ软件滑动滤波兜底以太网频繁丢包或Link灯不稳定RMII时钟走线过长/过孔多REF_CLK走顶层短直串33Ω匹配电阻PHY供电去耦电容就近放辐射发射在某频点超标以太网变压器次级接地错误次级端接电阻电容接到隔离地隔离地通过1nF/2kV Y电容桥接到主GND电源口传导发射低频超标缺少共模电感或π滤波参数不匹配24V入口加共模电感CLC滤波TVS位置靠近连接器外壳接地不良导致辐射降不下来喷粉层绝缘螺柱刮掉涂层露铝用带齿垫圈建立金属-金属接触ESD打RJ45导致复位变压器次级无泄放路径隔离地浮空隔离地Y电容不要省RJ45外壳脚接隔离地导电泡棉屏蔽腔传感器线打ESD死机探头连接器无防护并ESD防护阵列低结电容TVS线缆尽量远离电源与网口布线区这张表在外场调试时非常实用。很多所谓“玄学问题”其实都能在这几个方向上找到对应原因尤其是市面上大量小模块喜欢把地平面搞成一锅粥——哪些信号该参考哪个地、哪些节点该用Y电容桥接全部搞混。5.2 常用排查工具与测量方法我自己的排查顺序是近场探头频谱仪看发射源 → 示波器测时域波形 → 电流探头确认共模电流流向。近场探头是必备工具几十块钱的H场探头配频谱分析仪就能快速定位板上哪个区域是辐射热点。把我们板子测下来热点集中在PHY、变压器初级和RJ45三个区域这就直接锁定了范围。示波器主要看RMII的REF_CLK和电源纹波REF_CLK的上升沿过冲过大就加串阻电源纹波在100MHz频段明显偏高就增强去耦。电流探头看共模电流是诊断“回流路径”的最直接手段。夹在网口线缆上看频谱仪读数随整改动作的变化Y电容从1nF换成10nF时线缆上的共模电流有没有下降短路隔离地与主GND时电流反而上升还是下降。这些对比测试记录的性能变化比任何仿真都更接近真实。另一个细节是频谱仪的检波方式。预测试通常用峰值检波和准峰值检波现场排查时直接用峰值检波即可因为准峰值响应慢扫起来很费时间。峰值检波看到的余量如果能有6dB以上到认证机构用准峰值测基本也稳了。5.3 排查走线细节时的几个独特心得如果你用的是AD、嘉立创EDA或者Cadence这类工具有几个特别好用的小技巧提取板框去做结构确认时嘉立创EDA可以直接从板框层导出DXFCAD里量好尺寸再比对壳体开孔位置能省掉很多“打样回来装不上”的返工。AD里画任意形状板框把机械层1设为当前层用线条和圆弧拼出轮廓然后选中边框线转换成板框这一步是常规操作。不过更推荐直接在CAD里画好DXF再导入因为圆弧衔接的锯齿问题少拼板时也更整齐。DRC检查时如果遇到某个特定封装的焊盘间距误报可以在规则里给那个器件单独建一个Room或Class单独设置规则而不要全局放宽间距——这一点一定要养成习惯全局放宽会挡住真正的错误。第一次画完这种四层板的时候我最容易犯的毛病是“这里加个地孔那里也加个地孔”结果地孔多到像筛子。实际经验是关键信号换层处的相邻地孔才有意义其他地方的地孔只要满足板厂最小孔径要求、布局不冲突就该克制。地孔太多会让第三层电源平面的完整性变差反而得不偿失。5.4 复测前的整机自检清单拿去送认证或者现场投运之前我会把下面几个项目过一遍时间不长但特别管用检查24V电源端口的TVS是否反接——很多不良品返修都是TVS装反导致一上电直接短路板子烧得一塌糊涂。测量24V输入到LDO输出的纹波特别是满载状态下纹波不要超过LDO规范值的80%。用网线直连对端设备跑ping包测试连续ping 50000个包丢包率应该为零拔插网线100次恢复时间不超过2秒。用近场探头扫一遍整板确认没有突兀的辐射热点有热点就检查对应区域的地孔和滤波器件。检查金属壳体接地点螺丝是否拧紧、导电泡棉是否压实——这一步看起来土实际在EMC测试里起的作用比很多滤波电路都大。这套流程走下来再送测基本不会出现第一次那种“抱着希望去拿着红字标书回来”的尴尬。回到开头那次预测试超标并不丢人——丢人的是不知道怎么改。这块板子的整改过程里真正改变结果的是从“照抄参考设计”变成“理解每一个电容和地平面存在的意义”。就拿隔离地来说参考设计里引脚旁边那个1nF电容第一次画的时候我根本不知道它干嘛的等到实测超标才明白它管的是共模电流的回流路径。后来再画以太网相关的板子我习惯性地先把隔离地、Y电容、接地螺柱这几个位置在板上标出来布线和结构设计从一开始就围绕它们展开后面基本不用二次整改。这个习惯让后面的项目省了至少一周的调试时间也是这次项目给我带来的最大收获。