Материал: MATLAB 5. Анализ технических систем. Слепокуров Ю.С

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

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

Команда bode(sysl, '<тип_линии1>',..., sysN, '< тип_линииN>')

позволяет задать цвет, тип и маркеры линий для характеристик каждой модели.

Функции [mag, phase, w] == bode(sys), [mag, phase] = bode(sys, w)

выполняют расчет амплитудных и фазовых частотных характеристик. Выходные аргументы mag и phase являются трехмерными массивами, последняя размерность которых - частота. Единицу измерения амплитудной характеристики можно преобразовать в децибелы (дБ) следующим образом: magdb = 20*logl0(mag); единица измерения фазы - град, единица измерения частоты - рад/с.

Аргументы:

Выходные аргументы mag и phase являются трехмерными массивами размера Nu Ny length(w):

для одномерных моделей массивы mag(1, 1, k) и phase(1, 1, k) определяют значения амплитудной и фазовой характеристик на частотах w(k);

для многомерных моделей массивы mag(i, j, k) и phase(i, j, k) определяют значения амплитудной и фазовой частотных характеристик для передаточных функций Нij от j-гo входа до i-гo выхода на частотах w(k).

Пример:

Построить логарифмические частотные характеристики для непрерывной lti-модели с одним входом и одним выходом.

g = tf([1 0.1 7.5],[1 0.12 9 0 0]); bode(g)

Перейдем от непрерывной модели к дискретной с периодом дискретности Ts = 0,5 с и построим на одном графике их частотные характеристики:

» gd=c2d(g,0.5)

Transfer function:

0.121 z^3 + 0.07256 z^2 + 0.06758 z + 0.1146

----------------------------------------------------------

z^4 - 2.138 z^3 + 2.218 z^2 - 2.021 z + 0.9418

Sampling time: 0.5

» bode(g,'k',gd,'k:')

Для непрерывных моделей функция bode рассчитывает частотные

характеристики для значений переменной передаточной функции s

= j

на

мнимой

оси.

Рассматриваются только положительные значения .

Для

ss-

моделей

частотная

характеристика

рассчитывается

по

формуле

C j I

A 1 B

D . При расчетах матрицу

A целесообразно привести к форме

Хессенберга для экономии машинного времени и повышения точности результата.

Для дискретных моделей частотная характеристика равна передаточной

функции

при значении ее переменной на окружности

единичного радиуса

z e j Ts .

Из-за периодичности частотной характеристики дискретной модели

она рассчитывается только от нуля до частоты

/Ts

(частота Найквиста),

т.е. для верхней половины единичной окружности. Если период дискретности Ts не определен, он принимается по умолчанию равным единице.

Предупреждение: если lti-модель имеет полюс на мнимой оси в случае непрерывной модели или на окружности единичного радиуса в случае дискретной модели, а вектор w содержит частоту, соответствующую этой точке, то амплитудная характеристика на этой частоте равна бесконечности, и в этом случае выдается предупреждающее сообщение (Singularity in freq. response due to jw-axis or unit circle pole).

margin

Определение запасов устойчивости по фазе и модулю

 

 

Синтаксис: margin(sys)

[Gm, Pm, Wcg, Wcp] = margin(sys)

[Gm, Pm, Wcg, Wcp] = margin(mag, phase, w)

Группа команд и функций margin вычисляет запасы устойчивости по фазе и модулю, а также соответствующие частоты для lti-моделей одномерных разомкнутых систем. Значения запасов устойчивости указывают, на сколько частотная характеристика разомкнутой системы удалена от критической точки

(-1 +j0).

Запас устойчивости по модулю - это значение амплитудной частотной характеристики на частоте, где фазовая частотная характеристика имеет значение -180 град.

Запас устойчивости по фазе - это разность между значением фазовой частотной характеристики и - 180 град на частоте среза.

Частота среза - это частота, где значение амплитудной частотной характеристики равно 1.0, или 0 дБ.

Как правило, запас устойчивости по фазе в пределах между 30 и 60 град обеспечивает приемлемый компромисс между устойчивостью и полосой пропускания.

