Hallo Leute, suche Hochpass-, Tiefpass-, Bandpass-Routinen, für die MCS-51 oder AVR- Familie. Jede Sprache - nur kein Pascal! Ich muß eine analoge Filterschaltung softwaremäßig nachbilden. Die Filterkette besteht aus: Tief- und Hochpass, Integrator, RMS- und Spitze-Spitze-Konverter. Kann mir jemand einen Typ geben wie ich an solche Routinen rankomme? Gruß
Hallo Harry Filter 1 Ordnung, Integrator,RMS und Spitze Spitze Konverter sind (in Basic) nicht allzu schwehr. An Filtern Höherer Ordnung wäre ich auch sehr interessiert es steckt allerdings einige Mathematik dahinter. Gruß Michael
Hallo Peter Wenn ich wüßte was ein FIR oder IIR ist könte ich Dir antworten. Ein Basic Listing für ein Besselt-Tiefpaß wäre für den Anfang ganz toll (wird am Häüfigsten benötigt) Butterwoth Verhalten wäre auch ok. Gruß Michael
Du kennst den Unterschied zwischen FIR (=finite impulse response) und IIR (infinite impulse response)-Filtern nicht und beschwerst dich, hier hätte keiner Ahnung? Naja, ich sag schon nichts mehr.
Langsam Leute, ICH hatte mich beschwert, nicht der Peter! Das mit 'keine Ahnung haben' war ja nur so n'e Redensart, um euer Wissen ein bisschen zu lockern - also nichts persönliches, OK?! Mein Problem bei der Filterprogrammierung ist die Programmierung an sich. Ich hab n'e Menge Erfahrung mit analogen Schaltungen (bzw. ihre Berechnung), aber was die Programmierung betrifft - naja, da habe ich noch n'e Menge zu lernen! Wie ich Anfangs schon erwähnte, besitze ich eine (in Hardware) selbstentwickelte Analogschaltung die so funktioniert wie sie geplant war. Jetzt erfuhr ich aber, dass man den ganzen Krempel auch über Software laufen lassen kann. Ich hab mir da n' paar Bücher angeschaut und zu meinem Schrecken bemerken müssen, dass jeder Autor seine eigne bevorzugte Programmiersprache verwendet. Da ich keinen Bock habe mir jedesmal neue Bücher über exotische Programmiersprachen zu besorgen und dann noch wochenlang zu büffeln um die entsprechende Programmiersprache zu verstehen, suche ich irgendwie ein Buch oder eine Arbeit die über das allg. Programmieren (in Basic oder C) digitaler Filterschaltungen (Tief-, Hoch- Bandpass), RMS-, Mittelwertbildung usw. beschreibt. Es sollte aber was praktisches sein! Ich möchte das Rad also nicht schon wieder erfinden müssen, das überlasse ich lieber denen, die das Zeug dazu haben! Kennt jemand von Euch so ein geniales Universalwerk? Vielleicht mit den Titel "Das Programmieren digitaler Filter für den Praktiker" oder so? bis
Hallo Peter Kannst Du nun etwas beitragen zu den digitalen Filter die viele Leute interessieren könnten? Gruß Michael
Hmmm... Kann mich erinnern, sowas mal in der Schule geschrieben zu haben. Soweit ich mich erinnere war das ein Tiefpass und nichts anderes als die letzten paar Werte es Signals zu speichern und dann keden mit einem bestimmten Koeffizienten zu multiplizieren. Dann noch addieren, und fertig :). Die Werte haben wir bekommen, das war aus MatLab. Mehr kan nich dir leider auch nicht sagen, soll nur heißen dass zumindest ein TP ziemlich einfach ist (und der war 4. Ordnung oder so).
Schau mal hier, da findest du einen Crash-Kurs zu dem Thema: http://iem.kug.ac.at/lehre/skripten/ Gruss, Peter
Hi Welche Frequenzen willst du den durch den Filter schicken? Alle Filter hintereinander ist ein ganz schöner Rechenaufwand.(selbst wenn multiplikationsbefehle schon in der Hardware vorhanden sind) Über den genauen aufwand kann man ohne genaue Angaben keine Aussagen treffen. In Matlab sind funktionen integriert mit denen man sowohl mathematisch als auch praktisch filter simulieren kann. Es unterstützt auch diese Filter auf Boards wie das EZ-Lite(DSP-Kit) zu programmieren.Ausserdem kann es auch C-code für Funktionen erzeugen.(Ich weiss aber nicht ob das auch für den Signalverarbeitungsteil gilt).Praktiker können ihre Filter auch selbst zeichnen... Das Programm kostet aber auch ne Menge Überlege es dir aber ob ein DSP-Kit nicht besser für deine Anforderungen geeignet ist da dort auch ähnliche Tools mitgeliefert werden. CU Wolfram
Hallo, jetzt muß ich auch noch meinen Senf dazugeben: Man kann recht einfach ein Tiefpass-Filter programmieren, indem man eine gewisse Anzahl von Samples x(n) aufnimmt, und dann daraus die auszugebende (gefilterte) momentane Größe berechnet: y = a1 * x(i) + a2 * x(i-1) + a3 * x(i-2)... Im Klartext: Man hat ein Array von gesampleten Werten und errechnet den auszugebenden (gefilterten) Momentanwert, indem man die letzten soundsoviel Samples mit bestimmten Koeffizienten multipliziert und das ganze aufaddiert. Diese Koeffizienten ergeben dann die Filtercharakteristik und ihre Berechnung fängt da an, wo mein Wissen aufhört. Übrigens: bei den AVR-Beispielsourcecodes ist ein einfacher Tiefpassfilter dabei. Gruß, Sebastian
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.