کد جهانی محصول

از ویکیپدیا، دانشنامه آزاد
پرش به ناوبری پرش به جستجو

یک بارکد UPC

کد جهانی محصول ( UPC ؛ به طور اضافی : کد UPC ) یک نماد بارکد است که به طور گسترده در سراسر جهان برای ردیابی اقلام تجاری در فروشگاه ها استفاده می شود.

UPC (از لحاظ فنی به UPC-A اشاره دارد) از 12 رقم تشکیل شده است که به طور منحصر به فرد به هر کالای تجاری اختصاص داده می شود. همراه با بارکد EAN مربوطه ، UPC بارکدی است که عمدتاً برای اسکن اقلام تجاری در محل فروش ، بر اساس مشخصات GS1 استفاده می شود. [1] ساختارهای داده UPC جزء GTIN ها هستند و از مشخصات جهانی GS1 پیروی می کنند که بر اساس استانداردهای بین المللی است. اما برخی از خرده فروشان (پوشاک، مبلمان) از سیستم GS1 (به جای سایر نمادهای بارکد یا سیستم شماره مقاله) استفاده نمی کنند. از سوی دیگر، برخی از خرده فروشان از نماد بارکد EAN/UPC استفاده می کنند، اما بدون استفاده از GTIN (فقط برای محصولات فروخته شده در فروشگاه های خودشان).

تحقیقات نشان می‌دهد که پذیرش و انتشار UPC نوآوری را تحریک کرده و به رشد زنجیره‌های تامین خرده‌فروشی بین‌المللی کمک کرده است. [2]

تاریخچه

والاس فلینت یک سیستم پرداخت خودکار را در سال 1932 با استفاده از کارت های پانچ پیشنهاد کرد. برنارد سیلور و نورمن جوزف وودلند ، دانشجوی فارغ التحصیل از موسسه فناوری درکسل (دانشگاه درکسل کنونی) ، کدی به سبک چشم گاو نر ایجاد کردند و در سال 1949 برای ثبت اختراع درخواست کردند. [3] [4]

در دهه 1960 و اوایل دهه 1970، راه‌آهن‌ها در آمریکای شمالی با کدهای چندرنگی برای ردیابی واگن‌های ریلی آزمایش کردند، اما این سیستم در نهایت کنار گذاشته شد [5] و با یک سیستم مبتنی بر رادیو به نام شناسایی تجهیزات خودکار (AEI) جایگزین شد .

در سال 1973، گروهی از انجمن های تجاری از صنعت خواربارفروشی، شورای کد محصول یکنواخت (UPCC) را تشکیل دادند که با کمک مشاوران لری راسل و تام ویلسون از McKinsey & Company ، قالب عددی را که اساس محصول یکنواخت را تشکیل می داد، تعریف کردند. کد. [6] شرکت‌های فناوری از جمله Charegon، IBM ، Litton-Zellweger، Pitney Bowes-Alpex، Plessey-Anker، RCA ، Scanner Inc.، Singer، و Dymo Industries /Data General، پیشنهادهای جایگزینی را برای نمایش نمادها به شورا ارائه کردند. [ نیاز به نقل از ] کمیته انتخاب نماد سرانجام پیشنهاد IBM طراحی شده توسطجورج J. Laurer ، اما با کمی تغییر در فونت در منطقه قابل خواندن توسط انسان. [ نیازمند منبع ]

اولین موردی که با علامت UPC در یک صندوق خرده‌فروشی اسکن شد، یک بسته 10 عددی (50 چوب) از آدامس Wrigley's Juicy Fruit بود که در سوپرمارکت Marsh در تروی، اوهایو ، در ساعت 8:01 صبح در 26 ژوئن 1974 خریداری شد. [ 7] صندوق NCR 67 سنت افزایش یافت. [8] سبد خرید حاوی اقلام بارکد دیگری نیز بود، اما آدامس اولین آدامس بود که در صندوق برداشت شد. فاکسی از بسته آدامس در موزه تاریخ آمریکا مؤسسه اسمیتسونیان در واشنگتن دی سی به نمایش گذاشته شد [9] [10]

موری ادن مشاور تیمی بود که بارکد کد جهانی محصول را ایجاد کرد. [11] [12] به عنوان رئیس کمیته ای از دانشمندان در مؤسسه فناوری ماساچوست ، او به  انتخاب نمادی کمک کرد که هجوم اجتناب ناپذیر فناوری را که در پیش بود تحمل کند. [13] او فونت را انتخاب کرد، و به این فکر افتاد که اعداد را به پایین اضافه کند، که یک سیستم Failsafe است، در صورتی که کدخوان خاموش باشد. [14] [15]

پیشنهاد IBM

در اواخر سال 1969، IBM در پارک تحقیقاتی Triangle Park (RTP) در کارولینای شمالی، جورج لورر را تعیین کرد که چگونه یک اسکنر و برچسب سوپرمارکت بسازد. در اواخر سال 1970، هرد باومایستر معادلاتی را برای محاسبه کاراکترها در هر اینچ ارائه کرد که توسط دو بارکد IBM، دلتا A و دلتا B قابل دستیابی بود. در فوریه 1971، باومایستر به Laurer پیوست.

