nicholsplot

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

    Описание

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

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

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

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

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

    пример

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

    пример

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

    пример

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

    пример

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

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

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

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

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

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

    пример

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

    Примеры

    свернуть все

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

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

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

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

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

    Title.String = 'Nichols Frequency Response';
    setoptions(h,'Title',Title,'Grid','on', 'XLim',{[-2,4]},'YLim',{[3.3,4.3]});

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

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

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

    plotoptions = nicholsoptions('cstprefs');

    Измените желаемые свойства набора опций.

    plotoptions.Title.String = 'Nichols Frequency Response';
    plotoptions.Grid = 'on';
    plotoptions.XLim = {[-2,4]};
    plotoptions.YLim = {[3.3,4.3]};
    nicholsplot(sys,plotoptions);

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

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

    В данном примере создайте график Николса, который использует красный текст с 15 точками для заголовка. Этот график должен выглядеть одинаково, независимо от настроек сеанса работы с MATLAB, в котором он сгенерирован.

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

    plotoptions = nicholsoptions;

    Затем изменитесь, необходимые свойства опций устанавливают plotoptions.

    plotoptions.Title.FontSize = 15;
    plotoptions.Title.Color = [1 0 0];
    plotoptions.FreqUnits = 'Hz';
    plotoptions.Grid = 'on';

    Теперь создайте график Николса с помощью набора опций plotoptions.

    nicholsplot(tf(1,[1,1]),{0,15},plotoptions);

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

    Поскольку plotoptions начинается с фиксированного набора опций, результат графика независим от настроек тулбокса сеанса работы с MATLAB.

    В данном примере создайте график Николса следующего непрерывного времени динамическая система SISO. Затем включите сетку и переименуйте график.

    sys(s)=s2+0.1s+7.5s4+0.12s3+9s2.Непрерывное время динамическая система SISO

    Создайте передаточную функцию sys.

    sys = tf([1 0.1 7.5],[1 0.12 9 0 0]);

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

    plotoptions = nicholsoptions;
    plotoptions.Grid = 'on';
    plotoptions.Title.String = 'Nichols Plot of Transfer Function';

    Теперь создайте график Николса с пользовательским набором опции plotoptions.

    nicholsplot(sys,plotoptions)

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

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

    В данном примере рассмотрите модель в пространстве состояний 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 = nicholsplot(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'
            MagLowerLimMode: 'auto'
                MagLowerLim: 0
                 PhaseUnits: 'deg'
              PhaseWrapping: 'off'
              PhaseMatching: 'off'
          PhaseMatchingFreq: 0
         PhaseMatchingValue: 0
        PhaseWrappingBranch: -180
                 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,'FreqUnits','Hz','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, nicholsplot производит массив графиков Николса, каждого графика, отображающего частотную характеристику одной пары ввода-вывода.

    В данном примере сравните ответ Николса параметрической модели, идентифицированной из данных о вводе/выводе, к непараметрической модели, идентифицированной с помощью тех же данных. Идентифицируйте параметрические и непараметрические модели на основе данных.

    Загрузите данные и создайте параметрические и непараметрические модели с помощью tfest и spa, соответственно.

    load iddata2 z2;
    w = linspace(0,10*pi,128);
    sys_np = spa(z2,[],w);
    sys_p = tfest(z2,2);

    spa и tfest потребуйте программного обеспечения System Identification Toolbox™. Модель sys_np непараметрическая идентифицированная модель в то время как, sys_p параметрическая идентифицированная модель.

    Создайте набор опций, чтобы включить соответствие фазы и сетку. Затем создайте график Николса, который включает обе системы с помощью этого набора опций.

    plotoptions = nicholsoptions;  
    plotoptions.PhaseMatching = 'on';
    plotoptions.Grid = 'on';
    plotoptions.XLim = {[-240,0]};
    h = nicholsplot(sys_p,'r.-.',sys_np,'b.-.',w,plotoptions);
    legend('Parametric Model','Non-Parametric model');

    Figure contains an axes object. The axes object with title From: u1 To: y1 contains 2 objects of type line. These objects represent Parametric Model, Non-Parametric model.

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

    свернуть все

    Динамическая система в виде 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 объект. Если вы не задаете оси и если текущей системой координат являются Оси декартовой системы координат, то nicholsplot графики на текущей системе координат. Используйте AX построить в определенные оси.

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

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

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

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

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

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

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

    свернуть все

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

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