Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
идентификация в MATLAB.doc
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
304.13 Кб
Скачать

Функции преобразования модели

Данная группа образована десятью функциями.

Функция idmodred

Функция idmodred понижает порядок модели (в тета-формате):

thred = idmodred(th)

thred = idmodred(th,order,OE)

Функция преобразует исходную модель th, заданную в тета-форма-гс, понижая ее порядок. Аргументы функции:

  • th — исходная модель;

  • order — желаемый порядок. Если order=[ ] (но умолчанию), то вы­водится график, показывающий, как управляемость и наблюдаемость зависят от порядка модели;

  • если OЕ='ое', то рассчитывается выходная ошибка возвращаемой модели, в любом другом случае понижается порядок модели шума.

Возвращаемая величина thred — модель пониженного порядка.

Функция th2arx

Функция th2arx преобразует модель тета-формата в ARX-модель:

[А,В] = th2arx(th)

[A,B,dA,dB] = th2arx(th)

Возвращаемая ARX-модель имеет вид, рассмотренный при описании функции arx2th (см. выше), в частности,

А = [I A1 A2 ... Ana];

В= [В0 B1 ... Bnb];

элементы матриц dA и dB являются стандартными отклонениями эле­ментов матриц А и В.

Функция th2ff

Функция th2ff вычисляет частотные характеристики и соответствую­щие стандартные отклонения по модели в тета-формате:

[g,phiv] = th2ff(th)

[g,phiv] = th2ff(th,ku,w,ky)

Здесь:

  • th — исходная модель в тета-формате;

  • w — вектор-строка, элементы которого являются частотами для расчета значений частотных характеристик;

  • ku и ку — векторы-строки, которые (в случае многомерного объек­та) задают соответственно номера входов и выходов, для которыхрассчитываются оценки частотных передаточных функций.

Возвращаемые величины — как в функции spa (см. выше).

Функция th2par

Функция th2par возвращает вектор коэффициентов из модели тета-формата:

[par,Р,lam] = th2par(th)

Аргумент th — модель в тета-формате. Возвращаемые величины:

• par — вектор коэффициентов модели следующего вида:

o для обобщенной модели«вход-выход»

o для модели переменных состояния данный вектор состоит из перечисленных по строкам последовательно матриц А, В, С, D, К и х0;

  • Р — матрица ковариаций приведенных коэффициентов;

  • lam — матрица ковариаций шума наблюдений.

Информация выводится только для свободных коэффициентов.

Функция th2poly

Функция th2poly преобразует матрицу модели тета-формата в матрицы обобщенной (многомерной) линейной модели (см. описание функции pem):

[A,B,C,D,F,lam,T] = th2poly(th)

Здесь lam — интенсивность шума наблюдений. Остальные величины пояснены выше.

Функция th2ss

Функция th2ss преобразует тета-модель в модель для переменных со­стояния:

[A,B,C,Q,K,X0] = th2ss(th)

[A,B,C,D,K,X0,dA,dB,dC,dD,dK,dX0] = th2ss(th)

Смысл аргументов и возвращаемых величин — тот же, что в преды­дущих функциях.

Функция th2tf

Функция th2tf преобразует модель тета-формата многомерного объек­та в вектор передаточных функций, связанных с выбранным входом:

[num,den] = th2tf(th)

[num,den] = th2tf(th,iu)

где

  • th — исходная модель тета-формата;

  • iu — номер входа, для которого строятся передаточные функции (но умолчанию 1).

Возвращаемые величины:

  • num — матрица, kстрока которой содержит коэффициенты поли­нома числителя частной передаточной функции от выбранного (iu) входа к k-му выходу;

  • den — вектор-строка, элементами которого являются коэффициенты знаменателя передаточных функций (одного и того же для всех частных передаточных функций).

К примеру, для непрерывного случая величины

num = [1 2]

den = [1 3 0]

соответствуют передаточной функции

Аналогично, для дискретной модели при

num=[2 4 0]

den - [1 2 3 5]

имеем передаточную функцию вида

2z2+4z

z3 +2z2 + 3z + 5

или (что то же самое) вида

Функция th2zp

Функция th2zp рассчитывает нули, полюса и статические коэффициенты передачи (коэффициенты усиления) модели тета-формата в общем случае многомерного объекта:

[zepo,k] = th2zp(th)

[zepo,k] = th2zp(th,ku,ky,thresh)

Здесь:

  • th — имя тета-модели;

  • ku и ky — вектор-строки, содержащие номера входов ju и выходов y, для которых будут рассчитываться частные передаточные функции и соответствующие им нули, полюса и коэффициенты усиления;

  • thresh — пороговая величина, при превышении которой рассчитываемые нули будут полагаться равными бесконечности, по умолчанию thresh=100000.

Возвращаемые величины:

  • zepo — матрица, в закодированном виде отражающая информациюо нулях и полюсах модели (в графическом виде данная информация может быть извлечена с помощью функции zpplot, в аналитическом — с помощью функции getzp);

  • к — матрица с информацией о статических коэффициентах усиления частных передаточных функций. Первую строку этой матрицы составляют элементы, имеющие значения (jy-l)*1000+ju, вторую — соответствующие коэффициенты усиления.

Проведем сравнение полюсов двух ARX-моделей — 2-го и 3-го по­рядков, оценивание которых проводится по одним и тем же экспе­риментальным данным.

» load dryer2 %3агрузка данных

» z = [y2 u2];

» th2 = arx(z,[2 2 1]); %Оценивание модели 2-го порядка

» th3 = arx(z,[3 3 1]); %Оценивание модели 3-го порядка

» %Нахождение нулей и полюсов моделей

» zp2 = th2zp(th2);

» zp3 = th2zp(th3);

» %Графическое представление нулей и полюсов

» zpplot(zpform(zp2,zp3))

Результаты приведены на рис. (график увеличен так, что отображены лишь нули — крестиками для модели 2-го порядка и квадратиками для модели 3-го порядка — и единичный круг. Данные результаты показывают, в частности, что обе модели являются устойчивыми, но у модели 3-го порядка запас устойчивости выше (ее полюса находятся дальше от границы круга).

Функция thc2thd

Функция thc2thd преобразует модель из непрерывной формы в дискретную:

thd = thc2thd(thc,T)

Здесь:

  • thc — исходная непрерывная тета-модель,

  • Т — интервал дискретизации,

  • thd — возвращаемая дискретная тета-модель.

Функция thd2thc

Функция thd2thc является обратной по отношению к предыдущей, то есть преобразует дискретную модель в непрерывную:

thс = thd2thc(thd)

thс = thd2thc(thd,delay,NoP)

Смысл величин thc и thd пояснен выше; аргумент delay определяет способ учета задержки в дискретной модели:

  • при delay = 'nodel' (по умолчанию) задержка учитывается звеном идеального запаздывания;

  • при delay =- 'del' задержка аппроксимируется непрерывным динамическим звеном;

  • значение NoP=1 запрещает вывод матрицы ковариаций коэффициентов модели.