Dynamische Änderung der Pulsweite während Simulation

Gast #1947965
Lesenswert?

Hallo zusammen!

Ich habe eine Frage zur dynamischen Simulation mittels LTspice.
Und zwar habe ich folgendes vor:

Auf den einen Eingang eines Operationsverstärker gebe ich mittels einer 
normalen Voltage-Quelle ein PWM-Signal. (Das Signal wird natürlich zuvor 
noch geglättet)

Auf den anderen Eingang gebe ich eine konstante Spannung.

Darauf stellt sich am Ausgang des OPVs natürlich entweder die maximale 
positive Versorgungsspannung oder eben die maximal negative ein, je nach 
der Pulsweite des PWM-Signals.

Mittels dieser Aussage am Ausgang des OPs möchte ich während der 
Simulation die Pulsweite anpassen. (Also Pulsweite vergrößern, wenn der 
wert zu klein ist, oder eben verkleinern, wenn er zu groß ist).

Ich hoffe ihr könnt mir bei diesen Problem weiterhelfen und freue mich 
schon auf eure konstruktiven Beiträge.

Gruß

LTspicler
Persönliche Seite #1950163
Lesenswert?

Sehe da kein Problem. Du kannst in LTspice mit Variablen arbeiten. 
Manchmal geht es nicht aus unergründlichen tiefschürfenden Dingen der 
Matrix, aber meistens gehts.
Du mißt also irgendwo den Strom oder so, und das speist du als variables 
Parameter in deine Spannungsquelle zurück.

Oder nimmst einen der Modulatoren, die in der Lib sind.
Gast #1950690
Lesenswert?

Hallo Abdul K.

Erst einmal vielen Dank für deine Antwort.
Könntest du mir eventuell ein Beispiel geben, wie du das mit den 
Variablen und den Modulatoren gemeint hast, und wie man diese einsetzt?

Bei Variablen habe ich bisher nur eine grobe Ahnung.
Kann man eigentlich Knoten, bzw. Labels in Spice Direktiven abfragen?

Am liebsten wäre mir eigentlich, wenn es möglich wäre, in einer Spice 
Direktiven abzufragen, wie hoch eine Spannung an einen Knoten ist, und 
je nachdem die Spannungsquelle, bzw. deren Pulsweite, einzustellen.

Leider arbeite ich noch nicht solange mit LTspice und bin daher für jede 
Erklärung dankbar.

Mit freundlichen Grüßen

LTspicler
Gast #1952193
Lesenswert?

Hallo,

also erst einmal wieder ein Dankeschön, dass sich in dem Forum immer 
wieder Leute Zeit für einen nehmen.

Um mein Problem/Vorhaben etwas genauer zu beschreiben, habe ich ein Bild 
angehängt.
Ich habe vor, die Pulsweite, bzw, die Zeit "Ton" dynamisch zu steuern.

D.h. je nachdem, was das Ergebnis am Ausgang des OPs ist, soll die 
Pulsweite um einen bestimmten Wert erhöht, bzw. erniedrigt werden.
Und das in einem einzigen Simualtionsdurchlauf.

Gibt es da eine Möglichkeit in LTspice?

Gruß
Angehängte Dateien:
#1952295
Lesenswert?

V1 erzeugt ein Sägezahn mit 100KHz, der Komparator A1 vergleicht nun 
Spannung an Input mit diesem Sägezahn und schwups hast du am Ausgang 
deine PWM. Simpelste Schaltungspraxis und sowas gibts vielfach als 
Schaltkreise oder in MCUs.

Entscheidend ist die Definition von V1 und V2 um Sägezahn usw. erzeugen 
zu können, das ist der Trick dabei.

Gruß hagen
Gast #1952311
Lesenswert?

@Hagen
hey,
ich habe mir grade nochmal deine genauer angesehen, komme aber im Moment 
grade nicht dahinter, wie das mir bei meinen Problem helfen kann. (wenn 
du mir ne kurze Erklärung geben könntest wäre echt nett).

