Modellieren von komplexen Widerständen/Impedanzen
Einleitung:
In diesem Artikel geht es um fortgeschrittene Modellierung von Widerständen/Impedanzen. Im analogen Bereich hat man z.B. sehr oft mit Frequenzgängen, Spannungs-/Stromabhängigkeiten und parasitären Phänomenen zu tun.
Ein Widerstand ist in Wahrheit niemals einfach nur ein Widerstand!
Die RF/HF/UHF-Mannschaft hat damit auch mehr als oft genug zu tun - denn die von denen benutzten Bauteile (L/C/R) zeigen u.U. einen extrem freakigen Frequenzgang richtung Hochfrequenz, der beim Design unbedingt berücksichtigt werden muss. Es geht hier darum, dass auch einfachste Komponenten wie z.B. Widerstände ,abhängig von bestimmten Konditionen, bestimmtes -komplexes- Verhalten zeigen - und dass man zuweilen gezwungen ist, dieses Verhalten nachzubilden.
Es geht auch um funktionale Modelle/Schaltungsblöcke. Hier steht man oft vor der Aufgabe, eine "BlackBox" zu designen, welche ein bestimmtes (z.B. frequenzabhängiges) Verhalten zeigt. Ein großes Stichwort ist hier Impedanz (frequenzabhängiger Widerstand). Diese -quasi aus dem Nichts- zu erschaffen und sie dem Verhalten eines realen Objekts nachzumodellieren ist überhaupt nicht so einfach.
Bisher hat man sich mit Tricks beholfen. Oft machte man sich die Eigenschaften von passiven Komponenten (z.B. Spulen) zu nutze und modellierte fleißig nach dem Trial&Error Prinzip - solang bis es einigermaßen gepasst hat. Ein Beispiel:
Ein "normaler" Widerstand wird mit einer relativ dicken Spule in Serie geschaltet. Beide zusammen zeigen dann ein Verhalten eines frequenzabhängigen Widerstandes. Leider ist die Annäherung in den meisten Fällen viel zu grob und ungenügend und deshalb abzulehnen.
Lösungen:
1) Studentenlösung
Die "Studentenlösung" setzt sich hauptsächlich aus den neuen Quellen ("Behavioral Sources") in LTspice und jeder Menge Mathematik zusammen:
Seit geraumer Zeit bietet LTspice das Feature an, Quellen und mathematische Funktionen zu koppeln.
Es ist also möglich mit Hilfe mathematischer Funktionen das Verhalten einer Quelle zu konditionieren.
Beispiel für Spulen: http://iiitdelectronics.blogspot.de/2013/04/how-to-simulate-frequency-dependent.htmlDie Studenten erinnern sich sofort an Ohm's Gesetz - jubilieren weil sie endlich ihre Formeln anwenden können - und bauen sich einen Widerstand (oder eine Spule) zunächst einmal aus einer Voltage- und Current-Source zusammen. Denn R=U/I.
Als nächstes werden die Quellen wie gewünscht konditioniert - z.B. kann man den Widerstand abhängig von der inversen Wurzel der Frequenz machen. Wie das genau geht ist stark abhängig von der mathematischen Funktion und von der Dimension, von der Du Dein Bauteil abhängig machen möchtest. Es sei auf jeden Fall ein Blick in die Hilfe und/oder Nutzer-Referenz empfohlen. (klick hier: http://ltspiceusers.ch/showthread.php?t=142)
Oft ist eine LAPLACE-Transformation vonnöten. Sie juggelt die Daten zwischen den verschiedenen Dimensionen - denn (z.B.) eine globale Variable "Frequency" existiert in LTspice nicht. Man muss sie zunächst berechnen. Dies geht mit dem Laplace-Kommando.
Theoretisch könnte man mit den "Behavioral Sources" alles mögliche modellieren - dazu muss man aber die Elementargesetze der Elektronik und natürlich auch der Mathematik kennen - und es ist relativ aufwendig. Man muss zunächst einmal die "Sources" Bugfrei integrieren, was bei der SPICE-Syntax nicht immer unkompliziert ist - und dann muss man sich auch noch mit den Formeln auseinandersetzen. Schlussendlich muss man sich dann damit abfinden, das SPICE -schonwieder- zwei neue Quellen im Code hat. Das ist -zumindest- der Übersicht abträglich - der Arbeitsgeschwindigkeit mit Sicherheit auch.
Fazit: Es funktioniert - aber es braucht schon studierte Leute - oder Leute die vor Mathematik nicht die geringste Angst haben.
2) Hacker-Lösung
Als "Underdog" mit abgebrochenem Studium bin ich einfach zu faul. Ich habe keine Lust, blos für eine popelige Impedanz ein riesen Theater mit 2 neuen "Sources" zu machen. Es muss einfacher gehen.
Es geht.
Im Netz werden einige Listen mit bisher -nicht offiziell dokumentierten- Funktionen [<-klickmich] in LTspice kolportiert. Und siehe da: Auch für Widerstände ist was dabei:
- normalerweise platzierst Du einen Widerstand, klickst anschließend mit <rechte Maustaste> drauf und tippst den Wert ein.
- Der Trick funktioniert so: Statt einfach nur den Wert einzugeben, tun wir mal was anderes:
Hinweis: Der Term "Frequenz" muss in LTspice mittels: {abs(s)/6.283185} berechnet werden. Am Ende steht dort also ganz einfach auf deutsch: R=20k Laplace 1/sqrt(freq) - Der Widerstand ändert sich invers zur Wurzel der Frequenz.
- Wir machen eine AC-Analyse und lassen uns die Spannung (über dem Widerstand) geteilt durch den Strom (durch den Widerstand) plotten.
- Das Ergebnis lassen wir uns "linear" anzeigen - die y-achse schaltet auf "Ohm" bzw. "Widerstand" um.
- Wir sehen, dass unser Widerstand nun frequenzabhängig ist - mission accomplished
- Wer ein bisschen Mathematik beherrscht, kann nun mit dem Feintuning beginnen (z.B. zusätzliche Faktoren, Summanden, Operationen etc..)
- Das Schöne ist, dass unsere Impedanz auf dem Schaltplan wie ein "normaler" Widerstand daherkommt - großes Plus für Übersichtlichkeit
- Die Syntax/Kommandos für diese "geheime" Funktion von Widerständen sind identisch mit jenen der "Behavioral Sources" (siehe hierzu Hilfe oder Referenz)
- Der Trick funktioniert so: Statt einfach nur den Wert einzugeben, tun wir mal was anderes:
Wir geben folgendes ein:
Code:
Bitte,
Anmelden
oder
Registrieren to view codes content!
Hinweis: Der Term "Frequenz" muss in LTspice mittels: {abs(s)/6.283185} berechnet werden. Am Ende steht dort also ganz einfach auf deutsch: R=20k Laplace 1/sqrt(freq) - Der Widerstand ändert sich invers zur Wurzel der Frequenz.
- Wir machen eine AC-Analyse und lassen uns die Spannung (über dem Widerstand) geteilt durch den Strom (durch den Widerstand) plotten.
- Das Ergebnis lassen wir uns "linear" anzeigen - die y-achse schaltet auf "Ohm" bzw. "Widerstand" um.
- Wir sehen, dass unser Widerstand nun frequenzabhängig ist - mission accomplished
- Wer ein bisschen Mathematik beherrscht, kann nun mit dem Feintuning beginnen (z.B. zusätzliche Faktoren, Summanden, Operationen etc..)
- Das Schöne ist, dass unsere Impedanz auf dem Schaltplan wie ein "normaler" Widerstand daherkommt - großes Plus für Übersichtlichkeit
- Die Syntax/Kommandos für diese "geheime" Funktion von Widerständen sind identisch mit jenen der "Behavioral Sources" (siehe hierzu Hilfe oder Referenz)
Zuletzt bearbeitet: