Communications System Case Study: Einstimmung auf AM Radio Entwurf

Sie können die AM-Empfänger testen, indem eine tatsächliche Sprachnachricht mit. Der Wert dieses Tests liegt in der tatsächlich auf die Rede hören, bevor und nachdem er die Kommunikationsverbindung durchläuft. Ihre Ohren Unterschiede hören, die nicht immer leicht von grafischen Darstellungen allein zu erkennen.

Auch, weil die Sprachnachricht eine breitere spektrale Bandbreite als der einzelne Sinuskurve einnimmt, die nichtlineare Signalverarbeitung des Hüllkurvendetektors mehr realistisch in Gegenwart starker Interferenz gekennzeichnet.

Sie können den vollständigen Codeauflistung Zugang für eine End-to-End-Simulation in der Python-Modul ssd.py. Die Simulation setzt Multiraten-Digitalsignalverarbeitung (DSP), so dass eine echte Sprachnachricht, um 8 ksps abgetastet, durch den AM-Transceiver verarbeitet werden.

Das Nachrichtensignal bei 8 ksps wird von 24-192 ksps Upsampling. In dieser Simulation wird eine Trägerfrequenz von 75 kHz ist mit dem Interferenzsignal bei 82 kHz (7 kHz über dem Träger) verwendet werden (kann als eine Emulation der 455 kHz IF betrachtet werden). Der Hüllkurvendetektor ist ein idealer Halbwellengleichrichter (in Software) durch einen Tiefpassfilter folgt, und einen Pegelumsetzer (Signal Mittelwert subtrahieren).

Das Signal wird dann heruntergetasteten von 24 den Empfänger bei 8 ksps zu verlassen. Hörtests des Sprachtextvektor bestätigen die Eliminierung von Inband-Tönen, wenn ein siebter Ordnung Chebyshev BPF wird an dem Eingang zu dem Hüllkurvendetektor platziert.

Sehen Sie sich die Simulationsergebnisse in der folgenden Abbildung.

Hier sind die abgekürzten IPython-Befehle:

Im [964]: Fs, m_wav = ssd.from_wav ( 'OSR_us_000_0030_8k.wav') In [965]: M_wav = m_wav [10000: 120000] #truncate die speechIn [967]: X192W, t192w, m24 = ssd.am_tx (m_wav, 0,8) # tx SIGIN [968]: Xi192w = cos (2 * pi * 82.0e3 * t192w) # interferenceIn [969]: M_rx8, t8, m_rx192, x_env_det = ssd.am_rx (X192W + xi192w) Signal rx # Form bei 8k 192k, kein BPF howeverIn [973]: Pxx1, f = psd (X192W + xi192w, 2 ** 12192) In [984]: Specgram (m_rx8,2 ** 8,8000) - # Grundstück spectrogramIn [987]: X192fw = signal.lfilter (b_bpf, a_bpf, X192W + xi192w) # BPFIn [988]: M_rx8, t8, m_rx192, x_env_det = ssd.am_rx (x192fw) In [995]: Specgram (m_rx8,2 ** 8,8000) - # Grundstück spectrogramIn [996]: Ssd.to_wav ( 'speech_test.wav', 8000, m_rx8) # hören

In einem, wird das AM-Signal als ein symmetrisches Blob mit einem Trägerspitze in der Mitte, rechts bei 75 kHz schürend. Die Störung wird bei 82 kHz liegt, ungefiltert derzeit.

Der BPF Filterform ist in der Darstellung der Figur überlagert ein, so können Sie sehen, wie die Interferenz wird abgehauen. Die Zahlen b und c zeigen Sie die Auswirkungen des BPF. Das Spektogramm Grundstück wird hier verwendet, das zeigt das Frequenzspektrum über die Zeit.

Die Interferenz sitzt effektiv außerhalb des 5-kHz-Audiobandpass, aber aufgrund der nichtlinearen Signalverarbeitungsaktion des Hüllkurvendetektors, in Bandtöne bei 1, 3 und 3 kHz sind in dem Spektrogramm von Figur b evident. Mit dem BPF an Ort und Stelle, gehen die Töne weg (Abbildung c).

Menü