Forum: Analoge Elektronik und Schaltungstechnik Thermoelementverstärker LTSpice


von Odysseus (Gast)


Angehängte Dateien:

Lesenswert?

Hallo an alle

Meine Aufgabe für eine Hausarbeit ist es eine 
Thermoelementverstärkerschaltung mit LTSpice zu simulieren.

Die Vorlage für die Schaltung ist angehängt.

Die Schaltung soll so dimensioniert sein, dass:

- am Ausgang eine Spannung von 0V bis 1V vorliegt
- Messtemperatur bei 0°C bis 400°C
- Klemmentermperatur 0°C bis 50°C
- Thermopaar NiCr - Ni

Die Widerstandsverhältnisse habe ich entsprechend der Aufgabenstellung 
dimensioniert.

Hinweise zur Schaltung:

V1:
Simuliert die Klemmentemperatur und ist hier vorerst konstant auf "50°C"
eingestellt.

V2:
Simuliert die Messtemperatur, die Ausgangsspannung soll später in 
Abhängigkeit von ihr dargestellt werden

B1:
Thermospannung. Die Formel ergibt sich durch die Eigenschaften des 
gewählten Thermopaares und liegt zw. 0mV (0°C) und 14mV (400°C)

B2:
Simuliert einen KTY10


Nun zu meinem eigentlichen Problem:
So wie die Schaltung jetzt vorliegt bekomme ich am Ausgang eine Spannung 
die zu hoch ist (etwa 4V, nur leichter Anstieg mit Temperatur)
Das kommt daher, dass vor dem letzten Elektrometerverstärker die 
Spannung von ca. 2V bis 2,5V reicht, also 2V zu hoch

Versuche ich nun aber z.B. R13 höher zu machen simuliert mir das 
Programm nichts mehr (es scheint als wäre das Stepen in einer 
Endlosschleife).
Das gleiche passiert, wenn ich für die Klemmentemperatur etwas anderes 
als 50°C einstelle.
Woran kann das liegen? Muss das Programm durch die Schwankungen der 
Spannungsversorgung zu viel berechnen oder ist die Schaltung einfach 
falsch bzw. ungünstig umgesetzt?

Ich bedanke mich schon einmal für alle Beiträge und wünsche frohe 
Feiertage!

von Ulrich (Gast)


Lesenswert?

Der Operationsverstärker geht einfach in die Sättigung. Mehr als etwa 
3,5-4 V kann der LM124 bei 5 V Versorgung nicht ausgeben - wie gut das 
in der Simulation wiedergegeben wird hängt vom Modell ab. Die Schaltung 
ist einfach nicht gut - schon der LM124 ist keine gute Wahl. Besserer 
Ersatz wäre z.B. ein LT1014.

Mit einer kleinen Änderung (den KTY..) nach V- statt nach GND könnte es 
vielleicht hinkommen, wenn man R11 passend wählt.

von rocco (Gast)


Lesenswert?

Klopp den Mist in die Tonne. Ein Thermoelement wird NIE mit einem 324 
verstaerkt. Schau dir mal die Offsetspannung an, dann die Drift.

von Physiker (Gast)


Lesenswert?

rocco schrieb:
> Klopp den Mist in die Tonne.

Hast Du auch Ahnung von dem, wonach hier gefragt wurde, oder nur eine 
mehr als niveaulose Antwort! Vielleicht solltest Du dein Umfeld, in dem 
so ein Sprachgebrauch herrscht, mal wechsel.
Beste Grüße.

von Helmut S. (helmuts)


Lesenswert?

Hallo,

Ich verstehe nicht wo deine 37uV/°C herkommen.
Hier gibt es z. B. 40,44uV/°C.
http://staff.ltam.lu/feljc/school/asser/6_Messtechnik.pdf

Bitte einen Link auf das Thermoelement.

Gruß
Helmut

von Harald W. (wilhelms)


