Codice a barre

Il codice a barre è un codice di identificazione costituito da un insieme di elementi grafici a contrasto elevato destinati alla lettura per mezzo di un sensore a scansione e decodificati per restituire l'informazione in essi contenuta.

Storia 

L'idea dei codici a barre fu sviluppata da Norman Joseph Woodland e Bernard Silver, all'epoca studenti di ingegneria dell'Università di Drexel. Il 7 ottobre 1948 l'idea nacque dopo aver ascoltato le esigenze di automatizzare le operazioni di cassa da parte del presidente di un'azienda del settore alimentare.

Una delle prime idee era stata quella di utilizzare il Codice Morse stampato ed esteso in senso verticale, realizzando così barre strette e barre larghe. In seguito utilizzarono dei codici a barre ovali e brevettarono la loro invenzione per la prima volta nel 1952.

I primi tentativi di riconoscere i codici a barre con un fotomoltiplicatore originariamente utilizzato per la lettura ottica delle bande audio dei film non ebbero successo: l'eccessivo rumore dei dispositivi termoionici, il calore generato dalla lampada utilizzata per l'illuminazione e il peso risultante dall'insieme erano ostacoli insormontabili in quanto le lampade allo xeno, l'unica fonte luminosa all'epoca abbastanza intensa, avevano prezzi improponibili, specie quelle a flusso continuo.

Il successivo sviluppo della tecnologia laser permise ai lettori di essere costruiti a prezzi più accessibili e lo sviluppo dei circuiti integrati permise la decodifica vera e propria dei codici. Silver morì nel 1963 a soli 38 anni, prima di vedere le numerose applicazioni pratiche del suo brevetto.

Nel 1972, un grande magazzino di Cincinnati fece degli esperimenti con un lettore con l'aiuto della RCA, ma i codici a barre ovali si macchiavano facilmente o si producevano delle sbavature durante la stampa, per cui l'esperimento fu un insuccesso. Nel frattempo, Woodland sviluppò presso IBM i codici a barre lineari, che furono adottati il 3 aprile 1973 con il nome "UPC" (Universal Product Code). Il 26 giugno 1974 presso un supermarket a Troy, nell'Ohio, il primo prodotto (un pacchetto di gomme americane) veniva venduto utilizzando un lettore di codici a barre prodotto dalla Photographic Sciences Corporation. Quel pacchetto di gomme si trova ora nello Smithsonian's National Museum of American History. Nello stesso anno si pensò di introdurre anche in Europa un sistema simile che fosse compatibile con UPC, così nel 1977 venne fondata a Bruxelles dai rappresentanti di 12 Paesi europei, tra cui l'Italia, la European Article Numbering Association che in seguito venne chiamata EAN e che dal 2005 è conosciuta a livello internazionale col nome di GS1. Nel 1978 nasce in Italia quella che oggi è GS1 Italy: si chiama Indicod ed è formata da 60 imprese associate, che oggi sono diventate circa .

Nel 1992, Woodland ha ricevuto dal presidente statunitense George H. W. Bush la medaglia nazionale per la tecnologia.

Tipologia 
I codici a barre si dividono in codici lineari e codici bidimensionali (Matrix).

Lineari
Tra i tipi più diffusi in Italia, senz'altro si trova il codice EAN (European Article Number) che viene utilizzato nella grande distribuzione, seguito dal Farmacode o codice 32 (una rielaborazione matematica del Codice 39), adottato per l'identificazione dei farmaci e delle specialità vendibili al banco nelle farmacie. Sempre nella grande distribuzione, si può trovare lo Universal Product Code per i prodotti importati da Regno Unito, Australia, Nuova Zelanda, Canada, Stati Uniti. Sempre nell'ambito della grande distribuzione, a partire dal 2014 è possibile usare la famiglia di codici a barre GS1 DataBar per la sua caratteristica di memorizzare un maggior numero di informazioni in minor spazio.
Nell'ambito industriale hanno trovato grande diffusione il codice 128 (soprattutto attraverso lo standard GS1-128), il codice 39 (alfanumerico) e il 2/5 (si legge 2 di 5) interlacciato (anche nello standard ITF-14). A seconda del tipo di codice adottato vi sono dei limiti nel ridimensionamento, nel numero e nel tipo caratteri rappresentabili. Ad esempio, il già citato codice EAN13 può rappresentare solo dodici caratteri numerici, il codice UCC/EAN-128, utilizzato nel settore medico, può rappresentare l'intero set di caratteri ASCII.