Команда margin(sys) строит логарифмические частотные характеристики разомкнутой системы с указанием запасов ее устойчивости. Команда применима как к непрерывным, так и к дискретным lti-моделям.

Функция [Gm, Pm, Wcg, Wcp] = margin(sys) рассчитывает запас устойчивости по амплитуде Gm, запас устойчивости по фазе Pm и соответствующие частоты Wcg и Wcp для данной модели одномерной разомкнутой системы sys. Если имеется несколько точек пересечения амплитудной характеристики на уровне 0 дБ и фазовой - на уровне -180 град, то возвращаются наименьшие значения соответствующих запасов устойчивости.

Функция [Gm, Pm, Wcg, Wcp] = margin(mag, phase, w) возвращает значения запасов устойчивости, вычисленных по значениям массива точек (mag, phase, w), где mag - амплитуда, phase - фаза и w - частота. В этом случае при определении запасов устойчивости необходимо выполнить интерполяцию для определения соответствующих точек пересечения, что приводит к потере точности вычислений.

Пример:

Рассчитать запасы устойчивости по фазе и модулю, если задана следующая дискретная передаточная функция разомкнутой системы:

» hd=tf([0.04798 0.0464],[1 -1.81 0.9048],0.1) Transfer function:

0.04798 z + 0.0464

--------------------------

z^2 - 1.81 z + 0.9048

Sampling time: 0.1

»[Gm,Pm,Wcg,Wcp]=margin(hd);

»[20*log10(Gm),Pm,Wcg,Wcp]

ans =

6.2424 13.5712 5.4374 4.3544

Для графического отображения этих значений

» margin(hd)

impulse

Импульсная переходная функция

 

 

Синтаксис: impulse(sys) impulse(sys, t)

impulse(sys1, sys2,..., sysN) impulse(sys1, sys2, ...,sysN, t)

impulse(sys1, 'PlotStylel',..., sysN, PlotStyleN') impulse(sys1, 'PlotStylel',..., sysN, 'PlotStyleN', t) [y, t, x] = impulse(sys)

[y, t, x] = impulse(sys, t)

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

Команда impulse(sys) строит график импульсной переходной функции для lti-модели sys. Эта модель может быть непрерывной и дискретной, одномерной и многомерной. Для многомерной модели строится набор импульсных переходных функций по каждому каналу входа-выхода. Продолжительность моделирования определяется автоматически так, чтобы отобразить основные особенности переходных процессов.

Команда impulse(sys, t) позволяет явно указать продолжительность моделирования либо в виде момента окончания t = Tfinal в секундах, либо в виде вектора t = 0:dt:Tfinal. Для дискретных моделей значение dt должно соответствовать периоду дискретности; для непрерывных моделей значение dt должно быть достаточно малым, чтобы учесть наиболее быстрые изменения переходного процесса.

Команды impulse(sysl, sys2, ..., sysN), impulse(sysl, sys2, ..., sysN, t) по-

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

Команды impulse(sysl, 'PlotStylel', ..., sysN, 'PlotStyleN'), impulse(sysl, 'PlotStylel', ..., sysN, 'PlotStyleN', t) позволяют разметить импульсные пере-

ходные функции для нескольких lti-моделей sysl,..., sysN на одном графике различными стилями.

Функции [у, t, х] = impulse(sys), [у, t, x] = impulse(sys, t) вычисляют им-

пульсные переходные функции для вектора выходов у, вектор моментов времени t, значения переменных состояния х. Графики при этом не строятся.

Для одномерных моделей массив у имеет следующие размеры: число строк равно длине вектора t, а число столбцов - числу выходов. Аналогично массив х имеет число строк, равное длине вектора t, и число столбцов, равное количеству переменных состояния.

Для многомерных моделей со многими входами переходные функции для каждого канала размещаются в трехмерном массиве у размера (длина вектора 1) (число выходов) (число входов). При этом значение у(:, :, j) соответствует переходной функции по j-му входу. Аналогично трехмерный массив х имеет размер (длина вектора 1) (число переменных состояния) (число входов).

Пример:

Построить импульсную переходную функцию для модели 2-го порядка в пространстве состояний

Источник: https://studfile.net/preview/16565812/