Forum: Analoge Elektronik und Schaltungstechnik Messpannung mit OPV für ADC anpassen


von Basti (Gast)


Lesenswert?

Hallo Leute,

hab ne ziemlich einfache und banale Frage, und erwarte keine konkrete 
Lösung sondern Schlagworte nach was ich genau Suche ;)

Ich habe eine Spannung die ca. zwischen 1-2 Volt liegt.
Diese möchte ich mittels OPV (Rail-2-Rail) in den Bereich 0-5V drücken.

Ich geh davon aus das ich Meine Spannung mittels Offset erst auf 0 
runterdrücken muss um diese dann zu verstärken. Wie genau weis ich 
allerdings nicht.

Danke schonmal,
Gruß Basti

von Achim M. (minifloat)


Angehängte Dateien:

Lesenswert?

Nimm die invertierende Verstärkerschaltung. Verstärkung muss 5 sein.
Dann den +Eingang nicht auf 0V legen, sondern einen Offset nach oben 
anlegen. Das bringt dein genanntes Spannungsintervall zwar verkehrtherum 
in den ADC-Messbereich(Glaskugel poliert!), aber die Invertierung kannst 
du ja per Software rückgängig machen.

Ich hab den Kram mal angehängt, dann kannst du mir wenigstens böse 
sein...
Die Widerstandsverhältnisse Rhi/Rlo und Rfb/Rin sollten gleich bleiben, 
wenn du kaufbare Werte einsetzen willst. Vielleicht ist es nötig, dem 
OPV mit einem klitzekleinen Kondensator über Rfb ein wenig die 
Schwingneigung zu nehmen.

von Basti (Gast)


Lesenswert?

Ouh vielen Dank :)
Sieht doch echt gut aus. Und wenn der Rail2Rail nicht ganz runter oder 
hoch kommt, ist das ja nicht so schlimm. Muss ja nur ungefähr in dem 
Bereich liegen.

Simuliert mit? Spice?

von Basti (Gast)


Lesenswert?

Nochmal ich...

Hab mich jetzt mal so genauer reingedacht.
Das Verhältnis 50K zu 10K versteh ich ja noch -> Vu=5
Aber die 40K zu den 20K sind mir noch schleierhaft. Was liegt den als 
REF an? ich würde die Schaltung gerne mit 5V versorgen. Da würde ich bei 
dem Teiler ja aber Ua = Ue/60*20 = 1,66 Volt rauskommen? Also diesen 
Offset versteh ich nicht so ganz?

Danke aber trotzdem schonmal :)

von Helmut S. (helmuts)


Lesenswert?

Am +Eingang Uinp des Opamp liegt 1,667V


Uout = Uinp -(Uein-Uinp)*Rfb/Rin

Uout = 1,667V -(Uein-1,667V)*5
------------------------------

Uein = 1V  --> Uout=5V
Uein = 2V  --> Uout=0V

von Basti (Gast)


Lesenswert?

Ach jetzt ergibt das Sinn :D Danke
Aber geht das überhaupt wenn Versorgung vom OPV +5V bis 0V ist?

Rin sollte möglichst hochohmig sein, um die Belastung so gering wie 
möglich zu halten, Korrekt?

Danke

von Basti (Gast)


Angehängte Dateien:

Lesenswert?

Schon wieder ich...

Also nochmal zur Sache - KTY 81 soll eingelesen werden, per ADC. 
Natürlich möglichst genau. So 0,5 - 0,25 grad würde ich mir wünschen.

Hab jetzt mal die Schaltung gepostet wie ich das jetzt verstanden habe.
Belaste ich da meinen KTY-Teiler schon zu stark mit dem inv-Verstärker 
um ein gutes Ergebnis zu erhalten?

von Basti (Gast)


Lesenswert?

Und gleich mal + und - vertauscht -.-
EDIT Button vermiss

von Achim M. (minifloat)


Lesenswert?

Nimm halt einfach einen Doppelopamp im SO8- oder DIP8-Gehäuse.
Einer der Beiden dann als Spannungsfolger.

Basti schrieb:
> Simuliert mit? Spice?
Mit LT-Spice.

mfg mf

von Yalu X. (yalu) (Moderator)


Angehängte Dateien:

Lesenswert?

Die Schaltung nichtinvertierend, mit einem Widerstand weniger und mit
hohem Eingangswiderstand :)

> EDIT Button vermiss

Der erscheint, wenn du dich registrierst. Sonst könnte ja jeder ...

von Basti (Gast)


Lesenswert?

Ahh Danke...

