Преобразование моделей
Следует напомнить, что полученные модели представлены в так называемом тета-формате (внутреннем видом матричных моделей) и являются дискретными. Для преобразования моделей из тета-формата в вид удобный для даль- нейшего использования при анализе и синтезе систем автоматизации технологических процессов в пакете System Identification Toolbox MATLAB имеются специальные функции. Функция th2arx преобразует модель тета-формата в ARX модель >> [A,B]=th2arx(darx) A = Columns 1 through 7 1.0000 -0.9601 0.0338 -0.1035 0.0890 -0.0283 0.1383 Column 8 -0.0661 B = Columns 1 through 7 0 0.0010 0.0039 0.0643 0.0625 0.0200 -0.0079 Columns 8 through 10 -0.0187 -0.0193 -0.0079 Функция th2ff вычисляет частотные характеристики и соответствующие стандартные отклонения по модели в тета-формате. В качестве аргумента функции может выступать любая из рассмотренных ранее моделей, например darx >> [g,phiv]=th2ff(darx) IDFRD model g. Contains Frequency Response Data for 1 output and 1 input and SpectrumData for disturbances at 1 output at 128 frequency points, ranging from 0.24544 rad/s to 31.416 rad/s. Output Channels: температура Input Channels: мощноcть Estimated from data set zdanv using ARX. IDFRD model phiv. Contains SpectrumData for 1 signal at 128 frequency points, ranging from 0.24544 rad/s to 31.416 rad/s. Output Channels: температура Estimated from data set zdanv using ARX/ Функция th2poly преобразует матрицу модели тета-формата в матрицы обобщенной (многомерной) линейной модели
>> [A,B,C,D,K,lan,T]=th2poly(zpem) A = 1.0000 -1.7534 1.0765 -0.2489 B = 0 0.0009 0.0012 0.0688 C = 1.0000 -0.8043 0.2732 0.1086 D = K = lan = 0.0016 T = 0.1000 Здесь параметр lan определяет интенсивность шума наблюдений. Функция th2ss преобразует тета-модель в модель для переменных состояния. В качестве аргумента функции может выступать любая из рассмотренных ранее моделей, например darmax >> [A,B,C,D,K,x0]=th2ss(darmax) A = 1.6483 1.0000 -0.7054 0 B = 0.0050 0.0456 C = 1 0 D = K = 1.3703 -1.1387 x0 = Функция th2tf преобразует модель тета-формата многомерного объекта в вектор передаточных функций, связанных с выбранным входом >> [num,den]=th2tf(zn4s) num = 0 -0.0012 0.0069 0.0632 den = 1.0000 -1.7732 1.1013 -0.2554.
Для представления передаточной функции в виде привычном для нашего взгляда воспользуемся командой tf из пакета Control System Toolbox >> zzn4s=tf(num,den,0.1) Transfer function: -0.001236 z^2 + 0.006901 z + 0.06318 ---------------------------------------------------- z^3 - 1.773 z^2 + 1.101 z - 0.2554
Преобразуем дискретную модель тета-формата в непрерывную модель и представим ее в виде передаточной функции >> sn4s=thd2thc(zn4s); >> [num,den]=th2tf(sn4s); >> sysn4s=tf(num,den) Transfer function: 0.5732 s^2 - 14.16 s + 135.4 ---------------------------------------------- s^3 + 13.65 s^2 + 86.04 s + 142.9 Для обратного преобразования непрерывной модели в дискретную существует функция thc2thd. Функция th2zp рассчитывает нули, полюса и статические коэффициенты передачи (коэффициенты усиления) модели тета-формата zn4s в общем случае многомерного объекта >> [zepo,k]=th2zp(zn4s) zepo = 1.0000 61.0000 21.0000 81.0000 10.4662 8.7202 0.7842 0.0085 -4.8834 3.3276 0.4945 + 0.2848i 0.0095 + 0.0176i Inf Inf 0.4945 - 0.2848i 0.6312 k = 1.0000 0.9476 0.0145 Информацию о нулях и полюсах модели zn4s можно получить с помощью команды >> [zero,polus]=getzp(zepo) zero = 10.4662 -4.8834 polus = 0.7842 0.4945 + 0.2848i 0.4945 - 0.2848i Рис. 4.7. графики нулей и полюсов модели zn4s На рис. 4.7. представлен график нулей (обозначены круглишком) и полюсов (обозначены крестиком) модели zn4s, который получен с помощью команды >> zpplot(zpform(zepo)). Данные графика показывают, что модель является устойчивой, т. к. полюса модели находятся внутри окружности с радиусом, равным 1 и проходящей через точку с координатами (–1; j0). Аналогичные команды преобразования моделей имеются в пакете Control System Toolbox, которые описаны в третьей главе.
|