Чтобы указать часть модели Simulink ® для линеаризации, можно определить точки линейного анализа в командной строке с помощью командыlinio, setlinio, и getlinio функции. Точки анализа представляют входы линеаризации, выходы и проемы контура для модели. С помощью этого метода можно задать несколько наборов точек анализа без изменения модели.
Можно также определить точки анализа:
В линеаризаторе модели. Дополнительные сведения см. в разделе Задание части модели для линеаризации в линеаризаторе модели.
Непосредственно в модели Simulink. Этот метод используется для сохранения точек анализа в модели. Дополнительные сведения см. в разделе Задание части модели для линеаризации в модели Simulink.
Чтобы указать точки анализа в командной строке, создайте объекты ввода/вывода линеаризации с помощью linio функция. Чтобы создать точку анализа в выходном порту блока в модели, используйте следующий синтаксис:
io = linio(block,port,type);
где
block - полный путь блока, заданный как символьный вектор.
port - номер выходного порта.
type - тип точки анализа, указанный как один из следующих типов:
'input' - Входное возмущение
'output' - Измерение выходного сигнала
'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 с помощью setlinio функция.
setlinio(mdl,io);
Здесь, mdl - вектор символов, задающий имя модели в текущей рабочей папке или на пути MATLAB ®, иio - вектор линеаризации объектов ввода-вывода.
Точки анализа в io перезаписать все существующие точки анализа, сохраненные в модели.
Можно также указать точки анализа непосредственно в модели. Дополнительные сведения см. в разделе Задание части модели для линеаризации в модели Simulink.
Для линеаризации модели с помощью linearize используя точки анализа, сохраненные в модели, необходимо сначала извлечь точки анализа с помощью getlinio функция.
io = getlinio(mdl);
Здесь, mdl - вектор символов, задающий имя модели в текущей рабочей папке или в пути MATLAB.
getlinio | linearize | linio | setlinio