exponenta event banner

Последовательное соединение пассивных систем

Этот пример иллюстрирует свойства последовательного соединения пассивных систем.

Последовательное соединение пассивных систем

Рассмотрим взаимосвязь двух подсистем G1 и G2 последовательно. Взаимосвязанная система Н задается отображением от входа u к выходу y2.

В отличие от параллельных взаимосвязей и взаимосвязей обратной связи пассивность подсистем G1 и G2 не гарантирует пассивность для взаимосвязанной системы H. Возьмем, например,

G1 (s) = 5s2 + 3s + 1s2 + 2s + 1, G2 (s) = s2 + s + 5s + 0 .1s3 + 2s2 + 3s + 4.

Обе системы пассивны, что подтверждается

G1 = tf([5 3 1],[1,2,1]);
isPassive(G1)
ans = logical
   1

G2 = tf([1,1,5,.1],[1,2,3,4]);
isPassive(G2)
ans = logical
   1

Однако последовательное соединение G1 и G2 не является пассивным:

H = G2*G1;
isPassive(H)
ans = logical
   0

Это подтверждается проверкой того, что Найквистский сюжет G2G1 не является положительным реальным.

nyquist(H)

Figure contains an axes. The axes contains 2 objects of type line. This object represents H.

Индексы пассивности для последовательного соединения

Хотя последовательное соединение пассивных систем не является пассивным в целом, существует зависимость между индексами пассивности G1 и G2 и индексами пассивности H = G2G1. Пусть start1 и start2 обозначают входные индексы пассивности для G1 и G2, а formula 1 и α2 обозначают выходные индексы пассивности. Если все эти индексы являются положительными, то входной индекс пассивности

ν≥-0.125ρ1ρ2,ρ≥-0.125ν1ν2.

Другими словами, недостаток пассивности на входах или выходах Н не хуже, чем правые выражения. Подробности см. в статье Arcak, M. и Sontag, E.D., «Диагональная устойчивость класса циклических систем и его связь с критерием секущей», Automatica, Vol 42, № 9, 2006, стр. 1531-1537. Проверьте эти нижние границы для примера выше.

% Output passivity index for G1
rho1 = getPassiveIndex(G1,'output');
% Output passivity index for G2
rho2 = getPassiveIndex(G2,'output');
% Input passivity index for H=G2*G1
nu = getPassiveIndex(H,'input')
nu = -1.2886
% Lower bound
-0.125/(rho1*rho2)
ans = -2.4194

Аналогично, проверьте нижнюю границу для индекса пассивности на выходе H.

% Input passivity index for G1
nu1 = getPassiveIndex(G1,'input');
% Input passivity index for G2
nu2 = getPassiveIndex(G2,'input');
% Output passivity index for H=G2*G1
rho = getPassiveIndex(H,'output')
rho = -0.6966
% Lower bound
-0.125/(nu1*nu2)
ans = -6.0000

См. также

|

Связанные темы