Как разработку KCM:LINE приходится дорабатывать самому
Есть такая российская разработка для сериализации и агрегации продукции на производственной линии.
Называется KCM:LINE (автоматизация производственных линий).
Используем на производстве для питьевой воды.
Я писал им чтобы узнать как убрать реагирование камеры если продукции нет в поле зрения, подписывается как no read.
Чтобы принтер печатающий этикетки на паки не выдавал этикетку с надписью БРАК.
Изначально при срабатывании камеры тех.зрения когда в его кадре не было кодов датаматрикс, принтер печатающий этикетки для паков, выдавал этикетку БРАК.
Поддержка KCM:LINE так мне не ответила на мой вопрос.
Тогда подумал - напрограммировать код могу, да и место для тестирования есть.
Почему бы самому не создать скрипт с голосовым оповещением?
Всё должно работать так.
Как только камера делает ложное сканирование, то есть камера делает снимок и там нет ни одного кода datamatrix.
В KCM:LINE такой кадр обозначается как no read.
Когда такое произойдёт - будет голосовое оповещение.
Идея ведь хорошая может быть сделать такое?
Начал писать код на bash-скрипт - используется в linux.
Linux это такое семейство свободных ОС с открытым исходным кодом.
Делал всё на Ubuntu, наподобие Windows.
Самое интересное в том что с кодингом на bash знаком не был.
Пришлось сразу на практике изучать команды, которые используется в bash.
И снова становлюсь студентом, читаю что как работает, сразу пишу небольшие скрипты чтобы понимать как вообще работает это всё.
Через несколько небольших скриптов для практики, приступил к написанию кода уже для KCM:LINE.
Начал тестировать уже на производственной линии, и у меня что-то работает а что-то нет.
Опять садишься и снова изучаешь почему же не работает.
Через пару недель до конца дописал скрипт.
После тестовых запусков начал использовать уже в процессе работы линии.
Когда появлялся тот самый no read, происходило голосовое оповещение что это “Пустое сканирование”.
“Пустое сканирование” – это то что произносится речью при срабатывании скрипта.
Думаю, а что если сделать чтобы бот в ТГ присылал оповещение об этом?
Подумал – сделал.
Это для того чтобы быть в курсе что происходит в цеху если вдруг вышел оттуда.
Без такого скрипта непонятно тому кто принимает паки после агрегации.
Возвращаемся обратно.
Ведь если это ложное сканирование а принтер выдал этикетку, то как понять - это у этого пака код не считан или это камера сделала ложное сканирование?
Также приходилось самому мониторить в KCM:LINE, что с паком не так.
Да и к тому же когда такое происходило - вся линия должна стоять пока не разберусь что с паком.
Этим скриптом решил эту проблему.
И снова появились мысли как улучшить свой скрипт.
Дополнительно добавил голосовое оповещение: На повторный пак, если проходит заново через камеру агрегации и на повтор кода, если проходит заново через камеру сериализации.
Покупаешь готовую систему за большие деньги, а приходится еще самому её дорабатывать.
Ну ладно.
А что в итоге?
Этот скрипт используется на всех линиях производства с мая 2025г и по сей день, а на данный момент у нас 10 июня 2026г.
No read хоть и не постоянно появляется, но этот скрипт не даёт линии производства останавливаться без необходимости когда no read появляется.
Это самый важный плюс.
Ссылка на пост про скрипт который используется на производстве (старая версия) - vk.com/wall213573741_34
Если хочешь узнать что такое агрегация и что означают этикетки на паках читай пост - vk.com/wall-162000639_141