Forum: Mikrocontroller und Digitale Elektronik Messgrenze mittels OP einstellen


von Alexander B. (alexander_b86)


Lesenswert?

Hallo miteinenader

ich kann mal wieder den Wald vor lauter Bäumen nicht sehen.
Aktuell versuch ich mich an einer Schlatung in der ich gerne den 
vorgebenen Messbereich nach oben und unten einschränken möchte.
Der Messbereich eines TempFühlers reicht von -40 bis +100,
eingegrenzt auf 0 bis 50 wie ich die untere Grenze einstelle ist mir 
bekannt, Offset einstellen und mittels Subtrahierer rausrechnen.

Hier gibts schon das erste Problem bei mir denn mein Subtrahiere, ein 
µPC4558C, hat am - Eingang die Offset Spannung ( bei mir 2,73V) und am + 
Eingang die Spannung des Messfühlers (bei mir 2,96V ) jetzt sollte es 
doch eigentlich am Ausgang die Differenz davon geben (0,26 V ) gibts 
aber nicht statt dessen erhalte ich einen Wert von über 1,3 V. 
Beschaltet wird der OP mit 15V
also fals mir da einer einen Rat geben kann ich nehm dankend an.

Aber nun zu dem eigentlichen Problem wie stelle ich die Oberegrenze ein?
Also das bei max Temp die Maximale Spannung anliegt (Näherungsweise 
Versorgungsspannung OP).

Ich hoffe ich konnte mich klar ausdrücken und freue mich auf Antworten

von Michael B. (laberkopp)


Lesenswert?

Alexander B. schrieb:
> Aber nun zu dem eigentlichen Problem wie stelle ich die Oberegrenze ein?
> Also das bei max Temp die Maximale Spannung anliegt (Näherungsweise
> Versorgungsspannung OP).

Na da ergibt sich dei Begrenzung ja von alleine, der Op kann selbst als 
Rail-To-Rail Typ nicht mehr liefern als an versorgung rein geht.

von Traubensaft .. (increasingcurrant)


Angehängte Dateien:

Lesenswert?

Verstehe ich das richtig, dass du eine Art Sättigungsverhalten innerhalb 
des Aussteuerbereichs deines Verstärkers erzeugen möchtest?

Wie wäre es da mit einem Widerstand und zwei Dioden? (siehe Anhang; 
vergiss nicht die Flusspannungen zu addieren/subtrahieren)

Wenn das begrenzte Signal niederfrequent ist und nur an einen ADC soll, 
reicht wahrscheinlich auch ein aus C ~10 nF statt des Impedanzwandlers 
aus.

: Bearbeitet durch User
von klara (Gast)


Lesenswert?

Eigentlich schickt man auf den adc eingang immer die volle spannung die 
er verträgt. Also wenn davor ein opv mit 15 v liegt, so muss man dafür 
sorgen das der adc nur seine 5 V ODER 3,3 V bekommt die er verträgt. 
Hier muss man begrenzen. So ein adc verträgt auch meistens keine 
negative spannungen. Den rest macht man softwaremässig. Wenn der 
anwender nur den wert 100 max. Bekommen soll, so schneidet man den wert 
softwaremässig ab und meldet ggf. Noch einen überlauf.

von Traubensaft .. (increasingcurrant)


Lesenswert?

Das ist sicher einfacher, man verschenkt dann allerdings Auflösung.

von klara (Gast)


Lesenswert?

Traubensaft .. schrieb:
> Das ist sicher einfacher, man verschenkt dann allerdings
> Auflösung.

Auflösung ist ein anderes thema. Klar, das wäre mein erster ansatz. 
Überlegen was ich will. Den unteren wertebereich festlegen und den 
oberen. Also quasi eine lupe. Die differenz ergibt den darzustellenden 
ergebnisbereich. Die auflösung ergibt sich aus der bittiefe des adc.
Manche setzen auch gleich einen 24 bit adc ein um schon im uv bereich 
auflösung zu haben.

von georg (Gast)


Lesenswert?

Alexander B. schrieb:
> Also das bei max Temp die Maximale Spannung anliegt

