Задайте фрагмент модели, чтобы линеаризовать в командной строке

Чтобы задать фрагмент вашей модели Simulink®, чтобы линеаризовать, можно задать линейные аналитические точки в командной строке с помощью linio, setlinio и функций getlinio. Аналитические точки представляют входные параметры линеаризации, выходные параметры и открытия цикла для вашей модели. Используя этот метод, можно задать несколько наборов аналитических точек, не изменяя модель.

Также можно задать аналитические точки:

Задайте аналитические точки

Чтобы задать аналитические точки в командной строке, создайте объекты ввода-вывода линеаризации с помощью функции linio. Чтобы создать аналитическую точку в выходном порту блока в вашей модели, используйте следующий синтаксис:

io = linio(block,port,type);

где

  • block является полным блоком path блока, заданного как вектор символов.

  • port является номером выходного порта.

  • type является аналитическим типом точки, заданным как одно из следующего:

    • входной параметр Введите возмущение

    • вывод Выведите измерение

    • 'loopbreak' — Пропуск цикла

    • 'openinput' — Разомкнутый цикл вводится

    • 'openoutput' — Разомкнутый цикл выводится

    • 'looptransfer' — Передача цикла

    • 'sensitivity' — Чувствительность

    • 'compsensitivity' — Дополнительная чувствительность

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

После создания аналитической точки можно изменить ее тип с помощью записи через точку. Например, чтобы изменить аналитическую точку, чтобы быть разомкнутым циклом вывод, используйте:

io.Type = 'openoutput';

Можно также задать аналитические точки на элементах шины в модели. Для примера смотрите linio.

Чтобы задать несколько аналитических точек, создайте вектор объектов ввода-вывода линеаризации. Например, создайте набор аналитических точек, который включает входное возмущение, выходное измерение и открытие цикла.

io(1) = linio(block1,port1,'input');
io(2) = linio(block2,port2,'output');
io(3) = linio(block3,port3,'loopbreak');

Чтобы линеаризовать вашу модель с помощью заданных аналитических точек, используйте функцию linearize.

Сохраните аналитические точки в модели Simulink

Можно сохранить заданные аналитические точки в модели Simulink с помощью функции setlinio.

setlinio(mdl,io);

Здесь, mdl является вектором символов, задающим имя модели в текущей рабочей папке или на пути MATLAB®, и io является вектором объектов ввода-вывода линеаризации.

Аналитические точки в io перезаписывают любые существующие аналитические точки, сохраненные в модели.

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

Получите аналитические точки из модели Simulink

Чтобы линеаризовать вашу модель с функцией linearize использование аналитических точек, сохраненных в модели, необходимо сначала извлечь аналитические точки с помощью функции getlinio.

io = getlinio(mdl);

Здесь, mdl является вектором символов, задающим имя модели в текущей рабочей папке или на пути MATLAB.

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

| | |

Похожие темы