Bouw zelf een weerstation – Kalibreren

Het is natuurlijk leuk als je het voor elkaar hebt dat je thermistor is aangesloten op het bordje, dat de software in de MCU is gedownload en het geheel blijkt ook nog te werken. Hoera! We kunnen temperatuur meten.
Maar wat meten we nou eigenlijk? Dat lijkt misschien een rare vraag en je zou zeggen: ‘Temperatuur natuurlijk’. Gelijk heb je, maar zo simpel is het toch even niet.

boven v.l.n.r. Engelbart, Steven, Heisenberg-Onder de werktafel

Computers en werkplek
Om nog wat testjes te doen had ik mijn thermistor, aangesloten op een LaunchPad op de kast onder het dakraam gelegd, dan ligt hij veilig en uit de weg. Bovendien kan ik hem dan op Engelbart, één van mijn computers, aansluiten. Het programmeren gaat op Steven en Engelbart fungeert als informatie systeem en tester voor systemen die langdurig getest moeten worden. Dan is er ook nog Heisenberg, die heeft beveiligde USB poorten en is dus ideaal voor het uittesten van nieuw gebouwde schakelingen.
In de fotocarrousel staat het overzicht van de computeropstellingen.
Van links naar rechts: Engelbart, Steven, beeldscherm Steven, beeldscherm Engelbart en Heisenberg met daarop zijn eigen scherm. De poppetjes op Steven zijn: Buster, Steven MainFrame en Vriendje. Buster is een stekelvarken dat urenlang kan luisteren naar de technische verhalen van Steven. Vindt hij helemaal niet erg. Vriendje, die groene met die lange nek, is een Oozlefinch. Zijn motto is: "If it flies, it dies.”.
Waar dat vandaan komt? Gewoon even Googelen.
Afijn, nu we toch bezig zijn laat ik ook maar even de werkbank zien waar alle elektronica in elkaar wordt gesoldeerd. Speciaal opgeruimd voor de foto? Hoe kom je daar nou bij ..... .

Goed, alle gekheid op een stokje. Ik had dus de thermistor met LaunchPad op de kast onder het dakraam gelegd. Zodat ik hem kon testen op Engelbart en kon nadenken over het kalibreren. Hoe doe je dat. Misschien vergelijken met een thermometer? Kan maar is die thermometer dan zo precies? Plotseling kreeg ik een heel warm gevoel boven op mijn hoofd; was daar even een lampje gaan branden? Wat als ik hem nou eens vergelijk met een sensor waarvan ik weet dat hij in de fabriek al is gekalibreerd? Wat dacht je van een Texas Instruments LM35? Is in het verleden zeer betrouwbaar gebleken.

LM35
De LM35 is een temperatuursensor met het uiterlijk van een kleine transistor in TO-92 uitvoering. Je weet wel, zo’n zwart dingetje met drie pootjes. De precisie van deze sensor is 0,5 graad. Misschien niet heel goed in vergelijking met wat ze bij het KNMI kunnen, maar voor een zelf in elkaar gezet systeem heel behoorlijk, lijkt mij. En bovendien, heel betaalbaar. Bij Reichelt kost hij € 1,12, nog wel overheen te komen denk ik, dat is dan wel de DZ-versie. Die loopt van 0 tot 100 graden Celsius. Voor ons doel voldoende. Er is ook een versie voor –40 tot +110 °C, maar die werkt met negatieve spanningen en dat wil ik jullie voorlopig nog niet aandoen. Deze LM35 heb ik op een bordje gezet, net als de thermistor. Op de foto is 00 de thermistor en 01 de LM35. Om ze te kunnen vergelijken heb ik ze samen op één LaunchPad aangesloten. De software meet afwisselend de thermistor en de LM35 en geeft de waarden op het scherm weer in TeraTerm. De code van dit programma staat op de website.
Om de twee sensoren redelijk gelijk met elkaar te laten lopen was bij de thermistor een kleine correctie nodig van 6. In de code terug te vinden in de regel: #define CALL 6.
Per meting wordt dan 6 afgetrokken van de waarde die de ADC berekent. Ik heb na vele uren testen geen afwijkingen tussen de twee sensoren waargenomen groter dan 0,1 graad Celsius. In de meeste gevallen cirkelen ze om elkaar heen met een verschil van 0,05 en dat vind ik aanvaardbaar.

