Codabar — это линейная символика штрихкода, разработанная в 1972 году компанией Pitney Bowes Corp. [1] Она и ее варианты также известны как Codeabar, Ames Code, NW-7, Monarch, Code 2 of 7, Rationalized Codabar, ANSI/AIM BC3-1995 или USD-4. Хотя Codabar не был зарегистрирован как федеральная торговая марка США , его дефисный вариант, Code-a-bar , является зарегистрированной торговой маркой. [2]
Codabar был разработан для точного считывания даже при печати на матричных принтерах для многокомпонентных форм, таких как авианакладные FedEx и формы банков крови , где варианты все еще используются по состоянию на 2007 год [обновлять]. Хотя новые символики содержат больше информации в меньшем пространстве, Codabar имеет большую установленную базу в библиотеках. Возможно даже печатать коды Codabar с помощью ударных принтеров, похожих на пишущие машинки, что позволяет создавать множество кодов с последовательными числами без необходимости использования компьютерного оборудования. После каждого напечатанного кода штамп принтера механически поворачивается на следующее число, как, например, в механических счетчиках миль .
Поскольку Codabar является самопроверяемым, большинство стандартов не определяют контрольную цифру . [3]
Некоторые стандарты, использующие Codabar, определяют контрольную цифру, но алгоритм не универсален. Для чисто числовых данных, таких как библиотечный штрих-код, изображенный выше, популярен алгоритм Луна . [4]
Когда возможны все 16 символов, используется простая контрольная сумма по модулю 16. [5] Значения от 10 до 19 присваиваются символам –$:/.+ABCD
соответственно.
Каждый символ состоит из 7 элементов, 4 полос и 3 пробелов, и отделен от соседних символов дополнительным узким пробелом. Каждый может быть либо узким (двоичное значение 0), либо широким (двоичное значение 1). Соотношение ширины между узким и широким может быть выбрано между 1:2,25 и 1:3. Минимальная узкая ширина варьируется в зависимости от спецификации, при этом наименьшая составляет 0,0065 дюйма (0,165 мм), что позволяет кодировать 11 цифр на дюйм. [6]
Персонажи делятся на три группы в зависимости от количества широких элементов:
Оригинальная спецификация Pitney-Bowes фактически изменяет соотношение ширины узкого:широкого, чтобы сделать все символы одинаковой ширины. То есть, символы с двумя широкими элементами используют соотношение 3:1, в то время как символы с тремя широкими элементами используют соотношение 2:1, поэтому все символы имеют ширину 10 узких элементов (плюс межсимвольное пространство, что дает 11). "Рационализированный кодаб" использует фиксированное соотношение и позволяет изменять ширину символов.
В зависимости от конкретной спецификации, например, спецификации унифицированных символов Ассоциации по автоматической идентификации и мобильности , тело строки Codabar может кодировать только цифры от 0 до 9. Некоторые варианты допускают символы доллара, тире, знака «плюс», двоеточия, косой черты и точки. [7]
Буквы алфавита A, B, C, D (в некоторых спецификациях E, N, звездочка и T) используются для обозначения начала и конца штрихкода. Они не отображаются в тексте строки Codabar. 16 возможных комбинаций начального и конечного символов могут использоваться для различения различных приложений. Например, показанный библиотечный штрихкод начинается с A и заканчивается на B. С другой стороны, штрихкоды номеров отслеживания FedEx начинаются с B и заканчиваются на D.
Пространства | Бары | |||||||
---|---|---|---|---|---|---|---|---|
0001 | 0010 | 0100 | 1000 | |||||
001 | 0 | ллл л | 1 | лл лл | 4 | л л л л | 5 | л л л |
010 | 2 | лл лл | – | лл лл | $ | л л лл | 9 | л л лл |
100 | 6 | л л л | 7 | лл лл | 8 | л л лл | 3 | л ллл |
011 | С или * | лл лл | Д или Э | лл лл | А или Т | л л лл | (обратная Б/Н) | |
110 | Рожденный | ллл л | (обратный А/Т) | (обратный D/E) | (обратный C/*) | |||
1110 | 1101 | 1011 | 0111 | |||||
000 | . | ллл л | / | лл лл | : | л л лл | + | л ллл |
Хотя существует 12 комбинаций из одной широкой полосы (четыре варианта) и двух широких пробелов (три варианта), коды старта/стопа ограничены двумя способами: