Этот пример показывает, как идентифицировать передаточную функцию, чтобы соответствовать данным заданной частотной характеристики (FRD), содержащим дополнительный крен фазы, вызванный входной задержкой.
Для этого примера требуется лицензия Control System Toolbox™.
Получите данные частотной характеристики.
В данном примере используйте bode
для получения данных величины и фазового отклика для следующей системы:
Используйте 100 частоты в диапазоне от 0,1 рад/с до 10 рад/с, чтобы получить данные частотной характеристики. Использование frd
для создания объекта данных частотной характеристики.
freq = logspace(-1,1,100);
[mag, phase] = bode(tf([1 .2],[1 2 1 1],'InputDelay',.5),freq);
data = frd(mag.*exp(1j*phase*pi/180),freq);
data
является iddata
объект, который содержит данные частотной характеристики для описанной системы.
Оцените передаточную функцию, используя data
. Задайте неизвестную задержку транспортировки для идентифицированной передаточной функции.
np = 3; nz = 1; iodelay = NaN; sys = tfest(data,np,nz,iodelay);
np
и nz
задайте количество полюсов и нулей в идентифицированной передаточной функции, соответственно.
iodelay
задает неизвестную транспортную задержку для идентифицированной передаточной функции.
sys
является idtf
модель, содержащая идентифицированную передаточную функцию.