Автору довелось восстанавливать документацию по старой телефонной станции. На каждом блоке и плате были наклейки со странным штрихкодом, напоминающим Code 39, но более плотным. Это был Code 11. Инженер рассказал, что формат разработали специально для маркировки электронных компонентов в 1970-х.
Сегодня Code 11 почти не используется, но в некоторых нишах (особенно в ремонте старого оборудования) он ещё встречается. Разбираем, как его генерировать на случай, если он попадётся.
Устройство и особенности Code 11
Code 11 — это дискретный, двухуровневый штрихкод (широкие и узкие полосы). Каждый символ кодируется 3 полосами и 2 промежутками (всего 5 элементов). Набор символов включает 10 цифр (0–9) и символ дефиса («-»). Отсюда и название — «11» (10 цифр + дефис).
- Высокая плотность: короче, чем Code 39, потому что использует меньше элементов на символ.
- Одна или две контрольные цифры (обязательны). Алгоритм расчёта — «модуль 11» (сумма произведений с весами от 1 до 10).
- Стартовый и стоповый символы — обычно используются символы «*» или особые паттерны.
Особенности генерации Code 11
Из-за редкости формата, не все средства поддерживают Code 11. Вот что должен уметь правильный генератор:
- Принимать строку из цифр и дефисов. Дефис встречается редко, но он предусмотрен стандартом.
- Рассчитывать контрольные суммы по алгоритму «модуль 11». Веса обычно присваиваются справа налево, начиная с 1 для младшего разряда. Если результат деления по модулю 11 равен 10, контрольная цифра — 0 (иногда — X). Генератор должен корректно обрабатывать этот случай.
- Автоматически добавлять стартовые и стоповые паттерны. Пользователь не должен о них думать.
- Обеспечивать достаточно крупную печать — из-за узких промежутков код чувствителен к качеству.
Где применялся и где встречается сегодня
Исторически Code 11 использовался для:
- Маркировки электронных компонентов (резисторы, конденсаторы, микросхемы).
- Телекоммуникационного оборудования (телефонные станции, кабельные панели).
- Бирок для лабораторных образцов (в 1980-х).
Сегодня Code 11 можно встретить только в архивах, при ремонте винтажного оборудования или в некоторых специфических оборонных заказах. Новые проекты на нём не строят из-за низкой надёжности при повреждении кода.
Проблемы и ошибки
Если вы всё же вынуждены работать с Code 11, будьте готовы к следующему:
- Ошибки в расчёте контрольной суммы. Алгоритм модуль 11 имеет нюансы (например, что делать с остатком 10). Некоторые реализации используют две контрольные цифры для большей надёжности.
- Нечитаемость из-за слишком тонких элементов. Рекомендуемая толщина узкого модуля — не менее 0,25 мм при печати на высококачественном принтере.
- Отсутствие поддержки на новых сканерах. Многие современные 2D-сканеры могут не распознавать Code 11. Проверяйте совместимость заранее.
Заключение
Коротко по делу:
- Code 11 — редкий, но всё ещё живой штрихкод для телекоммуникаций и электроники.
- Обязательна контрольная сумма по модулю 11, возможна двойная.
- Генерация требует внимания к алгоритму checksum и качеству печати.
Вопрос коллекционерам и реставраторам старой электроники: попадался ли вам Code 11 на платах 1980-х годов? Как вы его считываете? Расскажите — это ностальгическое путешествие в историю штрихкодов.