Можно линеаризовать модель Simulink®, которая содержит блоки с различными шагами расчета с помощью программного обеспечения Simulink Control Design™. По умолчанию, инструменты линеаризации:
Преобразуйте шаги расчета с помощью нулевого порядка, содержат метод преобразования.
Создайте линеаризовавшую модель с шагом расчета, равным самому большому шагу расчета блоков на пути к линеаризации.
Можно изменить любое из этих поведений путем определения опций линеаризации, который влияет на результат линеаризации.
Для получения дополнительной информации о том, как программное обеспечение Simulink Control Design линеаризует многоскоростные модели, смотрите Линеаризацию Многоскоростных моделей.
По умолчанию программное обеспечение выбирает самый большой шаг расчета многоскоростной модели. Если шаг расчета по умолчанию не подходит для вашего приложения, можно задать различный шаг расчета.
Задавать шаг расчета линейной модели в Model Linearizer:
На вкладке Linear Analysis нажмите More Options.
В Опциях для точного диалогового окна линеаризации, на вкладке Linearization, в поле Enter sample time (sec), задают шаг расчета. Можно задать любое из следующих значений:
-1 — Используйте самый большой шаг расчета из модели.
0 — Создайте модель непрерывного времени. В этом случае программное обеспечение создает модель дискретного времени использование самого большого шага расчета из модели, затем преобразует получившуюся модель в непрерывное время.
Положительная скалярная величина — Использование заданное значение для шага расчета.
Чтобы задать шаг расчета линейной модели в командной строке, создайте linearizeOptions
набор опции и набор SampleTime
опция. Например:
opt = linearizeOptions; opt.SampleTime = 0.01;
Можно затем использовать этот набор опции с linearize
или slLinearizer
.
Когда вы линеаризуете модели с несколькими шагами расчета, такими как дискретный контроллер с непрерывным объектом, программное обеспечение использует алгоритм преобразования уровня, чтобы создать односкоростную линейную модель. Метод преобразования уровня по умолчанию является нулевым порядком, содержат.
Задавать метод преобразования уровня в Model Linearizer:
На вкладке Linear Analysis нажмите More Options.
В Опциях для точного диалогового окна линеаризации, на вкладке Linearization, в Choose rate conversion method выпадающий список, избранный один из следующих методов преобразования уровня.
Метод преобразования уровня | Когда использовать |
---|---|
Zero-Order Hold | Вам нужна точная дискретизация непрерывной динамики во временном интервале для входных параметров лестницы. |
Tustin | Вам нужен хороший частотный диапазон, соответствующий между системой непрерывного времени и соответствующей дискретизированной системой, или между исходной системой и передискретизируемой системой. |
Tustin with Prewarping | Вам нужен хороший частотный диапазон, соответствующий на особой частоте между системой непрерывного времени и соответствующей дискретизированной системой, или между исходной системой и передискретизируемой системой. |
Upsampling when possible, Zero-Order Hold otherwise Upsampling when possible, Tustin otherwise Upsampling when possible, Tustin with Prewarping otherwise | Сверхдискретизируйте дискретные состояния, если это возможно, чтобы гарантировать усиление и соответствие фазы сверхдискретизированной динамики. Можно только сверхдискретизировать, когда новый шаг расчета является целочисленным кратным шаг расчета исходной системы. В противном случае программное обеспечение использует альтернативный метод преобразования уровня. |
Если вы выбираете любой из следующих методов преобразования уровня:
Tustin with Prewarping
Upsampling when possible, Tustin with Prewarping otherwise
затем, в поле Enter prewarp frequency, задайте частоту перед деформацией.
Чтобы задать метод преобразования уровня в командной строке, создайте linearizeOptions
набор опции и набор RateConversionMethod
и PreWarpFreq
опции. Например:
opt = linearizeOptions; opt.RateConversionMethod = 'prewarp'; opt.PreWarpFreq = 100;
Можно затем использовать этот набор опции с linearize
или slLinearizer
.
Если вы используете метод преобразования уровня кроме нулевого порядка, содержат, конвертированные состояния больше не имеют тот же физический смысл как исходные состояния. В результате именами состояния в получившейся системе LTI является '?'
.