met papier mache kun je alles maken!!
Het is een NTC weerstand op een gameport, dus de waardie ik krijg is geen "temperatuur", maar kan het er wel van afleiden..Verwijderd schreef op 26 December 2002 @ 20:02:
Heb je geen spessheet van die sensor? waarinstaat hoe je 't om moet rekenen?
[ Voor 4% gewijzigd door Servowire op 26-12-2002 20:28 ]
met papier mache kun je alles maken!!
de manier van weerstand meten die de gameport gebruikt is niet heel erg precies.
Er word gebruik gemaakt van een 555 timer en een condensatortje, de condensator word over de variabele externe weerstand opgeladen en de tijd die dit in beslag neemt word gemeten (hoe groter de weerstand hoe langer de oplaadtijd)
Je zou kunnen uitzoeken hoe de gelezen waarde in relatie staat met de tijd die nodig is voor het opladen en dan daarmee uitrekenen wat de weerstand was.
Je kan imho beter gebruik maken van een brug van wheatstone icm een ADC
Er word gebruik gemaakt van een 555 timer en een condensatortje, de condensator word over de variabele externe weerstand opgeladen en de tijd die dit in beslag neemt word gemeten (hoe groter de weerstand hoe langer de oplaadtijd)
Je zou kunnen uitzoeken hoe de gelezen waarde in relatie staat met de tijd die nodig is voor het opladen en dan daarmee uitrekenen wat de weerstand was.
Je kan imho beter gebruik maken van een brug van wheatstone icm een ADC
[ Voor 17% gewijzigd door Aaargh! op 26-12-2002 22:18 ]
Those who do not understand Unix are condemned to reinvent it, poorly.
Volgens de trendline van Excel zou je kunnen werken met
T=239,29e-0,0462c, met T je temperatuur in graden en c de waarde die je uitleest (Voor de liefhebber: R=0.9999, bijna precies dus, hoewel lastig te zeggen op 3 punten...)
Dat zou dan zoiets kunnen worden:
T=239,29e-0,0462c, met T je temperatuur in graden en c de waarde die je uitleest (Voor de liefhebber: R=0.9999, bijna precies dus, hoewel lastig te zeggen op 3 punten...)
Dat zou dan zoiets kunnen worden:
C++:
1
2
3
| float NTCWaardeNaarGraden(int ntcWaarde) { return 239.29*exp(-0.0462*ntcWaarde); } |
Zo scherp als een voetbal!
er komt hier een waarde uit die ver onder nul ligt.....Reptile209 schreef op 26 december 2002 @ 22:37:
Volgens de trendline van Excel zou je kunnen werken met
T=239,29e-0,0462c, met T je temperatuur in graden en c de waarde die je uitleest (Voor de liefhebber: R=0.9999, bijna precies dus, hoewel lastig te zeggen op 3 punten...)
Dat zou dan zoiets kunnen worden:
C++:
1 2 3 float NTCWaardeNaarGraden(int ntcWaarde) { return 239.29*exp(-0.0462*ntcWaarde); }
code:
1
| Sensor 1: -1610612736 |
met papier mache kun je alles maken!!
Je kunt er ook een tweede-machtsfunctie doorheen jassen. Dat zal wel iets beter zijn dan de trendline van Excel. Maar hoe nauwkeurig wil je het hebben. Als je het heel nauwkeurig wil doen, kun je misschien beter wat meer eikwaarden opmeten en tussen die eikwaarden een lineaire functie gebruiken.
Probeer je 'm nu wel als float af te drukken? Ik heb nl zo het vermoeden dat de waarde die hier staat de longint of int weergave van een float-variabele is. De functie zoals ik 'm gaf geeft dus een float terug!Servowire schreef op 27 December 2002 @ 12:54:
[...]
er komt hier een waarde uit die ver onder nul ligt.....
code:
1 Sensor 1: -1610612736
Tip: druk ook de waarde die op de sensor uitgelezen wordt eens af, en laat daar mijn formule op los. Dan weet je iig wat het "juiste" antwoord zou moeten zijn...
Zo scherp als een voetbal!
Pagina: 1