Заморозка объектов

Описание инструмента заморозки блоков, портов и линий связи

Для удобства отладки схем во время расчета (моделирования) в SimInTech предусмотрена возможность заморозки блоков, портов и линий связи. Данная функция предназначена для запоминания текущего состояния объектов и перевода их в состояние "заморожен" (прекращение выполнения run-функции объекта). При этом на выходных портах замороженного блока или линии связи будет сохраняться последнее вычисленное и запомненное в момент "заморозки" значение вплоть до снятия заморозки.

Заморозка может применяться:
  • к блокам
  • к линиям связи
  • к портам блоков

Для заморозки входного/выходного порта блока необходимо выполнить следующие действия:

  1. Выделить блок во время расчета;
  2. Нажать правой кнопкой мыши на блоке. В появившемся меню выбрать Действия → Изменить вход-выход (см. Рис. 1);


    Рис. 1. Изменение портов входа/выхода блока
  3. В появившемся окне будут отображены все входные и выходные порты выбранного блока, а также текущее их состояние ("Включен" или "Заморожен") и текущее значение, передающееся по порту. Для перевода любого порта в состояние "заморожен" необходимо дважды щелкнуть левой кнопкой мыши на строке "Состояние" соответствующего порта (см. Рис. 2).


    Рис. 2. Отладка портов входа/выхода блока

В процессе расчета по замороженным выходам/входам блоков можно вручную менять подаваемое значение. Для этого в окне "Отладка" (см. Рис. 2) необходимо дважды щелкнуть левой кнопкой мыши на строке "Значение" соответствующего порта и ввести новое значение.

Состояние портов блоков не сохраняется в prt-файле и при повторной загрузке проекта всем портам блоков присваивается значение "Включен".

Для заморозки блоков или линий связи необходимо выполнить следующие действия:

  1. Выделить блок/линию в режиме редактирования либо во время расчета;
  2. В главном меню выбрать пункт "Исключить объекты" (см. Рис. 3);


    Рис. 3. Кнопки "Исключить объекты" и "Включить объекты" в главном меню
  3. Убедиться в том, что выбранный блок поменял свой цвет на серый (см. рисунок 4). В случае, если исключаем из расчета линию связи, она также меняет свой цвет на серый.

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

Состояние блоков и линий сохраняется в prt-файле. При исключении объектов из расчета в режиме редактирования, либо при последующих загрузках проекта с замороженным блоком, на выходном порту блока будет также сохраняться значение, запомненное в момент "заморозки".

При заморозке субмодели из расчета автоматически исключаются все блоки и линии связи, входящие в состав субмодели.

В случае, если во время расчета был заморожен блок, имеющий линии связи с активными блоками, при последующей загрузке система выдаст сообщение об ошибке "[Ошибка]: "Вход блока связан с выключенным из расчета блоком" в объекте ___" (см. Рис. 4).



Рис. 4. Фрагмент программы с замороженным блоком

Для заморозки линий связи необходимо выполнить следующие действия:

  1. Дважды щелкнуть левой кнопкой мыши на линии связи в режиме расчета;
  2. В появившемся окне установить галочку "Заморозить блок" (см. Рис. 5).


    Рис. 5. Заморозка линии связи

При заморозке линии связи во время работы программы, на линии связи будет сохранено значение, запомненное в момент "заморозки". В процессе расчета по замороженным линиям связи можно вручную менять подаваемое значение. Для этого в окне "Просмотр значений на линии" (см. Рис. 5) необходимо дважды щелкнуть левой кнопкой мыши на строке "Значение сигнала" и ввести новое значение.

Состояние линий связи в данном случае не сохраняется в prt-файле и при повторной загрузке проекта линия связи будет активна.

Примеры работы с функцией заморозки

Пользователю необходимо отладить работу блока, выполняющего расчет количества работающих насосов на станции в зависимости от заданного режима. В случае, если номер режима 1, то на станции работают 3 магистральных насоса (МНА) и 2 подпорных насоса (ПНА). Если номер режима 2, то в работе остаются 2 магистральных насоса и 2 подпорных насоса. Если номер режима 3, то работают 2 магистральных насоса и 1 подпорный насос. Если задан другой режим работы, то на выходе блока необходимо подать нулевые значения. Соберем данный блок для отладки (см. Рис. 6).



Рис. 6. Отладка блока

Номер режима работы станции в программе выполнен в виде блока чтения сигнала из базы данных. Запустим на расчет программу.

  1. Дважды щелкните левой кнопкой мыши на линии связи на входе отлаживаемого блока;
  2. В появившемся окне "Просмотр значений на линии" установите галочку "Заморозить блок" (см. Рис. 7);


    Рис. 7. Отладка блока. Заморозка линии связи
  3. Поочередно измените значение на замороженной линии на значения 1,2,3. Для этого дважды щелкните левой кнопкой мыши на строке "Значение сигнала" и введите новое значение.
  4. Выполните проверку работы блока по графику (см. Рис. 8).


    Рис. 8. Отладка блока. График.