В этом примере показано, как построить и анализировать переходной процесс для пакетных результатов линеаризации, полученных в командной строке. Термин batch linearization results относится к ss
массив моделей, возвращенный slLinearizer
интерфейс или linearize
функция. Этот массив содержит линеаризацию для различных значений параметров, рабочих точек, или оба, такой, как проиллюстрировано в Пакете Линеаризуют Модель для Изменений Параметра в Одной Рабочей точке и Варьируются Рабочие точки и Получают Несколько Передаточных функций Используя Интерфейс slLinearizer. Можно использовать методы, проиллюстрированные в этом примере, чтобы анализировать частотную характеристику, устойчивость или чувствительность для пакетных результатов линеаризации.
Загрузите пакетные результаты линеаризации, сохраненные в scd_batch_lin_results1.mat
.
Следующий код получает линеаризацию watertank
модель в течение четырех раз снимка состояния симуляции, t = [0 1 2 3]
. В каждый раз снимка состояния, параметры модели, A
и b
, варьируются. Демонстрационные значения для A
[10 20 30]
, и демонстрационные значения для b
[4 6]
. slLinearizer
интерфейс включает аналитические точки в опорный сигнал и объект выход.
open_system('watertank') sllin = slLinearizer('watertank',{'watertank/Desired Water Level',... 'watertank/Water-Tank System'}) [A_grid,b_grid] = ndgrid([10,20,30],[4 6]); params(1).Name = 'A'; params(1).Value = A_grid; params(2).Name = 'b'; params(2).Value = b_grid; sllin.Parameters = params; sllin.OperatingPoints = [0,1,2,3]; linsys = getIOTransfer(sllin,'Desired Water Level','Water-Tank System');
linsys
, 4 3 2 ss
массив моделей, содержит передаточную функцию с обратной связью линеаризовавшего watertank
модель от ссылочного входа до объекта выводится. Рабочая точка варьируется вдоль первого измерения массива linsys
, и параметры A
и b
варьируйтесь по вторым и третьим измерениям, соответственно.
stepplot(linsys)
График шага показывает ответы каждой модели в массиве. Этот график показывает область значений переходных процессов системы в рабочих диапазонах, покрытых сеткой параметра и времена снимка состояния.
Чтобы просмотреть параметры, сопоставленные с конкретным ответом, кликните по ответу на графике.
Всплывающая подсказка появляется на графике, предоставляя информацию о выбранном ответе и связанной модели. Последние линии всплывающей подсказки показывают комбинацию параметра и время снимка состояния симуляции, которое дало к этому ответу. Например, в этом предыдущем графике, выбранный ответ соответствует модели, полученной установкой A
к 30
и b
к 4
. Программное обеспечение линеаризовало модель после симуляции модели для трех единиц измерения времени.
Предположим, что вы хотите просмотреть ответы для моделей, линеаризовавших в определенное время снимка состояния симуляции, таких как две единицы измерения времени. Щелкните правой кнопкой по графику и выберите Array Selector. Диалоговое окно Model Selector for LTI Arrays открывается.
Панель Selection Criterion Setup содержит три столбца, один для каждой размерности массива моделей linsys
. Первый столбец соответствует времени снимка состояния симуляции. Третья запись этого столбца соответствует времени снимка состояния симуляции двух единиц измерения времени, потому что массивом времени снимка состояния был [0,1,2,3]
. Выберите только эту запись в первом столбце.
Нажмите OK. График отображает ответы только для моделей, линеаризовавших в двух единицах измерения времени.
Предположим, что вы хотите исследовать только переходной процесс на модель, полученную путем линеаризации watertank
модель в t = 3
, для A = 10
и b = 4
. Для этого можно использовать SamplingGrid
свойство linsys
, который задан как структура. Когда вы выполняете пакетную линеаризацию, программное обеспечение заполняет SamplingGrid
с информацией относительно значений переменных, используемых, чтобы получить модель. Значения переменных включают каждый параметр, что вы варьируетесь и времена снимка состояния симуляции, в которые вы линеаризуете модель. Например:
linsys(:,:,1).SamplingGrid
ans = A: 10 b: 4 Time: 0
Здесь linsys(:,:,1)
обращается к первой модели в linsys
. Эта модель была получена во времени симуляции t = 0
, для A = 10
и b = 4
.
Используйте индексацию массива, чтобы извлечь из linsys
модель, полученная путем линеаризации watertank
модель в t = 3
, для A = 10
и b = 4
.
sg = linsys.SamplingGrid; sys = linsys(:,:,sg.A == 10 & sg.B == 4 & sg.Time == 3);
Структура, sg
, содержит сетку выборки для всех моделей в linsys
. Выражение sg.A == 10 & sg.B == 4 & sg.Time == 3
возвращает логический массив. Каждая запись этого массива содержит логическую оценку выражения для соответствующих записей в sg.A
, sg.B
, и sg.Time
. sys
, массив моделей, содержит весь linsys
модели, которые удовлетворяют выражению.
Просмотрите переходной процесс для sys
.
stepplot(sys)