در اواسط سال 1971، ویلیام "بیل" کروز بارکد جدیدی به نام دلتا سی اختراع کرد. [4] این کاراکتر چهار برابر دلتا B به کاراکتر در هر اینچ دست یافت. دلتا B عرض نوار را با عرض فاصله با بیت های کد مقایسه کرد. این بسیار حساس به پخش جوهر بود، جایی که جوهر یا فشار بیش از حد باعث می شد هر دو لبه میله به سمت بیرون پخش شوند و خیلی کم باعث جمع شدن آنها شود. برای بدتر شدن با کوچک شدن فضاهای میله‌ها و بالعکس. دلتا C عملکرد بالاتر خود را تنها با استفاده از لبه‌های پیشرو یا انتهایی به انتهایی که تحت تأثیر پخش یکنواخت جوهر قرار نگرفت، به دست آورد. کد زمانی بهترین عملکرد را داشت که دارای یک مجموعه کاراکتر تعریف شده با فاصله مرجع ثابتی بود که بیشتر یا ترجیحاً همه کاراکترها را در بر می گرفت. در آگوست 1971، کروز به تلاش اسکنر پیوست. بعد از چندین ماه هیچ پیشرفتی نداشتند. آنها از برچسب چشم گاو نر RCA که می تواند با یک اسکنر لیزری ساده و مستقیم اسکن شود، آگاه بودند. اما یک برچسب قابل خواندن بسیار بزرگ بود. اگرچه صنایع Litton پیشنهاد کرد که نماد چشم گاو نر به نصف بریده شود تا مساحت کاهش یابد، اما همچنان بسیار بزرگ بود و همان مشکلات چاپ لکه دار جوهر را به عنوان نماد RCA ارائه می کرد. افزونگی و قابلیت بررسی به طور کامل حذف شد. آنها همچنین از پیشنهادات بسیاری از سراسر جهان آگاه بودند که هیچ یک از آنها امکان پذیر نبود.

برچسب UPC که مشخصات کلی پیشنهادات باومیستر را نشان می دهد

در بهار 1972، باومایستر پیشرفتی را اعلام کرد. او برچسبی با میله‌هایی پیشنهاد کرد که کمی بیشتر از فاصله تمام میله‌هایی بود که باید در یک پاس خوانده شوند. این برچسب را می توان با یک اسکنر ساده "X" اسکن کرد که فقط کمی پیچیده تر از اسکنر لیزری خط مستقیم است. روز بعد باومایستر پیشنهاد کرد که اگر برچسب به دو نیمه تقسیم شود، طول میله را می توان تقریباً به نصف برش داد. این دو پیشنهاد، ناحیه چشم گاو نر را یک سوم و سپس یک ششم کاهش دادند. تصویر سمت راست برچسب پیشنهاد شده توسط Baumeister را نشان می دهد. او هیچ بارکد خاصی را مشخص نکرد زیرا به خوبی درک شده بود. به جز نوار کدگذاری و ده رقمی، برچسب UPC امروز پیشنهاد او است. مدت کوتاهی پس از آن، Baumeister به منطقه دیگری از RTP منتقل شد.

Laurer اقدام به تعریف جزئیات برچسب و نوشتن یک پروپوزال کرد. NJ Woodland به عنوان برنامه ریز پروژه منصوب شد و به Laurer در نوشتن پروپوزال خود کمک کرد.

اولین تلاش Laurer با بارکد از Delta B استفاده کرد. اندازه برچسب حاصل حدود شش اینچ در سه اینچ بود که خیلی بزرگ بود. کروز به لورر پیشنهاد کرد که از بارکد دلتا C خود استفاده کند و یک کپی از حق اختراع خود را ارائه کرد که دارای یک مجموعه حروف عددی نمونه و قوانین برای تولید الفبای اندازه های دیگر بود. این اندازه برچسب را به حدود 1.5 اینچ در 0.9 اینچ کاهش داد. بعداً Laurer از Crouse در مورد چگونگی تشخیص برچسب توسط اسکنر درخواست کمک کرد. آنها با هم میله های محافظ و تعریفی از نحوه تشخیص برچسب را تعریف کردند. میله‌های محافظ همچنین شناسایی برای تشخیص نیم برچسب و میله‌های آموزشی برای مدارهای آستانه اسکنر ارائه می‌دهند. Laurer تعریف کاملی از برچسب داشت و به نوشتن پیشنهاد خود ادامه داد. [16]

قبلاً کروز ایده ای برای یک عصای ساده داشت که مانند انگشتر و دستبند استفاده می شد. او تصمیم گرفت آن چوب را توسعه دهد تا نمایشی از برچسب ارائه دهد. [ نیازمند منبع ]

در 1 دسامبر 1972، IBM پیشنهاد Laurer را به کمیته سوپر مارکت در روچستر، مینه‌سوتا ، جایی که IBM اسکنر را توسعه می‌داد، ارائه کرد. در طول ارائه، کروز یک نمایش آزمایشگاهی ارائه داد که در آن برچسب‌های UPC مانند را با عصای حلقه‌ای خود خواند. او علاوه بر خواندن برچسب های معمولی، برچسب بزرگ دو صفحه ای در دفترچه پروپوزال را مطالعه کرد. سپس به صفحه‌ای برگشت که عکسی از اقلام برچسب‌دار روی میز را نشان می‌دهد. برچسب ها به دلیل وضوح عکس چاپ شده کوچک و ناقص بودند، اما چوب بسیاری از آنها را می خواند. این نمایش استحکام کد دلتا C خالص را نشان داد. پیشنهاد پذیرفته شد.

یک ماه بعد، در 1 ژانویه 1973، کروز به گروه فناوری پیشرفته آی‌بی‌ام بازگردانده شد و لورر مسئولیت کامل این برچسب را بر عهده داشت.

Dymo Industries ، سازندگان دستگاه‌های چاپ دستی، اصرار داشتند که کد مستقل از کاراکتر باشد، [ توضیح لازم است ] تا دستگاه‌های چاپ دستی بتوانند بارکد را در فروشگاه تولید کنند، اگر اقلام توسط تولیدکنندگان بارکد نشده باشند. پیشنهاد Dymo توسط IBM پذیرفته شد و در آخرین پیشنهاد IBM گنجانده شد.

