Warum funktioniert dieser Operationsverstärker nicht richtig?

Ich arbeite an einer einstellbaren Stromquelle. In einem Thread vor einiger Zeit wurden verschiedene Schaltungen diskutiert:

einfache einstellbare Stromquelle für LED-Ketten

... aber da ich mich für eine Option entschieden habe und sie nicht richtig funktioniert, starte ich einen neuen Thread, um mich auf mein Rätsel zu konzentrieren.

Hier ist die Schaltung:

Geben Sie hier die Bildbeschreibung ein

Der Widerstandsteiler (30K-Widerstand und Potentiometer) liefert eine Referenzspannung auf "Set" (der DC-Sweep von v1 dreht nur die Topfwelle). Der Operationsverstärker sollte das 'Gate' so steuern, dass 'Sense' gleich 'Set' ist und somit der Strom (in Milliampere), der durch die Last 'Rload' gezogen wird, der Spannung von 'Set' (in Millivolt) entspricht. So einfach ist das.

Die 12-V-Versorgung, die die 'Set'-Schaltung und den Operationsverstärker mit Strom versorgt, ist ein 7812, der von der 24-V-Versorgung abgeschaltet wird. Und der Mosfet ist eigentlich ein FQP10N20C (ein ziemlich Vanilla Power nfet).

Ich habe mit LTspice simuliert und es verhält sich wie erwartet. Aber auf dem Steckbrett, wenn 'Set' von 0 auf etwa 400 mV erhöht wird, verfolgt 'Sense' das 'Set' immer weniger gut. An einem Punkt sehe ich 257 mV auf „Set“, aber nur 226 mV auf „Sense“. also fließen nur 226mA durch Rload und R1. 'Gate' liegt bei 3,53 V und 'down' liegt bei 11,7 V. Wenn man nur den Operationsverstärker isoliert betrachtet, scheint es, dass "Gate" höher getrieben werden sollte (bis vermutlich irgendwann genug Strom fließt, dass "Sense" 257 mV entspricht).

Der Operationsverstärker ist für die Verwendung mit einer Single-Ended-Versorgung vorgesehen und sollte in der Lage sein, seinen Ausgang problemlos über 3,53 V (bei einer Versorgungsspannung von 12 V) zu treiben. Das Gate des FET sollte keinen Strom aufnehmen (überprüft mit Messgerät).

Ich bin ratlos.

Datenblatt für den Operationsverstärker (LT1006)

Haben Sie ein Scope-Plot (oder eine Wechselstrommessung an den Opamp-Eingängen oder dem FET-Gate)? Es ist möglich , dass aufgrund der Gate-Kapazität Schwingungen mit niedrigem Pegel vorhanden sind.
Als Sicherheitsmaßnahme gegen die von @PeterSmith erwähnten Schwingungen versuchen Sie, einen Widerstand in Reihe mit dem Gate einzufügen. Versuchen Sie es mit Werten zwischen 100 Ohm und 1 kOhm.
Übrigens habe ich das Datenblatt des FDP18N50 überprüft: Seine Vgs-Schwellenspannung liegt zwischen 3 V und 5 V, außerdem ist der LT1006 kein Operationsverstärker mit Rail-to-Rail-Ausgang, sodass sein Ausgang nicht die positive Schiene erreichen kann, die 6 V beträgt (sein Datenblatt behauptet maximal etwa 4,4 V bei einer Stromversorgung von 5 V), sodass Sie am Ausgang maximal etwa 5,5 V erwarten können, möglicherweise nicht genug, um den Mosfet hart genug anzutreiben, wenn Sie ein Exemplar mit Vgs (th) nahe 5 V haben. Versuchen Sie, die Opamp-Versorgung zu erhöhen und zu sehen, ob es besser wird, oder versuchen Sie es mit einem Mosfet mit niedrigerem maximalen Vgs (th).
Wenn ich mir den Schaltplan des LT1006 im Datenblatt ansehe (ich bin IC-Designer, ich mag diese Schaltpläne :-)), denke ich, dass er am Ausgang eine ohmsche Last gegen Masse bevorzugt. Ich schlage vor, einen 1-kOhm-Widerstand zwischen dem Ausgang des Operationsverstärkers und Masse anzuschließen, um den Ausgang auf der richtigen Spannung zu halten. Wahrscheinlich berücksichtigt das Simulationsmodell diesen Effekt nicht, sodass der Widerstand dort nicht benötigt wird.
Aus dem Kommentar von @FakeMoustache geht hervor, dass LT-Simulationsmodelle (wie alle Hersteller) Kompromisse sind, aber LT hat genau dokumentiert, was die Kompromisse sind: linear.com/docs/4139
Versuchen Sie, die Spannungen direkt an den Eingängen des Operationsverstärkers zu messen, indem Sie dieselbe "gemeinsame" Verbindung verwenden.
@LorenzoDonati - Obwohl die Versorgungsspannung des Operationsverstärkers mit v6 gekennzeichnet ist, beträgt sie 12 Volt, wie im OP angegeben.
Keinen Spielraum. Ja, die Versorgung des Operationsverstärkers wurde auf 12 V geändert, Entschuldigung für die Verwirrung. Ja, anscheinend eine Art Schwingung. 1K-Widerstand vom Operationsverstärkerausgang zum Fet-Gate hat nicht geholfen. Kondensator an diesem Knoten hat es meistens behoben - Kondensator plus Widerstand noch besser, denke ich. Sie haben keine Zeit, bis später vollständig nachzuforschen. Vielen Dank !
@WhatRoughBeast Ja! Vielen Dank. Habe das OP nicht aufmerksam gelesen.
@PeterSmith schöner Fund. Allerdings etwas veraltet. Ich denke, es ist sogar älter als die erste Version von LTspice (IIRC etwas namens SwitcherCAD). Ich frage mich, ob sich ihre Modelle weit über das hinaus verbessert haben, was dieser AN sagt.
Bearbeitet, um den fraglichen Fehler zu korrigieren: MOSFET ist eigentlich FQP10N20C. Dies sollte die Dinge nicht sehr beeinflussen, obwohl Vth etwas niedriger ist.

