Simulationstechnik _______________________________________________________________ Teil 4: Zeitbereichsanalyse 4.1 Zeitbereichs- (Transienten-, Time Domain-) Analyse der OP-Schaltung Transientenanalyse mit einer sinusförmigen Eingangsspannung sinusförmige Eingangsspannung mit einer Amplitude von 1V und einer Frequenz von 100mHz, Simulationsanweisung auf Transientenanalyse bis STOP Time = 50s einstellen. 03/2017 Seite 1 Simulationstechnik _______________________________________________________________ Deutung? 4.2 Sprungantwort der Verstärker-Schaltung Stellen Sie die Quelle V3 auf eine pulsförmige Spannung um und setzen den Widerstand R2 auf 1k, die Kapazität C1 erhält die Variable CV, die zwei Werte annehmen soll: 1µF und 10µF Vinitial = 0V, Von = -5V, Tdelay = 100ms, Trise = 100ns, Tfall = 1ms, Ton = 1s, Tperiod = 10s, Ncycles = 1 03/2017 Seite 2 Simulationstechnik _______________________________________________________________ 03/2017 Seite 3 Simulationstechnik _______________________________________________________________ 4.3 Oszillator-Schaltung Erstellen Sie die Schaltung eines Wien-Brücken-Oszillators, simulieren Sie das Zeitbereichsverhalten bis zum Zeitpunkt t=0.5s, die Schrittweite (maximum time step) sei 10us. Der Parameter rs wird in Form einer Liste mit drei Werten (1k; 1.5k und 5k) eingesetzt. Wie verhält sich die Spannung am Knoten „out“? Setzen Sie jetzt Startwerte für die Knotenspannung am negativen Eingang des OP fest, das Kommando hierzu lautet: .ic V(nin)=0.5V Wie verhält sich die Schaltung nun? 4.4 Transformationen vom Zeit- in den Frequenzbereich Oftmals ist es sehr hilfreich, wenn der Entwickler nicht nur die Kurvenform eines Zeitsignales sieht, sondern auch weiß, welche Frequenzen im betreffenden Signal auftreten. In LTSPICE gibt es zwei Möglichkeiten, ein Signal aus dem Zeit- in den Frequenzbereich zu transformieren: Die Fourier- und die Fast-Fouriertransformation. Bei der Fouriertransformation wird eine Berechnung der Frequenzanteile einer Spannung oder eines Stromes bereits während der Transientensimulation durchgeführt und das Ergebnis im „SPICE Error Log“ ausgegeben. Bei der Fast- 03/2017 Seite 4 Simulationstechnik _______________________________________________________________ Fouriertransformation wird das Ergebnis einer Simulation im Zeitbereich genommen und in den Frequenzbereich transformiert. 4.4.1 Fouriertransformation Mit der SPICE-Anweisung .four wird eine Fourieranalyse während der Transientensimulation durchgeführt. Die Syntax dazu lautet: .four <Grundfrequenz> [Anzahl der zu berechnenden Harmonischen] Ausgangsgrößen Ohne Angabe der Anzahl zu berechnender Harmonischer werden außer der Grundwelle noch 9 Oberwellen (also bis zur 9-fachen Grundfrequenz) berechnet. Beispiel: .four 100 V(out) liefert im Ergebnisfile (SPICE Error Log) folgende Ausgabe: Fourier components of V(out) DC component: -0.661115 Harmonic Number Frequency [Hz] Fourier Component Normalized Component 1 1.000e+02 1.854e+00 1.000e+00 2 2.000e+02 5.716e-01 3.083e-01 3 3.000e+02 8.920e-02 4.810e-02 4 4.000e+02 7.213e-02 3.890e-02 5 5.000e+02 5.730e-02 3.090e-02 6 6.000e+02 2.496e-02 1.346e-02 7 7.000e+02 2.719e-02 1.466e-02 8 8.000e+02 4.596e-03 2.479e-03 9 9.000e+02 1.588e-02 8.562e-03 Total Harmonic Distortion: 31.666437%(31.675900%) Phase [degree] Normalized Phase [deg] 0.03° 90.18° -2.18° 89.34° -0.81° 97.76° -7.17° 112.92° -5.46° 0.00° 90.14° -2.21° 89.31° -0.84° 97.73° -7.21° 112.89° -5.49° 4.4.2 Fast-Fourier-Transformation Eine Fast-Fourier-Transformation wird anhand der Ergebnisdaten einer Transienten-Analyse mit Hilfe einer Näherungsfunktion berechnet. Es muss also zunächst eine Transienten-Simulation durchgeführt und die interessierenden Spannungen oder Ströme dargestellt werden. Dann kann bei aktiviertem Ausgabefenster über den Menüpunkt „View > FFT“ die Fast-Fourier-Analyse erfolgen. Um sinnvolle Ergebnisse zu erhalten, müssen einige Dinge beachtet werden: Die Simulationszeitdauer (Stop Time) bestimmt das Aussehen bzw. die Auflösung des Frequenzspektrums: Je länger die Simulationszeit, desto höher die Auflösung und desto schmaler die dargestellten Linien. Die Simulationszeit muss ein ganzzahliges Vielfaches der von der Quelle vorgegebenen Zeitdauer sein, sonst treten Phantomfrequenzen im Spektrum auf. Die Startfrequenz des FFT-Spektrums entspricht dem Kehrwert der Simulationszeit (Stop Time). 03/2017 Seite 5 Simulationstechnik _______________________________________________________________ Der maximale Zeitschritt (Maximum Timestep) bestimmt die höchste, im Spektrum vorkommende Frequenz und muss gemäß „Shannon-Theorem“ mindestens so gewählt werden, dass sein Kehrwert doppelt so hoch wie die maximal vorkommende Frequenz ist. LTSPICE führt zur Reduktion der Datenmenge beim Speichern der Ergebnisse eine Kompression aus. Diese Datenkompression muss mit dem Kommando „.OPTIONS PLOTWINSIZE=0“ abgeschaltet werden, damit alle berechneten Zeiten für die FFT verfügbar sind. Die angegeben Einschränkungen sind in der Regel nur dann sichtbar, wenn das Spektrum in dB angezeigt wird und bis zu sehr kleinen Amplituden ausgewertet werden soll. Achtung beim Vergleich der Ergebnisse von Fourier- und Fast-Fourier-Transformationen: Laut Mike Engelhard (dem Entwickler von LTSPICE) werden die Ergebnisse der FFT als RMS-Werte angezeigt! Außerdem fehlt der DC-Anteil im Ergebnis! Für das obige Beispiel ergeben sich folgende Spektren: Standard-Darstellung, Y-Achse in dB Darstellung mit linearer y-Achse: 03/2017 Seite 6 Simulationstechnik _______________________________________________________________ Lineare y-Achse, längere Simulationsdauer 4.5 Verlustlose Leitung Die Schaltung besteht aus zwei hintereinander geschalteten Leitungselementen (das Symbol für eine Leitung trägt den Namen tline, für TRANSMISSION LINE), einer Spannungsquelle für pulsförmige Spannungen (Vpulse) mit Innenwiderstand 50 Ω, sowie einem Abschlusswiderstand (R2) von 50Ω. SIMULATIONSANWEISUNG: ANALYSIS TYPE: Time domain (Transient) STOP TIME: 1us Warum steigt die Spannung an jedem Punkt entlang der Leitung nicht über 0.5V, obwohl die Quelle auf eine Amplitude von 1V eingestellt ist? 03/2017 Seite 7 Simulationstechnik _______________________________________________________________ Geben Sie die Laufzeit des Impulses bis zum Abschlusswiderstand an! - Ändern Sie nun im Schaltplan den Wert des Abschlusswiderstandes von 50Ω auf 50MΩ (Leerlauf), führen Sie die Simulation nochmals durch. SIMULATIONSERGEBNIS: - Wie verhält sich ein Signal auf der Leitung nach einer erneuten Simulation für einen Abschlusswiderstand von 50mΩ? SIMULATIONSERGEBNIS: Warum entsteht am Ausgang der Leitung kein Spannungsimpuls, wohl aber auf der Leitung? Setzten Sie den Wert des Innenwiderstandes des Generators auf 50mΩ und den Belastungswiderstand am Ausgang der Leitung auf 50MΩ und simulieren Sie die Leitung noch einmal. 03/2017 Seite 8 Simulationstechnik _______________________________________________________________ SIMULATIONSERGEBNIS: Erklären Sie das Ergebnis. - Führen Sie nun noch mit verschiedenen Abschlusswiderständen eine AC – ANALYSE von 10MHz bis 100MHz (100 Punkte pro Dekade) durch (50Ω, Leerlauf, Kurzschluss), Ri des Generators sei 50Ω. - SIMULATIONSERGEBNIS: Ra = 50 Ω (Anpassung) Ra = 50 mΩ (Kurzschluss) 03/2017 Seite 9 Simulationstechnik _______________________________________________________________ Ra = 50 MΩ (Leerlauf) Auswertung: 03/2017 Seite 10 Simulationstechnik _______________________________________________________________ Teil 5: Modelle und Subcircuits 5.1 Modelle von anderen Anbietern einbinden In dieser Übung geht es um das Einbinden von SPICE-Modellen aus dem Internet in LTSPICE. Gehen Sie auf die Seite der Firma ON Semiconductor: www.onsemi.com Tragen Sie in das Suchfeld (rechts oben auf der Seite) den Namen des Bipolartransistors BC817 ein und starten Sie die Suche. Wenn Sie auf der Ergebnisseite etwa in der Mitte unter BC817-L25 auf den link „Models“ klicken, tauchen die verfügbaren Modelle für diesen Transistor auf: Wählen Sie „LIB Model for BC817-25LT1“, im auftauchenden Fenster sehen Sie die Parameter für diesen Transistor: Markieren Sie diesen Text und kopieren Sie ihn in ein Editorfenster. Achtung: Verwenden Sie keinesfalls „Word“ oder ein Textverarbeitungsprogramm, sondern nur den Windows Editor, da dieser keine Sonderzeichen einfügt. Ansonsten könnte es sein, dass LTSPICE nicht korrekt arbeitet! Speichern Sie das File in einen Ordner, auf dem Sie Schreibrechte besitzen, z.B.C:\tmp, die Endung darf .txt sein, also z.B. BC817.txt. Erstellen Sie nun ein Schaltbild, auf dem nur ein Bipolartransistor (Component symbol: npn), eine Spannungsquelle für die Kollektor-Emitterspannung und eine Basisstromquelle liegen. 03/2017 Seite 11 Simulationstechnik _______________________________________________________________ Als nächster Punkt kommt die Simulationsanweisung: DC Sweep: 1st Source: V1, linear, -1V 20V in 10mV-Schritten 2nd Source: I1, linear, 100 – 500uA in 100uA-Schritten Nun muss dem Transistorsymbol das gewünschte Modell zugewiesen werden: Mit STRG+M und Rechtsklick auf das Transistorsymbol gelangen Sie in den Component Attribute Editor, der folgendermaßen ausgefüllt wird: In die Zeile SPICE Model wird in die Spalte Value der Name des Transistors eingetragen, und zwar so, wie er im Bibliotheksfile nach dem .model-Statement lautet, in unserem Fall also Qbc817-25lt1. Nun muss dem Programm noch mitgeteilt werden, wo das Bibliotheksfile liegt, das eingebunden werden soll. Dies geschieht über eine .lib-Anweisung, in welcher der Pfad und der Name zur Bibliothek stehen: .lib C:\tmp\LTC-Lib\BC817.txt Das Schaltbild sieht nun so aus: 03/2017 Seite 12 Simulationstechnik _______________________________________________________________ Nachdem die Simulation durchgelaufen ist, kann man sich als Ergebnis das UCE-/ICKennlinienfeld des Transistors BC817-25 mit IB als Parameter anzeigen lassen: Wenn Sie jetzt einen Cursor aktivieren, erscheint dieser auf der ersten simulierten Kennlinie, dies entspricht dem Basisstrom 100uA. Sie können mit Hilfe der Cursor-Pfeiltaste nach oben/unten zwischen den einzelnen Kurven hin- und herspringen, bei Verwendung der rechten Maustaste erscheint ein Fenster mit den Informationen zu diesem Simulationslauf, also etwa In einem solchen Bibliotheksfile können auch mehrere Modelle zusammengebunden werden. Laden Sie zu diesem Zweck das Modell des 2N3055 ebenfalls von der ONSemiconductorWebsite herunter und binden die beiden Modelle zusammen in eine Datei, z.B. in onsemi.lib. Wenn Sie jetzt wieder mit STRG+M und Rechtsklick auf das Transistorsymbol (oder nur Rechtsklick auf den Text BC817-25LT1) das zu verwendende SPICE-Modell in Q2N3055 ändern und den Bibliotheksaufruf anpassen (in meinem Beispiel .lib C:\tmp\LTC-Lib\onsemi.lib), können Sie die Simulation für den neuen Transistor starten. 5.2 Verwendung von Teilschaltungen (Subcircuits) Oftmals besteht der Wunsch, eine bereits erstellte und simulierte Schaltung weiter zu verwenden. Dies ist möglich, indem man die fertige Schaltung als eine Teilschaltung (SPICEBezeichnung: subcircuit) deklariert und diese dann mehrfach verwendet. Erstellen Sie mit dem Texteditor (Windows-Editor!) die Teilschaltung für einen Tiefpass 2.Grades nach folgendem Muster: .subckt tp2 1 2 03/2017 Seite 13 Simulationstechnik _______________________________________________________________ R1 1 3 1k R2 3 2 1k C1 3 0 1n C2 2 0 1n .ends tp2 Mit .subckt wird SPICE mitgeteilt, dass es sich um eine Teilschaltung handelt, danach folgt der Name dieser Teilschaltung (tp2) gefolgt von den beiden Anschlussknoten 1 und 2. Die Schaltung sieht folgendermaßen aus: Da der Knoten mit der Nummer 0 global vereinbart ist, muss er im subcircuit-Statement nicht mitgeteilt werden. Dieser Subcircuit wird zusammen mit dem Modell des QBC817 in eine Bibliothek geschrieben, z.B. in meine.lib. Diese beinhaltet also eine Teilschaltung und ein Modell: .subckt tp2 1 2 R1 1 3 1k R2 3 2 1k C1 3 0 1n C2 2 0 1n .ends tp2 *Kommentarzeichen, Leerzeichen dürfen nicht enthalten sein!!! .MODEL Qbc817-25lt1 npn +IS=4.47965e-13 BF=518.948 NF=1.12669 VAF=2.68928 +IKF=0.213302 ISE=2.47184e-11 NE=1.85661 BR=0.1 +NR=1.5 VAR=6.99784 IKR=2.13302 ISC=2.47184e-11 +NC=1.53888 RB=6.92597 IRB=0.0020825 RBM=0.001 +RE=0.0447208 RC=0.223604 XTB=0.1 XTI=1.1167 +EG=1.206 CJE=3.33278e-11 VJE=0.99 MJE=0.382098 +TF=1.35311e-12 XTF=975.272 VTF=2752.71 ITF=0.001 +CJC=1.13086e-11 VJC=0.4 MJC=0.264687 XCJC=0.929063 +FC=0.1 CJS=0 VJS=0.75 MJS=0.5 +TR=1e-07 PTF=0 KF=0 AF=1 Erstellen Sie eine Schaltung mit dem BC817 und dem Tiefpass zweiter Ordnung. 03/2017 Seite 14 Simulationstechnik _______________________________________________________________ Hierbei wurde das Symbol „npn“ sowie „European Cap“ aus dem Misc-Unterverzeichnis der Symbole verwendet. Die Zuweisung des gewünschten Modells erfolgt wieder mit STRG+M und Rechtsklick auf das betreffende Symbol: Nun muss noch die Bibliothek über den .include-Befehl bekannt gemacht und die Simulationsanweisung eingefügt werden, dann kann die Simulation laufen. 03/2017 Seite 15 Simulationstechnik _______________________________________________________________ Nun muss noch die Bibliothek über den .include-Befehl bekannt gemacht und die Simulationsanweisung eingefügt werden, dann kann die Simulation laufen. 16