La maggior parte dei codici ha un codice di controllo (check digit) che l'unità di lettura è in grado di ricalcolare e verificare per assicurare la corretta lettura e l'integrità dei dati. Il codice a barre lineare è composto da un susseguirsi di elementi ovvero un susseguirsi di barre e spazi. La barra è l'elemento scuro del codice a barre, formato da un segmento verticale.

Lo spazio è l'elemento chiaro del codice a barre e separa due barre tra loro.

Per modulo si intende la larghezza dell'elemento (barra o spazio) più stretto. Gli altri spessori sono un multiplo del modulo.

Ciascuna sequenza di barre e linee deve essere preceduta e seguita da un'area di riposo (quiet zone) ovvero un'area chiara. Per permettere di capire se il codice a barre è stato letto per intero, l'informazione è preceduta da un carattere di start e seguita da un carattere di stop. Alcuni codici a barre hanno i caratteri di start e di stop uguali tra loro (es. CODE 39), in altri sono diversi (es. code 128). La caratteristica di avere i caratteri di start e stop diversi è usata da alcuni codici a barre per determinare la direzione del codice a barre e quindi permettere la lettura da entrambi i sensi. Per permettere la correttezza della lettura del codice a barre, è previsto un codice di controllo. In alcuni codici a barre il codice di controllo è esplicito e fa parte dell'informazione (ES. EAN e UPC), in altri, il codice di controllo è implicito e non fa parte dell'informazione (es. Code 128).

Si definiscono codici a barre discreti, i codici a barre lineari in cui solo le barre portano l'informazione. Nei codici continui sia le barre che gli spazi portano informazioni. Nei codici a barre discreti, ogni carattere del codice a barre ha lo stesso numero di barre e spazi e ne rende quindi facile la rappresentazione con un font di caratteri (es. Code 39). Nei codici a barre continui, ciascun carattere può avere una lunghezza diversa. Tra i codici a barre lineari, ce ne sono alcuni che per gli elementi (barre e spazi) prevedono solo due spessori (largo e stretto). Altri prevedono un numero variabile di spessori. Per quelli con due soli spessori, il rapporto tra la larghezza degli elementi stretti e quelli larghi è compreso tra 2 e 3. Ciascun tipo di codice a barre definisce i caratteri ammessi (es. solo numerici, alfanumerici, alcuni caratteri speciali). Alcuni di questi portano nel loro nome il numero massimo di caratteri rappresentabili (es. code 128 si chiama così perché può rappresentare 128 simboli, code 39 può rappresentare 39 simboli diversi). Per altri tipi di codici a barre la lunghezza del codice è fissa: EAN 13 ha una lunghezza fissa di 13 caratteri, UPC A di 12 caratteri. La specifica CODE 128C del code 128 prevede una lunghezza di cifre pari (in quanto in ogni elemento vengono memorizzate due cifre numeriche). Alcuni tipi di codici a barre possono essere Stacked ovvero impilati. Un esempio è dato dai GS1 DataBar Stacked Omnidirectional, GS1 DataBar Expanded Stacked e GS1 DataBar Stacked

Bidimensionali (Matrix)
Sono codici a barre a 2 dimensioni, adatti per essere letti con apparecchi fotografici e smartphone.

Lettura 

La tipologia dei lettori di codici a barre è andata ampliandosi con l'avvento di nuove tecnologie e con la miniaturizzazione della componentistica elettronica.

