Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - FAQ - Zum CC1-Forum - Zum CC-Pro-Forum

Re: Frage an Andre H oder wers weis Kategorie: Programmierung (von André H. - 2.08.2003 14:24)
Als Antwort auf Frage an Andre H oder wers weis von Thomas - 1.08.2003 21:56

Hallo Thomas,

>     //----------------------------------------
>     function gettemp(long ADC) returns int
>     //----------------------------------------
>     {long Temp;
>      Temp= 51*ADC;
>      return (Temp/25)-250;
>     }
> Es scheint ja auch alles so zu fuzen wie es soll. Ausser da ich einen Messbereich von 10-40 Grad brauche
> und die berechnung um ca 5 grad daneben daneben liegt habe ich mal versuch diese zu optimieren.
> Aber ich versteh nicht wo kommt da die 51 her. Im oberen Bereich bei ca 100 Grad scheit es Genauer zu sein.

Ursprünglich war die Berechnung folgende:
Temperatur=( AD-Wert / (625/255)) / 2 - 25
Kurze Erklärung:
625 ist der AD-Wert bei 2,5V, bei welchem am Sensor 102,5°C gemessen werden.
255 ist der entsprechende AD-Wert bei der CC1
2 ist der teiler, der bei der CC1 für die 0,5!-Schritte notwendig ist.
-25 ist der Temperaturoffset. (-25°C = AD-Wert 0)

Da jedoch die obige Formel zwangläufig zu keinem korrektem Ergebnis führt,
muÃ? man diese entsprechend umformen:
Temperatur*10= (AD-Wert*2550) / 1250 - 250
Da ich aber kein Freund von grö�eren Zahlen bin, habe ich damals ein wenig gekürzt. :-)

Temperatur*10= (AD-Wert*2550) / 1250 - 250
Temperatur*10= (AD-Wert*51) / 25 - 250   :gekürzt mit 50
Daraus wurde dann:
function gettemp(long ADC) returns int
{ long Temp;
  Temp= 51*ADC;
  return (Temp/25)-250;
}



> Ich habe in kochendem Wasser einen Analogen wert von  ca 600 ( Angezeigt über das Prog ADU von der
> Orginal CD) Liege ich da richtig?

Kommt auf die Mehreshöhe an.
600 bedeutet 97,4°C
ab 700m Mehreshöhe sollte dies korrekt sein.
�rigens, stecke den Sensor niemals direkt in eine Flüssigkeit !
Der Sensor ist, wie jedes TO92-Gehäuse alles andere als Wasserdicht,
soda� die Me�werteverfälscht werden können.

> Dann Habe ich noch nen problem am Rande mit Der Platine.Der Analogeeingangswert Springt extrem Bei gleicher
> Temperatur. Ca 15 einheiten ,das sind mit der funktion ca 3 Grad
> Hat jemand eine Ahnung wie ich das Träger bekomme?

Dies liegt an der Art, wie die AD-Wandlung funzt.
Setze zwischen AD-Port und GND einen kleinen Kondensator mit 100nF.
Das Problem sollte dann beseitigt sein.

MfG André H.


Antworten bitte nur ins Forum!
Fragen per EMail auf Forum-Postings werden nicht beantwortet!

Das macht meine Heizung gerade


    Antwort schreiben


Antworten:

Re: Frage an Andre H oder wers weis (von Thomas - 2.08.2003 15:26)