2017-01-07 5 views
1

Ich habe die MathDotNet-Bibliothek verwendet und digitale Filterung am Eingangssignal implementiert. Ich erhalte 40 Proben von meinem ADC und filtere jede Datenprobe, wie ich sie bekomme. Ich habe FIR Online Filter und 2 Median Filter benutzt. enter image description here In dem Bild gibt es eine rote Linie, die das Rohsignal ist und eine blaue Linie, die gefiltertes Signal ist. Wie zu sehen ist, gibt es eine Phasenverschiebung in meinem gefilterten Signal. Ich möchte es entfernen. Irgendwelche Ideen, wie es geht?Gefilterte Signalverzögerung entfernen

Wenn Sie meinen Code in vb.net für eine Idee sehen möchten, dann kann ich es auch posten.

+0

Je nachdem, wie Ihr Code funktioniert (Zeitbasis weist), könnten Sie einfach Probleme wie wenn die beiden Kurven im Verhältnis zueinander zu ziehen. Aber auch, wenn ich mich an meine Signalverarbeitungsklassen vor 25 Jahren richtig erinnere ... kann man keine 0-Phasen-Filter mit FIR-Filtern erzeugen ... (töte mich nicht, wenn ich falsch liege!). http://dspguru.com/dsp/faqs/fir/properties – BitTickler

+0

Sie sagen also, dass die Phasenverzögerung, die ich bekomme, akzeptabel ist? Wenn Sie eine Idee auf vb.net Programmierung haben, kann ich den Code für eine Idee veröffentlichen. Für den Moment bleibe ich bei dieser Phasenverschiebung. –

+0

Der Link, den ich in meinem vorherigen Kommentar gegeben habe, würde es Ihnen ermöglichen, Ihren systematischen FIR-Filter-Abstand aus der Reihenfolge Ihres FIR-Filters (40 denke ich) allein zu schätzen. Wenn das mit dem übereinstimmt, was Ihr Diagramm zeigt, haben Sie Ihre Erklärung. Wenn nicht, müssten Sie untersuchen, wie die Zeichnung und das Zeitmanagement Ihres Graphen funktioniert. – BitTickler

Antwort

0

Wenn bei einer Abtastfrequenz fs einen linearen Phasen FIR-Filter mit Koeffizienten N Betrieb auf einem Signal abgetastet verwendet, wird das Filter eine Verzögerung von 0.5*(N-1)*fs (siehe zum Beispiel dspGuru.com) einzuführen. Das ist völlig normal.

Um den Vergleich mit dem ungefilterten Signal zu erleichtern, können Sie prüfen, entweder:

  1. um den gleichen Betrag das ungefilterte Signal verzögert; oder
  2. das gefilterte Signal von dem Verzögerungsbetrag auf der Grafik Shifting zurück