Antworten (3)

Das Problem ist offensichtlich, dass am Ausgang des Operationsverstärkers eine Art Oszillation auftritt. Das Anbringen eines 10uF-Kondensators am 'Gate'-Knoten hat das Problem mehr oder weniger behoben, aber das Anbringen eines 1K-Widerstands zwischen dem Operationsverstärkerausgang und dem Fet-Gate hilft nicht viel. Ich sehe jetzt nicht mehr als etwa 7 mV Diskrepanz zwischen „Sense“ und „Set“ über den gesamten Stromeinstellbereich (jetzt 0 bis 300 mA) und eine Spannung (erforderlich, um diesen Strom durch die Last zu treiben) zwischen etwa 3 und 23 V .

Durch Hinzufügen großer (!) 10 uF am Ausgang des Operationsverstärkers haben Sie die Phasenreserve erhöht, die die Oszillation gestoppt hat.

Ich habe diese Frage gerade erst gesehen und Ihre Antwort, dass der Operationsverstärker oszilliert. Das war meine erste Vermutung aus dem Schaltplan und den Symptomen.

Allerdings gefällt mir nicht, wie du es gelöst hast. Das einfache Laden des Operationsverstärkerausgangs mit viel Kapazität kann in diesem Fall bei dieser Temperatur und dieser Mondphase jetzt funktionieren. Es funktioniert möglicherweise nicht mit demselben Opamp-Modell aus einer anderen Charge oder einer zukünftigen Charge.

Eine bessere Lösung besteht darin, einen kleinen Widerstand in den Rückkopplungspfad zwischen der Oberseite des Strommesswiderstands und dem negativen Operationsverstärkereingang einzubauen. Fügen Sie dann einen kleinen Kompensationskondensator direkt vom Ausgang des Operationsverstärkers zum negativen Eingang hinzu. Die Kappe liefert sofortiges negatives AC-Feedback, um den Verstärker stabil zu halten. Der Widerstand erhöht die Impedanz des Signals, sodass die Kappe etwas bewirken kann, ohne für andere Überlegungen zu groß sein zu müssen. Versuchen Sie es mit 1 kΩ und vielleicht 100 pF. Sie können einen größeren Kondensator verwenden, wenn die Reaktionszeit nicht schnell sein muss und Sie mehr Stabilität bevorzugen.

Hinzugefügt

Ich hatte mir das Datenblatt des Operationsverstärkers vorher nicht angesehen und nur für einen gewöhnlichen Operationsverstärker geantwortet. Der LT1006 ist für sehr niedrige Offset-Spannung und geringen Stromverbrauch optimiert. Das bedeutet, dass in anderen Bereichen Kompromisse eingegangen wurden. Einer davon ist anscheinend Stabilität. Das Datenblatt zeigt den Verstärker, der als Spannungsfolger mit Einheitsverstärkung verwendet wird, daher ist er anscheinend stabil mit Einheitsverstärkung.

