Коды дата матрикс: как получить и работать с ними
Многие группы товаров в России должны маркироваться кодами Data Matrix. Выпуск, хранение, перевозка и сбыт продукции, на которой отсутствует такой код, — под запретом. За нарушение требований законодательства об обязательной маркировке участники рынка несут административную или уголовную ответственность.
В статье расскажем о дата матрикс кодах: что это такое, как выглядят, для каких товаров необходимы, где и как их получить. А также о том, какое оборудование требуется для операций с ними, и как автоматизировать учет маркированной продукции, используя специальное программное обеспечение.
Дата матрикс код: что это такое
Дата Матрикс код — это штриховой идентификатор, применяемый для обязательной маркировки товаров, начавшей действовать в России в 2019 году. Он прикрепляется к продукции или ее упаковке и позволяет получать все сведения о ней на любом этапе движения по логистической цепи — от изготовителя до потребителя.
Из чего состоит дата матрикс код:
Датаматрикс код способен вмещать в себя до 2 Кб данных. Такого объема достаточно для хранения всей информации, касающейся продукции. Идентификатор является уникальным для каждого экземпляра товара и после того, как он исключается из оборота, уже не используется вновь.
Как выглядит код дата матрикс?
Data Matrix представляет собой комбинацию модулей (белых и черных ячеек). Их число всегда четное — и по вертикали, и по горизонтали. Слева и снизу код ограничен темными линиями — они образуют так называемую L-структуру. Она предназначена для распознавания ориентации идентификатора в процессе считывания и выполняет роль шаблона поиска. Для корректного сканирования необходимо, чтобы L-образная структура находилась в нижнем левом углу изображения.
В самой последней версии Data Matrix кода, носящей название ЕСС 200, модуль в правом верхнем углу контрастный и не сливается по цвету с соседними ячейками. Он белый либо окрашен в цвет фона, на котором напечатан идентификатор.
По форме дата матрикс коды бывают двух видов — квадратные и прямоугольные. Их допустимые размеры:
Величина кода выбирается в зависимости от размера упаковки, на которую он будет наноситься, и с учетом того, какой объем информации требуется в него поместить. Рекомендуемый формат — 24 × 24 модуля. Допустимые параметры ячеек составляют от 0,255 до 0,615 мм. Идентификаторы Data Matrix можно наносить на бумагу, фольгу, картон, блистеры и различные твердые поверхности.
Отличия маркировки дата матрикс от QR-кода
Образцы дата матрикс кодов и QR-кодов внешне похожи, и при первом взгляде их легко перепутать. Но это разные идентификаторы. Главное визуальное отличие заключается в том, что в QR-коде в роли шаблона поиска выступает не L-образная структура, а три квадрата, расположенные в нижнем левом и верхних углах.
Эти коды различаются и по ряду других характеристик. Они представлены в таблице ниже.
| Параметры | Код дата матрикс | QR-код |
| Угол считывания | Любой | Любой. Можно проводить считывание в зеркальном отражении |
| Форма | Квадратная или прямоугольная | Только квадратная |
| Число рядов по горизонтали и вертикали | Четное | Нечетное |
| Сколько данных можно хранить | 2 Кб | 3 Кб |
| Размер | Минимальный — 10 × 10 ячеек, максимальный — 144 × 144 ячеек | Минимальный — 21 × 21 ячеек, максимальный — 177 × 177 ячеек |
| Стандарт информационных технологий | ISO/IEC 16022 | ISO/IEC 18004 |
Хотя параметры схожи, и в QR-код можно «зашить» любые данные, он не применяется для товарной маркировки в Российской Федерации. В нашей стране его обычно используют для быстрого проведения расчетов. QR-код наносят на этикетки продукции, чеки или плакаты в заведениях, зашифровав в нем платежные реквизиты. Покупатель считывает его с помощью камеры смартфона, автоматически получает реквизиты для оплаты, выбирает карту для списания средств и отправляет деньги. Кроме того, QR-коды активно используются для быстрого получения сведений о каком-либо объекте. Их размещают на плакатах, визитках, музейных экспонатах, бонусных картах, а также в рекламных сообщениях.
Для маркировки продукции в РФ выбран штрихкод Data Matrix по причине его величины: в минимальном варианте она составляет 2 × 2 см, в то время как для QR-кода — 5 × 5 см. Миниатюрные коды датаматрикс нужны для маленьких упаковок, к примеру, для лекарств и пачек сигарет.
Достоинства кодов датаматрикс
Ключевое преимущество идентификаторов Data Matrix — их высокий уровень защиты. Подделать или скопировать изображение невозможно. При его создании используются криптографические технологии шифрования данных, которые позволяют проверять подлинность кода и обеспечивают контроль его целостности.
Система контроля движения маркированной продукции «Честный ЗНАК» устроена таким образом, что добавление в базу товаров, идентификаторы которых не были сгенерированы ее оператором (ЦРПТ — Центром развития перспективных технологий) невозможно.
В штриховые коды датаматрикс «зашивают» различные сведения о продукции:
С идентификатором можно работать даже если он поврежден на 30 %. К примеру, если код дата матрикс испорчен из-за небрежности при погрузке/разгрузке продукции, ее перевозке.
Использование датаматрикс кода в маркировке товаров
Наблюдение за всеми перемещениями продукции реализуется следующим образом:
Операции проводятся в электронной форме — в профиле компании в «Честном ЗНАКе». Через эту систему все участники оборота пересылают друг другу УПД (универсальные передаточные документы) при отправке и приемке продукции и подписывают их или отклоняют, если коды, указанные в УПД, не совпадают с теми, что нанесены на поступившие товары.
Потребители могут убедиться в подлинности товара, используя приложение «Честный ЗНАК — Сканер товаров и проверка качества». Нужно установить его на смартфон и навести камеру на интересующий товар. Маркировочный код датаматрикс будет распознан, и на экране появятся сведения о продукции. Если же код отсутствует в базе «Честного ЗНАКа», то приложение уведомит об этом.
В некоторых случаях заказывать в ЦРПТ 2D-идентификаторы приходится и розничным торговым сетям. Например, если возникает потребность в перемаркировке из-за повреждения или потери этикетки, на которой был код.
Какая продукция обязательно должна маркироваться штрих кодами дата матрикс:
Реализация немаркированной продукции наказывается штрафами, а если ее стоимость превышает 1,5 млн рублей, то предусмотрено лишение свободы на срок до 3 лет. В будущем все товары будут подлежать обязательной маркировке. Это делается для того, чтобы защитить покупателей от подделок, закрыть контрафакту вход на рынок и дать честным продавцам и производителям конкурентное преимущество перед их «теневыми» соперниками.
DataMatrix и маркировка товаров — роль формата и функции штрихкода
Идентификаторы символики DataMatrix используются для обязательной маркировки товаров. На сегодняшний день это международный стандарт штрихкодирования, принятый ассоциацией GS1. Data Matrix «поучаствовал» во множестве тестовых проектов и оказался эффективнее кодов других символик, включая QR.
Код DataMatrix — что это такое
DataMatrix — это битовая матрица, двумерный штриховый код (учитывайте, что только 2D-сканер считывает такой идентификатор). Содержит зашифрованные данные объемом до 2 килобайт. Внешне код DataMatrix выглядит как квадрат (или — реже — прямоугольник), составленный из черных и белых (или темных и светлых) элементов. Имеет четко очерченные и ярко выраженные нижнюю и левую границы — плотные линии черного или темного цвета (L-образный шаблон поиска).
Примечание. Международная ассоциация GS1 занимается стандартизацией учета и штрихового кодирования логистических единиц.
В идентификаторе Data Matrix кодируют информацию:
Помимо «паспорта» товара, в идентификаторах Data Matrix зашифровывают ссылки, email-адреса и телефонные номера.
Коды Data Matrix — области использования
Код Data Matrix разработала компания RVSI/Acuity CiMatrix. Изначально идентификаторы этой символики применялись в следующих сферах:
Штрихкоды Data Matrix активно «участвуют» в рекламе и индустрии развлечений. Так, одна из символик «матричного семейства» — Semacode — шифрует URL-адреса. Достаточно камеры мобильного устройства (с софтом для декодирования), чтобы расшифровать информацию, которую рекламодатель заложил в код. Например, после сканирования идентификатора с выставочного плаката, пользователь «отправляется» в галерею, размещенную на сайте организатора.
Помимо рекламных кампаний, в России коды символики Data Matrix применяются:
Преимущества:
Версия ECC 200
В 2020 году специалисты «Честного ЗНАКа» сделали презентацию новейшей версии Code DataMatrix — ЕСС (ESS) 200. Это единственная современная вариация символики, поддерживающая структуру данных системы GS1. У ЕСС появились новые преимущества:
В свободных областях, расположенных по четырем сторонам идентификатора, не допускается печать каких-либо графических меток. С помощью «пустых» зон декодер сканера определяет границы штрихкода. L-образный шаблон поиска состоит из сплошных темных (или черных) линий шириной в один символ.
Требования к качеству печати
Качество печати штрихкодов Data Matrix GS1 должно быть:
Класс качества печати определяется путем анализа параметров «картинки»:
Минимальный рекомендованный размер кода Data Matrix — 24 × 24 символа (от 6,12 до 14,76 мм), а составляющих его структуру элементов — от 0,255 до 0,615 мм. Свободная область по периметру штрихкода должна быть в 4 раза шире отдельного символа или составлять 17 % от ширины идентификатора. Уменьшать размер «пустой» зоны нельзя — это снижает контрастность и приводит к ошибкам при считывании. Печать кодов на прозрачных пленках недопустима. Покрытие лаком и ламинирование упаковок, стикеров и этикеток с идентификаторами следует выполнять с осторожностью. Технологические операции также могут привести к ошибкам распознавания двумерного кода.
Какое оборудование работает с кодами Data Matrix
Для распознавания DataMatrix применяются:
Это интересно! Матричные 2D-имиджеры поддерживают функцию аппаратного декодирования и «умеют» самостоятельно расшифровывать двумерные идентификаторы.
Для производства этикеточной продукции и упаковок со штрихкодами используют:
Чтобы воспользоваться всеми доступными функциями оборудования, необходимо установить специализированное программное обеспечение.
DataMobile Маркировка и работа с кодами Data Matrix
Терминал сбора данных — незаменимый инструмент при работе с 2D-штрихкодами. Специализированное программное обеспечение DataMobile нужно, чтобы раскрыть функциональность оборудования и «встроить» его в готовую инфраструктуру компании. Софт «заточен» под работу с ТСД и мобильными устройствами.
Решение DataMobile Маркировка помогает автоматизировать учет товаров, отслеживаемых в системе «Честный ЗНАК». Это дополнительный модуль, функционирующий на базе версий Стандарт PRO, Online Lite или Online.
С DataMobile Маркировка вы сможете:
Универсальность DataMobile Маркировка — в параметрических настройках, легкой масштабируемости, поддержке групповой работы и объемных баз данных:
Программное обеспечение совместимо с 1С и другими «товароучетками». Для автоматизации учета алкогольной продукции или товаров по радиочастотным меткам к DataMobile Маркировка можно подключить модули ЕГАИС и RFID.
Мы выпускаем регулярные (не реже раза в месяц) бесплатные апдейты софта, в соответствии с изменениями действующего российского законодательства. Вам не придется покупать дополнительные приложения для работы с новыми категориями маркируемых товаров.
Коды Data Matrix — структура и расшифровка
Структура кода формата DataMatrix, генерируемого системой «Честный ЗНАК», включает четыре блока данных:
Все блоки штрихкода составляются из латинских прописных и строчных цифр, букв и спецсимволов. В зависимости от типа продукции, длина блоков кода DataMatrix может значительно варьироваться. Так, второй блок штрихкода, который наносится на пачку сигарет, составляют 7 символов — это зашифрованный серийный номер упаковки. Третий — 4 знака — минимальная розничная цена (МРЦ) с точностью до 1 копейки. Четвертый — 4 символа проверочного кода («криптохвост»). У обувных идентификаторов отличается только последний блок. Длина криптографического «хвоста» — 88 знаков.
Для расшифровки сведений, «вложенных» в код Data Matrix, применяется специализированное программное обеспечение, например, DataMobile.
Datamatrix: что это такое, расшифровка — зачем нужен штрихкод Дата Матрикс и чем он отличается от QR-кода
Важно разобраться, что такое QR штрих-код Datamatrix, ведь для большинства товаров он необходим по закону. Введение этого требования к продукции обосновано слишком большим количеством контрафакта, который надеются вывести из оборота проверками и контролем. Правительство обязало организации установить специальное оборудование и в обязательном порядке маркировать лекарства, обувь, табачные и алкоголесодержащие изделия, мех, а также многое другое. Планируется задействовать его во всех секторах экономики. Давайте разберемся, как выглядит, применяется код и какой у него жизненный цикл.

