штрих код code128 что это

Использование штрих-кода CODE-128 для производства пластиковых карт

В отличие от штрих-кодов EAN-13 и EAN-8, штрих-код CODE-128 не имеет фиксированного количества символов, и в нем не используется контрольный символ.

Принципиальное отличие данного формата — возможность кодирования не только цифр, но и строчных или заглавных латинских букв, а также большого набора спецсимволов

Технические требования к символике штрихового кода Code 128, показатели символики, кодирование знаков данных, размеры, алгоритмы декодирования, параметры применения и строки-префиксы и идентификатора символики в России регламентируются ГОСТ 30743-2001 (ИСО/МЭК 15417—2000) «Автоматическая идентификация. Кодирование штриховое. Спецификация символики Code 128 (Код 128)».

Какие символы кодируются в штрих-код CODE-128?

В штрих-код CODE-128 можно закодировать до 70 символов:

Набор символов позволяет наносить на карту не только штрих-код с номером, например 00001, но и карточки, с обозначением идентификатора, содержащего буквенный префикс (например, AC0001) или полностью буквенные значения.

Внешний вид штрих-кода CODE-128

На рисунке, расположенном ниже, размещен пример штрих-кода с номером 00001 с различными вариантам отображения подписанного номера.

вы можете проверить
штрих-коды сосканировав их с экрана своим телефоном

CODE-128 С ПОДПИСАННЫМ НОМЕРОМ

Под штрих-кодом полностью отображен закодированный номер.

Введите символы и цифры:

CODE-128 С ЧАСТИЧНО ПОДПИСАННЫМ НОМЕРОМ

Под штрих-кодом полностью отображена часть закодированного номера.

Введите символы и цифры:

Отображать цифр справа:

CODE-128 БЕЗ ПОДПИСАННОГО НОМЕРА

Под штрих-кодом полностью отображен закодированный номер.

Введите символы и цифры:

Структура Code 128

Структура штрих-кода Code128 достаточно проста. Он состоит из шести зон:

Символы Code128 состоят из трех штрихов и трех промежутков. Штрихи и промежутки имеют модульное построение. Ширина каждого модуля составляет от 1 до 4 модулей (1 модуль = 0,33 мм). Ширина знака равна 11 модулям. Остановочный (стоп) знак состоит из тринадцати модулей и имеет четыре штриха и три промежутка.

Контрольный знак Code 128

В спецификации Code128 использование контрольного знака является обязательным.

Согласно таблице символов Code128, каждому знаку присваивается соответствующее значение. Затем, для каждого знака, кроме знака «Stop» и контрольного знака, назначается весовой коэффициент, 1, 2, 3,…,n. При этом знакам «Start» и следующему за ним первому знаку, присваивается весовой коэффициент равный 1.

Контрольный знак вычисляется как сумма произведений весовых коэффициентов на соответствующие значения по модулю 103. Располагается контрольный знак между последним знаком данных и знаком «Stop».

Источник

Мой штрихкод. Code128

Однажды в процессе производственной деятельности у меня появилась необходимость генерации штрихкода по стандарту code128. Появилась в виду того, что имевшаяся в эксплуатации функция (хранимая процедура в базе Oracle) генерировала клёвый, полосатый штрихкод, который читался не во всех случаях. Разработчики в своё время оттестировали эту процедуру весьма некачественно, но перерабатывать уже не собирались т.к. проект был давно сдан, а потребности в считывании так и не появились.

Первая мысль — поиск готовых библиотек. Навскидку определили критерии — с pl/sql не связываемся, пусть это будет внешний сервис: возможно кусок на javascript для генерации прямо на страничке, либо обращение за картинкой к ближайшему серверу где имеется php. Беглый поиск в интернете показал что тема истоптана весьма плотно. Есть как наколенные поделки уровня лабораторки по программированию, так и мощные библиотеки для всех вариантов кодирования вплоть до qr-кодов. Варианты с JavaScript пришлось отбросить т.к. они во-первых практически все «обфусканы» (даже непонятно, то ли для сокращения объема, то ли стыдно исходники показать), во-вторых генерируют строку для отображения определенным шрифтом, наличие которого не всегда можно обеспечить на клиентском месте и требует дополнительных обработок для экранирования спецсимволов. Внимательное изучение библиотек и кусков кода на php тоже произвело тягостное впечатление — на первый взгляд всё вроде бы правильно: и классы написаны на все случаи жизни, комментарии в наличии, украшательства типа выбора цвета и рамочек, примеры подготовлены. Начнёшь вникать — хотят либо php самой распоследней версии (на боевых серверах не всегда это получается добыть), либо внутренняя логика не различима совсем, либо штрихкод на выходе получается длиннее ожидаемого. Вот последнее не дало покоя и подтолкнуло к собственной реализации.

Самое время пощупать теорию. Вернее мы с ней познакомились намного раньше, просто до последнего не хотелось ввязываться в дополнительное программирование. Исторические факты опустим, а вот очень хорошее техническое описание имеется на http://code128.narod.ru/ (в архиве это файл Descript.doc ) либо в Википедии. В принципе, это всё что нам потребуется для понимания и собственной реализации алгоритма (тут я немного лукавлю — из любой готовой библиотеки нужно выдрать таблицы толщин штрихов, чтобы не вбивать их вручную). Ну и напишем всё это безобразие на php, заодно посмотрим пару прикольных моментов, про которые все забывают или стесняются использовать.

Теория гласит, что code128 позволяет закодировать (сюрпрайз!) 128 символов, при этом нам доступно 3 алфавита, между которыми можно переключаться по ходу дела. Наибольший практический интерес представляют алфавит «B» для буквенно-цифровых символов и алфавит «С» который используется для кодирования цифр, но с некоторой оптимизацией — одним штриховым символом можно закодировать 2 исходных символа и получить более короткий штрихкод. Вот эта оптимизация пока не даётся ни одному php-разработчику — максимум что я видел это попытка в начале кодирования определить состав строки и при наличии только цифр переключаться на алфавит «С». В остальных библиотеках это банальная подстановка символов штрихкода по таблице.

штрих код code128 что это. image loader. штрих код code128 что это фото. штрих код code128 что это-image loader. картинка штрих код code128 что это. картинка image loader. В отличие от штрих-кодов EAN-13 и EAN-8, штрих-код CODE-128 не имеет фиксированного количества символов, и в нем не используется контрольный символ.

Сразу набросаем простейший класс который содержит сам текст, такие-же классы для рассмотрения вариантов по алфавиту B и С, длину последовательности. Делаем ему минимальный конструктор — на входе строка для кодирования, режим кодирования, ссылки на потомков. В начале конструктора добавляем проверки, чтобы не прорабатывать данную ветку дерева:

и сразу ловим конкретный косяк — куча «пустых» объектов. И это не смотря на то что мы явно отказались создаваться и вроде как железно возвращаем NULL! В общем сразу надо понять, что в php объект создаётся в любом случае. Полагаю что также и в остальных объектно-ориентированных языках. И все эти условия надо проверять перед созданием объекта. Следовательно правильный конструктор будет выглядеть примерно так:

Итак, худо-бедно мы нашли самый короткий путь (штрихкод). Надо его вывести для начала на экран. Делаем в два этапа: сначала от потомка возвращаемся к родителю. Итоговые символы, включая переключение между алфавитами, пушим (push) в массив. Да, в PHP есть такая функция, и она позволяет нам сделать из массива довольно удобный стэк.

Когда потребуется вывести строку — используем array_pop. Таким образом, мы по прежнему используем данный массив как стэк и легко выводим информацию в обратном порядке. Попутно готовим дополнительную обвязку для нашего штрихкода — старт/стоп/контрольная сумма.

Как этим пользоваться? В файл с классом в конец добавим пару строк:

попробовать можно сразу, вставив в html-страничку примерно вот такой тэг:

Источник

Как устроен штрихкод?

Со штрихкодами современный человек сталкивается каждый день, даже не задумываясь об этом. Когда мы покупаем в супермаркете продукты, их коды считываются именно с помощью штрихкода. Также посылки, товары на складах, и прочее и прочее. Однако, мало кто знает, как же реально это работает.

Как устроен баркод, и что закодировано на этой картинке?

штрих код code128 что это. . штрих код code128 что это фото. штрих код code128 что это-. картинка штрих код code128 что это. картинка . В отличие от штрих-кодов EAN-13 и EAN-8, штрих-код CODE-128 не имеет фиксированного количества символов, и в нем не используется контрольный символ.

Попробуем разобраться, заодно напишем декодер таких кодов.

Введение

