mikrocontroller.net

Forum: Digitale Signalverarbeitung / DSP Nyquist-Shannon-Theorem und Komplexe Samples


Autor: Stefan K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Leute,

ich habe eine Frage zum Nyquist-Shannon-Abtasttheorem und komplexen 
Samples. Das Theorem besagt, dass meine Samplingrate doppelt so hoch 
sein muss, wie höchste Frequenz eines Signals das noch "rekonstruiert" 
werden können soll.

Ich habe jetzt folgenden Fall:
1. Mein Gerät (USRP2, siehe http://www.ettus.com/products) tastet ein 
Signal (WLAN-Signal) mit 100 MHz ab. Noch im Gerät werden diese 100Msps 
um mindestens Faktor 4 dezimiert (wahrscheinlich, um die komplexen 
I-Q-Samples zu bekommen).
2. Ich erhalte als Ergebnis die -komplexen- I-Q-Samples mit einer 
Messauflösung von max. 25MHz (2x14 bit pro Sample).

Meine Frage ist nun: Wenn das WLAN-Signal (nach 802.11a/g-Standard) eine 
Bandbreite von 22 MHz hat, reichen dann 25MHz mit komplexen Samples aus? 
Oder reicht das nur für 12,5MHz Bandbreite? Letztlich habe ich ja 
-theoretisch- 2 Samples pro Sample... ein reeles und ein imaginäres (90° 
Phasenverschoben) Was bedeuten würde, dass ich 50Msps als "zeitdiskrete" 
Samples hätte...

Vielen Dank schonmal fürs Lesen...

LG,
Stefan

Autor: Gerrit Buhe (gbuhe)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Stefan,

Deine Überlegung stimmt. Die komplexen Samples reichen aus; der Faktor 2 
ist durch die komplexen Abtastwerte gegeben. Es könnte nur knapp werden, 
wenn die 22MHz Nutzbandbreite lediglich die Nennbandbreite ist und das 
Spektrum oder deren Intermodulationen ("Schultern") in Realität mehr 
Bandbreite benötigen. In diesem Fäll hättest Du dennoch Störungen durch 
Aliasing.

Viele Grüße!

Gerrit, DL9GFA

Autor: Stefan K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke Gerrit!

Störungen werden immer drin sein, das gleicht die enthaltene 
Fehlerkorrektur hoffentlich auch etwas aus. Es wird mit OFDM 
(http://de.wikipedia.org/wiki/OFDM) übertragen. Benutzt 48 (+4 Pilotten) 
Subträger, bei einer Kanal-Bandbreite von insgesamt 20 MHhz.

Wenn ich das richtig verstehe liegen irgendwo am Rand Subträger mit ner 
relativ kleinen Bandbreite, die dann eben etwas mehr als die 20 MHz 
bedeuten...

LG,
Stefan

Autor: Gerrit Buhe (gbuhe)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Stefan,

die Bandbreite der Subträger ist überall gleich (Mitte wie Rand), sonst 
wird die Orthogonalitätsbedingung nicht mehr erfüllt.

Ich kenne OFDM ganz gut, habe nun aber nicht genau den 
802.11a/g-Standard nachgeschlagen, bin mir aber recht sicher, daß die 
Modulation auf den Subträgern je nach vorliegendem S/N (Signal to Noise) 
bzw. C/I (Carrier to Interference) adaptiert wird. Das funktioniert 
natürlich nur, wenn Du mit Deinem USPR2 und GNU Radio(?) ein aktiver 
Teilnehmer bist. Dann übernimmt Dein MAC (Medium Access Controller) die 
Link-Adaption. Wenn Du nur "hochohmig" mitlauscht, nimmt natürlich 
niemand Rücksicht auf Deine unter Umständen vom Aliasing gestörten 
Subträger am Rand des Spektrums. In diesem Fall hilft nur die FEC 
(Forward Error Correction) etwas, solange es halt mit dem vorliegenden 
C/I noch geht.

Wenn Du magst, kannst Du ja mal schreiben, ob Du einen vollständigen 
WLAN-Knoten realisieren möchtest, oder eher einen Sniffer.

Viele Grüße!

Gerrit, DL9GFA

Autor: Stefan K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>> Wenn Du magst, kannst Du ja mal schreiben, ob Du einen vollständigen
>> WLAN-Knoten realisieren möchtest, oder eher einen Sniffer.

Eher einen "Sniffer", es ging mir aber erstmal nur um die technische 
Machbarkeit. OFDM implementiere ich lieber erstmal nicht ;-)
Ich werde mich vorerst auf 802.11b beschränken. Das Signal dürfte grob 
11Mhz Bandbreite haben (11 Symbole pro Mikrosekunde). Dafür war 
insbesondere wichtig, ob eine Samplingrate von 20 MHz (komplexe Samples) 
ausreichend ist.

Momentan hänge ich gerade a einem Hochpass-Filter (evtl. auch Bandpass, 
muss ich noch überlegen) für komplexe Samples fest. Ich möchte damit den 
"Gleichspannungsnateil" beseitigen und das Signal/Rausch-Verhältnis 
etwas aufbessern.
Ich bin mir momentan im Unklaren, wie man die Filterkoeffizienten für 
einen FIR dann berechnet... für zeitdiskrete Signale habe ich die 
Lösung, allerdings nicht für I/Q-Samples.
Ich habe schon mit (inverser) Fourier Transformation rumgespielt, was 
das angeht. Allerdings dürfte ich damit je nach Länge der 
Verarbeitungsblöcke die Phasensprünge verlieren (die letztlich die 
kodierte Information enthalten), richtig? Oder ist diese Information 
irgendwie dann in den anderen Frequenzanteilen enthalten?
Meine Billigvariante war eine Reihe von "Phasendrehern" zu benutzen, die 
um 360°*Wunschfrequenz/Abtastfrequenz im Uhrzeigersinn gedreht haben und 
das ganze dann aufsummiert (und durch Anzahl "taps" geteilt).
Das dürfte einer DFT für nur ein Frequenzband von Abtastfrequenz/N 
Bandbreite die "Wunschfrequenz" entsprechen... Das Ganze habe ich dann 
rückwärts (d.h. inverse Drehrichtung) angewendet. Was möglicherweise 
nacheinander geschaltet einem komplexen Bandpassfilter entsprechen 
könnte.

Der Vorteil an der DFT/FFT wäre, dass ich das Signal gleich noch für 
meine Analysen "Upsamplen" könnte... d.h. sauber interpolieren, indem 
ich die Frequenzanteile nehme und bei der inversen Transformation auf 
einen größeren Block zurück rechne (mehr taps).

Grüße,
Stefan

Autor: Gerrit Buhe (gbuhe)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Stefan,

ich füge meine Anmerkungen ein:

> Momentan hänge ich gerade a einem Hochpass-Filter (evtl. auch Bandpass,
> muss ich noch überlegen) für komplexe Samples fest. Ich möchte damit den
> "Gleichspannungsnateil" beseitigen und das Signal/Rausch-Verhältnis
> etwas aufbessern.
> Ich bin mir momentan im Unklaren, wie man die Filterkoeffizienten für
> einen FIR dann berechnet... für zeitdiskrete Signale habe ich die
> Lösung, allerdings nicht für I/Q-Samples.

Diese Unterscheidung gibt es nicht. Deine I/Q-SAMPLES sind doch bereis 
diskrete Signale (nicht nur zeit-, sondern auch wertdiskret). Du kannst 
Dein (wahrscheinlich reelles) FIR-Filter wie gewohnt anwenden, aber auf 
I und Q separat. Wenn Du jedes I/Q-Sample als ein komplexes 
interpretierst und das FIR-Filter mit komplexen 
Multiplikationen/Additionen anwendest, ist der Rechenaufwand der selbe 
und es kommt auch das selbe heraus.


> Ich habe schon mit (inverser) Fourier Transformation rumgespielt, was
> das angeht. Allerdings dürfte ich damit je nach Länge der
> Verarbeitungsblöcke die Phasensprünge verlieren (die letztlich die
> kodierte Information enthalten), richtig? Oder ist diese Information
> irgendwie dann in den anderen Frequenzanteilen enthalten?

Eine komplexe FFT behält alle Informationen, auch die der Phase. Ich 
verstehe aber nicht Dein Ansinnen. Willst Du FFT-transformieren, das 
Filter durch Multiplikation mit der Frequenzübertragungsfunktion 
anwenden und dann zurück transformieren? Je nach Länge des FIR-Filters 
kann das aufwandsgünstiger sein als die Faltung im Zeitbereich.

Wenn das abgetastete Signal aber sowieso Deine ganze Nyquistbandbreite 
ausnutzt und ggf. die Störungen durch Aliasing bereits geschehen sind, 
ist der Nutzen des Bandpasses gering. In diesem Fall reicht vielleicht 
ein einfacher IIR-Hochpass zur Unterdrückung des DC-Anteils. Dieser ist 
im Zeitbereich sehr einfach anzuwenden.


> Der Vorteil an der DFT/FFT wäre, dass ich das Signal gleich noch für
> meine Analysen "Upsamplen" könnte... d.h. sauber interpolieren, indem
> ich die Frequenzanteile nehme und bei der inversen Transformation auf
> einen größeren Block zurück rechne (mehr taps).

Das "Upsamplen" kannst Du auch hervorragend im Zeitbereich tun, indem Du 
zwischen jedem Abtastwert im I- und Q-Datenstrom "oversampling-1" Nullen 
einfügst und anschließend einen Tiefpass oder Bandpass anwendest 
(Grenzfrequenzen gemäß "neuer" Abtastfrequenz 
fs_neu=fs_alt*oversampling). In diesem Fall macht der Bandpass anstelle 
des Hochpasses zur DC-Unterdrückung natürlich wieder Sinn, weil er die 
Sampling-Images um die Vielfachen Deiner alten Abtastfrequenz 
unterdrückt.

Viele Grüße!

Gerrit, DL9GFA

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.