Создание переменных окна управления задвижкой
Для корректной работы окна управления необходимо осуществить программирование обработки действий пользователя с примитивами и изменение соответствующих сигналов математической модели. В первую очередь окно управления оборудованием должно получить имя блока расчетной схемы, для которого это окно вызвано.
- Перейдите в главное меню "Окна управления задвижкой" и выберите пункт меню
Сервис подпункт
Глобальные свойства (Рисунок 1). В появившемся диалоговом окне
Общие свойства (Рисунок 2) необходимо добавить новое свойство
для панели управления. Если имя добавляемого сигнала в окне управления совпадает с именем свойства блока, для которого вызвано данное окно, то его значение автоматически устанавливается равным значению свойства блока.

Рисунок 1. Вызов окна добавления свойств Например, в данном случае мы добавим сигнал "Name", тогда при вызове данного окна его значение станет равным имени задвижки, для которой вызывается окно управления.
Рисунок 2. Окно добавления общих свойств - Нажмите кнопку Добавить сигнал
и введите
следующие значения (Рисунок 2): Имя Name Название Имя объекта Режим Вход Тип данных Строка Для отображения состояния задвижки мы будем использовать переменную, которая присутствует в свойствах блока HS - Клапан, с наименованием "Состояние":
- Добавьте новый сигнал и настройте его свойства как показано на рисунке (Рисунок 3)
- Закройте диалоговое окно. Таким образом, мы добавили две переменные, в которые будут передаваться имя и положение задвижки, для которой мы вызвали окно управления во время моделирования.

Рисунок 3. Окно добавления общих свойств - Перейдите в главное меню "Окна управления задвижкой" и выберите пункт меню
Сервис, подпункт
Локальные переменные (Рисунок 4). В появившемся диалоговом окне
Локальные переменные (Рисунок 5) необходимо добавить те сигналы,
которые будет отображать (и формировать) данное окно управления. В нашем случае мы будем
отображать "Положение" задвижки и посылать команды "Команда Открыть" и
"Команда Закрыть".

Рисунок 4. Выбор локальных переменных окна Для управления задвижкой будут использованы сигналы, созданные при формировании базы данных во время выполнения предыдущих учебных заданий. Напомним правила формирования сигналов в базе данных:
Сигнал в базе данных состоит из имени объекта и имени сигнала, разделенных нижним подчеркиванием. Например, сигнал "Положение" задвижки "Z1" в базе данных имеет имя "Z1_xq01".
Для формирования правильного имении сигнала управления следует в локальных переменных создавать имена, используя знак нижнего подчеркивания в начале имени (Рисунок 5).
Рисунок 5. Окно локальных переменных - Добавьте локальные переменные как показано на рисунке ниже (Рисунок 6)

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

Рисунок 7. Вызов окна программирования - В появившемся текстовом окне Язык программирования
введите следующий текст программы, как показано ниже:
formattext initialization Name_Textlabel.Text = "Положение задвижки " + Name; Open_Button.Value = {Name}_yb01; Close_Button.Value = {Name}_yb02; end; Position_Bar.Value = {Name}_xq01; {Name}_yb01 = Open_Button.Value; {Name}_yb02 = Close_Button.Value; end;Вся программа заключена между ключевыми словами
formattextиend.Использование ключевого слова
formattextпозволяет динамически (в процессе расчета) формировать имя переменной, используя шаблон: вместо выражения, заключенного в фигурные скобки, будет подставлено его значение при каждом вызове окна анимации.В нашем случае при вызове окна значению общей переменной
Nameбудет присвоено значение данного свойства у конкретной задвижки: для задвижки "Z1" после вызова окна управления выражение типа{Name}_yb02будет преобразовано в соответствии с шаблоном в выражениеZ1_yb02, которое совпадает с именем сигнала "Команда открыть" для задвижки Z1 в базе сигналов.Строки, заключенные между ключевыми словами
initializationиend, исполняются 1 раз при открытии окна:Name_TextLabel.Text = "Положение задвижки " + Name;– присвоение тексту верхней надписи строки с именем задвижки, для которой вызвано окно управленияPosition_Bar.Value = {Name}_xq01;– отображение линейным прибором степени открытия задвижкиOpen_Button.Down = {Name}_yb01;– приведение состояния кнопки "Открыть" в соответствие с сигналом базы данныхClose_Button.Down = {Name}_yb02;– приведение состояния кнопки "Закрыть" в соответствие с сигналом в базе данных
Строки основного текста программы выполняются на каждом шаге моделирования, пока окно управления активно:
{Name}_yb01 = Open_Button.Down;– отправка в базу данных сигнала команды открытия задвижки{Name}_yb02 = Close_Button.Down;– отправка в базу данных сигнала команды закрытия задвижкиPosition_Bar.Value = {Name}_xq01;– отображение линейным прибором степени открытия задвижки
- Закройте окно нажатием кнопки Применить в левом верхнем углу, сохранив внесенные изменения
Связь задвижки с окном управления
Для подключения окна управления к объекту на схеме необходимо выполнить следующие действия:
- Перейдите в Схемное окно теплогидравлической модели
- Выделите задвижку "Z1" и вызовите окно редактирования свойств (Рисунок 8)

Рисунок 8. Окно свойств Z1 - В строке "Ссылка" нажмите кнопку редактирования. Откроется диалоговое окно выбора ссылки
- В появившемся диалоговом окне выберите категорию "Панели управления" и элемент "Окно управления задвижкой"
- В строке "Режим показа формы" выберите "Управление объектом" (Рисунок 9)

Рисунок 9. Редактирование ссылки Нажмите кнопку Ok
.Аналогично установите связь с окном управления для Z2
- Перейдите на теплогидравлическую схему, установите режим "Индикация", используя
кнопку в верхней части окна (Рисунок 10)

Рисунок 10. Схемное окно теплогидравлической модели - Запустите модель на расчет.
Убедитесь, что при двойном нажатии на задвижке появляется окно управления задвижкой;
Убедитесь, что при нажатии кнопок на панели управления задвижкой, значения сигналов в базе данных "Команда Открыть" и "Команда Закрыть" меняются
- Остановите расчет, сохраните и закройте проект
Ручное управление задвижкой в комплексной модели
- Откройте пакет "Пакет 2.pak", созданный при выполнении задания
Изменение комплексной модели и ее проверка. В
данный пакет входят 2 проекта:
- "Схема теплогидравлическая 1.prt" – теплогидравлическая модель
- "Схема общая 2.prt" – модель системы управления
Обе этих модели загружаются автоматически при загрузке пакета
- Убедитесь, что теплогидравлическая модель содержит ранее созданное окно управления. Для
этого в главном окне SimInTech нажмите кнопку Менеджер данных
и проверьте наличие добавленной
категории с окном. Поскольку "Схема общая 2.prt" осуществляет постоянно управление задвижками, для исключения взаимного влияния автоматического управления и ручного управления друг на друга мы осуществим отключение алгоритма управления задвижкой "Z2"
Для этого необходимо перейти в схему автоматики и выделить субмодель "Алгоритм управления задвижкой Z2".
- Перейдите в главное окно программы, в котором выберите пункт меню
Правка, подпункт
Исключить объекты. (Рисунок 11). Блоки, исключенные из расчета, на схеме отображаются затемнённым цветом, а при моделировании не участвуют в расчете и обмене сигналами. Таким образом, мы отключили в схеме алгоритм управления второй задвижкой и исключили ситуацию, когда сигналы, настроенные пользователем через "Окно управления задвижкой", противоречат сигналам из системы управления.

Рисунок 11. Меню исключения блока из расчёта - Сохраните "Схема общая 2.prt"
- Запустите пакет на расчет
- Осуществите на теплогидравлической схеме двойное нажатие на второй задвижке; В появившемся окне управления подавайте команды на открытие и закрытие задвижки. Убедитесь, что математическая модель корректно отрабатывает сигналы на открытие и закрытие (Рисунок 12).

Рисунок 12. Управление второй задвижкой Z2 в "ручном" режиме, первой Z1 управляет регулятор