Forum: Analoge Elektronik und Schaltungstechnik Zeitverhalten von Stromverstärker optimieren


von Klaus (Gast)


Angehängte Dateien:

Lesenswert?

Hallo!

Ich habe mir einen Stromverstärker für drei verschiedenen Spulenpaare 
aufgebaut, um veränderliche Magnetfelder zu erzeugen (Prinzip: 
https://en.wikipedia.org/wiki/Helmholtz_coil). Aus Gründen der 
Einfachheit habe ich für den Stromverstärker einen Leistungs-OpAmp, 
nämlich den OPA548 verwendet. Die verwendete Beschaltung findet sich als 
Handskizze im Anhang. Der Shunt ist 0.47 Ohm groß. Die Widerstände und 
Induktivitäten der Spulen betragen (1) ~10 Ohm / ~1 mH (2) ~30 Ohm / ~ 5 
mH (3) ~4.5 Ohm / ~ 0.25 mH.

Im Prinzip funktioniert das so für unsere Zwecke schon gut. Wenn ich mir 
für die drei Spulenpaare die Oszillogramme der Shunt-Spannungen (also 
des Spulenstroms) für einen Stromsprung ansehe, erkenne ich aber 
unterschiedlich "optimales" Zeitverhalten (Bild ebenfalls im Anhang).

Was könnte ich tun, um das Zeitverhalten zu verbessern? Also im Falle 
der kleinen Spule (0.25 mH), um diese überschwingende gedämpfte 
Oszillation zu vermindern, im Falle der großen Spule (5 mH), um den 
Sprung etwas steiler zu machen? (Es geht nicht darum, den selben Treiber 
für alle Spulen zu verwenden, jede bekommt ihren eigenen Treiber, den 
ich gerne jeweils individuell optimieren würde)

Ich habe aus einen Schaltungsbeispiel für den OPA548 ein Snubber-Glied 
übernommen (R_snubber und C_snubber im Schaltbild). Aktuell verwende ich 
hier 100 Ohm/ 100 nF. Wäre hier ein Ansatzpunkt? Was könnte ich noch 
tun?

Ganz vielen Dank für alle Hinweise und Tipps!

von Achim S. (Gast)


Lesenswert?

Klaus schrieb:
> Also im Falle
> der kleinen Spule (0.25 mH), um diese überschwingende gedämpfte
> Oszillation zu vermindern,

Kompensation in der Gegenkopplung. Also direkt vom OPV-Ausgang einen 
Kondensator C zurück auf den invertierenden Eingang. Und die 
Rückkopplung vom Shunt über einen Längswiderstand R führen. Die 
Zeitkonstante R*C erst mal so wählen, dass Sie ungefähr zu 1/(2*pi*f) 
passt. (f ist dabei die Frequenz der gedämpften Schwingung). Und dann 
mit den genauen Werten von R und C rumspielen, bis die Flanke dir 
gefällt.

Klaus schrieb:
> im Falle der großen Spule (5 mH), um den
> Sprung etwas steiler zu machen?

Ich lese aus deiner Messung eine Flankensteilheit von 320mA/50µs ab. Bei 
einer Induktivität von 5mH muss der Spannungsabfall an der Spule dafür 
schon 32V betragen. Damit bist du wohl schon am Limit deines OPV, eine 
schnellere Stromänderung könntest du nur mit höherer Versorgungsspannung 
bekommen.

von Der Zahn der Zeit (🦷⏳) (Gast)


Angehängte Dateien:

Lesenswert?

Ich denke, mit einem C parallel zum L hast du keine Chanche. Das ergibt 
nur einen Schwingkreis.

Mich hat es mal geprickelt, und ich habe das Prinzip simuliert:

In der Gegenkopplung könnte ein L Serie zum Shunt theoretisch helfen, 
wäre aber nicht praktikabel.

Ohne Kompensation gibt es mächtige, aber abklingende Schwingungen, also 
regt die steile Rechteckflanke das System zum Schwingen an. Daher habe 
ich zuerst mit einem einfachen Tiefpass den hochfrequenten Anteil des 
Rechtecks reduziert. Der Stromverlauf war jetzt gut, aber es blieben 
Schwingungen der Ausgangsspannung(!) des Op-Amps übrig. Die sollten 
nicht sein, denn du wirst keine Betriebsspannungsreserve für solche 
Schwingungen haben.

Der Sprung der 1. Ableitung der Steuerspannung hatte noch zu viel 
Energie. Also eine zweiter Tiefpass dahinter, und dann war auch die 
Ausgangsspannung frei von Überschwingen. Der Sollstrom - das ist kein 
Wunder - wird natürlich erst später erreicht.

Simulationsergebnisse:
L-Driver.jpg: C2 = C3 = 100n, 330n und 1u. 330n ist nahe am Optimum. 
Spannungsmessung nur am Op-Amp-Ausgang
L-Driver1: C2 = 330n. C3 = 0 / 330n, Spannungsmessung am Shunt (grün: C3 
= 0, gelb: 330n) und am Op-Amp-Ausgang (rot: C3 = 0, blau: 330n)

Den 2-poligen Tiefpass kann man wahrscheinlich noch optimieren, Bessel, 
Butterworth oder so, aber das ändert ebenso wenig an den prinzipiellen 
Zusammenhängen, wie das Snubber-Netzwerk am Ausgang.

von Achim S. (Gast)


Lesenswert?

Der Zahn der Zeit (🦷⏳) schrieb:
> Ich denke, mit einem C parallel zum L hast du keine Chanche. Das ergibt
> nur einen Schwingkreis.

klar, deswegen braucht es eben noch den zusätzlichen Längswiderstand zum 
shunt.

wenn ich wieder Zuhause bin kann ich gerne eine simu liefern. aber es 
geht einfach um die Standardschaltung für OPV Stromquellen, die sicher 
auch hier in der Artikelsammlung zu finden ist.

von Falk B. (falk)


Lesenswert?

Achim S. schrieb:
> geht einfach um die Standardschaltung für OPV Stromquellen, die sicher
> auch hier in der Artikelsammlung zu finden ist.

https://www.mikrocontroller.net/articles/Konstantstromquelle#Konstantstromquelle_mit_Operationsverst.C3.A4rker_und_Transistor

von Stefan F. (Gast)


Lesenswert?

Ich denke, dass das Überschwingen primär von der Spule selbst kommt. Die 
Kompensation muss wohl an die Spule angepasst werden. Eine allgemein 
passende Lösung kann ich mir nicht vorstellen.

von Achim S. (Gast)


Angehängte Dateien:

Lesenswert?

Falk B. schrieb:
> 
https://www.mikrocontroller.net/articles/Konstantstromquelle#Konstantstromquelle_mit_Operationsverst.C3.A4rker_und_Transistor

Danke fürs Verlinken, das war der Artikel, den ich gemeint habe.

Stefan ⛄ F. schrieb:
> Die
> Kompensation muss wohl an die Spule angepasst werden. Eine allgemein
> passende Lösung kann ich mir nicht vorstellen.

Richtig, aber der TO ist ja schon geschrieben, dass er die Schaltung für 
die verschiedenen Lasten unterschiedlich dimensionieren kann.

Im Anhang noch die versprochene Simu. Ohne Kompensation (CK = 1fF) 
schwingt die die Schaltung mit 0,25mH-Spule  mit 20kHz ein (der Snubber 
des TO hat kaum Einfluss, ich hab ihn der Übersichtlichkeit wegen 
weggelassen). Das kommt der Messung des TO schon einigermaßen nahe.

Aus den 20kHz würde ich bei R4 = 1kOhm einen Startwert des 
Kompensationskondensators von 8nF berechnen (1/2*pi*1kOhm*8nF=20kHz). 
Die blaue und rote Kurve zeigen die Simu mit CK=1nF und CK=10nF).