Расшифровываем понятие
Так называется средство идентификации на товарах. Это двумерная шифровка. Поле ограничивается линиями, а внутри этого пространства чередуются модули двух разных цветов. Абсолютное большинство производителей ставят на своих продуктах черно-белые метки, но можно выбрать и другие сочетания, подходящие к палитре упаковки. Главное — чтобы картинка оставалась читаемой для техники.
В новых, более продуманных версиях изображений появилась возможность считывать информацию, даже если повреждено до 30% от датакода. Это особенно важно во время инвентаризаций в компаниях с большим ассортиментом или сроком хранения на складе, где продукция может затеряться или пролежать больше года. В результате во время проверки будет сложно идентифицировать товар, если кусочек метки сотрется. Новые Data Matrix позволяют считать и такие проблемные этикетки.
Есть и другие преимущества:
Размеры кода могут быть с разным объемом модулей:
Обратите внимание, что их объем может быть лишь четным. Причем верхний модуль справа всегда в том же оттенке, что и основа.
При помощи датакода можно сконцентрировать на коробке продукта до 2 килобайт разных сведений.
Отличия от привычного QR
Применяют во всех сферах деятельности от промышленности и рекламы до развлечений. В обоих шифрах есть основные характеристики — наименование, компания-изготовитель, периоды создания и годности, многое другое.
Метки собраны из черно-белых квадратов (иногда круглых модулей). Все они генерируются бесплатно в соответствии со стандартами ISO, которые открыты для использования. Правда, бесплатной инструкции по кодированию нет, только платный документ, который предоставлен на сайте ISO.
Если нужно выбрать, Data Matrix или QR-коды, то стоит понимать, что их главные характеристики совпадают. Но чаще используется первый вариант, особенно в лекарствах, обуви, табачных и меховых изделиях.

