Русский
Русский
English
Статистика
Реклама

Цифровая трансформация завода (ч. 3) волшебные интерфейсы и оживление железа

Часть 1: CRM для ERP

Часть 2: Роботизация бизнес-процессов

Часть 3: Волшебные интерфейсы и оживление железа (в этой публикации)

Часть 4: Личные кабинеты, чат-боты и dream team

Влияние рабочего места диспетчера на пропускную способность отгрузки на заводе

Цифровизация предприятия - это не только процесс внедрение новых систем и сервисов. Этому предшествуют поиски узких мест в рабочих процессах и на конкретных рабочих местах пользователей.

Рекомендация: Не айтишные книги, которые полезно прочитать айтишнику
  1. Принципы. Жизнь и работа. Рэй Далио

  2. Цель. Процесс непрерывного совершенствования. Элияху Голдратт

  3. Гемба Кайдзен. Путь к снижению затрат и повышению качества. Масааки Имаи

Какие идеи обычно возникают, когда нужно увеличить пропускную способность отгрузки на заводе:

  • Увеличить количество точек для одновременной отгрузки на заводе.

  • Увеличить количество КПП для одновременного въезда/выезда на завод.

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

Узкое горлышко найдено, дело за малымУзкое горлышко найдено, дело за малымЛичный опыт: Не верьте программистам и консультантам

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

  • У пользователя действительно все хорошо и прекрасно.

  • Пользователь не знает к кому обращаться со своими проблемами.

  • Пользователь много раз обращался, никто не решил проблему, потерял надежду и перестал обращаться.

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

  • У пользователя нет возможности обратиться из-за отсутствия времени, так как оно полностью занято оперативной работой.

Еще одна причина:

  • Программист и консультант никогда не были в гемба и не видели, как именно пользователь работает с системой и насколько это соответствует реальным бизнес-процессам.

Общий счет 5:1 в пользу того, чтобы не верить программистам и консультантам, что у пользователей нет вопросов и проблем.

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

Выявленные на месте явные проблемы (без погружения в детали):

  • 3 рукописных журнала для оперативной работы (при наличии рабочего места в ERP).

  • 2 монитора, чтобы вывести нужную информацию (изображение с 2-х видеокамер, данные с 2-х промышленных весов, программы для вывода текста на Led-табло, монитор для работы в ERP).

  • Настольный калькулятор (для вычисления max. веса к погрузке по каждой машине).

  • Ручки и фломастеры (для заполнения настольных журналов).

  • Поток жалоб от диспетчера на ошибки в рабочем месте ERP и постоянные проблемы со вторым монитором, куда выводятся данные с промышленных весов.

Лайфхак #1: Фотографируйте рабочие места пользователей

Так выглядело рабочее место диспетчера, когда я приехал и это было нормой с 2016 года.

Часть рабочего места диспетчера, вид сверхуЧасть рабочего места диспетчера, вид сверхуМонитор 1 - данные с 2-х камер, данные с 2-х весов, программа для led-таблоМонитор 1 - данные с 2-х камер, данные с 2-х весов, программа для led-таблоМонитор 2 - интерфейс рабочего места в ERP, беспощадный и жестокийМонитор 2 - интерфейс рабочего места в ERP, беспощадный и жестокийНастольный калькулятор и журналы на столе диспетчераНастольный калькулятор и журналы на столе диспетчераЖурнал прибывших машин на погрузку с отметками плановых точек погрузки на заводеЖурнал прибывших машин на погрузку с отметками плановых точек погрузки на заводеЖурнал с очередью машин (кто и во сколько приехал, когда и кого грузить, кто отгружен)Журнал с очередью машин (кто и во сколько приехал, когда и кого грузить, кто отгружен)Журнал выданных номерных пломб (учет по сериям) по сменам диспетчеровЖурнал выданных номерных пломб (учет по сериям) по сменам диспетчеров
Лайфхак #2: Наблюдайте, слушайте диалоги, задавайте вопросы

Это помогло за одну 12-часовую смену понять суть работы диспетчера:

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

  • Планирование времени отгрузки в журнале (формирование очереди).

  • Вызов водителей на погрузку по журналу (по очереди из числа прибывших)

  • Выдача номерных номерных пломб и магнитных карт, их регистрация в ERP (для погрузки).

  • Ручная отправка задания на промышленные весы (для взвешивания машины до погрузки).

  • Ручное вычисление max. веса к погрузке (по каждой машине с учетом грузоподъемности и веса пустой машины).

  • Ручная отправка на промышленные весы задания на погрузку (max. вес к погрузке).

  • Печать отгрузочных накладных (после окончания погрузки).

