Большинство приложений MPC связало объекты с несколькими вводами и выводами. Можно использовать ss, tf, и zpk представлять модель объекта управления MIMO. Например, рассмотрите следующую модель столбца [1] дистилляции, который использовался во многих усовершенствованных исследованиях управления:
Выходные параметры y 1 и y 2 представляют измеренную чистоту продукта. Контроллер управляет входными параметрами, u 1 и u 2, чтобы содержать каждый выход в заданном заданном значении. Эти входные параметры представляют скорости потока жидкости отлива и пара ребойлера, соответственно. Введите u 3, измеренное воздействие скорости потока жидкости канала.
Модель состоит из шести передаточных функций, один для каждой пары ввода/вывода. Каждая передаточная функция является первым порядком плюс форма задержки, часто используемая инженерами управления процессом.
Задайте отдельные передаточные функции для каждой пары ввода/вывода. Например, g12 передаточная функция от входа u 1 к выходу y 2.
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');
Задайте систему MIMO путем создания матрицы моделей передаточной функции.
DC = [g11 g12 g13
g21 g22 g23];Задайте имена сигнала ввода и вывода и задайте третий вход как измеренное входное воздействие.
DC.InputName = {'Reflux Rate','Steam Rate','Feed Rate'};
DC.OutputName = {'Distillate Purity','Bottoms Purity'};
DC = setmpcsignals(DC,'MD',3);-->Assuming unspecified input signals are manipulated variables.
Рассмотрите получившуюся систему.
DC
DC =
From input "Reflux Rate" to output...
12.8
Distillate Purity: exp(-1*s) * ----------
16.7 s + 1
6.6
Bottoms Purity: exp(-7*s) * ----------
10.9 s + 1
From input "Steam Rate" to output...
-18.9
Distillate Purity: exp(-3*s) * --------
21 s + 1
-19.4
Bottoms Purity: exp(-3*s) * ----------
14.4 s + 1
From input "Feed Rate" to output...
3.8
Distillate Purity: exp(-8.1*s) * ----------
14.9 s + 1
4.9
Bottoms Purity: exp(-3.4*s) * ----------
13.2 s + 1
Input groups:
Name Channels
Measured 3
Manipulated 1,2
Output groups:
Name Channels
Measured 1,2
Continuous-time transfer function.[1] Древесина, R. K., и М. В. Берри, Chem. Наука инженера, Издание 28, стр 1707, 1973.
setmpcsignals | ss | tf | zpk