step

Переходный процесс динамической системы; переходные характеристики

Описание

Переходные процессы

пример

step(sys) строит график отклика динамической модели системы на шаговый вход модуля амплитуды. Модель sys может быть непрерывным или дискретным, и SISO или MIMO. Для систем MIMO на графике отображаются переходные характеристики для каждого канала ввода-вывода. step автоматически определяет временные шаги и длительность симуляции на основе динамики системы.

пример

step(sys,tFinal) моделирует переходную характеристику от t = 0 до последнего временного t = tFinal. Функция использует динамику системы, чтобы определить промежуточные временные шаги.

пример

step(sys,t) строит график переходной характеристики в то время, которое вы задаете в векторе t.

пример

step(sys1,sys2,...,sysN,___) Строит график переходной характеристики нескольких динамических систем на одном графике. Все системы должны иметь одинаковое количество входов и выходов. Можно использовать несколько динамических систем с любой из предыдущих комбинаций входных аргументов.

пример

step(sys1,LineSpec1,...,sysN,LineSpecN,___) задает цвет, стиль линии и маркер для каждой системы на графике. Можно использовать LineSpec с любыми предыдущими комбинациями входных аргументов. Когда вам нужны дополнительные опции индивидуальной настройки графика, используйте stepplot вместо этого.

пример

step(___,opts) задает дополнительные опции для вычисления переходной характеристики, такие как амплитуда шага или смещение входа. Использовать stepDataOptions чтобы создать набор опций opts. Можно использовать opts с любыми предыдущими комбинациями входной параметр и выходной аргумент.

Переходные характеристики

пример

y = step(sys,t) возвращает переходную характеристику модели динамической системы sys во времени, заданном в векторе t. Этот синтаксис не рисует график.

[y,tOut] = step(sys) также возвращает вектор времени tOut соответствует ответам в y. Если вы не задаете вектор входа t времени, step выбирает длину и временной шаг tOut на основе динамики системы.

[y,tOut] = step(sys,tFinal) вычисляет переходную характеристику до конца tFinal. step выбирает временной шаг tOut на основе динамики системы.

[y,t,x] = step(sys) также возвращает траектории состояний x, когда sys является моделью пространства состояний, такой как ss или idss модель.

пример

[y,t,x,ysd] = step(sys) также вычисляет стандартное отклонение ysd от переходной характеристики y, когда sys является идентифицированной моделью, такой как idss, idtf, или idnlarx модель.

пример

[___] = step(___,opts) задает дополнительные опции для вычисления переходной характеристики, такие как амплитуда шага или смещение входа. Использовать stepDataOptions чтобы создать набор опций opts. Можно использовать opts с любыми предыдущими комбинациями входной параметр и выходной аргумент.

Примеры

свернуть все

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

sys(s)=4s2+2s+10.

В данном примере создайте tf модель, которая представляет передаточную функцию. Можно аналогично построить график переходной характеристики других типов динамических моделей системы, таких как коэффициент усиления с нулями (zpk) или пространство состояний (ss) модели.

sys = tf(4,[1 2 10]);

Постройте график переходной характеристики.

step(sys)

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

The step график автоматически включает в себя пунктирную горизонтальную линию, указывающую на установившуюся характеристику. В окне фигуры MATLAB ® можно щелкнуть правой кнопкой мыши по графику, чтобы просмотреть другие характеристики переходной характеристики, такие как максимальная чувствительность и время урегулирования. Для получения дополнительной информации об этих характеристиках смотрите stepinfo (Control System Toolbox).

Постройте график переходной характеристики для системы дискретного времени. Система имеет шаг расчета 0,2 с и представлена следующими матрицами пространства состояний.

A = [1.6 -0.7;
      1  0];
B = [0.5; 0];
C = [0.1 0.1];
D = 0;

Создайте модель пространства состояний и постройте график ее переходной характеристики.

sys = ss(A,B,C,D,0.2);
step(sys)

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

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

Исследуйте переходную характеристику следующей передаточной функции.

sys = zpk(-1,[-0.2+3j,-0.2-3j],1) * tf([1 1],[1 0.05]) 
sys =
 
            (s+1)^2
  ----------------------------
  (s+0.05) (s^2 + 0.4s + 9.04)
 
Continuous-time zero/pole/gain model.
step(sys)

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

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

step(sys,15)

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

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

t = 20:0.2:120;
step(sys,t)

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

Несмотря на то, что этот график начинается с t = 20, step всегда применяет вход шага в t = 0.

Рассмотрим следующую модель пространства состояний второго порядка:

[x˙1x˙2]=[-0.5572-0.78140.78140][x1x2]+[1-102][u1u2]y=[1.96916.4493][x1x2]

A = [-0.5572,-0.7814;0.7814,0];
B = [1,-1;0,2];
C = [1.9691,6.4493];
sys = ss(A,B,C,0);

