Thermistor auslesen und Grad Celsius berechnen

Für dieses Beispiel habe ich einen Thermistor aus der Bastelkiste gewählt. Diesen habe ich mit einem Pin an einen analogen Eingang angeschlossen und mit dem anderen Pin an 5V+. Am benutzen analogen Eingang kommt noch eine Verbindung  zur Masse mit 10kOhm Widerstand.

Folgende vereinfachte Formel habe ich im Netz gefunden (ist wohl nicht ganz exakt, aber es erfüllt den Zweck einer annehmbar genauen Temperaturbestimmung (ist es grob zu kalt/warm). Ich müsste die Genauigkeit mal bei Gelegenheit testen. Ich weiß leider nicht mehr wer das wo gepostet hatte. Für sachdienliche Hinweise zur Quellenangabe wäre ich dankbar.

Sie wird mit dem Wert von analogRead() des genutzten Pins aufgrufen.

//
// Calculate Temperatures
//

double Thermister(int RawADC) {
double Temp;
Temp = log(((10240000/RawADC) - 4700)); // last digit for termistor value
Temp = 1 / (0.001129148 + (0.000234125 + (0.0000000876741 * Temp * Temp ))* Temp );
Temp = Temp - 273.15;            // Convert Kelvin to Celcius
//Temp = (Temp * 9.0)/ 5.0 + 32.0; // Convert Celcius to Fahrenheit
return Temp;
}

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert