Forum: Mikrocontroller und Digitale Elektronik PIC und LM35


von neuling (Gast)


Angehängte Dateien:

Lesenswert?

Hallo miteinander

Und schon plagt mich das nächste Problem.

Ich muss mit einem PIC 18F eine Temperatur zwischen 20 und 30°C messen.
Der LM 35 DZ sollte das angeblich hinkriegen. Die Genauigkeit von ca. 
0.5°C reicht für mich auch vollkommen aus.

Nun weiss ich aber nicht, ob ich den LM 35 direkt am PIC anschliessen 
soll oder via einem OPV um das 10-fache Verstärken und dann erst 
auswerten.

Was denkt ihr? Variante "Direkt" oder Variante "OPV"?

Danke und Gruss
Neuling

PS: Würde die OPV-Schaltung so funktionieren mit dem 10k Widerstand am 
Ausgang vom LM35?

von Chris (Gast)


Lesenswert?

Ich würde dir den direkten Weg empfehlen.
Aber, der Pic hat einen Ratiometrischen ADC, deshalb benötigst du
eine externe Vref, sonst wird die Messung nichts.
Gerne wird dafür eine Led hergenommen, z.B. eine Power-On Led
welche auch im Fehlerfalle blinken kann. Du mußt nur darauf aufpassen,
daß die Spannung über dem Schwellwert der minimalen ADC-Spannung
ist, sonst sind die 10Bit hinüber, und du hast nur 8bit oder weniger
an Genauigkeit. Bei den meisten 16f Typen waren es knapp über 2V,
bei den 18F weiß ich nicht, sind mir generell zu teuer.
Angenommen, du hast eine Vref von 2.2V bei einer roten InGaAIP Led
oder 2.3V von einer grünen GaP oder InGaAlP (beide 2,2–2,5 V) Led,
dann ist die Auflösung ca 2.3mV. Damit misst du die Temperatur von
0.5 Grad was 5mV entspricht problemlos. Auch wenn du 5V Vref hättest,
würdest du dank oversampling die 0.5 Grad Genauigkeit problemlos 
erreichen.
Nur wenn du kein Vref nimmst, dann hast du die Genauigkeit von ein paar 
Grad!.

von neuling (Gast)


Lesenswert?

hallo chris

habe ich das richtig verstanden? so wie in meiner skizze?

Vref bei meinem PIC 18F weiss ich nicht. stehen im handbuch keine 
werte... :-/

auf sprut.de wird was von min. 2.5V angegeben. er bezieht sich aber auch 
auf die 16er pics...

ich würde einfach eine LED mit min. 2.5V durchlassspannung nehmen...

gruss

von neuling (Gast)


Angehängte Dateien:

Lesenswert?

anhang vergessen... ^^

danke und gruss
neuling

von Chris (Gast)


Lesenswert?

Kondensator bei Vref hast du vergessen, sonst hast du keine stabile
Vref. Die minimale Vref müsste 2V sein, steht aber im Datenblatt drin.
Natürlich mußt du bei einer Led den Wert Kalibrieren, sprich messen und
dann in EEprom abspeichern, oder so, damit du weißt, was du misst, und
welche Korrekturwerte du applizieren mußt. Dies ist so, weil jede Led
einen andere Spannung hat, sonst könnte man ja die Leds problemlos 
zusammenschalten, und nur ein Wiederstand nehmen, bei Parallelschaltung.
Einige Pic´s haben einen internen Bandgap, welcher auch als Vref 
genommen
werden kann. Wenn dein Pic sowas hat, nicht zu verwechseln mit dem
Reset-Bandgap, dann brauchst du die externe Vref nicht.

von Michael (Gast)


Lesenswert?

Man könnte ja statt der LED (oder paralell dazu) eine Z-Diode einbauen. 
Vorteil: Man muss nix kalibrieren. Nachteil: Will man eine LED parallel 
dazu haben muss die halt zur Z-Spannung passen oder man braucht noch 
einen Vorwiderstand.

von Enrico (Gast)


Lesenswert?

Hallo,

einen TL431 einbauen, das ding ist Stabiler als eine schnöde Z-Diode. 
Kalibrieren musst du sowieso einmal, nur rennt dir bei der Z-Diode der 
Wert unter Umständen langsam davon...

von neuling (Gast)


Lesenswert?

Guten Morgen

danke für eure antworten.

der PIC wird von einem 75T08 gespeist. ist diese spannung nicht geeignet 
für die referenzspannung?

das mit dem kondensator: einfach zwischen Vref+ und GND? 100n wären 
ausreichend?

nach meine nachforschungen müsste Vref+ um 3V höher sein als Vref-.

ich stelle mir eine genauigkeit von ca. 0.5°C vor.

danke und gruss
neuling

von Chris (Gast)


Lesenswert?

>Der PIC wird von einem 75T08 gespeist. ist diese spannung nicht geeignet
>für die referenzspannung?
Ich nehem an, du meinst den 78T05. Das wären dann bei 40 Grad, wenn
Vin größer als 8V, dann -3/+4 Grad bei 40 Grad, also eine Ungenauigkeit
von 7 Grad Celsius.

>das mit dem kondensator: einfach zwischen Vref+ und GND? 100n wären
>ausreichend?
Ja

>nach meine nachforschungen müsste Vref+ um 3V höher sein als Vref-.
Blick in das Datenblatt müsste genügen, die 3V kommen mir komisch vor.
Welchen uC verwendest du ?

von neuling (Gast)


