Открыть сервис

ГОСТ Р ИСО/МЭК 15417-2009

ГОСТ Р ИСО/МЭК 15417-2009 — это национальный стандарт Российской Федерации, идентичный международному стандарту ISO/IEC 15417:2007, который устанавливает требования к символике штрихового кода Code 128. Стандарт определяет структуру символа, кодирование данных, размеры, алгоритмы контрольной суммы и требования к качеству печати. Он входит в семейство стандартов, регламентирующих автоматическую идентификацию и сбор данных (АИСД).

История и принятие

Стандарт был разработан на основе международного стандарта ISO/IEC 15417:2007, который, в свою очередь, базировался на более ранних отраслевых спецификациях (например, AIM USS-128). Необходимость в унификации возникла из-за широкого распространения Code 128 в логистике, розничной торговле и промышленности, где требовалась высокая плотность записи данных и поддержка полного набора символов ASCII.

В Российской Федерации стандарт был принят и введён в действие Приказом Федерального агентства по техническому регулированию и метрологии (Росстандарт) в 2009 году. Дата введения — 1 января 2010 года. ГОСТ Р ИСО/МЭК 15417-2009 полностью идентичен международному оригиналу и не содержит дополнительных национальных требований. Он заменил ранее действовавший ГОСТ Р 51002-96, который описывал общие требования к символике штриховых кодов, но не детализировал Code 128.

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

Символ Code 128 представляет собой линейный (одномерный) штриховой код с переменной длиной. Он состоит из последовательности модулей — самых узких элементов (штрихов или пробелов). Каждый знак кодируется тремя штрихами и тремя пробелами, общая ширина которых составляет 11 модулей. Исключение составляет стоп-символ, который имеет ширину 13 модулей.

Зоны символа

Стандарт определяет следующие обязательные зоны:

  1. Тихая зона (свободная зона): Область перед начальным штрихом и после конечного штриха, свободная от любых графических элементов. Минимальная ширина — 10 модулей с каждой стороны.
  2. Стартовый символ (Start): Указывает на начало данных и определяет начальный режим кодирования (A, B или C).
  3. Зона данных: Последовательность кодируемых знаков, включая символы-функции (FNC1–FNC4).
  4. Контрольный символ (Check Digit): Вычисляется по модулю 103 на основе всех символов от стартового до последнего знака данных.
  5. Стоп-символ (Stop): Обозначает конец символа.

Наборы знаков (Режимы кодирования)

Code 128 поддерживает три набора знаков (режима), которые переключаются с помощью специальных символов:

  • Набор A (Code A): Включает цифры, прописные латинские буквы (A–Z), знаки препинания, управляющие символы (ASCII 00–95) и символы-функции.
  • Набор B (Code B): Включает цифры, прописные и строчные латинские буквы (A–Z, a–z), знаки препинания и символы-функции. Охватывает диапазон ASCII 32–127.
  • Набор C (Code C): Кодирует только цифры от 00 до 99. Каждый знак представляет собой двузначное число (от 00 до 99), что позволяет упаковать две цифры в один символ. Это обеспечивает максимальную плотность записи для числовых данных.

Переключение между наборами осуществляется с помощью символов Shift (для временного перехода на один символ) и Code A, Code B, Code C (для постоянного переключения).

Кодирование и контрольная сумма

Алгоритм кодирования

Каждый символ (кроме стартового и стопового) имеет числовое значение от 0 до 102. Это значение соответствует позиции в таблице кодирования для текущего набора знаков. Например, цифра «1» в наборе B имеет значение 17, а в наборе C — значение 01.

Контрольная сумма (Check Digit)

Контрольный символ (C) вычисляется по следующему алгоритму:

  1. Присвоить стартовому символу значение 0 (для набора A), 1 (для B) или 2 (для C).
  2. Для каждого последующего символа (включая символы данных и функции) умножить его числовое значение на его порядковый номер (начиная с 1 для первого символа после стартового).
  3. Суммировать все полученные произведения.
  4. Разделить сумму на 103. Остаток от деления является значением контрольного символа.
  5. Выбрать символ, соответствующий этому остатку, из текущего набора знаков.

