Наш пользователь, специалист по AnyLogic Геннадий Паршин моделирует производственные операции в Объединенной металлургической компании – мировом лидере по производству труб большого диаметра. В этой статье Геннадий делится опытом по моделированию сложных технологических процессов с помощью AnyLogic и рассказывает о том, как инженеры ОМК моделируют работу мостовых кранов. Мы публикуем статью от его имени.

ОМК
В одном из цехов предприятия мы провели реконструкцию, чтобы установить новый трубоэлектросварочный стан. Это, в свою очередь, повлияло на производственный материалопоток.
До реконструкции цеха работа велась в двух пролетах. Вот как это выглядело:
- В первом пролете кран 1 перемещает скрученные в рулоны листы металла со склада 1 на тележку 1.
- Во втором пролете кран 4 перевозит рулоны с тележки 1 на площадку осмотра перед агрегатом резки.
- Кран 3 перемещает рулоны со склада 2 на площадку осмотра.
- С площадки осмотра краном 4 рулоны перемещаются на вход агрегата продольной резки, где режутся на штрипсы – заготовки для труб.
- Штрипсы перемещаются краном 2 на склад штрипсов перед трубоэлектросварочным станом, а затем – краном на стан.
Поток рулонов и штрипсов показаны красными стрелками, коробок с отходами – синими.
Отходы после резки стальных рулонов поступают в коробки около агрегата резки. Заполненные коробки взвешивают и выгружают в вагоны. Коробки с отходами упаковочной ленты выгружаются в вагон в пролете 2 без взвешивания.
Во время реконструкции в цехе построили третий пролет, где запустили новые краны, и установили новый стан через все пролеты. Из-за этого материалопоток в цехе изменился. Теперь штрипсы с агрегата резки вновь попадают на тележку 1, затем – на тележку 2, а потом – на склад, откуда перемещаются на стан. Поток отходов резки тоже изменился, на схеме он показан синим цветом. Кроме того, усложнилось планирование работы кранов 1 и 2: они не должны работать во время проезда под ними поездов и автомобилей.
Сложность новой схемы не позволяла планировать работу “на бумаге” или в Excel, поэтому руководство предприятия решило визуализировать новую конфигурацию материалопотока и протестировать ее влияние на производительность цеха. Для этого я создал имитационную модель цеха и производственных операций. В ней отражались:
- перемещение рулонов, штрипсов и коробок с отходами;
- передвижение тележек, автомобилей и поездов в цехе;
- входной контроль рулонов перед агрегатом резки;
- операции резки рулона на штрипсы.
Вот как выглядит модель цеха:
Как создавалась модель
В модели я постарался точно воспроизвести пространство цеха с транспортным оборудованием. Для этого использовались готовые элементы из профильных библиотек AnyLogic. Они помогли ускорить и упростить процесс моделирования, а их 3D-визуализация позволила наглядно показать работу цеха и проверить планировочные решения.
Среди оборудования цеха:
- транспортные тележки – перевозят грузы между цехами;
- поезда – вывозят готовые трубы из цеха;
- грузовики – ездят по ж/д путям и отвозят коробки с отходами резки.
Однако основное транспортное оборудование цеха – мостовые многобалочные краны. Они не только перемещают рулоны и коробки с отходами резки, но и участвуют в замене технологической оснастки на агрегате резки и грузозахватных устройств.
Работу таких кранов на предприятиях бывает трудно моделировать из-за сложной логики передвижения балок. В AnyLogic этот процесс упрощает специальный готовый элемент Мостовой кран. Он позволяет легко моделировать перегрузку объектов, в том числе с конвейерной сети или ж/д путей. Работая в автоматическом режиме, он сам распределяет задачи между балками, приоритезирует их работу и разрешает конфликты. У него также есть ручной режим, в котором пользователь может задавать сложную логику работы балок. Количество балок можно настроить за один клик, изменив это значение в свойствах объекта.
В AnyLogic работа крана моделируется с помощью трёх основных блоков – SeizeCrane (захватывает кран), MoveByCrane (перемещает объект на кране) и ReleaseCrane (освобождает кран). Подробнее о технических особенностях работы мостового крана вы можете прочитать в справке AnyLogic или узнать из демо-модели.
В модели каждая диаграмма процесса, состоящая из таких блоков, ответственна за один из трёх маршрутов крана. Агент, попадая в блок SeizeCrane, попадает в очередь к крану, в данном примере – craneBridge.
Иерархия модели
Каждый кран на предприятии управляет несколькими балками, которые, в свою очередь отвечают за захват, перемещение груза и его погрузку. Таким образом, одновременно по расписанию краны выполняют десятки уникальных операций, которые нужно было отразить в модели. Стандартный подход к созданию модели – общая диаграмма процесса для всех операций – усложнил бы поддержку модели: “плоская” диаграмма была бы слишком длинной и запутанной, а при необходимости изменить ее составные части увеличивалась вероятность ошибок.
Чтобы избежать этого, я использовал иерархический подход, который помог структурировать модель и сделать ее удобной в использовании. Модель разделена на 3 уровня, каждый из которых отвечает за работу кранов на разных уровнях абстракции. При этом весь производственный процесс я разбил на “подпроцессы”: так модель становится проще и ее легче перенастраивать.
На самом нижнем, нулевом, уровне находятся объекты производственного процесса, в том числе многобалочные краны с характеристиками и параметрами передвижения исполнительных устройств – крановых мостов. Благодаря возможностям AnyLogic свойства этих объектов можно легко настроить, а детализация позволяет смоделировать систему близко к реальности.
На первом уровне я воспроизвел процессы операций на производстве (Diagrams of technological operations, DTO) – перемещение и производство заготовок и труб, разгрузка и погрузка поездов и автомобилей. Они объединяют объекты нулевого уровня, а также повторяющиеся операции на производстве.
Такие повторяющиеся операции удобно моделировать в виде пользовательских блоков. Эти элементы помогают упростить внешний вид диаграммы процесса и использовать одинаковые цепочки блоков в модели несколько раз. Посмотрите, как я смоделировал перемещение коробок на тележку: эту операцию кран повторяет в течение производственного процесса, и эти пользовательские блоки помогут ускорить создание модели. В модели эти блоки называются элементами технологических операций (Elements of technological operations, ETO), находятся на первом уровне и являются частью диаграмм DTO.
Пример такой вложенности – на диаграмме DTO ниже. В блоке Source задаются координаты узла, где нужно взять коробку, а дальнейшие перемещения определены в объектах ETO.
На втором, уровне производственные операции объединяются в производственный процесс – верхнеуровневое представление работы цеха. В моей модели процесс описан как последовательный поток событий в виде диаграммы (модели) выполнения процессов (Process execution model, PEM). Она управляет процессами на нижних уровнях. В ней агент последовательно проходит по каждому блоку и запускает диаграммы DTO, а также вспомогательные блоки. Диаграмм PEM может быть несколько, и они могут взаимодействовать между собой.
Как вы видите, иерархичный подход к созданию модели помогает сделать модель гибкой. Каждый уровень – это будто отдельная, вложенная модель со своей диаграммой процесса. Такую вложенную модель легче понять новым пользователям, она не перегружена лишними деталями, а при изменении ее логики снижается вероятность некорректной работы связанных моделей. Кроме того, иерархический подход позволяет проще встраивать новые элементы в существующую модель.
Вот примеры моделей с иерархичной логикой от разработчиков AnyLogic. Их можно скачать по ссылкам или найти в программе, в разделе с примерами:
Результаты моделирования
Благодаря производственной библиотеке AnyLogic, гибкости и детализации ее элементов, мне удалось точнее смоделировать крановые операции в цехе. При этом я учел изменения в материалопотоках, работу грузового транспорта и новую топологию помещения.
Результаты моделирования помогли определить производительность цеха, спланировать процессы поставки и резки стальных рулонов, а также работу железнодорожных и автомобильных систем.
Одна из особенностей модели – её многоуровневая архитектура. С помощью этого подхода можно создавать и другие модели многоуровневых систем, например прототипы АСУТП (автоматизированная система управления техпроцессами). На нижних уровнях моделировать прототипы агрегатов с датчиками и исполнительными устройствами, а на верхних – информационные потоки процессов, например, передачу данных о выполнении технологических операций. Это еще одна очень интересная сфера возможного применения AnyLogic.