Эта модель имеет два входа и один выход, поэтому она имеет два канала: от первого входа до выхода и от второго входа до выхода. Каждый канал имеет свою переходную характеристику.

Когда вы используете step, он вычисляет отклики всех каналов.

step(sys)

Figure contains 2 axes. Axes 1 with title From: In(1) contains an object of type line. This object represents sys. Axes 2 with title From: In(2) contains an object of type line. This object represents sys.

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

sys = rss(5,2,3);
step(sys)

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

В графическом окне MATLAB можно ограничить график подмножеством каналов, щелкнув правой кнопкой мыши график и выбрав селектор ввода-вывода.

step позволяет вам построить график характеристик нескольких динамических систем на одной оси. Для образца сравните реакцию системы с обратной связью с ПИ-контроллером и ПИД-регулятором. Создайте передаточную функцию системы и настройте контроллеры.

H = tf(4,[1 2 10]);
C1 = pidtune(H,'PI');
C2 = pidtune(H,'PID');

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

sys1 = feedback(H*C1,1);
sys2 = feedback(H*C2,1);
step(sys1,sys2)
legend('PI','PID','Location','SouthEast')

Figure contains an axes. The axes contains 2 objects of type line. These objects represent PI, PID.

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

 step(sys1,'r--',sys2,'b')
 legend('PI','PID','Location','SouthEast')

Figure contains an axes. The axes contains 2 objects of type line. These objects represent PI, PID.

Первый LineSpec 'r--' задает штриховую красную линию для отклика с ПИ-контроллером. Вторая LineSpec 'b' задает сплошную синюю линию для отклика с ПИД-регулятором. Легенда отражает указанные цвета и linestyles. Для получения дополнительных опций индивидуальной настройки графика используйте stepplot.

Пример Сравнить отклики нескольких систем показывает, как построить график откликов нескольких отдельных систем на одной оси. Когда у вас есть несколько динамических систем, расположенных в массиве моделей, step строит графики всех их ответов сразу.

Создайте массив моделей. В данном примере используйте одномерный массив передаточных функций второго порядка, имеющих различные собственные частоты. Во-первых, предварительно выделите память для массива моделей. Следующая команда создает 1 на 5 строку передаточных функций SISO с нулевым усилением. Первые две размерности представляют выходы модели и входы. Оставшиеся размерности являются измерениями массива.

 sys = tf(zeros(1,1,1,5));

Заполните массив.

w0 = 1.5:1:5.5;    % natural frequencies
zeta = 0.5;        % damping constant
for i = 1:length(w0)
   sys(:,:,1,i) = tf(w0(i)^2,[1 2*zeta*w0(i) w0(i)^2]);
end

(Для получения дополнительной информации об массивах моделей и их создании см. раздел «Массивы моделей» (Control System Toolbox).) Постройте график переходных характеристик для всех моделей массива.

step(sys)

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

step использует тот же linestyle для откликов всех записей массива. Один из способов различить записи - использовать SamplingGrid свойство динамических моделей системы связывать каждую запись в массиве с соответствующим w0 значение.

sys.SamplingGrid = struct('frequency',w0);

Теперь, когда вы строите график характеристик в графическом окне MATLAB, можно щелкнуть трассировку, чтобы увидеть, какому значению частоты это соответствует.

Когда вы даете ему выходной аргумент, step возвращает массив данных отклика. Для системы SISO данные отклика возвращаются как вектор-столбец длины, равной количеству моментов времени, в которые дискретизируется ответ. Можно предоставить вектор t временных точек или разрешить step для выбора временных точек на основе динамики системы. Для образца извлеките переходную характеристику системы SISO в 101 временной точке между t = 0 и t = 5 с.

sys = tf(4,[1 2 10]);
t = 0:0.05:5;
y = step(sys,t);
size(y)
ans = 1×2

   101     1

Для системы MIMO данные отклика возвращаются в массиве размерностей N-на-Ny-на-Nu, где Ny и Nu являются количеством выходов и входов динамической системы. Например, рассмотрим следующую модель пространства состояний, представляющую систему с двумя входами и одним выходом.

A = [-0.5572,-0.7814;0.7814,0];
B = [1,-1;0,2];
C = [1.9691,6.4493];
sys = ss(A,B,C,0);

Извлеките переходную характеристику этой системы в 200 временных точках между t = 0 и t = 20 с.

t = linspace(0,20,200);
y = step(sys,t);
size(y)
ans = 1×3

   200     1     2

y(:,i,j) - вектор-столбец, содержащая переходную характеристику от j-го входа до i-го вывода во время t. Для образца извлеките переходную характеристику из второго входа в выход.

y12 = y(:,1,2);
plot(t,y12)

