Серийное соединение пассивных систем

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

Серийное соединение пассивных систем

Рассмотрите соединение двух подсистем G1 и G2 последовательно. Взаимосвязанная система H дан отображением от входа 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)

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

В то время как серийное соединение пассивных систем не пассивно в целом, существует отношение между индексами пассивности G1 и G2 и индексы пассивности H=G2G1Пусть ν1 и ν2 обозначьте входные индексы пассивности для G1 и G2, и позвольте ρ1 и ρ2 обозначьте выходные индексы пассивности. Если все эти индексы положительны, то входной индекс пассивности ν и выходной индекс пассивности ρ для серийного соединения H удовлетворить

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

Другими словами, нехватка пассивности при вводах или выводах H не хуже, чем выражения правой стороны. Для получения дополнительной информации смотрите статью Arcak, M. и Зонтага, 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

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

|

Похожие темы