تصمیم گرفته شد که دو نیمه برچسب باید مجموعه متفاوتی از کاراکترهای عددی داشته باشند. مجموعه کاراکتر Laurer که از پتنت دلتا C مشتق شده است از هفت افزایش یا واحد قابل چاپ استفاده می کند که در آن دو نوار و دو فاصله چاپ می شود. این بیست ترکیب از کاراکترها را به دست آورد، اما دو جفت وجود داشت که با خواندن قوانین دلتا C کد یکسانی را برای جفت به دست می‌دادند. از آنجایی که هجده کاراکتر کافی نبود، لور سعی کرد یک واحد را به مجموعه کاراکترها اضافه کند. این بیست و شش کاراکتر دلتا C به دست می‌دهد که می‌تواند دو مجموعه نویسه اعشاری را ارائه کند، اما همچنین چهارده درصد به عرض برچسب و در نتیجه ارتفاع اضافه می‌کند. این یک افزایش سی درصدی در مساحت یا یک برچسب 1.7 "x1.03" است. لورر احساس کرد که این قابل قبول نیست. او به مجموعه شخصیت‌های اصلی با بیست کاراکتر بازگشت، اما چهار تای آن‌ها دو جفت با همان خواندن دلتا سی بودند. او تصمیم گرفت از همه آنها استفاده کند. برای تمایز بین جفت ها، او یک نوار عرض را در هر یک از جفت ها اندازه می گرفت تا آنها را از یکدیگر متمایز کند. برای هر جفت، عرض آن میله ها یک یا دو واحد خواهد بود. لورر معادلات باومایستر را در این مجموعه اعمال نکرد. او احساس کرد که اندازه گیری عرض یک میله خیلی جدی نخواهد بود. همانطور که معلوم شد، برای افزایش بیش از دو برابری مساحت، به بیش از پنجاه درصد افزایش در عرض و ارتفاع نیاز داشت. لورر بعداً اعتراف کرد که این چهار شخصیت در هر مجموعه مسئول اکثر خطاهای خواندن اسکنر هستند. برای تمایز بین جفت ها، او یک نوار عرض را در هر یک از جفت ها اندازه می گرفت تا آنها را از یکدیگر متمایز کند. برای هر جفت، عرض آن میله ها یک یا دو واحد خواهد بود. لورر معادلات باومایستر را در این مجموعه اعمال نکرد. او احساس کرد که اندازه گیری عرض یک میله خیلی جدی نخواهد بود. همانطور که معلوم شد، برای افزایش بیش از دو برابری مساحت، به بیش از پنجاه درصد افزایش در عرض و ارتفاع نیاز داشت. لورر بعداً اعتراف کرد که این چهار شخصیت در هر مجموعه مسئول اکثر خطاهای خواندن اسکنر هستند. برای تمایز بین جفت ها، او یک نوار عرض را در هر یک از جفت ها اندازه می گرفت تا آنها را از یکدیگر متمایز کند. برای هر جفت، عرض آن میله ها یک یا دو واحد خواهد بود. لورر معادلات باومایستر را در این مجموعه اعمال نکرد. او احساس کرد که اندازه گیری عرض یک میله خیلی جدی نخواهد بود. همانطور که معلوم شد، برای افزایش بیش از دو برابری مساحت، به بیش از پنجاه درصد افزایش در عرض و ارتفاع نیاز داشت. لورر بعداً اعتراف کرد که این چهار شخصیت در هر مجموعه مسئول اکثر خطاهای خواندن اسکنر هستند. همانطور که معلوم شد، برای افزایش بیش از دو برابری مساحت، به بیش از پنجاه درصد افزایش در عرض و ارتفاع نیاز داشت. لورر بعداً اعتراف کرد که این چهار شخصیت در هر مجموعه مسئول اکثر خطاهای خواندن اسکنر هستند. همانطور که معلوم شد، برای افزایش بیش از دو برابری مساحت، به بیش از پنجاه درصد افزایش در عرض و ارتفاع نیاز داشت. لورر بعداً اعتراف کرد که این چهار شخصیت در هر مجموعه مسئول اکثر خطاهای خواندن اسکنر هستند.

دیوید ساویر، ریاضیدان، وظیفه اثبات چاپ نماد و الزامات قابلیت اطمینان را بر عهده داشت و به احتمال زیاد از معادلات باومیستر بی اطلاع بود. او و لورر دو رقم دیگر را برای تصحیح و تشخیص خطا به ده عدد اضافه کردند. سپس تصمیم گرفتند که برابری زوج و فرد را به تعداد واحدهای پر شده با میله در هر طرف اضافه کنند. برابری فرد/ زوج تکنیکی است که برای تشخیص هر تعداد فرد خطای بیت در جریان بیت استفاده می شود. آنها تصمیم گرفتند در یک نیمه از زوج و در نیمه دیگر استفاده کنند. این نشان می دهد که نیمی از بلیط خوانده شده است. این بدان معنی است که هر عرض نوار باید به طور دقیق خوانده شود تا خواندن خوب ارائه شود. همچنین به این معنی بود که هر فضا نیز شناخته می شود. نیاز به خواندن دقیق عرض هر بیت اساساً مزیت دلتا C را به جز اندازه گیری مرجع دلتا C باطل می کند. فقط مجموعه کاراکترهای عجیب و اندازه برچسب به عنوان سایه ای از کد دلتا سی باقی می ماند. اندازه هنوز همان اندازه برای دلتا C خالص محاسبه شده بود. اگر اندازه برچسب به درستی دوباره محاسبه شده بود،

مهندسی مکانیک و طراحی مدارهای الکترونیکی معمولاً به طراحی بدترین حالت با استفاده از تلورانس های شناخته شده نیاز دارند. بسیاری از مهندسانی که با کدهای بارکد کار می کنند تجربه کمی در مورد چنین چیزهایی داشتند و از روش های تا حدودی بصری استفاده می کردند. این دلیل عملکرد ضعیف کد دلتا B و به احتمال زیاد شکست اسکنر چشم گاو نر RCA بود.

جدول زیر برچسب های قابل کار موجود در اوایل دهه 1970 را با اندازه آنها نشان می دهد.

نوع برچسب ابعاد برچسب حوزه
چشم گاو نر با کد مورس بزرگ بزرگ
چشم گاو نر با دلتا بی قطر 12.0 اینچ (300 میلی متر). 113.10 در 2 (729.7 سانتی متر مربع )
چشم گاو نر با دلتا A قطر 9.0 اینچ (230 میلی متر). 63.62 در 2 (410.5 سانتی متر مربع )
Baumeister 1 w/ Delta B 6.0 اینچ × 5.8 اینچ (150 میلی متر × 150 میلی متر) 34.80 در 2 (224.5 سانتی متر مربع )
باومایستر 2 نیمه با دلتا بی 6.0 اینچ × 3.0 اینچ (152 میلی متر × 76 میلی متر) 18.00 در 2 (116.1 سانتی متر مربع )
باومایستر 2 نیمه با دلتا A 4.5 اینچ × 2.3 اینچ (114 میلی متر × 58 میلی متر) 10.35 در 2 (66.8 سانتی متر مربع )
باومیستر با دلتا سی 1.5 اینچ × 0.9 اینچ (38 میلی متر × 23 میلی متر) 1.35 در 2 (8.7 سانتی متر مربع )

این به فرض یک چشم گاو نر با همان اطلاعات و خوانایی قابل اعتماد است.

ترکیب

هر بارکد UPC-A از یک نوار قابل اسکن از نوارهای سیاه و فضاهای سفید بالای یک دنباله 12 رقمی تشکیل شده است. هیچ حروف ، کاراکتر یا محتوای دیگری از هر نوع نباید در بارکد UPC-A ظاهر شود. یک تناظر یک به یک بین عدد 12 رقمی و نوار نوارهای سیاه و فاصله سفید وجود دارد، یعنی تنها یک راه برای نمایش بصری هر عدد 12 رقمی وجود دارد و تنها یک راه برای نمایش هر نوار از نوارهای سیاه وجود دارد. و فاصله های سفید عددی.

ناحیه قابل اسکن هر بارکد UPC-A از الگوی S LLLLLMRRRRR R E پیروی می کند ، که در آن الگوهای محافظ S (شروع)، M (وسط) و E (پایان) به همان صورت در هر بارکد UPC-A و L نشان داده می شوند. بخش های (چپ) و R (راست) در مجموع 12 رقم عددی را نشان می دهند که هر UPC-A را منحصر به فرد می کند. اولین رقم L یک سیستم عددی خاص را نشان می دهد که باید توسط ارقام زیر استفاده شود. آخرین رقم R یک رقم بررسی خطا در تشخیص خطا است که به شما امکان می دهد برخی از خطاها را در اسکن یا ورود دستی شناسایی کنید. الگوهای محافظ دو گروه شش رقمی را از هم جدا کرده و زمان بندی را تعیین می کنند.

UPC-A UPC-E
UPC-A.png UPC-E.png

UPC-A 042100005264 معادل UPC-E 425261 با الگوی برابری "EOEEOO" است که توسط سیستم اعداد UPC-A 0 و رقم چک UPC-A 4 تعریف می شود.

قالب بندی

بارکدهای UPC-A را می توان در تراکم های مختلف چاپ کرد تا انواع فرآیندهای چاپ و اسکن را در خود جای دهد. پارامتر ابعادی قابل توجه، x-dimension (عرض عنصر واحد واحد) نامیده می شود. عرض هر نوار (فضا) با ضرب بعد x و عرض ماژول (1، 2، 3 یا 4 واحد) هر نوار (فضا) تعیین می شود. از آنجایی که الگوهای محافظ هر کدام شامل دو میله هستند و هر یک از 12 رقم بارکد UPC-A از دو میله و دو فاصله تشکیل شده است، همه بارکدهای UPC-A دقیقاً از (3 × 2) + (12 × 2) = 30 تشکیل شده است. میله ها، که 6 نشان دهنده الگوهای محافظ و 24 نشان دهنده ارقام عددی هستند.

بعد x برای UPC-A در اندازه اسمی 0.33 میلی متر (0.013 اینچ) است. ارتفاع نماد اسمی برای UPC-A 25.9 میلی متر (1.02 اینچ) است. میله‌هایی که الگوهای محافظ S (شروع)، M (وسط) و E (پایان) را تشکیل می‌دهند، 5 برابر بعد x به سمت پایین کشیده می‌شوند و ارتفاع نماد اسمی حاصل 27.55 میلی‌متر (1.08 اینچ) است. نوارهای اولین و آخرین رقم عددی بارکد UPC-A. UPC-A را می توان از 80% تا 200% کاهش یا بزرگنمایی کرد.

یک منطقه ساکت، با عرض حداقل 9 برابر بعد x، باید در هر طرف ناحیه قابل اسکن بارکد UPC-A وجود داشته باشد. [17] [18] برای یک عدد GTIN-12 که در یک بارکد UPC-A کدگذاری شده است، اولین و آخرین رقم تفسیر قابل خواندن توسط انسان همیشه خارج از نماد قرار می گیرد تا مناطق ساکتی را که برای بارکد UPC ضروری است نشان دهد. اسکنرها به درستی کار کنند

رمزگذاری

بارکد UPC-A به صورت بصری با نوارهایی از میله ها و فضاهایی نشان داده می شود که عدد 12 رقمی UPC-A را کد می کند. هر رقم با یک الگوی منحصر به فرد از 2 میله و 2 فاصله نشان داده می شود. میله ها و فضاها دارای عرض متغیر هستند، یعنی 1، 2، 3 یا 4 ماژول عرض دارند. عرض کل یک رقم همیشه 7 ماژول است. در نتیجه، عدد 12 رقمی UPC-A به مجموع 7×12 = 84 ماژول نیاز دارد.

یک UPC-A کامل 95 ماژول عرض دارد: 84 ماژول برای ارقام (بخش L و R) همراه با 11 ماژول برای الگوهای محافظ S (شروع)، M (وسط) و E (پایان). الگوهای محافظ S (شروع) و E (پایان) 3 ماژول عرض دارند و از الگوی bar-space-bar استفاده می کنند که در آن هر نوار و فاصله یک ماژول عرض دارد. الگوی محافظ M (وسط) 5 ماژول عرض دارد و از الگوی space-bar-space-bar-space استفاده می‌کند که در آن هر نوار و فاصله یک ماژول نیز عرض دارد. علاوه بر این، نماد UPC-A به یک منطقه آرام (فضای اضافی با عرض 9 ماژول) قبل از S (شروع) و بعد از الگوهای محافظ E (پایان) نیاز دارد.

