Вывод функций ЛАЧХ и ЛФЧХ в программе Maxima

Maxima — это консольная математическая программа для аналитических расчетов. Программа имеет версию с графическим интерфейсом, которая называется wxMaxima, ее можно бесплатно скачать с официального сайта.

Допустим имеется передаточная функция W(s) . Нужно получить две функций:

  • L(\omega) — ЛАЧХ (логарифмическая амплитудная частотная характеристика),
  • \Phi(\omega) — ЛФЧХ (логарифмическая фазовая частотная характеритиска),

где: \omega — угловая частота, рад/с.

Пример расчет ЛАЧХ и ЛФЧХ для передаточной функции апериодического звена второго порядка.


/* Передаточная функция */
W(s) := k/((1 + T[3]*s)*(1+T[4]*s)) $

/* Функция десятичного логарифма */
log10(x) := log(x) / log(10) $

print("ЛАЧХ") $
L(%omega) = 20 * log(cabs(W(%i*%omega)));

print("ЛФЧХ") $
%Phi(%omega) = carg(W(%i*%omega));

Вывод программ следующий.

ЛАЧХ

\mathrm{L}\left( \omega\right) =20\cdot \mathrm{log}\left( \frac{\left| k\right| }{\sqrt{{{T}_{3}^{2}}\cdot {{\omega}^{2}}+1}\cdot \sqrt{{{T}_{4}^{2}}\cdot {{\omega}^{2}}+1}}\right)

ЛФЧХ

\Phi\left(\omega\right) =-\mathrm{atan}\left( {{T}_{4}}\cdot \omega\right) -\mathrm{atan}\left( {{T}_{3}}\cdot \omega\right) +\mathrm{atan2}\left( 0,k\right)

В окне программы расчет выглядит следующим образом.

Вывод функций ЛАЧХ и ЛФЧХ в программе Maxima

Для тех, кто никогда не пользовался программой, объясню, что тут происходит. С помощью /* */ можно оставлять комментарии.

Сначала задается передаточная функция W(s) . Затем задается функция десятичного логарифма, потому что, к сожалению, она отсутствует в программе.

  • %i — мнимая единица.
  • %Phi — греческая буква \Phi
  • %omega — греческая буква \omega
  • функция cabs() возвращает модуль комплексного числа.
  • функция carg() возвращает аргумент комплексного числа.
Реклама

Передаточная функция двух RC-цепей с нагрузкой

Две RC-цепи с нагрузкой

Передаточная функция данной цепи:

W(p) = \frac{U2}{U1} = \frac{k}{p^2 k C1 R1 C2 R2 + p k (R1(C1 + C2) + C2 R2 + \frac{C1 R1 R2}{R3}) + 1}

где

k = \frac{R3}{R1 + R2 + R3}

Эта функция является передаточной функцией апериодического звена второго порядка:

W(p) = \frac{k}{T_2^2p^2 + T_1p + 1}

где, для данной схемы:

k = \frac{R3}{R1 + R2 + R3}
T_1 = k(C1 R1 + C2 R1 + C2 R2 + \frac{C1 R1 R2}{R3})
T_2 = \sqrt{k C1 R1 C2 R2}

Альтернативный вид передаточной функции:

W(p) = \frac{k}{(1 + pT_3 )(1 + pT_4)}

где:

T_3 = \frac{T_1}{2} - \sqrt{\frac{T_1^2}{4} - T_2^2}

T_4 = \frac{T_1}{2} + \sqrt{\frac{T_1^2}{4} - T_2^2}

Амплитудная частотная характеристика:

A\left(\omega\right)={{k}\over{\sqrt{1+\omega^2\,{\it T_3}^2}\,\sqrt{1+\omega^2\,{\it T_4}^2}}}

Фазовая частотная характеристика:

\phi(\omega)=-arctg(\omega T_3)-arctg(\omega T_4)

где:

  • \omega=2 \pi f  — круговая частота, рад/с.
  • f — частота, Гц.

Код для использования в математической программе Maxima:

k: R3 / (R1 + R2 + R3) $
T1: k * (R1 * (C1 + C2) + C2 * R2 + C1 * R1 * R2 / R3) $
T2: sqrt(k * C1 * R1 * C2 * R2) $
W1: k / (p^2 * T2^2 + p * T1 + 1 ) $
T3: T1 / 2 - sqrt(T1^2 / 4 - T2^2) $
T4: T1 / 2 + sqrt(T1^2 / 4 - T2^2) $
W2: k / ((1 + p * T3) * (1 + p * T4)) $
A(w) := k / (sqrt(1 + w^2 * T3^2) * sqrt(1 + w^2 * T4^2)) $
ph(w) := -atan(w * T3) - atan(w * T4) $
w: 2 * %pi * f $