Temperatuur sensor omrekenen naar graden Celsius
Re: Temperatuur sensor omrekenen naar graden Celsius
Ik ben even verder wezen speuren en heb een andere code gevonden waarbij ze het iets anders doen:
Als ik deze gebruik werkt het wel!
En met behulp van de datasheet van de ET-73 gebruik ik 2 vaste weesrtanden:
550Kohm voor 0 graden Celsius en 17Kohm voor 100 graden Celsius.
Alleen werken deze omgekeerd, volgens de tabel is 550Kohm 0 graden maar dan geeft hij juist 100 graden aan, hoe keer ik dit om?
- Code: Alles selecteren
#include <math.h>
double Thermistor(int RawADC) {
double Temp;
Temp = log(22000.0 * ((1024.0 / RawADC - 1)));
//Temp = log(22000.0/(1024.0/RawADC-1)); // for pull-up configuration
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;
}
void setup() {
Serial.begin(9600);
}
void loop() {
Serial.println(int(Thermistor(analogRead(0)))); // display Fahrenheit
delay(1000);
}
Als ik deze gebruik werkt het wel!
En met behulp van de datasheet van de ET-73 gebruik ik 2 vaste weesrtanden:
550Kohm voor 0 graden Celsius en 17Kohm voor 100 graden Celsius.
Alleen werken deze omgekeerd, volgens de tabel is 550Kohm 0 graden maar dan geeft hij juist 100 graden aan, hoe keer ik dit om?
Advertisement
Re: Temperatuur sensor omrekenen naar graden Celsius
Zowel de waarde van de weerstanden (550k en 17k) zijn nodig in de berekening, en ook de coefficienten van de NTC.
Je kunt dus niet zomaar een willekeurige formule van internet plukken, het moet speciaal voor de ET-73 zijn.
Volgens mij gebruikt de steinhart formule de coeffienctien: A, B, en C, die horen bij een specifieke NTC.
Daarom leek mij de derde Adafruit sketch wel handig, omdat die waarden eenvoudig ingevuld kunnen worden bovenin de sketch.
Ik heb een paar NTC weerstanden, maar die liggen "ergens" onder een paar dozen (denk ik). Dus ik kan het niet even proberen. Sorry !
Truc:
Als je de waarde van de weerstand in een variable gebruikt in de berekening, dan zou je twee digitale uitgangspinnen kunnen gebruiken en dan automatisch omschakelen tussen de 550k en de 17k weerstand. In plaats van de 5V, zorgt dan een van de twee uitgangen voor de 5V. Als je de ander uitgang dan als INPUT zet, dan heeft die geen invloed.
Je kunt dus niet zomaar een willekeurige formule van internet plukken, het moet speciaal voor de ET-73 zijn.
Volgens mij gebruikt de steinhart formule de coeffienctien: A, B, en C, die horen bij een specifieke NTC.
Daarom leek mij de derde Adafruit sketch wel handig, omdat die waarden eenvoudig ingevuld kunnen worden bovenin de sketch.
Ik heb een paar NTC weerstanden, maar die liggen "ergens" onder een paar dozen (denk ik). Dus ik kan het niet even proberen. Sorry !
Truc:
Als je de waarde van de weerstand in een variable gebruikt in de berekening, dan zou je twee digitale uitgangspinnen kunnen gebruiken en dan automatisch omschakelen tussen de 550k en de 17k weerstand. In plaats van de 5V, zorgt dan een van de twee uitgangen voor de 5V. Als je de ander uitgang dan als INPUT zet, dan heeft die geen invloed.
Re: Temperatuur sensor omrekenen naar graden Celsius
De 2 weerstands waarden die ik hier gebruik komen uit de et73 tabel die jij gepost hebt.
Volgens die tabel is 1K 250 graden Celsius, als ik die pak dan geeft hij -50 graden aan.
Dus de berekening klopt wel alleen moet ik heb zien om te draaien..
Volgens die tabel is 1K 250 graden Celsius, als ik die pak dan geeft hij -50 graden aan.
Dus de berekening klopt wel alleen moet ik heb zien om te draaien..
Re: Temperatuur sensor omrekenen naar graden Celsius
elektrisch omdraaien dus de weerstand en de sensor verwisselen van plaats.
paul deelen
shooter@home.nl
shooter@home.nl
Re: Temperatuur sensor omrekenen naar graden Celsius
Zo zit het nu aangesloten Paul:
(Ground) ---- (22k-Resistor) -------|------- (Thermistor) ---- (+5v)
|
Analog Pin 0
Hoe bedoel jij het dan?
Als ik de 2 weerstanden omwissel dan krijg ik een waarde van -48
Dus zo:
(Ground) ---- (Thermistor) -------|------- (22k-Resistor) ---- (+5v)
|
Analog Pin 0
(Ground) ---- (22k-Resistor) -------|------- (Thermistor) ---- (+5v)
|
Analog Pin 0
Hoe bedoel jij het dan?
Als ik de 2 weerstanden omwissel dan krijg ik een waarde van -48
Dus zo:
(Ground) ---- (Thermistor) -------|------- (22k-Resistor) ---- (+5v)
|
Analog Pin 0
Re: Temperatuur sensor omrekenen naar graden Celsius
Mijn voorkeur gaat uit naar de thermistor met een kant aan de GND. Dat is beter voor minder elektrische storingen.
Dat de uiteindelijke temperatuur niet klopt, dat komt omdat de sketch niet de juiste formule heeft.
Dat de uiteindelijke temperatuur niet klopt, dat komt omdat de sketch niet de juiste formule heeft.
Re: Temperatuur sensor omrekenen naar graden Celsius
eigenlijk maakt het niet uit want het blijft een verhouding van weerstanden.
je schrijft 2 waardes op (nou ja eigenlijk liever meer) en die zet je dan in die map,
of als je het een beetje beter wil hebben dan zul je aan een array moeten.
hoeveel weerstand heeft de thermistor als je deze gewoon met een ohmmeter meet bij verschillende temperaturen?
je schrijft 2 waardes op (nou ja eigenlijk liever meer) en die zet je dan in die map,
of als je het een beetje beter wil hebben dan zul je aan een array moeten.
hoeveel weerstand heeft de thermistor als je deze gewoon met een ohmmeter meet bij verschillende temperaturen?
paul deelen
shooter@home.nl
shooter@home.nl
Re: Temperatuur sensor omrekenen naar graden Celsius
Nou ik ben er net achter gekomen dat die tabel in ieder geval niet klopt of dat mijn sensor helemaal geen ET73 is..
dit zijn de metingen die ik even gedaan heb met mijn oven en multimeter:
Celsius Weerstand
0 750K
20 300K
40 120K
60 52K
80 25k
100 13k
120 7.5k
140 4.1k
160 2.48k
180 1.56k
200 1k
220 680
240 480
250 400
dit zijn de metingen die ik even gedaan heb met mijn oven en multimeter:
Celsius Weerstand
0 750K
20 300K
40 120K
60 52K
80 25k
100 13k
120 7.5k
140 4.1k
160 2.48k
180 1.56k
200 1k
220 680
240 480
250 400
Re: Temperatuur sensor omrekenen naar graden Celsius
Je zou ook aan 'curve fitting' kunnen denken.
Daartoe zet je de gemaakte tabel in Excel/LibreOffice Calc, maakt een x,y puntengrafiek en je laat het
programma een trendlijn maken en de bijbehorende functie tonen. Ik denk dat een type 'macht'
het beste past.
Daartoe zet je de gemaakte tabel in Excel/LibreOffice Calc, maakt een x,y puntengrafiek en je laat het
programma een trendlijn maken en de bijbehorende functie tonen. Ik denk dat een type 'macht'
het beste past.
Re: Temperatuur sensor omrekenen naar graden Celsius
@shooter, dat kan ook. Dit is de multimap : http://playground.arduino.cc/Main/MultiMap.
@DeDraak, Je hebt het juiste gedaan. Als er onduidelijkheid is, dan een stap terug en meer gegevens verzamelen.
De gegevens wijken niet heel veel af. Jij meet de waarde van 1k bij 200 graden, terwijl de ET-73 die waarde heeft bij 250 graden. Als de oven niet helemaal nauwkeurig is, dan kan dat.
Jij meet 52k bij 60 graden. De ET-73 is 52k bij 64 graden.
Bij lagere temperaturen gaat het dan wel weer meer afwijken.
Misschien is het een namaak ET-73 met een iets andere curve. Ze dachten misschien dat niemand het door zou hebben.
@FPCUser, Ik heb de 'k' vervangen door "E+3" en naar LibreOffice Calc gekopieerd. Vervolgens een grafiek gemaakt.
Dat ziet er perfect uit als een NTC weerstand.
Maar wat nu ? Dat is de weerstand tegen de temperatuur. Heeft LibreOffice een curvefitting ?
Aan mezelf, hier is wat uitleg: https://www.solo-labs.com/temperature-sensors-types-and-applications/. Helaas hebben zij de NTC aan de 5V en niet aan de GND.
@DeDraak, Je hebt het juiste gedaan. Als er onduidelijkheid is, dan een stap terug en meer gegevens verzamelen.
De gegevens wijken niet heel veel af. Jij meet de waarde van 1k bij 200 graden, terwijl de ET-73 die waarde heeft bij 250 graden. Als de oven niet helemaal nauwkeurig is, dan kan dat.
Jij meet 52k bij 60 graden. De ET-73 is 52k bij 64 graden.
Bij lagere temperaturen gaat het dan wel weer meer afwijken.
Misschien is het een namaak ET-73 met een iets andere curve. Ze dachten misschien dat niemand het door zou hebben.
@FPCUser, Ik heb de 'k' vervangen door "E+3" en naar LibreOffice Calc gekopieerd. Vervolgens een grafiek gemaakt.
Dat ziet er perfect uit als een NTC weerstand.
Maar wat nu ? Dat is de weerstand tegen de temperatuur. Heeft LibreOffice een curvefitting ?
Aan mezelf, hier is wat uitleg: https://www.solo-labs.com/temperature-sensors-types-and-applications/. Helaas hebben zij de NTC aan de 5V en niet aan de GND.
Wie is er online?
Gebruikers in dit forum: Geen geregistreerde gebruikers en 32 gasten