Und beim nichtinvertierenden entstehen mir sonst keine weiteren 
Nachteile? Wieso wurde dann der invertierende zuerst Vorgeschlagen? Muss 
ja irgendeinen Grund haben oder etwas nicht?

von alesi (Gast)


Lesenswert?

Basti schrieb:
> Und beim nichtinvertierenden entstehen mir sonst keine weiteren
> Nachteile? Wieso wurde dann der invertierende zuerst Vorgeschlagen? Muss
> ja irgendeinen Grund haben oder etwas nicht?



OPV Grundschaltungen hier auf mikrocontroller.net
http://www.mikrocontroller.net/articles/Operationsverst%C3%A4rker-Grundschaltungen#Verst.C3.A4rkergrundschaltungen

Invertierender OPV
http://www.elektronik-kompendium.de/sites/slt/0210141.htm

"Der nichtinvertierende Verstärker wird für Anwendungen genutzt, die 
einen sehr großen Eingangswiderstand und sehr kleinen Ausgangswiderstand 
brauchen."
siehe:
Nicht-invertierender OPV
http://www.elektronik-kompendium.de/sites/slt/0210151.htm

Skript OPV Grundschaltungen Prof. Gossner
http://vg09.met.vgwort.de/na/550e854e3eae4f4b94f07e61107a7abc?l=http://www.prof-gossner.eu/pdf/15-Operationsverstaerker-Grundschaltungen.pdf

von Salewski, Stefan (Gast)


Lesenswert?


von Basti (Gast)


Lesenswert?

Hab mich jetzt mal ein wenig durch die Links gelesen, Danke.

http://www.mikrocontroller.net/articles/Operationsverst%C3%A4rker-Grundschaltungen#Nichtinvertierender_Verst.C3.A4rker_mit_Offset
Das ist ja das für mich jetzt bei der Schaltung entscheidende. Leider 
habe ich nach viel hin und her rechnen nur noch Mist auf dem Blatt und 
nach einarbeiten in LTSpice bestätigt mir die Simulation diesen Mist :D

Habe mir nun die Spannungen am Sensor genau ausgerechnet.
Will also am Eingang eine Spannung zwischen 1V und 1,5V in den Bereich 
0-5V bringen.

Laut dem Artikel müsste Vu=8 ja stimmen. Ue - Uoff ergibt dann 0,5 im 
höchstfall und da sich der Offset auch am Ausgang niederschlägt wären 
das (5V-1V)/0,5V = Vu 8

Aber wie setzt man bei der Berechnung nun weiter an? Ich möchte hier 
nochmal betonen, dass ich jetzt KEINE Widerstandskombination hören will. 
Ich will das ganze verstehen und selbst zu einem Zufriedenstellenden 
Ergebnis kommen. Brauche im moment nur einen Ansatz wie ich weiter 
machen soll, da mir ja R1-R3 unbekannt sind.

Gegeben hab ich mal notiert:
Uv = 5V
Ue = 1,5V
Uo = 1V
Vu = 8

Ich betrachte hier nur den Maximal Fall. Da nach Abzug des Offsets 0V 
übrig bleiben wird der Minimal Fall nicht relevant sein oder?

Danke schonmal, ich hoffe ihr könnt mir meinen Ansatz liefern, damit ich 
das endlich verstehe :)

von Salewski, Stefan (Gast)


Lesenswert?

>habe ich nach viel hin und her rechnen nur noch Mist auf dem Blatt und

Ja, mit drei Widerständen ist das nicht ganz einfach...

Mach doch einfach R2=0 in dem Bildchen aus Deinem Link.

Dann hast Du

UA=-VCC*R3/R1+UE(1+R3/R1)

VCC wird invertierend verstärkt und UE nichtinvertierend.

Für UA und UE setzt Du jeweils die Grenzwerte ein, hast dann zwei 
Gleichungen. VCC ist ja wohl bekannt, bleibt der Quotient R3/R1 als 
einzige Unbekannte, die sich durch Kombination der beiden Gleichungen 
ergibt.

Die Schaltung mit R2=0 entspricht übrigens
http://www.mikrocontroller.net/articles/Spannungsteiler#Spannungsteiler_mit_Offset.2C_aktiv

von Salewski, Stefan (Gast)


Lesenswert?

>Mach doch einfach R2=0 in dem Bildchen aus Deinem Link.

R2=unendlich meinte ich natürlich!

von Christian S. (christianstr)


Lesenswert?

Bei den Verstärkerwiderständen nimmt man einen Widerstand an und rechnet 
sich dann den zweiten aus. Im Normalfall nimmt man einen recht großen 
Widerstand im kOhm-Bereich an, damit man möglichs wenig Leistung verbrät 
bzw. bei kleinen Toleranzen sich die Verstärkung nicht so heftig ändert.

