При пакетной линеаризации модели с помощью slLinearizer
интерфейс, можно пометить интересующие сигналы с помощью точек анализа. Затем можно проанализировать ответ системы в любой из этих точек, используя такие функции, как getIOTransfer
и getLoopTransfer
.
Кроме того, если выполняется пакетная линеаризация модели с помощью:
Model Linearizer задайте точки анализа, как показано на рисунке «Задать часть модели для линеаризации в модельном линеаризаторе».
Для получения дополнительной информации о выборе инструмента пакетной линеаризации см. раздел «Выбор методов пакетной линеаризации».
Точки анализа идентифицируют местоположения в Simulink® модель, которая относится к линейному анализу. Каждая точка анализа связана с сигналом, который берёт начало из выхода блока Simulink. Для примера в следующей модели опорного сигнала r
и сигнал управления u
являются точками анализа, которые берут начало из выходов блоков setpoint и C соответственно.
Каждая точка анализа может служить одной или нескольким из следующих целей:
Вход - Программа вводит аддитивный входной сигнал в точку анализа, например, чтобы смоделировать нарушение порядка на входе объекта.
Выход - Программное обеспечение измеряет значение сигналов в точке, для примера, чтобы изучить влияние нарушения порядка на выход объекта.
Открытие цикла - программное обеспечение интерпретирует пропуск потока сигналов в точке, например, чтобы изучить реакцию разомкнутого контура на входе объекта.
Когда вы используете точку анализа для нескольких целей, программное обеспечение применяет цели в этой последовательности: выходное измерение, затем открытие цикла, затем вход.
Используя точки анализа, можно извлечь отклики без разомкнутого контура и с обратной связью из модели Simulink. Можно также задать требования к настройке системы управления с помощью точек анализа. Для получения дополнительной информации смотрите Интересующие Сигналы для Анализа и Проекта Системы Управления.
Можно отметить точки анализа или явным образом в модели Simulink, или программно используя addPoint
команда для slLinearizer
интерфейс.
Чтобы задать точки анализа непосредственно в модели Simulink, сначала откройте вкладку Linearization. Для этого в Apps галерее нажмите Linearization Manager.
Чтобы задать точку анализа:
В модели щелкните сигнал, который вы хотите задать как точку анализа.
На вкладке Linearization в коллекции Insert Analysis Points выберите тип точки анализа, которую необходимо задать.
Когда вы задаете точки анализа, программа добавляет аннотации к модели с указанием типа точки линейного анализа.
Повторите шаги 1 и 2 для всех сигналов, которые вы хотите задать как точки анализа.
Можно выбрать любой из следующих типов точек анализа с обратной связью, которые являются эквивалентными в slLinearizer
интерфейс.
Input Perturbation
Output Measurement
Sensitivity
Complementary Sensitivity
Если вы хотите также ввести открытие постоянного цикла в сигнале, выберите один из следующих типов точек анализа без разомкнутого контура:
Open-Loop Input
Open-Loop Output
Loop Transfer
Loop Break
Когда вы задаете сигнал как точку без разомкнутого контура, анализ выполняет такие функции, как getIOTransfer
всегда приводите в действие пропуск цикла при этом сигнале во время линеаризации. Все типы точек анализа без разомкнутого контура являются эквивалентными в slLinearizer
интерфейс. Для получения дополнительной информации о том, как программа обрабатывает открытия цикла во время линеаризации, смотрите, Как Программа Обрабатывает Открытия Цикла.
Когда вы создаете slLinearizer
интерфейс для модели, любые точки анализа, определенные в модели, автоматически добавляются к интерфейсу. Если вы определили точку анализа используя:
Тип с обратной связью, сигнал добавляется только как точка анализа.
Разомкнутого типа разомкнутый контур складывается как точка анализа, так и как постоянное открытие.
Чтобы программно пометить точки анализа, используйте addPoint
команда. Для примера рассмотрим scdcascade
модель.
open_system('scdcascade')
Чтобы пометить точки анализа, сначала создайте slLinearizer
интерфейс.
sllin = slLinearizer('scdcascade');
Чтобы добавить сигнал в качестве точки анализа, используйте addPoint
команда, задающая исходный блок и номер порта для сигнала.
addPoint(sllin,'scdcascade/C1',1);
Если исходный блок имеет один выходной порт, можно опустить номер порта.
addPoint(sllin,'scdcascade/G2');
Для удобства можно также отметить точки анализа с помощью:
Имя сигнала.
addPoint(sllin,'y2');
Комбинированный путь к исходному блоку и номер порта.
addPoint(sllin,'scdcascade/C1/1')
Конец полного пути исходного блока, когда однозначно.
addPoint(sllin,'G1/1')
Можно также добавить постоянные отверстия в slLinearizer
интерфейс с использованием addOpening
Команда и определение сигналов так же, как и для addPoint
. Для получения дополнительной информации о том, как программа обрабатывает открытия цикла во время линеаризации, смотрите, Как Программа Обрабатывает Открытия Цикла.
addOpening(sllin,'y1m');
Можно также задать точки анализа путем создания объектов ввода-вывода линеаризации с помощью linio
команда.
io(1) = linio('scdcascade/C1',1,'input'); io(2) = linio('scdcascade/G1',1,'output'); addPoint(sllin,io);
Как и когда вы задаете точки анализа непосредственно в модели, если вы задаете объект ввода-вывода линеаризации с:
Тип с обратной связью, сигнал добавляется только как точка анализа.
Разомкнутого типа разомкнутый контур складывается как точка анализа, так и как постоянное открытие.
Как только вы пометили точки анализа в slLinearizer
интерфейс, можно анализировать ответ в любой из этих точек с помощью следующих функций анализа:
getIOTransfer
- Передаточная функция для заданных входов и выходов
getLoopTransfer
- Передаточная функция без разомкнутого контура от аддитивного входа в заданной точке до измерения в той же точке
getSensitivity
- Функция чувствительности в заданной точке
getCompSensitivity
- Дополнительная функция чувствительности в заданной точке
Чтобы просмотреть доступные точки анализа в slLinearizer
интерфейс, используйте getPoints
команда.
getPoints(sllin)
ans = 3x1 cell array {'scdcascade/C1/1[u1]'} {'scdcascade/G2/1[y2]'} {'scdcascade/G1/1[y1]'}
Чтобы использовать точку анализа с функцией анализа, можно задать однозначное сокращение имени точки анализа, возвращенное getPoints
. Для примера вычислите передаточную функцию из u1
на y1
, и найти чувствительность к нарушению порядка на выходе блока G2.
ioSys = getIOTransfer(sllin,'u1','y1'); sensG2 = getSensitivity(sllin,'G2');
addOpening
| addPoint
| getPoints
| slLinearizer