Использование штрихкодов имеет давнюю историю. Первые попытки автоматизации начинались еще в 50х, патент на устройство считывания кодов был получен в 1952г. Инженер, занимавшийся сортировкой вагонов на железной дороге, захотел упростить процесс. Идея была очевидной — кодировать номер с помощью полос и считывать их с помощью фотоэлементов. В 1962г коды стали официально использоваться для идентификации вагонов на американской железной дороге (система KarTrak), в 1968 прожектор заменили лазерным лучом, что позволило повысить точность и уменьшить размер считывателя. В 1973г появился формат «универсального кода продукта» (Universal Product Code), и в 1974 с использованием сканера кодов был продан первый продукт (жевательная резинка Wrigley’s — это же США;) в супермаркете. В 1984 треть магазинов использовали штриходы, в России же они начали использоваться примерно с 90х годов.

Разных кодов под разные задачи сейчас используется довольно много, к примеру, последовательность «12345678» может быть представлена такими способами (и это еще не все):

штрих код code128 что это. image loader. штрих код code128 что это фото. штрих код code128 что это-image loader. картинка штрих код code128 что это. картинка image loader. В отличие от штрих-кодов EAN-13 и EAN-8, штрих-код CODE-128 не имеет фиксированного количества символов, и в нем не используется контрольный символ.

Приступим к побитовому разбору. Далее, все ниженаписанное будет относиться к виду «Code-128» — просто потому, что его формат довольно простой и понятный. Желающие поэкспериментировать с другими видами, могут открыть онлайн-генератор и посмотреть самостоятельно.

На первый взгляд штрихкод кажется просто беспорядочной последовательностью линий, на самом деле, его структура четко фиксирована:

штрих код code128 что это. . штрих код code128 что это фото. штрих код code128 что это-. картинка штрих код code128 что это. картинка . В отличие от штрих-кодов EAN-13 и EAN-8, штрих-код CODE-128 не имеет фиксированного количества символов, и в нем не используется контрольный символ.

1 — Пустое место, нужное для четкого определения начала кода
2 — Стартовый символ. Для Code-128 возможны 3 варианта (называемых А, В и С): 11010000100, 11010010000 или 11010011100, им соответствуют разные кодовые таблицы (подробнее в Википедии).
3 — Собственно код, содержащий нужные нам данные
4 — Контрольная сумма
5 — Стоп символ. Для Code-128 это 1100011101011.
6(1) — Пустое место.

Теперь о том, как кодируются биты. Тут все очень просто — если взять ширину самой тонкой линии за «1», то линия двойной ширины даст код «11», тройная «111», и так далее. Пустое место будет «0» или «00» или «000» по тому же самому принципу. Желающие могут сравнить стартовый код на картинке, чтобы убедиться что правило выполняется.

Теперь можно начинать программировать.

Получаем битовую последовательность

В принципе, это самая сложная часть, и разумеется, алгоритмически ее можно реализовать по-разному. Не уверен, что приведенный ниже алгоритм оптимальный, но для учебного примера его вполне достаточно.

Для начала загрузим изображение, растянем его по ширине, возьмем из середины изображения горизонтальную линию, преобразуем ее в ч/б и загрузим в виде массива.

На штрихкоде черному соответствует «1», а в RGB наоборот, 0, так что массив нужно инвертировать. Заодно вычислим среднее значение.

Запускаем программу, чтобы убедиться, что баркод загружен корректно:

штрих код code128 что это. 8zjppozs3lgketrraqtqeuzgj8g. штрих код code128 что это фото. штрих код code128 что это-8zjppozs3lgketrraqtqeuzgj8g. картинка штрих код code128 что это. картинка 8zjppozs3lgketrraqtqeuzgj8g. В отличие от штрих-кодов EAN-13 и EAN-8, штрих-код CODE-128 не имеет фиксированного количества символов, и в нем не используется контрольный символ.

Теперь нужно определить ширину одного «бита». Для этого мы выделим начало стартовой последовательности «1101», записывая моменты перехода графика через среднюю линию.

Мы записываем только переходы через середину, так что код «1101» будет записан как «101», но нам этого достаточно чтобы узнать его ширину в пикселах.

Теперь собственно декодирование. Находим очередной переход через середину, и определяем число бит, попавших в интервал. Поскольку совпадение не абсолютное (код может быть слегка изогнут или растянут), используем округление.

Не уверен что это оптимальный вариант, возможно, есть способ лучше, желающие могут написать в комментариях.