جدول رمزگذاری الگوی بارکد UPC-A S LLLLLMRRRRR R E

منطقه آرام
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
UPC-A Q.svg UPC-A S.svg UPC-A L0.svg UPC-A L1.svg UPC-A L2.svg UPC-A L3.svg UPC-A L4.svg UPC-A L5.svg UPC-A L6.svg UPC-A L7.svg UPC-A L8.svg UPC-A L9.svg UPC-A M.svg UPC-A R0.svg UPC-A R1.svg UPC-A R2.svg UPC-A R3.svg UPC-A R4.svg UPC-A R5.svg UPC-A R6.svg UPC-A R7.svg UPC-A R8.svg UPC-A R9.svg UPC-A S.svg UPC-A Q.svg

ارقام سمت چپ UPC-A (ارقام سمت چپ الگوی محافظ M (وسط) دارای برابری فرد هستند، که به این معنی است که عرض کل نوارهای سیاه تعداد فرد ماژول است. برعکس، ارقام سمت راست دارای برابری یکنواخت هستند. در نتیجه، یک اسکنر UPC می تواند تعیین کند که آیا نماد را از چپ به راست یا از راست به چپ اسکن می کند (نماد وارونه است). پس از مشاهده الگوی نگهبان S (شروع) یا E (پایان) (همانند، نوار فاصله-نوار)، در هر جهتی که خوانده شوند)، اسکنر ابتدا ارقام برابری فرد را، در صورت اسکن از چپ به راست، یا ارقام برابری زوج، در صورت اسکن از راست به چپ، مشاهده خواهد کرد. با اطلاعات برابری/جهت، یک نماد وارونه اسکنر را گیج نمی کند. هنگامی که با یک نماد وارونه روبرو می شود، اسکنر ممکن است به سادگی آن را نادیده بگیرد (بسیاری از اسکنرها اسکن های چپ به راست و راست به چپ را جایگزین می کنند، بنابراین نماد را در یک پاس بعدی می خوانند) یا ارقام را تشخیص داده و قرار می دهند. به ترتیب درست ویژگی دیگری در رمزگذاری رقم وجود دارد. ارقام سمت راست معکوس نوری ارقام سمت چپ هستند، یعنی نوارهای سیاه به فضاهای سفید تبدیل می شوند و بالعکس. برای مثال، سمت چپ "4" فاصله × 1 - نوار × 1 - فاصله × 3 - نوار × 2 است، در حالی که سمت راست "4" است.نوار×1 - فاصله×1 - نوار×3 - فاصله×2 .

شماره گذاری

تعداد بارکدهای UPC-A و UPC-E با توجه به استانداردهای مورد استفاده برای ایجاد آنها محدود است.

UPC-A: (10 مقدار ممکن در هر رقم سمت چپ ^ 6 رقم سمت چپ) × (10 مقدار ممکن در هر رقم سمت راست ^ 5 رقم سمت راست) = 100,000,000,000.
UPC-E: (10 مقدار ممکن در هر رقم ^ 6 رقم) × (2 الگوی برابری ممکن در هر عدد UPC-E) = 2,000,000.

رقم سیستم اعداد

در زیر شرحی از تمام سیستم‌های اعداد ممکن با طرح شماره‌گذاری 12 رقمی UPC-A L LLLLLRRRRR R ارائه شده است که در آن L نشان‌دهنده رقم سیستم اعداد و رقم بررسی R است.

0–1، 6–9
برای اکثر محصولات ارقام LLLLL کد سازنده (تخصیص شده توسط سازمان محلی GS1 ) و ارقام RRRRR کد محصول هستند.
2
برای استفاده محلی (فروشگاه/انبار)، برای اقلام فروخته شده با وزن متغیر رزرو شده است. اقلام با وزن متغیر، مانند گوشت، میوه های تازه یا سبزیجات، در صورتی که در آنجا بسته بندی شده باشند، توسط فروشگاه یک شماره کالا به آنها اختصاص می دهد. در این مورد، LLLLL شماره مورد است، و RRRRR یا وزن یا قیمت است، با اولین R تعیین می کند که کدام (0 برای وزن).
3
داروها بر اساس شماره کد ملی دارو (NDC). داروسازی ها در ایالات متحده از 10 رقم میانی UPC به عنوان شماره NDC خود استفاده می کنند. اگرچه معمولاً فقط داروهای بدون نسخه در محل فروش اسکن می شوند، UPC های مبتنی بر NDC در بسته های داروهای تجویزی و محصولات جراحی استفاده می شوند و در این مورد معمولاً کدهای UPN نامیده می شوند. [19]
4
برای استفاده محلی (فروشگاه/انبار)، اغلب برای کارت های وفاداری یا کوپن های فروشگاه رزرو شده است.
5
کوپن ها ارقام LLLLL ارقام 2-6 از پیشوند UPC محصول هستند، سه رقم RRR بعدی یک کد خانواده (تنظیم شده توسط سازنده یا ارائه شده توسط اتاق تسویه کوپن) و دو RR بعدی یک کد ارزشی هستند (مطابق با مقدار GS1). جدول کد)، که میزان تخفیف را تعیین می کند. این کوپن ها می توانند دو یا سه برابر شوند. [20]

بررسی محاسبه رقم

UPC شامل یک رقم چک برای تشخیص خطاهای رایج ورود داده است. به عنوان مثال، کدهای UPC-A رقم چک را انتخاب می کنندبرای برآورده کردن معادله رقمی :

اگر کد وارد شده معادله را برآورده نکند، یک UPC-A معتبر نیست.

رقم چک UPC-A ممکن است به صورت زیر محاسبه شود:

  1. ارقام را در موقعیت های فرد (اول، سوم، پنجم،...، یازدهم) جمع کنید.
  2. حاصل را در 3 ضرب کنید.
  3. مجموع ارقام را در موقعیت های زوج (دوم، چهارم، ششم،...، دهم) به نتیجه اضافه کنید.
  4. مدول حاصل 10 (یعنی باقیمانده، وقتی بر 10 تقسیم شود) را پیدا کنید و آن را M بنامید .
  5. اگر M صفر باشد، رقم چک 0 است. در غیر این صورت رقم چک 10 - M است.

