Авторизация
Забыли пароль?
Сброс пароля
Вернуться к авторизации

Разработка комплексного ПО для автоматизации лакокрасочного производства в торговых точках

23 июля ‘24

Заказчик: Производитель красок

Cоздали комплексное программное обеспечение для автоматизации процессов, связанных с разработкой и хранением рецептур лакокрасочной продукции, а также взаимодействием с дозатором в торговых точках.

Агентство-исполнитель кейса

SoftExpert

Компания "Софтэксперт" уже боле 15 лет занимается веб-разработкой. В нашем портфолио огромное количество реализованных проектов под самые различные задачи клиентов.

1. Вводная задача от заказчика, проблематика, цели

Одним из направлений деятельности заказчика является производство лакокрасочной продукции для различных видов покрытий в торговых точках.

Специалисты компании заказчика разрабатывают рецептуры красок и покрытий для конкретных продуктов и брендов, в том числе проводя лабораторные исследования, а также предоставляют аппаратные средства (дозаторы) и ПО для колеровки и формирования готовой продукции на клиентских точках.

Цель проекта — создать функционал для автоматизации этапов производственного цикла при формировании лакокрасочной продукции.

Задачи:

1. Разработка модуля для формирования и хранения рецептурной базы с возможностью добавления лакокрасочных брендов, продуктов, цветовых коллекций и колорантов.

2. Разработка модуля взаимодействия с дозатором для колеровки по выбранной рецептуре.

3. Настройка многопользовательского режима для просмотра и ввода/выгрузки данных для торговых точек.

Ситуация до начала проекта

У заказчика возникли трудности с обновлением рецептурных баз ПО, которое ранее использовалось на клиентских точках, в том числе для формирования готовой продукции новых брендов, поэтому было решено создать собственное программное обеспечение.

Для модуля управления дозатором в торговых точках у заказчика были следующие требования:

- кроссплатформенность (возможность использования с разными операционными системами);

- единый инсталлер (простота установки модуля взаимодействия с дозатором в торговых точках);

- работа в режиме оффлайн (использование локальной базы данных без подключения к локальной сети);

- автоматическое обновление (единовременно во всех торговых точках для внесения изменений со стороны разработчика);

- загрузка рецептурной базы и колеровка (по выбранной рецептуре или для собственных рецептур под конкретного клиента).

Кроме того, модуль для колеровки должен был осуществлять взаимодействие с различными типами дозатора через общий UDCP драйвер (отправка команд драйверу и обработки сообщений от драйвера).

Для модуля формирования и хранения рецептур были сформированы отдельные требования:

- возможность переноса рецептурной базы (перегрузка уже готовых рецептур с сохранением данных о базовой красе, фасовке, поправочных коэффициентах и др.);

- возможность ввода новых рецептур (в том числе составление новых цветовых коллекций и оттенков);

- возможность онлайн и оффлайн выгрузки рецептурной базы (для последующей загрузки рецептурной базы в модуль взаимодействия с дозатором).

2. Описание реализации кейса и творческого пути по поиску оптимального решения