Основное его преимущество заключается в компактности. Можно зашифровать довольно много информации на минимальной поверхности, а это ценно для небольших упаковок. Его можно разместить даже на маленьких пачках тонких сигарет, где ширина всего 14 мм. В фармакологии тоже достаточно коробок, на которых более крупные метки просто не поместятся.
Как создается Data Matrix?
Data Matrix является двумерным матричным штрих кодом, состоящим из светлых и темных участков. С помощью такого штрих кода можно закодировать достаточно большой объем информации (2-3Кб). Часто Data Matrix применяется при маркировке небольших предметов, например микросхем, а также в пищевой, оборонной промышленности, рекламе и других сферах.
Существует множество сайтов для создания таких кодов, но мне всегда было интересно, каким же образом текст превращается в набор черных и белых квадратиков? Должен же быть какой-то алгоритм?
При создании Data Matrix нам понадобится обратиться к арифметике полей Галуа и кодам Рида-Соломона. Рассмотрим этот процесс на простом примере.
Прежде всего, посмотрим на структуру матрицы:
Состоит наша матрица из двух частей: шаблона поиска и закодированных данных. Разумеется, размер матрицы прямо пропорционален размеру входных данных. Вокруг нашего кода обязательно должна быть свободная зона, отделяющая код от остального изображения.
Возьмем какое-нибудь короткое слово, например, “Habr” (без кавычек) и создадим для него Data Matrix. Процесс состоит из двух этапов: на этапе высокоуровневого кодирования нужно получить последовательность кодов данных и кодов коррекции ошибок, а на этапе низкоуровневого кодирования – изобразить в матрице двоичное представление этих кодов.
Высокоуровневое кодирование
В Data Matrix, как и в QR-коде, используются коды Рида-Соломона над полем Галуа (число 8 выбрано, поскольку каждое кодовое слово занимает в матрице 8 бит). Существует несколько неприводимых многочленов, позволяющих сгенерировать такое поле. Среди них
(в десятичном представлении 285, используется для QR-кодов) и
(301, используется в Data Matrix).
Для расчетов нам понадобится таблица степеней двойки для каждого элемента поля. Создается эта таблица довольно просто: если показатель степени , то возведение в степень выполняется как обычно. В противном случае
, после чего производится побитовое сложение по модулю 2 с десятичным представлением взятого неприводимого многочлена, если
. Например,
,
и т. д.
Необходимо получить кодовое слово
,
где – информационный многочлен,
– порождающий многочлен,
– общая длина кода вместе с корректировочными,
– количество информационных кодов (вместе с кодами отступа, о них – далее),
– операция взятия остатка от деления.
Создадим для начала информационный многочлен. Для этого нам понадобится знать, какого размера должна быть матрица, чтобы можно было разместить все информационные коды:
Из таблицы видно, что для кодирования строки из 4х элементов нужно взять матрицу размером 12×12 («полезная» область – 10×10), в которую помещаются 5 кодов данных и 7 кодов коррекции.
Для символов таблицы ASCII код получается следующим образом: C=ASCII value+1. Например, для символа ‘H’ C=72+1=73.
Подряд идущие цифры объединяются в пары, и для них C=N+130, где N – число, полученное в результате группировки. Например, если рядом стоят цифры 2 и 5, то C=25+130=155.
Поскольку элементов у нас меньше, чем должно быть (вместо пяти только четыре), необходимо добавить специальные коды отступа. Первым таким кодом всегда является 129. Последующие коды отступа, до первого кода коррекции ошибок, вычисляются так:
, где
– псевдослучайное число,
– номер элемента.
Для слова “Habr” получаем следующую последовательность кодов: 73, 98, 99, 115, 129.
Теперь мы можем записать информационный многочлен:
и домножить его на (
– число кодов коррекции):
Перейдем к созданию порождающего многочлена. Вычисляется он по следующей формуле:
Начинаем перемножать скобки:
Сложение в нашем поле определено как побитовое сложение по модулю 2. Сначала выполняется возведение в степень с помощью таблицы, затем их сложение и нахождение «логарифма» полученного числа для возврата к степеням двойки. В случае если после сложения степеней получается число, большее 254, берем его остаток от деления на .
После перемножения всех скобок и возведения в степень получим:
Последняя операция, завершающая высокоуровневое кодирование, и, пожалуй, самая сложная – нахождение остатка от деления на
:
Выполняется деление многочленов в столбик, но с учетом того, что вычитание, определенное точно так же, как и сложение, и умножение выполняются в поле Галуа.
Теперь мы можем записать кодовое слово полностью:
Низкоуровневое кодирование
Каждый из полученных выше кодов представляется в Data Matrix в виде квадрата размером 3х3 ячейки без правого верхнего уголка. 1 здесь соответствует старшему биту, 8 – младшему. Нужно заполнить такими элементами всю матрицу.
Приготовим сетку 10х10 (именно такого размера должна быть матрица в данном случае), на которой нарисуем контуры первых пяти элементов, как на рисунке справа. Вне зависимости от того, какого размера матрица, эти элементы всегда располагаются именно так, и никак иначе.
Остальные элементы размещаются аналогичным образом, но прежде чем нарисовать их, необходимо отметить несколько особых случаев, связанных с углами матрицы.
Если , где a – сторона квадрата, то перед нами самый простой случай, когда после размещения всех элементов непоместившиеся участки просто переносятся на противоположную сторону.
Если , то в правом нижнем углу остается «лишний» квадратик размером 2х2, который заполняется так:
Если или
, то следует обратить внимание на левый нижний и правый верхний угол, особенно на нумерацию битов:
Есть еще два случая, которые возникают только при построении прямоугольных матриц, поэтому мы их опустим.
Вернемся к нашей матрице и добавим все остальные элементы, а также укажем, какому кодовому слову соответствует каждый элемент. Стрелками показано, каким образом производится нумерация:
После переноса непоместившихся элементов получаем:
В правом нижнем углу остался незанятый квадрат (, что как раз соответствует такому случаю). Занесем в таблицу все наши коды в таком же порядке, в каком они идут в
, и их двоичные представления:
Аккуратно заполняем матрицу. Начнем с шаблона поиска и нижнего квадрата, а затем по очереди добавляем каждый код:
















