Qualità di stampa dei codici a barre: verifica ISO/IEC 15416 e 15415 spiegata in pratica
La qualità di un codice a barre si misura con un verificatore secondo ISO/IEC 15416 (codici lineari) e ISO/IEC 15415 (codici 2D), che assegna un grado da A a F, o da 4,0 a 0. Che il tuo lettore lo legga non basta: il verificatore misura contrasto, bordi, difetti e zona di rispetto. Per gli EAN in cassa GS1 richiede almeno 1.5/06/660.
Lettore e verificatore: perché non sono la stessa cosa
Un lettore è progettato per leggere anche codici imperfetti: compensa, riprova, ricostruisce. Il fatto che il tuo lettore legga un codice dice poco su come lo leggerà un lettore diverso, in un'altra cassa, con altra luce. Un verificatore invece è uno strumento di misura calibrato: illumina il codice in condizioni standard e misura la riflettanza lungo più linee di scansione, confrontando i valori con le soglie della norma.
| Aspetto | Lettore | Verificatore |
|---|---|---|
| Scopo | Leggere il dato | Misurare la qualità del simbolo |
| Risultato | Letto / non letto | Grado per parametro e grado complessivo |
| Condizioni | Variabili | Illuminazione, apertura e geometria standard |
| Calibrazione | Nessuna | Con carta di calibrazione certificata |
| Quando serve | Sempre, in produzione | Per validare etichette, fornitori, nuove stampe |
Come si legge un grado come 1.5/06/660
Il risultato di una verifica si esprime in tre parti:
- 1.5: il grado complessivo, su una scala da 4,0 (A) a 0 (F). In ISO/IEC 15416 il grado di ogni linea di scansione è il peggiore tra i suoi parametri; il grado complessivo è la media su più linee.
- 06: l'apertura di misura, in millesimi di pollice: 06 significa un'apertura di 0,150 mm. Si sceglie in base alla X-dimension: aperture più piccole per codici più piccoli.
- 660: la lunghezza d'onda della luce in nanometri, cioè luce rossa, la stessa usata dalla maggior parte dei lettori.
| Lettera | Valore | Significato pratico |
|---|---|---|
| A | 4,0 (da 3,5) | Ottimo, si legge al primo passaggio con qualsiasi lettore |
| B | 3,0 (da 2,5) | Buono |
| C | 2,0 (da 1,5) | Accettabile, può richiedere più passaggi |
| D | 1,0 (da 0,5) | Scarso, letture difficili |
| F | 0 | Non conforme |
Per EAN-13 e UPC-A destinati alla lettura in cassa, le GS1 General Specifications indicano come requisito minimo 1.5/06/660. Altre applicazioni (etichette logistiche GS1-128, ITF-14 su cartone ondulato, GS1 DataMatrix in sanità) hanno requisiti propri, con aperture diverse: consulta le tabelle delle specifiche dei simboli GS1 per il tuo caso, partendo da GS1-128 e Application Identifier.
Cosa misura ISO/IEC 15416 sui codici lineari
| Parametro | Cosa misura | Causa tipica di un grado basso |
|---|---|---|
| Decode | Se il codice si decodifica con l'algoritmo di riferimento | Errori di codifica, larghezze molto sbagliate |
| Symbol Contrast | Differenza tra riflettanza massima e minima | Fondo scuro o colorato, barre grigie, termica sbiadita |
| Minimum Reflectance | Che le barre siano abbastanza scure rispetto al fondo | Inchiostro poco coprente |
| Minimum Edge Contrast | Contrasto minimo tra una barra e lo spazio accanto | Spazi stretti "chiusi" dall'inchiostro |
| Modulation | Uniformità del contrasto tra elementi larghi e stretti | Allargamento delle barre, substrato traslucido |
| Defects | Macchie negli spazi e vuoti nelle barre | Testina sporca o danneggiata, carta irregolare |
| Decodability | Margine delle larghezze rispetto alle soglie di decodifica | Barre troppo larghe o strette, X-dimension irregolare |
| Quiet zone | Presenza della zona di rispetto | Testo o bordi vicini: vedi zona di rispetto |
Per i codici 2D, ISO/IEC 15415 aggiunge parametri legati alla griglia: danneggiamento dei pattern fissi (i quadrati di posizione del QR, il bordo del Data Matrix), uniformità assiale e della griglia, correzione d'errore inutilizzata. Un grado basso di correzione d'errore inutilizzata significa che il codice si legge "consumando" la sua riserva di correzione: basta poco per renderlo illeggibile.
Difetti di stampa più comuni e rimedio
| Difetto | Causa probabile | Correzione |
|---|---|---|
| Riga bianca continua nella direzione di avanzamento | Elemento della testina termica bruciato o sporco | Pulisci la testina; se resta, sostituiscila |
| Barre "gonfie", spazi sottili chiusi | Densità o calore troppo alti, inchiostro che si allarga | Riduci la densità; applica riduzione della larghezza barre (BWR) in stampa industriale |
| Barre sbiadite o grigie | Densità bassa, nastro non adatto, testina sporca | Aumenta la densità, usa il nastro consigliato |
| Bordi sfrangiati | Velocità di stampa troppo alta, carta ruvida | Riduci la velocità, usa etichette più lisce |
| Barre irregolari dopo ridimensionamento | Immagine bitmap scalata in un documento | Genera il codice alla dimensione finale |
| Barre rosse o arancioni | Colore invisibile alla luce rossa del lettore | Barre nere o blu scuro su fondo chiaro |
Sulle stampanti termiche, l'orientamento conta: se le barre sono parallele alla direzione di avanzamento, un elemento bruciato della testina può creare una riga bianca dentro una barra e rendere il codice illeggibile; se sono perpendicolari, la riga attraversa il codice e il lettore può leggere sopra o sotto. Nel secondo orientamento però le larghezze dipendono dalla precisione dell'avanzamento della carta. Scegli in base alla stampante e verifica il risultato.
I colori contano. Molti lettori e i verificatori usano luce rossa a 660 nm: il rosso, l'arancione e il giallo riflettono quella luce come il bianco. Un codice con barre rosse su fondo bianco è invisibile al lettore, mentre barre nere su fondo rosso possono funzionare.
Controlli che puoi fare senza verificatore
Un verificatore è uno strumento professionale. Se non ne hai uno, alcuni controlli riducono molto i rischi:
- Controlla il dato. Leggi il codice nel test lettore e verifica la cifra di controllo con il calcolatore. Per codici GS1 con AI usa il decodificatore GS1.
- Misura la X-dimension e la zona di rispetto con una lente o un righello, come spiegato in codici piccoli e ad alta densità.
- Prova con lettori diversi. Un laser, un imager e la fotocamera di un telefono. Se uno dei tre fatica, il codice ha margini ridotti.
- Prova "a passaggio singolo". Ogni codice dovrebbe leggersi al primo passaggio. Contare i tentativi su venti letture dà un'indicazione pratica.
- Osserva con la lente barre e spazi: bordi netti, spazi puliti, nessuna riga bianca.
Questi controlli non sostituiscono una verifica ISO quando un cliente o la grande distribuzione la richiedono. Per informazioni sui servizi di verifica e sui requisiti per i codici GS1 in Italia, rivolgiti a GS1 Italy.
Caso tipico: un produttore alimentare stampa gli EAN con una stampante a getto d'inchiostro su cartoncino poroso. In azienda i codici si leggono, ma un distributore segnala letture difficili. La verifica evidenzia un grado basso di decodificabilità: l'inchiostro si allarga e ingrossa le barre. Riducendo la larghezza delle barre in fase di generazione, il grado sale oltre il minimo richiesto.
Domande frequenti
Un grado C è un problema?
Per gli EAN in cassa C (1,5) è il minimo accettato da GS1. È conforme, ma non lascia molto margine per l'usura durante il trasporto: punta a gradi più alti in produzione.
Ogni quanto conviene verificare?
A ogni nuovo layout, cambio di stampante, materiale o nastro, e periodicamente durante tirature lunghe. In stampa industriale la verifica è spesso a campione su ogni lotto.
Un'app che "verifica" i codici sul telefono vale come verificatore?
No. Un'app può dirti se il codice si legge e se il dato è corretto, ma non misura i parametri ISO con illuminazione e apertura calibrate.