Если все было сделано правильно, то мы получаем на выходе примерно такую последовательность:

11010010000110001010001000110100010001101110100011011101000111011011
01100110011000101000101000110001000101100011000101110110011011001111
00010101100011101011

Декодирование

Здесь никаких сложностей в принципе, нет. Символы в Code-128 кодируются 11-битным кодом, который имеет 3 разновидности (А, В и С) и может хранить либо разные кодировки символов, либо цифры от 00 до 99.

В нашем случае, начало последовательности 11010010000, что соответствует «Code B». Было жутко влом вбивать вручную все коды из Википедии, поэтому таблица была просто скопирована из браузера и ее парсинг был тоже сделан на Python (hint: на продакшене так делать не надо).

Теперь осталось самое простое. Разбиваем нашу битовую последовательность на 11-символьные блоки:

Наконец, формируем строку и выводим ее на экран:

Ответ на то, что закодировано в таблице, приводить не буду, пусть это будет домашним заданием для читателей (использование готовых программ для смартфонов будет считаться читерством:).

В коде также не реализована проверка CRC, желающие могут сделать это самостоятельно.

Разумеется, алгоритм неидеален, и был написан за полчаса. Для более профессиональных целей есть готовые библиотеки, например pyzbar. Код с использованием такой библиотеки займет всего 4 строчки:

(предварительно нужно установить библиотеку, введя команду «pip install pyzbar»)

Дополнение: о подсчете CRC написал в комментариях пользователь vinograd19:

Интересна история контрольной цифры. Она возникла эволюционно.
Контрольная цифра нужна для того, чтобы избежать неправильного декодирования. Если штрихкод был 1234, а его распознали как 7234, то нужна валидация, которая предупредит замену 1 на 7. Валидация может быть неточная, чтобы хотя бы в 90% невалидные номера определялись заранее.

1-й подход: Давайте просто возьмем сумму. Чтобы в остатке от деления на 10 был 0. Ну то есть первые 12 символов несут информационную нагрузку, а последняя цифры подбирается так, чтобы сумма цифр делилась на 10. Декодируем последовательность, если сумма не делится на десять — значит декодировали с багом и нужно сделать это еще раз. Например, код 1234 — валидный. 1+2+3+4 = 10. Код 1216 — тоже валидный, а вот 1218 — нет.

Это позволяет избежать проблем с автоматикой. Однако в момент создания штрихкодов был фоллбек в виде набивания номер на клавишах. И там есть плохой кейс: если поменять порядок следования двух цифр, то контрольная сумма не меняется, и это плохо. То есть если штрихкод 1234 был вбит как 2134, контрольная сумма сойдется, а вот номер мы вбили неправильный. Оказывается, неправильный порядок цифр — это распространенный кейс, если стучать по клавишам быстро.

2-й подход. Хорошо, давайте сумму сделаем чуть сложнее. Чтобы цифры на четных местах учитывались дважды. Тогда при изменении порядка, сумма точно не сойдется к нужной. Например код 2364 валидный (2 + 3+3 + 6 + 4+4 = 20), а код 3264 — невалидный (3+ 2+2 + 6 + 4+4 = 19). Но тут оказался еще один плохой пример вбития. Некоторые клавиатуры такие, что десять цифр располагаются в два ряда. первый ряд 12345 и под ним второй второй ряд 67890. Если вместо клавишы «1» нажать правее клавишу «2», то контрольная сумма предупредит неправильный ввод. А вот если вместо клавишу «1» нажать ниже клавишу «6» — то может не предупредить. Ведь 6=1+5, и в случае когда эта цифра стоит на четном месте при вычислении контрольной суммы, мы имеем 2*6 = 2*1 + 2*5. То есть контрольная сумму увеличилась ровно на 10, поэтому ее последняя цифра не изменилась. Например контрольные суммы кодв 2134 и 2634 одинаковые. Та же ошибка будет, если мы вместо 2 нажмем 7, вместо 3 нажмем 8 и тд.

3-й подход. Ок, давайте что ли возьмем опять сумму, только цифры, стоящие на четных местах будем учитывать… трижды. То есть код 1234565 — валидный, потому как 1 + 2*3 + 3 + 4*3 + 5 + 6*3 +5 = 50.

Описанный способ стал стандартом вычисления контрольной суммы EAN13 за небольшими правками: число цифр стало фиксированным и равно 13, где 13-ая — это та самая контрольная цифра. Цифры на нечетных местах считаются трижды, на четных — один раз.

Заключение

Как можно видеть, даже такая простая вещь как штрихкод, имеет в себе немало интересного. Кстати, еще один лайфхак для тех, кто дочитал до сюда — текст под штрихкодом (если он есть) полностью дублирует его содержание. Это сделано для того, чтобы в случае нечитабельности кода, оператор мог ввести его вручную. Так что узнать содержимое штрихкода обычно просто — достаточно посмотреть на текст под ним.

Как подсказали в комментариях, наиболее популярным в торговле является код EAN-13, битовое кодирование там такое же, а структуру символов желающие могут посмотреть самостоятельно.

Если у читателей не пропал интерес, отдельно можно рассмотреть QR-коды.

Источник

Штрих код code128 что это

ГОСТ 30743-2001
(ИСО/МЭК 15417-2000)

Спецификация символики Code 128 (Код 128)

Automatic identification. Bar coding.
Symbology specification Code 128

Дата введения 2002-01-01

1 РАЗРАБОТАН ЗАО «Фирма ПИЛОТ» совместно с Ассоциацией автоматической идентификации ЮНИСКАН/EAN РОССИЯ/АIМ РОССИЯ в рамках Межгосударственного технического комитета МТК 517 «Автоматическая идентификация»

ВНЕСЕН Госстандартом России

2 ПРИНЯТ Межгосударственным Советом по стандартизации, метрологии и сертификации (протокол N 19 от 24 мая 2001 г.)

За принятие проголосовали:

Наименование национального органа по стандартизации

Госстандарт Республики Беларусь

Госстандарт Республики Казахстан

4 Постановлением государственного комитета Российской Федерации по стандартизации и метрологии от 16 августа 2001 г. N 335-ст межгосударственный стандарт ГОСТ 30743-2001 (ИСО/МЭК 15417-2000) введен в действие непосредственно в качестве государственного стандарта Российской Федерации с 1 января 2002 г.

Введение

Производителям оборудования для штрихового кодирования и пользователям технологии штрихового кодирования необходимы общедоступные стандартные спецификации символик штрихового кода для разработки оборудования и программного обеспечения.

1 Область применения

Настоящий стандарт устанавливает технические требования к символике штрихового кода Code 128 (Код 128), показатели символики Code 128, кодирование знаков данных, размеры, алгоритмы декодирования, параметры применения, определяемые пользователями, и строки-префиксы идентификатора символики.

2 Нормативные ссылки

ГОСТ 27463-87 Системы обработки информации. 7-битные кодированные наборы символов

ГОСТ 27465-87 Системы обработки информации. Символы. Классификация

ГОСТ 30721-2000 / ГОСТ Р 51294.3-99 Автоматическая идентификация. Кодирование штриховое. Термины и определения

ГОСТ 34.302.2-91 (ИСО 8859-2-87) Наборы 8-битных однобайтовых кодированных графических символов. Латинский алфавит N 2

3 Термины и определения

В настоящем стандарте применяют термины по ГОСТ 30721.

4 Требования

4.1 Показатели символики

К показателям символики Code 128 относят следующие показатели:

а) набор кодированных знаков:

1) все 128 знаков версии КОИ-7 в соответствии с [1]*, то есть знаки с десятичными значениями от 0 до 127 включительно,

2) знаки версии КОИ-8 с десятичными значениями от 128 до 255 также могут быть закодированы,

3) четыре функциональных знака, не являющихся данными,

4) четыре знака для вызова кодируемого набора знаков,

5) три знака Start (СТАРТ)**,

6) один знак Stop (СТОП)**,

(ТИЛЬДА) (десятичное значение 111).

** В скобках указано русское обозначение знака согласно приложению L.

4.2 Структура символа

Символы Code 128 должны включать:

a) начальную свободную зону;

c) один или несколько знаков, представляющих данные и специальные знаки;

d) контрольный знак символа;

f) конечную свободную зону.

На рисунке 1 представлен символ Code 128, кодирующий текст «AIM».

штрих код code128 что это. P005E. штрих код code128 что это фото. штрих код code128 что это-P005E. картинка штрих код code128 что это. картинка P005E. В отличие от штрих-кодов EAN-13 и EAN-8, штрих-код CODE-128 не имеет фиксированного количества символов, и в нем не используется контрольный символ.

4.3 Значения знаков

4.3.1 Структура знака символа

