Создайте модели Линейного независимого от времени (LTI)

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

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

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

Y(s)U(s)=G(s)=s+2s2+s+10e1.5s

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

Gtf1 = tf([1 2], [1 1 10],'OutputDelay',1.5)

Сборки программного обеспечения Control System Toolbox и отображения это можно следующим образом:

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.10.7i)

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

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

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

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

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

dCAdt=a11CA+a12T+b11Tc+b12CAi

dTdt=a21CA+a22T+b21Tc+b22CAi

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

Схематичный CSTR

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

Модель соответствует общему формату пространства состояний

dxdt=Ax+Bu

y=Cx+Du

где

x=[CAT]u=[TcCAi]y=[TCA]

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

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

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 в последней строке вышеупомянутого кода создает модель в пространстве состояний, 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 обозначение типов ввода и вывода определяет размерности контроллера и имеет другие важные последствия.

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

Входные параметры объекта

Объект Выходные параметры

Две переменные, которыми управляют (MVS)

Три измеренных выходных параметров (MOS)

Одно измеренное воздействие (MD)

Два неизмеренных выходных параметров (UOs)

Два неизмеренных воздействия (UDs)

 

У получившегося контроллера есть четыре входных параметров (три MOS и MD) и два выходных параметров (MVS). Это включает feedforward компенсацию за измеренное воздействие и принимает, что вы хотели включать неизмеренные воздействия и выходные параметры как часть проекта регулятора.

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

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

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

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

    Примечание

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

Для модели CSTR предположения Model Predictive Control Toolbox по умолчанию являются неправильными. Необходимо установить его свойства 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)

Ответ модульного импульса модели Graph CSTR.

linearSystemAnalyzer(CSTR)

Откройте Linear System Analyzer с загруженной моделью CSTR. Вы можете затем характеристики модели дисплея путем создания выборов пункта меню.

pole(CSTR)

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

step(CSTR)

Модульный переходной процесс модели Graph CSTR.

zero(CSTR)

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

Ссылки

[1] Seborg, D. E. Т. Ф. Эдгар, и Д. А. Мелличамп, Динамика Процесса и Управление, 2-й Выпуск, Вайли, 2004, стр 34–36 и 94–95.

Смотрите также

| | |

Похожие темы