범용 상품 부호
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.
1. 개요
범용 상품 부호(UPC)는 상품에 부착되어 상품을 식별하는 데 사용되는 바코드 형식이다. 1970년대에 개발되어 소매업에서 널리 사용되었으며, 다양한 종류가 존재한다. UPC-A는 가장 일반적인 형태로 12자리 숫자로 구성되며, 상품의 제조업체 코드와 제품 코드를 포함한다. UPC-E는 UPC-A의 축약형으로 6자리 코드를 사용하며, UPC-2와 UPC-5는 각각 잡지 판과 권장 소매 가격을 나타내는 보조 코드이다. UPC는 검사 숫자를 사용하여 데이터 입력 오류를 감지하며, EAN-13은 UPC-A의 상위 집합으로, 국가 코드를 포함한다.
더 읽어볼만한 페이지
- 제품 분류 - 스톡 키핑 유닛
스톡 키핑 유닛(SKU)은 상품의 특징을 나타내는 문자와 숫자의 조합으로, 최소 재고 관리 단위이며, 재고 관리, 판매 분석, 물류 관리에 활용된다. - 바코드 - QR 코드
QR 코드는 1994년 일본 덴소 웨이브가 개발한 2차원 바코드로, 기존 바코드보다 많은 정보를 저장하고 오류 정정 기능이 있으며, 자동차 부품 관리에서 시작하여 다양한 분야에서 활용되지만 악성 QR 코드에 의한 피해에도 주의해야 한다. - 바코드 - 코드 39
코드 39는 9개의 요소로 구성된 바와 스페이스 조합으로 문자를 표현하는 바코드 형식으로, 스캔이 용이하고 신뢰성이 높지만 코드 길이가 길어 고밀도 정보 표현에는 부적합하며, 표준 방식과 풀 ASCII 방식으로 나뉜다. - 체크섬 알고리즘 - MD5
MD5는 로널드 리베스트 교수가 개발한 128비트 해시 값 생성 암호화 해시 함수이나, 보안 취약점으로 인해 현재는 보안이 중요한 분야에서는 사용이 중단되었다. - 체크섬 알고리즘 - 순환 중복 검사
순환 중복 검사(CRC)는 데이터 전송 또는 저장 시 오류 검출을 위해 데이터를 다항식으로 간주하고 생성 다항식으로 나눈 나머지를 검사 값으로 사용하여 오류를 감지하는 기술이다.
범용 상품 부호 | |
---|---|
기본 정보 | |
![]() | |
종류 | 바코드 |
개발 시기 | 1973년 |
개발자 | 조지 J. 로러 |
기술 정보 | |
사용 분야 | 소매 |
표준 | GS1 |
자릿수 | 고정 길이, 숫자 전용 (UPC-A: 12자리, UPC-E: 6자리) |
특징 | |
장점 | 빠른 스캔 속도 높은 정확도 재고 관리 효율성 증대 |
단점 | 제한된 정보량 바코드 손상 시 인식 불가 |
종류 | |
UPC-A | 12자리 숫자 가장 일반적인 형태 |
UPC-E | 6자리 숫자 UPC-A의 축소 버전 작은 상품에 적합 |
UPC-2 | 2자리 추가 코드 정기 간행물 등에 사용 |
UPC-5 | 5자리 추가 코드 서적 등에 사용 |
관련 기술 | |
EAN | EAN (European Article Number) |
QR 코드 | QR 코드 (Quick Response Code) |
2. 역사
1932년 월리스 플린트가 천공 카드를 이용한 자동 계산대 시스템을 제안했다. 1949년 버나드 실버와 노먼 조셉 우드랜드는 과녁 스타일 코드를 개발하고 특허를 출원했다.[3][15]
1960년대와 1970년대 초, 북미 철도에서는 다색 바코드를 사용한 철도 차량 추적 시스템을 실험했지만, 이 시스템은 폐기되고 자동 장비 식별(AEI) 시스템으로 대체되었다.[4]
1973년, 식료품 업계의 여러 무역 협회가 통일 상품 코드 협의회(UPCC)를 결성하여 맥킨지 앤 컴퍼니의 래리 러셀과 톰 윌슨의 도움을 받아 통일 상품 코드(UPC)의 숫자 형식의 기초를 정의했다.[5] 여러 기술 회사들이 협의회에 기호 표현에 대한 대안을 제시했고, 기호 선택 위원회는 조지 J. 로러가 설계한 IBM 제안을 구현하기로 결정했다. 다만, 사람이 읽을 수 있는 영역의 글꼴은 약간 수정되었다.
1974년 6월 26일, 오하이오주 트로이의 마쉬 슈퍼마켓에서 최초로 UPC 코드가 부착된 리글리 주시 후르츠 껌 10개 묶음(50개)이 스캔되었다.[6] NCR 금전 등록기는 67센트를 기록했다.[7] 이 껌 포장지의 복제품은 워싱턴 D.C.의 스미소니언 협회 국립 미국사 박물관에 전시되었다.[8][9]
머레이 에덴은 UPC 바코드 개발팀의 컨설턴트로 참여하여 기호 선택 및 글꼴 결정에 기여했으며,[10][11] 바코드 리더가 제대로 작동하지 않을 경우를 대비하여 숫자를 아래쪽에 추가하는 아이디어를 냈다.[13][14]
2. 1. IBM의 UPC 개발
1969년 말, 노스캐롤라이나주 리서치 트라이앵글 파크(RTP)의 IBM은 조지 로러에게 슈퍼마켓 스캐너와 라벨 개발을 지시했다. 1970년 말, 허드 바이스터는 IBM 바코드인 델타 B의 문제점(잉크 번짐)을 제시했다.[15]1971년 중반, 윌리엄 "빌" 크루스는 델타 C라는 새로운 바코드를 발명했다.[15] 델타 C는 잉크 번짐의 영향을 받지 않고, 선의 앞쪽 또는 뒤쪽 가장자리만 사용하여 더 높은 성능을 냈다.
1972년 봄, 바이스터는 한 번의 스캔으로 읽을 수 있는, 모든 막대 너비보다 약간 더 긴 막대가 있는 라벨을 제안했다. 다음날 라벨을 두 부분으로 나누어 막대 길이를 절반으로 줄일 수 있다고 제안했다.
로러는 라벨 세부 사항을 정의하고 제안서를 작성했으며, N.J. 우드랜드가 프로젝트 기획자로 참여했다. 로러의 초기 바코드는 델타 B였으나 라벨 크기가 너무 컸다. 크루스는 델타 C 바코드 사용을 제안하여 라벨 크기를 줄였다.
로러는 크루스에게 스캐너의 라벨 감지 방법에 대한 도움을 요청했다. 그들은 가드 바와 라벨 감지 방법을 정의했고, 가드 바는 반쪽 라벨 식별과 스캐너 임계 회로 학습에도 사용되었다.[16]
1972년 12월 1일, IBM은 미네소타주 로체스터에서 로러의 제안서를 슈퍼마켓 위원회에 제출했다. 크루스는 UPC와 유사한 라벨을 반지 완드로 읽는 실험실 시연을 통해 델타 C 코드의 견고성을 입증했다.
1973년 1월 1일, 크루스는 IBM 고급 기술 그룹으로 복귀하고, 로러는 라벨 책임을 맡았다. 다이모 코퍼레이션의 제안(코드의 문자 독립성)을 IBM 제안에 통합했다.
라벨의 두 부분은 서로 다른 숫자 문자 집합을 사용하기로 결정되었다. 로러는 델타 C 특허 기반 문자 집합을 사용하고, 각 쌍의 막대 너비를 측정하여 문자를 구별했다.
수학자 데이비드 사비르는 심볼의 인쇄 가능성과 신뢰성을 증명하고, 오류 감지 및 수정을 위해 두 자릿수를 추가했다. 홀수/짝수 패리티를 추가하여 스캔 방향 판별 및 오류 감지 능력을 향상시켰다.
다음은 1970년대 초 사용 가능한 적절한 크기의 라벨 표이다.
라벨 유형 | 라벨 치수 | 면적 |
---|---|---|
불스아이(모스 부호) | 큼 | 큼 |
불스아이(델타 B) | ||
불스아이(델타 A) | ||
바이스터 1차(델타 B) | ||
바이스터 2 절반(델타 B) | ||
바이스터 2 절반(델타 A) | ||
바이스터(델타 C) |
UPC-A 바코드는 12자리 숫자 시퀀스와 검은색 막대 및 흰색 공간의 스캔 가능한 스트립으로 구성된다. 스캔 가능한 영역은 SLLLLLLMRRRRRRE 패턴을 따르는데, 여기서 S(시작), M(중간), E(종료)는 가드 패턴이고, L(왼쪽)과 R(오른쪽)은 숫자 섹션이다. 첫 번째 숫자 L은 숫자 시스템을 나타내고, 마지막 숫자 R은 오류 감지 검사 숫자이다. 가드 패턴은 6개의 숫자 그룹을 분리하고 타이밍을 설정한다.[17][18]
공간
3. 구성
막대 및 공간 패턴은 0~9까지 다음과 같이 이루어져 있다.숫자 L 패턴 R 패턴 길이 0 0001101 1110010 3211 1 0011001 1100110 2221 2 0010011 1101100 2122 3 0111101 1000010 1411 4 0100011 1011100 1132 5 0110001 1001110 1231 6 0101111 1010000 1114 7 0111011 1000100 1312 8 0110111 1001000 1213 9 0001011 1110100 3112
UPC-A의 x-dimension(단일 모듈 요소의 너비)은 표준 크기에서 0.33mm이다. UPC-A의 표준 심볼 높이는 25.9mm이며, 가드 패턴 막대는 x-dimension의 5배만큼 아래로 연장되어 27.55mm가 된다. UPC-A는 80%에서 200% 사이로 축소하거나 확대할 수 있다. UPC-A 바코드의 각 측면에는 x-dimension의 9배 이상 너비의 여백 영역이 필요하다.[17][18]
4. 인코딩
S
(시작)L
(왼쪽 숫자)M
(중간)R
(오른쪽 숫자)E
(종료)여유
공간0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 -- --