Audio-Applikationen#
Hinweis
Setzen Sie zur Auswertung und graphischen Darstellung der Aufgaben Python und LTspice ein.
Resonanztransformator#
Berechnen Sie den Frequenzgang der komplexen Amplitude \(\underline{H}_u(f)=U_1(f)/U_0(f)\) der folgenden Transformator-Schaltung eines dynamischen Mikrofons Abb. 47.

Abb. 47 Ersatzschaltung eines dynamischen Mikrofons.#
Stellen Sie die Ergebnisse als Funktion der Frequenz grafisch dar:
als Ortskurve in der komplexen Ebene,
als Betrag \(\lvert \underline{H}_u \lvert\) und Phase \(\phi_{H_u}\) über \(\log(f/f_0)\) (normierte Frequenz) und
als Bode-Darstellung \(20 \cdot \log \lvert \underline{H}_u \lvert\) über \(\log(f/f_0)\) (normierte Frequenz).
Bei der Analyse und Erläuterung interessieren Grenzfrequenzen, Eckfrequenzen, Hochpass/Tiefpass-Verhalten, die Resonanz-Güte und die Rolle der einzelnen Komponenten im Hinblick auf die genannten Frequenzen.
Lösung
Um den idealen Tranformator aufzulösen muss man:
\(R_0\) auf die Sekundärseite transformieren; erscheint dort als \(R_{0s}=R_0/\text{ü}^2\) mit ü=1/30.
\(U_0\) durch eine sekundärseitige Ersatzspannungsquelle \(U_{0s}=U_0/\text{ü}\) ersetzen.
Neues Netzwerk:

mit
import numpy as np
import matplotlib.pyplot as plt
# %% Spezifikation
R0 = 3 # Innenwiderstand des Mikrofons
L0 = 25 # Hauptinduktivitaet
Ls = 1 # Streuinduktivitaet
Rw = 100 # Wicklungswiderstand
Cw = 800e-12 # Wicklungskapazitaet
Rv = 100e3 # Verstaerker-Eingangswiderstand
Cv = 200e-12 # Verstaerker- und Kabelkapazitaet
u = 1/30 # Uebertragungsfaktor u1/u2
# %% Frequenzvektor
f = np.logspace(0, 5, 1000)
w = 2 * np.pi * f
f0 = 1
# %% Impedanzen/Admittanzen
Y1 = 1j*w*Cw + 1/(1j*w*L0)
Z1 = 1/Y1
Yv = 1j*w*Cv + 1/Rv
Zv = 1/Yv
Z2 = Rw + 1j*w*Ls
Zp = Z1*(Z2 + Zv)/(Z1 + Z2 + Zv)
R0q = R0/u**2
# %% Uebertragungsfunktion
H = 1/u * Zv/(Z2 + Zv) * Zp/(R0q + Zp)
# %% Ortskurve von H(f)
fig1 = plt.figure(1)
plt.title('H-Ebene')
plt.plot(np.real(H), np.imag(H))
plt.xlabel('Re')
plt.ylabel('Im')
plt.legend(('H'))
plt.grid()
plt.show()
# %% Betrag und Phase von H(f)
fig2 = plt.figure(2)
plt.title('Betrag und Phase')
plt.subplot(211)
plt.semilogx(f, np.abs(H))
# plt.xlabel(r'$\log(f/f_0)$')
plt.ylabel(r'|H|')
plt.grid()
plt.subplot(212)
plt.semilogx(f, np.angle(H))
plt.xlabel(r'$\log(f/f_0)$')
plt.ylabel(r'arg(H)')
plt.grid()
plt.show()
# %% Betragsfrequenzgang von H(f)
H_dB = 20*np.log10(np.abs(H))
fig3 = plt.figure(3)
plt.title('Betragsfrequenzgang')
plt.semilogx(f, H_dB)
plt.xlabel(r'$\log(f/f_0)$')
plt.ylabel(r'$|H|$ in dB')
plt.grid()
plt.show()
Ersatzschaltbild eines Lautsprechers#
Die dargestellte Schaltung in Abb. 48 ist ein vereinfachtes Ersatzschaltbild eines elektrodynamischen Lautsprechers. Dabei repräsentiert \(\underline{Z}_1 = R_1 + j \omega L_1\) die Impedanz der ruhenden Schwingspule und \(\underline{Z}_M\), die Parallelschaltung aus \(R_2\), \(L_2\) und \(C_2\), repräsentiert die dynamisch-mechanischen Eigenschaften des Systems.

