Hallo Liebes Forum, Frage kurz formuliert: Wie setzte ich 0.08/V(eingang) als einen Parameter in LT Spice um? Lange Version: Ich komme gerade bei einem Modell nicht mehr weiter. Dabei möchte ich einen Operationsverstärker in einfachster weise als Millerintegrator Simulieren. Der Opamp besteht also aus einer Spannungsgesteuerten Stromquelle (Kapazität und Widerstand Parallel) und und einer Spannungsgesteuerten Spannungsquelle. Ich bekomme es aber bei bestem Willen nicht hin, die Slew Rate sinnvoll zu implementieren. Die Slew Rate errechnet sich ja aus Slew=Imax/C Wenn ich in LT Spice allerdings den Wert von G limitiere, dann limitiere ich die Verstärkung. Im Beispiel oben wäre das dann die Eingangspannung*0.08. Das ist natürlich murks! Ich muss ja den maximalen Ausgangsstrom von G limitieren, also das Verhältnis durch Eingangspannung/limit. Nur wie formuliere ich das in einen Parameter um? Schon mal vielen Dank und ein gutes verlängertes Wochenende!
Nimm den generischen OPamp von LTSpice, da kannst Du GBW, Slewrate, Ausgangsstrom etc parametriereen
Das wäre natürlich auch eine Möglichkeit, dann ist der Lerneffekt aber leider aber kleiner. Es ist nicht so, als hätte ich nicht schon denkbare Variatonen von "={LIMIT(1, V(in)*0.8, -V(in)*0.8}" ausprobiert.
Die Antworten haben sich gerade überschnitten: Von dieser Seite komme ich eigentlich. Dort wird allerdings die Spannungsgesteuerte Stromquelle "aus der Ferne" gesteuert. Ich mag es aber lieber, wenn man direkt sieht von wo die Ansteuerung kommt, daher hab ich das Symbol der spannungsgesteuerten Quelle verwendet.
limit(V(in)*1, -1m, 1m) Den Widerstand zu 100k wählen für Leerlaufverstärkung 100000. C=1n für 1V/us. Nachtrag > limit(V(in)*1, -1m, 1m) Ich glaube meine Werte waren noch keine gute Wahl. Vielleicht doch besser mal nachlesen. http://www.ecircuitcenter.com/OpModels/Ilimit_Slew/ILim_Slew.htm
:
Bearbeitet durch User
Die Berechnung verstehe ich eigentlich. Wenn ich folgendes Probiere einen fehler zurück: Error on line 4 : g1 0 n004 in 0 =(limit(1,0.8/v(in),-0.8/v(in)) Unknown parameter "limit" Fatal Error: Missing value of transconductance for "G1" Sobald ich das /v(in) raus nehme läuft die Simulation. Da steckt doch sicher irgendwie ein syntax Fehler.
Wenn du schon PSPICE-syntax verwendest, dann richtig. Beispiel: G1 0 10 VALUE={LIMIT( 2.5133e-2*V(1,2),0.01,-0.01)} Beachte das VALUE= und die geschweiften Klammern {} VALUE={LIMIT( 2.5133e-2*V(1,2),0.01,-0.01)} Dein /V(in) ist zusätzlich noch falsch. Es muss * heißen.
:
Bearbeitet durch User
Das / müsste an der Stelle richtig sein, wenn ich einen G Block verwende. (100V am Eingang würden 100A ergeben, limit ist dann 100/100 * 0.8 also 0.8A) Ich trage als Bauteilwert (Value) ein: {limit(1,0.8/v(in),-0.8*v(in)} macht mir mein Spice dann das, was ich oben gepostet habe Schon mal vielen Dank für eure Geduld!
Ich bin gestern wirklich noch verzweifelt. Hat jemand eine gute Empfehlung für eine Einführung in die Spice Programmiersprache (Die Auswahl ist ja groß)?
Hallo Stefan, Ich habe dir mal ein Beispiel gemacht. Werde mir aber mal die Beispiele von hier umsetzen und hier einstellen. http://www.ecircuitcenter.com/OpModels/Ilimit_Slew/ILim_Slew.htm Man muss ja nicht immer bei null anfangen. Du hast PSPICE-spezifische Syntax verwendet. Das findest du im Manual von PSPICE aber nicht in einem allgemeinen SPICE-Buch. VALUE={1m*limit(V(in), -0.1, 0.1)} LTspice versteht diese Syntax auch. Dafür nimmt man das Symbol gpoly in LTspice. in nativem LTspice würde man eine Bi-Quelle nehmen. Die Formel wäre damit I=1m*limit(V(in), -0.1, 0.1) Gruß Helmut
:
Bearbeitet durch User
Ich habe erstmal eine Notlösung verwendet um eine Begrenzung zu bauen. Die Maximale Spannung wird mit Dioden begrenzt und dadurch dann nach einem G-Block der maximale Strom. Jetzt komme ich aber mit den Berechnungen aus dem Netz nicht wirklich weiter: Dort wird die Slew Rate als das dU/dt der Ausgangspannung bei offener Schleife angesehen. Im Datenblatt des Chips ist die Slew Rate aber in der geschlossenen Schleife angegeben. Auf die Slew Rate der offenen Schleife kann ich daher doch gar nicht schließen?
Die slewrate bei offener Schleife ist die gleiche. Der Opamp ist auch bei Ggenkopplung schon außerhalb des linearen Bereichs, wenn er in die slwerate-Begrenzung geht.
:
Bearbeitet durch User
Hallo Helmut, Ich bin gerade dabei deine Syntax einzubauen möchte aber kurz meine Simulation zeigen. Bitte nicht über den Workaround lachen! Die Slew Rate wird auf etwa 20V/us begrenzt, in der Simulation lässt sich das sehr gut an der Gerade ablesen. Ab 1.5us greift die Slew Rate nicht mehr und das IC verhält sich linear. Im Datenblatt steht folgendes: "The feedback compensation network limits the bandwidth of the closed-loop response and so the slew rate will be reduced due to the high frequency roll-off. Without feedback compensation, the slew rate is typically larger." Die Angabe von 20V/us wurde mit der Schaltung im Anhang (Quelle LM 3886 Datenblatt) gemessen. Wird die Slew Rate also wie die Anstiegszeit am 90% Punkt bestimmt? So ganz weiß ich noch nichts mit der Datenblattangabe anzufangen.
Die slewrate ist immer am Punkt maximaler Steilheit. Es ist einfach die obere Grenze der Anstiegsgeschwindigkeit. Du hast ein Modell mit Übetragungsfunktion 1. Ordnung. Deshalb kriecht das immer auf den Endwert. Ein realer Opamp ist mindestens ein System 2. Ordnung, nomralerweise sogar 3. Ordnung. Deshalb gibt es dort meistens auch Überschwinger.
:
Bearbeitet durch User
Es gibt in LTspice universelle Modelle - opamp und UniversalOpamp2. Beim UniversalOpamp2 kann man aus 4 Modellen wählen. Ich habe mal ein Beispiel gemacht. Durch Rechtsklick auf das Symbol kommt man in das Fenster um die Parameter zu setzen und um das Modell auszuählen. Zum Modell wählen dort einen Doppelklick in das Feld mit level.x machen. Slew=10Meg bedeutet 10V/us
:
Bearbeitet durch User
Beim LM 3886 habe ich die Datenblattkurve digitalisiert (und auch einen Chip in der offenen Schleife vermessen um zu sehen ob die Angaben hinhauen). Eine gute Näherung war im Prinzip ein Tiefpass 1.Ordnung mit niedriger Grenzfrequenz gefolgt von 5 Tiefpässen mit hoher Grenzfrequenz. Wenn ich den Tiefpass 1 Ordnung von der Übertragungsfunktion "abziehe" ist die Phasenverschiebung ist ab etwa 300KHz proportional zur Frequenz die Amplitude fast linear. Also eigentlich einVerzögerungsglied, das ich inLT Spice nicht gefunden habe. Die Approximation über 5 Tiefpässe fand aber physikalischer. Wenn ich durch bin, zeige ich mal die Simulation und den gemessenen Wert. Schon ohne genaue Slew Rate limitierung war ich bereits zufrieden.
Wie heißt denn das Aquivalent von b1 für Spannungsquellen? E-ploy scheint ja das Aquivalent für G-Poly zu sein. Beste Grüße, Stefan
Das Limit führt leider bei einem etwas komplexeren Modell zu Problemen. So ein Limit ist einfach zu unstetig. Die Simulation läuft mit dem Limitieren durch Dioden wesentlich stabiler.
Stefan schrieb: > Wie heißt denn das Aquivalent von b1 für Spannungsquellen? > E-ploy scheint ja das Aquivalent für G-Poly zu sein. > > Beste Grüße, Stefan Bi ist für die steuerbare Stromquelle I=Formel Bv ist für die steuerbare Spannungsquelle V=Formel bv, BV, Bv, bV ist für LTspice egal. Es wird nicht zwischen Groß- und Kleinbuchstaben unterschieden. Im klassischen SPICE gab es diese B-Quellen gar nicht. Da gibt es nur E-POLY und G-POLY. Die konnten nur ein Polynom der Form k0 +k1*V + k2*V^2 + k3*V^3 + .... OK es gibt POLY auch mit 2 Eingängen. Damit kann man auch V1*V2 bilden. Allerdings sind die Formeln mit B-Quellen viel übersichtlicher als die Verwemdung von POLY bei E und G Quellen. PSPICE hat einfach diese klassichen E und G Quellen mit VALUE=Formel aufgebohrt. Die sind im Prinzip das Gleiche wie die B-Quellen in LTspice und eingen anderen SPICE Programmen.
:
Bearbeitet durch User
Thema Slewrate selbsterklärender Vortrag :-) https://e2e.ti.com/blogs_/b/analogwire/posts/trust-but-verify-spice-model-accuracy-part-3-slew-rate-and-input-clamping-diodes https://training.ti.com/ti-precision-labs-op-amps-slew-rate-introduction?cu=14685 https://www.basictables.com/electronics/slew-rate
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.