Universal Product Code


UPC (skrót od ang.: Universal Product Code) – pierwszy standard kodu kreskowego, wprowadzony został w supermarketach w USA i Kanadzie w 1973 roku, z myślą o usprawnieniu obsługi klientów i gromadzeniu danych w punktach sprzedaży.
Standaryzacją zajmowały się organizacje UCC (Uniform Code Council, Inc.) w USA oraz ECCC (Electronic Commerce Council of Canada). W wyniku podjęcia działań mających na celu połączenie standardów UPC oraz konkurencyjnego EAN w 2005 roku organizacje te weszły w skład globalnej organizacji GS1.
Rodzaje kodów UPC
W chwili obecnej stosowane są 2 rodzaje kodów numerycznych UPC:
- UPC-A (pełna) – kodowane jest 12 cyfr
- UPC-E (skrócona) – kodowane jest 6 cyfr
Struktura kodu

W kodzie UPC-A dwanaście cyfr dziesiętnych kodowane jest jako SLLLLLLMRRRRRRE, gdzie S (początek) i E (koniec) oznaczone są przez 3 moduły (bity – 101), M (środek, pole ochronne) jako 01010. Każde L i R jest cyfrą przedstawioną przez 7 modułów (siedem bitów). Całość kodu składa się z 95 bitów. Aby zmniejszyć prawdopodobieństwo błędnego odczytu, każde cyfra zakodowana jest tak, by w jak największym stopniu różnić się od pozostałych. Dodatkowo w kodowaniu nie występują moduły dłuższe od 4 przerw lub pasków.
Pierwsza cyfra L jest prefiksem, natomiast ostatnia cyfra R jest sumą kontrolną.
W kodzie UPC-E można zaprezentować to jako SLLLRRRE
Znaczenie prefiksów
- 0, 1, 6, 7, 8 lub 9 dla większości produktów
- 2 zarezerwowane dla produktów o zmiennej masie w obrocie lokalnym. Produkty takie mają przydzielany kod UPC przez sklepy, jeżeli są tam pakowane. W tym przypadku LLLLL jest numerem produktu, a _RRRR przedstawia wagę albo cenę produktu – jest to określone w pierwszym R.
- 3 leki według numeru National Drug Code – Narodowego Kodeksu Leków
- 4 zarezerwowane dla użytku lokalnego, często dla kart lojalnościowych
- 5 kupony – rzadko używany. Kod kuponu zapisany jest w LLLLL, natomiast _RRRR podaje wartość (wyrażoną w procentach albo liczbowo – pierwsze R określa rodzaj danych)
Poprzez dodanie prefiksu 0, kody te stają się zgodne z EAN-13.
Obliczanie sumy kontrolnej
W systemie UPC-A, sumę kontrolną oblicza się w następujący sposób:
- Cyfry będące na miejscach nieparzystych (pierwsze, trzecie, piąte, itd) należy dodać i pomnożyć całość przez 3.
- Do wyniku dodać cyfry znajdujące się na miejscach parzystych
- Od otrzymanego wyniku obliczyć wartość modulo 10
- Odjąć otrzymany wynik od 10
- Od otrzymanego wyniku obliczyć wartość modulo 10 – (stosowane w przypadku, gdy otrzymany wynik równy jest 10. Powoduje to jego skrócenie do jednocyfrowego 0)
Na przykład dla kodu "03600029145X", gdzie X oznacza cyfrę kontrolną, X zostaje wyliczone w następujący sposób: Suma cyfr znajdujących się w miejscach nieparzystych (0+6+0+2+1+5 = 14) jest mnożona przez 3 (14 × 3 = 42), następnie dodawane są cyfry znajdujące się na miejscach parzystych – (42+3+0+0+9+4 = 58), obliczana jest wartość modulo 10 (58%10 = 8), a następnie wynik odejmowany jest od 10 (10 – 8 = 2). Obliczamy po raz kolejny modulo 10 (2%10 = 2). Suma kontrolna ma wartość 2.
W UPC-E cyfra kontrolna wynika z parytetu zakodowanych w kodzie cyfr.
Sposób zapisu znaków
W kodzie UPC-A, każda cyfra jest zapisana przez kombinację 4 modułów (kreska przerwa kreska przerwa lub na odwrót). Ze względu na możliwość odczytu kodu w dwie strony cyfry zapisane po lewej stronie kodu ("L") są przedstawione jako dopełnienie takiej samej cyfry zapisanej po prawej stronie kodu ("R").
Na przykład cyfra "6" jest zapisana jako:
0101111(Dla lewej strony kodu)1010000(Dla prawej strony kodu)
| Znak | Sposób kodowania lewa strona |
Sposób kodowania prawa strona |
| 0 | 0001101 | 1110010 |
| 1 | 0011001 | 1100110 |
| 2 | 0010011 | 1101100 |
| 3 | 0111101 | 1000010 |
| 4 | 0100011 | 1011100 |
| 5 | 0110001 | 1001110 |
| 6 | 0101111 | 1010000 |
| 7 | 0111011 | 1000100 |
| 8 | 0110111 | 1001000 |
| 9 | 0001011 | 1110100 |
Przypisy
- ↑ EAN-13 SYMBOLOGY [online], www.barcodeisland.com [dostęp 2017-11-27] [zarchiwizowane z adresu 2016-01-14].
Bibliografia
- Kody kreskowe – rodzaje, standardy, sprzęt, zastosowania – ILiM, Poznań 2000, ISBN 83-87344-60-5
- (PDF)Specyfikacje symboliki EAN/UPC na stronie gs1pl.org[dostęp: 2008.01.11]
Linki zewnętrzne
- UPC Database (ang.)
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.