Простые замеры времени операций показали, что на заводе высокая скорость погрузки (одна машина грузится ~ 10 минут), но есть простои до 3-х минут между погрузкой машин , потому что диспетчер физически не успевает "обслужить" весь трафик.

Диалоги диспетчера с водителями обнажили бюрократию на рабочем месте и предвзятое отношение к водителям:

  • У одних водителей ничего не спрашиваем и не проверяем, у других - проверяем каждую букву в ФИО и гос. номерах.

  • Одни водители ожидают свою очередь, другие - проезжают на погрузку без очереди, хвастаясь перед другими водителями.

  • Одним водителям всё подробно рассказываем, других - игнорируем и не отвечаем на элементарные вопросы.

Все это порождало хаос в работе диспетчера и водителей, конфликты между людьми: между водителями и диспетчером, между самими водителями.

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

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

  2. Ускорить выдачу диспетчером номерных пломб и магнитных карт для водителей.

  3. Развести машины по времени прибытия на завод.

  4. Упорядочить очередь прибывших на погрузку машин.

  5. Ускорить взвешивание машин до и после погрузки.

  6. Привести в порядок интерфейс рабочего место диспетчера в ERP.

  7. Убрать у диспетчера второй монитор, журналы, калькулятор и фломастеры.

На решение задач и автоматизации, которые дали наибольший эффект ~ 2 месяца с учетом покупки и настройки оборудования, закупки партий номерных пломб со штрихкодами, написания ТЗ и других связанных процессов.

Рабочее место диспетчера преображалось по мере готовности: первым появился сканер штрихкодов, поочередно убирались журналы, калькулятор и фломастеры, менялось рабочее место в ERP, последним убрали второй монитор.

На гифке сразу виден результат преобразований (автоматическая очередь машин в новом рабочем месте диспетчера в ERP).

Волшебное рабочее место диспетчера в ERP - маленький мир больших машинВолшебное рабочее место диспетчера в ERP - маленький мир больших машинВремя "обслуживания" диспетчером одной машины сократилось в 10 раз
  • Автоматическая очередь машин через 1 КПП для 3-х точек отгрузки на заводе.

  • Автоматическое управление из ERP взвешиванием на промышленных весах.

  • Вся информация выведена на 1 экран 1 монитора пользователя.

  • Выдача номерных пломб и магнитной карты водителю с помощью сканера штрихкодов за 5 секунд.

  • Печать комплекта отгрузочных накладных диспетчером за 5 секунд.

  • Рабочее место диспетчера без журналов, калькулятора и фломастеров.

Почему мы установили диспетчеру сканер штрихкодов вместо считывателя магнитных карт, которые уже использовались на заводе? Все дело в номерных пломбах, удобстве и скорости работы для диспетчера.

Так выглядят номерные пломбы для выдачи водителю:

  • Приходят в коробках по 10 тыс. шт. и соединены друг с другом пластиковыми "ножками" (особенность изготовления).

  • Изначально был только номер, затем мы заказали с нанесением штрихкодов.

  • Штрихкод просто кодирует номер самой пломбы.

Пластиковые номерные пломбы со штрихкодамиПластиковые номерные пломбы со штрихкодами

Чтобы диспетчеру было удобно одновременно выдавать номерные пломбы и магнитные карты, не путаясь в устройствах считывания, мы на магнитные карты наклеили штрихкоды с номером.

Примерка штрихкода для наклеивания на магнитную картуПримерка штрихкода для наклеивания на магнитную карту

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

  • Чтобы сканер различал штрихкоды, мы кодируем первый знак: 1 - штрихкод номерной пломбы, 2 - штрихкод магнитной карты.

  • Мы доработали подсистему распознавания штрихкодов, чтобы номерные пломбы не нужно было расцеплять до сканирования, и сканировать несколько раз без "задвоения" номеров штрихкодов.

ГЛАВНЙ РЕЗУЛЬТАТ: пропускная способность отгрузки продукции автотранспортом на заводе увеличена в 2 раза без капитальных затрат.

Подробнее, о том, что для этого было сделано, читайте далее...

