Forum: Mikrocontroller und Digitale Elektronik lm335 irgendwie hingelogen.


von Johannes K. (johngun) Benutzerseite


Lesenswert?

Weil ich für 4€ ein 8 *24 diepkay bekommen habe, habe ich eine 
Weltzeituhr gebaut mit Orten die keiner kennt. Nur damit das Ding 
erstmal was anzeigt.
Jetzt wird noch ein Innen/aussenthermometer integriert. Ich habs auch 
irgendwie hingelogen bekommen das es funzt aber ich bin grad wieder 
wachgeworden weil ich Zweifel hatte.
Also hinterher nachgedacht, sollte man eigentlich vorher tun.

Also Temperatur auf Quecksiilber 22 C°, Spannung am ADC= 2,95V, Getadc 
liefert 608. Sieht gut aus. Also jetzt noch das ganze mal 5 /1024 und 
Kelvin rausrechnen damit ich Celsius bekomme.

Jetzt mein Problem ich stelle ja auch negative Temperaturen da. Zur Zeit 
lese ich die aus einer Tabelle. Wenn meine Tabelle also bei -24 Grad 
anfängt muss ich also irgendwo nochmal 24 wegrechnen damit ich meine 
Tabele von 0 hoch adressieren kann. Jetzt bin ich doch irgenwie 
durcheiander gekommen.
Wäre es nicht einfacher wenn ich noch ein Poti an den Adjust lege und 
die Spannung runterdrehe so das es passt.

Mir fiel auch wieder ein das son Atmega keine Gleitkommaarithmetik hat 
was noch ein Problem ist.

Ich würd gern mal Vorschläge hören wie Ihr das gelöst habt.

von Jobst M. (jobstens-de)


Lesenswert?

Also, wenn Du Kelvin hast und 273,15 abziehst, um Grad Celsius zu 
erhalten, bekommst Du automatisch für Werte unterhalb 273,15 Kelvin 
negative Zahlen ...


Gruß

Jobst

von MaWin (Gast)


Lesenswert?

> Ich würd gern mal Vorschläge hören wie Ihr das gelöst habt.

Grundlagen des Programmieren lernen, spart das externe Poti.

"Wenn meine Tabelle also bei -24 Grad anfängt"
dann rechnest du eben nur Kelvin-24 raus und kommt auf den 
Tabelleneintrag[0] bei -24 gemessenen.

von Johannes K. (johngun) Benutzerseite


Lesenswert?

So ich habs kapiert.

Der Wert von Getadc kommt immer richtig
von diesem Wert muss ich nur den Wert für 273° Kelvin abziehen.

Da mein Thermometer aber bei -24°C anfängt darf ich also nur den
ADCwert von 249° abziehen.

So sollt ich also bei -24°C eine 0 erhalten und kann damit den ersten 
Wert in der Tabelle adressieren.

Mein Fehler war ich habe vorher mit Byte Variablen gerechnet. Da kamen 
immer so komisch Ergebnisse raus. Ischa klar die können nur bis 255.

Ich überlege jetzt ob ich aus dem Getadc nur die Kelvin Celsius 
Korrektur mache und dann wieder rückrechne und direkt anzeige. Integer 
kann ja negative Zahlen.

Ich vermute aber das durch addition der Toleranzen und Rundungsfehlern 
das Ding absolut ungenau wird.

Bei ermitteln der Themperaturen auf den Jupitermonden und beim Bier 
brauen müssen die Thermometer genau sein.

Den LM75 gibt es bur in SMD. Kann man so einen nicht einfach auf einen 
DIL Sockel löten ?

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.