Сумма модулей в штрихах в любом знаке символа всегда должна быть четной (четный паритет), поэтому сумма модулей в пробелах всегда должна быть нечетной. Эта особенность паритета обеспечивает выполнение самоконтроля знака.

На рисунке 2 приведен знак Start A.

штрих код code128 что это. P006C0000. штрих код code128 что это фото. штрих код code128 что это-P006C0000. картинка штрих код code128 что это. картинка P006C0000. В отличие от штрих-кодов EAN-13 и EAN-8, штрих-код CODE-128 не имеет фиксированного количества символов, и в нем не используется контрольный символ.

штрих код code128 что это. P006C0002. штрих код code128 что это фото. штрих код code128 что это-P006C0002. картинка штрих код code128 что это. картинка P006C0002. В отличие от штрих-кодов EAN-13 и EAN-8, штрих-код CODE-128 не имеет фиксированного количества символов, и в нем не используется контрольный символ.

На рисунке 3 приведен знак символа с закодированным значением 35, который представляет знак данных С в кодируемых наборах А или В, или две указанные цифры 35 в кодируемом наборе знаков С.

На рисунке 4 приведен знак Stop.

штрих код code128 что это. P0070. штрих код code128 что это фото. штрих код code128 что это-P0070. картинка штрих код code128 что это. картинка P0070. В отличие от штрих-кодов EAN-13 и EAN-8, штрих-код CODE-128 не имеет фиксированного количества символов, и в нем не используется контрольный символ.

4.3.2 Кодирование знаков данных

Code 128 имеет три уникальных кодируемых набора знаков данных, приведенных в таблице 1 (наборы А, В и С). Представленные комбинации штрихов и пробелов знаков символов соответствуют знакам данных, приведенным в графах с заголовками «Кодируемый набор А», «Кодируемый набор В» или «Кодируемый набор С». Выбор кодируемого набора зависит от знака Start или использования одного из знаков Code А (Код A), Code В (Код В) или Code С (Код С), или знака Shift (РЕГИСТР). Если символ начинается со знака Start А, то изначально определен кодируемый набор А. Аналогично определяют наборы В и С, когда символ начинается со знака Start В или С соответственно. Кодируемый набор может быть изменен в пределах символа при помощи знаков Code A, Code В и Code С или знака Shift (использование этих специальных знаков в соответствии с 4.3.4.2).

Одни и те же данные могут быть представлены различными символами Code 128 с использованием различных комбинаций знаков Start, знаков кодируемых наборов Code A, Code В и Code С, и знака Shift. Применение не должно устанавливать кодируемый набор для использования. В приложении Е приведены правила, способствующие минимизации длины символа для любых данных. В дополнение к этому декодер должен декодировать символы, содержащие допустимые комбинации знаков Start, Code и Shift, помимо указанных в приложении Е, например символ со знаком Code в конце данных.

Каждому знаку символа соответствует числовое значение, приведенное в таблице 1, которое используют для вычисления контрольного знака символа. Оно может быть также использовано для преобразований в значения КОИ-7 (КОИ-8) и обратно (приложение D).

4.3.3 Кодируемые наборы знаков

4.3.3.1 Кодируемый набор А

Кодируемый набор А включает все стандартные прописные латинские буквы и цифры, специальные графические знаки (знаки пунктуации) и управляющие знаки (т.е. знаки версии КОИ-7 с десятичными значениями от 00 до 95), а также семь специальных знаков.

Источник

Штрих код code128 что это

ГОСТ ISO/IEC 15417-2013

ТЕХНОЛОГИИ АВТОМАТИЧЕСКОЙ ИДЕНТИФИКАЦИИ И СБОРА ДАННЫХ

Спецификация символики штрихового кода Code 128

Information technology. Automatic identification and data capture techniques. Code 128 bar code symbology specification

Дата введения 2014-07-01

Предисловие

Цели, основные принципы и основной порядок проведения работ по межгосударственной стандартизации установлены в ГОСТ 1.0-2015 «Межгосударственная система стандартизации. Основные положения» и ГОСТ 1.2-2015 «Межгосударственная система стандартизации. Стандарты межгосударственные, правила и рекомендации по межгосударственной стандартизации. Правила разработки, принятия, обновления и отмены»

Сведения о стандарте

