空气中冒出一股烟雾。3种不同的PCB。PCB有鬼?

电器工程 测试 失败 压力测试 atmega328pb
2022-01-25 15:09:33

是的,那是俳句。(编辑:修复它......它现在实际上是一个俳句)

不,我没有笑。

我正在做一些标准测试;看看当两个电源轨之一在我设计的 PCB 上短路到 GND 时会发生什么。我们谈论的是由台式电源提供的 12 V 电源轨,带有一个单独的板载 5 V 降压转换器,为 PCB 上的另一个电源轨(我的 ATmega328PB 连接到该电源轨)供电。

12 V 导轨上有一堆 DC 桶形千斤顶,将暴露给最终用户。所以,很自然地,我决定将珠宝商的螺丝刀塞进其中一个进行短路测试。

瞧,我的 ATmega328PB 冒出一股烟雾。

我认为这意味着发生了以下事情之一:

在此处输入图像描述

原理图时间

这是与 ATmega328PB 的连接示意图:

ATmega328PB原理图

以下是设计中连接到 12 V 电源轨(VBAT+ 电源轨)并控制 GND 电流返回路径的所有原理图:

场效应管电源控制

模拟前端

这是筒形插孔和相关插孔检测引脚的示意图(请注意,它们直接连接到 ATmega328PB 的某些引脚,没有串联电阻):

带千斤顶检测针的 DC 筒形千斤顶

短路计划

处理 12 V 电源轨短路的计划是简单地关闭LOAD_FET N 通道 FET,因为固件中满足以下两个逻辑条件之一:

  1. ADC 以 1 Hz 的速率采样将检测过流情况并导致 FET_LOAD 开关停止导通,从而切断短路电流
  2. 为 ATmega 供电的电压将进入掉电状态,MCU 将复位并将 FET_LOAD 开关初始化为“关闭”,从而切断短路电流

大烟

这是一个示波器探头,通过使用珠宝商的螺丝刀将 Vbat+ 短接至 GND 时,CH1(黄色)上的Vbat+轨道和 CH2(蓝色)上的+5轨道会发生什么情况桶形千斤顶电路(我没有将螺丝刀插入插座),而它由设置为 12V @ 5 安培的台式电源供电:

短路 |  CH1 - Vbat+ |  CH2 - +5V

在那之后,每当我给电路板加电时,ATmega 就会变得非常热,并且实际上充当了它的 +5V 输入和信号地之间的短路。我用热空气拆焊了 ATmega,并测试了 FET_LOAD N 沟道 FET,看它是否被炸了。事实上,它失败了,以至于当栅极电压施加到 +5 或信号地时,它不再完全关闭或打开,而是在两者之间的暮光区某处工作。当负载插入桶形插孔时,无论是“开”还是“关”,它在传导约 200 mA 的同时下降了约 2.3 伏。

直觉

有一种预感,因为 FET 已损坏,导致 ATmega 损坏的矢量可能是由高压通过 FET 漏极传输到其栅极并到达 MCU 造成的。用提供 12V 电源轨的较低电压进行了一些后续测试。请注意,前三个图像基本相同,但峰值电流不同。一旦 AT​​mega 关闭(由于 Vbat+ 轨上的电压崩溃),MCU 提供的LOAD_GND_ENABLE信号(蓝色,下图)依次变为低电平,从而切断FET_LOAD开关。

传奇:

CH1 = Rshunt 两端的电压(0.005 ohm) CH2 = LOAD_GND_ENABLE 信号上的电压(连接到 ATmega)

Vbat+ 以 6V 供电:

在此处输入图像描述

Vbat+ 以 7V 供电:

在此处输入图像描述

Vbat+ 以 8V 供电:

在此处输入图像描述

Vbat+ 以 9V 供电:

在此处输入图像描述

在最后一个上,电流从未停止增加,并且LOAD_GND_ENABLE信号跳起了时髦的舞蹈,但总而言之, LOAD_GND_ENABLE引脚上的最大限制似乎从未被突破(至少我不认为它们是......我只有一个 2 通道示波器,并且必须测量 +5V 轨才能知道LOAD_GND_ENABLE wrt Vcc 上的电压是多少)。

下一步

我只剩下 1 个可以牺牲的板子了,因此我的计划是:

  1. 使用空白 ATmega328PB,使其所有引脚默认为高阻抗,没有配置/初始化外设。重复短路测试,看看 ATmega328PB 是否仍然冒烟。如果它没有失败,那么 MCU 一定是失败了,因为它在之前的测试中运行固件时,它从配置为输出的一个引脚提供/吸收了过多的电流。

  2. 使用安装在分线板上的 ATmega328PB 进行测试(不幸的是,该芯片不采用 DIP 封装)通过飞线连接到 PCB。有选择地开始一次连接一根飞线,运行测试,并查看最终哪个飞线负责炸掉 ATmega328PB。

  3. 订购具有更改布局的新样品 PCB,以便连接到 ATmega328PB 的所有走线都通过焊桥连接,在我测试时可以手工焊接。这样,短路测试(和任何其他测试)可以在 ATmega 一次连接到有限数量的信号的情况下进行,并且可以轻松地将所有其他外部电路连接到这些焊桥以独立于 ATmega 控制它们.

是的,这确实是一个问题!

问题是:

  • 有人在这里看到我看不到的任何东西吗?很明显吗?我希望它不明显...
  • 你的下一步是什么?
3个回答

12 V 导轨上有一堆 DC 桶形千斤顶,将暴露给最终用户。所以,很自然地,我决定将珠宝商的螺丝刀塞进其中一个进行短路测试。

这意味着您将 +12V 放在未受保护的JACK_DETECT线路上,从而炸毁 MCU。请参阅上面的“任何引脚上的电压 [..]”。

重新设计电路,使 MCU 引脚上VBAT+JACKx_DETECT电压不能超过 VCC,例如使用电阻器和二极管。

我认为您在 LOAD_GND 线路中的开关可能是这里的罪魁祸首,再加上不受保护的插孔检测线到微型(我要注意的是,对于没有插入插头的任何插孔,它都连接到 LOAD_GND。

考虑一下如果关闭该 MOSFET 会发生什么(任何未插入插孔的插座上的插孔检测线将通过短路负载连接到电池电压,随后会冒烟),您至少应该有一些串联电阻和一个夹子在插孔检测线上(比如 10k 左右和一对二极管),但我真的看不出 LOAD_GND 开关真的能比高端开关买什么?

顺便说一句,汽车场景具有非常好的逻辑控制高边开关,内置过流跳闸和电流感应,非常值得一看。

显然不能评论(还)。但是我改变了我的答案以同意上述观点,并进行了以下观察。

我要注意的一项是确保当 ATMega 处于启动/重置状态时,您的 FET 处于良好的驱动状态(上拉/下拉)。这些引脚通常设置为输入模式 IIRC,这会导致 FET 栅极浮置并呈现较差的 Vgs 驱动,从而增加通道电阻。如果漏极和源极连接之间的电流很大,它将迅速过热/损坏 FET。