exponenta event banner

Создание инвариантных моделей линейного времени

Программное обеспечение Model Predictive Control Toolbox™ поддерживает те же форматы модели LTI, что и программное обеспечение Control System Toolbox™. Вы можете использовать то, что наиболее удобно для вашего приложения и конвертировать из одного формата в другой. Дополнительные сведения см. в разделе Основные модели.

Модели передаточных функций

Передаточная функция (TF) относится к конкретной паре «вход-выход». Например, если u (t) является входным сигналом установки, а y (t) является выходным сигналом, передаточной функцией, связанной с ними, может быть:

Y (s) U (s) = G (s) = s + 2s2 + s + 10e − 1 .5s

Этот TF состоит из многочлена числителя, s + 2, многочлена знаменателя, s2 + s + 10, и задержки, которая составляет здесь 1,5 единиц времени. Определить G можно с помощью панели инструментов системы управленияtf функция:

Gtf1 = tf([1 2], [1 1 10],'OutputDelay',1.5)
Transfer function:
                 s + 2
exp(-1.5*s) * ------------
              s^2 + s + 10

Модели нуля/полюса/усиления

Подобно формату TF, формат ZPK связывает пару «вход-выход». Разница в том, что числитель ZPK и многочлен знаменателя факторизованы, как в

G (s) = 2 .5s + 0,45 (s + 0,3) (s + 0,1 + 0 .7i) (s + 0,1 − 0 .7i)

(нули и/или полюса являются комплексными числами в целом).

Модель ZPK определяется путем указания нуля (нулей), полюса (полюсов) и коэффициента усиления, как в

poles = [-0.3, -0.1+0.7*i, -0.1-0.7*i];
Gzpk1 = zpk(-0.45,poles,2.5);

Модели пространства состояния

Формат state-space удобен, если модель представляет собой набор дифференциальных и алгебраических уравнений LTI. Например, рассмотрим следующую линеаризованную модель непрерывного реактора с мешалкой (CSTR), включающего экзотермическую (генерирующую тепло) реакцию [1].

dC′Adt=a11C′A+a12T′+b11T′c+b12C′Ai

dT′dt=a21C′A+a22T′+b21T′c+b22C′Ai

где CA - концентрация ключевого реагента, T - температура в реакторе, Tc - температура хладагента, CAi - концентрация реагента в сырье реактора, aij и bij - константы. См. схему процесса в CSTR Schematic. Простые числа (например, C′A) обозначают отклонение от номинального установившегося состояния, при котором модель линеаризована.

Схема CSTR

Измерение концентраций реагентов часто затруднено, если не невозможно. Предположим, что T - измеренный выходной сигнал, CA - неизмеренный выходной сигнал, Tc - управляемая переменная, а CAi - неизмеренное возмущение.

Модель соответствует общему формату state-space

dxdt = Ax + Bu

y = Cx + Du

где

x=[C′AT ] , u=[T′cC′Ai] , y=[T′C′A]

A = [a11a12a21a22 ], B = [ b11b12b21b22], C = 0110], D = [0000]

Следующий код показывает, как определить такую модель для некоторых конкретных значений констант aij и bij:

A = [-0.0285  -0.0014
     -0.0371  -0.1476];
B = [-0.0850   0.0238
      0.0802   0.4462];
C = [0 1
     1 0];
D = zeros(2,2);
CSTR = ss(A,B,C,D);

Это определяет непрерывную модель состояния-пространства. Если период выборки не указан, применяется нулевое значение выборки по умолчанию. Можно также задать дискретные модели состояния-пространства. Задержки можно указывать как в моделях непрерывного времени, так и в моделях дискретного времени.

Примечание

В примере CSTR матрица D равна нулю, и выходной сигнал не реагирует мгновенно на изменение входного сигнала. Программное обеспечение Model Predictive Control Toolbox запрещает прямой (мгновенный) проход от управляемой переменной к выходу. Например, модель CSTR может включать прямой проход от неизмеренного нарушения, CAi, к CA или T, но прямой проход от Tc к любому выходу нарушит это ограничение. Если модель имела прямой проход от Tc, можно добавить небольшую задержку на этом входе, чтобы обойти проблему.

Свойства объекта LTI

ss функция в последней строке вышеуказанного кода создает модель state-space, CSTR, который является объектом LTI. tf и zpk команды, описанные в моделях передаточных функций и моделях нулевого/полюсного/усиления, также создают объекты LTI. Такие объекты содержат параметры модели, а также дополнительные свойства.

Свойства LTI для примера CSTR

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

CSTR.InputName = {'T_c','C_A_i'};
CSTR.OutputName = {'T','C_A'};
CSTR.StateName = {'C_A','T'};
CSTR.InputGroup.MV = 1;
CSTR.InputGroup.UD = 2;
CSTR.OutputGroup.MO = 1;
CSTR.OutputGroup.UO = 2;
CSTR

