Hallo Ich arbeite gerade an einer Windmessung mit einem Widerstandsdraht . den ich bestrome und anhand der Stromänderung den Win bestimme. Das klappt auch schon ganz gut ,nur ändert sich der Strom im Bereich zwischen 1,5 und 2,5 mA also nicht viel. Hab nun einen 100mOhm 4 Lleiterwiderstand zwischengeschalten und Messe den Spannungsabfallder so bei 35 mVliegt und ändert sich im Kommabereich . Danach hab ich nun einen Verstärker LMP8172 nachgeschlten der Versärkt das ganze nun um 20 fach auf so 700mV .Die wollte ich jetzt messen mit einem M16 AVR. Leider klappt das nicht so ganz da der gemessene Wert mit dem AVR stark schwankt, obwohl wennn ich mit dem Multimeter messe der Wert gleich bleibt.Da es bei mir ja aufs mV ankommt ist das völlig unbrauchbar Habe schon mit unterschiedlichen Ref Spannungen probiert 1,5V bis 5 Volt. Verwende Bascom AVR . Hat jemand vieleicht eine Idee ? Oder mach ich einfach bei der Messung mit dem AVR was falsch aber wenn ich die Betriebsspannung messse komme ich immer auf 4,9998528. Gruß Wolfgang
bei 35mV ist es wichtig den Offset und wenn Temperaturschwankungen sind den Offsetdrift zu kompensieren... Ich würde auch die Verstärkung höher stellen... das du auf ~3V kommst... dann lässt sich das ganze schön messen... wenn die Schwankungen nicht zu schnell von statten gehn, vllt noch einen kleinen kondensator dazu, damit die spannung nicht zu schlimm schwankt, von was auch immer herrührend... bei der programmierung kann ich leider nicht helfen, bin eingefleischter C programmierer ^^
Weshalb nur auf 700mV verstaerken ? Da sollte man auf das maximal moegliche gehen, sodass der Wandlerbereich ausgenuetzt wird. Der Opamp sollte eine kleine Drift haben.
Hallo Danke für die schnelle Antworten also mit Konensator habs ich schon mal Probiert hilft nichts und ich habs auch mit dem Ossci nachgemessen die spannung schwankt eigendlich nicht Kann das Signal noch Vertärken muß mir noch einen guten Op suchen aber wennn der AVR so unteschiedliche Werte liefert hulft das auch nicht viel Gruß Wolfi
Da der Wind nicht gleichmäßig weht, sind Deine Messungen natürlich Schwankungen unterworfen. Wenn Du jeweils den Mittelwert über z.B. 10 aufeinander folgende Messungen nimmst, wird das Ergebnis wahrscheinlich stabiler aussehen.
deine referenz ist einfach nicht gut genug.... schau mal im datenblatt vom uC nach was da alles vorgeschlagen wird... wenns dann noch immer nicht so tut wies soll: *guard-ringe rundherum *extra-analog-masse machen *alles schön niederohmig machen *und dann erst in software noch nen filter drüber... aja und schmalbandig messen hat auch noch niemanden geschadet... sprich irgendwo einen tiefpass hin.. aber bitte nicht den C an die OP-eingänge oder an den analog-eingang vom Uc... das kann zu lustigen schwingungen führeren... 73
>mit einem Widerstandsdraht
Hallo Wolfi,
warum denn nun gerade Widerstandsdraht!??
der ist ja nun mal dafür gemacht, das er seinen Wert bei
Temparaturschwankungen gerade NICHT ändert (ändern sollte).
Bei einem dünnen Kupferdraht sieht die Sache messtechnisch wesentlich
freundlicher aus.
Natürlich ist der spezifische Widerstand deutlich kleiner. musst Du
einen dünneren Draht nehmen.
Du kannst auch von einer Taschenlampe"birne" den Glaskolben VORSICHTIG
entfernen und das, was von ihr übrig bleibt verwenden. Geht Seehr gut!!
Oder:
Hast du einen PTC zur Verfügung? Lass den warm werden.
Eine Diode in Flussrichtung könnte auch gehen.
VIele Grüße
AxelR.(Heute mal als GAST)
@Wolfi >Das klappt auch schon ganz gut ,nur ändert sich der Strom im Bereich >zwischen 1,5 und 2,5 mA also nicht viel. >Hab nun einen 100mOhm 4 Lleiterwiderstand zwischengeschalten und Messe >den Spannungsabfallder so bei 35 mVliegt und ändert sich im >Kommabereich . Diesen Satz verstehe ich nicht. Wie hast du dein Widerstanddracht eingeschlossen? Warum muss du Strom messen? Ich nehme an du hast ein Widerstanddracht mit positiven oder negativen Temperatur-Koeffizient, d.h. mit Temperatur ändert sich sein Widerstand. Durch Strom erhitz sich Widerstanddracht durch Eigenerwärmung und dadurch steigt(oder sinkt) sein Widerstand. Durch Wind wird Widerstanddracht abgekühlt und damit sinkt sein Widerstand. Damit ist möglich indirekt Windgeschwindigkeit zu bestimmen. Du brauchst am ende die Widerstandänderung zu messen. Am einfachste wehre mit einem Bruckenschaltung, mit 3 fix Widerstände und deinem Widerstanddracht: AVCC---------- | | R1=R2 - - R R 1 2 - - | | .-------|-----ADC0 | | (Diff. Modus) | .-----ADC1 - - Rwind R R3=Rwind(ohne Wind) 3 - - | | AGND---------- Am ende kannst du Differenz-Eingang von ATmega16(ADC0-ADC1) verwenden und Verstärkungs-Faktor einstellen.(Gain=10?). Und am ende mereren Messwerten aufsummieren. Branko
Manchmal sucht man am falschen Ende. Schließe erstmal ein Poti an am ADC Eingang. Kleines BasCom Programm (mußt noch eine Pause einbauen, siehe Thread:) Beitrag "Mega8 ADC Meßproblem" Laß hören, woran es gelegen hat.. :-)
also wenn ich mich recht erinnere hat der avr doch eien bandgap drinnen.. damit wäre 700mV schon in etwa 2/3 von der full-scale...das ist schon OK.. das größte problem ist meiner erfahrung nach die referenz so stabil zu bekommen, dass die werte nicht springen.. das hat imho fast ausschließlich mit der referenz und der eingangsstufe zu tun... dein multimeter springt nicht weil da ein 2-rampen ADC drinnen ist und der integriert dir über die zeit von selbst.. der avr hat einen SAR-ADC drinnen... da ist das dann ein bisserl böser... die idee mit dem poti und schaun obs dann noch immer springt würd ich schonmal als zielführend ansehen.... 73
Hallo Vielen Dank für die rege Teilnahme an meinem Beitrag. Also der Widerstandsdraht ist ein Temeraturabhängiger der ändert seinen Wert von 0 bis 100° um 33%. Verwende ja 2 meter davon bei 21 Ohm pro Meter Hab da schon einige Versuche hinter mir ich kann nur sagen das es mit der Strommessung am bessten klappt. Die Widerstandsmeßbrücke hab ich auch versucht, aber ich komm da nicht auf immer gleiche Ergebnisse da ja duch den Strom die Bauteile sich auch erwärmen.Das Problem ist das sich eine Änderung nur im mV Bereich ergibt und das sollte auch immer gleich sein bei einer bestimmten Windgeschindigkeit(die liegt so zw.0,1 bis 1m/s) mehr kann man auch mit dieser Methode nicht messen wie ich so ausprobiert habe.) So nun zum eigendlichen Problem hab jetzt die Versuche mit dem Poti gemacht und mußte feststellen, das das schon das Übl sein kann. Wenn ich die Betriebsspannung als Ref nehme und auch diese dann mit dem ADC messe bleibt der gemessene Wert gleich. Nehm ich aber eine andere Spannung zb. von einem Netzteil und messe wiedrum die Spg der Betriebsspannung bekomme ich unerschiedliche Werte zurück das ist zwar nicht viel aber es schwankt doch um ein einige mV. Also denk ich liegt schon viel an einer sehr genauen Ref Spannung wie Hans vormir geschrieben hatt. Werd also mir einen Präzisionsspannungsregeler besorgen und dann das ganz mal wieder wiederholen und schauen was dabei rauskommt. Melde mich dann wieder Danke nochmal Wolfi
du brauchst keinen speziellen-spg-regler... du musst die spannung nur sauber bekommen... so ein 7805 in std.-beschaltung und dann noch ein LC-Filter nach sollte eigentlich schon funktionieren.. aber du kannst auch den bereits in deiner schaltung verwendeten nehmen...nur sollte die spannung für deinen sensor eben über ein LC-Filter und direkt vom regler kommen... du hast auch nicht gerade zu vernachlässigende leiterschleifen... also solltest du zumindest irgendwo einen integrator mit 300ms zeitkonstanten haben um 60,50 und 16 2/3 Hz zu unterdrücken 73
>Also der Widerstandsdraht ist ein Temeraturabhängiger der ändert seinen >Wert von 0 bis 100° um 33%. Das ist in Ordnung. >Die Widerstandsmeßbrücke hab ich auch versucht, aber ich komm da nicht >auf immer gleiche Ergebnisse da ja durch den Strom die Bauteile sich >auch erwärmen. Wie stellst du dir Messprinzip vor? Widerstandsdracht hat kein Fehl um das Wind zu spüren. Du verstehst Prinzip nicht. Widerstanddracht MUSS sich durch den Strom erwärmen und je mehr desto besser. Auf diese weise steigt sein Widerstand. Durch den Wind wird dein Widerstanddracht abgekühlt und damit sinkt seine Temperatur(und sein Widerstand). Am besten wehren zwei identische Widerstände zu verwenden: -------------> W--->/ i--->| . Wref n--->\ d----->. Wmess -------------> Auf diese weise kannst du Einfluss von Umgebungstempetarur kompensieren weil ein Widerstand wird nicht durch der Wind beeinflusst und er liefert dir dein Referenzwiderstand. Und Bruckenschaltung ist die beste Lösung um richtige Messwerte zu bekommen. AVCC-------- | | R R | | | | Wmess Wref | | AGND--------
also das mit dem Meßprinzip ist ganz einfach ich Heize den Draht mit einer bestimmten Spannug und messe den Strom. Wird nun der Draht von einem Wind umströhmt so ändert sich sein Widerstand und somit auch der Strom und diese Veränderung werte ich dann aus um den Wind zu Bestimmen. Das ist die Theorie aber praktisch ist das viel schwerer es mu der richtige srtom fließen das sich der Draht nicht so stark erwärmt aber auch nicht zu wenig hab da schon einige Versuche hintermir . Gruß wolfi
>Das klappt auch schon ganz gut ,nur ändert sich der Strom im Bereich >zwischen 1,5 und 2,5 mA also nicht viel. O.K. 1,5mA<I<2,5mA >Hab nun einen 100mOhm 4 Lleiterwiderstand zwischengeschalten und Messe R=100mOhm=0,1 Ohm >den Spannungsabfallder so bei 35 mVliegt Wie kommst du darauf? U=I*R -> 1,5mA*0,1 0hm=0,15mV; 2,5mA*0,1 Ohm=0,25mV >den Spannungsabfallder so bei 35 mVliegt und ändert sich im >Kommabereich . Du hast offensichtlich ein offset von ca.35mV weil Spannungsänderung ist nur 0,1mV(100µV). Lösung ist villeicht ein AD8551 oder AD8571 OPA mit 1µV Offset Branko
Ich habe die Erfahrung gemacht dass die gemsessenen Werte des ADC im AVR ziemlich stabil sind, wenn man mehrere Messungen vornimmt und dann den Mittelwert errechnet. Bei einem Mittelwert von 64 (10 Bit) Messungen (passt gut in eine 16 Bit Variable und lässt sich mit einfachen Shift Operationen wieder teilen) schwankt nur noch das LSB. Gegen einen konstanten Offset hilft das aber eher nicht. Wenn man es mit Messgeschwindigkeit absolut nicht eilig hat, kommt man mit sehr vielen Messungen mit der Auflösung auch deutlich unterhalb die 10 Bit. Allerdings habe ich festgestellt, dass dies dann nicht mehr ganz linear ist . Im Anhang mal die Ladekurve eines Akkus. Die Skala ist in mV (abzüglich eines Offests zur besseren Darstellung). Der ADC könnte bei meiner Schaltung eigentlich nur Unterschiede von knapp 20mV feststellen (daher wohl die kleinen Wellen in der Kurve). Es wurde jeweils der Mittelwert von 2048 Messungen verwendet.
Hallo, mein Bastelprojekt ist zwar ein ganz anderes, aber ich versuche ebenfalls kleine Spannungen und/oder Ströme mit einem ATmega8 zu messen. Das Layout der Platine scheint große Bedeutung zu haben. Die Führung der Masseleitung usw. Mit der ATmega8 Platine hier http://www.razyboard.com/system/morethread-wrdkontrollekamikrokontrolle-wiesollichnurheissen-1542510-4190906-0.html habe ich überraschend gute Ergebnisse. mfg werner P.S: Sauberer als die Spannung am Widerstandsdraht wird die Messung nicht werden.
Hallo, bei DMS (120 Ohm, delta 0,3 Ohm) mache ich das auuf folgende Weise. 1000 mal messen und dann den Mittelwert bestimmen. Dadurch kann man die Auflösung des ADU auf Kosten der Geschwindigkeit erhöhen. Komme damit weit unter die Auflösung des ADU. Da sich auch dieses Signal sehr langsam ändert, sollte das für eine Temperaturmessung auch möglich sein. mfg fritz123 PS siehe Stochastische Messtechnik bzw. Dither
zur von fritz123 vorgeschlagen Methode ist noch zu sagen, dass sie nur funktioniert, wenn genug Rauschen im Signal ist. Gruss, Thorsten
Ja, theoretisch ist Rauschen dazu nötig. Ich nehme aber die Spannung (5 Volt) von der USB Schnittstelle und das funktioniert auch. (In der Praxis ist das eine brauchbare, billige Rauschquelle.) fritz123
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.