Nuvem de fumaça no ar. 3 PCBs diferentes. PCB tem fantasmas?


15

Sim, isso é um haiku. (EDIT: consertou ... agora é na verdade um haicai)

Não, eu não estou sorrindo.

Estou fazendo alguns testes padrão; vendo o que acontece quando um dos dois trilhos de energia é curto para GND em uma PCB que eu projetei. Estamos falando de um trilho de alimentação de 12 V fornecido por uma fonte de alimentação de bancada, com um conversor de fan de 5 V separado que está fornecendo o outro trilho na PCB (à qual meu ATmega328PB está conectado).

O trilho de 12 V possui um monte de tomadas de barril DC que serão expostas aos usuários finais. Então, naturalmente, decidi colocar uma chave de fenda em um deles para realizar meu teste de curto-circuito.

Eis que uma nuvem de fumaça do meu ATmega328PB.

Eu acho que isso significa que uma das seguintes coisas aconteceu:

insira a descrição da imagem aqui

Tempo esquemático

Aqui está o esquema das conexões com o ATmega328PB:

Esquemático ATmega328PB

Aqui estão todos os esquemas das coisas no projeto que têm uma conexão com o trilho de 12 V (o trilho VBAT +) e que controlam os caminhos de retorno atuais da GND:

Controle de Potência FET

Front-end analógico

E aqui está um esquema das tomadas barril e da tomada associada, detectando pinos (observe que eles se conectam diretamente a alguns pinos do ATmega328PB sem resistência em série):

Tomadas de barril CC com pinos de detecção de jack

O Plano de Curto-Circuito

O plano para lidar com curtos-circuitos no trilho de 12 V era simplesmente desligar o FET do canal N LOAD_FET devido a uma das duas condições lógicas sendo atendidas no firmware:

  1. A amostragem ADC a uma taxa de 1 Hz detectaria a condição de sobrecorrente e faria com que a chave FET_LOAD parasse de conduzir, cortando assim a corrente de curto-circuito
  2. A tensão que alimenta o ATmega entraria em condição de escurecimento e o MCU redefiniria e inicializaria o interruptor FET_LOAD para "off", cortando assim a corrente de curto-circuito

The Big Smoke

Aqui está uma sonda de osciloscópio do que acontece com o trilho Vbat + no CH1 (amarelo) e o trilho +5 no CH2 (azul) ao colocar o Vbat + no GND em curto através da aplicação de uma chave de fenda de joalheiro aos fios expostos de um cabo conectado ao circuito do conector do barril (não enfiei a chave de fenda no receptáculo ) enquanto ela está sendo alimentada por uma fonte de bancada definida para 12V a 5 Amps:

Curto-circuito |  CH1 - Vbat + |  CH2 - + 5V

Depois que isso acontecia, o ATmega ficava muito quente sempre que eu ligava a placa e estava efetivamente atuando como um curto-circuito entre sua entrada de + 5V e o terra do sinal. Dessoldei o ATmega com ar quente e testei o FET do canal N FET_LOAD para ver se estava frito. De fato, ele falhou de tal maneira que não seria mais ligado ou desligado completamente quando uma tensão de portão fosse aplicada a +5 ou terra de sinal, mas em vez disso estivesse operando em algum lugar na zona do crepúsculo. Estava caindo cerca de 2,3 volts enquanto conduzia ~ 200 mA, estando "ligado" ou "desligado" quando uma carga foi conectada ao conector do barril.

Palpite

Houve um palpite de que, porque o FET foi danificado, o vetor de dano ao ATmega pode ter sido causado pela transmissão de alta tensão através do dreno do FET para o seu portão e para o MCU. Fiz alguns testes subsequentes com tensões mais baixas fornecendo o trilho de 12V. Observe que as três primeiras imagens são basicamente as mesmas, mas com correntes de pico diferentes. Quando o ATmega é desligado (devido à queda de tensão no trilho Vbat +), o sinal LOAD_GND_ENABLE fornecido pelo MCU (azul, abaixo) por sua vez fica baixo, cortando a chave FET_LOAD .

Lenda:

CH1 = Tensão através de Rshunt (0,005 ohm) CH2 = Tensão no sinal LOAD_GND_ENABLE (conectado ao ATmega)

Vbat + fornecido em 6V:

insira a descrição da imagem aqui

Vbat + fornecido em 7V:

insira a descrição da imagem aqui

Vbat + fornecido em 8V:

insira a descrição da imagem aqui

Vbat + fornecido em 9V:

insira a descrição da imagem aqui

Nesse último, a corrente nunca parou de aumentar e o sinal LOAD_GND_ENABLE deu uma dança descolada, mas, ao todo, parece que os limites máximos nunca foram violados no pino LOAD_GND_ENABLE (pelo menos eu acho que não ... Eu só tenho um escopo de 2 canais e teria que ter medido o trilho de + 5V para saber qual é a tensão em LOAD_GND_ENABLE wrt Vcc).

Próximos passos

Eu só tenho 1 placa restante que pode ser sacrificada, portanto meu plano é:

  1. Use um ATmega328PB em branco para que todos os seus pinos sejam padronizados para alta impedância sem periféricos configurados / inicializados. Repita o teste de curto-circuito para ver se o ATmega328PB ainda fica com fumaça. Se não funcionar, o MCU deve ter falhado porque estava fornecendo / afundando muita corrente em um de seus pinos configurados como saída enquanto estava executando o firmware nos testes anteriores.

  2. Teste com um ATmega328PB montado em uma placa de interrupção (infelizmente este chip não vem em pacotes DIP) conectado ao PCB via flywires. Seletivamente, comece a conectar um único fio de cada vez, executando o teste e ver qual fio acaba sendo o responsável por fritar o ATmega328PB.

  3. Peça um novo PCB de amostra com layout alterado, de modo que todos os traços que se conectem ao ATmega328PB sejam conectados por pontes de solda que possam ser soldadas à mão enquanto eu testo. Dessa forma, o teste de curto-circuito (e qualquer outro teste) pode ser realizado com o ATmega conectado a um número limitado de sinais por vez e facilita a conexão de todos os outros circuitos externos a essas pontes de solda para controlá-los independentemente do ATmega .

Sim, é realmente uma pergunta (s)!

E a pergunta (s) é:

  • alguém vê alguma coisa aqui que eu não. Isso é óbvio? Espero que não seja óbvio ...
  • Qual seria o seu próximo passo?

5
+1 para o haiku e para uma pergunta detalhada completa muito bem feita. Mas, infelizmente, não tenho a experiência / conhecimento para começar a dar uma resposta.
manassehkatz-Reintegrar Monica

2
Uma taxa de amostragem de 1 segundo para corrente curta é MUITO LENTA. Assumindo que a peça em risco é um semicondutor, com região ativa de espessura de 10 mícrons, que 10 mícrons com uma Tau térmica de 1,14 microssegundo, é necessário detectar sobrecorrente (tão curta) bem rápido.
Analogsystemsrf 16/10

2
Coisas elétricos não funcionam depois de deixar a magia fumaça ...
Solar Mike

Eu gostaria que víssemos mais perguntas como essa. +1
Wossname

Respostas:


1

Eu acho que seu switch na linha LOAD_GND provavelmente é o culpado aqui, combinado com as linhas de detecção de jack desprotegidas para o micro (que eu observaria que estão conectadas ao LOAD_GND para qualquer jack em que NÃO haja um plugue inserido.

Considere o que acontece se você desligar o mosfet (o conector de detecção de linhas em qualquer soquete sem um conector inserido será conectado à tensão da bateria por meio de carga em curto-circuito, haverá fumaça); você deve ter pelo menos alguma resistência em série e um grampo na tomada detectar linhas (digamos 10k ou mais e um par de diodos), mas realmente não vejo o que o switch LOAD_GND realmente compra através de um switch lateral alto?

Aliás, a cena automotiva tem interruptores laterais altos controlados por lógica com controle de sobrecarga e detecção de corrente embutidos, que valem uma olhada.


Você está absolutamente certo. Muito conciso, muito certo. Graças a você, senhor.
macdonaldtomw

3

O trilho de 12 V possui um monte de tomadas cilíndricas DC expostas aos usuários finais. Então, naturalmente, decidi colocar uma chave de fenda em um deles para realizar meu teste de curto-circuito.

O que significa que você coloca + 12V na JACK_DETECTlinha desprotegida , fritando o MCU. Consulte "tensão em qualquer pino [..]" acima.

Redesenhe o circuito em que um curto-circuito entre VBAT+e JACKx_DETECTnão permita que a tensão no pino do MCU suba acima do VCC - por exemplo, com um resistor e um diodo.


0

Aparentemente, ainda não posso comentar. Mas mudei minha resposta para concordar com o exposto acima, com as seguintes observações.

Um item a que eu prestaria atenção é garantir que seus FETs estejam em um estado bem orientado (pull / pulldown) quando o ATMega estiver no estado de inicialização / redefinição. Os pinos são normalmente configurados no modo de entrada IIRC, o que faz com que a porta FET flutue e apresente uma unidade Vgs ruim, aumentando a resistência do canal. Se o fluxo de corrente entre as conexões de dreno e fonte for significativo, ele superaquecerá / destruirá o FET rapidamente.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.