Driepunts kalibratie
Een andere manier van kalibreren die binnen ons bereik ligt is de driepuntskalibratie. Op zich lijkt dat niet zo ingewikkeld. Het gaat dan om het meten van de temperatuur bij smeltend ijswater, dat zou 0,01 graad Celsius moeten zijn. Daarnaast het meten bij kokend water, dat zou 100 Graden Celsius moeten zijn, maar dat is weer afhankelijk van de luchtdruk op dat moment. Bovendien heeft de thermistor een niet lineair verloop. De LM35 in principe wel, maar ik beschik op dit moment niet over een LM35 die ik in het water onder kan dompelen, dus dat ligt even niet binnen de mogelijkheden. Deze kalibratie stel ik uit naar later. Kan ik ook nog even wat studie verrichten over kalibreren.|

Voeding
Bij het aansluiten van de LM35 moeten we er wel rekening mee houden dat de LM35 minimaal 4 volt wil hebben. Aangezien de normale werkspanning van de LaunchPad 3,3 Volt is (in werkelijkheid 3,53 Volt ) moeten we iets bedenken om aan die 4 Volt te komen.
Gelukkig is daar op de LaunchPad rekening mee gehouden. Kijk eens bij de USB-aansluiting daar staan twee aanduidingen die voor ons belangrijk zijn namelijk TP1 en TP3. Deze aansluitingen zijn direct doorverbonden met de 5 Volt spanning van de USB-aansluiting. Bij mijn aansluiting blijkt dat in werkelijkheid 5,14 Volt te zijn. Gelukkig kan de LM35 werken tussen 4 en 30 Volt, dus dat is geen probleem. De LM35 heeft een interne regeling voor de voedingsspanning.
Als je nu in elk gat bij de TP aanduidingen een header-pen soldeert kun je daar voedingsspanning voor de LM35 vandaan halen. TP1 is de + en TP3 is GND ofwel - of massa.
De meeste USB-poorten kunnen 100 … 500 mA stroom leveren. Dus dat is voor de paar milli-ampères die de LM35 gebruikt geen enkel probleem.
De LM35 geeft een analoge output van 10 millivolt per graad Celsius; de berekening van de temperatuur is dus niet zo ingewikkeld. Eerst de waarde van de Analoog ingang omzetten naar volt en millivolt en dan daarmee de temperatuur uitrekenen.
In het programma is dat de code:
volt = ( A2D * VREF / 1024.0 ) ;  // Zet om naar voltage
mvolt = volt * 1000;
tempC =  mvolt / 10.0;
in de void getval_lm35() functie.

Afronden
Ok, dat was het dan wat betreft de temperatuurmeting. Voor nu althans. Je kunt er zeker van zijn dat ik daar in de toekomst nog regelmatig op terug zal komen. Tenslotte moet er ook nog iets gemaakt worden om de meting buiten uit te kunnen voeren. Onder alle weersomstandigheden. Daar heb ik wel al wat ideeën over, maar die moeten nog verder rijpen. Dus als u zelf goede ervaringen heeft met zelfbouwbehuizing houd ik mij aanbevolen.
Mooi, ga ik volgende keer verder met het meten van luchtdruk en kunt u verder kennis maken met de inrichting van mijn (technische ) ‘pent house’ en de medebewoners.

Terug naar de Zelfbouwpagina.



SWT Meteorologie
© Copyright / Kopijrechten 2016 Henk Siewert
Alle rechten voorbehouden.
Overname alleen toegestaan na uitdrukkelijk en schriftelijke toestemming van de auteur.



01-03-2016 | Achtergrond_Zelfbouw | 1760
© 2024 Vereniging voor Weerkunde en Klimatologie