Hallo Zusammen, Ich arbeite gerade daran 8 Farbsensoren an mein PIC 32 Board von Mikroe anzuschliesen. Der erste Farbsenor is schon angeschlossen an 3 ( RGB) AD Eingängen und Vreff des PIC 32. Es zeigt sich das ich ein Tiefpass brauche um das RGB Signal zu glätten. sonst sind die Schwankungen zu stark.. Insgesammt also 24 AD Känale zu glätten...( 8 x 3 RGB) ( der Pic hat nur 16 aber ich werd noch ANALog Multiplexer hinhängen) Was ist besser ?, Analoger Tiefpass direkt am Farbsenor und AD oder Mittelwert Filter als Code, oder besser gelich die DSP eigenschaften des PIC nützen. Mein Problem ist ich brauch die Farbwerte in Relativer Echzeit als max 100 ms delay. Ws denkt ihr is Besser ? Gruß Raph
Prinzipiell sind natürlich beides akzeptable Möglichkeiten. Analog bedeutet allerdings mehr Hardwareaufwand. Kommt darauf an was es mal werden soll - Bastlerprojekt oder Produkt. Zum digitalen Weg - es kommt halt darauf an mit welcher Frequenz du abtastest, etc. Dann kann man den Datenaufwand ja ca. abschätzen. Die 100ms sind ja eine halbe Ewigkeit ... Es gibt doch recht einfache Tiefpassfilter die auch entsprechend effizient sind und mit wenigen Fixkommaoperationen auskommen: http://www.mikrocontroller.net/attachment/80230/schift-filter-tp.pdf
Ideal wäre wohl eine Kombination aus analogem und Digitalen Filter: der analoge Filter für Frequenzen über der halben Abtastfrequenz, und der Digitale Filter für die eigentliche Filterung. Der analoge Filter kann ggf. auch recht einfach, z.B. einfach ein RC Glied sein, ggf. reicht auch schon die Endliche Bandbreite der Sensoren. Als digitaler Filter würde sich eine Mittelung über je 20 ms oder ein vielfaches davon anbieten. Damit hat man eine sehr gute Unterdrückung von Störungen bei 50 Hz und 100 Hz, den vermutlich überwiegenden Störungen. Das ist auch von der Rechenzeit ein recht geringer Aufwand.
Danke für die Antwort, gute Idee beide zu machen, ein RC Glied und eine einfach Mittelwer Bildung über 3-4 Werte Die Störungen liegen so ungefähr bei 20 Hz, Ich hoff mal der PIC 32 packt die 24 analog Werte so das die Farbänderungen halbwegs in Realtime über RS 232 rausgehen....
Beim RC Filter würde man nicht nur einen brauchen, sondern für jeden Kanal einen. Die Bildung der Mittelwerte, bzw. Summen sollte für den µC kein Problem sein: so schnell wie der AD die Werte liefert kann man in der Regel wenigstens aufsummieren. Für einen PIC32 sollte das kein Problems ein, selbst bei einem niedrigen Takt um 1 MHz. Nur 4 Werte um damit Störungen bei 20 Hz raus zu filtern ist schon eher wenig. Realistischer ist da eher eine Abtastrate für den AD in der Größenordnung 24 kHz, als jede Millisekunde ein Wert von jedem Kanal. Davon kann man dann jeweils 20 oder 40 aufsummieren. Die Anpassung der Zeit für die Mittelung auf ein vielfaches der Periode der Störungen gibt eine zusätzliche deutlich bessere Unterdrückung von Störungen, weit über die Wirkung als Tiefpass hinaus. Da lohnt es ggf. die Zahl der Samples anzupassen, auch wenn dann so etwas krummes die die Summe über 57 AD Werte herauskommt. 20 Hz kommen mir da komisch vor - zu erwarten sind da eher 50 Hz oder 100 Hz. Die 20 Hz könnte ein Aliasing durch ein zu langsames Abfragen des ADs sein.
Super Danke für die Antwort, Mir ist gerade aufgefallen das über die Woche das Masse Kabel von meinem Experimentierboard vom Farbsensor sich losßgemacht hatte wes wegen es woll zum leichten schwingen kam... Masse Kabel wieder drin jetzt sind die Werte am AD nur noch rund 0,1 % statt 3 % Rauschen was sich mit einem 0.1uF / 10K Tiepass und 30 Werte pro Kanal super Ausbügel läßt. Jetzt stellt sich die Frag ob ich zu erweitern der AD eingänge des PIC 32 leiber eine eine 2ten PIC32 als Slave odere einen ein 8 Kanal Analog multiplexer...Preislich ist ein PIC32 schon so billig das sich ein Multiplexer chip kaum lohnt ich ich gleichzeitig mehr hab ich noch Ports für LCD Display / und Erweiterungen ? Hier ein paar Bilder http://afistofrap.blogspot.com.es/search/label/Engineering
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.