Линеаризация блока Simulink к неопределенной модели

В этом примере показано, как сделать блок Simulink ® линеаризацией до неопределенной переменной в командной строке. Чтобы узнать, как задать линеаризацию неопределенных блоков с помощью редактора моделей Simulink, смотрите «Задайте неопределенную линеаризацию для ядра» или «Пользовательские блоки Simulink».

В данном примере откройте модель Simulink slexAircraftExample.

mdl = 'slexAircraftExample';
open_system(mdl)

Исследуйте подсистему Aircraft Dynamics Model.

subsys = [mdl,'/Aircraft Dynamics Model'];
open_system(subsys)

Предположим, что вы хотите задать следующие неопределенные вещественные значения для блоков усиления Mw и Zd.

Mw_unc = ureal('Mw',-0.00592,'Percentage',50);
Zd_unc = ureal('Zd',-63.9979,'Percentage',30);

Чтобы задать эти значения в качестве линеаризации для этих блоков, создайте BlockSubs структура для перехода к linearize функция. Имена полей являются именами блоков Simulink, а значения являются соответствующими неопределенными значениями. Обратите внимание, что в этой модели имя Mw блок Gain4, и имя Zd блок Gain5.

Mw_name = [subsys,'/Gain4'];
Zd_name = [subsys,'/Gain5'];

BlockSubs(1).Name = Mw_name;
BlockSubs(1).Value = Mw_unc;
BlockSubs(2).Name = Zd_name;
BlockSubs(2).Value = Zd_unc;

Вычислите неопределенную линеаризацию. linearize линеаризирует модель в рабочей точке, заданной в модели, делая замены заданные BlockSubs. Результатом является неопределенная модель пространства состояний с неопределенным вещественным параметром для каждого из двух неопределенных коэффициентов усиления.

sys = linearize(mdl,BlockSubs)
sys =

  Uncertain continuous-time state-space model with 1 outputs, 1 inputs, 7 states.
  The model uncertainty consists of the following blocks:
    Mw: Uncertain real, nominal = -0.00592, variability = [-50,50]%, 1 occurrences
    Zd: Uncertain real, nominal = -64, variability = [-30,30]%, 1 occurrences

Type "sys.NominalValue" to see the nominal value, "get(sys)" to see all properties, and "sys.Uncertainty" to interact with the uncertain elements.

Исследуйте неопределенный ответ модели.

step(sys)

step берёт случайные выборки и предоставляет представление о области значений ответов в пределах неопределенности линеаризированной модели.

См. также

(Simulink Control Design)

Похожие темы