Für die maximale Eingangspannung uimax soll die maximale 
Ausgangsspannung uomax sein, entsprechend für uimin ergibt sich uomin. 
Parameter, die dafür zur Verfügung stehen sind Verstärkung v und Offset 
o der Opamp-Schaltung.

Das sind 2 Gleichungen mit 2 Unbekannten, muss man nur nach v und o 
auflösen. Dabei stellt man dann auch fest, dass man nicht einfach die 
Schaltung für die Untergrenze dimensionieren kann, wie du das gemacht 
hast, und dann die Obergrenze (kann eigentlich das Wort schon nicht mehr 
hören) festlegen, weil die voneinander abhängig sind.

Georg

von Alexander B. (alexander_b86)


Angehängte Dateien:

Lesenswert?

@Traubensaft

ja genau so was hab ich gesucht liefert exakt das was es soll
Danke dafür
Oft sind die einfachten Dinge die kompliziertesten


Das problem hierbei ist das die Werte von einem anderen Gerät 
aufgenommen und intern anders gewandelt werden
das Projekt betrift mich aber nicht hab jedeglich die angabt von 0 .... 
10 Volt im Bereich 0 ... 50°C

Wie vorher noch mal erwähnt hab ich noch ein Problem mit meinem 
Subtrahierer
er ist beschaltet mit 10k

Die Empfindlichkeit ist aber dadruch extrem Hoch was sich durch anpassen 
der Widerstände wohl verringern lässt aber das Merkwürdige ist das ich 
eine Verstärkung von 2 habe was ja bei einem reinen Subtrahierer nicht 
sein kann.
Hoffe das mir einer von euch da noch ein Tipp geben kann

Mit ein paar Werten
Betrieben mit 15V / 0V
Ue1 -> 2,754V -> 10K -> 1,38V
Ue2 -> 2,7475V -> 10K  -> 1,623V
=> Ua -> 0,505V
zu rechnen wäre aber mit 0,243V

BeispielFoto im Anhang

von georg (Gast)


Lesenswert?

Alexander B. schrieb:
> Beschaltet wird der OP mit 15V

Damit fängt das Problem schon an. Wenn die Ausgangsspannung 0..x V sein 
soll, ist eine unipolare Stromversorgung nicht geeignet, der Opamp 
sollte mit positiver UND negativer Spannung versorgt werden, damit er 
korrekt 0 V ausgeben kann.

Georg

von Alexander B. (alexander_b86)


Lesenswert?

hab meinen Fehler auch gerade bemerkt

wie kann ich denn dafür sorgen das die 0,5V 0V entsprechen da ich ja im 
späteren verlauf verstärken möchte und bei 0,5V wird ja schon bei 0 Grad 
verstärkt so das ich keine 0V für 0Grad habe.

Kann ich das auch durch eine Anpassung der künstlichen Sättigung 
erreichen ?

von georg (Gast)


Lesenswert?

Alexander B. schrieb:
> Der Messbereich eines TempFühlers reicht von -40 bis +100,
> eingegrenzt auf 0 bis 50

Ich bin davon ausgegangen, dass man den Eingangsbereich eines ADC 
möglichst ganz ausnutzen möchte, der geht meistens von 0 bis 3,3 oder 5 
V. Also sollte der niedrigste Messwert 0 am Ausgang ergeben und der 
höchste 3,3V oder 5V, so hat man die beste Auflösung. Ist aber nur meine 
Meinung, ob du das auch so siehst ist eine gaaanz andere Frage.

Die hier im Forum bevorzugte Lösung ist sowieso statt einer Anpassung 
der Messspannungen einen 24bit-ADC zu verwenden.

Die nächste Frage ist dann, ob man den Ausgang auf 0 und Maximum 
begrenzen muss oder ob das dem ADC egal ist. Z.B. wenn der hochohmig ist 
genügt vielleicht auch ein Widerstand.

Und vor allem anderen ist die Frage nicht ob da 0 oder 50 Grad 
herrschen, sondern was der Sensor mit seiner Beschaltung dafür erzeugt. 
Mit den Werten kann man dann den Addierer/Subtrahierer berechnen.