Lesenswert?

rocco schrieb:

> Ein Thermoelement wird NIE mit einem 324 verstaerkt.

Falsch. In einer Simulation geht das problemlos und Du wirst damit
bei richtiger Schaltung vermulich sogar einen Fehler von weniger als
ein Nanograd erreichen. :-)
Gruss
Harald

von Helmut S. (helmuts)


Lesenswert?

Die Schaltung ist fast richtig. Nur die Verstärkung und der Offset des 
KTY10-Verstärkers sind viel zu hoch. Der soll doch 0mV bis 125mV bei 0° 
bis 50° machen. (400°C=1V)

Ich denke das erwähnte Konvergenz-Problem kommt hauptsächlich von der 
virtuellen Masseschaltung.


(Allgemein empfehle ich als erstes mal eine normale +/-5V Versorgung und 
den Opamp-Typ "UniversalOpamp2" zu verwenden. Wenn die Schaltung damit 
richtig funktioniert, dann einen realen Opamp einsetzen.)

: Bearbeitet durch User
von Odysseus (Gast)


Angehängte Dateien:

Lesenswert?

Danke für alle Beiträge!

Helmut S. schrieb:
> Ich verstehe nicht wo deine 37uV/°C herkommen.

Laut meinen Unterlagen berechnet sich die Thermospannung:

U = (eA - eB) * (Tm-Tk)

eA = 2,2 mV / 100K ( Seebeck-Koeffizient NiCr bzgl. Platin)
eB = -1,5 mV / 100K ( Seebeck-Koeffizient Ni bzgl. Platin)

Klemmentemperatur sei hier = 0 , da diese durch die Schaltung 
kompensiert wird

Dementsprechend wäre U = (2,2 mV/100K + 1,5 mV/100K ) * Tm = 0,000037 * 
Tm


Dass der gewählte OPV in die Sättigung geht halte ich für sehr 
plausibel.
Ich habe wie empfholen nun alle OPVs durch den UniversalOpamp2 ersetzt 
mit einer idealen +/-5 V Versorgung.
Damit kann ich nun alles simulieren, aber das Ergebnis weicht immer noch 
stark ab.
Ich weiß nun aber nicht, was ich anders dimensionieren soll, da aus dem 
Punkt 3 schon meine gewünschten 0 - 1 V rauskommen, d.h. durch die 
Kompensation der Klemmenspannung wird es doch immer verfälscht ?

von Helmut S. (helmuts)



Lesenswert?

Die Ausgangsspannung V(out) muss unabhängig von der Klemmentemperatur 
werden. Dazu muss der Verstärker für die Klemmentemperatur richtig 
dimensioniert werden.


Nachtrag:
Mann kann auch ° plotten. Siehe Bild.

: Bearbeitet durch User
von Odysseus (Gast)


Lesenswert?

Danke, deine Schaltung ist sehr aufschlussreich!

Anscheinend habe ich den Verstärker für die Klemmentemperatur völlig 
falsch dimensioniert.

Aber wie kommst du auf einen so hohen Linearisierungswiderstand?

Habe mir den mit folgender Formel aus meinen Unterlagen berechnet:

RL = (2 * ( dR/dT)^2 )/ ( d^2 R/dT^2)   - R(Tm)

von B e r n d W. (smiley46)


Lesenswert?

> wie kommst du auf einen so hohen Linearisierungswiderstand?

RL kann so nicht stimmen. Er hat auch keinen Einfluss, da unten kein 
Widerstand, sondern eine Spannungsquelle hängt.

: Bearbeitet durch User
von Helmut S. (helmuts)


Lesenswert?

>RL = (2 * ( dR/dT)^2 )/ ( d^2 R/dT^2)   - R(Tm)

Das ist vermutlich die Formel um die Spannung am NTC zu linearisieren. 
U=const1*(1+T*const2)