Первые три строки определяют метки для переменных ввода, вывода и состояния. Следующие четыре задают тип сигнала для каждого входа и выхода. Обозначения MV, UD, MO, и UO средняя управляемая переменная, неизмеренное возмущение, измеренный выход и неизмеренный выход. (Определения см. в разделе Типы сигналов.) Например, код указывает, что вход 2 модели CSTR является неизмеренным нарушением. Последняя строка приводит к отображению объекта LTI, генерируя следующие строки в окне команд MATLAB ®:

A = 
            C_A        T
   C_A  -0.0285  -0.0014
   T    -0.0371  -0.1476
 
B = 
           T_c    C_Ai
   C_A  -0.085  0.0238
   T    0.0802  0.4462

C = 
        C_A    T
   T      0    1
   C_A    1    0
 
 
D = 
         T_c  C_Ai
   T       0     0
   C_A     0     0
 
Input groups:       
    Name    Channels
     MV        1    
     UD        2    
                    
Output groups:      
    Name    Channels
     MO        1    
     UO        2    
                    
Continuous-time model

Имена входов и выходов

Дополнительное InputName и OutputName свойства влияют на отображение модели, как в приведенном выше примере. Программное обеспечение также использует InputName и OutputName свойства для маркировки графиков и таблиц. В этом контексте символ подчеркивания приводит к отображению следующего символа в виде подстрочного индекса.

Типы ввода и вывода

Общее дело.  Как упоминалось в разделе Типы сигналов, программное обеспечение Model Predictive Control Toolbox поддерживает три типа ввода и два типа вывода. В конструкции панели инструментов управления Model Predictive Control Toolbox назначение типов ввода и вывода определяет размеры контроллера и имеет другие важные последствия.

Например, предположим, что структура завода была следующей:

Заводские вводы

Заводские выходы

Две управляемые переменные (MV)

Три измеренных выхода (MO)

Одно измеренное возмущение (MD)

Два неизмеренных выхода (ОО)

Два неизмеренных нарушения (UD)

 

Результирующий контроллер имеет четыре входа (три MO и MD) и два выхода (MV). Она включает в себя обратную компенсацию измеренного возмущения и предполагает, что в конструкцию регулятора необходимо включить неизмеренные возмущения и выходные сигналы.

Если вы не хотите, чтобы определенный сигнал рассматривался как один из вышеперечисленных типов, можно выполнить одно из следующих действий:

  • Устраните сигнал перед использованием модели в конструкции контроллера.

  • Для вывода обозначьте его как неизмеренный, а затем установите его вес равным нулю.

  • Для ввода обозначьте его как неизмеренное нарушение, а затем определите пользовательский оценщик состояния, который игнорирует ввод.

    Примечание

    По умолчанию программное обеспечение предполагает, что неуточненные входные данные установки являются управляемыми переменными, а неуточненные выходные данные измеряются. Таким образом, если вы не указали типы сигналов в приведенном выше примере, контроллер будет иметь четыре входа (предполагая, что все выходы установки были измерены) и пять выходов (предполагая, что все входы установки были управляемыми переменными).

Для модели CSTR, предположения по умолчанию для панели инструментов управления «Прогнозирование модели» неверны. Необходимо установить его InputGroup и OutputGroup свойства, как показано в приведенном выше коде, или изменить настройки по умолчанию при загрузке модели в MPC Designer.

Использовать setmpcsignals для создания определения типа. Например:

CSTR = setmpcsignals(CSTR,'UD',2,'UO',2);

наборы InputGroup и OutputGroup к тем же значениям, что и в предыдущем примере. CSTR тогда отображение будет включать следующие строки:

Input groups:              
       Name        Channels
    Unmeasured        2    
    Manipulated       1    
                           


Output groups:             
       Name       Channels 
    Unmeasured       2     
     Measured        1     

Обратите внимание, что setmpcsignals устанавливает неуказанные входные данные в Manipulated и неуточненные результаты Measured.

Характеристики модели LTI

Программное обеспечение Control System Toolbox предоставляет функции для анализа моделей LTI. Некоторые из наиболее часто используемых перечислены ниже. Введите код примера в подсказке MATLAB, чтобы узнать, как они работают для CSTR пример.

Пример

Предполагаемый результат

dcgain(CSTR)

Вычислить матрицу усиления для CSTR пары «вход-выход» модели.

impulse(CSTR)

График CSTR единично-импульсная характеристика модели.

linearSystemAnalyzer(CSTR)

Откройте анализатор линейной системы с помощью CSTR модель загружена. Затем можно просмотреть признаки модели, выбрав пункт меню.

pole(CSTR)

Вычислить CSTR полюса модели (для проверки устойчивости и т.д.).

step(CSTR)

График CSTR отклик модели на единичный шаг.

zero(CSTR)

Вычислить CSTR нули передачи модели.

Ссылки

[1] Себорг, Д. Э., Т. Ф. Эдгар и Д. А. Mellichamp, Process Dynamics and Control, 2nd Edition, Wiley, 2004, pp. 34-36 и 94-95.

См. также

| | |

Связанные темы