Sehen Sie sich jedoch die typischen Anwendungsschemata auf Seite 11 genau an. Beachten Sie, dass einer 1 kΩ in Reihe mit einem 680-nF-Kompensationskondensator und der andere 2 kΩ mit einer 330-nF-Kompensation hat. Das bedeutet, dass meine obige Vermutung von 1 kΩ und 100 pF viel zu wenig war. Probieren Sie eine Kombination aus, die eher dem entspricht, was sie verwenden. Da Sie bereits einen Serienwiderstand von 1 kΩ haben, versuchen Sie es mit 1 µF direkt zwischen dem Ausgang des Operationsverstärkers und dem negativen Eingang.

Die andere Sache, die Sie tun müssen, ist, das Signal tatsächlich über die Zeit zu betrachten, nicht seine durchschnittliche Spannung. Setzen Sie schon mal ein Zielfernrohr darauf und sehen Sie, was wirklich los ist.

Ja, sogar 7mV-Diskrepanz sagt mir, dass etwas nicht stimmt. Ich ersetzte den Draht von R1 zum negativen Eingang des Operationsverstärkers durch einen 1-kΩ-Widerstand und fügte eine 1000pf-Kappe zwischen dem Ausgang und dem negativen Eingang des Operationsverstärkers hinzu. Aber ohne diesen Kondensator am Ausgang des Operationsverstärkers sehe ich eine Diskrepanz von bis zu 20 mV oder so (zwischen den Eingängen des Operationsverstärkers); Mit dieser Kappe verringern die zusätzlichen Komponenten (1 kΩ und 1000 pf) die Diskrepanz nicht (obwohl sie die Schaltung natürlich robuster machen können, wie Sie vorschlagen).
Einige seltsame Beobachtungen ... Wenn ich die Schaltung an ihre Anwendung anschließe - eine Reihe von LEDs anstelle des 50-Ω-Pots, mit dem ich getestet habe - geht die Diskrepanz zwischen den Eingängen des Operationsverstärkers auf 0. Dies gilt für alle 3 Komponenten (erwähnt im vorigen Kommentar). Aber wenn ich die Kappe am Ausgang des Operationsverstärkers entferne, werden die Dinge verrückt: Der Ausgang des Operationsverstärkers geht auf 5 + V und der Strom steigt auf 700-800 mA (und damit der negative Eingang des Operationsverstärkers auf 700 mV, obwohl der positive Eingang bei 200 mV liegt oder so). Ein sehr instabiles Verhalten, das ich in den Griff bekommen muss; Eines ist sicher: Ohne Dämpfung ist es sehr unglücklich.
Danke für die zusätzlichen Infos, @Olin. Eine ihrer Apps (auf derselben Seite) hat auch einen einfachen RC-Tiefpassfilter am Operationsverstärkerausgang. Ich habe das gestern Abend ausprobiert und es schien ziemlich gut zu funktionieren.
Ich muss versuchen, einen geeigneteren Operationsverstärker auszuwählen. Ich suchte hauptsächlich nach einem, der eine einseitige Versorgung ermöglicht.
Ich frage mich, ob es eine gute Möglichkeit gibt, diese Instabilität in LTspice zu modellieren? Ich habe das aktuelle LT1006-Modell (kein generischer Operationsverstärker). Vielleicht ein Rauschsignal kapazitiv einkoppeln und seine Frequenz überstreichen?

Ich bin kürzlich nach einer Pause zu diesem Projekt zurückgekehrt und hatte weiterhin Probleme mit der Stabilität des Operationsverstärkers. Ich habe jedoch entdeckt, dass es eine einfachere Lösung für das Problem gibt, den Linearregler LT3080; Es integriert im Wesentlichen den Operationsverstärker und den Leistungstransistor meiner ursprünglichen Schaltung und scheint bei meinen Tests sehr stabil zu sein.

http://cds.linear.com/docs/en/datasheet/3080fc.pdf

Meine neue Schaltung ist im Wesentlichen die in der Abbildung mit dem Titel "Low Dropout Voltage LED Driver" auf S. 17 des Datenblatts gezeigte. Aber anstatt einen festen Widerstand vom SET-Pin auf GND zu legen, treibe ich eine variable Spannung in den SET-Pin (man könnte auch einen variablen Widerstand verwenden, aber eine Spannung funktioniert für meine Anwendung besser). Das Spannungssignal muss lediglich in der Lage sein, die 10ua der internen Stromquelle zu versenken.

Es wirkt wie ein Zauber.