به عنوان مثال، در یک بارکد UPC-A "03600029145 x 12 "، که در آن x 12 رقم چک ناشناخته است، x 12 ممکن است توسط:

  1. ارقام فرد را جمع کنید (0 + 6 + 0 + 2 + 1 + 5 = 14).
  2. حاصل را در 3 ضرب کنید (14 × 3 = 42).
  3. ارقام زوج را اضافه کنید (42 + (3 + 0 + 0 + 9 + 4) = 58).
  4. مدول نتیجه 10 را بیابید (58 mod 10 = 8 = M ).
  5. اگر M 0 نیست، M را از 10 کم کنید ( 10 - M = 10 - 8 = 2 ).

بنابراین، رقم چک 12 x 2 است.

معادله رقم چک به گونه‌ای انتخاب می‌شود که ویژگی‌های تشخیص خطای معقولی داشته باشد (به الگوریتم Luhn مراجعه کنید ).

  • UPC-A می تواند 100% خطاهای تک رقمی را تشخیص دهد.
    خطای تک رقمی به این معنی است که دقیقا یک رقم اشتباه است. فرض کنید مدول اختلاف 10 رقم اشتباه و رقم صحیح d باشد. مقدار d نمی تواند صفر باشد زیرا به این معنی است که ارقام یکسان هستند، اما d می تواند هر مقدار دیگری در {1، 2، 3، 4، 5، 6، 7، 8، 9} باشد. اگر رقم خطا در موقعیت فرد باشد (وزن 1)، سمت چپ معادله رقم چک با d تغییر می کند و معادل دیگر صفر نیست. اگر رقم خطا در موقعیت زوج باشد (وزن 3)، آنگاه سمت چپ 3 روز تغییر می کند، اما این تغییر نیز مدول 10 غیر صفر است، بنابراین معادله رقم چک برآورده نمی شود.
  • UPC-A می تواند حدود 89 درصد از خطاهای انتقال را تشخیص دهد. به طور خاص، اگر و فقط اگر تفاوت بین دو رقم مجاور 5 باشد، UPC-A نمی تواند جابجایی آنها را تشخیص دهد.
    1. اگر 2 رقم همسایه جابه‌جا شوند، یکی از ارقام a با 1 وزن می‌شود و رقم دیگر b = a + d با 3 وزن می‌شود که d تفاوت بین دو رقم است. اگر ارقام به ترتیب صحیح خود بودند، مشارکت می کردند
      در سمت چپ معادله رقم چک. در ترتیب جابجایی، آنها مشارکت می کنند
      .
      به LHS کم کردن این دو سهم نشان می دهد که آنها چقدر LHS را تغییر می دهند:
      تا زمانی که تغییر مدولار غیرصفر باشد، خطا شناسایی خواهد شد. اگر 2d ≡ 0 مدول 10، آنگاه تغییر تشخیص داده نخواهد شد. در نتیجه، تنها زمانی که تفاوت کاراکتر d ≡ 5 باشد، خطا تشخیص داده نمی شود (زمانی که d ≡ 0 ، "تغییر" منحط یک خطا نیست).
    2. بعد در نظر بگیرید که یک جابجایی چقدر فاصله d برابر با 5 دارد.
در اینجا جدول d-transpositions برای بارکدهای UPC-A آمده است
جدول d -transpositions برای بارکدهای UPC-A
د
شماره
0 1 2 3 4 5 6 7 8 9
1 0 0 0 1 0 2 0 3 0 4 0 5 0 6 0 7 0 8 0 9
2 1 1 1 2 1 3 1 4 1 5 1 6 1 7 1 8 1 9
3 2 2 2 3 2 4 2 5 2 6 2 7 2 8 2 9
4 3 3 3 4 3 5 3 6 3 7 3 8 3 9
5 4 4 4 5 4 6 4 7 4 8 4 9
6 5 5 5 6 5 7 5 8 5 9
7 6 6 6 7 6 8 6 9
8 7 7 7 8 7 9
9 8 8 8 9
10 9 9
مجموع 10 18 16 14 12 10 8 6 4 2
مجموع ردیف حاوی تعداد d -transpositions است، بنابراین نسبت خطاهای جابجایی غیرقابل شناسایی است (بدون توجه به جابجایی ها که در آن d = 0 ):

تغییرات

UPC در رایج ترین کاربرد آن از نظر فنی به UPC-A اشاره دارد.

انواع دیگر UPC وجود دارد:

  • UPC-B نسخه 12 رقمی UPC بدون رقم چک است که برای کد ملی دارو (NDC) و کد موارد مرتبط با سلامت ملی توسعه یافته است. [21] [ تأیید ناموفق ] دارای 11 رقم به اضافه یک کد محصول 1 رقمی است و مورد استفاده رایج نیست. [22]
  • UPC-C یک کد 12 رقمی با کد محصول و یک رقم چک است. در استفاده رایج نیست [22]
  • UPC-D یک کد با طول متغیر (12 رقم یا بیشتر) است که رقم دوازدهم رقم چک است. این نسخه ها رایج نیستند.
  • UPC-E یک کد 6 رقمی است که معادل آن در کد 12 رقمی UPC-A با سیستم شماره 0 یا 1 است.
  • UPC-2 یک مکمل 2 رقمی برای UPC است که برای نشان دادن نسخه یک مجله یا نشریه استفاده می شود.
  • UPC-5 یک مکمل 5 رقمی برای UPC است که برای نشان دادن قیمت خرده فروشی پیشنهادی برای کتاب ها استفاده می شود.

UPC-E

