Skip to main content

Симуляция процессов

Модуль симуляции

Модуль симуляции процессов создаёт цифровой двойник технологической цепочки: математическую модель, которая воспроизводит поведение реального оборудования в ответ на изменение входных параметров. Это позволяет тестировать MPC-контроллеры, обучать операторов и проводить анализ what-if без воздействия на реальное производство.

Назначение

СценарийОписание
Тестирование MPCЗамкнутое тестирование контроллера на модели перед развёртыванием на оборудовании
Обучение операторовЗнакомство с поведением процесса в безопасной среде
Анализ what-ifОценка влияния изменения параметров на выходные показатели
Оптимизация схемыПодбор оптимальной конфигурации оборудования и режимов
Аварийные сценарииМоделирование отказов оборудования и оценка последствий
Рекомендация

Используйте симулятор для обучения операторов и настройки MPC перед развёртыванием на реальном оборудовании. Это снижает риск нештатных ситуаций и ускоряет ввод в эксплуатацию.

Архитектура

Модель SAG mill (полуавтогенная мельница)

Основная модель -- полуавтогенная мельница с циркуляционной нагрузкой, двумя стадиями классификации и флотацией. Параметры модели калиброваны по данным ТЗ СУУТП НЗИФ (Инв. No04-48459).

Параметры модели

ПараметрЗначениеЕдиница
Питание (номинальное)1550т/ч
Содержание Au в питании~1.57г/т
SAG mill с циркуляцией1895т/ч
Циркуляционная нагрузка SAG18--22%
Шаровая мельница7276.66т/ч
Циркуляционная нагрузка шаровой469.42%
Классификация 1 (Krebs)8695.6т/ч
Давление классификации 10.15МПа
Классификация 2 (Cavex 209)1004.6т/ч
Давление классификации 20.9МПа

Флотация

ПараметрЗначениеЕдиница
Основная флотация, питание1612.6т/ч
Камеры основной флотации6 x 320м3
Время флотации (основная)15мин
Расход воздуха (основная)62.5м3/мин
Контрольная флотация, питание82.2т/ч
Камеры контрольной флотации4 x 24м3
Время флотации (контрольная)5мин
Расход воздуха (контрольная)11.5м3/мин
Содержание Au в концентрате33.6г/т
Содержание Au в хвостах0.29г/т
Извлечение7.07%

Топология процесса

Модель представляет собой ориентированный граф узлов с потоками материала:

Каждый узел описывается:

  • Балансовыми уравнениями (масса, компоненты)
  • Кинетическими зависимостями (измельчение, флотация)
  • Ограничениями мощности оборудования

Режим what-if

Режим what-if позволяет изменять любой входной параметр и наблюдать влияние на весь процесс в реальном времени:

Входной параметрДиапазон варьированияВлияние на выход
Подача руды1200--1800 т/чКрупность помола, ток двигателя, извлечение
Твёрдость руды8--16 кВт*ч/т (Bond)Циркуляция, производительность, энергопотребление
Содержание Au0.5--3.0 г/тИзвлечение, качество концентрата
Расход воды в мельницу600--1200 м3/чПлотность пульпы, классификация
Расход воздуха во флотацию40--80 м3/минИзвлечение, качество пенного продукта

Интеграция с MPC

При замкнутом тестировании контроллера симулятор выступает в роли реального процесса:

Такой подход позволяет использовать тот же самый контроллер, который будет работать на реальном оборудовании, без изменения кода.

Пользовательский интерфейс

SimulationView -- страница /simulation с трёхколоночной компоновкой:

КолонкаСодержимое
ЛеваяВходные параметры: ползунки и числовые поля для MV и DV
ЦентральнаяСхема процесса: интерактивный граф узлов с потоками и значениями
ПраваяРезультаты: графики CV во времени, ключевые KPI, статус ограничений

Компонентная структура

КомпонентФайлНазначение
SimulationViewsrc/views/SimulationView.vueОсновная страница, 3-колоночный layout
simulationStoresrc/stores/simulationStore.tsСостояние модели, текущие значения, история
useProcessSimulationsrc/composables/useProcessSimulation.tsРешатель: шаг модели, балансовые уравнения
useProcessTopologysrc/composables/useProcessTopology.tsГраф узлов и рёбер для визуализации
processDefaultssrc/config/processDefaults.tsЗначения по умолчанию (НЗИФ)

Сервис apc-simulator

Для серверной симуляции (без UI) используется сервис apc-simulator:

ПараметрЗначение
ЯзыкPython 3.12
Интервал1 с (эмуляция реального времени)
ВходAPC/Output (уставки от контроллера)
ВыходOperationalData (эмулированная телеметрия)
MQTTПубликация значений для telemetry-writer
Dockerbasyx-apc-sim
Два режима симуляции

Frontend (SimulationView) -- интерактивный, для анализа what-if и обучения. Backend (apc-simulator) -- автоматический, для замкнутого тестирования MPC. Оба используют одни и те же математические модели из processDefaults.ts.

Калибровка модели

Для адекватности симуляции модель должна быть откалибрована по данным реального процесса:

  1. Сбор данных -- выгрузка исторических данных из ClickHouse (минимум 30 дней)
  2. Идентификация параметров -- подгонка коэффициентов модели методом наименьших квадратов
  3. Валидация -- сравнение предсказаний модели с реальными данными на тестовом интервале
  4. Обновление -- запись откалиброванных параметров в BaSyx субмодель APC/Configuration

Целевая точность: отклонение CV не более 5% от реальных значений на горизонте 30 минут.