hallo! Ich möchte mir eine Lüftersteuerung für meine WaKü bauen. Ich habe mir ein Temperaturfühler gekauft und der Verkäufer ist nicht in der Lage beim Hersteller mir ein Datenblatt zu besorgen. jetzt weiß ich als blutiger Anfänger nicht wie ich an die Daten zur Berechnung des Temperaturwertes in Bascom ran komme. Kann mir da einer von euch Helfen??? Er gibt mir nur diese Angaben: Material: Messing vernickelt Messgenauigkeit: ca. 0,3k (Präzisionsmessung möglich) Kabel: 2-Pin Stecker mit ca. 50cm Kabel Widerstand 10KOhm Oberer Durchmesser: 18mm Obere Länge: 8mm Gesamtlänge: 30mm Gewindelänge: 10mm Untere Sensorenlänge: 12mm Durchmesser Sensor: unten 6mm, 2te Stufe 7mm hier ein link zu dem Sensor: http://www.ebay.de/itm/110953004592?ssPageName=STRK:MEWAX:IT&_trksid=p3984.m1423.l2649#ht_1857wt_1139 Ich habe schon herausgefunden das es ein NTC ist weil der Widerstand sinkt wenn die Temperatur steigt. ist das richtig? Gruß Peter
Peter K. schrieb: > Ich möchte mir eine Lüftersteuerung für meine WaKü bauen. > Ich habe mir ein Temperaturfühler gekauft und der Verkäufer ist nicht in > der Lage beim Hersteller mir ein Datenblatt zu besorgen. > jetzt weiß ich als blutiger Anfänger nicht wie ich an die Daten zur > Berechnung des Temperaturwertes ran komme. Nun, dann musst Du den Sensor langsam erwärmen, an einem auf gleiche Temperatur liegendem Thermometer die Temperatur ablesen und parallel den Widerstand messen. Die so händisch erstellte Tabelle kannst Du dann in Dein Programm einbauen. Gruss Harald PS: Ich würde mir bei einem normalen Elektronikhändler einen Sensor kaufen, für den es auch ein Datenblatt gibt. Der ist vermutlich sogar billiger.
Ich hatte damals das gleiche Problem des nicht vorhandenen Datenblatts und habe dann einfach den NTC incl Epoxidharzvergusses rausgezogen und einen PT100 eingegossen an Stelle des NTC-Sensors. MfG Steffen
Den NTC mit einem Widerstand als Spannungsteiler aufbauen. NTC oben, Festwiderstand unten. Bei gleichem Nennwert (10k) erhältst Du bei 25°C die halbe Referenzspannung (deren absolute Größe hier übrigens völlig egal ist, es wird ratiometrisch gemessen). Bei kleinerem Teilerwiderstand verschiebt sich der lineare Bereich in Richtung höherer Temperaturen. Wenn Du ein Datenblatt zum Sensor auftreiben kannst, gut. Wenn nicht machst du nachher eine 2-Punkt-Kalibration, wenn es genauer als 1°C sein soll. Für die Berechnungen kopiere ich die Datenblattwerte des NTC in eine Tabellenkalkulation und lasse mir den Verlauf des AD-Wertes über der Temperatur zeichnen. Da sieht man den linearen Bereich recht deutlich und wählt sich 2 Eckpunkte für eine Umrechnung mit einer Geradengleichung. Einfach mal mit der Tabelle spielen. In J1 kannst Du den Spannungsteilerwiderstand anpassen, die Referenzspannung ist zwar drin (J2), hat aber keinen Einfluss auf den Digitalwert. Die Auslösung kannst Du an deinen ADU anpassen. Im Plot ist noch die Messauflösung in °C/Bit drin (gelbe Kurve)
schau mal da: http://www.mcselec.com/index2.php?option=com_forum&Itemid=59&page=viewtopic&t=8353&highlight=ntc
Hallo! Habe jetzt seit langen mit der Tabelle rum gespielt und hin und her gerechnet. Die Tabelle "NTC-Tabelle.xls"kommt so in etwa hin! Ich komme nur nicht drauf wie ich da jetzt eine Temperatur draus berechnen soll! Kann mir da einer eine kleine beispiel Rechnung vorschlagen? Gruß Peter
Peter K. schrieb: > Hallo! > Habe jetzt seit langen mit der Tabelle rum gespielt und hin und her > gerechnet. > Die Tabelle "NTC-Tabelle.xls"kommt so in etwa hin! > > Ich komme nur nicht drauf wie ich da jetzt eine Temperatur draus > berechnen soll! > > Kann mir da einer eine kleine beispiel Rechnung vorschlagen? Du hängst den Sensor in Eiswasser (=0°C) und misst den Wert. Dann hängst du den Sensor in kochend sprudelndes Wasser. Das hat zwar nicht genau 100°C aber es wird reichen. Zu guter letzt nimmst du zur Sicherheit noch ein paar andere Temperaturen dazu. zb kannst du mit einem Fieberthermometer einen Bereich run um 37°C ganz gut ausmessen. Einfach kaltes Wasser mit warmen Wasser mischen, bis du am Thermomter eine Ablesung erhältst. Raumthermomter und aktuelle Raumtemperatur ist ebenfalls ein Wert den du leicht bestimmen kannst und der dir nichts kostet. Abgesehen davon, wärs natürlich gut, wenn du ein paar Messwerte in der Umgebung des Bereichs hättest, der dich besonders interessiert. Aus den Werten kann man dann eine Gleichung einpassen. Wenn du den Sensor mit dem 2.ten Widerstand in den linearen Bereich gebracht hast, dann nimmst du einfach y = k*x + d (und mit den restlichen gemessenen Werten kannst du kontrollieren, wie gut das passt und ob du einen großen Fehler hast) Wenn linear nicht gut passt, dann eben eine quadratische Gleichung y = l*x^2 + k*x + d damit sollte das schon besser passen. (x ist der Messwert vom ADC, y ist die Temperatur. Du musst dann eben enstprechende l, k und d bestimmen, so dass die Umrechnung funktioniert. Kann man händisch machen, aber auch Excel kann das erledigen)
Karl Heinz Buchegger schrieb: > zb kannst du mit einem Fieberthermometer einen > Bereich run um 37°C ganz gut ausmessen. Einfach kaltes Wasser mit warmen > Wasser mischen, bis du am Thermomter eine Ablesung erhältst. Das geht einfacher: Man steckt Fieberthermometer und Sensor in die Armbeuge und wartet 3min. Der Mensch ist ein ziemlich guter Thermostat. :-) Gruss Harald
Ein klein wenig mehr mühe kannst du dir schon geben. Gleich der erste Aufruf: http://www.aquatuning.de/product_info.php/info/p808_Thermosensor-G1-4.html http://www.aquatuning.de/product_info.php/info/p1746_Thermosensor-G1-4-mit-Display.html Anhand der Steuergeräte kommst du noch weiter.
Hallo! Danke Karl Heinz Buchegger ich werde es mal probieren!! gruß peter
Karl Heinz Buchegger schrieb: > (x ist der Messwert vom ADC, y ist die Temperatur. Du musst dann eben > enstprechende l, k und d bestimmen, so dass die Umrechnung funktioniert. > Kann man händisch machen, aber auch Excel kann das erledigen) wie soll ich l, k und d bestimmen wen ich nicht mal weis was das für größen sind
Peter K. schrieb: > Karl Heinz Buchegger schrieb: >> (x ist der Messwert vom ADC, y ist die Temperatur. Du musst dann eben >> enstprechende l, k und d bestimmen, so dass die Umrechnung funktioniert. >> Kann man händisch machen, aber auch Excel kann das erledigen) > > wie soll ich l, k und d bestimmen wen ich nicht mal weis was das für > größen sind Das sind einfach nur Zahlen, die die Umrechnung von einem System ins andere ermöglichen. Beispiel Du misst festgestellter ADC Wert gemessene Temperatur 200 0°C 879 100°C Die Annahme lautet: der Zusammenhang zwischen ADC WErt und Temperatur ist im wesentlichen linear (*), genügt also der Geradengleichung y = k*x + d Also hast du (Messwerte einsetzen) 0 = k * 200 + d 100 = k * 879 + d das sind 2 Gleichungen in 2 Unbekannten. Und das kann man lösen und so die Werte für k und d erhalten (zweite Gleichung negativ machen) 0 = k*200 + d -100 = -k*879 - d von der ersten die zweite abziehen 0 - 100 = k*200 - k*879 +d -d +d-d ergibt 0 -100 = k*200 - k*879 k herausheben -100 = k(200-879) das k alleine stellen -100 / (200 - 879) = k ausrechnen k = 0.1472 eine der beiden mit den Messwerten bestückte Gleichung hernehmen 0 = k*200 + d das jetzt bekannte k einsetzen 0 = 0.1472 * 200 + d umstellen -(0.1472*200) = d ausrechnen d = -29.44 Also kannst du durch deine beiden Messwerte eine Gerade legen, die der Gleichung y = 0.1472 * x - 29.44 genügt. Probe für x = 200 ergibt sich 0.1472*200 - 29.44 -> 0 für x = 879 ergibt sich 0.1472*879 - 29.44 -> 99.948 (das da nicht genau 100 rauskommt liegt daran, dass ich bei der Berechnung ein paar Kommastellen unter den Tisch hab fallen lassen) Meldet dir dein ADC einen Wert von 432, dann eben 0.1472*432 - 29.44 -> 34.1 und es hatte rund 34° Für quadratische Gleichungen y = l*x*x + k*x + d geht das genau gleich, nur dass du eben 3 Messpunkte brauchst (für jeden der Koeffizienten einen) um das System aus dann 3 Gleichungen nach den Unbekannten l, k und d aufzulösen. (*) ob das so ist oder nicht kann man sehen, indem man ein paar ADC Werte samt zugehöriger Temperatur aufnimmt. Die zeichnet man in ein Koordinatensystem ein und wenn du da ein Lineal dranlegst und die Punkte im wesentlichen (ganz genau wirds wahrscheinlich nie stimmen) alle an der Linealkante liegen, dann funktioniert eine Geradengleichung, volgo lineare Gleichung. Und jetzt weißt du auch, warum man sowas eine 'lineare' Glechung nennt - weil man ein Lineal anlegen kann und die Punkte auf einer Geraden liegen. Die nächst höhere Potenz ist dann eine quadratische Gleichung (weil x im Quadrat darin vorkommt) und die zugehörige Kurve ist eine Parabel. Und plötzlich kriegt alles was in Mathe in der Schule immer so trocken war eine ganz spezielle praktische Bedeutung :-) Und das beste daran: man malt nicht einfach irgendwelche Formeln ab, die man nicht versteht, sondern leitet sich die Dinge selber her so das es praktisch einsetzbar ist. Und wenn es ein Problem gibt, kann man sich dann plötzlich selber helfen weil man verstanden hat, was da abgeht und die Mathe dazu im Griff hat.
Man muss dabei nicht unbedingt mit Fließkommazahlen rechen. Einfach erstmal die ganzzahligen Werte aus der Formel einsetzen und etwas nachdenken. Wenn das Ergebnis eine oder zwei Nachkommastellen haben soll, dann normiert man die Zahlen eben auf Zehntel- oder Hunderstelgrad. Als nächstes schaut man, dass die Divisionen möglichst spät erledigt werden (Rundungsfehler minimieren) und dann prüft man den erlaubten Wertebereich der genutzen Variablen. Wenn es mit INT nicht mehr hinhaut gibt LONG zwar etwas mehr Rechenbedarf, wenn aber kein Coprozessor für Float-Rechnungen dabei ist, dann ist das trotzdem viel schneller zu rechnen. Wenn die Umkehrfunktion (Temperatur = f(Digitalwert)) bei linearer Annäherung an den Enden zu ungenau wird, kann man auch stückweise linear arbeiten. Einfach an den Enden des Bereiches eine neue Geradengleichung ermitteln und mit if/else if die Bereiche aus dem Digitalwert bestimmen.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.