Lesenswert?

hallo

ehm ja sorry. verwende den 05er... nicht 08er spannungsregler!

PIC18F4525

und hier das datenblatt.
http://ww1.microchip.com/downloads/en/DeviceDoc/39626e.pdf

ich habe nichts gefunden. vielleicht übersehen. gucke nachher über den 
mittag nochmal nach... war aber nie der beste im englisch-unterricht...

gruss

von Michael (Gast)


Lesenswert?

78er-Serie darf schon ganz schön schwanken, ich mein beim 7805 sind es 
100 mV. Das ist schon ganz schön viel, dann lieber eine LM317 nehmen, 
der ist da ein wenig genauer. Eine Frage dazu wäre natürlich, was genau 
misst du bzw. was genau interessiert dich? Die absolute Temperatur oder 
nur die Temperaturänderung? Vermutlich ersteres womit du schon eine 
relativ genaue Referenzspannung benötigst, bei Letzterem kann die 
Referenzspannung etwas großügiger sein da ja nur die Änderung 
interessiert. Da du ja nur in einem Bereich von 10 °C auf 0.5 °C messen 
willst dürften acht Bit Auflösung genügen, und es genügt auch, wenn du 
von 0 °C bis 30 °C messen willst. Daraus folgt, dass deine 
Referenzquelle gar nicht so genau sein muss bei acht Bit. Gehen wir mal 
vom Absoluten aus:

30 °C mit einer Auflösung von 0.5 °C macht PI mal Daumen eine 6 Bit 
Auflösung

Bei acht Bit könnte man ca. 0.1  °C auflösen

Einen acht Bit AD-Wandler kann man aber ohne Probleme mit eine Z-Diode 
als Referenzquelle beaufschlagen. Gehen wir mal von 5 V aus. Ein Bit 
entspräche dann 19.6 mV, bzw. 0.1 °C. Gefordert sind 0.5 °C, damit 
dürfte also die Refernzquelle um knapp 100 mV schwanken ohne das 
Ergebnis maßgeblich zu verfälschen. Eine Feld Wald und WIesen Z-Diode 
wie die Bzx3V3 liegt mit ihrer Referenzspannung lt. Datenblatt zwischen 
3.46V bis 3.14V, also weit weg von 100 mV.

von neuling (Gast)


Lesenswert?

auf Seite 361 vom PDF File stehen welche Werte zu Vref...

so wie ich das verstanden habe, braucht es min. 3V für 10Bit

von neuling (Gast)


Lesenswert?

hallo michael

ich möchte eigentlich die wassertemperatur messen und je nach temperatur 
die heizung ein- oder ausschalten...

die wassertemperatur sollte ca. immer 25°C sein... oder ich stelle die 
gewünschte temperatur ein und der PIC regelt mir das.

Platine steht schon, also ich habe den 05er spannungsregler schon drauf.

danke und gruss
neuling

von Michael (Gast)


Lesenswert?

Hm, schaut so aus mit dem VRef.

Also wie gesagt, ich würds mal mit ner Z-Diode versuchen. 10 Bit 
brauchst du ja nicht, für 0.5 °C reichen auch 8 Bit bei max. 30 °C. OK, 
ich würds mir nochmal bei 40 °C durchrechnen sodass es auch mal 
überschwingen darf (also über 30 V). Der LM35 gibt ja 10 mV / °C aus 
wenn ich das Datenblatt recht verstanden hab beim Überlesen, d.h. du 
erwartest also 250 mV. Da würde ich bei 3 V als Vref bleiben damit du 
das auch noch gut auflösen kannst. Schwierig hierbei: Von den 3 V Vref 
brauchst du ja nur 250 mV, d.h. von 1024 Stufen brauchst du nur ca. 85 
Stufen für deinen Zielwert, der Rest ist für die Nüsse.

Oder du verstärkst das Signal des LM35 wie du schon oben vorgeschlagen 
hast. Dann brauchst du aber entweder einen abgeglichenen OPV oder aber 
du kalibrierst dir deinen Pic, sprich du gleichst per Software einen 
möglichen Offset des OPV aus.

von Chris (Gast)


Lesenswert?

Absolute Minimum ist 2V bei 8Bit, bei 2.2V sowie doppelte minimale 
Clock-Timing ist die Auflösung noch 10Bit, hingegen bei minimalem Timing 
ist sie
erst bei 3V 10Bit.

von neuling (Gast)


Lesenswert?

okey danke!

also doch lieber eine z diode? die wird dann einfach invertiert im 
sperrzustand geschaltet, richtig?

kondensator braucht es dann noch?

ich würde zum beispiel folgende z-diode nehmen:
https://www.distrelec.com/distrelec/datasheets.nsf/WebAttachments/BBA5F9FA7BDC182FC12570EA002050C6/$File/603243.pdf

die mit sperrspannung zwischen 3.1 und 3.5V
wenn ich jetzt das richtig verstanden habe, kann ich den strom mit einem 
vorwiderstand auf 5mA begrenzen. richtig? oder kann ich sogar auf 1mA 
runter?

verstehe das datenblatt nicht richtig, muss heute abend nochmals 
dahinter...

danke und gruss
neuling

von neuling (Gast)


Lesenswert?

abend zusammen

wollte nur berichten dass die temperaturmessung funktioniert! :-)
mit zdiode, LM35 und AD Wandler vom PIC

und so wie das aussieht, auch genau ohne temperaturschwankungen!

danke nochmals!

gruss
neuling

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.