Разработка ПИД-регулятора и его частных разновидностей. Проект для SCADA‑системы GeniDAQ, страница 4

Блок PID1 – для работы библиотечного ПИД-регулятора.

Блок SOC1 используется для подачи константы – единицы на вход PID-change блока библиотечного ПИД-регулятора (иначе невозможно будет менять параметры регулятора в процессе работы).

Блок ET1 используется для определения времени выполнения задачи.

Блоки BBTN1-BBTN3 – для работы кнопок типа Momentary.

3.3. Проектирование окон отображения[ВГД2] .

Исходя из технического задания, в работе системы можно выделить три режима:

·  разомкнутый – для исследования математической модели  объекта первого порядка;

·  замкнутый с библиотечным ПИД – для исследования разработанного ПИД регулятора в замкнутом контуре с использованием математической модели объекта;

·  замкнутый с библиотечным ПИД – для исследования имеющегося в системе ПИД регулятора в замкнутом контуре с использованием математической модели объекта.

Для каждого из режимов было решено создать отдельное окно отображения. Внешний вид окон представлен на рис.3.4-3.6.

Рис.3.4.Внешний вид окна отображения для режима «Разомкнутый»

Рис.3.5.Внешний вид окна отображения для режима «Замкнутый с разработанным ПИД»

Рис.3.6.Внешний вид окна отображения для режима «Замкнутый с библиотечным ПИД»

В качестве альтернативного варианта можно было использовать одно многофункциональное окно отображения. Но в этом случае для режима «Разомкнутый» на дисплее отображалась бы лишняя информация о параметрах регулятора на цифровых индикаторах(NumericString) (их нельзя скрывать по условию), выходе регулятора и уставке на графике (RealtimeTrendGraph), а также формулах регулятора изображенных на элементах растровое изображение с динамизацией по условию (ConditionalBitmapItem) (эти формулы можно было бы не отображать все сразу, а менять в зависимости от режима, но из-за разных размеров формул модели объекта и регуляторов на рисунках оставались бы пустые места). Поэтому было отдано предпочтение использованию трех окон отображения в проекте.

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

·  текстовая строка (TextString) – с помощью данного блока сделаны все надписи в окнах отображения;

·  цифровой индикатор (Numeric String) – с помощью данного блока выводятся текущие значения параметров регулятора и объекта, текущие значения на выходе регулятора и объекта, а также период сканирования и время выполнения задачи;

·  временной график (RealtimeTrendGraph) – отвечает за отображание временных зависимостей переменных «выход объекта», «выход регулятора» и «уставка»;

·  кнопка с двумя состояниями (BinaryButtonDisplay) – данный блок служит для вызова диалогового окна настройки параметров системы;

·  растровое изображение с динамизацией по условию (Conditional Bitmap Item) – с помощью данного блока выводятся рисунки замкнутой и разомкнутой систем, а также формулы регуляторов и объекта.

3.4. Общая структура VBA‑программы проекта

В данном проекте VBA-программа состоит из пре-скрипта и двух бейсик-скриптов. Пре-скрипт необходим для начальной инициализации переменных и вызова окна начальных настроек. Схема программы пре-скрипта приведена на рис.3.7.

Рис.3.7. Схема программы пре-скрипта

Для ввода настроек было решено выбрать диалоговое окно. Внешний вид диалогового окна представлен на рис.3.8.

Рис.3.8.Внешний вид диалогового окна для изменения параметров системы

  Используемые элементы диалога:

·  элемент группирования (Groupbox) – использован для группировки элементов относящихся к настройке объекта и элементов относящихся настройке регулятора;

·  статический текст (Text) – служит для отображения всех надписей в диалоге;

·  элемент редактирования (Textbox) – используется для ввода настроек;

·  раскрывающийся список (Droplistbox) – использован для выбора одного из трех режимов работы системы;