Cod universal de produs

Versiunea actuală a paginii nu a fost încă examinată de colaboratori experimentați și poate diferi semnificativ de versiunea revizuită pe 2 noiembrie 2016; verificarea necesită 31 de modificări .

UPC sau Universal Product Code (codul universal de produs) este un standard american de coduri de bare conceput pentru a urmări produsele din magazine. UPC a fost dezvoltat în 1973 de George Joseph Laurer , inginer la IBM Corporation . În iunie 1974, primul scaner UPC al NCR a fost instalat la Supermarketul Marsh din Troy, Ohio . Pe 26 iunie 1974, casieria acestui supermarket a scanat primul articol, o cutie de 10 gume de fructe Wrigley .

Standardizare

UCC (Uniform Code Council, Inc.) din Statele Unite și ECCC (Electronic Commerce Council of Canada) din Canada au fost implicate în standardizarea și înregistrarea codurilor UPC. În 2005, aceste organizații au fuzionat cu asociația europeană EAN pentru a forma organizația globală de standardizare GS1 . „Organizația Națională GS1 din Rusia” este reprezentantul acestei organizații în Federația Rusă.

Tipuri de coduri:

UPC-A și echivalentul UPC-E
UPC-A UPC-E

Codul UPC conține doar cifre și nu litere sau alte simboluri.

Îmbunătățirea codului pentru utilizare în alte țări

UPC-ul din 12 cifre este precursorul Codului îmbunătățit european EAN-13 , care codifică 13 cifre. Codul UPC este un caz special, un subset al codului EAN-13. Codul UPC este convertit în codul EAN-13 prin adăugarea unui zero înaintea celor douăsprezece cifre ale codului UPC. Adică produsul, al cărui cod de bare îl vedem în figura pentru acest articol, va avea codul EAN-13: 0 036000291452. Din acest motiv încep codurile pentru produsele fabricate în SUA sau Canada în codificare europeană. de la zero.

Este important ca „hașura” în sine într-o astfel de transformare, adică modelul EAN-13 pentru codurile corespunzătoare UPC, să fie identică cu „hașura” UPC. În acest fel, s-a asigurat compatibilitatea codurilor americane pentru citire în Europa fără nicio retipărire a etichetelor sau reambalare a mărfurilor.

Pentru mai multe informații despre codul EAN-13 și despre modul în care acesta diferă de UPC, consultați Numărul articolului european .

Descrierea generală a structurii

Codul UPC este un cod de bare liniar simplu și aproape simetric. Simplitatea, simetria și imunitatea ridicată la zgomot se datorează tehnologiei insuficient dezvoltate la momentul creării acestor coduri.

Codul este format din 2 grupuri de cifre, câte 6 cifre în fiecare grup - stânga și dreapta. Grupurile de numere sunt mărginite de așa-numitele modele de contur de protecție sau de închidere (modele de gardă). Aceste șabloane conțin linii de o singură lățime care sunt utilizate pentru a sincroniza scanerul de coduri de bare. Prezența a exact trei astfel de câmpuri se datorează în primul rând posibilei aplicări a unui cod de bare pe o suprafață rotunjită. Și dacă acum aceasta nu este o problemă specială, atunci în momentul creării acestui cod, scanerul trebuia să cunoască lățimea unei singure linii la începutul, mijlocul și sfârșitul codului. Modelele de gardă stânga și dreapta constau din 3 linii de lățime unitară - două întunecate și una deschisă între ele. Șablonul mediu de protecție este format din 5 lovituri - trei deschise și două întunecate. Orice altceva sunt numere.

Fiecare cifră din grupul din stânga sau din dreapta este codificată folosind patru linii: două deschise și două întunecate. Fiecare cursă poate avea o lățime relativă de una, două, trei sau patru unități. Lățimea totală a cursei pentru o singură cifră este întotdeauna de șapte unități. Modelul de biți pentru fiecare cifră este proiectat astfel încât cifrele să fie cât mai diferite unele de altele. Lungimea maximă a unei zone întunecate sau luminoase nu poate depăși patru unități. Lățimea totală a întregului cod este întotdeauna de 95 de unități. Există 29 de linii deschise și 30 de linii întunecate în orice cod. Toate aceste soluții tehnice sunt importante pentru fiabilitatea și ușurința scanării acestui cod.

