nyquistplot

Годограф Найквиста с дополнительными опциями настройки графика

    Описание

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

    1. Получите указатель графика

    2. Используйте getoptions получить набор опции

    3. Обновите график с помощью setoptions изменить необходимые опции

    Для получения дополнительной информации см. Графики отклика Настройки из Командной строки. Создать годографы Найквиста с опциями по умолчанию или извлечь стандартное отклонение, действительные и мнимые части данных о частотной характеристике, использования nyquist.

    пример

    h = nyquistplot(sys) строит годограф Найквиста модели sys динамической системы и возвращается, график обрабатывают h к графику. Можно использовать этот указатель h настроить график с getoptions и setoptions команды. Если sys мультивход, мультивыходная модель (MIMO), затем nyquistplot производит сетку годографов Найквиста, каждый график, отображающий частотную характеристику одной пары ввода-вывода.

    пример

    h = nyquistplot(sys1,sys2,...,sysN) строит годограф Найквиста нескольких динамических систем sys1,sys2,…,sysN на том же графике. Все системы должны иметь то же количество вводов и выводов, чтобы использовать этот синтаксис.

    пример

    h = nyquistplot(sys1,LineSpec1,...,sysN,LineSpecN) устанавливает стиль линии, тип маркера и цвет для годографа Найквиста каждой системы. Все системы должны иметь то же количество вводов и выводов, чтобы использовать этот синтаксис.

    пример

    h = nyquistplot(___,w) графики схема Найквиста для частот заданы частотами в w.

    • Если w массив ячеек формы {wmin,wmax}то nyquistplot строит схему Найквиста на частотах, располагающихся между wmin и wmax.

    • Если w вектор из частот, затем nyquistplot строит схему Найквиста на каждой заданной частоте.

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

    Смотрите logspace сгенерировать логарифмически распределенные векторы частоты.

    h = nyquistplot(AX,___) строит годограф Найквиста на Axes объект в текущей фигуре с указателем AX.

    пример

    h = nyquistplot(___,plotoptions) строит годограф Найквиста с набором опций, заданным в plotoptions. Можно использовать эти опции, чтобы настроить внешний вид годографа Найквиста с помощью командной строки. Настройки вы задаете в plotoptions заменяет настройки preference в MATLAB® сеанс, на котором вы запускаете nyquistplot. Поэтому этот синтаксис полезен, когда это необходимо, чтобы записать скрипт, чтобы сгенерировать несколько графиков, которые выглядят одинаково независимо от локальных настроек.

    Примеры

    свернуть все

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

    Сгенерируйте случайную модель в пространстве состояний с 5 состояниями и создайте схему Найквиста с указателем графика h.

    rng("default")
    sys = rss(5);
    h = nyquistplot(sys);

    Figure contains an axes object. The axes object contains an object of type line. This object represents sys.

    Измените модули фазы в радианы и включите сетку. Для этого отредактируйте свойства указателя графика, h использование setoptions.

    setoptions(h,'PhaseUnits','rad','Grid','on');

    Figure contains an axes object. The axes object contains an object of type line. This object represents sys.

    Годограф Найквиста автоматически обновляется, когда вы вызываете setoptions.

    В качестве альтернативы можно также использовать nyquistoptions команда, чтобы задать необходимые опции графика. Во-первых, создайте набор опций на основе настроек тулбокса.

    plotoptions = nyquistoptions('cstprefs');

    Измените свойства опций, установленных путем установки модулей фазы на радианы и включения сетки.

    plotoptions.PhaseUnits = 'rad';
    plotoptions.Grid = 'on';
    nyquistplot(sys,plotoptions);

    Figure contains an axes object. The axes object contains an object of type line. This object represents sys.

    Можно использовать тот же набор опции, чтобы создать несколько годографов Найквиста с той же индивидуальной настройкой. В зависимости от ваших собственных настроек тулбокса график, который вы получаете, может отличаться от этого графика. Только свойства, которые вы устанавливаете явным образом в этом примере PhaseUnits и Grid, замените настройки тулбокса.

    Создайте годограф Найквиста модели динамической системы и сохраните указатель на график.

    sys = tf(100,[1,2,1]);
    h = nyquistplot(sys);

    Figure contains an axes object. The axes object contains an object of type line. This object represents sys.

    Измените заголовок графика, чтобы считать "годограф Найквиста sys". Для этого используйте getoptions чтобы извлечь существующие опции графика из графика обрабатывают h.

    opt = getoptions(h)
    opt =
    
                             FreqUnits: 'rad/s'
                              MagUnits: 'dB'
                            PhaseUnits: 'deg'
                       ShowFullContour: 'on'
              ConfidenceRegionNumberSD: 1
        ConfidenceRegionDisplaySpacing: 5
                            IOGrouping: 'none'
                           InputLabels: [1x1 struct]
                          OutputLabels: [1x1 struct]
                          InputVisible: {'on'}
                         OutputVisible: {'on'}
                                 Title: [1x1 struct]
                                XLabel: [1x1 struct]
                                YLabel: [1x1 struct]
                             TickLabel: [1x1 struct]
                                  Grid: 'off'
                             GridColor: [0.1500 0.1500 0.1500]
                                  XLim: {[-20 100]}
                                  YLim: {[-80 80]}
                              XLimMode: {'auto'}
                              YLimMode: {'auto'}
    

    Title опция является структурой с несколькими полями.

    opt.Title
    ans = struct with fields:
             String: 'Nyquist Diagram'
           FontSize: 11
         FontWeight: 'bold'
          FontAngle: 'normal'
              Color: [0 0 0]
        Interpreter: 'tex'
    
    

    Измените String поле Title структура и использование setoptions применять изменение в графике.

    opt.Title.String = 'Nyquist Plot of sys';
    setoptions(h,opt)

    Figure contains an axes object. The axes object contains an object of type line. This object represents sys.

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

    sys = tf(100,[1,2,1]);
    h = nyquistplot(sys);

    Figure contains an axes object. The axes object contains an object of type line. This object represents sys.

    Увеличьте масштаб критической точки, (–1,0). Можно сделать так в интерактивном режиме путем щелчка правой кнопкой по графику и выбора Zoom на (-1,0). В качестве альтернативы используйте zoomcp команда на графике обрабатывает h.

    zoomcp(h)

    Figure contains an axes object. The axes object contains an object of type line. This object represents sys.

    Сравните частотные характеристики идентифицированных моделей в пространстве состояний порядка 2 и 6 наряду с их 1-std области доверия представляются на каждой 50-й выборке частоты.

    Загрузите идентифицированные данные модели и оцените модели в пространстве состояний с помощью n4sid. Затем постройте схему Найквиста.

    load iddata1
    sys1 = n4sid(z1,2); 
    sys2 = n4sid(z1,6);
    w = linspace(10,10*pi,256);
    h = nyquistplot(sys1,sys2,w);

    Figure contains an axes object. The axes object with title From: u1 To: y1 contains 2 objects of type line. These objects represent sys1, sys2.

    Обе модели производят приблизительно 76%-ю подгонку к данным. Однако sys2 показывает более высокую неопределенность в ее частотной характеристике, особенно близко к частоте Найквиста как показано графиком. Чтобы видеть это, покажите область доверия в подмножестве точек, в которых отображен ответ Найквиста.

    setoptions(h,'ConfidenceRegionDisplaySpacing',50,...
                 'ShowFullContour','off');

    Figure contains an axes object. The axes object with title From: u1 To: y1 contains 2 objects of type line. These objects represent sys1, sys2.

    Чтобы включить отображение области доверия, щелкните правой кнопкой по графику и выберите Characteristics> Confidence Region.

    В данном примере рассмотрите модель в пространстве состояний MIMO с 3 входными параметрами, 3 выходными параметрами и 3 состояниями. Создайте годограф Найквиста, отобразите только частичный контур и включите сетку.

    Создайте модель в пространстве состояний MIMO sys_mimo.

    J = [8 -3 -3; -3 8 -3; -3 -3 8];
    F = 0.2*eye(3);
    A = -J\F;
    B = inv(J);
    C = eye(3);
    D = 0;
    sys_mimo = ss(A,B,C,D);
    size(sys_mimo)
    State-space model with 3 outputs, 3 inputs, and 3 states.
    

    Создайте годограф Найквиста с указателем графика h и используйте getoptions для списка доступных опций.

    h = nyquistplot(sys_mimo);

    Figure contains 9 axes objects. Axes object 1 with title From: In(1) contains an object of type line. This object represents sys\_mimo. Axes object 2 contains an object of type line. This object represents sys\_mimo. Axes object 3 contains an object of type line. This object represents sys\_mimo. Axes object 4 with title From: In(2) contains an object of type line. This object represents sys\_mimo. Axes object 5 contains an object of type line. This object represents sys\_mimo. Axes object 6 contains an object of type line. This object represents sys\_mimo. Axes object 7 with title From: In(3) contains an object of type line. This object represents sys\_mimo. Axes object 8 contains an object of type line. This object represents sys\_mimo. Axes object 9 contains an object of type line. This object represents sys\_mimo.

    p = getoptions(h)
    p =
    
                             FreqUnits: 'rad/s'
                              MagUnits: 'dB'
                            PhaseUnits: 'deg'
                       ShowFullContour: 'on'
              ConfidenceRegionNumberSD: 1
        ConfidenceRegionDisplaySpacing: 5
                            IOGrouping: 'none'
                           InputLabels: [1x1 struct]
                          OutputLabels: [1x1 struct]
                          InputVisible: {3x1 cell}
                         OutputVisible: {3x1 cell}
                                 Title: [1x1 struct]
                                XLabel: [1x1 struct]
                                YLabel: [1x1 struct]
                             TickLabel: [1x1 struct]
                                  Grid: 'off'
                             GridColor: [0.1500 0.1500 0.1500]
                                  XLim: {3x1 cell}
                                  YLim: {3x1 cell}
                              XLimMode: {3x1 cell}
                              YLimMode: {3x1 cell}
    

    Используйте setoptions обновить график с требует индивидуальной настройки.

    setoptions(h,'ShowFullContour','off','Grid','on');

    Figure contains 9 axes objects. Axes object 1 with title From: In(1) contains an object of type line. This object represents sys\_mimo. Axes object 2 contains an object of type line. This object represents sys\_mimo. Axes object 3 contains an object of type line. This object represents sys\_mimo. Axes object 4 with title From: In(2) contains an object of type line. This object represents sys\_mimo. Axes object 5 contains an object of type line. This object represents sys\_mimo. Axes object 6 contains an object of type line. This object represents sys\_mimo. Axes object 7 with title From: In(3) contains an object of type line. This object represents sys\_mimo. Axes object 8 contains an object of type line. This object represents sys\_mimo. Axes object 9 contains an object of type line. This object represents sys\_mimo.

    Годограф Найквиста автоматически обновляется, когда вы вызываете setoptions. Для моделей MIMO, nyquistplot производит массив схем Найквиста, каждого графика, отображающего частотную характеристику одной пары ввода-вывода.

    Входные параметры

    свернуть все

    Динамическая система в виде SISO или модели динамической системы MIMO или массива моделей динамической системы. Динамические системы, которые можно использовать, включают:

    • Непрерывное время или дискретное время числовые модели LTI, такой как tf, zpk, или ss модели.

    • Разреженные модели в пространстве состояний, такой как sparss или mechss модели. Сетка частоты w должен быть задан для разреженных моделей.

    • Обобщенные или неопределенные модели LTI такой как genss или uss Модели (Robust Control Toolbox). (Используя неопределенные модели требует программного обеспечения Robust Control Toolbox™.)

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

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

    • Модели данных частотной характеристики такой как frd модели. Для таких моделей графики функций годограф Найквиста на частотах задан в модели.

    • Идентифицированные модели LTI, такой как idtf (System Identification Toolbox), idss (System Identification Toolbox), или idproc Модели (System Identification Toolbox). (Используя идентифицированные модели требует программного обеспечения System Identification Toolbox™.)

    Если sys массив моделей, графики функций ответы Найквиста всех моделей в массиве на тех же осях.

    Стиль линии, цвет и маркер задается как символ или строка символов. Символы могут появиться в любом порядке. Вы не должны задавать все три характеристики (стиль линии, маркер и цвет). Например, если вы не используете стиль линии и задаете маркер, затем график показывает только маркер и никакую линию.

    Пример: '--or' красная пунктирная линия с круговыми маркерами

    Стиль линииОписание
    -Сплошная линия
    --Пунктирная линия
    :Пунктирная линия
    -.Штрихпунктирная линия
    МаркерОписание
    'o'Круг
    '+'Знак «плюс»
    '*'Звездочка
    '.'Точка
    'x'Крест
    '_'Горизонтальная линия
    '|'Вертикальная линия
    's'Квадрат
    'd'Ромб
    '^'Треугольник, направленный вверх
    'v'Нисходящий треугольник
    '>'Треугольник, указывающий вправо
    '<'Треугольник, указывающий влево
    'p'Пентаграмма
    'h'Гексаграмма
    ЦветОписание

    y

    желтый

    m

    пурпурный

    c

    голубой

    r

    красный

    g

    зеленый

    b

    синий

    w

    белый

    k

    черный

    Целевые оси в виде Axes или UIAxes объект. Если вы не задаете оси и если текущей системой координат являются Оси декартовой системы координат, то nyquistplot графики на текущей системе координат.

    Опции годографа Найквиста установлены в виде NyquistPlotOptions объект. Можно использовать этот набор опции, чтобы настроить внешний вид годографа Найквиста. Использование nyquistoptions создать набор опции. Настройки вы задаете в plotoptions заменяет настройки preference в сеансе работы с MATLAB, в котором вы запускаете nyquistplot. Поэтому plotoptions полезно, когда это необходимо, чтобы записать скрипт, чтобы сгенерировать несколько графиков, которые выглядят одинаково независимо от локальных настроек.

    Для списка доступных параметров смотрите nyquistoptions.

    Частоты, на которых можно вычислить и построить ответ Найквиста в виде массива ячеек {wmin,wmax} или как вектор из значений частоты.

    • Если w массив ячеек формы {wmin,wmax}, затем функция вычисляет ответ на частотах, располагающихся между wmin и wmax.

    • Если w вектор из частот, затем функция вычисляет ответ на каждой заданной частоте. Например, использовать logspace сгенерировать вектор-строку с логарифмически расположенными с интервалами значениями частоты.

    Задайте частоты в модулях rad/TimeUnit, где TimeUnit TimeUnit свойство модели.

    Выходные аргументы

    свернуть все

    Постройте указатель, возвращенный как handle объект. Используйте указатель h получить и установить свойства использования годографа Найквиста getoptions и setoptions. Для списка доступных параметров смотрите раздел Properties и Values Reference в Настройке Графиков отклика из Командной строки.

    Советы

    • Существует две опции изменения масштаба, доступные из контекстного меню, которые применяются в частности к годографам Найквиста:

      • Full View — Отсекает неограниченные ветви годографа Найквиста, но все еще включает критическую точку (–1, 0).

      • Zoom on (-1,0) — Изменения масштаба вокруг критической точки (–1,0). К изменению масштаба критической точки доступа программно, используйте zoomcp команда. Смотрите Изменение масштаба на Критической точке.

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

    Представлено до R2006a