Tipo di collegamento 
Oltre ai lettori di codice a barre collegati ad un personal computer o ad un registratore di cassa, ci sono lettori dotati di memoria e quindi in grado di immagazzinare un certo numero di letture prima che vi sia la necessità di scaricarle utilizzando un'unità base (detta calamaio nel caso delle penne ottiche). Altri lettori sono dotati di un trasmettitore di piccola potenza per comunicare in tempo reale ad un'unità ricevente i dati che vengono letti.

Tecnologia di lettura 
Per quanto riguarda i codici a barre lineare, la tecnologia prevalente e più affidabile impiega uno o più raggi laser, abbinato di solito ad una testina oscillante e in taluni casi ad un sistema di specchi, al fine di moltiplicare le probabilità che qualsiasi codice stampato su un oggetto venga letto al primo tentativo.
Esistono anche dei lettori più economici che utilizzano una barra di LED per illuminare i codici a barre e un sensore CCD (Charged Coupled Device). Si ottengono così dispositivi più leggeri e più resistenti, adatti per scanner da impugnare, che però devono essere portati quasi a contatto con i codici a barre da leggere. Inoltre, in ambito industriale, le ultime tecnologie permettono la lettura del codice a barre tramite l'acquisizione di un'immagine fornita da un sistema video. Questo, tramite l'apposito software, permette di "fotografare" l'oggetto, riconoscere nella fotografia il codice a barre da leggere e successivamente interpretarlo.

Per quanto riguarda i codici a barre bidimensionali, la tecnologia più diffusa è quella fotografica.

Applicazioni 
Qualsiasi informazione utile alla gestione del magazzino e del movimento delle merci può essere codificata con codici a barre.
La spesa per la loro stampa è infatti spesso trascurabile, visto che il relativo disegno è solitamente inserito direttamente nel bozzetto dell'etichettatura o dell'imballaggio della merce.
Nel caso in cui la stampa e l'applicazione dei codici a barre avvengano in fasi successive, esistono sistemi di stampa a trasferimento termico o laser che rendono l'operazione non solo veloce, ma anche affidabile come la stampa offset.

Anche le pubblicazioni e i periodici, per facilitare l'identificazione e la classificazione, utilizzano i codici a barre, come previsto dai sistemi internazionali di codifica ISBN e ISSN.

I codici a barre permettono l'identificazione dei convogli in transito in alcune tratte ferroviarie o nelle linee della metropolitana.

Il codice a barre è presente anche nel retro della tessera sanitaria e codifica il codice fiscale.

Si possono trovare codici a barre anche sulle carte fedeltà, usati per rappresentarne il codice identificativo che è associato al titolare della carta stessa.

Il GSI Digital Link e l'evoluzione del codice bar che permette di integrare informazioni quali il numero di Lotto, la data di scadenza e un link ipertestuale a una pagina che contiene informazioni sulla composizione del prodotto e le modalità di riciclo.

Nella cultura di massa

L'Apocalisse e il numero della Bestia
Secondo una leggenda metropolitana i codici a barre lineari applicati su tutti i prodotti commerciabili nel mondo occidentale contengono in forma cifrata il numero 666, il cosiddetto numero della Bestia: tale numero sarebbe rappresentato dalle tre barre di divisione, di forma uguale, delle quali una centrale separa la prima parte del codice dalla seconda, e le altre due sono poste al principio e alla fine del codice: tali barre sono in effetti formate da due righe sottili di uguale misura, identiche a quelle rappresentanti nel codice il numero 6.
Tale combinazione ha dato adito a molte congetture: in particolare trovando una corrispondenza con un passo di una delle profezie dell'Apocalisse di san Giovanni () che riporta:

Tuttavia le tre barre di separazione, pur richiamando quella corrispondente al numero 6, non rappresenterebbero alcuna cifra all'interno del codice stesso: sono semplicemente linee di riferimento utilizzate dai dispositivi di lettura per capire dove inizia e dove finisce lo stesso.

Nel film Hitman - L'assassino il personaggio presenta un codice a barre sulla nuca.

Note

Voci correlate 
 Codice QR
 European Article Number
 Farmacode
 Lettore di codice a barre
 Nintendo e-Reader
 QRpedia
 Semapedia

Altri progetti

Collegamenti esterni