Отметьте представляющие интерес сигналы для анализа и проектирования системы управления

Аналитические точки

Моделируете ли вы свою систему управления в MATLAB® или Simulink®, используйте analysis points, чтобы отметить интересные места в модели. Аналитические точки позволяют вам получать доступ к внутренним сигналам, выполнять анализ разомкнутого цикла или задавать требования для контроллера, настраивающегося. В представлении блок-схемы аналитическая точка может считаться портом доступа к сигналу, текущему из одного блока другому. В Simulink аналитические точки присоединены к выходным портам блоков Simulink. Например, в следующей модели, ссылочном сигнале, r, и управляющий сигнал, u, аналитические точки, которые происходят из выходных параметров setpoint и блоков C соответственно.

Каждая аналитическая точка может служить одному или нескольким следующих целей:

  • Введите — программное обеспечение вводит аддитивный входной сигнал в аналитической точке, например, чтобы смоделировать воздействие во входе объекта.

  • Вывод Программное обеспечение измеряет значение сигналов в точке, например, чтобы изучить удар воздействия на объекте выход.

  • Открытие цикла — программное обеспечение вставляет перерыв в потоке сигналов в точке, например, чтобы изучить ответ разомкнутого цикла во входе объекта.

Можно применить эти цели одновременно. Например, чтобы вычислить ответ разомкнутого цикла из u к y, можно обработать u и как открытие цикла и как вход. Когда вы используете аналитическую точку больше чем в одной цели, программное обеспечение применяет цели в этой последовательности: выведите измерение, затем открытие цикла, затем введите.

Используя аналитические точки, можно извлечь разомкнутый цикл и ответы с обратной связью из модели системы управления. Например, предположите T представляет систему с обратной связью в модели выше, и u и y отмечены как аналитические точки. T может быть или обобщенная модель в пространстве состояний или slLinearizer или slTuner взаимодействуйте через интерфейс к модели Simulink. Можно построить ответ с обратной связью на воздействие шага во входе объекта со следующими командами:

Tuy = getIOTransfer(T,'u','y');
stepplot(Tuy)

Аналитические точки также полезны, чтобы задать конструктивные требования при настройке систем управления с systune команда. Например, можно создать требование, которое ослабляет воздействия на объекте, введенном фактором 10 (20 дБ) или больше.

Req = TuningGoal.Rejection('u',10);

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

Рассмотрите модель LTI следующей блок-схемы.

G = tf(10,[1 3 10]);
C = pid(0.2,1.5);
T = feedback(G*C,1);

С этой моделью можно получить ответ с обратной связью из r к y. Однако вы не можете анализировать ответ разомкнутого цикла во входе объекта или симулировать отклонение воздействия шага во входе объекта. Чтобы включить такой анализ, отметьте u сигнала как аналитическая точка путем вставки AnalysisPoint блокируйтесь между объектом и контроллером.

AP = AnalysisPoint('u');
T = feedback(G*AP*C,1);
T.OutputName = 'y';

Вход объекта, u, теперь доступно для анализа.

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

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

В Simulink можно отметить аналитические точки или явным образом в блок-схеме или программно использовании addPoint команда для slLinearizer или slTuner интерфейсы.

Чтобы задать аналитические точки непосредственно в вашей модели Simulink, сначала откройте вкладку Linearization. Для этого в галерее Apps, нажмите Linearization Manager.

Задавать аналитическую точку:

  1. В модели кликните по сигналу, который вы хотите задать как аналитическая точка.

  2. На вкладке Linearization, в галерее Insert Analysis Points, выбирают тип аналитической точки, которую что вы хотите задать.

    Когда вы задаете аналитические точки, программное обеспечение добавляет аннотации в вашу модель, указывающую на линейный аналитический тип точки.

  3. Повторите шаги 1 и 2 для всех сигналов, которые вы хотите задать, когда анализ указывает.

Можно выбрать любой из следующих аналитических типов точки с обратной связью, которые эквивалентны в slLinearizer или slTuner интерфейс; то есть, они обработаны тот же путь аналитическими функциями, такими как getIOTransfer, и настройка целей, таких как TuningGoal.StepTracking.

  • Input Perturbation

  • Output Measurement

  • Sensitivity

  • Complementary Sensitivity

Если вы хотите ввести постоянный цикл, открывающийся в сигнале также, выберите один из следующих аналитических типов точки разомкнутого цикла:

  • Open-Loop Input

  • Open-Loop Output

  • Loop Transfer

  • Loop Break

Когда вы задаете сигнал как точку разомкнутого цикла, анализ функционирует, такие как getIOTransfer всегда осуществляйте пропуск цикла в том сигнале во время линеаризации. Все аналитические типы точки разомкнутого цикла эквивалентны в slLinearizer или slTuner интерфейс. Для получения дополнительной информации о том, как программное обеспечение обрабатывает открытия цикла во время линеаризации, смотрите Как Открытия Цикла Обработок программного обеспечения.

Когда вы создаете slLinearizer или slTuner интерфейс для модели, любые аналитические точки, заданные в модели, автоматически добавляется к интерфейсу. Если вы задали аналитическое использование точки:

  • Тип с обратной связью, сигнал добавляется как аналитическая точка только.

  • Тип разомкнутого цикла, сигнал добавляется и как аналитическая точка и как постоянное открытие.

Чтобы отметить аналитические точки программно, используйте addPoint команда. Например, рассмотрите scdcascade модель.

open_system('scdcascade')

Чтобы отметить аналитические точки, сначала создайте slTuner интерфейс.

ST = slTuner('scdcascade');

Чтобы добавить сигнал как аналитическую точку, используйте addPoint команда, задавая исходный блок и номер порта для сигнала.

addPoint(ST,'scdcascade/C1',1);

Если исходный блок имеет один выходной порт, можно не использовать номер порта.

addPoint(ST,'scdcascade/G2');

Для удобства можно также отметить аналитические точки с помощью:

  • Имя сигнала.

    addPoint(ST,'y2');
    
  • Объединенный путь к исходному блоку и номер порта.

    addPoint(ST,'scdcascade/C1/1')
    
  • Конец всего пути к исходному блоку, когда однозначный.

    addPoint(ST,'G1/1')
    

Можно также добавить постоянные открытия в slLinearizer или slTuner интерфейс с помощью addOpening команда и задающие сигналы таким же образом что касается addPoint. Для получения дополнительной информации о том, как программное обеспечение обрабатывает открытия цикла во время линеаризации, смотрите Как Открытия Цикла Обработок программного обеспечения.

addOpening(ST,'y1m');

Можно также задать аналитические точки путем создания объектов ввода-вывода линеаризации с помощью linio команда.

io(1) = linio('scdcascade/C1',1,'input');
io(2) = linio('scdcascade/G1',1,'output');
addPoint(ST,io);

Как тогда, когда вы задаете аналитические точки непосредственно в вашей модели, если вы задаете объект I/O линеаризации с:

  • Тип с обратной связью, сигнал добавляется как аналитическая точка только.

  • Тип разомкнутого цикла, сигнал добавляется и как аналитическая точка и как постоянное открытие.

Когда вы задаете ответ I/Os в инструменте, таком как Linear Analysis Tool или Control System Tuner, программное обеспечение создает аналитические точки по мере необходимости.

Обратитесь к аналитическим точкам для анализа и настройки

Если вы отметили аналитические точки, можно анализировать ответ в любой из этих точек с помощью следующих аналитических функций:

  • getIOTransfer — Передаточная функция для заданных вводов и выводов

  • getLoopTransfer — Передаточная функция разомкнутого цикла от аддитивного входа в заданной точке к измерению в той же точке

  • getSensitivity — Функция чувствительности в заданной точке

  • getCompSensitivity — Дополнительная функция чувствительности в заданной точке

Можно также создать настраивающиеся цели, которые ограничивают отклик системы в этих точках. Инструменты, чтобы выполнить эти операции действуют подобным образом для моделей, созданных в командной строке и моделях, созданных в Simulink.

Чтобы просмотреть доступные аналитические точки, используйте getPoints функция. Можно просмотреть анализ для созданных моделей:

  • В командной строке:

  • В Simulink:

Для моделей с обратной связью, созданных в командной строке, можно также использовать имена входа и выхода модели когда:

  • Вычисление ответа с обратной связью.

    ioSys = getIOTransfer(T,'u','y');
    stepplot(ioSys)
    

  • Вычисление ответа разомкнутого цикла.

    loopSys = getLoopTransfer(T,'u',-1);
    bodeplot(loopSys)
    

  • Создание настраивающихся целей для systune.

    R = TuningGoal.Margins('u',10,60);
    

Используйте тот же метод, чтобы относиться к аналитическим точкам для моделей, созданных в Simulink. В моделях Simulink, для удобства, можно использовать любое однозначное сокращение аналитических имен точки, возвращенных getPoints.

ioSys = getIOTransfer(ST,'u1','y1');
sensG2 = getSensitivity(ST,'G2');
R = TuningGoal.Margins('u1',10,60);

Наконец, если некоторые аналитические точки являются сигналами с векторным знаком или многоканальными местоположениями, можно использовать индексы, чтобы выбрать конкретные записи или каналы. Например, предположите u вектор 2D записи в модели MIMO с обратной связью.

G = ss([-1 0.2;0 -2],[1 0;0.3 1],eye(2),0);
C = pid(0.2,0.5);
AP = AnalysisPoint('u',2);
T = feedback(G*AP*C,eye(2));
T.OutputName = 'y';

Можно вычислить ответ разомкнутого цикла второго канала и измерить удар воздействия на первом канале.

L = getLoopTransfer(T,'u(2)',-1);
stepplot(getIOTransfer(T,'u(1)','y'))

Когда вы создаете настраивающиеся цели в Control System Tuner, программное обеспечение создает аналитические точки по мере необходимости.

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

| | |