Hallo Leute, ich hab mit Scilab eine kleine Filter Programm geschrieben um mir daraus natürlich Filterkoeffizient einer IIR Filter zu berechnen. So weit so gut, nun spukt scilab am ende eine Polynom raus mit den entsprechneden Filterkoeffizienten dies sind aber auf die nyquistband normiert. Die Frage ist wie kann ich nun die Filterkoeffizienten denormalisieren.
Zeig mal die Parameter, mit denen Du den Filter entworfen hast: Fs,Frequenzgang,Ergebnispolynom. Übrigens gibt es in diesem Forum eine spezielle DSP-Rubrik ( siehe linke Seite )
// Display mode mode(0); // Display warning for floating point exception ieee(1); //Tiefpassfilter fa = 10000; //Abtastfrequenz N = 1; // Filterordnung fg = 10;//grenzfrequenz Wn = (fg/fa); [hi] = iir(N, 'lp', 'butt', [Wn Wn], [0 0]); return
jetzt wäre die berechneten Filterkoeffizienten noch praktisch. Zeigt Dir Deine Routine den Frequenzgang? Bei fab von 10KHz entspricht die 0.5 auf der X-Achse normalterweise 2.5Khz. Damit läst sich der Frequenzgang leicht umrechnen.
Es geht doch einefacher aber ich frage mich was willst du denn mit dem Frequenzgang das macht auch die Funktion freq (requency response) die Frage wie denormalisiere ich.
Das Problem ist Deine Frage. Üblicherweise werden die Filterkoeefizienten relativ zu Abtastfrequenz berechnet. Es gibt nichts zu denormalisieren. Koeefizienten eintragen, Filter filtert entsprechend den Entwurfskriterien. Läuft der Filter dann mit der ensprechenden Abtastfrequenz besitzt er auch den Frequenzgang, der beim Entwurf vorgegeben ist.
Siehst du das nicht dass die Variable Wn auf die Abtastefrequenz normalisiert ist, du hättest recht wenn ich die Filterkoeffizienten in Scilab verwenden würde aber dies will ich in eine DSP Anwendung eisetzen. Deshalb muss ich die Filterkoeffizienten denormalisieren.
@ Xion ajax wrote: > Das Problem ist Deine Frage. > Üblicherweise werden die Filterkoeefizienten relativ zu Abtastfrequenz > berechnet. Xion wrote: > Siehst du das nicht dass die Variable Wn auf die Abtastefrequenz > normalisiert ist, du hättest recht wenn ich die Filterkoeffizienten in > Scilab verwenden würde aber dies will ich in eine DSP Anwendung > eisetzen. Deshalb muss ich die Filterkoeffizienten denormalisieren. Ich glaube einfach, dass Du nicht aktzeptiren kannst: ein digitales Filter richtet seine Koeffizienten nuneinmal nach der Abtestfrequenz aus. Dein DSP kann doch auch nicht mit denormalisierten Werten arbeiten !?! Auch die gesuchte Frequenz kannst Du doch einfach bestimmen, wenn Du den Frequenzgang an der gesuchten Stelle anschaust, den Wn Wert abliest, die bekannte Grenzfrequenz !edit:sorry Abtastfrequenz! einsetzt und Wn = f/fa nach f umstellst, ist das evtl. mit denormieren gemeint? Deine Funktion braucht halt die Angabe Wn = fg/fa, um die Koeffizienten des IIRs zu bestimmen. MfG
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.