Schalte 5kOhm parallel zum KTY10 und bestimme die Widerstände am Opamp 
neu. Damit bekommst du eine viel bessere Kompensation als in meiner 
bisherigen Schaltung.
Versuch es erst mal selber. Ich werde dann später die Lösung zeigen.

von Helmut S. (helmuts)


Lesenswert?

> da unten kein Widerstand, sondern eine Spannungsquelle hängt.

Das was wie eine Spannungsquelle aussieht ist eine BV-Quelle die sich 
wie R(T) des NTC-Widerstandes verhãlt.

: Bearbeitet durch User
von Odysseus (Gast)


Angehängte Dateien:

Lesenswert?

Habe für RL nun 5k Ohm gewählt und dementsprechend neu dimensioniert. 
Dabei kommen dann ähnliche Werte heraus wie in meiner ursprünglichen 
Schaltung und dementsprechend ist auch die Kompensation.

Habe meine Berechnung mal angehängt, vielleicht ist mit dieser 
Vorgehensweise auch etwas nicht in Ordnung

von B e r n d W. (smiley46)


Lesenswert?

Das ist eine alter Hut! Je nach Temperaturbereich wird der KTY10 mit 
einem Pull-Up von 5.1k bis 5.6kOhm linearisiert. Der Unterschied liegt 
darin, ob z.B. von -30...70°C oder von 0...50°C linearisiert werden 
soll.

Das nach GND schalten des 5k bildet mit dem Pull-Up eine neue 
Spannungsquelle mit der Urspannung 0.68 Volt und der Ri des 
Spannungsteilers beträgt 4.3k, was schon etwas zu niedrig ist.

: Bearbeitet durch User
von Helmut S. (helmuts)



Lesenswert?

Hallo,
hier mal ein Beispiel mit 5kOhm. Du kannst ja jetzt das Ganze mit 
5,6kOhm statt 5kOhm nochmals verbessern.


Nachtrag:
Natürlich würde man da nie die Versorgungsspannung V+ für die Brücke 
nehmen sondern eine präzise Referenzspannungsquelle mit kleinem TK. 
Außerdem müssen die Widerstände 0,1% oder weniger Toleranz haben und 
einen TK mit 25ppm oder besser weniger. Mit "popeligen" 1% Widerständen 
und 100ppm braucht man da gar nicht anfangen.
OK, für den Aufbau in einer Schule bei 25+/-1Grad ist das natürlich 
egal.

: Bearbeitet durch User
von B e r n d W. (smiley46)


Lesenswert?

> Mit 1% Widerständen und 100ppm braucht man da gar nicht anfangen.

Die KTY10 selber streuen schon mit +/- 1.2°C. Eher würde ich den PULL-UP 
abgleichbar machen. Dann kann dieser Fehler auch wegkompensiert werden.

von Odysseus (Gast)


Lesenswert?

Ich verstehe leider nicht wie du auf Widerstandsverhältnisse kommst.
Könntest du mir das vielleicht erläutern ?

von Helmut S. (helmuts)


Lesenswert?

Nimm meine letzte Schaltung inclusive dem Plotfile(.plt).

Wähle RL z. B. 20kOhm.
RUN
V(4)(blau) wird jetzt zu steil sein. deshalb ist die Summe V(out)(rot) 
ansteigend.

1. Erhöhe/erniedrige R8 bis die rote Kurve ganz flach ist.

2. Die rote Kurve beginnt jetzt aber nicht bei 0V so wie es sein soll.
Deshalb erniedrige R6 bis die rote Kurve bei 0V beginnt,

Jetzt wird sie aber nicht mehr ganz flach sein.
Gehe zu 1. und wiederhole 1 und 2 so lange bis dir das Ganze gut genug 
ist (rote Kurve flach genug und durch 0V).

von Odysseus (Gast)


Lesenswert?

