Forum: Analoge Elektronik und Schaltungstechnik NTC Genauigkeitsberechnung


von Martin M. (murmele)


Angehängte Dateien:

Lesenswert?

Hallo,

ich möchte gerne die Temperaturgenauigkeit berechnen, welche ich durch 
einsetzen eines NTCs bekomme. Der Aufbau ist ziemlich einfach:
Einen Spannungsteiler mit einem Widerstand und dem NTC. Vom NTC habe ich 
das Datenblatt welches im Anhang ist. Die Spannungsquelle ist 5V mit 
einer Abweichung von 200mV, der Widerstand hat eine Abweichung von 0,1%.
Mein Ansatz war, die Spannungsteilerformel aufstellen, und nach jedem 
Parameter (VDD, R, R_NTC) abzuleiten und dann überall den Fehler daran 
multiplizieren und die Teilformeln addieren. (Siehe Anhang).
Den Fehler für den NTC kann ich mir Berechnen, indem ich deltaR25 und 
deltaB25 in die NTC Formel einsetze. Wie erhalte ich jetzt aber den 
maximalen Fehler der Temperatur?
Stimmt mein Ansatz überhaupt?

Grüße

: Bearbeitet durch User
von Helmut S. (helmuts)


Lesenswert?

Du nimmst die Toleranzen derart, dass du die größte Widerstandsänderung 
in positiver und negativer Richtung bekommst. Das Ganze dann über den 
kompletten Temperaturbereich berechnen  (Excel).
Mit den Werten gehst du in die Formel mit den nominalen Werten und liest 
dort die Temepratur ab. Die Differenz ist dann der Fehler.

Dazu kommen noch die Fehler durch die Toleranz des 0,1% Widerstandes, 
die Toleranz der 5Volt(+/4%) und +/-0,5°(letzte Spalte) dazu. Allein die 
5V-Toleranz kostet mindestens +/-1°C Fehler. Mach besser einen zweiten 
Spannungsteiler und messe die 5V nach.

von Sebastian S. (amateur)


Lesenswert?

Spar' Dir das Geld für den 0,1% Widerstand.
Der Sensor soll so um die 2% dolle Ranzen haben.

von Thomas (Gast)


Lesenswert?

Hi,

Martin M. schrieb:
> Mein Ansatz war, die Spannungsteilerformel aufstellen, und nach jedem
> Parameter (VDD, R, R_NTC) abzuleiten und dann überall den Fehler daran
> multiplizieren und die Teilformeln addieren. (Siehe Anhang).

Fast schon richtig, du stellst im Prinzip die Spannungsteilerformel auf, 
musst aber anstatt des Widerstands des NTC die Formel des NTC für den 
Widerstand in Abhängigkeit der Temperatur einsetzen. Als Formel kannst 
du z.B. die nehemen: https://de.wikipedia.org/wiki/Hei%C3%9Fleiter

Dann formst du alles um dass da steht T=...
Dann machst du wie du richtig gesehen hast die Ableitung von allen 
Termen von denen du Toleranzen erwartest und dann multiplizierst du mit 
dem "delta", z.B bei der Versorgungsspannung deltaU=0,2V. Von all den 
Termen bildest du den Absolutbetrag und addierst sie.

Helmut S. schrieb:
> Du nimmst die Toleranzen derart, dass du die größte Widerstandsänderung
> in positiver und negativer Richtung bekommst. Das Ganze dann über den
> kompletten Temperaturbereich berechnen  (Excel).

Das ist die Min-Max Methode, das funktioniert bei ein paar wenigen 
Parametern ganz gut, wenns mehr sind ist obige Vorgehensweiße ganz gut.

Google mal nach Fehlerfortpflanzung nach GUM für mehr Infos

lg

von Martin M. (murmele)


Lesenswert?

Perfekt vielen Dank werde es heute Nachmittag nochmals versuchen. Melde 
mich dann nochmals.
Danke

von Pandur S. (jetztnicht)


Lesenswert?

Die Variation der Speisespannung fliegt uebrigens raus wenn man dieselbe 
auch als Referenz fuer den ADC verwendet. Resp wenn man die Referenz des 
ADC als Speisung des Spannungsteilers verwendet.

von Helmut S. (helmuts)


Angehängte Dateien:

Lesenswert?

Hallo,

Hier mal eine Min/Max Fehler-Simulation mit LTspice.
Es kommen ca. +/-3° Temperatur-Fehler heraus. Allein die Schwankung der 
Versorgungsspannung bewirkt davon +/-1,3°.

Helmut

: Bearbeitet durch User
von Pandur S. (jetztnicht)


Lesenswert?

Nebenbei .. Man kann alles bis auf die Drift der NTC Werte 
rauskalibrieren.

: Bearbeitet durch User
von Stefan F. (Gast)


Lesenswert?

Kleiner Tip zur Schaltung:

Ich habe mal gelernt, dass man einen Widerstand mit dem selben Wert in 
reihe schaltet, die der NTC bei mittlerer Temperatur hat. Und außerdem 
schaltet man einen 10x so großen Widerstand parallel zum NTC.

Den Parallelwiderstand vermisse ich hier.

von Pandur S. (jetztnicht)


Lesenswert?

Dass die beiden Widerstaende gleich sein muessen fuer maximale 
Empfindlichkeit bekommt man raus wenn man das Maximum der Aufloesung als 
Ableitung der Aufloesung, die man Null setzt, rechnet.
Den Parallelwiderstand kann man vergessen, wenn man eh digitalisiert.

von 6a66 (Gast)


Lesenswert?

Sebastian S. schrieb:
> Der Sensor soll so um die 2% dolle Ranzen haben.

Nu schön, wenn der solche Ranzen hat.
Die Spannungsversorgung und die ADCs und deren Referenzspannung haben 
derart auch.
Und wenn man das mal so durchrechnet könnte es gut sein dass ein 3%er 
oder 5%er auch reicht :) ohne die Genauigkeit signifikant zu 
verschlechtern.

Helmut S. schrieb:
> Allein die Schwankung der
> Versorgungsspannung bewirkt davon +/-1,3°.

:))))))

rgds

von Martin M. (murmele)


Angehängte Dateien:

Lesenswert?

Habe es jetzt mal das umgesetzt wie geraten. Ich hoffe der Ansatz stimmt 
dieses mal.

Grüße

: Bearbeitet durch User
von Georg (Gast)


Lesenswert?

Oh D. schrieb:
> Nebenbei .. Man kann alles bis auf die Drift der NTC Werte
> rauskalibrieren.

Aber nur, wenn man ausreichend genaue Temperaturnormale hat. Cruncheis 
von der Tankstelle und kochendes Leitungswasser reichen da nicht.

Georg

von Helmut S. (helmuts)


Lesenswert?

Martin M. schrieb:
> Habe es jetzt mal das umgesetzt wie geraten. Ich hoffe der Ansatz stimmt
> dieses mal.
>
> Grüße

Wieviel Grad Temperatur-Fehler kommt bei deiner Rechnung dann heraus?

von Harald W. (wilhelms)


Lesenswert?

Georg schrieb:

> Aber nur, wenn man ausreichend genaue Temperaturnormale hat. Cruncheis
> von der Tankstelle und kochendes Leitungswasser reichen da nicht.

Nun, mit Eiswasser und einem Fieberthermometer kann man zumindest
im Bereich von Aussen- und Zimmertemperaturen auf einige Zehntel
Grad genau kalibrieren. NTCs haben aber normalerweise bis auf
wenige Ausnahmen (Fieberthermometersensor) eher Abweichungen von
mehreren Grad.

von Martin M. (murmele)


Lesenswert?

Die Auswertung von Hand ergibt noch nicht das Richtige. Kennt sich 
jemand mit Mathematica/Maxima aus, wollte so die Funktion auswerten, hat 
leider nicht funktioniert.
1
deltaR = 4.99e3*0.1/100;
2
deltaB = 3984 * 0.5/100;
3
deltaR_N = 5e3 * 2.19/100;
4
R_N: 5e3;
5
R: 4.99e3;
6
B: 3984;
7
Uin: 5;
8
9
T(R,R_N, Uout, Uin, B, T_N):= 1/(ln(R/R_N * Uout/(Uin-Uout))/B+1/T_N);
10
11
diffR(R,R_N, Uout, Uin, B, T_N):=diff([T(R,R_N, Uout, Uin, B, T_N)],R);
12
diffB(R,R_N, Uout, Uin, B, T_N) := diff(T,B);
13
diffR_N(R,R_N, Uout, Uin, B, T_N) := diff(T,R_N);
14
15
deltaT(R,R_N, Uout, Uin, B, T_N):= diffR * deltaR + diffB*deltaB + diffR_N*deltaR_N;
16
17
deltaT(4.99e3,5e3, Uout, 5, 3984, 273.15);

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.