Lo scorso luglio, durante il bring-up di un nostro prototipo, una scheda figlia saldata a mano sulla scheda madre attraverso le piazzole castellate si è accesa al primo colpo: assorbimento giusto, alimentazioni e ingressi analogici esattamente come da progetto. Eppure la linea di clock del bus I2C restava bassa nonostante le resistenze di pull-up, e la piccola memoria che identifica la scheda non rispondeva: difetti di saldatura, risolti rifondendo quattro piazzole. Nella stessa settimana due schede figlie su cinque di un altro tipo non hanno risposto sul bus di identificazione al primo montaggio. La loro memoria ha un package senza terminali, con le piazzole sotto il corpo: un giunto freddo lì non si vede. Un controllo del tipo “si accende?” le avrebbe promosse tutte.

Li abbiamo localizzati senza appoggiare una sonda. Attraverso l'interfaccia di debug SWD abbiamo letto il livello del pin del microcontrollore, poi abbiamo configurato lo stesso pin come ingresso con pull-up e lo abbiamo riletto: così si distingue un cortocircuito da un circuito aperto. È una versione fatta a mano di quello che il boundary scan fa in modo sistematico – usare la logica dei componenti per verificare le connessioni dove le sonde non arrivano.

Quella scheda era costruita male e si accendeva bene. Quando si parla di collaudo di una scheda elettronica si mescolano spesso proprio queste due domande: la scheda è costruita bene? e la scheda fa quello che deve? Alla prima rispondono il test in-circuit (ICT), il flying probe e il boundary scan; alla seconda il test funzionale. Il confronto test ICT vs test funzionale non ha un vincitore: nessuno dei quattro metodi sostituisce gli altri, e la scelta giusta dipende da cosa si vuole trovare, dal volume e da come è stata progettata la scheda.

ICT, flying probe e boundary scan cercano difetti di fabbricazione: un componente sbagliato, una saldatura aperta, un cortocircuito. Il test funzionale verifica che la scheda funzioni da alimentata, firmware compreso. Quasi ogni prodotto in serie ne combina più di uno.

Test in-circuit (ICT): il letto di aghi

L'ICT usa una fixture dedicata, il letto di aghi: una piastra con contatti a molla che, chiusa sulla scheda, tocca contemporaneamente tutti i punti di test. Il tester misura i componenti uno per uno – resistenze, condensatori, diodi – e cerca cortocircuiti e circuiti aperti, in gran parte a scheda non alimentata.

  • Punti di forza: una volta pronta la fixture il test di ogni scheda è rapido, e la diagnosi è puntuale: indica quale componente o quale rete è difettosa.
  • Limiti: la fixture è specifica del prodotto, costa e richiede tempo; servono punti di test accessibili su ogni rete da verificare, e una revisione del layout può richiedere di modificare la fixture.
  • Quando usarlo: progetti stabili e volumi di produzione che ripagano la fixture.

Un letto di aghi, però, è un modo di contattare la scheda, non un metodo di test. Per un banco a letto d'aghi che abbiamo realizzato di recente la richiesta parlava di “ICT”; quello che serviva davvero era alimentare la scheda, programmarla e verificarne il funzionamento attraverso gli aghi, senza misurare i singoli componenti. Lo stesso progetto ha ricordato due regole pratiche: un punto di test troppo vicino a un componente alto non si raggiunge, e va spostato in progettazione o escluso; un ago che non tocca bene la piazzola si presenta come un guasto della scheda, finché non lo si regola.

Flying probe: il test senza fixture

Nel flying probe le sonde sono montate su assi motorizzati e toccano i punti di test uno dopo l'altro, seguendo un programma generato dai dati di progetto della scheda. Le misure sono in buona parte le stesse dell'ICT, ma senza una fixture dedicata da costruire.

  • Punti di forza: nessuna fixture, quindi tempi e costi di avvio bassi; una nuova revisione richiede di aggiornare il programma, non di rifare l'attrezzatura.
  • Limiti: le sonde si muovono punto per punto, quindi il test di ogni scheda è più lento che su un letto di aghi.
  • Quando usarlo: prototipi, prime serie, piccoli lotti, prodotti con molte varianti o revisioni frequenti.

Boundary scan: dove le sonde non arrivano

Il boundary scan è standardizzato come IEEE 1149.1 ed è noto come JTAG dal Joint Test Action Group, il gruppo di produttori di semiconduttori le cui raccomandazioni sono diventate la base dello standard. Usa la logica di test integrata nei componenti compatibili: una catena di celle ai pin, controllata attraverso una porta di test con quattro segnali – TCK, TMS, TDI e TDO – più un TRST opzionale. Pilotando i pin dall'interno dei componenti si verificano le interconnessioni anche dove nessuna sonda può arrivare, per esempio sotto un BGA.

Lo stesso accesso si usa spesso per programmare e fare debug, ma non è la regola: molti prodotti caricano il firmware con un bootloader, via USB (DFU) o via CAN. Sulla scheda di quel banco a letto d'aghi la porta JTAG completa è portata su punti di test, ma il prodotto si programma via USB e il collaudo non usa il JTAG: le piazzole servono solo come SWD, l'interfaccia di debug a due fili dei core ARM, per la diagnosi.

  • Punti di forza: copertura delle reti senza accesso fisico, nessuna fixture complessa, utile su schede dense.
  • Limiti: copre solo le reti collegate a componenti che implementano lo standard, e la catena JTAG deve essere prevista nello schema.
  • Quando usarlo: schede con BGA, microcontrollori, FPGA o processori, e poco spazio per i punti di test.

Test funzionale: la scheda al lavoro

Il test funzionale alimenta la scheda e la fa lavorare: stimola gli ingressi, misura le uscite, comunica sui bus come CAN o seriale, verifica tensioni, correnti e tempi rispetto a limiti definiti. Trova quello che gli altri metodi non vedono: un firmware sbagliato, una prestazione analogica fuori tolleranza, un comportamento dinamico che emerge solo con la scheda accesa. È anche l'unico che prova la scheda nel modo in cui la userà il cliente.

Richiede una fixture di interfaccia, gli strumenti di misura e un software che esegua la sequenza e registri i risultati per numero di serie. In produzione è tipicamente il collaudo fine linea, il cui costo cresce con il volume se resta manuale.

Come combinarli

La combinazione dipende soprattutto dalla fase del prodotto e dal volume:

  • Prototipi e prime serie: flying probe per i difetti di montaggio e test funzionale, anche manuale, per validare il progetto.
  • Produzione stabile a volumi medio-alti: ICT o boundary scan per i difetti di fabbricazione, test funzionale automatico a fine linea.
  • Schede dense, con BGA e poco spazio per i punti di test: boundary scan al posto di buona parte dell'ICT, più il test funzionale.

In ogni scenario il test funzionale resta: i metodi strutturali dicono che la scheda è montata come da progetto, non che il progetto funzioni.

Chiedi la copertura, non solo il metodo

Dire “facciamo l'ICT” non dice quanta parte della scheda venga davvero verificata. Il dato utile è la copertura: quali componenti e quali reti controlla ciascun metodo, e quali lascia scoperti. Chiedila al produttore o a chi progetta il banco, metodo per metodo: le zone scoperte di un metodo sono quelle che l'altro deve coprire, e un difetto che nessuno dei due vede arriva al cliente. Nel caso raccontato in apertura il test funzionale ha trovato i difetti perché interrogava proprio quel bus: una rete che nessuna prova esercita è una rete che nessuno ha controllato.

La strategia di test si decide in progettazione

Punti di test accessibili, una catena JTAG raggiungibile da un connettore, un'interfaccia per la fixture funzionale: sono scelte di design for testability che costano poco quando si disegna la scheda e molto dopo, quando il layout è chiuso. Sulle nostre schede con microcontrollore prevediamo di regola una piazzola di programmazione per cavo a molle, tipo Tag-Connect, senza connettore montato: serve in produzione e in assistenza e non aggiunge componenti. Dove possiamo, il collaudo passa dal bus: la scheda riporta su CANopen le proprie tensioni di alimentazione, le temperature e la diagnostica, così il banco di produzione ha bisogno solo del bus e dell'alimentazione. Dove ci sono punti di test, la fixture li raggiunge con pogo pin. Per questo nella progettazione elettronica conviene definire fin dall'inizio come verrà collaudato il prodotto, insieme a chi lo produrrà.

Non esiste il metodo di collaudo migliore in assoluto: esiste la combinazione giusta per una scheda, un volume e una fase del prodotto. Se stai definendo la strategia di test di una nuova scheda o vuoi rivedere quella attuale, guarda come lavoriamo sul testing e collaudo oppure contattaci: partiamo dallo schema e da quanti pezzi devi produrre.