В качестве примера системы с обратной связью с неопределенными параметрами рассмотрим систему с двумя тележками «ACC Benchmark» [13], состоящую из двух тележек без трения, соединенных пружиной, показанной следующим образом.
Задача бенчмарка ACC
Система имеет модель блока, показанную ниже, где отдельные тележки имеют соответствующие передаточные функции.
Параметры m1, m2 и k неопределенны, равны одному плюс-минус 20%:
m1 = 1 ± 0.2 m2 = 1 ± 0.2 k = 1 ± 0.2
«Бенчмарк ACC» Система с двумя тележками Блока Схема y1 = P (s) u1
Верхний штриховой блок имеет матрицу передаточной функции F (s):
Этот код создает неопределенные системные модели P
показано выше:
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);
Переменная P
является объектом SISO с неопределенным пространством состояний (USS) с четырьмя состояниями и тремя неопределенными параметрами, m1
, m2
, и k
. Восстановить номинальный объект можно с помощью команды:
zpk(P.nominal)
ans = 1 ------------- s^2 (s^2 + 2) Continuous-time zero/pole/gain model.
Если у неопределенной модели P (s) есть контроллер отрицательной обратной связи LTI
затем можно сформировать контроллер и систему с обратной связью y1 = T (s) u1 и просмотреть шаг системы с обратной связью на временном интервале от t = 0 до t = 0,1 для случайной выборки Монте-Карло из пяти комбинаций трех неопределенных параметров k
, m1
, и m2
используя этот код:
C=100*ss((s+1)/(.001*s+1))^3; % LTI controller T=feedback(P*C,1); % closed-loop uncertain system step(usample(T,5),.1);