von Klaus (Gast)


Lesenswert?

Super! Vielen Dank für die Antworten und insbesondere die Simulation!

Nach dem Snubber wollte ich eh noch fragen, der scheint hier dann ja 
nicht viel zu helfen. Ich würde ihn dann wohl auch testweise einfach mal 
weglassen.

Auf die von Achim genannten Werte war ich mit dessen obiger hilfe dann 
auch in etwa gekommen. Dazu eine Nachfrage: Hätte es irgendeinen 
praktischen Nachteil, den Widerstand variabel zu machen (per Trimmer), 
z.B. zwischen 1 und 10k und dafür eine feste Kapazität (dann eben 1 nF) 
zu verwenden?

von Achim S. (Gast)


Lesenswert?

Klaus schrieb:
> Dazu eine Nachfrage: Hätte es irgendeinen
> praktischen Nachteil, den Widerstand variabel zu machen (per Trimmer),
> z.B. zwischen 1 und 10k und dafür eine feste Kapazität (dann eben 1 nF)
> zu verwenden?

Sollte schon gehen. Hat vielleicht den Nachteil, dass der Trimmer 
irgendwann mal von jemandem anders eingestellt wird als du eigentlich 
vorhattest.

von Der Zahn der Zeit (🦷⏳) (Gast)


Lesenswert?

Ich hatte auch die Version mit R4 simuliert, wobei ich im Prinzip die 
gleichen Ergebnisse wie mit einem einfachen TP im Eingang erhalten habe.

Wichtig: Die Spannung am OP-Ausgang wird sehr viel höher als die hier 
gezeigte an RS sein. Wenn der Op-Amp nicht übersteuert werden darf, wird 
ein zusätzlicher TP am Eingang, wie ich ihn beschrieben habe, 
erforderlich. Oder die Signale müssen entsprechen klein sein.

von Achim S. (Gast)


Lesenswert?

Der Zahn der Zeit (🦷⏳) schrieb:
> Wichtig: Die Spannung am OP-Ausgang wird sehr viel höher als die hier
> gezeigte an RS sein.

deshalb hab ich sie in der Simu auch mit anzeigen lassen - untere Kurve 
V(opv)

von Der Zahn der Zeit (🦷⏳) (Gast)


Lesenswert?

Achim S. schrieb:
> deshalb hab ich sie in der Simu auch mit anzeigen lassen - untere Kurve
> V(opv)
Uuups - von Blindheit geschlagen...
Demnach ist mit der einpoligen Gegenkopplung auch ein Betrieb ohne 
Überschwingungen des Op-Amps möglich. Tja - warum auch nicht. Eigentlich 
sehe ich es ein.

von Klaus (Gast)


Lesenswert?

Noch eine weitere (vielleicht etwas blöde) Nachfrage zum Thema 
Versorgungsspannung des OpAmps: brauche ich eine höhere 
Versorgungsspannung als sich aus dem DC-Widerstand der Spulen und dem 
gewünschten Strom ergibt? Klar, der OpAmp hat noch eine (hier sogar 
deutliche) Drop-Out Spannung, aber abgesehen davon?

von Der Zahn der Zeit (🦷⏳) (Gast)


Lesenswert?

Nur wenn die Zeit, in der das Magnetfeld aufgebaut sein soll, eine Rolle 
spielt. Und dabei geht es um wenige 100 µs und weniger, siehe die 
Simulation.

von Achim S. (Gast)


Angehängte Dateien:

Lesenswert?

Klaus schrieb:
> Noch eine weitere (vielleicht etwas blöde) Nachfrage zum Thema
> Versorgungsspannung des OpAmps: brauche ich eine höhere
> Versorgungsspannung als sich aus dem DC-Widerstand der Spulen und dem
> gewünschten Strom ergibt? Klar, der OpAmp hat noch eine (hier sogar
> deutliche) Drop-Out Spannung, aber abgesehen davon?

Wie schon weiter oben geschrieben: wenn du eine möglichst steile 
Stromflanke willst, brauchst du entsprechend hohe Spannungen. Das wird 
vor allem bei der Spule mit der hohen Induktivität (5mH) relevant.
   di/dt = U/L
Je höher die Versorgungsspannung desto problematischer natürlich die 
Verlustleistung des OPV.

Wenn du mit etwas langsameren Stromänderungen auskommst und die 
Kompensation der Stromquelle entsprechend gemütlich einstellst, reicht 
dir auch die kleinere Versorgungsspannung.

von Klaus (Gast)


Lesenswert?

Der Zahn der Zeit (🦷⏳) schrieb:
> Nur wenn die Zeit, in der das Magnetfeld aufgebaut sein soll, eine Rolle
> spielt. Und dabei geht es um wenige 100 µs und weniger, siehe die
> Simulation.

Das spielt schon eine gewisse Rolle, je schneller je besser, ohne dass 
ich da harte "Contstraints" hätte. Der Punkt ist mir irgendwie nicht 
100%ig klar: angenommen ich bekomme es hin, dass der Verstärker 
vernünftig kompensiert ist, dann sollten doch auch diese Überschwinger 
mehr oder weniger weg sein.

Danke!

von Klaus (Gast)


Lesenswert?

Achim S. schrieb:
> Wie schon weiter oben geschrieben: wenn du eine möglichst steile
> Stromflanke willst, brauchst du entsprechend hohe Spannungen. Das wird
> vor allem bei der Spule mit der hohen Induktivität (5mH) relevant.
>    di/dt = U/L
> Je höher die Versorgungsspannung desto problematischer natürlich die
> Verlustleistung des OPV.

Okay, danke :-)

von Stefan F. (Gast)


Lesenswert?

Klaus schrieb:
> Was könnte ich tun, um das Zeitverhalten zu verbessern? Also im Falle
> der ... großen Spule (5 mH), um den  Sprung etwas steiler zu machen?

Klaus schrieb:
> brauche ich eine höhere Versorgungsspannung als sich aus
> dem DC-Widerstand der Spulen und dem gewünschten Strom ergibt?

Hat Achim schon beantwortet:

Achim S. schrieb:
> Ich lese aus deiner Messung eine Flankensteilheit von 320mA/50µs
> ab. Bei einer Induktivität von 5mH muss der Spannungsabfall an
> der Spule dafür schon 32V betragen. Damit bist du wohl schon
> am Limit deines OPV, eine schnellere Stromänderung könntest
> du nur mit höherer Versorgungsspannung bekommen.

Eine Ideale Spule hat am Anfang der Ladezeit einen unendlich hohen 
Innenwiderstand. Man braucht demnach eine unendlich hohe Spannung, damit 
der Strom sprunghaft (Rechteckig) ansteigt. In der Praxis ist das ein 
Ding der Unmöglichkeit. Aber je mehr Spannung dein OP-Amp liefern kann, 
umso näher kommst du an dein Ziel heran.

von Achim S. (Gast)


Angehängte Dateien:

Lesenswert?

Klaus schrieb:
> Der Punkt ist mir irgendwie nicht
> 100%ig klar: angenommen ich bekomme es hin, dass der Verstärker
> vernünftig kompensiert ist, dann sollten doch auch diese Überschwinger
> mehr oder weniger weg sein.

Kommt drauf an, was genau du unter "vernünftig kompensierst" verstehst. 
Wenn man den neuen Stormwert möglichst schnell erreichen will, dann 
würden viele die Kompensation so auslegen, dass es zu einem einmaligen 
Überschwinger kommt. Dabei darf dieser eine Überschwinger natürlich noch 
nicht an der Obergrenze der Versorgung kratzen.

von Achim S. (Gast)


Lesenswert?

Ups: der Anhang im letzen Beitrag sollte eigentlich nicht nochmal 
mitgehen (er war ja schon zuvor zu sehen).

Ich hatte im Browser wohl die Zurück-Taste benutzt und dadurch das 
Eingabefeld mit der angehängten Datei wieder genutzt.

von Flo (Gast)


Lesenswert?

Wenn (/weil?) es Dir um maximale Stromanstiegsgeschwindigkeit geht,
wieso arbeitest Du nicht mit geschalteter Mosfet-Halb- oder H-Brücke
und variabler Versorgungsspannung (ausreichend niedrigen R_i bzw.
Stromlieferfähigkeit für den resultierenden Strom bei maximaler U
einkalkuliert könntest Du diese variable Spannung auch linear, mit
Deinem OPV, bereitstellen, falls keine U_variabel Switcher daheim).

Dann wäre die Grundtopologie überall dieselbe, nur die Mosfets auf
Umax und Imax auszulegen (natürlich könntest Du noch unterschiedlich
starke Treiber verwenden, wenn Dir das lieber ist als nur R_Gate zu
variieren).

Selbstverständlich die Snubber ebfs. gut anzupassen, was bei evtl.
stark variierender Versorgung vielleicht noch mehrere parallel via
Dip Schalter umschaltbar erfordern könnte, wenn Du immer nahe der
idealen Signalform bleiben möchtest.

Aber ansonsten ist das einfacher, als der Versuch, dem langsamen
Power-OPV steile Flanken zu entlocken.

von Flo (Gast)


Lesenswert?

Flo schrieb:
> könntest Du diese variable Spannung auch linear, mit
> Deinem OPV, bereitstellen

Natürlich ausgangs mit Elko (plus evtl. Kerko oder Folko) gut
abgeblockt, vglb. einem Labornetzteil, zwecks Entkopplung und
besagter Niederohmigkeit (sonst brächte es keinen Vorteil).

von Klaus (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

ich habe den Verstärker zwischenzeitlich mit der Kompensation aufgebaut 
und getestet. In gewissen Grenzen kann ich das Zeitverhalten damit 
optimieren, insbesondere den Ripple, den man im ersten Posting sieht, 
bekomme ich gut weg.

Ich habe mir jeweils das Zeitverhalten per Sprungantwort angesehen und 
optimiert. Außerdem habe ich mal aus Neugier einen Bode-Plot gemacht. 
Dafür habe ich aufsteigend Sinus-Signale von ca 0.1 bis 50 kHz als 
Kontrollspannung vorgegeben, und mir Amplitude und Phasenlage von der 
resultierenden Shunt-Spannung (also dem Spulenstrom) angesehen. Bei 
einer der drei Spulen ergibt sich, dass die Phasenverschiebung über 
10kHz wieder kleiner wird (siehe dritter Plot im anhängenden Bild).

Ich wollte mal nachfragen, ob das ein Verhalten ist, das bei solchen 
Stromverstärkern vorkommen kann, oder ob das eher dafür spricht, dass 
ich bei meiner Messung/Auswertung der Messung etwas falsch gemacht habe.

Danke für alle Hinweise!

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
Noch kein Account? Hier anmelden.