Abb. 48 Ersatzschaltbild eines Lautsprechers.#
Eingangsimpedanz#
Drücken Sie die Eingangsimpedanz \(\underline{Z}_E\) der Schaltung als Funktion der verwandten Bauteile (\(R_1\), \(L_1\), \(R_2\), \(L_2\), \(C_2\)) und der Kreisfrequenz \(\omega\) aus.
Lösung
Ortskurve#
Für niedrige Frequenzen (\(0 \leq f \leq 100\,Hz\)) kann der Beitrag \(\omega L_1\) der Induktivität \(L_1\) zur Eingangsimpedanz vernachlässigt werden. Konstruieren Sie mit dieser Vereinfachung die Ortskurve der Eingangsimpedanz \(\underline{Z}_{E0}\) als Funktion der Kreisfrequenz \(\omega\).
Lösung
Konstruktion der Ortskurve \(Z_{E0}(\omega)\):
\(Y_M\) zeichnen: Gerade
\(Y_M\) invertieren \(\rightarrow Z_M\): Kreis
\(R_1\) addieren \(\rightarrow Z_{E0}\): verschobener Kreis
Wert der Impedanz#
Berechnen Sie den Wert der Impedanz \(\underline{Z}_{E0}\) bei der Frequenz \(f\) = 100 Hz.
Lösung
Ortskurve#
Geben Sie näherungsweise die Ortskurve der Impedanz \(\underline{Z}_E\) als Funktion der Kreisfrequenz \(\omega\) an, inklusive des Beitrags der Induktivität \(L_1\).
Lösung
Für \(f \leq 100\,Hz\) ist \(\omega L_1 \leq 0.125\), daraus folgt für \(f \leq 100\,Hz\) dass \(Z_E \approx Z_{E0}\). Für \(f >> 100\,Hz\) ist \(Z_{E0} \approx R_1\) und \(Z_E \approx R_1 + j \omega L_1\).
Bode-Diagramm#
Der Lautsprecher werde aus einer Sinusspannungsquelle mit \(\hat{U}_0\) = 10 V und Innenwiderstand \(R_i\) = 0,5 \(\Omega\) gespeist. Stellen Sie das Verhältnis der Effektivwerte von \(I_R\) und \(I\) sowie den Phasenwinkel von \(I_R\) zu \(I\) als Funktion der Frequenz in einem Bode-Diagramm dar.
Berechnen Sie die abgestrahlte Schallleistung \(P_S = R I^2_{R,eff}\) als Funktion der normierten Verstimmung \(\nu = \omega/\omega_0 - \omega_0/\omega\), wobei \(\omega_0=(L_2 C_2)^{-1/2}\) ist, und stellen Sie \(P_S(\nu)\) graphisch dar. Wie groß ist die von der Schaltung aufgenommene Wirkleistung bei \(\omega=\omega_0\)?
Lösung
Die Güte \(Q=\frac{R_2}{\sqrt{\frac{L_2}{C_2}}}=15\).
Eine vernünftige Darstellung ist doppelt-logarithmisch (Bode-Diagramm).
Die Schallleistung ergibt sich wie folgt:
Für die exakte Berechnung \(Z_E\) aus the section ex:ZE einsetzen, genähert the section ex:ZE0 benutzen. Wenn \(\omega = \omega_0\), dann \(\nu = 0\):
import numpy as np
import matplotlib.pyplot as plt
# %% Spezifikation
L1 = 200e-6
R1 = 3
C2 = 1000e-6
L2 = 4e-3
R2 = 30
# %% Frequenzvektor
f = np.logspace(0, 4, 2000)
w = 2 * np.pi * f
# %% Impedanzen/Admittanzen
YM = 1j*w*C2 + 1/(1j*w*L2) + 1/R2
ZM = 1/YM
ZE = R1 + 1j*w*L1 + ZM
ZE0 = R1 + ZM
# %% Ortskurve von ZE0(w)
fig1 = plt.figure(1)
plt.title('Ortskurve')
plt.plot(np.real(ZE0), np.imag(ZE0), label=r'$Z_{E0}$')
plt.xlabel('Re')
plt.ylabel('Im')
plt.legend()
plt.grid()
plt.show()
# %% Uebertragungsfunktion
Q = R2/(np.sqrt(L2/C2)) # Guete
print(Q)
w0 = 1/np.sqrt(L2*C2)
print(w0)
v = (w/w0 - w0/w) # Verstimmung
HI = 1/(1 + 1j*Q*v)
HI_dB = 20*np.log10(np.abs(HI))
w_w0 = w/w0
# %% Betrag und Phase von HI(w/w0)
fig2 = plt.figure(2)
plt.title('Betrag und Phase')
plt.subplot(211)
plt.semilogx(w_w0, HI_dB)
plt.ylabel(r'$|I_R/I|$ in dB' )
plt.grid()
plt.subplot(212)
plt.semilogx(w_w0, np.angle(HI))
plt.xlabel(r'$\log(\omega/\omega_0)$')
plt.ylabel(r'$\arg(I_R/I)$')
plt.grid()
plt.show()
# %% Schallleistung Ps
U0s = 10
Ri = 0.5
Ps = R2 * (U0s**2/2)/(np.abs(ZE + Ri)**2) * 1/(1 + Q**2 * v**2)
fig3 = plt.figure(3)
plt.title(r'Schallleistung')
plt.plot(v, Ps)
plt.xlabel(r'$\nu$')
plt.ylabel(r'$P_S$ in W')
plt.axis([-4, 4, 0, 1.5])
plt.grid()
plt.show()

15.0
500.0
/var/folders/bs/dl5x4l2n6xv6ywrg8knjtw440000gn/T/ipykernel_23939/2282262599.py:52: MatplotlibDeprecationWarning: Auto-removal of overlapping axes is deprecated since 3.6 and will be removed two minor releases later; explicitly call ax.remove() as needed.
plt.subplot(211)