Контрольная сумма является обязательной и проверяется декодером. Если она не совпадает, сканер выдаёт ошибку или игнорирует код.

Требования к качеству и печати

ГОСТ Р ИСО/МЭК 15417-2009 устанавливает параметры, обеспечивающие надёжное считывание:

  • Размеры модуля: Минимальная ширина модуля (X) — 0,191 мм (7,5 мил). Для стандартных применений рекомендуется X = 0,33 мм (13 мил). Максимальная ширина модуля не ограничена, но влияет на общую длину символа.
  • Допуски на ширину элементов: Отклонение ширины штрихов и пробелов от номинала не должно превышать ±0,5 модуля.
  • Контрастность: Минимальный контраст между штрихами и пробелами (PCS) — 0,5. Рекомендуется использовать чёрные штрихи на белом фоне.
  • Дефекты: Не допускаются пятна, царапины, разрывы штрихов, которые могут привести к ложному считыванию или его отсутствию.
  • Маркировка: Под символом может располагаться человекочитаемая строка (OCR-B), содержащая закодированные данные. Она не является частью символа и не влияет на считывание.

Применение

Code 128 является одним из самых распространённых штриховых кодов в мире. Его применение охватывает:

  • Логистика и транспорт: Маркировка грузов, транспортных упаковок, паллет. Высокая плотность позволяет кодировать длинные идентификаторы (например, SSCC-18).
  • Розничная торговля: Используется для маркировки товаров, не подпадающих под стандарт EAN-13 (например, ювелирные изделия, книги, лекарства). В России часто применяется для маркировки товаров, подлежащих обязательной маркировке (например, обувь, табак, лекарства).
  • Промышленность: Учёт деталей, инструментов, комплектующих. Возможность кодировать буквы и цифры делает его удобным для серийных номеров.
  • Здравоохранение: Маркировка образцов крови, препаратов, медицинского оборудования.
  • Документооборот: Кодирование номеров заказов, накладных, договоров.

Преимущества и недостатки

Преимущества

  • Высокая плотность записи: Код может содержать до 48 символов (в режиме C — до 48 цифр) при стандартном размере.
  • Поддержка полного набора ASCII: Возможность кодировать буквы, цифры, знаки препинания и управляющие символы.
  • Переменная длина: Длина кода не фиксирована, что позволяет адаптировать его под конкретные данные.
  • Высокая надёжность: Встроенная контрольная сумма и алгоритм самокоррекции (при использовании дополнительных символов) обеспечивают низкую вероятность ошибки.
  • Совместимость: Поддерживается всеми современными сканерами и принтерами штриховых кодов.

Недостатки

  • Линейность: Как и все одномерные коды, Code 128 требует прямой видимости и точного позиционирования сканера.
  • Чувствительность к повреждениям: Сильные повреждения (разрывы, замятия) могут сделать код нечитаемым.
  • Сложность декодирования: По сравнению с простыми кодами (например, Code 39), требует более сложного алгоритма декодирования.

Связанные стандарты

ГОСТ Р ИСО/МЭК 15417-2009 является частью серии стандартов на символики штриховых кодов. К ним относятся:

  • ГОСТ Р ИСО/МЭК 15416-2009 — метод оценки качества печати линейных символов.
  • ГОСТ Р ИСО/МЭК 15420-2009 — символика EAN/UPC (используется в розничной торговле).
  • ГОСТ Р ИСО/МЭК 15438-2009 — символика PDF417 (двумерный код).
  • ГОСТ Р ИСО/МЭК 16022-2009 — символика Data Matrix (двумерный код).

Источники

  1. ГОСТ Р ИСО/МЭК 15417-2009. Автоматическая идентификация. Кодирование штриховое. Спецификация символики Code 128 (Code 128). — М.: Стандартинформ, 2009.
  2. ISO/IEC 15417:2007. Information technology — Automatic identification and data capture techniques — Code 128 bar code symbology specification.
  3. AIM USS-128. Uniform Symbology Specification — Code 128. — AIM International, 1994.
  4. Федеральное агентство по техническому регулированию и метрологии. Приказ № 123-ст от 15.12.2009.

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →