В этом примере показано, как проектировать контроллер MPC для установки с задержками с помощью MPC Designer.
Примером установки с задержками является модель дистилляционной колонны:
Выходы y1 и y2 представляют измеренную чистоту продукта. Модель состоит из шести передаточных функций, по одной для каждой пары вход/выход. Каждая передаточная функция представляет собой систему первого порядка с задержкой. Самая длинная задержка в модели - 8.1 минут.
Укажите отдельные передаточные функции для каждой пары «вход-выход». Например, g12 - передаточная функция от входа u2 к выходу y1.
g11 = tf(12.8,[16.7 1],'IOdelay',1.0,'TimeUnit','minutes'); g12 = tf(-18.9,[21.0 1],'IOdelay',3.0,'TimeUnit','minutes'); g13 = tf(3.8,[14.9 1],'IOdelay',8.1,'TimeUnit','minutes'); g21 = tf(6.6,[10.9 1],'IOdelay',7.0,'TimeUnit','minutes'); g22 = tf(-19.4,[14.4 1],'IOdelay',3.0,'TimeUnit','minutes'); g23 = tf(4.9,[13.2 1],'IOdelay',3.4,'TimeUnit','minutes'); DC = [g11 g12 g13; g21 g22 g23];
Определите имена входных и выходных сигналов.
DC.InputName = {'Reflux Rate','Steam Rate','Feed Rate'};
DC.OutputName = {'Distillate Purity','Bottoms Purity'};Кроме того, можно указать имена сигналов в MPC Designer на вкладке MPC Designer, щелкнув Атрибуты ввода-вывода.
Укажите третий вход, скорость подачи, как измеренное возмущение (MD).
DC = setmpcsignals(DC,'MD',3);
Поскольку они явно не указаны в setmpcsignalsвсе остальные входные сигналы конфигурируются как управляемые переменные (MV), а все выходные сигналы по умолчанию конфигурируются как измеряемые выходы (MO).
Откройте MPC Designer, импортирующий модель завода.
mpcDesigner(DC)

При запуске с непрерывной моделью завода, например, DC, время выборки контроллера по умолчанию - 1 в единицах времени завода. Если установка имеет дискретное время, время выборки контроллера совпадает с временем выборки установки.
MPC Designer импортирует указанное производство в браузер данных. Кроме того, в обозреватель данных добавляются следующие элементы:
mpc1 - Контроллер MPC по умолчанию, созданный с помощью DC в качестве внутренней модели.
scenario1 - Сценарий моделирования по умолчанию.
Приложение запускает сценарий моделирования и генерирует графики входных и выходных ответов.
Для завода с задержками рекомендуется определять горизонты прогнозирования и управления таким образом, чтобы
где,
P - горизонт прогнозирования.
М - горизонт управления.
td, max - максимальная задержка, которая равна8.1 минут для DC модель.
Δt - время выборки контроллера, которое равно 1 минута по умолчанию.
На вкладке Настройка в разделе Горизонт укажите горизонт прогнозирования 30 и горизонт контроля 5.

После изменения горизонтов графики «Ответ на ввод» и «Ответ на вывод» для сценария моделирования по умолчанию обновляются автоматически.
На вкладке MPC Designer в разделе Сценарий щелкните Изменить сценарий > сценарий 1. Также можно щелкнуть правой кнопкой мыши в браузере данных. scenario1 и выберите Изменить.
В диалоговом окне «Сценарий моделирования» задайте продолжительность моделирования, равную 50 минут.
В таблице Опорные сигналы (Reference Signals) в раскрывающемся списке Сигнал (Signal) выберите Step для обоих выходов для моделирования ступенчатых изменений в их уставках.
Укажите время шага 0 для ссылки r (1), чистоту дистиллята и время стадии 25 для r (2) - чистота кубовых остатков.

Нажмите кнопку ОК.
Приложение запускает моделирование с новыми настройками сценария и обновляет графики входных и выходных ответов.

Графики входного ответа показывают оптимальные движения управления, генерируемые контроллером. Контроллер реагирует немедленно в ответ на изменения уставки, изменяя обе управляемые переменные. Однако из-за задержек завода последствия этих изменений не сразу отражаются на графиках ответа на вывод. Выход чистоты дистиллята реагирует через 1 минуту, что соответствует минимальной задержке от g11 и g12. Аналогично, выход Dottoms Purity реагирует через 3 минут после изменения шага, что соответствует минимальной задержке от g21 и g22. После начальных задержек оба сигнала достигают своих уставок и быстро оседают. Изменение любой уставки выходного сигнала нарушает реакцию другого выходного сигнала. Однако величины этих взаимодействий составляют менее 10% от размера шага.
Кроме того, в манипулируемых действиях управления переменными имеются периодические импульсы, когда контроллер пытается противодействовать замедленному воздействию каждого входа на два выхода.
Используйте блокировку управляемой переменной, чтобы разделить горизонт прогнозирования на блоки, в течение которых перемещения управляемой переменной являются постоянными. Этот метод обеспечивает более плавную регулировку переменных с меньшими колебаниями и меньшими размерами перемещения.
Чтобы использовать блокировку управляемой переменной, на вкладке «Настройка» укажите горизонт управления в качестве вектора размеров блоков. [5 5 5 5 10].

Начальные манипулируемые переменные перемещения намного меньше, а перемещения менее колебательные. Компромисс представляет собой более медленный выходной отклик с более значительными взаимодействиями между выходами.
Кроме того, можно выполнять плавные перемещения переменных путем настройки веса настройки контроллера.
Возврат горизонта управления к предыдущему значению 5.
В разделе «Настройка производительности» перетащите ползунок «Производительность по замкнутому контуру» влево в направлении параметра «Надежность».

При перемещении ползунка влево управляемая переменная становится более плавной, а выходной отклик - медленнее.
[1] Вуд, Р. К., и М. В. Берри, хим. англ. Sci., том 28, стр. 1707, 1973.