Figure contains an axes. The axes contains an object of type line.

Создайте цикл обратной связи с задержкой и постройте график его переходной характеристики.

s = tf('s');
G = exp(-s) * (0.8*s^2+s+2)/(s^2+s);
sys = feedback(ss(G),1);
step(sys)

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

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

По умолчанию step применяет входной сигнал, который изменяется от 0 до 1 при t = 0. Чтобы настроить амплитуду и смещение, используйте stepDataOptions. Например, вычислите ответ модели пространства состояний SISO на сигнал, который изменяется с 1 на -1 на t = 0.

A = [1.6 -0.7;
      1  0];
B = [0.5; 0];
C = [0.1 0.1];
D = 0;
sys = ss(A,B,C,D,0.2);

opt = stepDataOptions;
opt.InputOffset = 1;
opt.StepAmplitude = -2;

step(sys,opt)

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

Для откликов на произвольные входные сигналы используйте lsim (Control System Toolbox).

Сравните переходную характеристику параметрической идентифицированной модели с непараметрической (эмпирической) моделью. Также просмотрите их 3 σ доверительные области.

Загрузите данные.

load iddata1 z1

Оцените параметрическую модель.

sys1 = ssest(z1,4);

Оцените непараметрическую модель.

sys2 = impulseest(z1);

Постройте график переходных характеристик для сравнения.

t = (0:0.1:10)';
[y1, ~, ~, ysd1] = step(sys1,t);
[y2, ~, ~, ysd2] = step(sys2,t);
plot(t, y1, 'b', t, y1+3*ysd1, 'b:', t, y1-3*ysd1, 'b:')
hold on
plot(t, y2, 'g', t, y2+3*ysd2, 'g:', t, y2-3*ysd2, 'g:')

Figure contains an axes. The axes contains 6 objects of type line.

Вычислите переходную характеристику идентифицированной модели timeseries.

Модель timeseries, также называемая моделью сигналов, является моделью без измеренных входных сигналов. Шаговый график этой модели использует его (не измеренный) канал шума в качестве канала входа, к которому применяется шаговый сигнал.

Загрузите данные.

load iddata9;

Оцените модель timeseries.

sys = ar(z9, 4);

ys является моделью формы A y(t) = e(t) , где e(t) представляет канал шума. Для расчета переходной характеристики, e(t) рассматривается как вход канал и называется e@y1.

Постройте график переходной характеристики.

step(sys)

Figure contains an axes. The axes with title From: e@y1 To: y1 contains an object of type line. This object represents sys.

Проверьте линейность нелинейной модели ARX путем сравнения малых амплитудных переходных характеристик линейной и нелинейной моделей.

Загрузите данные.

load iddata2 z2;

Оцените нелинейную модель ARX.

nlsys = nlarx(z2,[4 3 10],'tree','custom',{'sin(y1(t-2)*u1(t))+y1(t-2)*u1(t)+u1(t).*u1(t-13)','y1(t-5)*y1(t-5)*y1(t-1)'},'nlr',[1:5, 7 9]);

Определите рабочую точку равновесия для nlsys соответствует установившемуся входному значению 1.

u0 = 1;
[X,~,r] = findop(nlsys, 'steady', 1);
y0 = r.SignalLevels.Output;

Получите линейное приближение nlsys в этой рабочей точке.

sys = linearize(nlsys,u0,X);

Проверьте полезность sys путем сравнения его малой амплитуды с переходной характеристикой nlsys.

Нелинейная система nlsys работает на равновесном уровне, диктуемом (u0, y0). Введите ступенчатое возмущение размера 0,1 вокруг этого установившегося состояния и вычислите соответствующую характеристику.

opt = stepDataOptions;
opt.InputOffset = u0;
opt.StepAmplitude = 0.1;
t = (0:0.1:10)';
ynl = step(nlsys, t, opt);

Линейная система sys выражает связь между возмущениями на входе и соответствующими возмущениями на выходе. Он не знает о равновесных значениях нелинейной системы.

Постройте график переходной характеристики линейной системы.

opt = stepDataOptions;
opt.StepAmplitude = 0.1;
yl = step(sys, t, opt);

Добавьте смещение в установившемся режиме, y0 , на ответ линейной системы и постройте график откликов.

plot(t, ynl, t, yl+y0)
legend('Nonlinear', 'Linear with offset')

Figure contains an axes. The axes contains 2 objects of type line. These objects represent Nonlinear, Linear with offset.

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

свернуть все

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

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

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

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

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

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

  • Идентифицированные модели LTI, такие как idtf, idss, или idproc модели. Для таких моделей функция может также построить доверие интервалов и вернуть стандартные отклонения частотной характеристики. Смотрите переходные характеристики идентифицированных моделей с доверительными областями.

step не поддерживает такие модели данных частотной характеристики, как frd, genfrd, или idfrd модели.

Если sys является массивом моделей, графики функций характеристик всех моделей в массиве на тех же осях. Смотрите Переходная Характеристика of Systems in a Массив моделей.

Время окончания переходной характеристики, заданное как положительная скалярная величина значение. step моделирует переходную характеристику от t = 0 на t = tFinal.

  • Для систем в непрерывном времени функция определяет размер шага и число точек автоматически от динамики системы. Экспресс- tFinal в системных временных модулях, заданных в TimeUnit свойство sys.

  • Для систем в дискретном времени функция использует шаг расчета sys как размер шага. Экспресс- tFinal в системных временных модулях, заданных в TimeUnit свойство sys.

  • Для систем в дискретном времени с неопределенным шагом расчета (Ts = -1), step интерпретирует tFinal как количество периодов дискретизации для моделирования.

Временной вектор, при котором вычислить переходную характеристику, заданный как вектор положительной скалярной величины значений. Экспресс- t в системных временных модулях, заданных в TimeUnit свойство sys.

  • Для моделей в непрерывном времени задайте t в форме Ti:dt:Tf. Чтобы получить ответ на каждом временном шаге, функция использует dt как шаг расчета дискретного приближения к непрерывной системе (см. Алгоритмы).

  • Для моделей в дискретном времени задайте t в форме Ti:Ts:Tf, где Ts является шаг расчета sys.

step всегда применяет вход шага в t = 0, независимо от Ti.

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

Пример: 'r--' задает красную штриховую линию

Пример: '*b' задает синие маркеры звездочки

Пример: 'y' задает желтую линию

Входное смещение и амплитуда приложенного шагового сигнала, заданные как stepDataOptions набор опций. По умолчанию, step применяет вход, который во время переходит от 0 до 1 t = 0. Используйте этот входной параметр, чтобы изменить начальное и окончательное значения входного входа шага. Смотрите Ответ на Пользовательский Вход Шага для примера.

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

свернуть все

Переходные характеристики, возвращенные как массив.

  • Для систем SISO, y является векторы-столбцы той же длины, что и t (при наличии) или tOut (если вы не предоставляете t).

  • Для систем с одним входом, мультивыходами, y - матрица с таким количеством строк, сколько существует временных выборок и столько столбцов, сколько выходов. Таким образом, j-й столбец y, или y(:,j), содержит пошаговую характеристику от входного сигнала до j-го выхода .

  • Для систем MIMO переходные характеристики каждого входного канала складываются вдоль третьей размерности y. Размерности y затем N -by- Ny -by- Nu, где:

    • N - количество временных выборок.

    • Ny - количество системных выходов.

    • Nu - количество системных входов.

    Таким образом, y(:,i,j) - вектор-столбец, содержащая переходную характеристику от j-го входа до i-го выхода во времени, заданном в t или tOut.

Время, в которое переходная характеристика вычисляется , возвращается как вектор. Когда вы не задаете определенный вектор t времени, step выбирает этот временной вектор на основе динамики системы. Время выражается во временных модулях sys.

Траектории состояний, возвращенные как массив. Когда sys является моделью пространства состояний, x содержит эволюцию состояний sys в каждый момент времени в t или tOut. Размерности x N -by- Nx -by- Nu, где:

  • N - количество временных выборок.

  • Nx - количество состояний.

  • Nu - количество системных входов.

Таким образом, эволюция состояний в ответ на шаг, введенный на k-м входе, задается массивом x(:,:,k). Область вектора-строки x(i,:,k) содержит значения состояний на i-м временном шаге.

Стандартное отклонение переходной характеристики идентифицированной модели, возвращаемое как массив тех же размерностей, что и y. Если sys не содержит информацию о параметре ковариации, тогда ysd пуст.

Совет

  • Когда вам нужны дополнительные опции индивидуальной настройки графика, используйте stepplot вместо этого.

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

Алгоритмы

Получить выборки моделей непрерывного времени без внутренних задержек, step преобразует такие модели в модели пространства состояний и дискретизирует их с помощью удержания нулевого порядка на входах. step выбирает время дискретизации для этой дискретизации автоматически на основе динамики системы, кроме тех случаев, когда вы подаете входной временной вектор t в форме t = 0:dt:Tf. В этом случае, step использует dt как время дискретизации. Результат временных шагов симуляции tOut уравнены интервалом dt.

Для систем с внутренними задержками программное обеспечение Control System Toolbox™ использует переменные решатели шага. В результате временные шаги tOut не являются равноудаленными.

Ссылки

[1] L.F. Shampine and P. Gahinet, «Delay-differental-алгебраические уравнения в теории управления», Applied Numerical Mathematics, Vol. 56, Issues 3-4, pp. 574-588.

См. также

Функции

Приложения

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