Prima cifră a codului - acesta este așa-numitul prefix - are o anumită semnificație logică, dar nu este atât de importantă din punct de vedere tehnic. Ultima cifră este un număr de verificare, este folosită pentru a detecta o posibilă eroare la citirea codului cu un scaner sau introducerea manuală a numerelor de cod de la tastatură.

Direcția de citire a combinației de curse nu contează - codul a fost conceput astfel încât să fie la fel de ușor de citit atât în ​​direcția înainte, cât și în cea înapoi (dacă produsul este răsturnat). De asemenea, nu contează ce design are întregul cod de bare - pozitiv sau negativ din punct de vedere fotografic: un cod de bare imprimat cu dungi deschise pe un fundal întunecat este citit în același mod ca și cu dungi întunecate pe un fundal deschis. Culorile de contur și de fundal nu trebuie să fie alb și negru, sunt posibile alte combinații de culori.

Codificarea numerelor

Tabel de codificare a codurilor de bare UPC-A cu model S L LLLLLMRRRRRR R E

Zona „liniștită” .
S
(începe)
L
(codul din stânga)
M
(mijloc)
R
(codul din dreapta)
E
(sfârșit)

Zona „liniștită” .
0 unu 2 3 patru 5 6 7 opt 9 0 unu 2 3 patru 5 6 7 opt 9
Codificarea cifrelor pentru părțile din dreapta și din stânga codului
Număr Cod stânga Cod invers Cod corect Lățimea liniei
0 0001101 0100111 1110010 3-2-1-1
unu 0011001 0110011 1100110 2-2-2-1
2 0010011 0011011 1101100 2-1-2-2
3 0111101 0100001 1000010 1-4-1-1
patru 0100011 0011101 1011100 1-1-3-2
5 0110001 0111001 1001110 1-2-3-1
6 0101111 0000101 1010000 1-1-1-4
7 0111011 0010001 1000100 1-3-1-2
opt 0110111 0001001 1001000 1-2-1-3
9 0001011 0010111 1110100 3-1-1-2
Codificarea modelului de securitate
Probă Stânga Centrat Pe dreapta
Șablon de gardă stânga 101
Șablon de protecție mediu 01010
Șablon de protecție corect 101



La proiectarea structurii codului, în condițiile unei electronice încă nu prea avansate, a fost important să fie cât mai ușor de citit scanerului și să se simplifice hardware-ul scanerului în sine. Una dintre dificultăți a fost problema citirii probabile a codului în direcția opusă, adică citirea codului de pe produsul pe care casieria l-a adus la scaner „cu susul în jos”. Prin urmare, a fost foarte important ca alternanța dungilor să fie aceeași în ambele direcții - mai întâi o linie întunecată, apoi albă, apoi din nou întunecată și așa mai departe. Da, și ar fi, de asemenea, bine dacă poziția șabloanelor de protecție ar fi mereu în același loc.

Soluția a fost găsită. Puteți observa că codul arată foarte simetric, adică numărul de lovituri la dreapta și la stânga centrului este întotdeauna același, iar lățimea părților din dreapta și din stânga codului de bare este aceeași. Adică, mecanismul de citire a codului de bare este întotdeauna același, indiferent de modul în care ai transforma acest cod.

În ceea ce privește aceeași secvență de linii alternante de lumină și întuneric în timpul citirii înainte și înapoi, dezvoltatorii au reușit acest lucru prin faptul că codificarea grupurilor de numere din dreapta și din stânga este ușor diferită - caracterele din dreapta au un contur negativ fotografic în raport cu cele stângi. Adică, modelele de contur pentru aceeași cifră sunt identice, dar pozitive sau negative. Cu alte cuvinte, singura diferență este că, dacă pentru partea stângă a codului este o lovitură ușoară, atunci pentru dreapta este întuneric.

Problema recunoașterii lecturii înainte sau înapoi este la fel de ușor de rezolvat logic. De exemplu, dacă scanerul citește un număr cu o grosime a tractului de 3-2-1-1, atunci înțelege că acesta este numărul „zero” și citirea lui directă, iar dacă citește linii cu o grosime de 1-1 -2-3, atunci înțelege că acesta este același „zero”, dar citit în sens invers. La citirea numerelor care sunt codificate în oglindă în raport cu codificarea obișnuită, scanerul înțelege că întregul cod de bare este citit în direcția opusă, prin urmare, întreaga secvență rezultată de 12 cifre trebuie transmisă computerului în ordine inversă.

Toate acestea au fost o anumită reasigurare și exagerare după standardele moderne, dar anul era 1973.

Verificați calculul numărului

În codul UPC-A (GTIN-12), cifra de verificare (cifra) este calculată după cum urmează:

  1. Toate cifrele din pozițiile impare (prima, a treia, a cincea etc.) sunt însumate și rezultatul este înmulțit cu trei.
  2. Toate cifrele din pozițiile pare (a doua, a patra, a șasea, etc.) sunt însumate.
  3. Se adună numerele obținute în cei doi pași anteriori și din rezultat rămâne doar ultima cifră.
  4. Acest număr se scade din 10.
  5. Rezultatul final al acestor calcule este cifra de verificare (zece corespunde numărului 0).

De exemplu, cifra de verificare pentru codul de bare UPC-A prezentat în figura „03600029145X”, unde „X” este cifra de verificare pe care o căutați, este calculată prin adăugarea tuturor cifrelor impare (0+6+0+2+1 +5 = 14), înmulțit cu trei (14 × 3 = 42), rezultatul este însumat cu toate cifrele pare (42+3+0+0+9+4 = 58), toate, cu excepția ultimei cifre, sunt eliminate (58 mod 10 = 8), scăzut din 10 (10 − 8 = 2) și din nou, dacă este necesar, totul este aruncat, cu excepția ultimei cifre (2 mod 10 = 2). Numărul de cec dorit este numărul 2.

La citirea codului, corectitudinea citirii este verificată într-un mod similar, dar oarecum mai simplu:

  1. Toate numerele impare sunt însumate și înmulțite cu 3.
  2. Toate cifrele pare sunt însumate, inclusiv cifra de verificare.
  3. aceste sume se adună și rămâne ultima cifră din rezultat.

Din punct de vedere tehnic, cifrele sunt procesate secvențial, într-o singură trecere, cu fiecare cifră înmulțită cu 1 sau 3, în funcție de uniformitatea poziției, adunând la sumă și luând restul modulo 10 al sumei curente. Cu alte cuvinte, zeci sunt imediat aruncate, ceea ce simplifică foarte mult mecanismul de calcul.

Dacă rezultatul este zero, atunci se decide că codul a fost citit corect, dacă orice altă cifră, atunci codul a fost citit incorect fără ambiguitate.

Codificarea produsului

Acest cod a fost creat în primul rând pentru a automatiza comerțul cu produse produse de multe întreprinderi, astfel încât problema conținutului intern a fost, de asemenea, importantă pentru standardizare și reglementare, astfel încât diferitele întreprinderi să nu poată atribui același cod unui produs. Fiecare tip de produs nou produs trebuia să aibă propriul cod unic, iar aceasta a fost ideea principală a întregului sistem. Adică, dacă un producător produce, de exemplu, blugi, atunci blugii de diferite culori, mărimi și croi ar trebui să aibă coduri diferite. Adică, dacă este, de exemplu, 10 culori, 50 de tipuri, 20 de dimensiuni, atunci vor fi necesare zece mii de coduri pentru a le codifica.

La rândul său, același produs, dar de la întreprinderi de producție diferite, ar trebui să aibă și o codificare diferită. Toate acestea au fost importante pentru automatizarea contabilității în comerț, controlul automat al soldurilor produselor într-un depozit, rafturile magazinelor și așa mai departe.

Maximul teoretic al acestui cod este de 100 de miliarde de tipuri diferite de bunuri (11 cifre). Părea un număr mare. Dar teoria nu corespunde întotdeauna practicii, iar situația actuală este de așa natură încât, de mai bine de 30 de ani de existență a sistemului, aceste coduri nu au fost suficiente. Acest lucru se datorează cheltuielilor lor dezechilibrate și risipitoare.

Inițial, cele 11 cifre ale codului au fost distribuite după cum urmează:

Adică, teoretic, sistemul însemna până la șase sute de mii de întreprinderi (o sută de mii pe prefix), fiecare dintre acestea putând codifica până la o sută de mii de nume ale produselor sale.

Prefix

Aceasta este prima cifră a codului. Împarte logic codurile în tipuri de produse fabricate.

Pentru codurile europene EAN-13, toate aceste prefixe americane par să înceapă cu zero, adică 01, 02, 03 și așa mai departe. După fuzionarea cu asociația europeană, GS1 America globală a primit prefixe suplimentare 10-13 în codificarea europeană, care vor fi folosite pentru a codifica produsul obișnuit.

