refactor: mischer2 part 2

This commit is contained in:
Matthias Jung
2026-08-08 23:41:31 +02:00
parent 2c4bac37a1
commit 95584d75e8
8 changed files with 948 additions and 613 deletions
+124 -144
View File
File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 93 KiB

After

Width:  |  Height:  |  Size: 89 KiB

+3 -1
View File
@@ -48,7 +48,7 @@
node [transformer core, american, anchor=A2](T2){T2};
\draw(T2.B1)
to [short,-o] ++(+0.5,0) coordinate(h)
to [open, v=$U_3$] (h|-T2.B2)
to [open, v^={\rotatebox{90}{$U_3$}}] (h|-T2.B2)
to [short,o-] (T2.B2);
\draw(T2.A1)
to [short] ++(0,0.5) coordinate(h)
@@ -64,6 +64,8 @@
to [short] ++(0,-2.25) coordinate(end);
\draw(start)
to [cgenerator, v={$U_2$}] (end);
% Stable canvas for all three applet states:
\path (-1.9,-3.5) rectangle (6.92,1.9);
\end{scope}
\begin{scope}[shift={($(bb.south west)+(0.75/\getDarcImageFactor,-2.1/\getDarcImageFactor)$)}]
+367 -232
View File
File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 115 KiB

After

Width:  |  Height:  |  Size: 127 KiB

+24 -3
View File
@@ -20,7 +20,7 @@
\draw(-0.5,0) node [transformer core, american](T1){T1};
\draw(T1.A1)
to [short,-o] ++(-0.5,0) coordinate(h)
to [open, v=$U_1$] (h|-T1.A2)
to [open, v={${\color{DARCblue}U_1}$}] (h|-T1.A2)
to [short,o-] (T1.A2);
% Help coordinates:
@@ -48,7 +48,7 @@
node [transformer core, american, anchor=A2](T2){T2};
\draw(T2.B1)
to [short,-o] ++(+0.5,0) coordinate(h)
to [open, v=$U_3$] (h|-T2.B2)
to [open, v^={\rotatebox{90}{${\color{DARCblue}\scriptstyle U_3=U_1}$}}] (h|-T2.B2)
to [short,o-] (T2.B2);
\draw(T2.A1)
to [short] ++(0,0.5) coordinate(h)
@@ -63,7 +63,26 @@
to [short, *-] ++(-0.25,0)
to [short] ++(0,-2.25) coordinate(end);
\draw(start)
to [cgenerator, v={$U_2$}] (end);
to [cgenerator, v={${\color{DARCblue}\scriptstyle U_2=+1\,\mathrm{V}}$}] (end);
% Node voltages for this switching state:
\tikzset{node voltage/.style={
text=DARCblue,
font=\scriptsize,
inner sep=1pt
}}
\node[node voltage, anchor=north west]
at ($(T1.B1)+(0.95,0.4)$) {$+1\,\mathrm{V}+\frac{U_1}{2}$};
\node[node voltage, anchor=north west]
at ($(T1.B2)+(0.55,-0.2)$) {$+1\,\mathrm{V}-\frac{U_1}{2}$};
\node[node voltage, anchor=north east]
at ($(T2.A1)+(-0.35,0.4)$) {$+1\,\mathrm{V}-\frac{U_1}{2}$};
\node[node voltage, anchor=north east]
at ($(T2.A2)+(-0.7,-0.2)$) {$+1\,\mathrm{V}+\frac{U_1}{2}$};
\node[node voltage, anchor=south west]
at ($(T1-L2.midtap)+(0.18,0.18)$) {$+1\,\mathrm{V}$};
\node[node voltage, anchor=south east]
at ($(T2-L1.midtap)+(-0.18,0.18)$) {$0\,\mathrm{V}$};
% Conducting diode pair and signal paths:
\draw[DARCred] (T1.B1) to [short] (north);
@@ -77,6 +96,8 @@
to [short] ++(0,0.5) coordinate(activeTop)
to [short] (activeTop-|west)
to [short] (west);
% Stable canvas for all three applet states:
\path (-1.9,-3.5) rectangle (6.92,1.9);
\end{scope}
\begin{scope}[shift={($(bb.south west)+(0.75/\getDarcImageFactor,-2.1/\getDarcImageFactor)$)}]
+365 -226
View File
File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 113 KiB

After

Width:  |  Height:  |  Size: 126 KiB

