Устойчивое усиление устойчивости и Худшего Случая неопределенной системы

В этом примере показано, как вычислить устойчивую устойчивость и исследовать усиление худшего случая системы с обратной связью, описанной в Системе Неопределенными Параметрами. Следующие команды создают ту систему.

m1 = ureal('m1',1,'percent',20);
m2 = ureal('m2',1,'percent',20);
k  = ureal('k',1,'percent',20);

s = zpk('s'); 
G1 = ss(1/s^2)/m1; 
G2 = ss(1/s^2)/m2; 


F = [0;G1]*[1 -1]+[1;-1]*[0,G2];
P = lft(F,k); 

C = 100*ss((s+1)/(.001*s+1))^3;

T = feedback(P*C,1); % Closed-loop uncertain system

Эта неопределенная модель в пространстве состояний T имеет три неопределенных параметра, k, m1, и m2, каждый равняется 1±20%-му неопределенному изменению. Используйте robstab анализировать ли система с обратной связью T надежно устойчиво для всех комбинаций возможных значений этих трех параметров.

[stabmarg,wcus] = robstab(T);
stabmarg
stabmarg = struct with fields:
           LowerBound: 2.8815
           UpperBound: 2.8864
    CriticalFrequency: 575.0339

Данные в структуре stabmarg включает границы на запасе устойчивости, которые указывают, что система управления может терпеть почти 3 раза заданную неопределенность прежде, чем идти нестабильная. Это устойчиво для всех изменений параметра указанного ±20%-го диапазона. Критическая частота является частотой, на которой система является самой близкой к нестабильности.

Структура wcus содержит наименьшие значения возмущения дестабилизации для каждого неопределенного элемента.

wcus
wcus = struct with fields:
     k: 1.5773
    m1: 0.4227
    m2: 0.4227

Можно оценить неопределенную модель в этих значениях возмущения с помощью usubs. Исследуйте местоположения полюса той модели худшего случая.

Tunst = usubs(T,wcus);   
damp(Tunst)
                                                                       
         Pole              Damping       Frequency      Time Constant  
                                       (rad/seconds)      (seconds)    
                                                                       
 -8.82e-01 + 1.55e-01i     9.85e-01       8.95e-01         1.13e+00    
 -8.82e-01 - 1.55e-01i     9.85e-01       8.95e-01         1.13e+00    
 -1.25e+00                 1.00e+00       1.25e+00         7.99e-01    
  6.88e-07 + 5.75e+02i    -1.20e-09       5.75e+02        -1.45e+06    
  6.88e-07 - 5.75e+02i    -1.20e-09       5.75e+02        -1.45e+06    
 -1.50e+03 + 6.44e+02i     9.19e-01       1.63e+03         6.67e-04    
 -1.50e+03 - 6.44e+02i     9.19e-01       1.63e+03         6.67e-04    

Система содержит пару полюсов очень близко к мнимой оси с коэффициентом затухания меньше, чем 1e-7. Этот результат подтверждает, что возмущения худшего случая как раз, чтобы дестабилизировать систему.

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

[wcg,wcug] = wcgain(T);
wcg
wcg = struct with fields:
           LowerBound: 1.0474
           UpperBound: 1.0732
    CriticalFrequency: 7.1860

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

Twc = usubs(T,wcug); 
Trand = usample(T,5); 
bodemag(Twc,'b--',Trand,'c:',{.1,100});
legend('Twc - worst-case','Trand - random samples','Location','SouthWest');

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

wcsigma(T,{.1,100})

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

| |

Похожие темы