von Salewski, Stefan (Gast)


Lesenswert?

Stefan Salewski schrieb

>Mach doch einfach

Ich fürchte mal, ich habe da völligen Quatsch geschrieben. Man wird das 
wohl doch mit drei Widerständen durchrechnen müssen...

von Yalu X. (yalu) (Moderator)


Lesenswert?

Nach diesem Artikel

  http://www.mikrocontroller.net/articles/Operationsverst%C3%A4rker-Grundschaltungen#Nichtinvertierender_Verst.C3.A4rker_mit_Offset

ist

Daraus folgt

Die Verstärkung ist das Verhältnis der Änderung der Ausgangsspannung zur
Änderung der Eingangsspannung:

In deinem Beispiel ist Uamax=5V, Uamin=0V, Uemax=1,5V und Uemin=1V, also
V=10.

Würde man Uemin=1V ohne Offset mit V=10 verstärken, kämen 10V statt
Uamin=0V heraus, also 10V zuviel. In der zweiten Gleichung von oben muss
also der Term nach dem Minuszeichen 10V betragen. Somit ist
Uo=10V/(10-1)=(10/9)V.

Das Verhältnis von R1 zu R2 ist also bei einer Versorgungsspannug von 5V

  R1 : R2 = (5V - (10/9)V) : (10/9)V = 35 : 10 = 7 : 2

Man könnte also bspw. R1=7kΩ und R2=2kΩ verwenden.

Da die Verstärkung V=1+R3/(R1||R2) ist, muss R3=(V-1)·(R1||R2) sein.
R1||R2=7kΩ·2kΩ/(7kΩ+2kΩ)=(14/9)kΩ und damit R3=14kΩ.

Man kann jetzt die Widerstände noch jeweils mit einem konstanten Faktor
multiplizieren, damit

- der maximale Ausgangsstrom des Opamp deutlich unter dem maximal
  erlaubten Wert liegt (die Widerstände sollten also nicht zu klein
  sein),

- der Fehler durch den Eingangsstrom am invertierenden Eingang
  vernachlässigbar ist (die Widerstände sollten also nicht zu groß
  sein) und

- die Widerstände möglichst gängige Werte haben (E12 oder E24).

Durch etwas Herumprobieren oder die Zuhilfenahme eines Herumprobiertools
erhält man mit einem Faktor von 2,15 folgende günstige E24-Werte:

  R1=15kΩ  R2=4,3kΩ  R3=30kΩ

Andere Wege zum Ziel:

  Beitrag "Re: niedrige Spannungen hochskalieren"

von Basti (Gast)


Lesenswert?

Christian Str schrieb:
> Bei den Verstärkerwiderständen nimmt man einen Widerstand an und rechnet
> sich dann den zweiten aus. Im Normalfall nimmt man einen recht großen
> Widerstand im kOhm-Bereich an, damit man möglichs wenig Leistung verbrät
> bzw. bei kleinen Toleranzen sich die Verstärkung nicht so heftig ändert.

So hatte ich das gestern gemacht. Evtl hab ich mich verrechnet. Ausgang 
lag zwischen ca 1 und 5 Volt. Hatte also den offset im Ausgang. Wie 
vermeid ich das? Einfach nur 4v für Ua annehmen ?

von Basti (Gast)


Lesenswert?

Hey Danke super,
Werde das später alles selbst noch mal durch rechnen und auch 
simulieren. Vu 10 hatte ich gestern auch schon mal, wusste nur nicht 
mehr wie ich darauf gekommen bin und warum die 10 aber jetzt ergibt das 
alles einen Sinn. Danke.

Yalu X. schrieb:
> Durch etwas Herumprobieren oder die Zuhilfenahme eines Herumprobiertools
Wo findet man denn so ein Tool? Wäre ja öfters recht hilfreich.

Gruß Basti

von Christian S. (christianstr)


Lesenswert?

Basti schrieb:
> Yalu X. schrieb:
>> Durch etwas Herumprobieren oder die Zuhilfenahme eines Herumprobiertools
> Wo findet man denn so ein Tool? Wäre ja öfters recht hilfreich.

LTSpice?

von Basti (Gast)


Lesenswert?

Christian Str schrieb:
> Basti schrieb:
>> Yalu X. schrieb:
>>> Durch etwas Herumprobieren oder die Zuhilfenahme eines Herumprobiertools
>> Wo findet man denn so ein Tool? Wäre ja öfters recht hilfreich.
>
> LTSpice?

Dachte es geht um ein Tool das die Widerstände mit einem Faktor 
multipliziert um auf passende E-reihen Kombinationen zu kommen, wenn du 
verstehst was ich meine :)