С учетом требований заказчика модуль формирования и хранения рецептурной базы решили реализовать как полноценный многопользовательский веб-сайт на ASP.NET Core платформе. Для разработки серверной части был выбран .NET Core 6.0 Framework (язык программирования C#), клиентская часть на React framework (язык программирования TypeScript). Для реализации многопользовательского режима выбрали бару данных Postgree SQL.

Модуль взаимодействия с дозатором решили реализовать как автономное десктоп-приложение. Для обеспечения кроссплатформенности всю функциональную часть реализовать как веб-сайт на ASP.NET Core платформе, используя аналогичный стэк (.NET Core 6.0 + React), и средствами Electron .NET Framework запаковать сайт в оконное приложение. Также мы использовали функционал (API) SignalR библиотеки для обновления клиентской части веб-сайта после обработки событий от UDCP драйвера на сервере.

Для обеспечения автономности работы модуля взаимодействия с дозатором в качестве локальной базы данных была выбрана SQLite, которая представляет собой файловую базу данных и не требует отдельной СУБД для подключения и работы с БД.

С учетом масштабности и целей проекта разработка проекта была разделена на несколько этапов.

1. На первом этапе был разработан начальный вариант модуля взаимодействия с дозатором и реализован функционал взаимодействия с дозаторами различных типов через общий UDCP драйвер, который включал в себя поддержку всех операций по взаимодействию с драйвером (инициализация, продувка сопел, перемешивание колорантов и т.д.), включая операцию ручной дозировки колорантов.

Аналогичное решение использовано для загрузки новых обновлений для дескттоп-приложения на веб-сайт и автоматического скачивания обновлений с последующей автоматической установкой.

Модуль управления дозатором имеет клиент-серверную архитектуру. С клиента на сервер отправляется запрос на формирование команды UDCP драйверу, далее запрос обрабатывается и формируется файл с параметрами команды. На самом сервере происходит постоянный опрос наличия ответа от UDCP драйвера, и при получении результата обработки команды сервер уведомляет клиента через SignalR API.

2. На втором этапе выполнены следующие задачи:

- разработка веб-сайта для хранения и формирования рецептурной базы с функционалом аутентификации и разграничением ролей пользователей;

- создание отдельных разделов для Marketing и R&D подразделений для удобства работы с ПО;

- разработка функционала хранения и редактирования информации для формирования рецептур (оттенки, формулы, колеровочные базы, фасовки, продукты и т.д.);

- перегрузка имеющейся базы рецептур в новую систему.

3. Реализация механизма автоматической перегрузки рецептурной базы

На этом этапе был реализован механизм автоматической перегрузки рецептурной базы из веб-сайта в модуль управления дозатором. Также был реализован визард для подбора рецептуры по требуемому цвету, продукту, фасовке с последующим формированием команды дозатору на колеровку выбранного цвета.

4. На четвертом этапе в модуле взаимодействия с дозатором реализовали:

- функционал по сохранению истории всех колеровок, включая ручные колеровки и сервисные операции с возможностью повторной колеровки по записи в истории;

- функционал по созданию собственной рецептуры, а также кастомизации базовой рецептуры перед дозировкой;

- сбор статистики по расходу колорантов, ведение собственной клиентской базы и механизм автоматического обновления приложения при публикации новых версий ПО.

3. Результаты сотрудничества

На момент публикации кейса система автоматизации производственного цикла лакокрасочной продукции прошла необходимые проверки и подтвердила работоспособность в 20 пилотных торговых точках заказчика, а общее количество торговых точек, в которые поставляется программное обеспечение, превышает 1500.

В модуле формирования и хранения рецептурной базы реализованы:

- перегрузка рецептур из базы по всем используемым брендам и продуктам с использованием различных факторов (базовая краска, фасовка, поправочные коэффициенты и т.д.);

- возможность ввода новых рецептур, включая составление новых цветовых коллекций, оттенков и др.;

- возможность онлайн и оффлайн выгрузки рецептурной базы в нужном формате для последующей загрузки рецептурной базы в модуль взаимодействия с дозатором.

В модуле взаимодействия с дозатором реализованы:

- возможность загрузки рецептурной базы в автоматическом режиме;

- возможность выбора формулы в виде визарда по заданному продукту, цвету, оттенку, фасовке;

- возможность корректировки и изменения формулы в выбранном рецепте перед отправкой команды на дозатор;

- возможность создания и хранения собственных рецептур, а также истории колеровок выполненных в конкретной торговой точке;

- возможность работы с клиентской базой и функционал по автоматическому сохранению восстановлению локальной базы.

4. Заключение

Понравился проект?

Звоните! Консультируем и рассчитаем стоимость проекта бесплатно!

Агентство-исполнитель кейса

SoftExpert

Компания "Софтэксперт" уже боле 15 лет занимается веб-разработкой. В нашем портфолио огромное количество реализованных проектов под самые различные задачи клиентов.