linmod2

Извлеките непрерывно-разовую линейную модель в пространстве состояний вокруг рабочей точки

Синтаксис

argout = linmod2('sys', x, u);
argout = linmod2('sys', x, u, para);

Аргументы

sys

Имя системы Simulink®, от которой извлечена линейная модель.

x, u

Состояние (x) и входной параметр (u) векторы. Если задано, они устанавливают рабочую точку, в которой извлечена линейная модель. Когда модель имеет модели - ссылки с помощью Блока модели, необходимо использовать формат структуры Simulink, чтобы задать x. Чтобы извлечь структуру x от модели, используйте следующую команду:

x = Simulink.BlockDiagram.getInitialState('sys');

Можно затем изменить значения рабочей точки в этой структуре путем редактирования x.signals.values значения.

Если состояние содержит различные типы данных (например, 'double' и 'uint8'), то вы не можете использовать вектор, чтобы задать это состояние. Необходимо использовать структуру вместо этого. Кроме того, можно только задать состояние как вектор, если типом данных состояния является 'double'.

para

Трехэлементный вектор дополнительных аргументов:

  • para(1) — Значение возмущения дельты, значение раньше выполняло возмущение состояний и входные параметры модели. Это допустимо для линеаризации с помощью флага 'v5'. Значение по умолчанию является 1e-05.

  • para(2) — Время линеаризации. Для блоков, которые являются функциями времени, можно установить этот параметр с неотрицательным значением, которое дает время (t), в котором Simulink оценивает блоки при линеаризации модели. Значение по умолчанию 0.

  • para(3) — Установите para(3)=1 удалять дополнительные состояния, сопоставленные с блоками, которые не имеют никакого пути от входного параметра, чтобы вывести. Значение по умолчанию 0.

argout

linmod, dlinmod и linmod2 возвращают представления пространства состояний, если вы задаете вывод (левая рука) сторона уравнения можно следующим образом:

  • [A,B,C,D] = linmod('sys', x, u) получает линеаризовавшую модель of sys вокруг рабочей точки с заданными переменными состояния x и входной параметр u. Если вы не используете x и u, значения по умолчанию являются нулем.

linmod и dlinmod и также возвращают передаточную функцию и представления структуры данных MATLAB® линеаризовавшей системы, в зависимости от того, как вы задаете вывод (левая рука) сторона уравнения. Используя linmod как пример:
  • [num, den] = linmod('sys', x, u) возвращает линеаризовавшую модель в форме передаточной функции.

  • sys_struc = linmod('sys', x, u) возвращает структуру, которая содержит линеаризовавшую модель, включая имена состояния, имена ввода и вывода и информацию о рабочей точке.

Описание

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

linmod2 получает линейные модели из систем обыкновенных дифференциальных уравнений, описанных как модели Simulink. Вводы и выводы обозначены в использовании Диаграмм Simulink блоки Outport и Inport.

Примечания

По умолчанию системное время обнуляется. Для систем, которые зависят вовремя, можно установить переменный para на двухэлементный вектор, где второй элемент используется, чтобы установить значение t, в котором можно получить линейную модель.

Упорядоченное расположение состояний от нелинейной модели до линейной модели сохраняется. Для систем Simulink переменная вектора символа, которая содержит имя блока, сопоставленное с каждым состоянием, может быть получена с помощью

[sizes,x0,xstring] = sys

где xstring является вектором строк, ith строка которых является именем блока, сопоставленным с i th состояние. Вводы и выводы пронумерованы последовательно на схеме.

Поскольку единственный входной параметр мультивывел системы, можно преобразовать в форму передаточной функции с помощью стандартного ss2tf или в нулевую полюсную форму с помощью ss2zp. Можно также преобразовать линеаризовавшие модели в объекты LTI с помощью ss. Эта функция производит объект LTI в форме пространства состояний, которая может быть далее преобразована в передаточную функцию или форму нулевого полюсного усиления с помощью tf или zpk.

Алгоритмы по умолчанию в linmod и dlinmod обрабатывают Транспортные блоки Задержки, заменяя линеаризацию блоков с приближением Pade. Для получения дополнительной информации смотрите Модели Линеаризации.

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

| |

Представленный в R2007a

Была ли эта тема полезной?