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

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

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

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

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, содержащей идентифицированную передаточную функцию.