Оценка моделей передаточных функций с неизвестными задержками транспорта

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

Создайте модель передаточной функции с ожидаемыми числителем и структурой знаменателя и ограничениями задержки.

В данном примере данные эксперимента состоят из двух входов и одного выхода. Обе задержки транспорта неизвестны и имеют одинаковую верхнюю границу. Кроме того, передаточные функции от обоих входов к выходу идентичны по структуре.

init_sys = idtf(NaN(1,2),[1, NaN(1,3)],'IODelay',NaN);
init_sys.Structure(1).IODelay.Free = true;
init_sys.Structure(1).IODelay.Maximum = 7;

init_sys является idtf модель, описывающая структуру передаточной функции от одного входа к выходу. Передаточная функция состоит из одного нуля, трех полюсов и задержки переноса. NaN указывает неизвестные коэффициенты.

init_sys.Structure(1).IODelay.Free = true указывает, что задержка транспортировки не фиксирована.

init_sys.Structure(1).IODelay.Maximum = 7 устанавливает верхнюю границу задержки транспортировки равную 7 секундам.

Задайте передаточную функцию от обоих входов до выхода.

init_sys = [init_sys,init_sys];

Загрузите данные отклика системы во временной области и отключите данные.

load co2data;
Ts = 0.5; 
data = iddata(Output_exp1,Input_exp1,Ts);
T = getTrend(data);
T.InputOffset = [170,50];
T.OutputOffset = mean(data.y(1:75));
data = detrend(data, T);

Идентифицируйте модель передаточной функции для измеренных данных с помощью заданных ограничений задержки.

sys = tfest(data,init_sys);

sys является idtf модель, содержащая идентифицированную передаточную функцию.