1 ПОДГОТОВЛЕН Ассоциацией автоматической идентификации «ЮНИСКАН/ГС1 РУС» (Российская Федерация) при участии Ассоциации автоматической идентификации ГС1 Беларуси (Ассоциации ГС1 Бел.) в рамках Межгосударственного технического комитета МТК 517 «Технологии автоматической идентификации и сбора данных и биометрия» на основе перевода на русский язык англоязычной версии стандарта, указанного в пункте 5

2 ВНЕСЕН Федеральным агентством по техническому регулированию и метрологии (Росстандарт)

3 ПРИНЯТ Межгосударственным советом по стандартизации, метрологии и сертификации (протокол от 28 августа 2013 г. N 58-П)

За принятие проголосовали:

Краткое наименование страны по МК (ИСО 3166) 004-97

Код страны по МК (ИСО 3166) 004-97

Сокращенное наименование национального органа по стандартизации

Минэкономики Республики Армения

Госстандарт Республики Беларусь

Госстандарт Республики Казахстан

4 Приказом Федерального агентства по техническому регулированию и метрологии от 28 октября 2013 г. N 1226-ст межгосударственный стандарт ГОСТ ISO/IEC 15417-2013 введен в действие в качестве национального стандарта Российской Федерации с 1 июля 2014 г.

Международный стандарт разработан подкомитетом ISO/IEC JTC 1/SC 31 «Технологии автоматической идентификации и сбора данных» совместного Технического комитета по стандартизации ISO/IEC JTC 1 «Информационные технологии» Международной организации по стандартизации (ISO) и Международной электротехнической комиссии (IEC).

При применении настоящего стандарта рекомендуется использовать вместо ссылочных международных стандартов соответствующие им межгосударственные стандарты, сведения о которых приведены в дополнительном приложении ДА.

6 ВЗАМЕН ГОСТ 30743-2001 (ИСО/МЭК 15417-2000)

7 Некоторые положения международного стандарта, указанного в пункте 4, могут являться объектами получения патентных прав. Международная организация по стандартизации (ISO) не несет ответственности за идентификацию некоторых или всех подобных прав

8 ПЕРЕИЗДАНИЕ. Ноябрь 2018 г.

Введение

Изготовителям оборудования для штрихового кодирования и пользователям технологии штрихового кодирования необходимы стандартные общедоступные спецификации символик штрихового кода, которые они могли бы использовать при разработке оборудования и программного обеспечения.

Для дополнительного пояснения текста стандарта приведены сноски, выделенные курсивом*.

1 Область применения

2 Нормативные ссылки

В настоящем стандарте использованы нормативные ссылки на следующие стандарты*, которые необходимо учитывать при применении настоящего стандарта. В случае ссылок на стандарты, у которых указана дата утверждения, необходимо пользоваться только указанной редакцией. В случае, когда дата утверждения не приведена, следует пользоваться последней редакцией ссылочных стандартов, включая любые поправки и изменения к ним.

3 Термины и определения

В настоящем стандарте применены термины по ISO/IEC 19762-1, ISO/IEC 19762-2.

4 Требования

4.1 Показатели символики

К показателям символики Code 128 относят:

a) набор кодированных знаков:

1) все 128 знаков по ISO/IEC 646, то есть знаки с десятичными значениями от 0 до 127 включительно по ISO/IEC 646.

2) знаки с десятичными значениями от 128 до 255 также могут быть закодированы,

3) четыре функциональных знака, не являющихся данными,

4) четыре знака для выбора соответствующего кодового набора знаков*,

* Кодовый набор знаков называют также кодируемым набором знаков.

b) тип кода: непрерывный;

c) число элементов в знаке символа: шесть, включая три штриха и три пробела, состоящие каждый из одного, двух, трех или четырех модулей по ширине (знак Stop имеет семь элементов, включающих в себя четыре штриха и три пробела);

d) самоконтроль знака: присутствует;

e) длина символа: переменная;

f) двунаправленное декодирование: присутствует;

g) контрольный знак символа: один, обязательный (см. приложение А, раздел А.1);

h) плотность знака данных: 11 модулей (5,5 модулей на цифровой знак);

i) часть символа, не содержащая данных: эквивалентна 35 модулям.

4.2 Структура символа

Символы Code 128 должны включать в себя:

a) начальную свободную зону;

c) один или несколько знаков, представляющих данные и специальные знаки;

d) контрольный знак символа;

f) конечную свободную зону.

Символ Code 128, кодирующий текст «AIM», представлен на рисунке 1.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *