La matematica della delusione

Il foglio di calcolo prometteva dieci anni. La presentazione marketing prometteva dieci anni. Le unità di test di convalida ingegneristica, che si trovano in un laboratorio climatizzato, funzionano ancora perfettamente. Eppure, sul campo—forse in un armadio umido di un servizio pubblico in Florida o in una rete di sensori agricoli nel medio Atlantico—le unità muoiono in sei mesi. Le batterie sono scariche.
Quando questo accade, l'istinto è incolpare la fonte di energia. Controlli i registri, verifichi gli ordini di acquisto e ti convinci che il distributore ti abbia inviato un lotto difettoso di CR2032. Presumi che il tasso di autoscarica sia stato falsificato o che la curva di derating della temperatura fosse ottimistica.
Quasi mai è la batteria. Le moderne celle primarie al litio di fornitori Tier 1 sono motori chimici straordinariamente coerenti. Se sono vuote, non hanno disperso energia nell'etere; l'hanno fornita a un carico. Il problema è che il carico non è il tuo microcontrollore o la tua radio. È il circuito stampato stesso.
La menzogna del flusso “No-Clean”
Il colpevole è solitamente un malinteso del termine “No-Clean.” Nel mondo dell'elettronica digitale ad alta velocità—pensa ai Raspberry Pi o alle schede madri dei laptop—il flusso “No-Clean” è un materiale standard e sicuro. Lascia un residuo chimicamente abbastanza benigno da non cortocircuitare una linea di alimentazione a 3,3V che trasporta ampere di corrente. L'impedenza di quel residuo può essere nell'ordine dei megaohm, che, per un alimentatore CPU, equivale praticamente a un circuito aperto.
Ma tu non stai costruendo un laptop. Stai costruendo un dispositivo a ultra-basso consumo (ULP) dove il budget di sleep è misurato in nanoampere. In questo ambito, “No-Clean” è una finzione di marketing. Il residuo di flusso lasciato dal processo di rifusione è composto da attivatori ionici—acidi progettati per dissolvere gli ossidi sui pad di rame per garantire una buona saldatura. Quando la scheda esce dal forno, quel residuo si indurisce effettivamente. Ma non è inerte. È igroscopico. Attira umidità dall'aria.
Con l'aumentare dell'umidità, quella crosta benigna si trasforma in un elettrolita conduttivo. Non stiamo parlando di un cortocircuito totale. Parliamo di un cortocircuito “morbido”: una resistenza parassita che si aggira tra i 10 e i 50 megaohm. In un dispositivo alimentato dalla rete elettrica, questo è rumore. In un dispositivo che cerca di dormire a 500nA, una resistenza parallela di 20 megaohm ai terminali della batteria o all'interruttore di alimentazione è una catastrofe. Assorbe un extra di 150nA continuamente, 24 ore su 24, indipendentemente dallo stato del firmware. Questa perdita invisibile è ciò che ruba i tuoi nove anni e mezzo di durata della batteria.
Esiste una pericolosa tendenza a cercare di risolvere questo problema con un rivestimento conformale. La logica sembra solida: se l'umidità è la causa, sigilla la scheda. Ma spruzzare uretano o acrilico su una scheda che non è stata lavata aggressivamente non è una soluzione—è una tomba. Stai semplicemente intrappolando i contaminanti ionici e l'umidità ambientale sotto il rivestimento. La corrosione continuerà, ora protetta dai tuoi tentativi di pulirla, e i dendriti cresceranno felicemente nella loro serra privata.
Il ponte invisibile: umidità e dendriti
Il meccanismo di guasto è raramente statico. Respira con l'ambiente. Ecco perché non puoi riprodurlo sul tuo banco in un ufficio climatizzato. La conduttività del residuo di flusso è non lineare e caotica; aumenta improvvisamente quando l'umidità relativa supera una soglia, spesso intorno al 60-70%.

Considera un caso generalizzato di un'installazione di misurazione intelligente. Le unità installate in sale server climatizzate durano per sempre. Unità identiche installate in contenitori esterni si guastano a grappolo durante la stagione delle piogge. Al microscopio, a volte si può vedere la prova fisica: la crescita dendritica. Sono cristalli metallici a forma di felce che crescono dal catodo verso l'anodo, alimentati dagli ioni metallici disciolti nel residuo di flussante. Non hanno bisogno di collegare completamente il gap per rovinarti. Devono solo ridurre abbastanza la resistenza di isolamento per far scaricare la batteria.
Questa migrazione è guidata dal campo elettrico. Più è compatto il tuo layout—componenti 0402, BGAs con passo di 0,5 mm—più alta è l'intensità del campo tra i pin, e più veloce avviene la migrazione. Il residuo non deve essere visibile a occhio nudo per essere fatale. Un monostrato di contaminazione ionica è sufficiente per collegare due pad su un microcontrollore, risvegliandolo dal deep sleep o semplicemente facendo perdere corrente da VCC a massa.
Il tuo multimetro ti sta mentendo
Parte del motivo per cui questa modalità di guasto persiste è che gli strumenti di ingegneria standard sono ciechi a essa. Non puoi diagnosticare una perdita di 50nA con un Fluke 87V. I multimetri portatili standard hanno una tensione di carico—una caduta di tensione interna—che disturba il circuito che stai cercando di misurare. Peggio ancora, fanno una media della corrente. Non possono vedere la natura dinamica di una perdita che potrebbe pulsare o variare.
Se stai facendo il debug della durata della batteria ULP, devi usare un Source Measure Unit (SMU) come un Keithley 2450, o almeno uno strumento specializzato come un Joulescope. Devi vedere il livello minimo. Devi verificare che quando il tuo firmware dice “sleep”, la corrente sia effettivamente piatta. Spesso, con uno strumento adeguato, vedrai il “creep”—la corrente che lentamente aumenta nel corso di minuti mentre la scheda si riscalda o mentre il residuo reagisce con l'ambiente. Se ti affidi a una lettura standard del multimetro di “0.00 uA”, stai volando alla cieca.
Il mandato della produzione
Non troverai la soluzione nel firmware o in una batteria più grande. La trovi nella casa di assemblaggio. La pulizia deve essere trattata come una specifica di progetto, non come un dettaglio di produzione.
Se stai progettando per una durata di 10 anni su una batteria a bottone, non puoi usare un processo standard “No-Clean”. Devi imporre un lavaggio. E non solo un'immersione in un secchio di IPA—quello sparge solo il grasso. Hai bisogno di un lavaggio acquoso in linea con saponificanti, seguito da un risciacquo con acqua DI e una cottura per rimuovere l'umidità.
Sarà una lotta. I produttori a contratto (CM) odiano le linee di lavaggio. Sono costose, richiedono manutenzione e rallentano la linea. Ti mostreranno schede tecniche del fornitore di flussante che affermano che passa IPC-J-STD-001. Devi ignorare questo. Quegli standard sono per l'elettronica generale, non per dispositivi al limite della fisica.
Devi richiedere test di Cromatografia Ionica. Hai bisogno di prove che la scheda sia chimicamente pulita, non solo visivamente pulita. Se il CM si rifiuta, o cerca di venderti un flussante “No-Clean” “migliore”, vattene. Il costo di un processo di lavaggio adeguato è pochi centesimi per scheda. Il costo di un intervento sul campo per sostituire un'unità morta è di centinaia di dollari. Fai i conti, e poi impone il lavaggio.
