Forum: Mikrocontroller und Digitale Elektronik Verständnissproblem PT100 - ESP32 ADC


von MarcoRe (Gast)


Angehängte Dateien:

Lesenswert?

Hi zusammen,

da ich jetzt schon mehrer Tage am grübeln bin, benötige ich eure 
Unterstützung.

Ich möchte einen Regler bauen der anhand der gemessenen Temperatur einen 
Verbraucher steuert. Hierzu möchte ich gerne die Spannung eines PT100 
über den ADC des mC einlesen und daraus die Temperatur berechnen. Hier 
mal mein Gedankengang. Vielleicht findet ihr ja den Fehler

Der ADC hat folgende Eigenschaften:
12 Bit Genauigkeit
1.1V Referenzspannung
-> 1.1/4096 =  0,268mV

Die Spannung greife ich an einem Spannungsteiler ab. Hierzu schließe ich 
den Spannungsteiler an U = 3.3 V und an den GND Pin des mC an. Weiterhin 
verwende ich folgende Widerstände:

R1 = 5000 Ohm
R2 = PT100 mit ungefähr 100 Ohm + 0,4 Ohm/K * x K
-> I_max>0°C = 3.3V/5100Ohm = 0,647mA

Das sollte soweit passen, da bei 100 Ohm der Strom zw. 0.3 bis 1 mA 
liegen sollte ( 
https://produktinfo.conrad.com/datenblaetter/175000-199999/181390-da-01-de-KL_B_TEMPERATUR_SENSOR_PT_100_M_222.pdf 
)

Jetzt prüfe ich, ob die Genauigkeit für den Sensor geeignet ist, 
mithilfe der Spannungsteilerformel:
U1/R1 = U2/R2  mit U1 = Uges - U1

folgt: Uges/[(R1/R2) + 1] = U2

Beispiel:

U2_0°C = 3.3V/[(5000/100)+1] = 0,0647 V = 64,7mV
U2_1°C = 3.3/[(5000/100+0.4*1) +1] = 64,96mV

-> U2_1°C - U2_0°C = 0,26mV < Genauigkeit
--> Ich kann zwar nicht auf 1°C genau messen, aber auf 2°C sollte gehen. 
Korrekt?

Nur möchte mein mC das ganze nicht richtig verarbeiten und spuckt 
seltsame Werte aus. Wisst ihr zufällig woran das liegt? Ich werde auf 
einen PT1000 ausweichen, aber dennoch beschäftigt mich diese Frage und 
es wäre super, wenn ihr mir diese Wissenslücke schließen könnt.

Danke euch.

VG Marco

von MaWin (Gast)


Lesenswert?

MarcoRe schrieb:
> Wisst ihr zufällig woran das liegt

Merkwürdige Programmiersprache.
Sicher dass 1100/4096 in ihr 0.2685546875 ergibt ?

Die Auflösung liegt schon nahe bei 1 GradC, die Genauigkeit wird 
natürlich erheblich schlechter sein, der ADC hat sicher 1 bit Fehler, 
der 5000 Ohm Widerstand ist sicher nicht 0.1% genau und die 1.1V 
Referenz wird sicher nicht exakt 3.3V Betriebsspannung / 3 sein.
Du solltest erst mal das reale Verhältnis zwischen Betriebsspannung und 
Referenzsoannung messen.

Ich würde erst mal den unveränderten Wert des adc.read ausgeben, dann 
jedes Zwischenergebnis.

Da dein Messwert 1.099V beträgt, kann kein ca. 100 Ohm / 5000 Ohm 
Spannungsteiler gemessen worden sein, der würde nur 0.065V liefern

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.