von Basti (Gast)


Lesenswert?

Super tolle Erklärung, Danke nochmal.

Hab nochmal alles nachgerechnet und auch mit LTspice simuliert, scheint 
ja alles wunderbar zu klappen.

Nur diese beiden Formeln sind mir noch etwas schleierhaft
Yalu X. schrieb:
> Uo=10V/(10-1)=(10/9)V.
>
>   R1 : R2 = (5V - (10/9)V) : (10/9)V = 35 : 10 = 7 : 2

Woher kommen diese Formeln? Welche Grundformel wurde hier umgestellt?
Ne kleine Erläuterung wäre nett :)

von Yalu X. (yalu) (Moderator)


Angehängte Dateien:

Lesenswert?

Basti schrieb:
> Nur diese beiden Formeln sind mir noch etwas schleierhaft
> Yalu X. schrieb:
>> Uo=10V/(10-1)=(10/9)V.

Ich nehme an, diese Gleichung von oben war noch klar:

Daraus folgt:

Hier setzt du jetzt einfach Ue=1V, Ua=0V und V=10 ein.¹

>>   R1 : R2 = (5V - (10/9)V) : (10/9)V = 35 : 10 = 7 : 2

Nach diesem Artikel

  http://www.mikrocontroller.net/articles/Operationsverst%C3%A4rker-Grundschaltungen#Nichtinvertierender_Verst.C3.A4rker_mit_Offset

ist

Daraus folgt

Das ist einfach die Formel des unbelasteten Spannungsteilers.

Basti schrieb:
> Dachte es geht um ein Tool das die Widerstände mit einem Faktor
> multipliziert um auf passende E-reihen Kombinationen zu kommen, wenn du
> verstehst was ich meine :)

Ich meine, da wäre mal was hier im Forum (vielleicht in der Codesamm-
lung) und/oder sonstwo im Web (als Web-Tool) gewesen. Das einzige, was
ich gerade finden kann, geht aber nur für zwei Widerstände:

  http://www.cl-projects.de/projects/tools/resmatch.phtml

Ich benutze für so etwas ein selbstgeschriebenes Kommandozeilen-Tool,
das auch für mehr als zwei Widerstände funktioniert. Man übergibt die
Nummer der E-Reihe und eine beliebige Anzahl von weiteren Zahlen, die
das Verhältnis der gewünschten Widerstände zueinander angeben. Das
Ergebnis ist eine entsprechende Anzahl von E-Reihen-Werten, die das
vorgegebene Verhältnis möglichst gut wiedergeben.

Im obigen Beispiel sollen aus der E24-Reihe drei Widerstände mit dem
Verhältnis 7:2:14 ermittelt werden. Das geht dann so:
1
$ rratio 24 7 2 14
2
R1  =    1.50
3
R2  =    0.43
4
R3  =    3.00
5
6
Err =    0.33%

Das sind genau die Werte, die ich (mit 10kΩ multipliziert) in meinem
letzten Beitrag als günstige Lösung genannt habe.

Ich habe mal den Quellcode angehängt, befürchte aber, dass du wenig
damit anfangen kannst, weil es ein Haskell-Programm ist ;-)

————————————
¹) Mit dem zweiten (Ue,Ua)-Paar (Ue=1,5V, Ua=5V) muss übrigens dasselbe
   Ergebnis herauskommen, sonst stimmt das berechnete V nicht.

von Salewski, Stefan (Gast)


Angehängte Dateien:

Lesenswert?

Yalu X. schrieb:
> R1=15kΩ  R2=4,3kΩ  R3=30kΩ

Danke.

Ich hatte auch noch mal etwas gerechnet, siehe Anhang.
Ich hatte die Bezeichnungen R1 und R2 vertauscht, sonst ergeben sich die 
gleichen Werte, mit

#!/usr/bin/ruby
u1 = 1
u2 = 1.5
a1 = 0
a2 = 5
v =  5

r1 =4.3e3

h = (a1 - u1) / (a2 - u2)

r2 = r1 * (h * (u2 - v) - (u1 - v)) / (u1 - h * u2)

r3 = (a1 - u1)  r1  r2 / ((r1 + r2)  u1 - v  r1)

r3x = (a2 - u2)  r1  r2 / ((r1 + r2)  u2 - v  r1)

puts "r1 = #{r1} (gegen Masse, frei gewaehlt)"
puts "r2 = #{r2}"
puts "r3 = #{r3}"

folgt

r1 = 4300.0 (gegen Masse, frei gewaehlt)
r2 = 15050.0
r3 = 30100.0

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.