Улучшение устойчивости при сохранении характеристик разомкнутого цикла

В этом примере показано, как использовать функцию Robust Control Toolbox™ ncfsyn улучшить робастность устойчивости системы с обратной связью, приблизительно обеспечивая высокое усиление и характеристики низкого усиления ответа разомкнутого цикла.

Модель объекта управления

Модель объекта управления является слегка ослабленной, системой второго порядка

$$\frac{16}{s^2+0.16 s+16}$$

Диаграмма Боде ясно показывает резонирующий пик.

P = tf(16,[1 0.16 16]);
bode(P)

Цели с обратной связью и первоначальный проект контроллера

Система с обратной связью должна

  • Будьте нечувствительны к шуму, включая 60dB/decade затухание вне 20 рад/секунда

  • Имейте интегральное действие и пропускную способность чувствительности по крайней мере 0,5 рад/секунда

  • Имейте частоты среза усиления, не больше, чем 7

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

K_PI = pid(1,0.8);
K_rolloff = tf(1,[1/20 1]);
Kprop = K_PI*K_rolloff;
bodemag(P*Kprop); grid

Желаемый высокочастотный спад, интегральное действие и местоположение частоты среза усиления все очевидны из графика. К сожалению, этот контроллер не стабилизирует систему с обратной связью, как свидетельствуется Stable поле от allmargin вычисление.

allmargin(P*Kprop)
ans = 

  struct with fields:

     GainMargin: 0.1096
    GMFrequency: 4.1967
    PhaseMargin: -20.4811
    PMFrequency: 5.6155
    DelayMargin: 1.0552
    DMFrequency: 5.6155
         Stable: 0

Устойчивость с обратной связью и граничное улучшение Используя ncfsyn

Команда ncfsyn может использоваться, чтобы получить устойчивость с обратной связью и улучшенные запасы устойчивости без значительного ухудшения в большом (>> 1) и маленький (<<1) области усиления ответа разомкнутого цикла. Значение Gamma (3-й выходной аргумент), меньше чем 3 указывают на успех (скромное ухудшение усиления наряду с приемлемыми полями робастности). Обратите внимание на то, что ncfsyn принимает положительную обратную связь, таким образом, необходимо инвертировать знак Kprop. У нового диспетчера, К, стабилизирует номинальную динамику и, кажется, есть достойные поля робастности, по крайней мере, когда измерено в классическом смысле.

[negK,~,Gamma] = ncfsyn(P,-Kprop);
K = -negK;   % flip sign back
Gamma
allmargin(P*K)
Gamma =

    1.9883


ans = 

  struct with fields:

     GainMargin: [6.3299 11.1423]
    GMFrequency: [1.6110 15.1667]
    PhaseMargin: [80.0276 -99.6641 63.7989]
    PMFrequency: [0.4472 3.1460 5.2319]
    DelayMargin: [3.1236 1.4443 0.2128]
    DMFrequency: [0.4472 3.1460 5.2319]
         Stable: 1

Как ожидалось с обратной связью устойчиво, и с Gamma меньше чем 2, запасы по амплитуде и фазе соответствуют кустарным способом стандарты.

Предвещайте величину контроллеров

Gamma дает индикацию относительно ухудшения усиления (в движении от Kprop к K) мы должны ожидать, и в больших и небольших областях усиления цикла. С Gamma приблизительно 2, мы ожидаем только приблизительно 6 дБ (20*log10 (Гамма)) сокращение усиления больших областей усиления цикла, и не больше, чем увеличение усиления на 6 дБ небольших областей усиления цикла. Предвещайте графики величины, подтверждают это.

subplot(1,2,1)
bodemag(Kprop,'r',K,'g'); grid
legend('Proposed Controller, Kprop','Redesigned Controller, K')
title('Controller Gains')
subplot(1,2,2)
bodemag(P*Kprop,'r',P*K,'g'); grid
legend('P*Kprop','P*K')
title('Open-Loop Gains')

Рисунок 1: Контроллер и Коэффициенты усиления разомкнутого контура

Ответ с обратной связью, чтобы послать импульсы во входе объекта

Импульсивное воздействие во входе объекта ослабляется эффективно за несколько секунд. Для сравнения также показывают некомпенсированный ответ объекта.

TF = 4;
subplot(1,2,1)
impulse(feedback(P,K),'b',P,'r',TF);
legend('Closed-Loop','Open-Loop')
title('Plant response, y, to impulse at plant input')
subplot(1,2,2);
impulse(-feedback(K*P,1),'b',TF)
legend('Closed-Loop Control action, u')

Рисунок 2: Контроллер и Коэффициенты усиления разомкнутого контура

Чувствительность и дополнительные функции чувствительности

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

S = feedback(1,P*K);
T = 1-S;
clf
bodemag(S,T,{1e-2,1e2});
grid

Заключения

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