Электронная очередь для грузового автотранспорта

Фактически очередь начинает формироваться на этапе приема заказов:

> с нашей доставкой, клиент указывает только дату и время выгрузки по адресу доставки.

> на самовывозе, клиент указывает только дату и время погрузки на заводе.

Клиентский сервис: когда завод принял заказ, то мы должны соблюдать время погрузки и выгрузки машин, не допускать простоев автотранспорта и срыва поставок клиентам.

Конкурентное преимущество: мы поддерживаем такой высокий уровень сервиса, чтобы клиенты могли получить продукцию завода: "день в день" - для регионов до 300 км, на следующий день - для регионов до 600 км, и через день - для регионов свыше 600 км.

Существующие ограничения на заводе при отгрузке в автотранспорт
  1. Разная продукция завода отгружается в разные часы в течение суток.

  2. Скорость отгрузки продукции на заводе не более 6 машин в час на 1 точку погрузки.

  3. Один вид продукции отгружается с 2-х точек погрузки, второй - с одной точки.

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

  5. Все машины заезжают на завод и выезжают с завода через 1 КПП и одного диспетчера в смену.

Пример настроек в ERP по действующим ограничениям
Настройки пропускной способности отгрузки в ERPНастройки пропускной способности отгрузки в ERPНастройки вариантов подбора свободного времени отгрузки продукции в ERPНастройки вариантов подбора свободного времени отгрузки продукции в ERP

При расчете свободного времени отгрузки на заводе также учитывается расстояние до пункта выгрузки у клиента и средняя скорость движения грузового автомобиля.

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

Автоматический подбор свободного часа погрузки на заводе (по заказу в ERP) для доставки клиенту ко времениАвтоматический подбор свободного часа погрузки на заводе (по заказу в ERP) для доставки клиенту ко времениВ какой момент формируются 3 разные очереди в ERP
  1. Заказ клиента принят 21.01.2021 в 11:14.

  2. Расстояние от завода до пункта разгрузки у клиента 630 км.

  3. Чтобы доставить заказ клиенту 22.01.2021 к 8:00, машина должна приехать на завод для погрузки 21.01.2021 не позднее 15:00 - это плановая очередь погрузки.

  4. Когда машины приезжают на завод для погрузки - это фактическая очередь прибытия.

  5. По плановому времени погрузки по заказу и фактическому времени прибытия машин на завод строится реальная очередь на отгрузку.

Способы регистрация прибытия водителей на заводе:

  • через диспетчера

  • через уличный терминал

  • через чат-бот Telegram (подробнее в четвертой части)

  • через распознавание гос. номера машины (в планах на этот год)

Пример регистрации водителей через диспетчера в ERP
Диспетчер отмечает прибытие водителей правой кнопкой мыши в своем рабочем месте в ERPДиспетчер отмечает прибытие водителей правой кнопкой мыши в своем рабочем месте в ERP
  1. Машины, которые фактически находятся на погрузке на заводе.

  2. Очередь машин на погрузку по статусам:

    - кто еще не прибыл на завод (НЕ ПРИБЛ).

    - кто прибыл и ожидает своей очереди (В ОЧЕРЕДИ).

    - кто прибыл и автоматически приглашен к погрузке (К ПОГРУЗКЕ).

  3. Динамические данные двух промышленных весов (показ только у диспетчера).

  4. Изображение с двух камер на точках погрузки на заводе.

Пример регистрации водителей через уличный терминал на заводе
  • Сенсорный антивандальный монитор 24" российского производства (широкоформатный 16:9, TFT TN, 1920х1080, углы обзора 160/160), установлен на КПП завода.

  • Монитор без собственного ПО для подключения к любому ПК, с особыми характеристиками яркости (1000 кд/м2) и температурного режима (-30/+30), в защищенном корпусе (сталь 2 мм) c закаленным стеклом (4 мм) и весом ~ 20 кг.

  • Монитор подключен к системному блоку, на котором автоматически запускается ERP и разработанный нами интерфейс для самостоятельной регистрации прибытия водителей на погрузку.

