Guten Abend Ich habe da ein kleines Problem wo mir Kopfschmerzen bereitet. Ich will/muss mehrere Temperaturen (6 Messpunkte) mit einem AVR erfassen. So jetzt habe ich mir gedacht nehme doch einfach einen PT100/PT1000 und digitalisiere den Spannungsfall am Wiederstand per ADC und werte das ganze mit dem AVR aus! So die Sache soll sehr genau werden, also so min. 0,5°C Genauigkeit. Da 6 Messbrücken etwas viel Platz und Aufwand bedeuten habe ich folgende Idee. Die Schaltung wird von einem Präzisions Spannungswandler (+5V) gespeist. So jetzt bau ich noch eine Präzisions Stromquelle ein die die Messfühler versorgt. Somit würde ich mir die Messbrücken sparen da ja Temperatur-, Spannungs- und Stromschwankungen relativ gering sein dürften! Was haltet Ihr von der Idee??
Hi, vielleicht ist es mit einem 1 Wire Sensor oder TWI(I2C) Bus Sensor einfacher und billiger. Mfg Dirk
Ja da gibt es noch ein Prob. Die Sensoren erfassen ne Wassertemperatur d.h. ich muss die Dinger dicht irgendwie einbauen. Das einzige was ich gefunden habe mit Gewinde und geeignet für flüssige Medien sind PT100 bzw. PT1000.!
Hallo Samy, einfach Deinen PT100 als Spannungsteiler schalten und mit dem ADC einlesen. Gleitende Mittelwertbildung über mindestens 32 Messwerte und Deine Genauigkeit ist locker erreicht. Bernhard
Ein ähnliches Verfahren wie Bernhard habe ich auch schon eingesetzt: 64 der 10-Bit-AD-Werte aufaddieren, ergibt einen Pseudo-16-Bit-Wert. Natürlich nicht mit 16-Bit Genauigkeit, aber doch wesentlich besser als einzelne AD-Messwerte. Stefan
Guten Abend @ Stefan und Bernhard Könnte einer von euch vielleicht so nett sein das genauer zu erklären? Gleitende Mittelwertbildung????? 64 der 10-Bit-AD-Werte aufaddieren, ergibt einen Pseudo-16-Bit-Wert ????? Habe mal Elektroniker gelernt (EEAN) aber seit 6 Jahren nix mehr mit Elektronik am Hut. Bin leider direkt nach der Ausbildung in nen anderen Job gekommen (Wartung vom ICE --> Steckkarte raus neue rein)! Bin etwas ausser Übung und arbeite mich grad wieder ein. Für Hilfe bin ich euch sehr dankbar. Sascha
Hallo Samy Es werden einfach mehrere Messwerte addiert und dann durch die Anzahl der addierten Messwerte dividiert. Damit fallen einzelene "Ausreißer" nicht so ins Gewicht. Mann nimmt dafür oft eine Anzahl, die man durch schieben nachher leicht dividieren kann. 2, 4, 8, 16, 32,64 usw. Ist durch rechts schieben leicht zu erledigen. MFG Dieter
Wenn DU AD-Messungen machst, dann wirst Du bemerken, dass Du selten exakt dassselbe misst - der Wert "wackelt" immer ein bischen. Also: eigendlicher Wert: 72,3 gemessen: 72, 73, 72, 71, 75, 72, 74, 71 Dieser Effekt kommt vom Rauschen auf der Schaltung, oder vom Rauschen Deines Mess-Signals. Das kann Dich ärgern, oder Du machst was draus. Wenn Du alle Werte addierst (im Beispiel 8), dann kommst Du auf 580. Geteilt durch alle 8 Messwerte würdest Du einen Mittelwert von 72,5 bekommen. Das kommt doch schon wesentlich besser ran als die Einzel-Messwerte. Genau betrachtet kann Dir das Rauschen nämlich auch helfen. Angenommen, Du hast einen idealen Wandler und eine ideale Messspg. Dann ist Dein Messfehler bis zu +/- 1/2 Bit. Im oberen Fall würdset Du immer 72 messen und damit 0,3 Abweichung haben. Liegt jetzt aber ein (ideales) Rauschen auf Deinem Messsignal, dann misst Du abwechselnd 72 und 73, wenn Diu viele Werte aufaddierst und danach durch die Anzahl teilst, wirst Du (im Idealtfall) wirklich auf die 72,3 kommen. Obwohl das Dein AD-Wandler EIGENDLICH garnicht kann. Wenn Du Dich näher damit beschäftige willst, such mal unter Quantisierungsrauschen. Mit 72,3 sind wir leider schon im Bereich des Flieskommas. Das ist immer ärgerlich, weil viel Rechnerei und grosse Bibliotheken. Deswegen kommt jetzt ein Rechen-Kniff. Eigendlich interessiert Dich die Zahl 72,3 überhaupt nicht. Den Wert des AD-Wandlers musst Du ja eh interpretieren, in Deinem Fall als Temperatur. Dann kannst Du auch gleich sagen: ich addiere 64 Werte auf und interpretiere dann das Ergebnis als (Pseudo-) 16-Bit-Wert. Warum 64 und warum 16 Bit? Dein Wandler hat 10 Bit, macht 1023 als Maximalwert. Davon kannst Du maximal 64 Stück in einem 16-Bit Wert aufaddieren. Bitte beachten: unsigned verwenden! Das Ergebnis kann genaugenommen nicht den Maximalwert einer 16-Bit-Zahl annehmen, sondern 63 Ticks darunter, sprich: 1023 * 64. Ich hoffe mal, das war einigermassen verständlich... Viele Grüße, Stefan
Hallo Stefan, ich hätte es nicht besser sagen können. Kleine Ergänzung: Gleitende Mittelwertbildung bedeutet n gemessene Werte aufaddieren und durch n teilen. Bei jeder neuen Messung wird dann der älteste Messwert ersetzt und wieder der Mittelwert gebildet. Bernhard
Danke danke :-)) Mit der Methode habe ich übrigens schon eine Akkumessung (Delta-V) gebaut, das hat ziemlich gut geklappt. Stefan
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.