Извлеките дискретное время линейная модель в пространстве состояний вокруг рабочей точки
argout= dlinmod('sys',Ts)argout= dlinmod('sys',Ts,x,u)argout= dlinmod('sys',Ts,x,u,para, 'v5')argout= dlinmod('sys',Ts,x,u,para,xpert,upert, 'v5')
| Имя системы Simulink®, от которой извлечена линейная модель. |
| Состояние ( x = Simulink.BlockDiagram.getInitialState('sys');Можно затем изменить значения рабочей точки в этой структуре путем редактирования Если состояние содержит различные типы данных (например, |
| Шаг расчета дискретного времени линеаризовавшая модель |
| Дополнительный аргумент, который вызывает алгоритм возмущения, созданный до MATLAB® 5.3. Вызов этого дополнительного аргумента эквивалентен вызову |
| Трехэлементный вектор дополнительных аргументов:
|
| Значения возмущения раньше выполняли возмущение всех состояний и входные параметры модели. Значения по умолчанию xpert = para(1) + 1e-3*para(1)*abs(x) upert = para(1) + 1e-3*para(1)*abs(u) Когда модель имеет модели - ссылки с помощью блока Model, необходимо использовать формат структуры Simulink, чтобы задать xpert = Simulink.BlockDiagram.getInitialState('sys');Можно затем изменить значения возмущения в этой структуре путем редактирования Входные параметры возмущения только доступны при вызове алгоритма возмущения, созданного до MATLAB 5.3, или путем вызова |
|
linmod и dlinmod и также возвращают передаточную функцию и представления структуры данных MATLAB линеаризовавшей системы, в зависимости от того, как вы задаете вывод (левая рука) сторона уравнения. Используя linmod как пример:
|
dlinmod вычисляет линейную модель в пространстве состояний для системы дискретного времени путем линеаризации каждого блока в модели индивидуально.
linmod получает линейные модели из систем обыкновенных дифференциальных уравнений, описанных как модели Simulink. Вводы и выводы обозначаются в использовании Диаграмм Simulink блоки Outport и Inport.
Алгоритм по умолчанию использует предварительно запрограммированный аналитический блок Jacobians для большинства блоков, которые должны привести к более точной линеаризации, чем числовое возмущение входных параметров блока и состояний. Список блоков, которые имеют предварительно запрограммированные аналитические Якобианы, доступен в документации Simulink Control Design™ наряду с обсуждением блока блоком аналитический алгоритм для линеаризации.
Алгоритм по умолчанию также допускает специальный режим проблематичных блоков, таких как Транспортная Задержка и Квантизатор. Смотрите диалоговое окно маски этих блоков для получения дополнительной информации и опций.
Функциональный dlinmod может линеаризовать дискретные, многоскоростные, и гибридные непрерывные и дискретные системы в любое данное время выборки. Используйте тот же синтаксис вызова для dlinmod что касается linmod, но вставьте шаг расчета, в котором можно выполнить линеаризацию в качестве второго аргумента. Например,
[Ad,Bd,Cd,Dd] = dlinmod('sys', Ts, x, u);
производит дискретную модель в пространстве состояний во время выборки Ts и рабочая точка, данная вектором состояния x и входной вектор u. Чтобы получить непрерывное образцовое приближение дискретной системы, установите Ts на 0.
Для систем, состоявших из линейных, многоскоростных, дискретных, и непрерывных блоков, dlinmod производит линейные модели, имеющие идентичную частоту и ответы времени (для постоянных входных параметров) в конвертированное время выборки Ts, при условии, что
Ts является целочисленным кратным все время выборки в системе.
Система стабильна.
Для систем, которые не удовлетворяют первому условию, в целом линеаризация является изменяющейся во времени системой, которая не может быть представлена с [A, B, C, D] модель в пространстве состояний, которую возвращает dlinmod.
Вычисление собственных значений линеаризовавшего матричного Ad обеспечивает индикацию относительно устойчивости системы. Система стабильна, если Ts>0 и собственные значения в модульном кругу, как определено этим оператором:
all(abs(eig(Ad))) < 1
Аналогично, система стабильна, если Ts = 0 и собственные значения находятся в левой полуплоскости, как определено этим оператором:
all(real(eig(Ad))) < 0
Когда система нестабильна, и шаг расчета не является целочисленным кратным другое время выборки, dlinmod производит Ad и матрицы Bd, которые могут быть комплексными. Собственные значения матрицы Ad в этом случае все еще, однако, обеспечивают хорошую индикацию относительно устойчивости.
Можно использовать dlinmod, чтобы преобразовать шаги расчета системы к другим значениям или преобразовать линейную дискретную систему в непрерывную систему или наоборот.
Можно найти частотную характеристику непрерывной или дискретной системы при помощи команды bode.
По умолчанию системное время обнуляется. Для систем, которые зависят вовремя, можно установить переменную para на двухэлементный вектор, где второй элемент используется, чтобы установить значение t, в котором можно получить линейную модель.
Упорядоченное расположение состояний от нелинейной модели до линейной модели сохраняется. Для систем Simulink переменная вектора символов, которая содержит имя блока, сопоставленное с каждым состоянием, может быть получена с помощью
[sizes,x0,xstring] = sys
где xstring является вектором строк, ith строка которых является именем блока, сопоставленным с i th состояние. Вводы и выводы пронумерованы последовательно на схеме.
Поскольку одно вход мультивывел системы, можно преобразовать в форму передаточной функции с помощью стандартного ss2tf или в нулевую полюсную форму с помощью ss2zp. Можно также преобразовать линеаризовавшие модели в объекты LTI с помощью ss. Эта функция производит объект LTI в форме пространства состояний, которая может быть далее преобразована в передаточную функцию или форму нулей и полюсов с помощью tf или zpk.
Алгоритмы по умолчанию в linmod и dlinmod обрабатывают Транспортные блоки Задержки, заменяя линеаризацию блоков с приближением Pade. Для алгоритма 'v5' линеаризация модели, которая содержит Производные или Транспортные блоки Задержки, может быть неприятной. Для получения дополнительной информации см. Модели Линеаризации.