Mittels deiner Simulation erzeugst du ja ein PWM-Signal, die ihre 
Pulsweite ändert, jedoch sich nach einer bestimmten Zeit wieder 
wiederholt.(also direkt abhängig davon, welchen Parameter man am Anfang 
angibt...danach hat man keine Chance mehr, auf die Simulation Einfluss 
zunehmen).

Ich bräuchte jedoch etwas, wo die Pulsweite sich während der Simulation 
in Abhängigkeit von der Ausgangsspannung verändert.

Das habe ich vor: Konstante Spannung soll mit PWM-Signal mittels 
Operationsverstärker verglichen werden:

Beispiel:
Konstanter Wert (Konstwert) : 1,5V

PWM-Max-Wert: 3,3V
PWM-Min-Wert: 0V
PWM-Periodendauer: 4s
Pulsweite-Anfangswert: 0s => Durchschnittswert PWM = 0V

Ablauf:
Durchschnittswert PWM < KonstWert
=> Pulsweite vergrößern: 1s => Durchschnittswert PWM: 0,825V

Durchschnittswert PWM < KonstWert
=> Pulsweite vergrößern: 2s => Durchschnittswert PWM: 1,65V

Durchschnittswert PWM > Konstwert
=> Pulsweite verkleinern: 1s => Durchschnittswert PWM: 0,825V

etc.

Ich hoffe, das hilft etwas weiter oder ich habe noch mehr verwirrt.;)
#1952331
Lesenswert?

>Ich bräuchte jedoch etwas, wo die Pulsweite sich während der Simulation
>in Abhängigkeit von der Ausgangsspannung verändert.

das was ich dir gegeben habe erfüllt exakt deine Anforderungen.

Die PWM, genauer deren Dutycycle also Dauer der On-Zeit ist direkt 
proportional zu Spannung an Input. Die Periode der PWM ist 100kHz, 
stelle diese auf 1/5s = 0.2Hz ein so wie du es ja benötigst.

Du musst also deinen Ausgang des OpAmps an Input anlegen, womit du eine 
Feedback-Schleife konstruiert hast (was LTSpice eh Probleme bereiten 
wird da diue Schaltung anfängt zu schwingen-> unkompensierter 
Feedbackpath des OpAmps)

V2 löschst du aus der Schaltung, diese dient ja nur zu Demonstration.

Essentiell ist es also so:

1.) erzeuge über PULSE() eine Sägezahnspannung mit Periode = 4s und 5V 
On-Spannung
2.) vergleiche Outputspannung des OpAmps (hier 0 bis 5V) mit Sägezahn 
per Komparator
3.) Komparator erzeugt 0V Off und 5V On Spannung

fertig.

Gruß Hagen
#1952341
Lesenswert?

Du lässt deinen OpAmp als Komparator arbeiten.

Wenn die Spannung an + > 1.7V ist dann wird der OpAmp am Ausgang sowas 
um die 5V erzeugen.
Wenn die Spannung an + < 1.7V ist dann erzeugt der OpAmp 0V am Ausgang.

Wenn nun an + Eingang des OpAmps selber eine PWM anliegt mit 0V und 5V 
als einzige Spannungen dann hast du eine unkompensierte OpAmp Feedback 
Schleife konstruiert.

Diese Schaltung die du vorhast zu simulieren macht keinen Sinn. Am 
Ausgang des OpAmps wirst du ein Rechtecksignal sehen das mit einer 
Frequenz proportional zur Openloop Gain des OpAmps und nicht zu deiner 
Periode der PWM von 5s = 0.2Hz

Wenn die OpAmp-Regelfrequenz weit größer als die 0.2Hz der PWM ist dann 
wirst du am + Eingang des OpAmps über die Zeit integriert die gleiche 
Spannung wie die Sägezahnspannung der PWM sehen. Logisch, weil du im 
Grunde zwei Komparatoren in gegenkopplung betreibst.

Gruß Hagen

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren