Меня зовут Юрий Коноваленко, я работаю начальником отдела ИТ на картоноделательной фабрике АО «Пролетарий» – это Брянская область, город Сураж. Сегодня я хочу рассказать об OPC (OLE for Process Control) и его использовании для интеграции с промышленным оборудованием.
У нашей компании 124-летняя история. Последние 6 лет мы используем OPC. Возможно, для кого-то это каменный век…
План доклада:
-
Начну я с теории, расскажу про Common Information model (CIM), про непрерывность потока данных. Покажу пирамиду наших данных снизу вверх.
-
Далее будет практическая часть – подключим датчики к 1С, чтобы ни от кого не зависеть
-
И немного пофантазируем на тему того, как получить максимум информации, используя концепцию «один датчик + одна кнопка». При этом затронем продукт OMPARTNERS – это бельгийская MES-система.
Что такое Common Information Model?
Common Information Model (CIM) – это общая информационная модель:
-
На нулевом уровне – оборудование и датчики;
-
На первом уровне – числовое программное управление;
-
Второй уровень – реализация операций;
-
Дальше у нас идет MES-система – это планирование и контроль производственных операций, цеховое планирование;
-
И наверху – KPI, бухгалтерия, бизнес-планирование.
Так исторически сложилось, что 1С эту пирамиду начала осиливать «сверху вниз». Но при этом мы все понимаем, что эффективность данных на верхнем уровне зависит от нижних данных. На нижнем уровне у нас максимум информации, и при переходе наверх она агрегируется, суммируется, консолидируется. А внизу – просто огромный массив данных. И мы хотим, чтобы пользователи ввели эти данные – ввели выпуск продукции, расход полуфабрикатов, расход материалов. Все это человеческая работа, дополнительные затраты – возможно, пользователи этому не обрадуются.
Если оценивать эффективность исходных данных, используемых на уровне MES, по убывающей, то это:
-
Данные о выпуске продукции;
-
Данные о расходе материалов на производство;
-
Данные о расходе энергоносителей;
-
Планирование – в конце, потому что, если мы получим все данные снизу, мы будем знать, что и как делается, то сможем заполнить нормативно-справочную информацию, спецификации просто естественным образом.
На большинстве предприятий первый и второй уровни выглядят, как разорванная цепочка, потому что человеку, заинтересованному в качественных входящих данных, придется идти самому и руками все это заводить.
Предлагаю решение:
-
OPC-сервер;
-
Тех. база 1С;
-
COM-соединение – древняя технология, но работает.
Что такое OPC (OLE for Process Control)?
Все знают, что технология OLE (Object Linking and Embedding) входила еще в Windows 95.
OPC – это тот же самый примитив, он базируется на технологиях OLE, ActiveX, COM/DCOM. Казалось бы, все какое-то древнее, стоит ли с этим заморачиваться?
Я сегодня хочу поделиться с вами этой технологией и доказать, что она нужная.
Кто у нас впереди всех? SAP. На слайде показано покрытие всех уровней данных продуктами SAP и приведены выдержки из их презентации на сайте.
-
На производственном уровне (Shop Floor) в SAP используется SAP Plant Connectivity – это просто набор агентов, которые собирают информацию с оборудования. Причем они поддерживают как OPC, так и файловые протоколы. Так исторически сложилось, что производители крупного оборудования акцентируется на удобстве и производительности оборудования, и файловые протоколы – это, зачастую, единственное, что они предоставляют. Но это нас вполне устраивает. Причем, когда мы только начинали использовать технологию OPC, у SAP она тоже только развивалась, и этот продукт тогда назывался SAP ODA (OPC Data Access). Сейчас они сделали его ребрендинг под названием SAP Plant Connectivity.
-
На втором уровне (MES) SAP состоит из двух частей – нижняя часть SAP Manufacturing Integration & Intelligence (MII). Именно с ней интегрируется производственный уровень (Shop Floor) – в MII попадает то, что собирают агенты. И верхняя часть – SAP Manufacturing Execution (ME), которая обеспечивает хранение данных и инструменты для их анализа.
-
И на верхнем уровне – SAP ERP.
Обратите внимание на слоганы:
-
«Подключитесь к производственным системам и Industrial Internet of Things (IIoT)». Классно же, получать реальные данные и ни от кого не зависеть. Даже если у нас используется терминал сбора данных и еще что-то, это все облегчает ручной ввод. Здесь ввод данных происходит полностью автоматически.
-
«Использует стандарты OPC».
-
И еще один красивый слоган от SAP: «Увеличьте ценность ваших производственных данных и создайте более интеллектуальные продукты с более умными машинами». Сделаем наши машины более умными?
Практическая часть. Подключение датчиков к оборудованию
Теперь практическая часть.
Есть машина. Слева направо: рулон разматывается, дальше стоит нож (гильотина), она режет, и листы складываются в стекер – получаем из рулона квадратные листы, нарезанные в стопку.
Если мы говорим про OPC, чаще всего в более сложные системы управления производством уже встроен OPC-сервер, вы к нему просто подключаетесь и получаете все данные. Сервера OPC сейчас нет только в китайском оборудовании. Поэтому для усложнения мы представим, что это – китайская листорезка, у которой никакой автоматизации нет. Поэтому ставим датчики самостоятельно:
-
Рулон режет нож. Ставим датчик на ноже и сразу получаем количество штук выхода продукции. Казалось бы, что еще? Большинство MES-систем, в принципе, этим и ограничиваются. Этого достаточно.
-
Дальше – датчик новой кипы (количество упаковок). Мы можем напечатать этикетку и упаковочный лист, сгенерировать туда штрихкод. Мы можем даже генерировать индивидуальные штрихкоды для каждой паллеты, чтобы тут же на предприятии ввести по-паллетную идентификацию продукции – у покупателя возникла проблема, мы щелкнули этот штрихкод и определили, кто и когда этот товар сделал. Классно. Что еще нужно?
-
Датчик на валу. С помощью этого датчика мы можем померить скорость вращения и посчитать погонные метры. Погонные метры – это уже расход полуфабрикатов. Тоже классно.
-
И последнее, датчик наличия полотна, чтобы все данные были правдивые.
Итак, датчики мы поставили. Теперь их нужно куда-то подключить. Есть очень простое устройство, модуль ввода дискретных сигналов – оно стоит 5-6 тыс. рублей. Все датчики просто подключаются на клеммник и на выходе у нас уже COM-порт.
Обратите внимание, мы все ближе и ближе к 1С.
Вариант реализации первого и второго уровней CIM
Итак, для модуля ввода дискретных сигналов нам нужен OPC-сервер. OPC-сервера бывают очень различными, у них много производителей. Чаще всего, они платные. Есть бесплатные на 20 тегов (20 переменных). Конкретно этот OPC-сервер идет в комплекте с прибором, его можно скачать с сайта производителя, он ничего не стоит. Там есть готовый шаблон для этого прибора. Вся настройка занимает 3 минуты.
И дальше, в качестве OPC-клиента у нас выступает тех. база 1С. Для подключения мы в данном случае используем библиотеку Siemens из пакета Semantic NetPC Software, но вообще можно использовать много различных библиотек. Конечно, у меня есть желто-красная мечта, что когда-нибудь в 1С появится стандартная поддержка этой технологии, тем более что SAP использует подключение по OPC, и, следовательно, OPC для оборудования идет как стандарт.
И через COM-соединение мы можем в основной MES-системе получать данные, строить красивые графики.
Если на графики посмотреть:
-
Верхний график – скорость. Мы видим, что скорость у нас в основном стабильна, но иногда проседает, что объясняется дискретным импульсом на графике чуть ниже – в момент импульса поменялась кипа (закончили старую, начали новую). Кипа поменялась – скорость опять стабилизируется. Красный импульс – это обрыв полотна. Скорее всего, заправляли новый рулон.
-
Внизу мы уже получаем временные диаграммы. Черный сектор – это простои. Желтый – это работа на маленькой скорости, зеленый – это работа на большой скорости. Мы уже для руководства получаем эффективность работы линии. Уже есть куда стремиться.
Вариант реализации MES-уровня CIM
Техническая база 1С
Вот так выглядит программа. Это – техническая база данных, мы выделяем ее отдельно, она крутится на отдельном сервере и собирает все данные. У технической базы данных две задачи:
-
Первая – это собрать все данные.
-
И вторая – сохранить по ним историю. Полученные данные через COM-соединение будут анализироваться в основной MES-системе. Причем, здесь есть режим не сохранять какой-то тег, сохранять все или сохранять только изменения.
Все это работает. Для каждого вида оборудования используются свои шаблоны настроек. Все эти настройки в базе есть. И с минимальными изменениями мы можем подключить новое оборудование.
Основная MES-система
А это уже основная MES-система.
Здесь можно поближе увидеть тот самый график скорости. Красный импульс – это смена рулона, черный – смена кипы.
Справа мы здесь видим количественно, по кипам, сколько в каждой кипе штук, сколько в каждой кипе квадратных метров. Мы уже не заставляем вводить эти данные пользователей, они вводятся автоматически, плюс еще в MES-системе может быть очень много пользователей – это отдел качества, директора, сменные мастера – они все видят в онлайне. COM-соединений к технической базе 1С может быть огромное количество, но для оборудования техническая база 1С держит только одного клиента, что не нагружает производственную систему.
Вот так выглядит документ выпуска продукции. Все, что зелененькое, вводится в документ автоматически. Все, что беленькое – нужно выбрать из справочников (элементы номенклатуры и их формат). Там есть подсказки, это тоже очень удобно – минимум работы для людей.
Затраты на оборудование. Это – старая презентация, данные за 2016 год, смешные деньги, 25 тыс. рублей. Из них самое дорогое – это конвертер из COM-порта в Ethernet, чтобы получать все это по сети, стоит 10 тысяч. Все остальное – очень дешево.
До этого мы рассматривали независимую систему, где мы сами поставили датчики и автоматизировали китайскую линию. Теперь – пример сложной системы, картоноделательная машина.
Для понимания масштаба оборудования – это внизу человек идет. Причем, на фото только первый зал второго этажа (на этом этаже есть еще второй зал и есть первый этаж). Вот такая производственная линия. Она автоматизирована различными производителями оборудования и различными производителями программного обеспечения. Все это работает в комплексе, и везде есть OPC-сервера, из которых можно получать все-все-все.
Для этой системы у нас используется более усложненная обработка с графиками (мы ее видим слева).
-
На первом графике зеленая полоса – это плотность полотна. Где цвет светлее, это значит, плотность картона слабее, где более зеленый цвет – качественный картон.
-
Следующий график (коричневый) – это граммаж.
-
Следующий график – это влажность.
-
Следующий график – это скорость (видно, как машина разгоняется).
-
Следующий график (серый) – это истечение клея для межслоевой проклейки
-
И последний график – это расход электроэнергии на тонну картона.
Все это естественным образом берется в себестоимость – не нужно строить систему линейных уравнений, чтобы распределить все эти материалы на выпуск.
Здесь показан график смены тамбуров (рулонов), можно увидеть объем тамбура, который наматывался – в данном случае, 10 тонн.
Ниже показан расход сырья (волокна).
Какие показатели мы можем отслеживать в системе ONLINE:
-
Расход остатков макулатуры. В этой огромной системе используется около 30 бассейнов, в которых может находиться до 30 тонн макулатуры в сухом остатке (если это сырье полностью высушить). При инвентаризации в начале месяца начальник цеха всегда может сыграть: «У меня еще в машине большой запас», а здесь мы все это видим.
-
Получаем показатели технологического режима – исследуем изначальную массу для бумаги. Туда входит очень много параметров, которые замеряют специалисты ОТК, а мы те же самые параметры берем с датчиков и контролируем как датчики, так и людей.
-
Расход клея.
-
Качество. На основании данных по граммажу мы можем рассчитать показатели для сертификата качества. Когда за продукцией приезжает покупатель, мы просто ему на сертификат качества даем в онлайне то, что было. Все это работает без участия людей.
-
Выработка (отлив). Получив выработку с машины, и потом посчитав на выходе уже порезанные, упакованные рулоны – мы сравниваем вес и находим все косяки. Спрятать все очень сложно, это дисциплинирует персонал.
-
Расход электроэнергии – тоже очень хороший показатель.
OMP (OMPARTNERS). Реализация универсальной концепции: один датчик плюс одна кнопка «Переналадка»
Третья часть – OMP (OMPARTNERS), бельгийская MES-система. Посмотрите, сколько они производят отдельных MES-систем OMP – для химии, для фармацевтики, для пищевой промышленности, для металлургии, для напольных покрытий, для бумаги и пластика, для упаковочных материалов.
Как мы видим, каждая MES-система должна быть отраслевой. У OMP нет универсальной системы, ее сложно построить.
Очень интересная концепция – один датчик и одна кнопка «Переналадка» (на картинке показана желтым сверху). Кнопка означает переналадку, то есть, переход с одной номенклатуры на другую (переход с одного заказа покупателя на другой). Одной только этой кнопкой в интерфейсе мы в основном и пользуемся.
Здесь представлена панель – это перепрошитая Siemens, которую выпускает OMPARTNERS. Комплект этого оборудования на линию (без самого датчика) – стоит где-то 2 тысячи евро. Дорого.
Вот так представляет собой любую линию OMPARTNERS. Классная концепция. Рассмотрим гофропроизводство.
-
На входе линии слева мы кладем заготовки – ровные листы гофрокартона,
-
На выходе получаем ящик полностью готовых разложенных коробок, в которых вы, например, покупаете принтер.
-
И для подсчета расхода заготовок внутри этой машины стоит один датчик.
Одного датчика хватает. Сколько информации можно с него получить?
-
«Получено заготовок» – это количество, которое пришло на вход линии.
-
Непосредственно расход заготовок – это «СЧЕТЧИК».
-
Далее, «Брак заготовок» – это количество «Получено заготовок» минус «СЧЕТЧИК». Классно – мы видим брак, и людям уже сложнее его прятать. И бухгалтерии не приходиться сводить себестоимость через систему линейных уравнений.
-
Мы знаем, сколько «Сдано на склад» – это количество, которое склад принял.
-
Мы знаем, как получить «Брак продукции» – это «СЧЕТЧИК» минус «Сдано на склад».
Все эти показатели мы фактически получаем с одного датчика.
Причем, мы сейчас рассмотрели только количественные показатели, а датчик позволяет получать еще и временные.
-
Мы знаем время пересменки до начала работы счетчика. Знаем, что смена началась в 8 часов, а счетчик начал считаться в 8:40. Пересменка должна быть 20 минут. Значит, оставшиеся 20 минут – это наш внутренний резерв. Собственнику очень легко перевести это время в деньги, аргументировать себестоимость нашего продукта. Почему пересменка затянулась? Долго искали заготовки, полуфабрикаты, оснастку. Значит, нужно было найти их заранее, сделать так, чтобы не было проблем с их поиском. Собственник видит эти узкие места и понимает, что их нужно оптимизировать.
-
Следующий вариант – время производства. Можно даже посчитать, какая скорость.
-
Время переналадки – от нажатия кнопки (когда мы сказали, что пошел новый заказ) до того, как машина вышла на уровень. Мы на диаграмме видим, что это – один час. Много. Собственник может это проанализировать. Здесь начинаются уже логические моменты, казалось бы, линия все это время работала, а у нее, оказывается, были сплошные переналадки. Следовательно, если нужно больше продукции, нужно купить новую линию.
-
Время остановов система может фиксировать автоматически. Например, в OMP настраивается, что микроостанов до 10 минут мы прощаем, классифицируем его, как микроостанов и все. А если перерыв в работе больше 10 минут, то оператору в обязательном порядке нужно классифицировать – написать проблему, почему возник внутренний резерв. Здесь уже идет систематизация вспомогательных служб – если проблема по электрической части, вызываем электриков и разбираемся.
Итого, если посмотреть навскидку – где-то 40% времени машина не работает. И собственнику можно сказать: «Мы вам увеличим производительность текущих линий на 20%, просто установив один датчик».
Реализация в 1С (техническая база)
Я хотел вам показать концепцию, как это можно реализовать на 1С. Мы собрали стенд. Вот так это выглядит.
-
Блок питания;
-
Модуль ввода дискретных сигналов;
-
Преобразователь в Ethernet из COM-порта.
Все это подключено к ноутбуку. На клеммы модуля дискретных сигналов воздействуют три управляющих элемента:
-
Индукционный датчик;
-
Кнопка;
-
И оптический датчик.
-
Индуктивный датчик реагирует на металл – его параметр «Счетчик» увеличивается при приближении металла, а параметр «Состояние» меняет значение при остановке рядом с ним металлической детали.
-
Кнопка. Будем считать, что нажатие на кнопку – это начало нового заказа. Параметр «Счетчик» считает количество нажатий (плюс мы можем фиксировать момент нажатия). А параметр «Состояние» меняет значение при длительном нажатии кнопки.
-
И следующий датчик – оптический. Такими датчиками пользуется OMP. Параметр «Счетчик» считает количество прохождений заготовки. А параметр «Состояние» можно использовать, чтобы определить, что заготовка остановилась.
Данная статья написана по итогам доклада, прочитанного на конференции INFOSTART EVENT 2018 EDUCATION.