joi, 4 septembrie 2008

Codul de bare EAN-13

Sistemele de recunoastere automata (Automatic Identification Systems) sunt una dintre cele mai impresionante aplicatii ale tehnologiei moderne. Prin acestea devine extrem de eficienta culegerea, codificarea si prelucrarea datelor. Sistemul de simboluri barate (bar code) este unul din modurile de identificare automata a datelor de catre calculatorul electronic. Prin acest sistem de semne se pot codifica informatii despre persoane, obiecte, produse comerciale etc.

Motivul folosirii bar code este acela ca sirul de bare verticale este usor de citit de sistemele de identificare (light pens) ale computerelor. Astfel, recunoasterea diverselor produse devine mai rapida. "Citirea" numarului se face prin trecerea pe deasupra codului barat a unei raze laser subtiri care este reflectata in mod diferit, in functie de liniile negre sau albe. Succesiunea de linii negre si albe este unica pentru fiecare cifra zecimala (0-9).

Tehnica de simbolizare prin intermediul sistemului barat este insotita de mai multe tipuri de codificare. Fiecare tip corespunde unei anumite tehnici si necesitati profesionale. Prin excelenta insa sunt folosite astazi tipurile UPC-A (Universal Product Code = Cod Universal de Produs) pentru SUA si Canada, si EAN-13 (European Article Numbering = Numerotarea Europeans a Articolelor) pentru Europa si restul lumii. Dintre aceste doua tipuri cel din urma va fi folosit pentru stabilirea unui cod numeric matricol unic (C.N.M.U.) pentru fiecare individ, cod ce urmeaza a fi inscris pe noile cartele europene de identitate.

Protestele impotriva acestor doua sisteme sunt, in general bazate pe urmatoarele aspecte:

1) Prin utilizarea codului numeric matricol unic (C.N.M.U.) pentru marcarea tuturor actelor personale de interes social (buletin, carte de identitate, permis de conducere, pasaport, carte de munca etc.) devine posibila (vezi, de pilda, legea 2472/1997 aprobata de guvernul Greciei), prin intermediul bazelor de date detinute de calculatoarele electronice, urmarirea si supravegherea activitatii private a individului, in orice tara conectata la sistem.

2) Al doilea aspect este insasi utilizarea numarului 666 ca adaos unic la codul de identitate personal al oricarei persoane, devenind identitate proprie a fiecaruia, asa cum numarul matricol personal este codificare a numelui fiecarei persoane si deci identitate personala. Ori acest lucru este in contradictie cu constiinta crestinilor.

Studiind aceste doua tipuri, deoarece ele sunt incriminate ca avand legatura cu numarul 666 (adica au trei simboluri barate permanente care sunt identice cu simbolul numarului 6), se pune intrebarea: au sau nu aceste simboluri legatura cu cifra 6?

a. Comparatie optica

Sistemul EAN-13 este denumit astfel deoarece codul numeric al oricarui produs este alcatuit din 13 cifre. Prima cifra a numarului se scrie ca cifra separata, la stanga codului barat, in timp ce restul de 12 cifre sunt scrise in doua segmente despartite intre ele printr-unul din cele trei caractere de control ale codului. Aceste trei simboluri barate, de la inceputul, mijlocul si finalul acestor etichete ale tipurilor de codificare se numesc caractere de control sau caractere de protectie (Guard Bars sau Safety Bars). Primele sapte cifre ale numarului codului reprezinta tara de provenienta si producatorul articolului respectiv, iar urmatoarele cinci codifica tipul produsului. Ultima cifra este o cifra de control prin care computerul verifica citirea corecta a codului.

Asadar, cele doua grupuri de cifre sunt incadrate de catre caracterele Guard Bars (Forma etichetelor care insotesc tipurile EAN-13 si respectiv UPC-A). Impresia optica este ca linia dubla a caracterului de control este identica cu linia dubla a numarului 6. Deci, prin folosirea celor trei caractere de control se pare ca numarul produsului este incadrat invariabil de trei de 6.

De ce atata insistenta in folosirea celor trei caractere de control, din moment ce ating sensibilitatea religioasa a atator oameni? Este adevarat ca acest caracter este, din punct de vedere tehnic, potrivit pentru a fi folosit drept caracter de control la aceste doua tipuri de codificare. Aceasta insa a fost de folos doar in faza de inceput. De ce nu s-a intrebuintat un alt numar pentru a reprezenta acest simbol, ci numarul 6? Si de ce nu s-a facut un alt proiect, pentru a nu fi nevoie de intrebuintarea acestor caractere? Ca este posibila si alta conceptie se vede din multimea tipurilor de codificare. Se poate observa eticheta tipului Interleaved 2 of 5. Acest cod s-a realizat fara a fi nevoie de simbolurile controversate de mai sus, identice cu cifra 6. Deoarece nu exista caracter de control central, numarul de cifre ale etichetei acestui tip este 40. Aceasta inseamna ca se putea ca proiectarea tipurilor EAN-13 si UPC-A sa fie lipsita de intrebuintarea celor trei Guard Bars, folosindu-se un design diferit. De asemenea, se putea ca planul initial sa fie revizuit, indiferent de costuri, daca ar fi existat respect pentru sensibilitatea crestinilor pe tema 666. Insistenta de pana acum in folosirea cu predilectie a tipurilor EAN-13 si UPC-A demonstreaza insa lipsa acestei consideratii.

Este suficienta comparatia optica a celor trei caractere de control, caractere invariabile, cu numarul 6 pentru a nelinisti orice crestin ortodox. Dar chiar si numai sensibilitatea in fata unei asemenea legaturi ar fi trebuit sa fie luata in considerare de catre forurile economice si profesionale. Din pacate, lucrurile nu se petrec astfel.

b. Comparatia la nivel digital

Analiza care urmeaza demonstreaza ca numarul 6 si cele trei caractere de control (Guard Bars) nu sunt identice doar din punct de vedere optic, ci sunt asemenea si in reprezentarile lor binare. Aceasta rezulta din investigarea procesului de recunoastere al etichetei (decoding process).

Dintru inceput trebuie sa mentionam ca sursele noastre de documentare sunt informatiile tehnice furnizate de firmele Adams Communications, Hewlett Packard, Infinite Graphics, apoi ale organizatiilor The Bar Code Center, Uniform Code Council si EAN Association, precum si diverse lucrari stiintifice ale mai multor universitati.

1. Codificare

Este foarte important sa cunoastem insemnatatea procesului de codare (Encoding process), adica a procesului de proiectare- reproducere a etichetelor. Un encoding precis duce la un decoding sigur. De aceea, tehnicile de Encoding sunt amanuntite si sunt insotite de principii precise pentru fiecare tip de codificare. Codificarile pentru EAN-13 si UPC-A sunt insotite de urmatoarele procese:

De pilda, pentru inregistrarea unui nou produs comercial, se solicita acordarea unui numar de cod de catre organismul competent (Uniform Code Council), asa cum, de exemplu, se acorda nurnerele ISBN pentru publicatii. Acest numar de cod este scris in obisnuitul sistem numeric zecimal. Cum se face codificarea? Potrivit tabelului 1 numarul zecimal este transformat intr-un numar binar (scris in sistemul numeric binar). Folosind cheile numerice (number keys) este obtinuta reprezentarea grafica a etichetei Bar Code. Apoi companiile de tiparire a etichetelor, prin diferite tehnici de reproducere, tiparesc numarul digital in forma finala a codului barat.

In acelasi timp se adauga etichetei si caracterele de control (Guard Bars) care ingradesc numarul.

Proiectantul numerelor digitale a intrebuintat o logica prin care sa se urmareasca recunoasterea corecta si fara erori a etichetelor intr-un mod cat mai simplu, atat in sensul citirii obisnuite (de la stanga la dreapta), cat si invers. De asemenea, proiectarea numerelor este astfel facuta incat sa asigure corectarea erorilor de viteza a mainii prin tehnica de recunoastere manuala (cu Wand Scanner ori POS - point of sales - folosit la casele de plata ale magazinelor). Pentru indeplinirea acestei necesitati, toate caracterele au o latime de sapte unitati de masura (7 module)

Ansamblul de bare si spatii care alcatuiesc codificarea unei cifre zecimale se numeste caracter. Fiecare caracter este deci format din sapte unitati de masura denumite module.

Sa luam, de pilda, numarul zecimal 3.

In sistem binar, acesta se va scrie 011101. Din tabel se observa ca cifra 0 binara se reprezinta grafic printr-un interval alb (space = spatiu) iar cifra 1 binara se reprezinta grafic printr-o linie neagra (bar = bara). Dimensiunea unei linii (bar) sau a unui spatiu (space) se numeste unitate de marime (modul). Deci pe eticheta finala bar code cifra 3 va fi redata printr-o linie neagra (egala cu 4 bars), una alba (egala cu 1 space) si inca o linie neagra (egala cu 1 bar), deoarece toate cifrele din eticheta sunt reprezentate cu 2 linii negre despartite printr-una alba,

In procesul de codificare, fiecare cifra zecimala poate fi citita in trei moduri de alcatuire a succesiunii space-bar, generand trei seturi de numere binare: set A, set B si set C. Seturile A si B se folosesc la codificarea cifrelor segmentului stang al codului barat, in timp ce setul C se utilizeaza pentru segmentul drept. Primul set (set A) si ultimul (set C) reprezinta fiecare codificarea inversa a celuilalt. In schimb, setul B reprezinta codificarea inversa a setului A inversat.

Astfel,

6 set A = 0101111

0 set A = 0001101

6 set B = 0000101

0 set B = 0100111

6 set C = 1010000

0 set C = 1110010

Exista o alta caracteristica a acestei codificari, si anume aceea ca toate numerele seturilor A si B sunt impare (Incep cu 0 si se termina cu 1), iar toate numerele setului C sunt pare (incep cu 1 si se termina cu 0).

In concluzie, codificarea EAN-13 are trei caracteristici de baza:

i) fiecare numar este constituit din 4 altemante, 2 negre si 2 albe

ii) exista fenomenul de inversare a codificarii aceleiasi cifre. Intre set A si C exista inversare simpla, intre B si C rasturnare completa a numarului, iar intre A si B inversare rasturnata.

iii) Numerele seturilor A si B sunt impare, iar ale setului C pare.

2. Decodificarea

In procesul de recunoastere a etichetei (decoding), la citirea barelor cu ajutorul scannerului, barele negre vor genera un impuls electric negativ, iar cele albe unul pozitiv . Aceste impulsuri sunt modulate in latime (pulse Width modulation) adica scannerul trimite la computer impulsuri electrice de un anumit interval de timp, in functie de latimea bandelor negre si albe ale etichetei. Fiecare masuratoare a semnalului este generata la sesizarea de catre scanner a inceputului unei noi linii negre.

Lantul de impulsuri analogice negativ-pozitiv va deveni in logica computerului un sir de semnale 0 si 1 (0 pentru spatii libere, 1 pentru bare negre). Odata cu decodificarea lantului de impulsuri, computerul controleaza masuratorile de timp ale fiecarui impuls comparandu-le cu cele standard si astfel recunoaste numarul care a fost codificat pe eticheta.

La decodificare, fiecare modul este transformat intr-un impuls electric cu durata de 0,33 msec. Prin urmare, fiecare caracter (simbol al unei cifre zecimale) genereaza un impuls total de 0,33X7=2,31 msec.

Guard bars

Vom demonstra acum ca barele de control (Guard bars) genereaza acelasi impuls ca cifra 6 si deci sunt recunoscute de computer ca flind trei de 6: 6-6-6.

Locul celor trei Guard bars este invariabil: la stanga, la mijloc si la dreapta codului. In dreapta si in stanga, aceste caractere sunt completate cu un spatiu alb denumit quiet zone, zona de liniste. Iar in ansamblu eticheta este inconjurata de un interval alb numit light margin (margine luminoasa) care, la EAN - 13 este de aproape 10 module.

Surs: Razboiulnevazut