kit-books

books of obscure KIT shit
git clone git://source.orangerot.dev/university/kit-books.git
Log | Files | Refs | LICENSE

commit d8d7ae8c148db14b3417b9917fab0395e6386c71
parent 9014a44ec0d3f1d0d8f90e8667abae04e8bca879
Author: Orangerot <purple@orangerot.dev>
Date:   Mon,  4 Aug 2025 15:42:53 +0200

feat: etit-es cheatsheet (WIP)

Diffstat:
Aetit-es/summary.typ | 448+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 448 insertions(+), 0 deletions(-)

diff --git a/etit-es/summary.typ b/etit-es/summary.typ @@ -0,0 +1,448 @@ +#import "@preview/zap:0.2.1" + +#set columns(gutter: 5pt) +#set rect(outset: 0pt) +#set figure(supplement: "", numbering: none) +// #set block(spacing: 5pt) +#let section(..args) = block(width: 100%, fill: silver, spacing: 5pt, below: 5pt, breakable: false, ..args) +#set page( + // columns: 2, + numbering: "1", + margin: 1cm, + header: rect(width: 100%, stroke: (bottom: 1pt), inset: (left: 0pt, right: 0pt))[ + #smallcaps[Elektronische Schaltungen] + #h(1fr) + Gero Beckmann + ] +) + +#let out(name, pos) = { + import zap.cetz.draw: * + on-layer(1, { + circle(pos, name: name, radius: .1, fill: white) + }) +} +#columns(2, [ + +#section[ +== E 24 Reihe +#{range(24) + .map(n => calc.pow(calc.root(10,24),n)) + .map(e => str(calc.round(e, digits: 1) + calc.pow(10,-10)).slice(0,3)) + .join(" | ") +} + +#let units = ( + ([Giga], $10^9$), + ([Mega], $10^6$), + ([Kilo], $10^3$), + ([Milli], $10^(-3)$), + ([Mikro $mu$], $10^(-6)$), + ([Nano], $10^(-9)$), + ([Piko], $10^(-12)$), + ([Femto], $10^(-15)$), +) + +#text(size: 8pt)[#table(columns: units.len() * (1fr,), inset: 3pt, table.header(..units.map(array.first)), ..units.map(array.last)) +] + +#grid(columns: 2 * (1fr,), align: (right, left), gutter: 10pt, + +[Parallelwiderstände], $R_1 || R_2 = 1 / (1 / R_1 + 1 / R_2)$, +[Spannungsteiler], $U_2 = U dot R_2 / (R_1 + R_2)$, +[Stromteiler], $I_1 = I dot = R_2 / (R_2 + R_2)$, +[3 dB-Grenzfrequenz], $f_"3dB" = 1 / (2 pi dot C dot R)$ +) + +] +#colbreak() + +#section[ +== Diode #box(zap.canvas({zap.diode("d", (0,0),(1,0))})) + +$ +I = I_s dot (e^(U/U_T) -1) approx 26"mv" " mit " U_T = (k_B dot T)/mono(e) +$ + + #zap.canvas({ + import zap: * + import zap.cetz.draw: * + + scale(.6) + content((-5,0), [Kleinsignalersatzschaltbild]) + out("A", (0,0)) + out("K", (3,0)) + resistor("rd", "A", "K", label: (content: $r_D$, anchor: "south", distance: 0pt)) + + translate((0.8,-2.5)) + content((-5.8,0), [Erweitertes \ Kleinsignalersatzschaltbild]) + scale(.6) + out("A", (0,0)) + out("K", (5,0)) + resistor("RB", "A", (3,0), label: (content: $R_B$, anchor: "south", distance: 0pt)) + resistor("rd", (2,0), "K", label: (content: $r_D$, anchor: "south", distance: 0pt)) + capacitor("CD", + (rel: (0.5, 1), to: "rd.in"), + (rel: (-.5, 1), to: "K"), + label: (content: $C_D$, anchor: "north", distance: 1pt)) + wire("CD.in", (rel: (0,-1))) + wire("CD.out", (rel: (0,-1))) + }) +] +]) + +#section[ + +#grid(columns: 2 * (1fr,), [ +== Bipolartransistor #box[#zap.canvas({ +import zap: * +import zap.draw: * +scale(.5) +pnp("Q", (0,0)) +content("Q.b", "B", anchor: "east", padding: (right: 5pt)) +content("Q.c", "C", anchor: "west", padding: (left: 5pt)) +content("Q.e", "E", anchor: "west", padding: (left: 5pt)) +})] +#grid(columns: 2, align: (right, left), gutter: 10pt, +[Steilheit], $S = I_(C,A) / U_T$, +[Kleinsignal-Eingangs-Widerstand], $r_"BE" = beta / S$ +) +],[ +#grid(columns: 2 * (1fr,), [ +#figure(zap.canvas({ +import zap: * +import zap.cetz.draw: * +scale(.7) +out("UBEE", (0,0)) +out("UBEA", (0,-2)) +out("UCEE", (5,0)) +out("UCEA", (5,-2)) + +node("B", (1,0)) +content("B", anchor: "south", padding: 5pt, [Basis]) +node("K", (3.5,0)) +content("K", anchor: "south", padding: 5pt, [Kollektor]) +node("E", (2.5,-2)) +content("E", anchor: "north", padding: 5pt, [Emitter]) + +wire("UBEE", "B", i: "hi") +wire("UCEE", "K") +wire("UBEA", "UCEA") + +resistor("RBE", "B", ((), "|-", "E"), label: (content: $r_"BE"$, anchor: "south", distance: 0pt)) +isource("SUBE", "K", ((), "|-", "E"), label: (content: $S dot u_"BE"$, distance: 1pt)) +set-style(zap: (wires: (stroke: red))) +wire("B", (2.5,0), stroke: red) +capacitor("CBE", ("E"), (rel: (0,2)), stroke: red, label: (content: text(fill:red, $C_"BE"$), anchor: "west", distance: 5pt)) +capacitor("", ("K"), (rel: (-1,0)), stroke: red) +content((rel: (-1.5,0), to: "K"), text(fill: red, $C_"BC"$)) +}), +caption: [#text(fill:red)[vollständiges] Kleinsignalersatzschaltbild]) +], [ +#figure(zap.canvas({ +import zap: * +import zap.cetz.draw: * +scale(.7) +out("UBEE", (0,0)) +out("UBEA", (0,-2)) +out("UCEE", (5,0)) +out("UCEA", (5,-2)) + +node("B", (1.5,0)) +content("B", anchor: "south", padding: 5pt, [Basis]) +node("K", (3.5,0)) +content("K", anchor: "south", padding: 5pt, [Kollektor]) +node("E", (2.5,-2)) +content("E", anchor: "north", padding: 5pt, [Emitter]) + +wire("UBEE", "B", i: "hi") +wire("UCEE", "K") +wire("UBEA", "UCEA") + +diode("RBE", "B", ((), "|-", "E")) +isource("SUBE", "K", ((), "|-", "E"), label: (content: $S dot u_"BE"$, distance: 1pt)) +}),caption: [Großsignalersatzschaltbild]) +]) +]) + +#table(columns: 3 * (1fr,), align: center, +table.header([Ermitterschaltung], [Basisschaltung], [Kollektorschaltung]),[ +#set text(size: 9pt) +#zap.canvas({ +import zap: * +import zap.cetz.draw: * + + +scale(.8) +out("e", (0,0)) +out("a", (2.5,1)) +out("eg", (0,-1)) +out("ag", (2.5,-1)) + +pnp("n1", (1.5,0)) +wire("e", "n1.b") +wire("n1.c", ((), "|-", "a"), "a") +wire("n1.e", ((), "|-", "ag"), "ag") +wire("n1.e", ((), "|-", "eg"), "eg") + +scale(.3) +resistor("", "n1.e", (rel: (0,-2)), stroke: red, label: (content: text(fill: red, size:8pt,$R_E$), distance: 1pt)) + +line(("e",.2,"eg"), ("eg", .2, "e"), name: "line", mark: (end: (symbol: ">", fill: black))) +content("line", anchor: "east", padding: .2, $U_e$) + +line(("a",.2,"ag"), ("ag", .2, "a"), name: "line", mark: (end: (symbol: ">", fill: black))) +content("line", anchor: "east", padding: .2, $U_a$) +}) +], +[ #zap.canvas({ +import zap: * +import zap.cetz.draw: * +scale(.8) +out("e", (-1.25,0)) +out("a", (1.5,1)) +out("eg", (-1.25,-1)) +out("ag", (1.5,-1)) + +rotate(x:180deg) +rotate(z:-90deg) +pnp("n1", (0,0)) +set-transform(none) + +wire("e", "n1.e") +wire("n1.c", ((), "|-", "a"), "a") +wire("n1.b", ((), "|-", "ag"), "ag") +wire("n1.b", ((), "|-", "eg"), "eg") + +line(("e",.2,"eg"), ("eg", .2, "e"), name: "line", mark: (end: (symbol: ">", fill: black))) +content("line", anchor: "east", padding: .2, $U_e$) + +line(("a",.2,"ag"), ("ag", .2, "a"), name: "line", mark: (end: (symbol: ">", fill: black))) +content("line", anchor: "east", padding: .2, $U_a$) +}) +],[ + +#zap.canvas({ +import zap: * +import zap.cetz.draw: * +scale(.8) +out("e", (0,0)) +out("a", (2.5,1)) +out("eg", (0,-1)) +out("ag", (2.5,-1)) + +rotate(x: 180deg) +pnp("n1", (1.5,0)) +wire("e", "n1.b") +wire("n1.e", ((), "|-", "a"), "a") +wire("n1.c", ((), "|-", "ag"), "ag") +wire("n1.c", ((), "|-", "eg"), "eg") + +line(("e",.2,"eg"), ("eg", .2, "e"), name: "line", mark: (end: (symbol: ">", fill: black))) +content("line", anchor: "east", padding: .2, $U_e$) + +line(("a",.2,"ag"), ("ag", .2, "a"), name: "line", mark: (end: (symbol: ">", fill: black))) +content("line", anchor: "east", padding: .2, $U_a$) +}) +] +,[ +#text(size: 8pt)[ + #grid(columns: 2 * (1fr,), [ +$ +A &= -S R_C \ +r_e &= r_"BE" \ +r_a &= r_"CE" || R_C +$ + ],text(fill: red)[ +Stromgegen-\kopplung $ +A &= -R_C / R_E \ +r_e &= r_"BE" \ +r_a &= r_"CE" || R_C +$ + ]) +] +], [ + +#text(size: 9pt, $ +A &= S R_C \ +r_e &= 1 / S \ +r_a &= r_"CE" || R_C +$) +], [ +#text(size: 9pt, $ +A &= 1 \ +r_e &= r_"BE" + beta R_E \ +r_a &= 1 / S +$) +]) + +] + +#section[ +#grid(columns: (2fr, 3fr), [ +== Feldeffekttransistor (FET) #box[#zap.canvas({ + import zap: * + import zap.draw: * + scale(.5) + pmos("Q", (0,0)) + content("Q.gl", "G", anchor: "east", padding: (right: 5pt)) + content("Q.d", "D", anchor: "west", padding: (left: 5pt)) + content("Q.s", "S", anchor: "west", padding: (left: 5pt)) +})] + +$ +r_"DS" = (partial U_"DS") / (partial I_D) = (abs(U_A) + U_"DS") / I_D \ +S = (partial I_D) / (partial U_"DS") = beta (U_"GS" - U_"th") \ +beta = mu dot C'_"ox" dot omega / l +$ +], [ + #grid(columns: 2 * (1fr,), align: center, [ + #scale(60%, reflow: true)[#table(columns: (auto, 1fr, 1fr), [], [n-Kanal], [p-Kanal], + rotate(-90deg, reflow: true)[normal\ leitend], + zap.canvas({ zap.nmos("", (), mode: "depletion") }), + zap.canvas({ zap.pmos("", (), mode: "depletion") }), + rotate(-90deg, reflow: true)[normal\ sperrend], + zap.canvas({ zap.nmos("", ()) }), + zap.canvas({ zap.pmos("", ()) }), + )] +], [ + #figure(scale(65%, reflow: true)[ + #zap.canvas({ + import zap: * + import zap.cetz.draw: * + scale(.9) + out("G", (0,0)) + content("G", "G", anchor: "east", padding: 5pt) + out("S", (0,-2)) + content("S", "S", anchor: "east", padding: 5pt) + out("D", (6,0)) + content("D", "D", anchor: "west", padding: 5pt) + out("DA", (6,-2)) + node("", (4,0)) + node("", (2,-2)) + node("", (4,-2)) + isource("Su", (2,0), (2,-2), i: (label: [#h(.6cm)$S dot u_"GS"$], position: end + top )) + resistor("", (4,0), (4,-2), label: (content: $r_"DS"$, anchor: "south", distance: 3pt)) + wire((2,0), "D") + wire("S", "DA") + line(("G",.2,"S"), ("S", .2, "G"), name: "line", mark: (end: (symbol: ">", fill: black))) + content("line", anchor: "east", padding: .2, $u_"GS"$) + line(("D",.2,"DA"), ("DA", .2, "D"), name: "line", mark: (end: (symbol: ">", fill: black))) + content("line", anchor: "east", padding: .2, $u_"DS"$) + }) + ], caption: [ Kleinsignalersatzschaltbild ]) +]) + +$ +I_D &= cases( + 0 & U_"GS" <= U_"th", + beta dot ((U_"GS" - U_"th") - U_"th"^2 / 2) dot (1 + U_"DS" / U_A) & "linearer Bereich", + beta / 2 dot (U_"GS" - U_"th")^2 dot (1 + U_"DS" / U_A) & "Sättigungsbereich" +) +$ +]) + + +#table(columns: 3 * (1fr,), align: center, +table.header([Source-Schaltung], [Gate-Schaltung], [Drain-Schaltung]) ,[ +#zap.canvas({ +import zap: * +import zap.cetz.draw: * + +scale(.8) +out("e", (0,0)) +out("a", (2.5,1)) +out("eg", (0,-1)) +out("ag", (2.5,-1)) + +scale(.5) +nmos("n1", (3,0.5)) +wire("e", "n1.g") +wire("n1.d", ((), "|-", "a"), "a") +wire("n1.s", ((), "|-", "ag"), "ag") +wire("n1.s", ((), "|-", "eg"), "eg") + +line(("e",.2,"eg"), ("eg", .2, "e"), name: "line", mark: (end: (symbol: ">", fill: black))) +content("line", anchor: "east", padding: .2, $U_e$) + +line(("a",.2,"ag"), ("ag", .2, "a"), name: "line", mark: (end: (symbol: ">", fill: black))) +content("line", anchor: "east", padding: .2, $U_a$) +}) +], +[ +#zap.canvas({ +import zap: * +import zap.cetz.draw: * +scale(.8) +out("e", (-1.25,0)) +out("a", (1.5,1)) +out("eg", (-1.25,-1)) +out("ag", (1.5,-1)) + +rotate(x:180deg) +rotate(z:-90deg) +scale(.5) +nmos("n1", (0,0)) +set-transform(none) + +wire("e", "n1.s") +wire("n1.d", ((), "|-", "a"), "a") +wire("n1.g", ((), "|-", "ag"), "ag") +wire("n1.g", ((), "|-", "eg"), "eg") + +line(("e",.2,"eg"), ("eg", .2, "e"), name: "line", mark: (end: (symbol: ">", fill: black))) +content("line", anchor: "east", padding: .2, $U_e$) + +line(("a",.2,"ag"), ("ag", .2, "a"), name: "line", mark: (end: (symbol: ">", fill: black))) +content("line", anchor: "east", padding: .2, $U_a$) +}) +], [ +#zap.canvas({ +import zap: * +import zap.cetz.draw: * +scale(.8) +out("e", (0,0)) +out("a", (2.5,1)) +out("eg", (0,-1)) +out("ag", (2.5,-1)) + +rotate(x: 180deg) +scale(.5) +nmos("n1", (3,.5)) +wire("e", "n1.g") +wire("n1.s", ((), "|-", "a"), "a") +wire("n1.d", ((), "|-", "ag"), "ag") +wire("n1.d", ((), "|-", "eg"), "eg") + +line(("e",.2,"eg"), ("eg", .2, "e"), name: "line", mark: (end: (symbol: ">", fill: black))) +content("line", anchor: "east", padding: .2, $U_e$) + +line(("a",.2,"ag"), ("ag", .2, "a"), name: "line", mark: (end: (symbol: ">", fill: black))) +content("line", anchor: "east", padding: .2, $U_a$) +}) +], +[ +#text(size: 9pt, $ +r_e &= oo \ +r_a &= R_D || r_"DS" \ +A &= -S dot (R_D || r_"DS") +$) + +] ,[ +#text(size: 9pt, $ +r_e &= 1/S \ +r_a &= R_D || r_"DS" \ +A &= S dot (R_D || r_"DS") +$) +], [ +#text(size: 9pt, +$ +r_e &= oo \ +r_a &= 1 / S || R_S \ +A &= (S dot R_S) / (1 + S dot R_S) +$ +) +]) +] + +