Графический вывод откликов системы

В этом примере показано, как построить время и частотные характеристики линейных систем SISO и MIMO.

Ответы времени

В целях рисунка создайте следующую передаточную функцию третьего порядка:

sys = tf([8 18 32],[1 6 14 24])
sys =
 
     8 s^2 + 18 s + 32
  -----------------------
  s^3 + 6 s^2 + 14 s + 24
 
Continuous-time transfer function.

Можно построить шаг и импульсные характеристики этой системы с помощью step и impulse команды:

subplot(2,1,1)
step(sys)
subplot(2,1,2)
impulse(sys)

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

clf
t = 0:0.01:4;
u = sin(10*t);
lsim(sys,u,t)   % u,t define the input signal

Можно использовать команды графического вывода с непрерывным или дискретным TF, SS или моделями ZPK. Для моделей в пространстве состояний можно также построить добровольный ответ от некоторого данного начального состояния, например:

A = [-0.8 3.6 -2.1;-3 -1.2 4.8;3 -4.3 -1.1];
B = [0; -1.1; -0.2];
C = [1.2 0 0.6];
D = -0.6;
G = ss(A,B,C,D);
x0 = [-1;0;2];  % initial state
initial(G,x0)
grid

Частотные характеристики

Анализ частотного диапазона является ключевым для понимания устойчивости и свойств эффективности систем управления. Диаграммы Боде, годографы Найквиста и график Николса являются тремя стандартными способами построить и анализировать частотную характеристику линейной системы. Можно создать эти графики с помощью bode, nichols, и nyquist команды. Например:

sys = tf([8 18 32],[1 6 14 24])
sys =
 
     8 s^2 + 18 s + 32
  -----------------------
  s^3 + 6 s^2 + 14 s + 24
 
Continuous-time transfer function.

bode(sys)
grid

nyquist(sys)
grid

nichols(sys)
grid

Карты полюса/Нуля и Корневой годограф

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

$$ G = { - (2 s + 1) \over s^2 + 3 s + 2 } $$

Рисунок 1: обратная связь SISO.

Для значения усиления k = 0.7, можно построить полюса с обратной связью и нули с помощью pzmap:

s = tf('s');
G = -(2*s+1)/(s^2+3*s+2);
k = 0.7;
T = feedback(G*k,1);
pzmap(T)
grid, axis([-2 0 -1 1])

Полюса с обратной связью (отмеченный синим x's) лежат в левой полуплоскости, таким образом, обратная связь устойчива для этого выбора усиления k. Можно считать коэффициент затухания полюсов с обратной связью из этого графика (см. метки на радиальных линиях). Здесь коэффициент затухания - приблизительно 0,7, предлагая хорошо ослабленный ответ с обратной связью, как подтверждено:

clf
step(T)

Далее понять как усиление цикла k влияет на устойчивость с обратной связью, можно построить местоположение полюсов с обратной связью как функция k:

rlocus(G)
grid

Нажатие, где местоположение пересекает ось y, показывает, что полюса с обратной связью становятся нестабильными для k = 1.51. Таким образом, усиление цикла должно остаться меньшим, чем 1,5 для устойчивости с обратной связью.

Характеристики ответа

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

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

step(T)

Теперь щелкните правой кнопкой по графику отобразить Характеристики Максимальной чувствительности и Времени урегулирования и нажать на синие точки, чтобы считать соответствующее перерегулирование и значения времени урегулирования:

Анализ систем MIMO

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

sys = rss(3,2,2);
sys.A = [-0.5 -0.3 -0.2 ; 0 -1.3  -1.7; 0.4 1.7 -1.3];

массив 2 на 2 графиков, где каждый столбец показывает переходной процесс конкретного входного канала:

step(sys)

При желании можно сгруппировать все четыре ответа на одном графике путем щелчка правой кнопкой по графику и выбора I/O Grouping-> All submenu. Получившийся график показывают ниже.

Следующие дополнительные графики полезны для анализа систем MIMO:

  • График сингулярного значения (sigma), который показывает основные усиления частотной характеристики

  • Карта полюса/нуля для каждой пары ввода-вывода (iopzplot)

Например, постройте пиковое усиление sys как функция частоты:

sigma(sys)
grid

Сравнение систем

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

k1 = 0.4;
T1 = feedback(G*k1,1);
k2 = 1;
T2 = feedback(G*k2,1);
step(T,'b',T1,'r',T2,'g')
legend('k = 0.7','k = 0.4','k = 1')

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

|

Похожие темы