Alexander B. schrieb:
> da ich ja im
> späteren verlauf verstärken möchte und bei 0,5V wird ja schon bei 0 Grad
> verstärkt so das ich keine 0V für 0Grad habe.

Hört sich ziemlich wirr an. Wahrscheinlich habe ich alles falsch 
verstanden mit meiner Auslegung 0 Grad -> 0 V und 50 Grad -> 3,3 V.

Georg

von Alexander B. (alexander_b86)


Lesenswert?

ich versuchs nochmal vllt ist es dann besser zu verstehen

An dem Seonor liegen bei 25°C etwas an die 2,98V und steiget pro Grad um 
10mV.
(Gehe mal start davon aus das es so in die Richtung LM335 geht)

Da ich mit 0°C als tiefsten Messwert rechne habe ich die annahme 
getroffen das der Sensor mir bei 0°C eine Spannung von 2,73V liefert.

Ich nahm dann einen Subtrahierer und nahm die 2,73V als Offset um von 
der am Senor liegenden Spannung abzuziehen, da der OP nicht an +/- 15V 
angeschlossen ist, sonderen jediglich an 0V/15V, ist bei einer Differenz 
von 0 der Ausgang auf 0,5V, das war mein Denkfehler im vorherigen Post
kann ja nie null werden.

Durch diesen Fehler habe ich meinen Offsetwert so angepasst das die 
erste ersichtliche Differenz sich einstellt bei Offset von 2,2V.
dadurch erhalte ich am Ausgang nun 0,5V + Differenzspannung.

Jetzt war meine Frage wie ich es schaffe die 0,5V heraus "zu filtern"
da ich sonst im im späteren Verlauf bei einer Verstärkung diese 0,5V 
immer mitverstärke.
Die maximale Differenz, da der TempBereich ja nur von 0 .... 50°C geht, 
liegt also bei 0,5V, diese wollte ich mir 20 verstärken um so auf die 
geforderten 0 ... 10V zu kommen.
Da ich aber die 0,5V stehts mitzuführen habe wäre ich hier in einem 
bereich von 10 ... 20V, was deutlich zu Hoch ist.
Bei einer Verstärkung von 10 dann im Bereich 5 ... 10V, was passen würde 
aber an der Genauigkeit dann rüttelt da mir die ersten 5V fehlen.

Zu dem ADC der im Anschluss kommt weiß ich leider nichts genaues nur das 
er Analog mit 0 .... 10V beschaltet werden soll.
Diese Angabe ist mir als Soll gegeben, kann ich nicht änderen.

Ich hoffe so lässt es sich leichter verstehen

Alex

von Peter D. (peda)


Lesenswert?

georg schrieb:
> Die hier im Forum bevorzugte Lösung ist sowieso statt einer Anpassung
> der Messspannungen einen 24bit-ADC zu verwenden.

Die bevorzugte Lösung ist eher, auf analoges Geraffel ganz zu verzichten 
und einen digitalen Sensor zu nehmen, z.B. DS18B20.

Reichen -55°C to +125°C nicht mehr aus, dann nimmt man ADCs, wo PT100 
oder Typ-K direkt angeschlossen werden können, z.B. AD7793 oder speziell 
für Thermoelemente MAX31856.

Selbstgebastelte Analogschaltungen erreichen in der Regel nur weit 
schlechtere Genauigkeiten oder man verwendet sehr teure und schwer 
beschaffbare Spezialwiderstände mit krummen Werten und geringem TK.
Die Referenz und die OPVs müssen natürlich auch stabil sein. Ein 
billiger TL074 mit 13mV Offest und 18µV/°C TK ist ungeeignet.

: Bearbeitet durch User
von klara (Gast)


Lesenswert?

Wenn man sich mit analog nicht gut auskennt ist eine digitale lösung in 
jedem fall vorzuziehen. Meist ist der fehler auch gut akzeptabel. Das 
dürfte in diesem fall zutreffen.

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.