برای اجازه دادن به استفاده از بارکدهای UPC در بسته‌های کوچک‌تر، جایی که ممکن است یک بارکد کامل 12 رقمی مناسب نباشد، یک نسخه صفر UPC به نام UPC-E ایجاد شد که در آن رقم سیستم اعداد، همه صفرهای انتهایی در سازنده است. کد، و تمام صفرهای اول در کد محصول، سرکوب می شوند (حذف می شوند). [23] این نماد شناسی با UPC-A متفاوت است زیرا فقط از یک کد 6 رقمی استفاده می کند، از الگوی نگهبان M (وسط) استفاده نمی کند، و الگوی محافظ E (انتها) به صورت فاصله-bar-space-bar- تشکیل می شود. نوار Space، یعنی بارکد UPC-E از الگوی SDDDDDDE پیروی می کند. نحوه ارتباط یک UPC-E 6 رقمی با یک UPC-A 12 رقمی، توسط الگوی عددی UPC-E و الگوی برابری UPC-E تعیین می شود. این فقط می تواند با سیستم اعداد UPC-A 0 یا 1 مطابقت داشته باشد، که مقدار آن به همراه رقم بررسی UPC-A، الگوی برابری UPC-E رمزگذاری را تعیین می کند. با ارقام کد سازنده که با X و ارقام کد محصول با N نشان داده می شوند، سپس:

آخرین رقم UPC-E الگوی عددی UPC-E معادل UPC-A
0 XXNNN0 0 یا 1 + XX000-00NNN + رقم چک
1 XXNNN1 0 یا 1 + XX100-00NNN + رقم چک
2 XXNNN2 0 یا 1 + XX200-00NNN + رقم چک
3 XXXNN3 0 یا 1 + XXX00-000NN + رقم بررسی
4 XXXXN4 0 یا 1 + XXXX0-0000N + رقم چک
5 XXXXX5 0 یا 1 + XXXX-00005 + رقم چک
6 XXXXX6 0 یا 1 + XXXX-00006 + رقم چک
7 XXX7 0 یا 1 + XXXX-00007 + رقم چک
8 XXXX8 0 یا 1 + XXXX-00008 + رقم چک
9 XXXXX9 0 یا 1 + XXXX-00009 + رقم چک

به عنوان مثال، یک UPC-E 654321 ممکن است با UPC-A 065100004327 یا 165100004324 مطابقت داشته باشد، بسته به الگوی برابری UPC-E ارقام رمزگذاری شده، همانطور که در ادامه توضیح داده شده است:


رقم چک UPC-A
الگوی برابری UPC-E برای UPC-A

سیستم شماره 0

الگوی برابری UPC-E برای UPC-A

سیستم شماره 1

0 EEEOOO OOOEEE
1 EEOEOO OOEOEE
2 EEOOEO OOEEOE
3 EEOOOE OOEEEEO
4 EOEEOO OEOOEE
5 EOOEEO OEEOOE
6 EOOOEE OEEEEOO
7 EOEOEO OEOEOE
8 EOEOOE OEOEEO
9 EOOEOE OEEOEO
جدول رمزگذاری الگوی بارکد UPC-E SDDDDDDE
S
(شروع)
O
(رقم برابری فرد)
E
(رقم برابری زوج)
E
(پایان)
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9
UPC-E S.svg UPC-E 0ow.svg
3-2-1-1
UPC-E 1ow.svg
2-2-2-1
UPC-E 2ow.svg
2-1-2-2
UPC-E 3ow.svg
1-4-1-1
UPC-E 4ow.svg
1-1-3-2
UPC-E 5ow.svg
1-2-3-1
UPC-E 6ow.svg
1-1-1-4
UPC-E 7ow.svg
1-3-1-2
UPC-E 8ow.svg
1-2-1-3
UPC-E 9ow.svg
3-1-1-2
UPC-E 0ew.svg
1-1-2-3
UPC-E 1ew.svg
1-2-2-2
UPC-E 2ew.svg
2-2-1-2
UPC-E 3ew.svg
1-1-4-1
UPC-E 4ew.svg
2-3-1-1
UPC-E 5ew.svg
1-3-2-1
UPC-E 6ew.svg
4-1-1-1
UPC-E 7ew.svg
2-1-3-1
UPC-E 8ew.svg
3-1-2-1
UPC-E 9ew.svg
2-1-1-3
UPC-E E.svg

UPC-E 654321 با الگوی برابری "EOEOEO" (UPC-A 065100004327) به صورت کدگذاری می شود

1-1-1 4-1-1-1 1-2-3-1 2-3-1-1 1-4-1-1 2-2-1-2 2-2-2-1 1-1 -1-1-1-1.

بارکد به شکل زیر خواهد بود:

UPC-E-654321.png

EAN-13

EAN-13 به عنوان یک ابرمجموعه از UPC-A ساخته شد و یک رقم اضافی به ابتدای هر عدد UPC-A اضافه کرد. این امر تعداد مقادیر منحصر به فرد را که از لحاظ نظری ممکن است ده برابر به 1 تریلیون افزایش داد. بارکدهای EAN-13 همچنین نشان‌دهنده کشوری هستند که شرکتی که محصول را می‌فروشد در آن مستقر است (که ممکن است با کشوری که کالا در آن تولید شده یکی باشد یا نباشد). با توجه به کدهای کشور GS1 ، سه رقم ابتدایی کد، این را تعیین می کند . هر کد UPC-A را می توان به راحتی با اضافه کردن 0 رقم به کد UPC-A به کد EAN-13 معادل تبدیل کرد. این رقم چک را تغییر نمی دهد . همه سیستم‌های نقطه فروش اکنون می‌توانند هر دو را به یک اندازه درک کنند.

EAN-8 یک تغییر 8 رقمی از بارکد EAN است.

نکات استفاده از UPC:

  • تمام محصولاتی که با EAN علامت گذاری شده اند در حال حاضر در آمریکای شمالی پذیرفته می شوند، علاوه بر محصولاتی که قبلاً با UPC علامت گذاری شده اند.
  • محصولات با UPC موجود نیازی به علامت گذاری مجدد با EAN ندارند.
  • در آمریکای شمالی، EAN 30٪ کدهای بیشتری را اضافه می کند، عمدتاً با افزودن ارقام 10 تا 12 به ارقام UPC 00 تا 09. این یک انگیزه قوی برای حذف تدریجی UPC است.

