www.mikrocontroller.net

Forum: Analoge Elektronik und Schaltungstechnik Opamp LM358: Probleme und Verständnisfrage


Autor: Marco (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

für das NiMH Ladegerät, das ich gerade baue möchte ich den Ladestrom
variabel einstellen und begrenzen können.

Um den Ladestrom zu messen möchte ich den Spannungsabfall über einen
0,02Ohm Widerstand messen (den habe ich aus einem Notebookakkupack
ausgebaut). Mehr als 1A Ladestrom sind für's erste nicht vorgesehen
und weil U=0,22*1 sehr wenig ist um mit dem Mega32 direkt zu messen
möchte ich diese Spannung verstärken.

Der Mega32 hat ja einen zuschaltbare Verstärkungsfaktor von 10 oder
200. Soweit ich gelesen habe gilt der aber nur für
Differential-Messungen und auch funktioniert garantiert auch nur im
TQFP oder MLF Gehäuse. Ich habe leider die DIL Variante.

Im Atmel App.note #450 ist ein Ladegerät beschrieben, bei dem dieser
Strom mittel LM358 um den Faktor 49 verstärkt wird.
Atmel verwendet 33kOhm und 680Ohm, ich habe 30kOhm und 620Ohm gewählt
und komme so ziemlich genau auf den gleichen Wert (1+(R1/R2)).


Den Ausschnitt aus dem Appnote-Schaltplan habe ich begefügt und den
Bereich, den ich nachbaue blau umrandet.
Viel kann man da auf den ersten Blick nicht falsch machen, aber wenn
ich nun den LM358 mir 5V beglücke (Ob Schaltnetzteil oder 4 Mignon
Akkus spielt keine Rolle) gibt er mir am Ausgang1 (Pin1) 118mV aus,
obwohl KEIN Strom durch den Messwiderstand fließt (beide Enden auf
GND).
Lasse ich durch einen 47Ohm Widerstand nun 106mA fließen (I=5V/47Ohm)
messe ich am Ausgang 138mV. Zwei 47Ohm Widerstände parallel ergeben
212mA und gemessene 168mV am Opamp.

Und hier weiß ich nun nicht mehr was läuft. 118mV... hmm ok der Opamp
verstärkt mit dem Faktor von 49.
- 118mV/49=2,4mV (nach dem Ohm'schen Gesetz die Spannung am
Messwiderstand)
- I=0,0024V/0,02Ohm
  I=0,12A !!!
Soll das heißen dass 120mA durch den Messwiderstand fließen obwohl
beide Seiten an GND klemmen?
Da kann doch irgendwas nicht stimmen. Wenn ich den Strom zurückrechne,
der beim 47Ohm Widerstand gemessen wird komme ich auf 170mA (106 wären
richtig).


Wie kommt es zu diesen seltsamen 118mV die eigentlich 0mV sein sollten?
Hier gibt's doch bestimmt sehr viele Leute die sich mit der Thematik
gut auskennen :)

Autor: A.K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wäre erstmal anzumerken, dass der Mega32 auch die Differenzeingänge mit
zuschaltbarem Verstärker besitzt, die in der AN beim Tiny15 benutzt
werden. Was die OPs überflüssig macht.

Autor: A.K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Zweitens steht bei Atmel 39K/680, nicht 33K/680.

Autor: A.K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ooops, sorry, hatte das mit den Diff-Eingängen bei dir überlesen. Drin
sind sie aber auch in der DIL-Version, nur nicht getestet.

Autor: A.K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
OPs sind nicht ideal. Der LM358 hat eine Offset-Spannung, also einen
eingebauten Messfehler, von typ 2mV.

Du musst folglich die Schaltung so dimensionieren, dass die Spannung
über dem Messwiderstand im interessanten Messbereich einen
Grössenordnung darüber liegt. Und darfst andererseits nicht erwarten,
dass bei einem Zehntel des Messtroms irgendwas sinnvolles herauskommt.

Und wenn Atmel die Schaltung für 2A dimensionert, damit auf 0,033 Ohm
kommt, solltest Du folglich einen entsprechenden grösseren
Messwiderstand verwenden, nicht einen kleineren.

Autor: Axel R. (axelr) Flattr this
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vbat2 wird doch direkt über dem Akku gemessen. Somit ist es  - von der
Energiebilanz mal abgesehen - egal, ob am Strommesswiderstand nun 1mV,
10mV, 100mV oder 0,5V abfallen. Ob der LM358 mit Spannungen nahe GND
klarkommt, weiss ich jetzt nicht. Muss man mal im Datenblatt nachsehen.
Wird er aber können, bei Atmel haben sie den ja auch verwendet.
Ich würde der Einfachheit zwei 0.1 Ohm Widerstände parallel schalten.
Sind dann 50mOhm. Sind bei 1Ampere 50mV. Das ganze dann etweder mal 51
verstärken. Macht dann bei 1A ziemlich genau 2,55Volt.
Allerdings solltest Du überlegen, den Offset, der ja beim LM358 nun mal
vorhanden ist, wegzuregeln.

Oder den Shunt soo groß machen, das die Verstärkung mitm OPV deutlich
kleiner ausfallen kann, dann stört auch der Offset nicht mehr so sehr.

Wenn der Shunt in der positiven Leitung zur Strommessung benutzt wird,
schaltet man zumeist einen Spannungsteiler vor dem Shunt gegen Masse
und hinterm Shunt einen Spannungsteiler gegen Masse. Damit wird
erreicht, das beide Eingänge des OPV halbe Betriebsspannung sehen. Zwar
halbiert sich damit auch der Spannungsabfall am Shunt, aber das
Brückengleichgewicht lässt sich sehr viel besser einstellen
(Offsetkompensation). Das kannst Du auch machen: Einen Spannungsteiler
2x10K oderso vom Shunt nach PLUS und einem hinterm Shunt nach PLUS. an
die Mittelabgriffe kommen deine Eingaänge vom OPV. So kannst Du mit
einem der vier 10kOhm Widerstände als Einstellregler den Offsetfehler
ausgegeln.
könntest Du--

Autor: A.K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
"egal, ob am Strommesswiderstand nun 1mV, 10mV, 100mV oder 0,5V
abfallen"

Nein, ist es eben nicht. Wie Marco ja selber schon festgestellt hat,
nur die Ursacher nicht erkennt.

Siehe Grundlagen Operationsverstärker.

2mV Offsetspannung heisst, dass man bei 0mV Differenz am Eingang und
einer Verstärkung von 50 eine Ausgangsspannung von +/-100mV erwarten
darf. QED. Im Datasheet sind es 2mV typ 5mV max, d.h. die 2,4mV sind
ganz im Rahmen der Spezifikation.

Übrigens hat Atmel nicht ohne Grund bei der Tiny15 Variante einen rund
zehnmal grösseren Messwiderstand verwendet. Der Tiny hat nämlich eine
Offsetspannung von max 40mV.

"Ob der LM358 mit Spannungen nahe GND klarkommt, weiss ich jetzt
nicht."

Ja, der schon.

Autor: Marco (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@A.K. und Axel:
Danke für eure Tipps!
Jetzt wundere ich mich nicht mehr über die Ergebnisse weil es jetzt
weiß welche Ursache sie haben :)
Ich habe jetzt einen 0,1Ohm Widerstand hervorgekramt und entgegen
Atmels Empfehlung mit MUX=9 10x Diff.verstärker zwischen AD0 und AD1
hergestellt.
AD0 liegt auf GND, AD1 ist an der Mittelanzapfung eines Potis (5V/GND)
angeschlossen. Der AD liefert mir einen Wert von 180 bei gemessenen
170mV. 5V/512bit*180/10(Gain) sind 175mV falls ich mich jetzt nicht
verrechnet habe und damit "ganz ok". Gleich mal sehen was der LM358
dazu sagt...

@Axel:
Dein Vorschlag wird ja so ähnlich von Atmel im angesprochenen Appnote
beim Tiny15L durchgeführt. Da gehen beide Spannungsteiler (33k/10k) vom
Shunt nach GND... kannst du mir den Sinn davon erklären? Ich steige da
noch nicht so ganz durch.

Autor: A.K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Spannungsteiler: Damit werden die Inputs in die zulässige Region
geteilt. Der LM358 kann zwar bei den Inputs bis unter GND runter, aber
nicht annähnend an VCC ran.

Autor: A.K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Offsetspannung kannst Du freilich auch softwaremässig kalibrieren.
Einfach vom Ergebnis den Messwert bei Strom=0 abziehen.

Autor: Marco (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Und wenn ich durch den 0,1Ohm Widerstand wieder 106mA fließen lasse,
messe ich mit dem DMM 11mV und am Opamp Ausgang 580mV.
580mV/49=11,8mV = happy :)
Jetzt gilt es "nur noch" den Atmega dazu zu überreden über AD1 1-2
pro Minute die Spannung zu messen und den Buck-converter so zu regeln
dass der eingestellt Strom konstant bleibt.

Welche Methode würdet ihr verwenden? Interner Diff.verstärker oder
Opamp?

Viele Grüße,
Marco

Autor: A.K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bleib beim internen OP und korrigiere ggf. per Software gelegentlich die
Offset-Spannung. Denn: Rechne mal aus, was bei den angepeilten 1000mA am
OP hinten rauskommen sollte... Oder geh runter mit der Verstärkung. Mehr
als ~3,5V gibt der OP nicht her.

Wobei die Atmel'sche Beschaltung mit Messung im oberen Zweig ja den
Vorteil hat, dass der zweite OP auch entfällt.

Autor: Arno H. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Um auf eine niedrige Ausgangsspannung zu kommen empfiehlt sich ein
Pull-Down von max 10k am Ausgang nach Masse (wird z.B. beim LM324 so
gemacht). Das Datenblatt gibt die min Ausgangsspannung mit einem RL von
10kOhm an.
Arno

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.