Temperatuur sensor omrekenen naar graden Celsius

Projecten die niet passen in bovenstaande onderwerpen
Berichten: 247
Geregistreerd: 03 Okt 2015, 13:39

Re: Temperatuur sensor omrekenen naar graden Celsius

Berichtdoor DeDraak » 16 Aug 2016, 10:30

Ik ben even verder wezen speuren en heb een andere code gevonden waarbij ze het iets anders doen:

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

Gebruikers-avatar
Berichten: 2655
Geregistreerd: 06 Aug 2016, 01:03

Re: Temperatuur sensor omrekenen naar graden Celsius

Berichtdoor Koepel » 16 Aug 2016, 10:56

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.

Berichten: 247
Geregistreerd: 03 Okt 2015, 13:39

Re: Temperatuur sensor omrekenen naar graden Celsius

Berichtdoor DeDraak » 16 Aug 2016, 10:58

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..

Berichten: 4067
Geregistreerd: 16 Okt 2013, 14:31
Woonplaats: s hertogenbosch

Re: Temperatuur sensor omrekenen naar graden Celsius

Berichtdoor shooter » 16 Aug 2016, 11:38

elektrisch omdraaien dus de weerstand en de sensor verwisselen van plaats.
paul deelen
shooter@home.nl

Berichten: 247
Geregistreerd: 03 Okt 2015, 13:39

Re: Temperatuur sensor omrekenen naar graden Celsius

Berichtdoor DeDraak » 16 Aug 2016, 14:41

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

Gebruikers-avatar
Berichten: 2655
Geregistreerd: 06 Aug 2016, 01:03

Re: Temperatuur sensor omrekenen naar graden Celsius

Berichtdoor Koepel » 16 Aug 2016, 17:48

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.

Berichten: 4067
Geregistreerd: 16 Okt 2013, 14:31
Woonplaats: s hertogenbosch

Re: Temperatuur sensor omrekenen naar graden Celsius

Berichtdoor shooter » 16 Aug 2016, 22:24

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?
paul deelen
shooter@home.nl

Berichten: 247
Geregistreerd: 03 Okt 2015, 13:39

Re: Temperatuur sensor omrekenen naar graden Celsius

Berichtdoor DeDraak » 17 Aug 2016, 21:09

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

Berichten: 163
Geregistreerd: 15 Dec 2012, 21:02
Woonplaats: Delfzijl

Re: Temperatuur sensor omrekenen naar graden Celsius

Berichtdoor FPCUser » 17 Aug 2016, 22:19

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.

Gebruikers-avatar
Berichten: 2655
Geregistreerd: 06 Aug 2016, 01:03

Re: Temperatuur sensor omrekenen naar graden Celsius

Berichtdoor Koepel » 17 Aug 2016, 23:20

@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.
Afbeelding
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.

VorigeVolgende

Terug naar Overige projecten

Wie is er online?

Gebruikers in dit forum: Geen geregistreerde gebruikers en 32 gasten