Начальный экран - крупные шрифты, большие кнопки, не промахнешьсяНачальный экран - крупные шрифты, большие кнопки, не промахнешьсяШаг 1: Быстрый поиск по водительскому удостоверению - водитель не найденШаг 1: Быстрый поиск по водительскому удостоверению - водитель не найденШаг 2: Быстрый поиск по цифрам гос. номера автомобиляШаг 2: Быстрый поиск по цифрам гос. номера автомобиляШаг 3: Найденные по гос. номеру автомобили - выбор и подтверждениеШаг 3: Найденные по гос. номеру автомобили - выбор и подтверждениеШаг 4: Проверка данных и регистрация прибытия на погрузкуШаг 4: Проверка данных и регистрация прибытия на погрузку

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

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

Пример регистрации водителей через чат-бот Telegram
Водитель отмечает прибытие на завод для погрузки в чат-боте TelegramВодитель отмечает прибытие на завод для погрузки в чат-боте Telegram
  1. Команда прибытия на погрузку в чат-боте Telegram.

  2. Уведомление водителя с подтверждением времени прибытия.

Чат-бот для водителей в Telegram интегрирован с ERP в режиме онлайн и работает автоматически по заданным сценариям (подробнее в четвертой части).

Как происходит автоматический вызов водителя на погрузку из очереди:

Способ регистрации прибытия

Канал вызова на погрузку

через диспетчера

уличное LED-табло и SMS

через уличный терминал

уличное LED-табло и SMS

через чат-бот Telegram

уличное LED-табло и чат-бот Telegram

через распознавание гос.. номера (в плане)

уличное LED-табло и SMS (в плане)

Пример приглашения водителей на погрузку по SMS
Автоматическое приглашение водителей на погрузку по SMSАвтоматическое приглашение водителей на погрузку по SMS
Пример приглашения водителя на погрузку в чат-боте Telegram
1 - водитель отметил прибытие на завод, 2 - чат-бот автоматически пригласил на погрузку1 - водитель отметил прибытие на завод, 2 - чат-бот автоматически пригласил на погрузку

На скриншоте ниже видно историю взаимодействия водителей с чат-ботом Telegram в интерфейсе ERP (подробнее в четвертой части).

Автоматическое приглашение водителей на погрузку в чат-боте TelegramАвтоматическое приглашение водителей на погрузку в чат-боте Telegram
Пример приглашения водителей через уличное Led-табло
Автоматическое приглашение водителей на LED-табло по гос. номеру автомобиляАвтоматическое приглашение водителей на LED-табло по гос. номеру автомобиля
  • Размер каждой LED-панели примерно 1,5 х 2 метра.

  • LED-панели развернуты на 2 стороны стоянки грузовых автомобилей перед заводом.

И если SMS или уведомление в чат-бот Telegram отправляется однократно, то приглашение на уличное LED-табло может выводиться несколько раз в соответствии с тем, как меняется автоматическая очередь в ERP:

  • Первый вызов и ожидание водителя в течение 5 минут.

  • Второй и последующие вызовы через каждые 5 минут, после вызова на погрузку следующего по очереди водителя и окончания погрузки очередной машины на заводе.

Таким образом, очередь на LED-табло постоянно автоматически обновляется и к погрузке вызываются разные водители из числа прибывших на завод.

Оживление LED-табло и автоматическое управление из ERP

Уличные LED-панели были куплены еще до начала работ по комплексной автоматизации рабочего места диспетчера, взамен старого (с которым раньше работали диспетчеры через программу для ручного вывода строк).

Фото от российского производителя LED-панелей (1,5 х 2 м), готовых к отправке на заводФото от российского производителя LED-панелей (1,5 х 2 м), готовых к отправке на завод

Вместе с LED-панелями производитель предоставил программу для вывода строк на табло.

Окно программы для вывода текстовых строк на LED-таблоОкно программы для вывода текстовых строк на LED-табло

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

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

Пример 3-х страниц с описанием протокола
Страница 2 описания протоколаСтраница 2 описания протоколаСтраница 5 описания протоколаСтраница 5 описания протоколаСтраница 8 описания протоколаСтраница 8 описания протокола

С программистом 1С мы посмотрели протокол и не поняли, как именно управлять выводом очереди машин на табло из ERP.

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