Das ist natürlich eine Möglichkeit, aber darauf kann ich leider nicht 
zurückgreifen, da ich die Dimensionierung der Schaltung auch rechnerisch 
belegen muss.

Die Ausgangsspannung der Auswertungsschaltung der Klemmenspannung 
berechnet sich doch nach:

Ua(x) = Ue(x) * ( 1 + R7/R8 + R7/R6) - R7/R6 * U0

mit
Ue(x) = U0 * R(x)/ ( R(x) * RL )
U0 = V+ = 5V

Und Ua(x) soll zwischen 0V (0°C) und 125mV (50°C) liegen.
Daher gibt es 2 Gleichungen zu lösen:

 1) Ua(0°C) = 0     * U0
 2) Ua(50°C)= 0,025 * U0

Diese Berechnung hatte ich vorher falsch gemacht, da ich für Messanfang
0,1 U0 und für Messende 0,9 U0 gewählt hatte

Mit RL = 4411 Ohm und  R7 = 1 kOhm bekomme ich dann:
R6 = 12.5 kOhm und R8 = -1276.5 Ohm

Damit erreiche ich dann aber auch wirklich meine 0 - 0,125 V, aber ich 
habe eben dann einen negativen Widerstand

von Helmut S. (helmuts)


Lesenswert?

Da hast du dann in deiner Berechnung wahrscheinlich etwas falsch 
gemacht.

von Odysseus (Gast)


Lesenswert?

Aber wenn ich mit diesen Widerständen doch auf meine 0 - 0,125 V komme, 
dann verifiziert das doch die Rechnung

Oder ich lege wie du für RL einfach einen Wert fest und lineariesiere 
mit dem Parallelwiderstand...das werd ich morgen ausprobieren

von Helmut S. (helmuts)



Lesenswert?

Hier der Beweis, dass man die zwei Widerstände berechnen kann.
Du kannst entweder den kompletten Text unten direkt in Scilab "pasten" 
oder du machst ein File->Ausführen auf die angehängte Datei. Da sich 
hier ein lineares Gleichungssystem ergibt lässt sich natürlich auch 
direkt eine Formel für R6 und R8 herleiten. Das überlasse ich aber dir. 
Ich habe das Gleichungssystem "nur" mit Scilab gelöst.
Das Ergebnis überzeugt! Da muss ich jetzt mal langsam über ein Honorar 
nachdenken ... :-)


//  Scilab starten, Date->Ausführen
//
//  Thermoelement Klemmen-Kompensation
//
//     Us            Us
//     |             |
//     -             -
//  Rv| |         R6| |
//     -             |    |\
//     |             o----|-\
//     |             |    |  |----o-- Ua
//  Up o ---o-------------|+/     |
//     |    |        |    |/      -
//     |    |        |         R7| |
//     |    |        |            -
//     |    |        |            |
//     |    |         ------------o
//     |    |                     |
//     -    -                     -
//  Rp| |  | |RT               R8| |
//     -    -                     -
//     |    |                     |
// M --o----o---------------------o--

// Ua1 = Up1*(1 + R7/R8 + R7/R6) - Us*R7/R6
// Ua2 = Up2*(1 + R7/R8 + R7/R6) - Us*R7/R6
// x=R7/R8
// y=R7/R6

Us=5; Rv=31600; Rp=5000; T1=0; T2=50; Ua1=0; Ua2=0.125; R7=2150;

RT1=2000*(1+( 0.00788 * (T1-25)) + ( 0.00001937 * (T1-25) * (T1-25) ))
// RT1  =  1630.2125

RT2=2000*(1+( 0.00788 * (T2-25)) + ( 0.00001937 * (T2-25) * (T2-25) ))
// RT2  = 2418.2125

RT1p=RT1*Rp/(RT1+Rp)
// RT1p  = 1229.3818

RT2p=RT2*Rp/(RT2+Rp)
// RT2p  = 1629.9159

Up1=Us*RT1p/(Rv+RT1p)
// Up1  = 0.1872380

Up2=Us*RT2p/(Rv+RT2p)
// Up2  = 0.2452483

// Gleichungen
G=[Up1, Up1-Us; Up2, Up2-Us]
// G  =
//       0.1872380  - 4.812762
//       0.2452483  - 4.7547517

U=[Ua1-Up1; Ua2-Up2]
// U  =
//      - 0.1872380
//      - 0.1202483

// Gleichung lösen
XY=inv(G)*U
// XY  =
//       1.0741002
//       0.0806918

R8=R7/XY(1)
// R8  =  2001.6754

R6=R7/XY(2)
// R6  =  26644.589

: Bearbeitet durch User
von Odysseus (Gast)


Lesenswert?

Nochmal vielen Dank für deine Mühe, aber du hilfst mir wirklich weiter 
:)

Im Prinzip ist das ja genau das, was ich auch gerechnet habe, nur eben 
noch ohne den Parallelwiderstand.
Der Grund, wieso ich einen negativen Wert für R8 bekommen habe liegt 
daran, dass ich wohl Rv zu niedrig gewählt habe

Wieso nimmst du für Rv eigentlich 31.6 kOhm ?

von Helmut S. (helmuts)


Lesenswert?

Solange ich nur 125mV machen "darf" muss ich Rv>15kOhm nehmen.
Man könnte natürlich am Summenpunkt statt 10kOhm-10kOhm auch 
10kOhm-20kOhm nehmen damit man auch mit Rv=10kOhm hinkommt. Da zielt man 
dann auf 0V/250mV. Allerdings hatte ich den Eindruck dass die 
Kompensationskennlinie dann einen größeren Bauch hatte. Probiere es halt 
aus. Bedenke, dass der Temperaturmesswiderstand dabei mehr 
Verlustleistung hat und sich damit mehr aufheizt.

von Helmut S. (helmuts)


Lesenswert?

Nachtrag:
Wenn Rv erniedrigt wird, dann muss Rp erhöht werden damit der Wert 
Rp*Rv/(Rp+Rv) wieder auf ca. 5kOhm kommt um eine optimale Linearisierung 
zu bekommen.

von Odysseus (Gast)


Angehängte Dateien:

Lesenswert?

Ich habe mir nun 5.1 kOhm parallel geschaltet und Rv=20 kOhm gewählt.
Dementsprechend sind R6, R7, R8 dimensioniert und ich erhalte bis auf 
einen kleinen Fehler von etwa 1mV dann auch meine 0 - 125mV.
Den Fehler erhalte ich wohl durch Rundungsfehler.

Jetzt bin ich wieder zum Ausgang zurück und habe die idealen Opamps 
wieder durch den LM258 ersetzt.

Ist die Spannungsversorgung weiterhin ideal, dann bekomme ich nur einen 
Offset, wenn ich die Spannungsversorgung aber auch wieder ersetze 
bekomme ich wieder keine Simulation zustande.

Muss ich also doch einen anderen Opamp wählen? Die Schaltung sollte ja 
nun richtig dimensioniert sein.

von Helmut S. (helmuts)


Lesenswert?

Wenn man den einen Opamp für die Spannungshalbierung durch den 
UniversalOpamp2 ersetzt, dann funktioniert die Simulation. Es ist mir 
nicht ganz klar warum. OK das LM358 Modell hat intern Elemente an Netz 
0(Masse). Allerdings verstehe ich nicht warum das mit den zwei anderen 
LM358 dann trotzdem funktioniert.

von Odysseus (Gast)


Lesenswert?

Dann nehme ich für die Spannungsversorgung vorerst den UniversalOpamp2 
und werde mich dann mit meinem Prof kurzschließen.

Dann bedanke ich mich nochmal bei euch für eure Hilfe, insbesondere dir 
helmuts, ihr habt mir sehr geholfen!

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.