+24 -3
View File
@@ -20,7 +20,7 @@
\draw(-0.5,0) node [transformer core, american](T1){T1};
\draw(T1.A1)
to [short,-o] ++(-0.5,0) coordinate(h)
to [open, v=$U_1$] (h|-T1.A2)
to [open, v={${\color{DARCblue}U_1}$}] (h|-T1.A2)
to [short,o-] (T1.A2);
% Help coordinates:
@@ -48,7 +48,7 @@
node [transformer core, american, anchor=A2](T2){T2};
\draw(T2.B1)
to [short,-o] ++(+0.5,0) coordinate(h)
to [open, v=$U_3$] (h|-T2.B2)
to [open, v^={\rotatebox{90}{${\color{DARCblue}\scriptstyle U_3=-U_1}$}}] (h|-T2.B2)
to [short,o-] (T2.B2);
\draw(T2.A1)
to [short] ++(0,0.5) coordinate(h)
@@ -63,7 +63,26 @@
to [short, *-] ++(-0.25,0)
to [short] ++(0,-2.25) coordinate(end);
\draw(start)
to [cgenerator, v={$U_2$}] (end);
to [cgenerator, v={${\color{DARCblue}\scriptstyle U_2=-1\,\mathrm{V}}$}] (end);
% Node voltages for this switching state:
\tikzset{node voltage/.style={
text=DARCblue,
font=\scriptsize,
inner sep=1pt
}}
\node[node voltage, anchor=north west]
at ($(T1.B1)+(0.95,0.4)$) {$-1\,\mathrm{V}+\frac{U_1}{2}$};
\node[node voltage, anchor=north west]
at ($(T1.B2)+(0.55,-0.2)$) {$-1\,\mathrm{V}-\frac{U_1}{2}$};
\node[node voltage, anchor=north east]
at ($(T2.A1)+(-0.35,0.4)$) {$-1\,\mathrm{V}+\frac{U_1}{2}$};
\node[node voltage, anchor=north east]
at ($(T2.A2)+(-0.7,-0.2)$) {$-1\,\mathrm{V}-\frac{U_1}{2}$};
\node[node voltage, anchor=south west]
at ($(T1-L2.midtap)+(0.18,0.18)$) {$-1\,\mathrm{V}$};
\node[node voltage, anchor=south east]
at ($(T2-L1.midtap)+(-0.18,0.18)$) {$0\,\mathrm{V}$};
% Conducting diode pair and signal paths:
\draw[DARCred] (T1.B1) to [short] (north);
@@ -77,6 +96,8 @@
\draw[DARCred] (south)
to [stroke diode, invert, draw=DARCred, fill=DARCred!10, *-*] (east);
\draw[DARCred] (east) |- (T2.A2);
% Stable canvas for all three applet states:
\path (-1.9,-3.5) rectangle (6.92,1.9);
\end{scope}
\begin{scope}[shift={($(bb.south west)+(0.75/\getDarcImageFactor,-2.1/\getDarcImageFactor)$)}]
+36 -1
View File
@@ -1,4 +1,4 @@
Mit dem folgenden Applet kann man beide Schaltzustände des Ringmodulators getrennt betrachten.<br><br>
Mit dem folgenden Applet kann man beide Schaltzustände des Ringmodulators getrennt betrachten. Dabei werden die Schwellspannungen der Diode vernachlässigt und angenommen, dass die Übertrager 1:1 übertragen. Außerdem wird für $U_2$ eine rechteckförmige Spannung angenommen. Das führt dazu, dass hart umgeschaltet wird. Ein Ausgangsfilter muss die hohen Frequenzen, die dadurch entstehen, später filtern.<br><br>
<html>
<button id="button0">Keine Aktion</button>
@@ -7,6 +7,34 @@ Mit dem folgenden Applet kann man beide Schaltzustände des Ringmodulators getre
<img id="ringmodulator" width="100%" style="display: block; margin-top: 1rem;" alt="Schaltzustände des Ringmodulators"/>
<div id="ringmodulator-formula1" class="ringmodulator-formula" style="display: none; margin-top: 1rem;">
Die Ausgangsspannung ergibt sich also zu:
<br>
<br>
$ U_3 = \left(+1\,\mathrm{V}+\frac{U_1}{2}\right) - \left(+1\,\mathrm{V}-\frac{U_1}{2}\right) = U_1 $
<br>
<br>
Die Multiplikation von $U_1$ und $U_2$ funktioniert!
</div>
<div id="ringmodulator-formula2" class="ringmodulator-formula" style="display: none; margin-top: 1rem;">
Die Ausgangsspannung ergibt sich also zu:
<br>
<br>
$ U_3 = \left(-1\,\mathrm{V}-\frac{U_1}{2}\right) - \left(-1\,\mathrm{V}+\frac{U_1}{2}\right) = -U_1 $ \]
<br>
<br>
Die Multiplikation von $U_1$ und $U_2$ funktioniert!
</div>
<script>
const images = [
"/pictures/1122.svg",
@@ -28,6 +56,13 @@ Mit dem folgenden Applet kann man beide Schaltzustände des Ringmodulators getre
function showState(index = 0) {
document.querySelector("#ringmodulator").src = images[index];
document.querySelectorAll(".ringmodulator-formula").forEach(function(formula) {
formula.style.display = "none";
});
if (index > 0) {
document.querySelector("#ringmodulator-formula" + index).style.display = "block";
}
}
showState(0);
+5 -3
View File
@@ -2,12 +2,14 @@
[picture:804:mischer_linear_vs_nichtlinear:Linearer Widerstand und nichtlineare Diode]
</margin>
Steuerkennlinien von Baugruppen oder Bauelementen können linearen, nichtlinearen oder abschnittsweise gemischten Charakter haben. Zum Beispiel hat ein Widerstand eine lineare Kennline, die Kennlinie einer Diode ist hingegen nichtlinear [ref:mischer_linear_vs_nichtlinear].
Im linearen Bereich von Steuerkennlinien finden keine Verzerrungen der Eingangssignale statt da zu jeder Änderung eines Eingangssignals eine prozentual gleichgroße Änderung des Ausgangssignals erfolgt. Mathematisch entspricht dies einem linearen Verhalten (Addition). Ein Beispiel für eine durchgehend lineare Steuerkennlinie ist ein Widerstand. An linearen Steuerkennlinien oder im linearen Bereich von Steuerkennlinien findet *kein* Mischprozess statt.
Bauelemente und Baugruppen können sich *linear* oder *nichtlinear* verhalten. Bei einem linearen Bauelement folgt die Ausgangsgröße der Eingangsgröße nach einem festen Zusammenhang. Ein idealer Widerstand besitzt beispielsweise eine lineare Kennlinie. Die Kennlinie einer Diode ist dagegen nichtlinear (vgl. [ref:mischer_linear_vs_nichtlinear]).
Im nichtlinearen Bereich von Steuerkennlinien finden Verzerrungen der Eingangssignale statt, da eine Änderung eines Eingangssignals keine prozentual gleichgroße Änderung eines Ausgangssignals bewirkt. Mathematisch entspricht dies einem nichtlinearen Verhalten bei dem eine Multiplikation der Eingangsgrößen stattfindet und daher zusätzliche Mischprodukte (abhängig von der Form der Kennlinie) entstehen. Daher findet im nichtlinearen Bereich von Steuerkennlinien immer ein Mischprozess statt. Mischprodukte erzeugen immer zusätzliche Frequenzen im Ausgangssignal welche überwiegend als Summen und Differenzen der Eingangsfrequenzen im Ausgangssignal vorliegen.
Für einen Mischprozess reicht ein rein lineares Verhalten nicht aus. Werden mehrere Signale durch eine lineare Schaltung übertragen, können sie zwar verstärkt, abgeschwächt oder miteinander addiert werden, sie beeinflussen sich dabei jedoch nicht gegenseitig. Es entstehen dadurch keine neuen Frequenzanteile.
Damit eine Mischung stattfinden kann, müssen die Eingangssignale miteinander verknüpft werden. Dies kann beispielsweise durch die nichtlineare Kennlinie einer Diode oder eines Transistors geschehen. Eine weitere häufig verwendete Möglichkeit besteht darin, das Eingangssignal mit Hilfe des Oszillatorsignals schnell ein- und auszuschalten beziehungsweise umzupolen. Auch ein solcher Schaltvorgang ist kein linearer Vorgang und bewirkt, dass beide Signale miteinander verknüpft werden.
Genau diese Eigenschaft wird in einem Mischer gezielt ausgenutzt. Deshalb arbeiten Mischstufen mit nichtlinearen Bauelementen oder mit Schaltungen, in denen Transistoren oder Dioden durch das Oszillatorsignal geschaltet werden.
In der Praxis bilden sich jedoch auch viele unerwünschte Mischprodukte höherer Ordnung, die durch technische Maßnahmen wie Filterung gezielt unterdrückt werden müssen.
[question:AF212]