[TMP 35]: Temperatura completamente sbagliata

Salve,
sto utilizzando il sensore di temperatura TMP35.
Il codice è il seguente:

void setup() {
  Serial.begin(9600);
}

void loop() {
  int sensorVal=analogRead(A1);
  Serial.println(sensorVal);
  float voltage=sensorVal/1023.0*5.0;
  float temperature=(voltage-0.5)*100;
  Serial.print(temperature); 
  Serial.println(" °C");
  delay(1000);
}

Mi sembra abbastanza semplice.
Non riesco a capire perchè la variabile sensorVal restituisce un valore intorno ai 42 a cui corrisponde una temperatura di quasi -30°C.
Ovviamente, mi trovo in una stanza con una temperatura di circa 22°C.

Rimetti il mezzo volt che togli
È lui il 50 gradi che ti mancano
Stai usando un tmp35, non tmp36

Guarda che stai sbagliando qualche cosa ... i TMP35 possono leggere SOLO temperature positive da 10° a 125° quindi, se tu calcoli -30° ... evidentemente stai sbagliando i calcoli.

Il TMP35 da 250 mV a 25° quindi 10 mV ogni grado.

Guglielmo

*Edit: Mi sono sovrapposto con Standardoil ... *

Risolto, grazie.. Avevo considerato le specifiche del TMP36.

Altra fonte di errore: I 5V di alimentazione sono veramente 5,00V? meglio usare la tensione di riferimento 1,1V interna.

Ciao Uwe

uwefed:
Altra fonte di errore: I 5V di alimentazione sono veramente 5,00V? meglio usare la tensione di riferimento 1,1V interna.

Anche gli 1.1V interni possono NON essere esattamente 1.1V ...
... il vantaggio rispetto ai 5V che essi sono, normalmente, più stabili, ma, in OGNI caso, è necessaria una calöibrazione.
Guglielmo

P.S.: Molto difficilmente ho trovato un ATmega328P il cui riferimento 1.1V fosse veramente 1.1V e non 1,109V oppure 1.103V o altri valori :wink:

gpb01:
Anche gli 1.1V interni possono NON essere esattamente 1.1V ...
... il vantaggio rispetto ai 5V che essi sono, normalmente, più stabili, ma, in OGNI caso, è necessaria una calöibrazione.
Guglielmo

P.S.: Molto difficilmente ho trovato un ATmega328P il cui riferimento 1.1V fosse veramente 1.1V e non 1,109V oppure 1.103V o altri valori :wink:

I 1,1V non sono precisi (il valore sbaglia mi pare del 20%) ma sono costanti nel tempo.
Ciao Uwe

uwefed:
I 1,1V non sono precisi (il valore sbaglia mi pare del 20%) ma sono costanti nel tempo.

E io che ho scritto ? :smiley: :smiley: :smiley:

Guglielmo