همچنین ببینید

  • GS1 - سازمان بین المللی استانداردهای زنجیره تامین
  • رسید خرید

منابع

  1. «نمودار بارکد GS1» . GS1 ایالات متحده 3 آوریل 2013.
  2. ^ بسکر، ایمک؛ سیمکو، تیموتی (2021). "بالا، پایین دست: انتشار و تاثیرات کد جهانی محصول" . مجله اقتصاد سیاسی . 129 (4): 1252-1286. doi : 10.1086/712762 . ISSN 0022-3808 . S2CID 229505646 .  
  3. ثبت اختراع ایالات متحده 2612994 ، Woodland, Norman J. & Silver, Bernard , "Classifying Apparatus and Method" صادر شده در 7 اکتبر 1952 
  4. ^ a b "UPC - تحول خرده فروشی" . آی بی ام 7 مارس 2012 . بازبینی شده در 12 نوامبر 2021 .
  5. «تاریخچه مختصر بارکد» . درخواست کنید. 153 (3): 42. مارس 2010. بایگانی شده از نسخه اصلی در 1 ژوئن 2016.
  6. «تاریخ نوآورانه ما – اولین‌های مک‌کینزی» . mckinsey.com _ 2013. بایگانی شده از نسخه اصلی در 12 اکتبر 2013.(به اسلاید 10 از 18 مراجعه کنید)
  7. نلسون، بنجامین (1997). کارتهای پانچ شده به بارکدها: سفری 200 ساله با شرح بیش از 260 کد . Peterborough, NH: Helmers Publishing. شابک 978-091126112-7.
  8. آلفرد، رندی (26 ژوئن 2008). "26 ژوئن 1974: توسط آدامس! راه جدیدی برای خرید آدامس وجود دارد" . سیمی . بایگانی شده از نسخه اصلی در ۲۴ اوت ۲۰۱۰.
  9. ^ هلر، ناتان. "اسکن گونه ها" . مجله هاروارد . سپتامبر – اکتبر 2005.
  10. «تاریخچه بارکد» . اسمیتسونیان 23 سپتامبر 2015 . بازبینی شده در 12 اوت 2021 .
  11. «تاریخ شفاهی: موری ادن - ویکی تاریخچه مهندسی و فناوری» . ethw.org _ 10 نوامبر 1999 . بازیابی شده در 4 ژانویه 2021 .
  12. ^ کیفیت، کمیسیون ملی بهره وری و کار (1975). فناوری کاربردی در صنایع غذایی: گزارش مقدماتی . کمیسیون ملی بهره وری و کیفیت کار. پ. 15.
  13. هابرمن، آلن ال. (2001). بیست و پنج سال پشت میله ها: مجموعه مقالات بیست و پنجمین سالگرد UPC در موسسه اسمیتسونیان، 30 سپتامبر 1999 . کمیته انتشارات Wertheim دانشگاه هاروارد. ص 74، 108. شابک 978-0-674-00657-7.
  14. ^ کازانووا، استفانی. موری ادن، مهندس زیست پزشکی و عاشق آواز خواندن، در 99 سالگی در توسان درگذشت . آریزونا دیلی استار . بازبینی شده در 14 ژانویه 2021 .
  15. راث، براد (17 آوریل 2020). " موری ادن " . متوسط _ بازبینی شده در 14 ژانویه 2021 .
  16. "اعضای تالار مشاهیر فارغ التحصیلان" . انجمن فارغ التحصیلان دانشگاه مریلند . دانشگاه مریلند. 2005. بایگانی شده از نسخه اصلی در 23 ژوئن 2007 . بازیابی شده در 10 ژوئن 2009 . جورج لورر پس از فارغ التحصیلی از مریلند در سال 1951، به عنوان مهندس جوان به IBM پیوست و در رتبه های بالاتر تا مهندس ارشد کار کرد. در سال 1969، او به بخش فنی مهندسی بازگشت و بعداً وظیفه مهم طراحی کد و نماد برای شناسایی محصول برای شورای کد یکنواخت خواربارفروشی به او محول شد. راه حل او - کد جهانی محصول - به طور اساسی دنیای خرده فروشی را تغییر داد. از آن زمان، او کد را با افزودن یک رقم سیزدهم افزایش داده است.
  17. ^ rainman_63 (6 آوریل 2005). "طراحی بارکدهای UPC-A با سی شارپ" . codeproject.com .
  18. ^ راهنمای مشخصات نماد UPC . شورای کد یکنواخت . 1986.
  19. «بارکد برای محصولات دارویی و جراحی» . SimplyBarcodes.com .
  20. «بارکد برای کوپن» . SimplyBarcodes.com .
  21. «NHRIC (کد اقلام مرتبط با سلامت ملی)» . HealthData _ وزارت بهداشت و خدمات انسانی ایالات متحده.
  22. ^ a b "Bar Code 1: Web of Information about Bar Code UPC and EAN Bar Code Page" . ارتباطات آدامز 20 ژوئن 2013.
  23. "نمادشناسی UPC-A – اطلاعات پس زمینه UPC-E و تبدیل UPC-A به UPC-E" . barcodeisland.com . بازیابی شده در 21 ژانویه 2013 .

ادامه مطلب

  • US 3832686 ، Bilgutay، Ilhan M.، "Bar Code Font"، منتشر شده در 11 مه 1972، صادر شده در 27 اوت 1974 
  • US 3145291 ، Brainerd، HB، "سیستم شناسایی"، منتشر شده در 2 ژوئیه 1959، صادر شده در 18 آوریل 1964  بارکد راه آهن.
  • US 3617707 ، Shields، Charles B. & Stapelfeldt, Roelif، "سیستم شناسایی خودکار خودرو"، منتشر شده در 17 اوت 1967، صادر شده در 2 نوامبر 1971 
  • US 3723710 , Crouse, William G. & Jones, John E., "روش و دستگاه برای خواندن و رمزگشایی یک بارکد خودکار با چگالی بالا" منتشر شده در 28 ژوئن 1971، صادر شده در 27 مارس 1973 

پیوندهای خارجی