www.mikrocontroller.net

Forum: Digitale Signalverarbeitung / DSP SNR Bestimung eines Filters


Autor: Thorsten (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ein Eingangssignal x(k) von einem System setzt sich zusammen aus dem 
Nutzsignal s(k) und Störsignal r(k):

x(k) = s(k) + r(k)

Die beiden Signale haben folgende Eigenschaften:

s(k) = 5*sin(wo*k*T+18°)
r(k) = 2*sin(w1*k*T+23°)+sin(w2*k*T+28°)

Die Abtastfrequenz ist fs=12kHz. Zur Filterung wird ein digitales Filter 
mit
der folgenden Übertragungsfunktion eingesetzt:

        z*(1+q)
G(z) = ---------
         z-q

Wie berechnet man das Signal to Noise Ratio (SNR) am Eingang des 
Filters?
Das SNR ist folgendermaßen definiert:

          [Effektivwert Nutzsignal]
SNR=20*log-------------------------
          [Effektivwert Störsignal]

Wie berechnet man das SNR am Ausgang des Filters für den Fall q=0.8?

Autor: Alex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Eine Variante:

1. Überführe die Übertragungsfunktion in die Laplace-Ebene.
2. Setze s bzw. p = jw und bestimme die Dämpfung bei w0, w1 und w2.
3. Damit kennst du dann die gefilterten Amplitudenwerte der Signale.
4. Berechne Effektivwert der Signale.
5. Nutze SNR Formel.

Vorrechnen werde ich es dir aber nicht, muss meine Hausaufgaben auch 
selbst erledigen :)

Autor: Thorsten (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Frequenzen sind:

fo=1kHz
f1=2kHz
f3=3kHz

Wenn ich den Effektivwert am EIngang berechnen will, dann muss ich x(k) 
ausrechnen. Muss ich dabei k NULL setzen? Wenn ja dann müsste ich nur 
dies berechnen:

x(k) = 5*sin(18°)+2*sin(23°)+sin(28°) = 1.55995

x(k) --> X(z)= 1.55995

In der Übertragungsfunktion setzte ich dann für z=e^(jwt) ein.

        z*(1+q)
G(z) = ---------
         z-q

        e^(jwt) * 1.8
G(w) = ---------------
        e^(jwt) - 0.8

Autor: Thorsten (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn ich x(k) berechnet habe, muss ich dies noch mit der 
Übertragungsfunktion multiplizieren?
Für die Berechnung des SNR am Eingang, welchen Wert muss ich dann für k 
nehmen?

Autor: Thorsten (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hier handelt es sich nicht um einen analogen Filter. Das ist ein 
digitaler Filter. Für z muss ich e^(jwt) einsetzen.

Autor: Thorsten (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
G(z) = Y(z) / X(z)

nach Y(z) umgestellt:

Y(z) = G(z) * X(z)

Dies bedeutet doch ich muss das x(k) in den Z-Bereich transformieren und 
mit G(z) multiplizieren. Die oben angegebenen Frequenzen fo,f1,f2 muss 
ich diese auch in die e-Funktion z=e^(jwt) einsetzen?

Autor: Alex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Oje, da hat aber jemand das Semester über geschlafen ...

Alternative Lösungsvariante:

fs / fo = 12
fs / f1 = 6
fs / f2 = 4

Da die Samplefrequenz ein ganzzahliges Vielfaches ist kannst du also 
einfach 12 Samples von s(k) und r(k) berechnen, also einfach k=0, ..., 
11 in die gegebene Formel einsetzen.
Dann hast du 12 Werte für s(k) und 12 Werte für r(k).

       (1+q)        Y(z)
G(z) = ---------- = ----
       1-q*z^(-1)   X(z)

Y(z) * (1-q*z^(-1)) = (1+q) * X(z)

Y(k) = (1+q) * X(k) + q * Y(k-1)

In obige Gleichung kannst du für X(k) die Samples von s(k) bzw. r(k) 
nacheinander einsetzen und s'(k) bzw. r'(k) berechnen.

Dann noch die Effektivwerte der Samples vor bzw. nach der Filterung 
ausrechnen und das war es.

Autor: Joachim S. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Meine Güte. Wo warst du eigentlich die letzten 6 Semester?

Was ist der Effektivwert eines Sinus?
Die Phase spielt überhaupt keine Rolle für den Effektivwert. Vielleicht 
nochmal das Script von GET2 bemühen.
Im Grundstudium lernt man irgendwann mal, dass Effektivwerte quadratisch 
addiert werden.

Was haben wir im zweiten Semester gelernt: Ein Sinus geht durch ein 
System und es verändert sich nur der Betrag und die Phase, sonst nichts!
Also Übergang z->jw:
So nun benutzen wir mal etwas unser Gedächnis und wenn es da ziemlich 
dunkel ist bemühen wir eine Formelsammlung und finden:
Damit vereinfachen wir nun G(w) und setzen dann nacheinander für w w0, 
w1 und w2 ein. Damit erhalten wir also die Amplitude eines Sinus der 
durch das System hindurchgeht bei der entsprechenden Frequenz.
Jetzt noch s_eff und r_eff berechnen und fertig ist das SNR am Ausgang.

Autor: Thorsten (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Müsste ich nachdem ich die Amplitude nach dem Filter ermittelt habe, 
noch jeweils die Faktoren 5 oder 2 oder 1 multiplizieren?
Das Nutzsignal wird ja mit 5*sin(wt) gebildet.
Sowie das Störsignal mit 2*sin(wt+Phase) + 1*sin(wt+Phase).

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.