[Интерфейсы, ERP-системы, Управление разработкой, Управление проектами, Будущее здесь] Цифровая трансформация завода (ч. 3): волшебные интерфейсы и оживление железа
Автор
Сообщение
news_bot ®
Стаж: 6 лет 9 месяцев
Сообщений: 27286
Часть 1: CRM для ERPЧасть 2: Роботизация бизнес-процессовЧасть 3: Волшебные интерфейсы и оживление железа (в этой публикации)Часть 4: Личные кабинеты, чат-боты и dream teamВлияние рабочего места диспетчера на пропускную способность отгрузки на заводеЦифровизация предприятия - это не только процесс внедрение новых систем и сервисов. Этому предшествуют поиски узких мест в рабочих процессах и на конкретных рабочих местах пользователей.Рекомендация: Не айтишные книги, которые полезно прочитать айтишнику
- Принципы. Жизнь и работа. Рэй Далио
- Цель. Процесс непрерывного совершенствования. Элияху Голдратт
- Гемба Кайдзен. Путь к снижению затрат и повышению качества. Масааки Имаи
Какие идеи обычно возникают, когда нужно увеличить пропускную способность отгрузки на заводе:
- Увеличить количество точек для одновременной отгрузки на заводе.
- Увеличить количество КПП для одновременного въезда/выезда на завод.
На первый взгляд ответы правильные и логичные. Остается только найти пару 10 или 100 млн. руб. на инвестиционный проект и реализовать его.
Узкое горлышко найдено, дело за малымЛичный опыт: Не верьте программистам и консультантамКогда программисты или консультанты тех. поддержки говорят вам, что у пользователей нет вопросов и проблем, потому что пользователи не обращались - это может означать, что:
- У пользователя действительно все хорошо и прекрасно.
- Пользователь не знает к кому обращаться со своими проблемами.
- Пользователь много раз обращался, никто не решил проблему, потерял надежду и перестал обращаться.
- Пользователь не видит проблем или привык к тому, что проблемы стали частью его повседневной жизни и адаптировался под них.
- У пользователя нет возможности обратиться из-за отсутствия времени, так как оно полностью занято оперативной работой.
Еще одна причина:
- Программист и консультант никогда не были в гемба и не видели, как именно пользователь работает с системой и насколько это соответствует реальным бизнес-процессам.
Общий счет 5:1 в пользу того, чтобы не верить программистам и консультантам, что у пользователей нет вопросов и проблем.
Завод находится в 150 км от моего непосредственного рабочего места. И точно уже не вспомню, письмо мне в почту со скриншотом ошибки или звонок на мобильный от диспетчера, что способствовало выехать меня на место, чтобы разобраться в причинах проблем.Выявленные на месте явные проблемы (без погружения в детали):
- 3 рукописных журнала для оперативной работы (при наличии рабочего места в ERP).
- 2 монитора, чтобы вывести нужную информацию (изображение с 2-х видеокамер, данные с 2-х промышленных весов, программы для вывода текста на Led-табло, монитор для работы в ERP).
- Настольный калькулятор (для вычисления max. веса к погрузке по каждой машине).
- Ручки и фломастеры (для заполнения настольных журналов).
- Поток жалоб от диспетчера на ошибки в рабочем месте ERP и постоянные проблемы со вторым монитором, куда выводятся данные с промышленных весов.
Лайфхак #1: Фотографируйте рабочие места пользователейТак выглядело рабочее место диспетчера, когда я приехал и это было нормой с 2016 года.
Часть рабочего места диспетчера, вид сверху
Монитор 1 - данные с 2-х камер, данные с 2-х весов, программа для led-табло
Монитор 2 - интерфейс рабочего места в ERP, беспощадный и жестокий
Настольный калькулятор и журналы на столе диспетчера
Журнал прибывших машин на погрузку с отметками плановых точек погрузки на заводе
Журнал с очередью машин (кто и во сколько приехал, когда и кого грузить, кто отгружен)
Журнал выданных номерных пломб (учет по сериям) по сменам диспетчеровЛайфхак #2: Наблюдайте, слушайте диалоги, задавайте вопросыЭто помогло за одну 12-часовую смену понять суть работы диспетчера:
- Регистрация прибытия водителей на погрузку.
- Планирование времени отгрузки в журнале (формирование очереди).
- Вызов водителей на погрузку по журналу (по очереди из числа прибывших)
- Выдача номерных номерных пломб и магнитных карт, их регистрация в ERP (для погрузки).
- Ручная отправка задания на промышленные весы (для взвешивания машины до погрузки).
- Ручное вычисление max. веса к погрузке (по каждой машине с учетом грузоподъемности и веса пустой машины).
- Ручная отправка на промышленные весы задания на погрузку (max. вес к погрузке).
- Печать отгрузочных накладных (после окончания погрузки).
Простые замеры времени операций показали, что на заводе высокая скорость погрузки (одна машина грузится ~ 10 минут), но есть простои до 3-х минут между погрузкой машин , потому что диспетчер физически не успевает "обслужить" весь трафик.
Диалоги диспетчера с водителями обнажили бюрократию на рабочем месте и предвзятое отношение к водителям:
- У одних водителей ничего не спрашиваем и не проверяем, у других - проверяем каждую букву в ФИО и гос. номерах.
- Одни водители ожидают свою очередь, другие - проезжают на погрузку без очереди, хвастаясь перед другими водителями.
- Одним водителям всё подробно рассказываем, других - игнорируем и не отвечаем на элементарные вопросы.
Все это порождало хаос в работе диспетчера и водителей, конфликты между людьми: между водителями и диспетчером, между самими водителями.
Анализ проблем показали, что узким местом на заводе является рабочее место диспетчера. Пропускную способность отгрузки можно увеличить без капитальных затрат, а помощью автоматизации.Нарисовались следующие задачи, которые были решены
- Ускорить регистрацию прибывших на погрузку водителей.
- Ускорить выдачу диспетчером номерных пломб и магнитных карт для водителей.
- Развести машины по времени прибытия на завод.
- Упорядочить очередь прибывших на погрузку машин.
- Ускорить взвешивание машин до и после погрузки.
- Привести в порядок интерфейс рабочего место диспетчера в ERP.
- Убрать у диспетчера второй монитор, журналы, калькулятор и фломастеры.
На решение задач и автоматизации, которые дали наибольший эффект ~ 2 месяца с учетом покупки и настройки оборудования, закупки партий номерных пломб со штрихкодами, написания ТЗ и других связанных процессов.Рабочее место диспетчера преображалось по мере готовности: первым появился сканер штрихкодов, поочередно убирались журналы, калькулятор и фломастеры, менялось рабочее место в ERP, последним убрали второй монитор.На гифке сразу виден результат преобразований (автоматическая очередь машин в новом рабочем месте диспетчера в ERP).
Волшебное рабочее место диспетчера в ERP - маленький мир больших машинВремя "обслуживания" диспетчером одной машины сократилось в 10 раз
- Автоматическая очередь машин через 1 КПП для 3-х точек отгрузки на заводе.
- Автоматическое управление из ERP взвешиванием на промышленных весах.
- Вся информация выведена на 1 экран 1 монитора пользователя.
- Выдача номерных пломб и магнитной карты водителю с помощью сканера штрихкодов за 5 секунд.
- Печать комплекта отгрузочных накладных диспетчером за 5 секунд.
- Рабочее место диспетчера без журналов, калькулятора и фломастеров.
Почему мы установили диспетчеру сканер штрихкодов вместо считывателя магнитных карт, которые уже использовались на заводе? Все дело в номерных пломбах, удобстве и скорости работы для диспетчера.Так выглядят номерные пломбы для выдачи водителю:
- Приходят в коробках по 10 тыс. шт. и соединены друг с другом пластиковыми "ножками" (особенность изготовления).
- Изначально был только номер, затем мы заказали с нанесением штрихкодов.
- Штрихкод просто кодирует номер самой пломбы.
Пластиковые номерные пломбы со штрихкодамиЧтобы диспетчеру было удобно одновременно выдавать номерные пломбы и магнитные карты, не путаясь в устройствах считывания, мы на магнитные карты наклеили штрихкоды с номером.
Примерка штрихкода для наклеивания на магнитную карту
Таким образом, диспетчер перед выдачей водителю сканирует номерные пломбы и магнитные карты на одном сканере штрихкодов и делает это машинально, не задумываясь.
- Чтобы сканер различал штрихкоды, мы кодируем первый знак: 1 - штрихкод номерной пломбы, 2 - штрихкод магнитной карты.
- Мы доработали подсистему распознавания штрихкодов, чтобы номерные пломбы не нужно было расцеплять до сканирования, и сканировать несколько раз без "задвоения" номеров штрихкодов.
ГЛАВНЫЙ РЕЗУЛЬТАТ: пропускная способность отгрузки продукции автотранспортом на заводе увеличена в 2 раза без капитальных затрат.
Подробнее, о том, что для этого было сделано, читайте далее...Электронная очередь для грузового автотранспортаФактически очередь начинает формироваться на этапе приема заказов:> с нашей доставкой, клиент указывает только дату и время выгрузки по адресу доставки.> на самовывозе, клиент указывает только дату и время погрузки на заводе.Клиентский сервис: когда завод принял заказ, то мы должны соблюдать время погрузки и выгрузки машин, не допускать простоев автотранспорта и срыва поставок клиентам.Конкурентное преимущество: мы поддерживаем такой высокий уровень сервиса, чтобы клиенты могли получить продукцию завода: "день в день" - для регионов до 300 км, на следующий день - для регионов до 600 км, и через день - для регионов свыше 600 км.Существующие ограничения на заводе при отгрузке в автотранспорт
- Разная продукция завода отгружается в разные часы в течение суток.
- Скорость отгрузки продукции на заводе не более 6 машин в час на 1 точку погрузки.
- Один вид продукции отгружается с 2-х точек погрузки, второй - с одной точки.
- Одновременно на заводе могут находиться не более 8 грузовых машин на всех точках погрузки.
- Все машины заезжают на завод и выезжают с завода через 1 КПП и одного диспетчера в смену.
Пример настроек в ERP по действующим ограничениям
Настройки пропускной способности отгрузки в ERP
Настройки вариантов подбора свободного времени отгрузки продукции в ERPПри расчете свободного времени отгрузки на заводе также учитывается расстояние до пункта выгрузки у клиента и средняя скорость движения грузового автомобиля.Для некоторых видов продукции учитывается суточный лимит объема отгрузки вместо ограничения по количеству машин в час.
Автоматический подбор свободного часа погрузки на заводе (по заказу в ERP) для доставки клиенту ко времениВ какой момент формируются 3 разные очереди в ERP
- Заказ клиента принят 21.01.2021 в 11:14.
- Расстояние от завода до пункта разгрузки у клиента 630 км.
- Чтобы доставить заказ клиенту 22.01.2021 к 8:00, машина должна приехать на завод для погрузки 21.01.2021 не позднее 15:00 - это плановая очередь погрузки.
- Когда машины приезжают на завод для погрузки - это фактическая очередь прибытия.
- По плановому времени погрузки по заказу и фактическому времени прибытия машин на завод строится реальная очередь на отгрузку.
Способы регистрация прибытия водителей на заводе:
- через диспетчера
- через уличный терминал
- через чат-бот Telegram (подробнее в четвертой части)
- через распознавание гос. номера машины (в планах на этот год)
Пример регистрации водителей через диспетчера в ERP
Диспетчер отмечает прибытие водителей правой кнопкой мыши в своем рабочем месте в ERP
- Машины, которые фактически находятся на погрузке на заводе.
- Очередь машин на погрузку по статусам:- кто еще не прибыл на завод (НЕ ПРИБЫЛ).- кто прибыл и ожидает своей очереди (В ОЧЕРЕДИ).- кто прибыл и автоматически приглашен к погрузке (К ПОГРУЗКЕ).
- Динамические данные двух промышленных весов (показ только у диспетчера).
- Изображение с двух камер на точках погрузки на заводе.
Пример регистрации водителей через уличный терминал на заводе
- Сенсорный антивандальный монитор 24" российского производства (широкоформатный 16:9, TFT TN, 1920х1080, углы обзора 160/160), установлен на КПП завода.
- Монитор без собственного ПО для подключения к любому ПК, с особыми характеристиками яркости (1000 кд/м2) и температурного режима (-30/+30), в защищенном корпусе (сталь 2 мм) c закаленным стеклом (4 мм) и весом ~ 20 кг.
- Монитор подключен к системному блоку, на котором автоматически запускается ERP и разработанный нами интерфейс для самостоятельной регистрации прибытия водителей на погрузку.
Начальный экран - крупные шрифты, большие кнопки, не промахнешься
Шаг 1: Быстрый поиск по водительскому удостоверению - водитель не найден
Шаг 2: Быстрый поиск по цифрам гос. номера автомобиля
Шаг 3: Найденные по гос. номеру автомобили - выбор и подтверждение
Шаг 4: Проверка данных и регистрация прибытия на погрузкуТаймер обратного отсчета мотивирует водителя выполнять действия быстрее, чтобы не задерживать очередь у терминала.
Этот кейс также относится к теме оживления железа (оживление с помощью разработанного ПО для автономной работы в составе единой информационной системы), но здесь подробно рассматриваться не будет.
Пример регистрации водителей через чат-бот Telegram
Водитель отмечает прибытие на завод для погрузки в чат-боте Telegram
- Команда прибытия на погрузку в чат-боте Telegram.
- Уведомление водителя с подтверждением времени прибытия.
Чат-бот для водителей в Telegram интегрирован с ERP в режиме онлайн и работает автоматически по заданным сценариям (подробнее в четвертой части).Как происходит автоматический вызов водителя на погрузку из очереди:Способ регистрации прибытияКанал вызова на погрузкучерез диспетчерауличное LED-табло и SMSчерез уличный терминалуличное LED-табло и SMSчерез чат-бот Telegramуличное LED-табло и чат-бот Telegramчерез распознавание гос.. номера (в плане)уличное LED-табло и SMS (в плане)Пример приглашения водителей на погрузку по SMS
Автоматическое приглашение водителей на погрузку по SMSПример приглашения водителя на погрузку в чат-боте Telegram
1 - водитель отметил прибытие на завод, 2 - чат-бот автоматически пригласил на погрузкуНа скриншоте ниже видно историю взаимодействия водителей с чат-ботом Telegram в интерфейсе ERP (подробнее в четвертой части).
Автоматическое приглашение водителей на погрузку в чат-боте TelegramПример приглашения водителей через уличное Led-табло
Автоматическое приглашение водителей на LED-табло по гос. номеру автомобиля
- Размер каждой LED-панели примерно 1,5 х 2 метра.
- LED-панели развернуты на 2 стороны стоянки грузовых автомобилей перед заводом.
И если SMS или уведомление в чат-бот Telegram отправляется однократно, то приглашение на уличное LED-табло может выводиться несколько раз в соответствии с тем, как меняется автоматическая очередь в ERP:
- Первый вызов и ожидание водителя в течение 5 минут.
- Второй и последующие вызовы через каждые 5 минут, после вызова на погрузку следующего по очереди водителя и окончания погрузки очередной машины на заводе.
Таким образом, очередь на LED-табло постоянно автоматически обновляется и к погрузке вызываются разные водители из числа прибывших на завод.
Оживление LED-табло и автоматическое управление из ERPУличные LED-панели были куплены еще до начала работ по комплексной автоматизации рабочего места диспетчера, взамен старого (с которым раньше работали диспетчеры через программу для ручного вывода строк).
Фото от российского производителя LED-панелей (1,5 х 2 м), готовых к отправке на заводВместе с LED-панелями производитель предоставил программу для вывода строк на табло.
Окно программы для вывода текстовых строк на LED-таблоПосле реализации автоматической очереди погрузки в ERP, логично, что информация на табло должна выводиться также автоматически.Нам повезла, что изготовитель нашел документ с описанием протокола: описание формата пакетов второго уровня, вывода данных по строкам и столбцам, и пример одной функции подсчета контрольной суммы.Пример 3-х страниц с описанием протокола
Страница 2 описания протокола
Страница 5 описания протокола
Страница 8 описания протоколаС программистом 1С мы посмотрели протокол и не поняли, как именно управлять выводом очереди машин на табло из ERP.По нашей просьбе, изготовитель LED-панелей договорился с производителем компонент электроники, из которых оно состоит, чтобы они написали пример кода для программного вывода информации на табло. Пример был написан на языке Pascal, который программист с большим трудом перевел на язык 1С.Пример кода на языке Pascal (Delphi 10) по использованию протокола
unit ConnTypes;
interface
const
RecBuffSizeByte=1024;
type
TLevel2Pack=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;
implementation
uses CRCUnit;
function CS2word(cslo, cshi:byte):word;
var b:PByte;
begin
Result:=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;
begin
Result:=((v and $3F80) shl 1) or (v and $7F) or $8080;
end;
function DecodeWord(v:word):word;
begin
Result:=((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
===========
Похожие новости:
- [Научно-популярное, Нанотехнологии, Физика, Будущее здесь, Астрономия] Скорлупа сверхцивилизации. Об энергетических, инженерных и экологических аспектах сферы Дайсона
- [Разработка под Arduino] Мёртвая Arduino, или Как спасти плату
- [Habr, Интерфейсы] Чем неудобен хабровый WYSIWYG-редактор
- [Медийная реклама, Лазеры, Будущее здесь] Реклама астрономического масштаба
- [Управление разработкой, Управление персоналом, Карьера в IT-индустрии, IT-компании] Почему лучше работать в B2B-проектах: неожиданные факты о разработке в B2B и B2C
- [Программирование, Управление разработкой, Управление проектами, Подготовка технической документации] Docs as Code. Часть 2: получаем документацию из кода
- [Игры и игровые приставки, Транспорт] Обновленная Tesla Model S несёт на борту 10 тфлопс производительности и запускает игры
- [Управление проектами, Бизнес-модели] BPMN простым языком
- [Киберпанк, Игры и игровые приставки] CDPR потребовала удалить мод Cyberpunk 2077, который позволял заняться сексом с персонажем Киану Ривза
- [Финансы в IT, Транспорт, Будущее здесь, Урбанизм] Tesla впервые получила годовую прибыль, а её капитализация достигла $800 млрд
Теги для поиска: #_interfejsy (Интерфейсы), #_erpsistemy (ERP-системы), #_upravlenie_razrabotkoj (Управление разработкой), #_upravlenie_proektami (Управление проектами), #_buduschee_zdes (Будущее здесь), #_ui, #_interfejsy (интерфейсы), #_erp, #_erpsistemy (erp-системы), #_zavod (завод), #_digital, #_avtomatizatsija_predprijatija (автоматизация предприятия), #_integratsija_sistem (интеграция систем), #_propusknaja_sposobnost (пропускная способность), #_uzkoe_mesto (узкое место), #_interfejsy (
Интерфейсы
), #_erpsistemy (
ERP-системы
), #_upravlenie_razrabotkoj (
Управление разработкой
), #_upravlenie_proektami (
Управление проектами
), #_buduschee_zdes (
Будущее здесь
)
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 22-Ноя 12:39
Часовой пояс: UTC + 5
Автор | Сообщение |
---|---|
news_bot ®
Стаж: 6 лет 9 месяцев |
|
Часть 1: CRM для ERPЧасть 2: Роботизация бизнес-процессовЧасть 3: Волшебные интерфейсы и оживление железа (в этой публикации)Часть 4: Личные кабинеты, чат-боты и dream teamВлияние рабочего места диспетчера на пропускную способность отгрузки на заводеЦифровизация предприятия - это не только процесс внедрение новых систем и сервисов. Этому предшествуют поиски узких мест в рабочих процессах и на конкретных рабочих местах пользователей.Рекомендация: Не айтишные книги, которые полезно прочитать айтишнику
Узкое горлышко найдено, дело за малымЛичный опыт: Не верьте программистам и консультантамКогда программисты или консультанты тех. поддержки говорят вам, что у пользователей нет вопросов и проблем, потому что пользователи не обращались - это может означать, что:
Общий счет 5:1 в пользу того, чтобы не верить программистам и консультантам, что у пользователей нет вопросов и проблем.
Часть рабочего места диспетчера, вид сверху Монитор 1 - данные с 2-х камер, данные с 2-х весов, программа для led-табло Монитор 2 - интерфейс рабочего места в ERP, беспощадный и жестокий Настольный калькулятор и журналы на столе диспетчера Журнал прибывших машин на погрузку с отметками плановых точек погрузки на заводе Журнал с очередью машин (кто и во сколько приехал, когда и кого грузить, кто отгружен) Журнал выданных номерных пломб (учет по сериям) по сменам диспетчеровЛайфхак #2: Наблюдайте, слушайте диалоги, задавайте вопросыЭто помогло за одну 12-часовую смену понять суть работы диспетчера:
Простые замеры времени операций показали, что на заводе высокая скорость погрузки (одна машина грузится ~ 10 минут), но есть простои до 3-х минут между погрузкой машин , потому что диспетчер физически не успевает "обслужить" весь трафик.
Все это порождало хаос в работе диспетчера и водителей, конфликты между людьми: между водителями и диспетчером, между самими водителями.
Волшебное рабочее место диспетчера в ERP - маленький мир больших машинВремя "обслуживания" диспетчером одной машины сократилось в 10 раз
Пластиковые номерные пломбы со штрихкодамиЧтобы диспетчеру было удобно одновременно выдавать номерные пломбы и магнитные карты, не путаясь в устройствах считывания, мы на магнитные карты наклеили штрихкоды с номером. Примерка штрихкода для наклеивания на магнитную карту Таким образом, диспетчер перед выдачей водителю сканирует номерные пломбы и магнитные карты на одном сканере штрихкодов и делает это машинально, не задумываясь.
ГЛАВНЫЙ РЕЗУЛЬТАТ: пропускная способность отгрузки продукции автотранспортом на заводе увеличена в 2 раза без капитальных затрат.
Настройки пропускной способности отгрузки в ERP Настройки вариантов подбора свободного времени отгрузки продукции в ERPПри расчете свободного времени отгрузки на заводе также учитывается расстояние до пункта выгрузки у клиента и средняя скорость движения грузового автомобиля.Для некоторых видов продукции учитывается суточный лимит объема отгрузки вместо ограничения по количеству машин в час. Автоматический подбор свободного часа погрузки на заводе (по заказу в ERP) для доставки клиенту ко времениВ какой момент формируются 3 разные очереди в ERP
Диспетчер отмечает прибытие водителей правой кнопкой мыши в своем рабочем месте в ERP
Начальный экран - крупные шрифты, большие кнопки, не промахнешься Шаг 1: Быстрый поиск по водительскому удостоверению - водитель не найден Шаг 2: Быстрый поиск по цифрам гос. номера автомобиля Шаг 3: Найденные по гос. номеру автомобили - выбор и подтверждение Шаг 4: Проверка данных и регистрация прибытия на погрузкуТаймер обратного отсчета мотивирует водителя выполнять действия быстрее, чтобы не задерживать очередь у терминала. Этот кейс также относится к теме оживления железа (оживление с помощью разработанного ПО для автономной работы в составе единой информационной системы), но здесь подробно рассматриваться не будет.
Водитель отмечает прибытие на завод для погрузки в чат-боте Telegram
Автоматическое приглашение водителей на погрузку по SMSПример приглашения водителя на погрузку в чат-боте Telegram 1 - водитель отметил прибытие на завод, 2 - чат-бот автоматически пригласил на погрузкуНа скриншоте ниже видно историю взаимодействия водителей с чат-ботом Telegram в интерфейсе ERP (подробнее в четвертой части). Автоматическое приглашение водителей на погрузку в чат-боте TelegramПример приглашения водителей через уличное Led-табло Автоматическое приглашение водителей на LED-табло по гос. номеру автомобиля
Таким образом, очередь на LED-табло постоянно автоматически обновляется и к погрузке вызываются разные водители из числа прибывших на завод.
Фото от российского производителя LED-панелей (1,5 х 2 м), готовых к отправке на заводВместе с LED-панелями производитель предоставил программу для вывода строк на табло. Окно программы для вывода текстовых строк на LED-таблоПосле реализации автоматической очереди погрузки в ERP, логично, что информация на табло должна выводиться также автоматически.Нам повезла, что изготовитель нашел документ с описанием протокола: описание формата пакетов второго уровня, вывода данных по строкам и столбцам, и пример одной функции подсчета контрольной суммы.Пример 3-х страниц с описанием протокола Страница 2 описания протокола Страница 5 описания протокола Страница 8 описания протоколаС программистом 1С мы посмотрели протокол и не поняли, как именно управлять выводом очереди машин на табло из ERP.По нашей просьбе, изготовитель LED-панелей договорился с производителем компонент электроники, из которых оно состоит, чтобы они написали пример кода для программного вывода информации на табло. Пример был написан на языке Pascal, который программист с большим трудом перевел на язык 1С.Пример кода на языке Pascal (Delphi 10) по использованию протокола unit ConnTypes;
interface const RecBuffSizeByte=1024; type TLevel2Pack=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; implementation uses CRCUnit; function CS2word(cslo, cshi:byte):word; var b:PByte; begin Result:=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; begin Result:=((v and $3F80) shl 1) or (v and $7F) or $8080; end; function DecodeWord(v:word):word; begin Result:=((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.
=========== Источник: habr.com =========== Похожие новости:
Интерфейсы ), #_erpsistemy ( ERP-системы ), #_upravlenie_razrabotkoj ( Управление разработкой ), #_upravlenie_proektami ( Управление проектами ), #_buduschee_zdes ( Будущее здесь ) |
|
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 22-Ноя 12:39
Часовой пояс: UTC + 5