Анализ систем с задержками по времени

Можно использовать команды анализа, такие как step, bode, или margin анализировать системы с задержками по времени. Программа не делает никаких приближений при выполнении такого анализа.

Например, рассмотрим следующий цикл управления, где объект моделируется как время первого порядка плюс мертвое:

Можно смоделировать систему с обратной связью из r на y следующими командами:

s = tf('s');
P = 5*exp(-3.4*s)/(s+1);
C = 0.1 * (1 + 1/(5*s));
T = feedback(P*C,1);

T является моделью пространства состояний с внутренней задержкой. Для получения дополнительной информации о моделях с внутренними задержками смотрите Закрытие циклов обратной связи с временными задержками.

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

stepplot(T)

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

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

Можно вывести соответствующую модель замкнутой системы Tff около

F = 0.3/(s+4);
P.InputName = 'u';  
P.OutputName = 'y';
C.InputName = 'e';  
C.OutputName = 'uc';
F.InputName = 'r';  
F.OutputName = 'uf';
Sum1 = sumblk('e','r','y','+-');    % e = r-y
Sum2 = sumblk('u','uf','uc','++');  % u = uf+uc
Tff = connect(P,C,F,Sum1,Sum2,'r','y');

и сравните его ответ с дизайном только обратной связи.

stepplot(T,Tff)
legend('No feedforward','Feedforward')

Figure contains an axes. The axes with title From: r To: y contains 2 objects of type line. These objects represent No feedforward, Feedforward.

Представление пространства состояний отслеживает внутренние задержки в обеих моделях.

Факторы, которые следует иметь в виду при анализе систем с внутренними задержками времени

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

Пульсация усиления:

s = tf('s');
G = exp(-5*s)/(s+1);
T = feedback(G,.5);
bodemag(T)

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

Колебания усиления:

G = 1 + 0.5 * exp(-3*s);
bodemag(G)

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

Jagged переходная характеристика:

G = exp(-s) * (0.8*s^2+s+2)/(s^2+s);
T = feedback(G,1);
stepplot(T)

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

Обратите внимание на обратные (эхо) изменения функции начального шага.

Хаотический ответ:

G = 1/(s+1) + exp(-4*s);
T = feedback(1,G);
stepplot(T,150)

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

Можно использовать инструменты Control System Toolbox™, чтобы смоделировать и проанализировать эти и другие странно появляющиеся программные продукты внутренних задержек.

Похожие примеры

Подробнее о