Hallo an alle, beschäftige mich nun schon länger mit dem digitalen sprich softwäremäßigen Filtern der/s ADC-Werte/s, die vom integrierten 10-bit-ADC eines PIC18F4550 kommen. Als Entwicklungsumgebung benütze ich den ICD2 b.z.w. MPLAB C18 als Software. Der PIC liest die anliegende Spannung von einem Temperatursensor ein (TMP37 von AD) und zeigt die Spannung auf einem 16x2-Standard-Display an ("100,0 °C") . Der Wert am Display schwankt aber extrem stark, da das Analog-Signal etwas verrauscht ist (+/- 4°C). Wahrscheinlich wegen der Steckplatine. Habe eine Mittelwertbildung der Samples versucht (doch es braucht ziemlich viele Samples (30+) um die Störungen effizient zu unterdrücken, was die Anzeige wiederum ziemlich träge macht. Habe auch versucht die einzelnen Samples rechnerisch zu wichten ( ad[0]= 0.5*ad[1]+0.25*ad[2]+.....) um ein digitales Tiefpassfilter zu simulieren.Leider kenn ich mich nicht so gut aus und weiss nicht wie man gewisse Koefizienten berechnet. Diese Methode funktioniert auch nicht so gut: sie ist träge und filtert recht schwach. Da die Temperaturmessung nicht zeitkritisch ist brauche ich keine große Sampling-Rate, trotzdem sollte das Filter nicht zu träge sein. Kann mir jemand ein paar Anhaltungspunkte geben?
Hallo, wenn Du soviel Rauschen drauf hast, dann muß du halt warten, um genauere Ergebnisse zu erzielen, anders geht das nicht. Da hilft auch kein trickreiches Filter. Anders wäre das, wenn Du etwas über das Rauschen weißst, zB. daß es einen bestimmten Frequenzgang hat, dann wäre 'was drin'. Schön auch bei Ausreißern: Medianfilter: n Meßwerte der Größe nach ordnen und den mittleren nehmen. Lieber mal kucken, warum das so rauscht. Cheers Detlef
Versuche es einfach mal ein RC Glied mit R = 1K und C =100n. Der Kondensator sollte möglichst nahe am A/D-Eingang sitzen.
Hi, hast du den Code vom ganz Anfang noch (Init. des PIC und Einlesen der Analogen Spannung und Anzeige auf dem LCD)? Wäre nett wenn du ihn mal posten würdest!! Danke schon mal.
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.