Skip to main content

Иерархия оборудования

Дерево устройств

Платформа Стрикс организует промышленное оборудование в четырёхуровневую иерархию, соответствующую стандарту ISA-95. Каждый элемент иерархии представлен отдельной AAS-оболочкой (shell) в реестре Eclipse BaSyx.

Четырёхуровневая модель

Предприятие (facility)
└── Участок (area)
└── Группа оборудования (equipmentGroup) — необязательный уровень
└── Оборудование (equipment)
УровеньassetTypeОписаниеПример
1facilityЗавод, фабрика, площадкаНЗИФ, ЗИФ-5, КИНЕФ Парекс-1
2areaТехнологический участок или подзаводИзмельчение, Флотация, ЗИФ-1
3equipmentGroupГруппа однотипного оборудованияМельницы, Гидроциклоны, Насосы
4Конкретный тип (pump, ball_mill и др.)Единица оборудованияball-mill-101, pump-401
tip

Уровень equipmentGroup является необязательным. Если на площадке нет логической группировки, оборудование может быть привязано непосредственно к участку (area). Например, в проекте ЗИФ-5 оборудование назначено на участки grinding/flotation без промежуточных групп.

IRI-идентификация

Каждый элемент иерархии имеет уникальный IRI-идентификатор, построенный по соглашению:

Shell ID:    {namespace}/aas/{assetType}/{idShort}
Submodel ID: {namespace}/sm/{idShort}/{submodel-type}
Asset ID: {namespace}/asset/{idShort}

Примеры:

ЭлементIRI
Предприятие НЗИФhttps://polyus.com/nzif/aas/facility/nzif
Участок измельченияhttps://polyus.com/nzif/aas/area/grinding
Группа «Мельницы»https://polyus.com/nzif/aas/equipmentGroup/mills
Мельница МШР-101https://polyus.com/nzif/aas/Equipment/ball-mill-101
Nameplate мельницыhttps://polyus.com/nzif/sm/ball-mill-101/nameplate

Связи parent-child

Иерархия строится через поле specificAssetIds каждой AAS-оболочки. Дочерний элемент ссылается на родителя через ключ parentId, значением которого является полный IRI родительской оболочки.

Ключ specificAssetIdНазначениеПример значения
parentIdIRI родительского элементаhttps://polyus.com/nzif/aas/area/grinding
hierarchyLevelУровень в иерархииfacility, area, equipmentGroup, equipment
processStageТехнологический этапgrinding, flotation, classification
equipmentGroupПринадлежность к группе (метаданные)mills, pumps, hydrocyclones

Гибкость уровня area

Уровень area обладает семантической гибкостью: он может представлять как технологический участок (передел), так и структурное подразделение (подзавод).

ПредприятиеИнтерпретация areaПримеры area
НЗИФТехнологический участок (передел)grinding, flotation, gravity, auxiliary
ЗИФ-5Технологический участокgrinding, flotation
ЗИФ-1,2,3Подзавод (sub-plant)zif1, zif2, zif3
КИНЕФФункциональная зонаfield-monitoring, system
info

В случае ЗИФ-1,2,3 участки (grinding, flotation) моделируются на уровне equipmentGroup: zif1-grinding, zif1-flotation. Это позволяет использовать единую четырёхуровневую модель для любой организационной структуры предприятия.

Пример: НЗИФ (122 оболочки)

НЗИФ (facility)                                      ── 1 shell
├── Измельчение (area: grinding) ── 1 shell
│ ├── Мельницы (equipmentGroup: mills) ── 1 shell
│ │ ├── МШР-101 (ball-mill-101)
│ │ ├── МШР-102 (ball-mill-102)
│ │ └── МСШ-001 (sag-mill-001)
│ ├── Гидроциклоны (equipmentGroup: classifiers)
│ │ ├── Krebs gMAX-33 (hydrocyclone-line-1)
│ │ └── Cavex 209 (hydrocyclone-line-2)
│ └── Конвейеры (equipmentGroup: conveyors)
│ └── Конвейер питания (apron-feeder-001)
├── Флотация (area: flotation)
│ ├── Основная флотация (equipmentGroup: main-flotation)
│ │ └── Флотомашина 30-12 (flotation-cell-30-12)
│ └── Перечистная флотация (equipmentGroup: cleaner)
│ └── Флотомашина перечистная (flotation-cell-cleaner-1)
├── Гравитация (area: gravity)
└── Вспомогательное (area: auxiliary)

Пример ЗИФ-1,2,3 (56 оболочек):

ЗИФ-1,2,3 (facility)
├── ЗИФ-1 (area: zif1) ← area = подзавод
│ ├── zif1-grinding (equipmentGroup) ← group = участок
│ └── zif1-flotation (equipmentGroup)
├── ЗИФ-2 (area: zif2)
│ ├── zif2-grinding
│ └── zif2-flotation
└── ЗИФ-3 (area: zif3)
├── zif3-grinding
└── zif3-flotation

Обнаружение предприятий (facility)

Платформа автоматически определяет предприятия (корневые узлы иерархии) по двум признакам:

  1. Основной: assetInformation.assetType === "facility"
  2. Резервный: specificAssetIds содержит hierarchyLevel === "facility"

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

Субмодели на каждом уровне

СубмодельfacilityareaequipmentGroupequipmentСтандарт
ProjectInfo+Liman 1.0
StoragePolicy+Liman 1.0
Nameplate++IDTA 02006
TechnicalData+IDTA 02003
OperationalData+--
TelemetryConfig+Liman 1.0
OEE+ISO 22400-2
BillOfMaterial+IDTA 02011

Типы оборудования

Платформа поддерживает типизацию оборудования через поле assetType и классификацию ECLASS:

ТипassetTypeECLASSОписание
Шаровая мельницаball_mill27-02-26-01Мельница мокрого помола
Мельница САГsag_mill27-02-26-02Полусамоизмельчение
Гидроциклонhydrocyclone27-04-24-01Классификация пульпы
Флотомашинаflotation_cell27-04-21-01Пенная флотация
Насосpump27-02-24-01Центробежный, шламовый
Конвейерconveyor27-02-21-01Ленточный, пластинчатый
Дробилкаcrusher27-02-25-01ККД, КМД
Edge-контроллерedge_controller27-20-01-01Larus, промышленный IoT
Датчикsensor27-20-05-01Вибрация, температура, ток
tip

Шаблоны оборудования с параметрами и переводами хранятся в файле equipment_types.json. При добавлении нового типа достаточно дополнить шаблон -- загрузчик автоматически создаст корректную AAS-оболочку с двуязычным displayName.

Дерево устройств (/tree)

Представление /tree -- основной инструмент навигации по иерархии. Дерево загружается лениво (lazy loading): дочерние узлы подгружаются при раскрытии родителя. Поддерживается полнотекстовый поиск по displayName на русском и английском языках.

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

Мини-карта иерархии (Hierarchy MiniMap)

При выборе любого узла в дереве панель деталей отображает интерактивную мини-карту иерархии на основе Vue Flow:

  • Цепочка предков от корня (facility) до выбранного элемента
  • Выбранный элемент выделен цветом
  • Дочерние элементы первого уровня

Диаграмма поддерживает масштабирование (+/-), панорамирование и кнопку «вписать в область».

info

Каждый элемент иерархии имеет displayName на русском и английском языках. Интерфейс отображает название в соответствии с текущей локалью пользователя.