ПНСТ 908-2023. Предварительный национальный стандарт Российской Федерации. Умное производство. Каталоги поведения оборудования для виртуальной производственной системы. Часть 2. Формальное описание шаблона каталога
(утв. и введен в действие Приказом Росстандарта от 29.12.2023 № 119-пнст)
Примечание
Документ введен в действие с 01.02.2024 на период до 01.02.2027 (Приказ Росстандарта от 29.12.2023 № 119-пнст). Срок действия данного документа ограничен 01.02.2027 (Приказ Росстандарта от 29.12.2023 № 119-пнст).
Утвержден и введен в действие
Приказом Федерального
агентства по техническому
регулированию и метрологии
от 29 декабря 2023 г. № 119-пнст
ПРЕДВАРИТЕЛЬНЫЙ НАЦИОНАЛЬНЫЙ СТАНДАРТ РОССИЙСКОЙ ФЕДЕРАЦИИ
КАТАЛОГИ ПОВЕДЕНИЯ ОБОРУДОВАНИЯ ДЛЯ ВИРТУАЛЬНОЙ
ПРОИЗВОДСТВЕННОЙ СИСТЕМЫ
ФОРМАЛЬНОЕ ОПИСАНИЕ ШАБЛОНА КАТАЛОГА
Smart manufacturing. Equipment behavior catalogues
for virtual production system. Part 2.
Formal description of catalogue template
до 1 февраля 2027 года
1 РАЗРАБОТАН Федеральным государственным автономным образовательным учреждением высшего образования «Санкт-Петербургский политехнический университет Петра Великого» (ФГАОУ ВО «СПбПУ») и Некоммерческим партнерством «Русское общество содействия развитию биометрических технологий, систем и коммуникаций» (Некоммерческое партнерство «Русское биометрическое общество»)
2 ВНЕСЕН Техническим комитетом по стандартизации ТК 194 «Кибер-физические системы»
3 УТВЕРЖДЕН И ВВЕДЕН В ДЕЙСТВИЕ Приказом Федерального агентства по техническому регулированию и метрологии от 29 декабря 2023 г. № 119-пнст
Правила применения настоящего стандарта и проведения его мониторинга установлены в ГОСТ Р 1.16-2011 (разделы 5 и 6).
Федеральное агентство по техническому регулированию и метрологии собирает сведения о практическом применении настоящего стандарта. Данные сведения, а также замечания и предложения по содержанию стандарта можно направить не позднее чем за 4 мес до истечения срока его действия разработчику настоящего стандарта по адресу: Россия, 121205, Москва, Инновационный центр Сколково, улица Нобеля, тел. +7 (495) 777-01-04, e-mail: info@tc194.ru и/или в Федеральное агентство по техническому регулированию и метрологии: 123112 Москва, Пресненская набережная, д. 10, стр. 2.
В случае отмены настоящего стандарта соответствующая информация будет опубликована в ежемесячном информационном указателе «Национальные стандарты» и также будет размещена на официальном сайте Федерального агентства по техническому регулированию и метрологии в сети Интернет (www.rst.gov.ru)
Серия ПНСТ «Умное производство. Каталоги поведения оборудования для виртуальной производственной системы» определяет каталоги поведения оборудования (КПО) и требования к КПО для формирования исполнительного файла, представляющего динамическое поведение экземпляра номинального или физического оборудования. Такой исполнительный файл играет важную роль при настройке виртуальных производственных систем, используемых для моделирования и проверки проектируемых производственных процессов, а также для мониторинга текущих производственных процессов. Методология КПО обеспечит эволюцию умного производства.
КПО является эффективным и стандартизованным способом предоставить информацию о динамическом поведении единицы оборудования.
Настоящий стандарт определяет формальную структуру и правила создания шаблона каталога поведения оборудования (КПО) (см. [1]).
Формальная структура шаблона КПО представляет собой схему для описания поведения и связанных сущностей.
Правила создания шаблона КПО определяют необходимые процессы и критерии соответствия для создания шаблона КПО.
В настоящем стандарте использованы нормативные ссылки на следующие стандарты:
ГОСТ Р 53889-2010/Руководство ИСО/МЭК 77-1:2008 Руководство по разработке спецификаций на характеристики и классы продукции. Часть 1. Основные возможности
ГОСТ Р 55341-2012/ISO/TS 13399-100:2008 Представление и обмен данными по режущим инструментам. Часть 100. Определения, принципы и методы использования ссылочного словаря
ГОСТ Р ИСО 13584-1-2006 Системы автоматизации производства и их интеграция. Библиотека деталей. Часть 1. Обзор и основные принципы
ГОСТ Р ИСО 22400-1-2016 Системы промышленной автоматизации и интеграция. Ключевые технико-экономические показатели (KPIs) для управления производственными операциями. Часть 1. Общие положения, понятия и терминология
ГОСТ Р ИСО 22400-2-2019 Системы промышленной автоматизации и интеграция. Ключевые технико-экономические показатели (KPIs) для управления производственными операциями. Часть 2. Определения и описания
ГОСТ Р МЭК 61360-2-2013 Стандартные типы элементов данных с ассоциированной схемой классификации электрических компонентов. Часть 2. Словарная схема EXPRESS
ГОСТ Р МЭК 62714-1-2020 Формат обмена инженерными данными для использования в системах промышленной автоматизации. Стандартизированный формат обмена данными AutomationML. Часть 1. Архитектура и общие требования
ГОСТ Р МЭК 62714-2-2020 Формат обмена инженерными данными для использования в системах промышленной автоматизации. Стандартизированный формат обмена данными AutomationML. Часть 2. Библиотеки ролевых классов
ПНСТ 795-2022 (ИСО 16400-1:2020) Умное производство. Каталоги поведения оборудования для виртуальной производственной системы. Часть 1. Общие положения
Примечание - При пользовании настоящим стандартом целесообразно проверить действие ссылочных стандартов в информационной системе общего пользования — на официальном сайте Федерального агентства по техническому регулированию и метрологии в сети Интернет или по ежегодному информационному указателю «Национальные стандарты», который опубликован по состоянию на 1 января текущего года, и по выпускам ежемесячного информационного указателя «Национальные стандарты» за текущий год. Если заменен ссылочный стандарт, на который дана недатированная ссылка, то рекомендуется использовать действующую версию этого стандарта с учетом всех внесенных в данную версию изменений. Если заменен ссылочный стандарт, на который дана датированная ссылка, то рекомендуется использовать версию этого стандарта с указанным выше годом утверждения (принятия). Если после утверждения настоящего стандарта в ссылочный стандарт, на который дана датированная ссылка, внесено изменение, затрагивающее положение, на которое дана ссылка, то это положение рекомендуется применять без учета данного изменения. Если ссылочный стандарт отменен без замены, то положение, в котором дана ссылка на него, рекомендуется применять в части, не затрагивающей эту ссылку.
В настоящем стандарте применены термины и определения по ПНСТ 795-2022.
В настоящем стандарте применены следующие сокращения:
КПО — каталог поведения оборудования (Equipment Behavior Catalogue, EBC);
JSON — текстовый формат обмена данными, основанный на JavaScript (JavaScript Object Notation);
PCA — сборка печатных плат (Printed Circuit Assembly);
PCB — печатная плата (Printed Circuit Board);
UML — унифицированный язык моделирования (Unified Modeling Language);
XML — расширяемый язык разметки (extensible Markup Language).
Виртуальная производственная система представляет собой имитационную систему на основе модели производственного поведения, включающей модель производственного процесса и модель производственной системы (см. ПНСТ 795-2022, рисунок 6).
Модель производственной системы может быть построена как многоагентная система из агентов оборудования. Поведение производственной системы моделируется с помощью технологии программных агентов. Разработка программных агентов является задачей, сложной для пользователей имитационной производственной системы, например проектировщика или оператора. Пользователю должна быть предоставлена возможность построения виртуальной производственной системы путем выбора соответствующих элементов КПО из репозитория КПО. При предоставлении элемента КПО проводится автоматическая генерация модели экземпляра оборудования в качестве программного агента из элемента КПО. Модель производственной системы строится как комбинация моделей экземпляров оборудования.
Элемент КПО является экземпляром шаблона КПО. Шаблон КПО является схемой, представляющей модель для каждого оборудования, включая модель процесса в качестве описания поведения. Шаблон КПО должен включать следующие основные элементы:
В умном производстве виртуальная производственная система основана на концепции цифрового двойника. Элемент КПО представляет собой цифровое описание свойств и поведения физического оборудования. Виртуальное оборудование может быть создано путем обращения к соответствующему элементу КПО. Элемент КПО работает как мост между физическим оборудованием и виртуальным оборудованием в цифровом двойнике.
Должна быть обеспечена интероперабельность КПО, включая семантическую интероперабельность.
6 Формальная структура шаблона КПО
6.1 Общие положения
Шаблон КПО должен включать описания, определяющие набор свойств, поведение и внешние взаимодействия. На рисунке 1 показана концептуальная структура шаблона КПО.
КПО должен быть предоставлен в общей форме вне зависимости от использования. Шаблон КПО должен быть создан как базовая форма для каждого типа оборудования. Должны отсутствовать иерархические отношения между шаблонами КПО, такие как классы. Шаблоны для одного и того же типа оборудования должны иметь одинаковую структуру описания поведения в отношении состояний и взаимосвязей между состояниями. Степень детализации описаний может отличаться.
Структура элемента КПО должна соответствовать используемому шаблону. Из одного шаблона могут создаваться один или несколько элементов КПО, соответствующих каждому отдельному оборудованию одного и того же типа. Созданные элементы КПО группируются по типу оборудования и сохраняются в репозитории. Элемент КПО создается путем заполнения соответствующего шаблона КПО данными о конкретном оборудовании. Как правило, элемент КПО создается путем установки значений элементов в наборе свойств соответствующего шаблона КПО по данным конкретного оборудования. Например, элемент КПО для конкретной серии оборудования содержит данные производителя об оборудовании, такие как данные спецификации оборудования. В дополнение к данным спецификации оборудования элемент КПО для конкретного отдельного оборудования в конкретной производственной линии содержит данные физического оборудования, такие как эксплуатационные данные.
В приложении А представлены примеры взаимосвязи между шаблоном КПО, элементами КПО и множеством элементов КПО.
В заголовочной части шаблона должна быть представлена информация о шаблоне КПО, в том числе о соответствующем типе оборудования. Шаблон КПО для конкретной модели/серии оборудования должен включать информацию о производителе и модели/серии оборудования в свойствах «наименование производителя оборудования» и «наименование типа оборудования».
6.2 Набор свойств
Элементы набора свойств могут быть описаны в соответствии со стандартами, такими как ГОСТ Р 53889, ГОСТ Р 55341, ГОСТ Р ИСО 13584-1 и ГОСТ Р МЭК 61360-2. Как правило, значения некоторых или всех элементов в наборе свойств предоставляются при создании элемента КПО. Набор свойств может включать:
Пример - Наименование производителя оборудования, наименование типа оборудования, наименование оборудования (значение задается при создании элемента КПО для конкретного физического оборудования);
Пример - Максимальная скорость резки, диапазон перемещения.
6.3 Поведение
Поведение оборудования определяется комбинацией состояний и переходов состояний с условиями перехода. Состояние может быть представлено математическими моделями, расчетными формулами, программами, данными о состоянии и/или дополнительными необходимыми сущностями. Переход состояния происходит при наличии условий для перехода.
Описание состояния является основой описания поведения в КПО. Оборудование имеет различные состояния, такие как холостой ход, работа и техническое обслуживание. Значения таких параметров, как время работы и потребление электроэнергии в каждом состоянии, рассчитывают с использованием математических моделей, расчетных формул и/или программ, соответствующих состоянию. Формула или математическая модель могут включать параметры/переменные, значения которых берутся из данных о продукте, данных расписания и/или операционных данных, из результатов расчета моделирования поведения и/или из описания данных в наборе свойств.
Поведение должно быть определено динамическими свойствами в соответствии с состояниями и переходами состояний в шаблоне КПО. Динамические свойства включают:
Пример - Режим ожидания, рабочее состояние.
1 Состояние можно детализировать как совокупность подсостояний.
2 Для обеспечения семантической интероперабельности наименование состояния может соответствовать ГОСТ Р МЭК 61360-2;
Пример - Ввод материала, включение питания, начало процесса, окончание процесса, триггер перехода.
Для описания состояния могут быть использованы математические модели, расчетные формулы и/или программы.
Пример - Формула расчета энергопотребления, формула расчета времени работы.
Примечание - В состояние могут быть включены внешние взаимодействия.
Для описания перехода состояния могут быть использованы:
- формула условия перехода;
- исходное и конечные состояния;
- внешнее взаимодействие в качестве триггера.
Пример - Порядок процесса, результат процесса.
Представление состояния или перехода состояния может включать:
Примечание — Для обеспечения семантической интероперабельности наименования данных (параметров) или переменных могут соответствовать ГОСТ Р МЭК 61360-2, ГОСТ Р ИСО 22400-1 и ГОСТ Р ИСО 22400-2.
6.4 Внешнее взаимодействие
Внешнее взаимодействие — это данные сообщения от/к другому внешнему оборудованию. Внешнее взаимодействие может быть определено с использованием информационных моделей, совместно используемых с внешним оборудованием. Информационные модели могут соответствовать ГОСТ Р МЭК 62714-1 и ГОСТ Р МЭК 62714-2. Сообщение внешнего взаимодействия может включать в себя:
6.5 Формальное описание шаблона КПО
Шаблон КПО должен быть описан с использованием языка описания данных.
Пример - XML, MathML (для формул), JSON.
Пример формальной структуры описания показан на рисунке 2. Шаблон КПО должен содержать следующие элементы:
1 Значение «тип оборудования» должно соответствовать справочному словарю.
2 Справочные словари — это стандарты и общедоступные словари, используемые при описании шаблона КПО.
3 «Наименование элемента» и «Идентификатор элемента» добавляются при создании элемента КПО с использованием шаблона, а также указывают их значения;
Примечание - Могут быть определены дополнительные атрибуты.
7 Правила создания шаблона КПО
7.1 Процедура создания
Процедура создания шаблона КПО включает нижеперечисленные этапы.
Этап 1. Анализ функций оборудования
Анализ включает перечисление возможных состояний оборудования и взаимосвязей между состояниями, в том числе условия перехода состояний. Как правило, оборудование становится активным при получении рабочей команды с данными посредством внешнего взаимодействия. Следует описать перечисленные состояния и переходы состояний в оборудовании. Перечисленные состояния и взаимосвязи, в том числе условия перехода состояний, должны быть описаны с использованием формальных методов.
Пример - Диаграмма состояний UML, Petri-Net и IDEF3.
Этап 2. Перечисление необходимых данных, формул и математических моделей для динамического расчета значения параметров в каждом состоянии
Данные включают переменные, которым присваивают конкретные значения при создании виртуальной производственной системы или при выполнении моделирования в виртуальной производственной системе. Некоторые переменные предоставляются посредством внешнего взаимодействия. Такие данные описываются как переменные в шаблоне КПО и элементах КПО. Значения переменным могут быть присвоены при создании элемента КПО.
Этап 3. Объединение описания свойств, описания внешнего взаимодействия и описания поведения и создание шаблона КПО в виде объединенного описания с использованием языка описания данных
Примеры процедуры создания шаблонов КПО показаны в приложении Б и приложении В.
7.2 Критерии создания
При создании шаблона КПО должны быть применены следующие критерии:
а) шаблон КПО включает описания набора свойств, поведения и внешних взаимодействий;
б) шаблон КПО описан в машиночитаемой форме;
в) шаблон КПО содержит необходимые информационные элементы для создания модели экземпляра оборудования.
Примечание - Элемент КПО создается из шаблона КПО; модель экземпляра оборудования — из элемента КПО;
г) термины в описаниях шаблонов КПО заимствованы из общедоступного справочного стандартизованного словаря;
д) обеспечена интероперабельность шаблона КПО, в том числе семантическая.
Оценка качества шаблона КПО выходит за рамки настоящего стандарта. Целостность и степень детализации шаблона КПО могут быть различными в зависимости от целей использования независимо от того, полностью ли шаблон КПО описывает оборудование. Оценку качества шаблона КПО проводят пользователи собственными силами.
(справочное)
Один шаблон КПО предназначен для одного типа оборудования одного производителя. Как правило, один тип оборудования включает несколько серий, одна серия — несколько типов моделей. Элементом КПО могут быть серия, тип модели или отдельное оборудование типа модели. Указанные элементы создают по одному шаблону.
Элемент КПО имеет широкую степень детализации. Шаблон КПО подходит для такой детализации. Элемент КПО оборудования может как иметь, так и не иметь описания идентификатора продукта. Если оборудование имеет дополнительные опции, элемент КПО имеет описание идентификатора продукта и опций. Элемент КПО может содержать данные проверки отгрузки и/или историю использования оборудования.
На рисунках А.1 и А.2 показаны взаимосвязи между шаблонами КПО и различными элементами КПО для одной серии оборудования (токарный станок серии X). Серия оборудования имеет иерархическую структуру. Токарный станок X (серия X компании Y) — высший класс в иерархии. Токарный станок X-s (простой токарный станок в серии X) и токарный станок X-c (сложный токарный станок в серии X) являются подклассами станка X. Токарный станок X-s-#A (тип #A в серии X) — особый тип оборудования в подклассе X-s. Токарный станок X-s-#A-nnnn (станок типа #A с серийным номером nnnn) представляет собой выпускаемое конкретное оборудование типа #A.
шаблона КПО для класса «Токарный станок X»
Рисунок А.2 — Элементы КПО, созданные с использованием
шаблонов КПО для классов «Токарный станок X-s» и «Токарный»
станок X-c»
На рисунке А.1 шаблон КПО подготовлен в соответствии с классом Токарный станок X. Классы «Токарный станок X-s», «Токарный станок X-c», «Токарный станок X-s-#A», «Токарный станок X-s-#A-nnnn» и другие каталогизируются как элементы КПО с использованием шаблона КПО. Шаблон КПО применим для описания моделей всех нижних классов в иерархии.
Когда требуется более высокая степень детализации описаний поведения, создаются шаблоны КПО в соответствии с классами более низкого уровня, чем класс «Токарный станок X». На рисунке А.2 показаны шаблоны КПО, созданные в соответствии с каждым из классов «Токарный станок X-s» и «Токарный станок X-c». В данном случае «Токарный станок X-s» и «Токарный станок X-c» рассматриваются как разные типы оборудования. «Токарный станок X-c» имеет более сложное поведение, чем «Токарный станок X-s». «Токарный станок X-s», «Токарный станок X-s-#A», «Токарный станок X-s-#B», «Токарный станок X-s-#A-nnnn» и т.д. каталогизируются как элементы КПО с использованием шаблона КПО для «Токарного станка X-s». «Токарный станок X-c», «Токарный станок X-c-#A», «Токарный станок X-c-#C» и т.д. каталогизируются как элементы КПО с использованием шаблона КПО для «Токарного станка X-c».
Элемент КПО «Токарный станок X-s-#A-nnnn» соответствует конкретному отдельному оборудованию. Модель экземпляра оборудования, созданная из элемента КПО «Токарный станок X-s-#A-nnnn», является моделью экземпляра физического оборудования для «Токарный станок X-s-#A-nnnn». Модели экземпляров оборудования, созданные из других элементов КПО, являются моделями экземпляров номинального оборудования. Если при создании модели экземпляра оборудования из элементов КПО, являющихся моделями экземпляров номинального оборудования, добавляются данные о конкретном отдельном оборудовании, то может быть создана модель экземпляра физического оборудования.
(справочное)
Б.1 Оборудование линии сборки печатных плат
Структура линии сборки печатных плат (PCA) показана на рисунке Б.1. Линия PCA состоит из принтера для паяльной пасты, нескольких устройств для монтажа электронных компонентов и печи для пайки оплавлением. Указанное оборудование последовательно подключается от принтера до печи для пайки оплавлением. Количество установщиков электронных компонентов меняется в зависимости от мощности линии.
Печатная плата (PCB) является вводом в линию, PCA является выводом из линии. Когда пустая печатная плата загружается в принтер для паяльной пасты, начинается производственный процесс (см. рисунок В.1).
В соответствии с процедурой создания шаблонов КПО следует создать шаблоны для принтера для паяльной пасты, установщика электронных компонентов и печи для пайки оплавлением.
В настоящем приложении шаблоны КПО упрощены за счет исключения описаний подвидов действий и специализации на потреблении электроэнергии. Аналогично может быть проведена другая специализация поведения оборудования.
Б.2 Создание шаблона КПО для принтера для паяльной пасты
Принтер для паяльной пасты — это оборудование, используемое для нанесения паяльной пасты на печатные платы методом трафаретной печати. Принтер для паяльной пасты находится в начале производственной линии печатных плат. Поведение принтера для паяльной пасты моделируется как поток действий, показанный на рисунке Б.2. После включения принтер находится в состоянии ожидания. В состоянии ожидания принтер потребляет электроэнергию в режиме холостого хода. Принтер переходит в состояние «остановка» во время поломки или при отключении питания. При введении платы принтер запускает последовательность операций. При подготовке перед печатью при необходимости меняют металлическую маску или доливают паяльную пасту. Первой операцией является установка PCB. Второй операцией — установка металлической маски; третьей — перемещение площадки; четвертой — печать; пятой — снятие металлической маски; шестой — вывод печатной платы. Далее принтер возвращается в состояние ожидания.
Процедура создания шаблона КПО применена к принтеру для паяльной пасты следующим образом:
б) список переходов состояний:
-
из ожидания в замену металлической маски (при достижении времени ввода печатной платы и при отличии идентификатора платы печатной платы от предыдущей),
-
из замены металлической маски в печать паяльной пасты (по истечении времени замены металлической маски),
-
из ожидания в печать паяльной пасты (при достижении времени ввода печатной платы),
-
из печати паяльной пасты в очищение (при достижении требуемой точки очищения),
-
из очищения в печать паяльной пасты (после завершения очищения),
-
из печати паяльной пасты в печать паяльной пасты (при отсутствии необходимости очищения и незавершенности производства),
-
из печати паяльной пасты в ожидание (при достижении необходимого количества производимого продукта);
в) список статических параметров (помимо общих элементов, таких как идентификатор оборудования, тип оборудования, название модели, масса оборудования и др.):
г) перечень переменных (с использованием формул вычисления):
- фактическое время установки металлической маски, с,
- фактическое время движения ракеля, с,
- фактическое время снятия металлической маски, с;
д) список переменных, являющихся входными значениями при создании виртуальной системы или при виртуальной работе:
- время установки металлической маски, с,
- время движения ракеля, с,
- время снятия металлической маски, с.
Шаблон КПО для принтера для паяльной пасты с использованием XML определен следующим образом.
<property_set>
«equipment_id>1</equipment_id>
<equipment_type>XXX</equipment_type>
<external_interaction_list />
<!-- state transition list -->
<state_transition_list>
<state_transition id="t1" name="power_on">
<!-- CONDITION: power on -->
<!-- CONDITION: start-up time is elapsed -->
<transition_condition operator="==">
<param name="operation:power" />
<param>on</param>
</transition_condition>
<transition_condition operator="==">
<param name="property_set:startup_time" />
<param name="elapsed_time" />
</transition_condition>
<from_state id="s1"/>
<to_state id="s2"/>
</state_transition>
<state_transition id="t2" name="power_off">
<!-- CONDITION: power off -->
<!-- CONDITION: shutdown time is elapsed -->
<transition_condition operator="==">
<param name="operation:power" />
<param>off</param>
</transition_condition>
<transition_condition operator="==">
<param name="property_set:shutdown_time" />
<param name="elapsed_time" />
</transition_condition>
<from_state id="s2"/>
<to_state id="s1"/>
</state_transition>
<state_transition id="t3" name="pca_id_input">
<!-- CONDITION: new PCB input time reached -->
<transition_condition operator="==">
<param name="operation:product_time" />
<param name="system_time" />
</transition_condition>
<!-- CONDITION: PCA board id is different from the previous production -->
<transition_condition operator="!=">
<param name="operation:pca_id" />
<param name="operation:pca_id_old" />
</transition_condition>
<from_state id="s2"/>
<to_state id="s3"/>
</state_transition>
<state_transition id="t4" name="metal_mask_ready">
<!-- CONDITION: metal mask change time is elapsed -->
<transition_condition operator="==">
<param name="operation:metal_mask_change_time" />
<param name="elapsed_time" />
</transition_condition>
<from_state id="s3"/>
<to_state id="s5"/>
</state_transition>
<state_transition id="t5" name="new_board_in">
<!-- CONDITION: new PCB input time reached -->
<transition_condition operator="==">
<param name="operation:product_time" />
<param name="system_time" />
</transition_condition>
<from_state id="s2"/>
<to_state id="s5"/>
</state_transition>
<state_transition id="t6" name="dirty">
<!-- CONDITION: count of printing is reached to the cleaning required point -->
<transition_condition operator="==">
<param name="operation:total_processing_quantity" />
<param name="operation:cleaning_count" />
</transition_condition>
<from_state id="s5"/>
<to_state id="s4"/>
</state_transition>
<state_transition id="t7" name="clear">
<!-- CONDITION: cleaning time is elapsed -->
<transition_condition operator="==">
<param name="property_set:cleaning_time" />
<param name="elapsed_time" />
</transition_condition>
<from_state id="s4"/>
<to_state id="s5"/>
</state_transition>
<state_transition id="t8" name="completed_board_out">
<!-- CONDITION: number of producing product is achieved -->
<transition_condition operator="==">
<param name="operation:total_processing_quantity" />
<param name="operation:plan_quantity" />
</transition_condition>
<transition_condition operator="==">
<param name="operation:solder_paste_printing_time" />
<param name="elapsed_time" />
</transition_condition>
<from_state id="s5"/>
<to_state id="s2"/>
</state_transition>
<state_transition id="t9" name="metal_mask_set">
<!-- CONDITION: when production is uncompleted -->
<transition_condition operator=">">
<param name="operation:processing_quantity" />
<param name="operation:plan_quantity" />
</transition_condition>
<from_state id="s5"/>
<to_state id="s5-1"/>
</state_transition>
<state_transition id="t10" name="mask_set_finish">
<!-- CONDITION: metal mask set time is elapsed -->
<transition_condition operator="==">
<param name="operation:metal_mask_set_time" />
<param name="elapsed_time" />
</transition_condition>
<from_state id="s5-1"/>
<to_state id="s5-2"/>
</state_transition>
<state_transition id="t11" name="squeegee_moving_finish">
<!-- CONDITION: squeegee moving time is elapsed -->
<transition_condition operator="==">
<param name="operation:squeegee_moving_time" />
<param name="elapsed_time" />
</transition_condition>
<from_state id="s5-2"/>
<to_state id="s5-3"/>
</state_transition>
<state_transition id="t12" name="metal_mask_release_finish">
<!-- CONDITION: metal mask release time is elapsed -->
<transition_condition operator="==">
<param name="operation:metal_mask_release_time" />
<param name="elapsed_time" />
</transition_condition>
<from_state id="s5-3"/>
<to_state id="s5"/>
</state_transition>
</state_transition_list>
Б.3 Создание шаблона КПО установщика электронных компонентов
Установщик электронных компонентов — это оборудование, используемое для подбора и размещения электронных компонентов, таких как конденсаторы, резисторы, интегральные схемы, а также для поверхностного монтажа на печатных платах. Установщик электронных компонентов находится на втором месте в линии сборки печатных плат. Как правило, на производственной линии находится несколько установщиков электронных компонентов. Поведение установщика электронных компонентов моделируется как поток действий в соответствии с рисунком Б.3.
электронных компонентов
После включения оборудования установщик электронных компонентов находится в состоянии ожидания. Установщик электронных компонентов переходит в состояние «остановка» во время поломки или при отключении питания. При введении платы установщик электронных компонентов запускает последовательность операций. При подготовке перед монтажом устанавливают и дополняют необходимые электронные компоненты. Первой операцией является размещение печатной платы; второй — распознавание и коррекция положения печатной платы; третьей — выбор насадки; четвертой — выбор электронных компонентов; пятой — распознавание и коррекция положения электронного компонента; шестой — монтаж электронного компонента; седьмой — вывод печатной платы. Далее установщик электронных компонентов возвращается в состояние ожидания.
Процедура создания шаблона КПО применена к установщику электронных компонентов следующим образом:
-
поверхностный монтаж компонентов/чипов на плату (последовательность трех подсостояний, повторяющаяся до завершения монтажа всех компонентов платы):
б) список переходов из одного состояния в другое:
-
из ожидания в установку компонентов/чипов (при достижении времени ввода печатной платы и при отличии идентификатора платы печатной платы от предыдущей),
-
из установки компонентов/чипов в монтаж компонентов/чипов на плату (по истечении времени установки компонентов/чипов),
-
из ожидания в монтаж компонентов/чипов на плату (при достижении времени ввода платы),
-
из монтажа компонентов/чипов в монтаж компонентов/чипов (при незавершенном производстве),
-
из монтажа компонентов/чипов в ожидание (при достижении количества выпускаемого изделия);
в) список статических параметров (помимо общих элементов, таких как идентификатор оборудования, тип оборудования, наименование модели, масса оборудования и др.):
г) перечень переменных (с использованием формул вычисления):
- фактическое время выбора насадки, с,
- фактическое время выбора компонентов, с,
- фактическое время монтажа, с;
д) список переменных, являющихся входными значениями при создании виртуальной системы или при виртуальной работе:
Шаблон КПО для установщика электронных компонентов с использованием XML определен нижеприведенным образом.
<!-- external_interaction no definition -->
<external_interaction_list />
<behaviour>
<!-- state list -->
<state_list>
<state id="s1" name="stop" state="on" />
<state id="s2" name="idling">
<state_data>
<elapsed_time>0</elapsed_time>
<total_energyconsumption>0</total_energyconsumption>
</state_data>
<calculation_formula>
<m:math>
<m:mrow>
<m:mi>elapsed_time</m:mi>
<m:mo>=</m:mo>
<m:mrow>
<m:mi>elapsed_time</m:mi>
<m:mo>+</m:mo>
<m:mn>1</m:mn>
</m:mrow>
</m:mrow>
</m:math>
<m:math>
<m:mrow>
<m:mi>total_energyconsumption</m:mi>
<m:mo>=</m:mo>
<m:mrow>
<m:mi>elapsed_time</m:mi>
<m:mo>×</m:mo>
<m:mi>property_set:electricpower_idling</m:mi>
</m:mrow>
</m:mrow>
</m:math>
</calculation_formula>
</state>
<state id="s3" name="parts_chips_setting">
<state_data>
<elapsed_time>0</elapsed_time>
<total_energyconsumption>0</total_energyconsumption>
</state_data>
<calculation_formula>
<m:math>
<m:mrow>
<m:mi>elapsed_time</m:mi>
<m:mo>=</m:mo>
<m:mrow>
<m:mi>elapsed_time</m:mi>
<m:mo>+</m:mo>
<m:mn>1</m:mn>
</m:mrow>
</m:mrow>
</m:math>
<m:math>
<m:mrow>
<m:mi>total_energyconsumption</m:mi>
<m:mo>=</m:mo>
<m:mrow>
<m:mi>elapsed_time</m:mi>
<m:mo>×</m:mo>
<m:mi>property_set:electricpower_parts_chips_setting</m:mi>
</m:mrow>
</m:mrow>
</m:math>
<m:math>
<m:mrow>
<m:mi>operation:pca_id_old</m:mi>
<m:mo>=</m:mo>
<m:mrow>
<m:mi>operation:pca_id</m:mi>
</m:mrow>
</m:mrow>
</m:math>
</calculation_formula>
</state>
<state id="s4" name="parts_chips_mounting_on_a_board">
<state_data>
<elapsed_time>0</elapsed_time>
<total_energyconsumption>0</total_energyconsumption>
<chips_quantity>0</chips_quantity>
</state_data>
<calculation_formula>
<m:math>
<m:mrow>
<m:mi>elapsed_time</m:mi>
<m:mo>=</m:mo>
<m:mrow>
<m:mi>elapsed_time</m:mi>
<m:mo>+</m:mo>
<m:mn>1</m:mn>
</m:mrow>
</m:mrow>
</m:math>
<m:math>
<m:mrow>
<m:mi>total_energyconsumption</m:mi>
<m:mo>=</m:mo>
<m:mrow>
<m:mi>elapsed_time</m:mi>
<m:mo>×</m:mo>
<m:mi>property_set:electricpower_parts_chips_mounting_on_a_board</m:mi>
</m:mrow>
</m:mrow>
</m:math>
</calculation_formula>
<calculation_formula repeat="no">
<m:math>
<m:mrow>
<m:mi>operation:total_processing_quantity</m:mi>
<m:mo>=</m:mo>
<m:mrow>
<m:mi>operation:total_processing_quantity</m:mi>
<m:mo>+</m:mo>
<m:mn>1</m:mn>
</m:mrow>
</m:mrow>
</m:math>
</calculation_formula>
<!-- substates -->
<state_list>
<!-- substate:nozzle_selection -->
<state id="s4-1" name="nozzle_selection">
<state data>
<elapsed_time>0</elapsed_time>
</state_data>
<calculation_formula>
<m:math>
<m:mrow>
<m:mi>elapsed_time</m:mi>
<m:mo>=</m:mo>
<m:mrow>
<m:mi>elapsed_time</m:mi>
<m:mo>+</m:mo>
<m:mn>1</m:mn>
</m:mrow>
</m:mrow>
</m:math>
</calculation_formula>
</state>
<!-- substate:part_picking -->
<state id="s4-2" name="part_picking">
<state_data>
<elapsed_time>0</elapsed_time>
</state_data>
<calculation_formula>
<m:math>
<m:mrow>
<m:mi>elapsed_time</m:mi>
<m:mo>=</m:mo>
<m:mrow>
<m:mi>elapsed_time</m:mi>
<m:mo>+</m:mo>
<m:mn>1</m:mn>
</m:mrow>
</m:mrow>
</m:math>
</calculation_formula>
</state>
<!-- substate:mounting -->
<state id="s4-3" narrie="mounting">
<state_data>
<elapsed_time>0</elapsed_time>
</state data>
<calculation_formula>
<m:math>
<m:mrow>
<m:mi>elapsed_time</m:mi>
<m:mo>=</m:mo>
<m:mrow>
<m:mi>elapsed_time</m:mi>
<m:mo>+</m:mo>
<m:mn>1</m:mn>
</m:mrow>
</m:mrow>
</m:math>
<m:math>
<m:mrow>
<m:mi>chips_quantity</m:mi>
<m:mo>=</m:mo>
<m:mrow>
<m:mi>chips_quantity</m:mi>
<m:mo>+</m:mo>
<m:mn>1</m:mn>
</m:mrow>
</m:mrow>
</m:math>
</calculation_formula>
</state>
</state_list>
Б.4 Создание шаблона КПО печи для пайки оплавлением
Печь для пайки оплавлением представляет собой оборудование, используемое для пайки оплавлением электронных компонентов при поверхностном монтаже на печатных платах. Поведение печи для пайки оплавлением моделируется как поток действий, показанный на рисунке Б.4. После включения питания и пускового нагрева запускаются регуляторы температуры и конвейер. При поступлении на вход печатной платы с монтируемыми электронными компонентами печатная плата перемещается в печь оплавления по конвейеру для пайки оплавлением. Температурный контроль и пайка оплавлением выполняются параллельно. Печь оплавления состоит из зоны предварительного нагрева платы, зоны пайки платы и зоны охлаждения платы. Контроль температуры проводят в каждой зоне. Процессы нагрева и охлаждения каждой зоны контролируют в соответствии с температурными профилями. Печь оплавления переходит в состояние охлаждения при выключении питания.
Процедура создания шаблона КПО применена к печи для пайки оплавлением следующим образом:
б) список переходов из одного состояния в другое:
-
из пускового нагрева в контроль температуры и пайку оплавлением (после завершения пускового нагрева),
-
из контроля температуры и пайки оплавлением в охлаждение (при отключении питания),
в) список статических параметров (помимо общих элементов, таких как идентификатор оборудования, тип оборудования, наименование модели, масса оборудования и др.):
г) список переменных (с использованием формул вычисления):
д) список переменных, являющихся входными значениями при создании виртуальной системы или при виртуальной работе:
Шаблон КПО для печи для пайки оплавлением с использованием XML определен нижеприведенным образом.
(справочное)
В.1 Оборудование на линии литья под давлением
Структура линии литья под давлением показана на рисунке В.1. Линия литья под давлением состоит из машины для литья под давлением, включая пресс-форму, робота для извлечения пресс-форм и контроллера температуры пресс-формы. Пресс-форму устанавливают на машину для литья под давлением. Контроллер температуры пресс-формы и робот для извлечения пресс-форм связаны с машиной для литья под давлением. Машина для литья под давлением управляет запуском и остановкой действий контроллера температуры пресс-формы и робота для извлечения пресс-форм. В машину для литья под давлением помещают гранулы, которые являются сырьем для деталей, отлитых под давлением.
Гранулы помещают в машину для литья под давлением. Пресс-форму устанавливают на машину для литья под давлением. Далее начинается цикл процесса литья под давлением. Машина для литья под давлением, робот для извлечения пресс-форм и контроллер температуры пресс-формы имеют сложное взаимодействие в технологическом цикле литья под давлением.
В соответствии с процедурой создания шаблона КПО подготавливают шаблоны для машины для литья под давлением, робота для извлечения пресс-форм и контроллера температуры пресс-формы.
В настоящем примере шаблоны КПО упрощены за счет исключения описаний подвидов действий и специализации на потреблении электроэнергии. Аналогично могут быть добавлены другие специализации поведения оборудования.
В.2 Создание шаблона КПО для машины для литья под давлением
Поведение машины для литья под давлением моделируется как поток действий, показанный на рисунке В.2. При получении команды на литье под давлением в состоянии ожидания запускается состояние «литье под давлением». Перед этим подготавливается и меняется соответствующая пресс-форма. Цикл процесса литья под давлением повторяется до получения необходимого количества изделий. Технологический цикл включает в себя четыре процесса: литье под давлением, открытие пресс-формы, извлечение толкателями и возвращение толкателей. В начале процесса литья под давлением требуется запуск контроля температуры пресс-формы. В конце процесса литья под давлением необходимо отключение контроля температуры для охлаждения пресс-формы. После охлаждения пресс-форма открывается и отправляется запрос роботу для извлечения пресс-форм. Далее отформованная деталь извлекается толкателями. После получения подтверждения о завершении извлечения от робота толкатели возвращаются.
Процедура построения шаблона КПО применена к машине для литья под давлением следующим образом:
б) список переходов состояний;
-
из ожидания в смену пресс-формы (при отличии идентификатора пресс-формы от предыдущего),
-
из смены пресс-формы в ожидание (при завершении смены пресс-формы),
-
из ожидания в очистку пресс-формы (при достижении времени очистки),
-
из очистки пресс-формы в ожидание (при завершении очистки пресс-формы),
-
из ожидания в чистку цилиндров (при достижении времени чистки),
-
из чистки цилиндров в ожидание (при завершении чистки цилиндров),
-
из ожидания в литье под давлением (при достижении времени ввода продукта),
-
из литья под давлением в открытие пресс-формы (при завершении литья под давлением),
-
из открытия пресс-формы до извлечения (по истечении времени открытия),
-
из извлечения в возвращение толкателей (при получении уведомления о завершении извлечения),
-
из возвращения толкателей до литья под давлением (производство не завершено),
-
из возвращения толкателей в ожидание (при достижении количества выпускаемой продукции);
в) список статических параметров (помимо общих элементов, таких как идентификатор оборудования, тип оборудования, название модели, масса оборудования и др.):
г) перечень переменных (с использованием формул вычисления):
д) список переменных, являющихся входными значениями при создании виртуальной системы или при виртуальной работе:
е) список взаимосвязей с другим оборудованием:
-
запрос на извлечение (от машины для литья под давлением к роботу для извлечения пресс-форм),
-
уведомление о завершении извлечения (от робота для извлечения пресс-форм до машины для литья под давлением).
Шаблон КПО для машины для литья под давлением с использованием XML определен нижеприведенным образом.
<header>
<template_name>INJECTION MOLDING MACHINE</template_name>
<template_id>xxxx</template_id>
</header>
<property_set>
<!-- default value setting -->
<equipment_id>1</equipment_id>
<equipment_type>XXX</equipment_type>
<organization>XYZ Corporation</organization>
<model_name>YYY</model_name>
<external_size unit="cm">H=100,W=250,D=100</external_size>
<equipment_weight unit="kg">200</equipment_weight>
<startup_time unit="sec">20</startup_time>
<shutdown_time unit="sec">20</shutdown_time>
<electricpower_idling unit="kW">30</electricpower_idling>
<electricpower_mold_change unit="kW">30</electricpower_mold_change>
<electricpower_mold_cleanig unit="kW">30</electricpower_mold_cleanig>
<electricpower_cylinder_cleaning unit="kW">30</electricpower_cylinder_cleaning>
<electricpower_injection_molding unit="kW">30</electricpower_injection_molding>
<electricpower_opening_of_a_mold unit="kW">30</electricpower_opening_of_a_mold>
<electricpower_ejection_by_ejector_pins unit="kW">30</electricpower_ejection_by_ejector_pins>
<electricpower_restoration_of_ejector_pins unit="kW">30</electricpower_restoration_of_ejector_pins>
</property_set>
<external_interaction_list>
<external_interaction id="e1" name="robot_extraction">
<send_to equipment_id="" />
<receive_from equipment_id="" />
</external_interaction>
<external_interaction id="e2" name="robot_completed_notice">
<send_to equipment_id="" />
<receive_from equipment_id="" />
</external_interaction>
</external_interaction_list>
<behaviour>
<!-- state_list -->
<state_list>
<state id="s1" name="stop" state="on" />
<state id="s2" name="idling">
<state_data>
<elapsed_time>0</elapsed_time>
<total_energyconsumption>0</total_energyconsumption>
</state_data>
<calculation_formula>
<m:math>
<m:mrow>
<m:mi>elapsed_time</m:mi>
<m:mo>=</m:mo>
<m:mrow>
<m:mi>elapsed_time</m:mi>
<m:mo>+</m:mo>
<m:mn>1</m:mn>
</m:mrow>
</m:mrow>
</m:math>
<m:math>
<m:mrow>
<m:mi>total_energyconsumption</m:mi>
<m:mo>=</m:mo>
<m:mrow>
<m:mi>elapsed_time</m:mi>
<m:mo>×</m:mo>
<m:mi>property_set:electricpower_idling</m:mi>
</m:mrow>
</m:mrow>
</m:math>
</calculation_formula>
</state>
<state id="s3" name="mold_change">
<state_data>
<elapsed_time>0</elapsed_time>
<total_energyconsumption>0</total_energyconsumption>
</state_data>
<calculation_formula>
<m:math>
<m:mrow>
<m:mi>elapsed_time</m:mi>
<m:mo>=</m:mo>
<m:mrow>
<m:mi>elapsed_time</m:mi>
<m:mo>+</m:mo>
<m:mn>1</m:mn>
</m:mrow>
</m:mrow>
</m:math>
<m:math>
<m:mrow>
<m:mi>total_energyconsumption</m:mi>
<m:mo>=</m:mo>
<m:mrow>
<m:mi>elapsed_time</m:mi>
<m:mo>×</m:mo>
<m:mi>property_set:electricpower_mold_change</m:mi>
</m:mrow>
</m:mrow>
</m:math>
<m:math>
<m:mrow>
<m:mi>operation:pca_id_old</m:mi>
<m:mo>=</m:mo>
<m:mrow>
<m:mi>operation:pca_id</m:mi>
</m:mrow>
</m:mrow>
</m:math>
</calculation_formula>
</state>
<state id="s4" name="mold_cleanig">
<state_data>
<elapsed_time>0</elapsed_time>
<total_energyconsumption>0</total_energyconsumption>
</state_data>
<calculation_formula>
<m:math>
<m:mrow>
<m:mi>elapsed_time</m:mi>
<m:mo>=</m:mo>
<m:mrow>
<m:mi>elapsed_time</m:mi>
<m:mo>+</m:mo>
<m:mn>1</m:mn>
</m:mrow>
</m:mrow>
</m:math>
<m:math>
<m:mrow>
<m:mi>total_energyconsumption</m:mi>
<m:mo>=</m:mo>
<m:mrow>
<m:mi>elapsed_time</m:mi>
<m:mo>×</m:mo>
<m:mi>property_set:electricpower_mold_cleanig</m:mi>
</m:mrow>
</m:mrow>
</m:math>
</calculation_formula>
</state>
<state id="s5" name="cylinder_cleaning">
<state_data>
<elapsed_time>0</elapsed_time>
<total_energyconsumption>0</total_energyconsumption>
</state_data>
<calculation_formula>
<m:math>
<m:mrow>
<m:mi>elapsed_time</m:mi>
<m:mo>=</m:mo>
<m:mrow>
<m:mi>elapsed_time</m:mi>
<m:mo>+</m:mo>
<m:mn>1</m:mn>
</m:mrow>
</m:mrow>
</m:math>
<m:math>
<m:mrow>
<m:mi>total_energyconsumption</m:mi>
<m:mo>=</m:mo>
<m:mrow>
<m:mi>elapsed_time</m:mi>
<m:mo>×</m:mo>
<m:mi>property_set:electricpower_cylinder_cleaning </m:mi>
</m:mrow>
</m:mrow>
</m:math>
</calculation_formula>
</state>
<state id="s6" name="injection_molding">
<state_data>
<elapsed_time>0</elapsed_time>
<total_energyconsumption>0</total_energyconsumption>
</state_data>
<calculation_formula>
<m:math>
<m:mrow>
<m:mi>elapsed_time</m:mi>
<m:mo>=</m:mo>
<m:mrow>
<m:mi>elapsed_time</m:mi>
<m:mo>+</m:mo>
<m:mn>1</m:mn>
</m:mrow>
</m:mrow>
</m:math>
<m:math>
<m:mrow>
<m:mi>total_energyconsumption</m:mi>
<m:mo>=</m:mo>
<m:mrow>
<m:mi>elapsed_time</m:mi>
<m:mo>×</m:mo>
<m:mi>property_set:electricpower_injection_molding </m:mi>
</m:mrow>
</m:mrow>
</m:math>
</calculation_formula>
</state>
<state id="s7" name="opening_of_a_mold">
<state_data>
<elapsed_time>0</elapsed_time>
<total_energyconsumption>0</total_energyconsumption>
</state_data>
<calculation_formula>
<m:math>
<m:mrow>
<m:mi>elapsed_time</m:mi>
<m:mo>=</m:mo>
<m:mrow>
<m:mi>elapsed_time</m:mi>
<m:mo>+</m:mo>
<m:mn>1</m:mn>
</m:mrow>
</m:mrow>
</m:math>
<m:math>
<m:mrow>
<m:mi>total_energyconsumption</m:mi>
<m:mo>=</m:mo>
<m:mrow>
<m:mi>elapsed_time</m:mi>
<m:mo>×</m:mo>
<m:mi>property_set:electricpower_opening_of_a_mold </m:mi>
</m:mrow>
</m:mrow>
</m:math>
</calculation_formula>
<external_interaction id="e1" seq="post">
<param>true</param>
</external_interaction>
</state>
<state id="s8" name="ejection_by_ejector_pins">
<state_data>
<elapsed_time>0</elapsed_time>
<total_energyconsumption>0</total_energyconsumption>
</state_data>
<calculation_formula>
<m:math>
<m:mrow>
<m:mi>elapsed_time</m:mi>
<m:mo>=</m:mo>
<m:mrow>
<m:mi>elapsed_time</m:mi>
<m:mo>+</m:mo>
<m:mn>1</m:mn>
</m:mrow>
</m:mrow>
</m:math>
<m:math>
<m:mrow>
<m:mi>total_energyconsumption</m:mi>
<m:mo>=</m:mo>
<m:mrow>
<m:mi>elapsed_time</m:mi>
<m:mo>×</m:mo>
<m:mi>property_set:electricpower_ejection_by_ejector_pins</m:mi>
</m:mrow>
</m:mrow>
</m:math>
</calculation_formula>
</state>
<state id="s9" name="restoration_of-ejector_pins">
<state_data>
<elapsed_time>0</elapsed_time>
<total_energyconsumption>0</total_energyconsumption>
</state_data>
<calculation_formula>
<m:math>
<m:mrow>
<m:mi>elapsed_time</m:mi>
<m:mo>=</m:mo>
<m:mrow>
<m:mi>elapsed_time</m:mi>
<m:mo>+</m:mo>
<m:mn>1</m:mn>
</m:mrow>
</m:mrow>
</m:math>
<m:math>
<m:mrow>
<m:mi>total_energyconsumption</m:mi>
<m:mo>=</m:mo>
<m:mrow>
<m:mi>elapsed_time</m:mi>
<m:mo>×</m:mo>
<m:mi>property_set:electricpower_restoration_of_ejector_pins</m:mi>
</m:mrow>
</m:mrow>
</m:math>
</calculation_formula>
<calculation_formula repeat="no">
<m:math>
<m:mrow>
<m:mi>operation:total_processing_quantity</m:mi>
<m:mo>=</m:mo>
<m:mrow>
<m:mi>operation:total_processing_quantity</m:mi>
<m:mo>+</m:mo>
<m:mn>1</m:mn>
</m:mrow>
</m:mrow>
</m:math>
</calculation_formula>
</state>
</state_list>
<state_transition_list> <state_transition id=«t1» name=«energy_on»> <transition_condition operator=«==»> on </transition_condition> <transition_condition operator=«==»> </transition_condition> <from_state id=«s1»/> <to_state id=«s2»/> </state_transition> <state_transition id=«t2» name=«power_off»> <transition_condition operator=«==»> off </transition_condition> <transition_condition operator=«==»> </transition_condition> <from_state id=«s2»/> <to_state id=«s1»/> </state_transition> <state_transition id=«t3» name=«mold_change»> <transition_condition operator=«==»> </transition_condition> <transition_condition operator=»!=«> </transition_condition> <from_state id=«s2»/> <to_state id=«s3»/> </state_transition> <state_transition id=«t4» name=«mold_change_completed»> <transition_condition operator=«==»> </transition_condition> <from_state id=«s3»/> <to_state id=«s2»/> </state_transition> <state_transition id=«t5» name=«mold_cleaning»> <transition_condition operator=«==»> </transition_condition> <transition_condition operation=«==»> true </transition_condition> <from_state id=«s2»/> <to_state id=«s4»/> </state_transition> <state_transition id=«t6» name=«mold_cleaning_completed»> <transition_condition operator=«==»> </transition_condition> <from_state id=«s4»/> <to_state id=«s2»/> </state_transition> <state_transition id=«t7» name=«cylinder_cleaning»> <transition_condition operator=«==»> </transition_condition> <transition_condition operator=«==»> true </transition_condition> <from_state id=«s2»/> <to_state id=«s5»/> </state_transition> <state_transition id=«t8» name=«cylinder_cleaning_completed»> <transition_condition operator=«==»> </transition_condition> <from_state id=«s5»/> <to_state id=«s2»/> </state_transition> <state_transition id=«t9» name=«product_start»> <transition_condition operator=«==»> <from_state id=«s2»/> <to_state id=«s6»/> </state_transition> <state_transition id=«t10» name=«injection_molding_completed»> <transition_condition operator=«==»> </transition_condition> <from_state id=«s6»/> <to_state id=«s7»/> </state_transition> <state_transition id=«t11» name=«opening_mold_completed»> <transition_condition_operator=«==»> </transition_condition> <from_state id=«s7»/> <to_state id=«s8»/> </state_transition> <state_transition id=«t12» name=«robot_completed_notice» <transition_condition external_interaction_id=«e2»> true </transition_condition> <from_state id=«s8»/> <to_state id=«s9»/> </state_transition> <state_transition id=«t13» name=«ejection_pins_completed»>
<!-- CONDITION: number of producing product is unachieved -->
<transition_condition operator="==">
<param name="operation:restoration_ejector_pins_time" />
<param name="elapsed_time" />
</transition_condition>
<transition_condition operator=">">
<param name="operation:total_processing_quantity" />
<param name="operation:plan_quantity" />
</transition_condition>
<from_state id="s9"/>
<to_state id="s6"/>
</state_transition>
<state_transition id="t14" name="order_completed">
<!-- CONDITION: all process time is elapsed -->
<!-- CONDITION: number of producing product is achieved -->
<transition_condition operator="==">
<param name ="operation:restoration_ejector_pins_time" />
<param name="elapsed time" />
</transition_condition>
<transition_condition operator="==">
<param name="operation:total_processing_quantity" />
<param name="operation:plan_quantity" />
</transition_condition>
<from_state id="s9"/>
<to_state id="s2"/>
</state_transition>
</state_transition_list>
В.3 Создание шаблона КПО робота для извлечения пресс-форм
Поведение робота для извлечения пресс-форм смоделировано как поток действий (см. рисунок В.3). При получении запроса на извлечение формованной детали из машины для литья под давлением запускается процесс извлечения. Для извлечения формованной детали робот перемещается в положение захвата, захватывает формованную деталь, возвращается в положение освобождения и отправляет уведомление о завершении на машину для литья под давлением. В положении освобождения бегунок обрезается, и формованная деталь высвобождается. Робот для извлечения пресс-форм возвращается в положение ожидания.
Процедура построения шаблона КПО применена к роботу для извлечения пресс-форм следующим образом:
б) список переходов состояний:
в) список статических параметров (помимо общих элементов, таких как идентификатор оборудования, тип оборудования, название модели, масса оборудования и др.):
г) перечень переменных (с использованием формул вычисления):
д) список переменных, являющихся входными значениями при создании виртуальной системы или при виртуальной работе:
f) список взаимосвязей с другим оборудованием:
-
запрос на извлечение (от машины для литья под давлением к роботу для извлечения пресс-форм),
-
уведомление о завершении извлечения (от робота для извлечения пресс-форм к машине для литья под давлением).
Шаблон КПО робота для извлечения пресс-форм с использованием XML определен нижеприведенным образом.
<external_interaction_list> <external_interaction id=«e1» name=«robot extraction»> <send_to equipment_id=«» /> <receive_from equipment_id=«» /> <external_interaction> <external_interaction id=«e2» name=«robot_completed_notice»> <send_to equipment_id=«» /> <receive_from equipment_id=«» /> </external_interaction> </external_interaction_list>
В.4 Создание шаблона КПО контроллера температуры пресс-формы
Поведение контроллера температуры пресс-формы моделируется как поток действий, показанный на рисунке В.4. После нагрева формы начинают контроль температуры пресс-формы для поддержания ее постоянной температуры. Постоянство температуры формы поддерживается повторяющимся нагревом и охлаждением/ненагревом.
Процедура построения шаблона КПО применена к контроллеру температуры пресс-формы следующим образом:
б) список переходов состояний:
-
из нагрева к контролю температуры (при завершении нагрева пресс-формы),
-
из контроля температуры в остановку (при отключении питания);
в) список статических параметров (помимо общих элементов, таких как идентификатор оборудования, тип оборудования, название модели, масса оборудования и др.):
г) перечень переменных (с использованием формул вычисления):
Шаблон КПО для контроллера температуры пресс-формы с использованием XML определен нижеприведенным образом.
| [1] | ISO/DIS 16400-2 | Системы автоматизации и интеграция. Каталоги поведения оборудования для виртуальной производственной системы. Часть 2. Формальное описание шаблона каталога |
|---|
| УДК 004.738:006.354 | ОКС 25.040.01 |
| Ключевые слова: умное производство, виртуальная производственная система, каталоги поведения оборудования, КПО, структура КПО, шаблон КПО, элемент КПО | |










