Автоматическая проверка штрихкода и даты на каждой коробке
Заказчик
Завод выпускает 60 видов хлеба и хлебобулочных изделий, на нем работает свыше 1000 человек. Продукция продается в торговых сетях 20 городов. По условиям NDA не можем публиковать имя клиента.
Задача
Автоматически проверять маркировку на каждой коробке с готовой продукцией: есть ли на ней нужный штрихкод и правильная дата. В случае ошибки система подает сигнал на автоматику линии
Результат
Программа контроля качества по видео с камеры находит коробку в кадре, считывает штрихкод и дату, сравнивает их с заданием на смену и передает результат в контроллер по Modbus TCP. Точность проверки — 99,9%
Содержание
Ситуация
Готовую продукцию на заводе упаковывают в гофрокоробки. На каждую коробку наносят маркировку: штрихкод товара и дату изготовления. По этой маркировке торговая сеть принимает товар на распределительном центре и в магазине.
Ошибка в маркировке стоит дорого. Если после смены сорта на коробки продолжает печататься штрихкод предыдущего изделия, а после полуночи дата остается вчерашней, коробка уходит к клиенту с неверными данными. Вскрывается это уже при приемке: партию возвращают, завод получает претензию, а продукцию приходится переупаковывать или списывать.
Раньше маркировку коробок проверял сотрудник вручную с помощью сканера штрих-кодов, а дату визуально. При непрерывном потоке тысяч коробок в день человек физически не успевал просканировать штрихкоды и дату на каждой коробке, а к концу смены внимание неизбежно падает.
Задача
Заказчик обратился к нам, чтобы решить одновременно 3 задачи:
1) Научить видеосчетчик понимать, что перед камерой стоит коробка и ее можно проверять;
2) Считывать с коробки штрихкод и дату и сравнивать их с тем, что должно быть напечатано в текущую смену;
3) Передавать результат проверки в автоматику линии, чтобы коробку с ошибкой нельзя было пропустить.
Суть проверки: оператор в начале смены или при переходе на другой продукт вводит на экране штрихкод и дату. Дальше система сама проверяет каждую коробку и сравнивает то, что видит.
Решение
Обычно Видеонумератор считает объекты, которые проходят через зону подсчета. Здесь задача другая: считать коробки не нужно, нужно «прочитать» каждую из них. Поэтому проверку мы разбили на несколько шагов, и каждый шаг решает свою задачу.
Как происходит проверка
Нейросеть считывает штрихкод и дату, сверяет с данными, которые ввел оператор. Если верно, коробка едет дальше, как обычно. Если есть ошибка, программа подает сигнал на остановку линии.
Научили систему видеть коробку в кадре
Читать штрихкод и текст на каждом кадре с камеры не имеет смысла, большую часть времени в кадре пустая лента или коробка, которая только въезжает.
Поэтому первым шагом работает легкая нейросеть. На каждый кадр она отвечает на один вопрос: стоит ли перед камерой коробка так, что ее можно проверять.
Если считывать штрихкод и текст этикетки, пока коробка еще въезжает в кадр, изображение получится смазанным, а часть надписи может не попасть в кадр. Поэтому система ждет, пока коробка будет отчетливо видна, и только тогда запускает проверку.
Считываем штрихкод и дату
Когда момент выбран, система делает две проверки:
Штрихкод. Видеосчетчик находит в кадре штрихкод и расшифровывает его. Поддерживаются основные форматы, в том числе ITF-14, который обычно печатают на транспортных коробках.
Дата. Программа читает на этикетке текст с датой.
Коробка считается «правильной», только если найдены и правильный штрихкод и правильная дата. Одного совпадения недостаточно.
Сделали экран оператора
На экране оператора два поля: «Штрихкод» и «Дата». Задание на смену вводится за несколько секунд, а изменения сразу подхватываются системой без перезапуска.
Ниже транслируется видео с камеры. Поверх изображения система подписывает, какой штрихкод и какой текст она прочитала, а внизу крупно выводит результат: зеленое «ВЕРНО» или красное «НЕВЕРНО». Оператору не нужно вглядываться в коробку: причину ошибки видно сразу.
Подключили систему к автоматике линии
Результат проверки передается в контроллер через модуль дискретного вывода по протоколу Modbus TCP. Такую схему мы применяем и в других проектах, например для управления манипулятором конвейера.
Видеонумератор проверяет каждую коробку → Подает сигнал по Modbus TCP → Модуль передает сигнал на линию → Линия останавливается
Результат
Каждая коробка на линии проходит автоматическую проверку маркировки. Видеонумератор считывает штрихкод и дату, сравнивает их с заданием на смену и сразу передает результат в автоматику. Точность проверки — 99,9%, через систему проходит 1700 коробок в сутки.
Коробка с неверным штрихкодом или датой больше не уходит к клиенту незамеченной: ошибку видно на экране оператора, а сигнал получает автоматика линии. Главный эффект — меньше возвратов и претензий от торговых сетей, конечных клиентов заказчика.
Длительность. На установку, настройку и запуск системы ушел месяц.
Команда. С нашей стороны проект вел один инженер.
Со стороны заказчика проект координировал инженер в офисе, который закрепил и настроил камеру, подключил к компьютеру модуль дискретного вывода.
Другие кейсы
Автоматическая проверка штрихкода и даты на каждой коробке
Подробнее
Автоматический подсчет коробок с рыбой на траулерах: 99,9% точности
Подробнее
Счетчик мешков на конвейере с управлением отгрузкой: опыт внедрения на складах и заводах
Подробнее
Контроль качества продукции на производстве: как компьютерное зрение работает в реальных цехах
Подробнее
«Арнест Упаковочные Решения»: распознавание перевернутых банок на конвейере
Подробнее