Cod companie

Un cod de întreprindere este acea parte a codului care este atribuită de către organizația de reglementare întreprinderilor care doresc să-și codifice produsul. Codul întreprinderii, conform planului inițial, urma să ia 5 cifre plus prefixe rezervate pentru codificarea unui produs obișnuit. Astfel, a fost posibil să se înregistreze aproximativ șase sute de mii de întreprinderi. După cum sa dovedit, acest lucru nu este suficient. Codul companiei este situat în partea stângă a codului UPC.

Cod produs

Codul produsului ocupă primele 5 cifre din partea dreaptă a codului. Întreprinderea trebuia să codifice fiecare tip de produs cu propriul său cod unic. Codul 99999 este rezervat codificării întreprinderii în sine, pentru a asigura automatizarea fluxului de lucru.

Codificarea produsului

Încărcarea semantică a numerelor din numele produsului: Contrar credinței populare, codul digital al produsului în sine (3-5 cifre) nu poartă nicio încărcătură semantică. Asociația recomandă atribuirea consecventă a codurilor pe măsură ce noi tipuri de produse sunt lansate fără a investi în acest cod nicio încărcare semantică suplimentară.

Pentru utilizarea UPC în cadrul întreprinderilor și organizațiilor comerciale sunt alocate toate codurile care încep cu cifra 2. Orice întreprindere le poate folosi în orice mod și la discreția sa, dar exclusiv în scopuri interne. Utilizarea acestor coduri în afara întreprinderii este interzisă. Conținutul intern al codurilor care încep cu 2 poate urma orice logică pe care aceasta sau acea întreprindere și-a stabilit-o (de obicei, aceștia sunt comercianți cu amănuntul) și poate conține prețul sau greutatea produsului sau orice alți parametri, iar această codificare este deosebit de des folosit pentru mărfuri cu greutate.

„Mit” despre cei trei șase codificați

Pentru a sincroniza citirea codului, George Laurer a furnizat 3 câmpuri speciale de protecție sau de închidere (Guard Patterns) - câmpul din stânga (LGP), câmpul central (CGP) și câmpul din dreapta (RGP). În figură, aceste câmpuri sunt evidențiate cu verde pentru claritate, de fapt sunt albe. Marginile din stânga și din dreapta au o lățime de trei unități, marginea din mijloc este de 5 unități (reamintim, codul oricărei cifre este de 7 unități). Legenda a apărut din cauza faptului că într-una dintre codificări (vezi tabelul de mai sus) numărul 6 este reprezentat de secvența 1010000, care poate fi percepută vizual ca două linii. Câmpurile de protecție (101 și 01010) arată și ele ca două lovituri, dar acest lucru nu are nimic de-a face cu codificarea numărului 6, cu excepția similitudinii vizuale. George Laurer însuși recunoaște o oarecare similitudine a acestor câmpuri cu codificarea celor șase, dar consideră acest lucru un accident. De asemenea, consideră un accident faptul că prenumele, prenumele și patronimul (George Joseph Laurer) să conțină câte șase litere. Nu există coduri trei șase în codul de bare UPC. [4] Pe de altă parte, Thomas Psaras, un informatician grec care nu are nimic de-a face cu religia, a spus: „Pentru a utiliza corect și cu acuratețe codul de bare, se folosesc linii de cod dublu ascunse pentru a separa informații, care denotă întâmplător. numărul 6 , la începutul, la mijloc și la sfârșitul oricărei informații numerice reproduse cu ajutorul unui cod de bare.

Vezi și

Note

  1. NHRIC (National Health Related Items Code) (link nu este disponibil) . HealthData . Departamentul de Sănătate și Servicii Umane din SUA. Preluat la 5 martie 2017. Arhivat din original la 8 martie 2021. 
  2. 1 2 Pagina de coduri de bare UPC și EAN (link în jos) . www.adams1.com. Preluat la 5 martie 2017. Arhivat din original la 30 ianuarie 2017. 
  3. SIMBOLOGIE UPC-E (link în jos) . www.barcodeisland.com. Preluat la 5 martie 2017. Arhivat din original la 26 februarie 2020. 
  4. Întrebări UPC despre 666 Arhivat din original pe 6 ianuarie 2016.

Link -uri