Пример кода на языке Pascal (Delphi 10) по использованию протокола
unit ConnTypes;interfaceconst     RecBuffSizeByte=1024;typeTLevel2Pack=packed record  SrcAddr:word; //source address  DstAddr:word; //receiver address  PId:byte;     //Packet id  Cmd:byte;   // Command code  Flags:byte;  //options  Status:byte; //command status  DataLen:word; //length of data  Data:array[0..RecBuffSizeByte-1] of byte;  //data  end;PLevel2Pack=^TLevel2Pack;TLevel2Head=packed record  SrcAddr:word; //source address  DstAddr:word; //receiver address  PId:byte;     //Packet id  Cmd:byte;   // Command code  Flags:byte;  //options  Status:byte; //command status  DataLen:word; //length of data  end;PLevel2Head=^TLevel2Head;TFullPacket=packed record  bSTX:byte;  LenLo:byte;  LenHi:byte;  Data:array[0..RecBuffSizeByte*2-1+32] of byte;  end;  PFullPacket=^TFullPacket;function MakeFullPacket(Src:PLevel2Pack; Dst:Pointer):integer;function EncodeWord(v:word):word;implementationuses CRCUnit;function CS2word(cslo, cshi:byte):word;var b:PByte;beginResult:=0;b:=@Result;b^:=cslo or $80;inc(b);b^:=$80 or ((cslo shr 7) and $01) or ((cshi and $3F) shl 1);end;function EncodeWord(v:word):word;beginResult:=((v and $3F80) shl 1) or (v and $7F) or $8080;end;function DecodeWord(v:word):word;beginResult:=((v and $7F00) shr 1) or (v and $7F);end;function EncodeDataForComm(Src, Dst:Pointer; SrcSize:integer):integer; var PS, PD:PByte;     i:integer;     b:byte;  begin  PS:=Src;  PD:=Dst;  Result:=0;  for i:=1 to SrcSize do    begin    b:=PS^ xor $80;    if (b<$20) or (b=$7F)       then begin            PD^:=$7F;            inc(PD);            PD^:=b or $80;            inc(Result);            end       else PD^:=b;    inc(PS);    inc(PD);    inc(Result);    end;  end;function MakeFullPacket(Src:PLevel2Pack; Dst:Pointer):integer;var cs:word;    PB:PByte;    F:PFullPacket;    PackLen:word;    PackSize:integer;  begin  PB:=Dst;  F:=Dst;  cs:=0;  PackLen:=word(Src^.DataLen+sizeof(TLevel2Head));  CountCSNewW(Src, PackLen, cs);  F^.bSTX:=$02;  PWord(@F^.LenLo)^:=EncodeWord(PackLen);  inc(PB, 3);// add bSTX, LenLo, LenHi  PackSize:=EncodeDataForComm(Src, PB, PackLen);  inc(PB, PackSize);  PWord(PB)^:=EncodeWord(cs);  inc(PB, 2); // add CsLo, CsHi  PB^:=$03;  Result:=PackSize+6;  end;end.

Таким образом, нам удалось реализовать полностью автоматическое управление выводом очереди на LED-табло из ERP.

Мы также реализовали автоматическое управление взвешиванием машин из ERP до и после погрузки на 2-х промышленных весах на заводе. Напишите в комментариях, если вам интересно узнать об этом подробнее.

Спасибо, что дочитали до конца!

Источник: habr.com
К списку статей
Опубликовано: 30.01.2021 20:16:42
0

Сейчас читают

Комментариев (0)
Имя
Электронная почта

Интерфейсы

Erp-системы

Управление разработкой

Управление проектами

Будущее здесь

Ui

Erp

Завод

Digital

Автоматизация предприятия

Интеграция систем

Пропускная способность

Узкое место

Категории

Последние комментарии

  • Имя: Макс
    24.08.2022 | 11:28
    Я разраб в IT компании, работаю на арбитражную команду. Мы работаем с приламы и сайтами, при работе замечаются постоянные баны и лаги. Пацаны посоветовали сервис по анализу исходного кода,https://app Подробнее..
  • Имя: 9055410337
    20.08.2022 | 17:41
    поможем пишите в телеграм Подробнее..
  • Имя: sabbat
    17.08.2022 | 20:42
    Охренеть.. это просто шикарная статья, феноменально круто. Большое спасибо за разбор! Надеюсь как-нибудь с тобой связаться для обсуждений чего-либо) Подробнее..
  • Имя: Мария
    09.08.2022 | 14:44
    Добрый день. Если обладаете такой информацией, то подскажите, пожалуйста, где можно найти много-много материала по Yggdrasil и его уязвимостях для написания диплома? Благодарю. Подробнее..
© 2006-2024, personeltest.ru