Am_rcv.py

Hello-

I am attempting to demodulate an A.M. modulated signal using am_rcv.py,
the USRP, an LFRX daughterboard, and the latest svn gnuradio
distribution.
At present the signal is being generated by a function generator
(Stanford
Research Systems Model DS345) with a 2 MHz carrier and a 5 kHz
modulation.
I have some questions about the demodulation being performed by the
am_rcv.py program found in the examples directory for the usrp.

  1. The first graph is labeled as “Pre-Demodulation”, yet it is actually
    not representative of the original waveform as it has been downshifted
    to
    the offset frequency of 30 kHz (as I recall, there is an issue with the
    USRP that requires this 30 kHz offset, but I don’t know the particulars
    about that, perhaps somebody can explain?). I would like to plot the
    original waveform. Is there a way of showing the fft of the original
    waveform with the carrier at 2 MHz and sidebands at 1.995 and 2.005 MHz?

  2. While the second “Post Demodulation” graph correctly shows the
    sidebands at +/- 5 kHz, the decimation filters are aliasing the sideband
    in the “Post Filter” graph to 2.5 kHz. I have to reduce the
    “audio_decimation” from 2 to 1 to prevent this aliasing. Why would this
    be happening? The original final decimation of 2 produces an effective
    sampling rate of 32 kHz, which should be sufficient to resolve the
    sideband at 5 kHz.

  3. What sets the limits on the axes of these graphs? Is it possible to
    modify them?

I am hopefully going to be using the USRP and gnuradio to demonstrate a
sensor I am developing that produces AM modulated waveforms at the
Division of Fluid Dynamics APS conference in November, so I would like
to
fine-tune this application as much as possible. There will be a booth
for
the commercial vendors at the meeting, and it would be cool if I could
use
Gnuradio at our display in this conference.

Thanks in advance,

eric


Eric H. Matlis, Ph.D.
Aerospace & Mechanical Engineering Dept.
120 Hessert Center for Aerospace Research
University of Notre Dame
Notre Dame, IN 46556-5684
Phone: (574) 631-6054
Fax: (574) 631-8355

Eric Hill M. wrote:

  1. The first graph is labeled as “Pre-Demodulation”, yet it is
    actually not representative of the original waveform as it has been
    downshifted to the offset frequency of 30 kHz (as I recall, there is
    an issue with the USRP that requires this 30 kHz offset, but I don’t
    know the particulars about that, perhaps somebody can explain?). I
    would like to plot the original waveform. Is there a way of showing
    the fft of the original waveform with the carrier at 2 MHz and
    sidebands at 1.995 and 2.005 MHz?

We don’t need that 30 kHz offset anymore. To show the original
waveform, just follow the code in usrp_fft.py

  1. While the second “Post Demodulation” graph correctly shows the
    sidebands at +/- 5 kHz, the decimation filters are aliasing the
    sideband in the “Post Filter” graph to 2.5 kHz. I have to reduce the
    “audio_decimation” from 2 to 1 to prevent this aliasing. Why would
    this be happening? The original final decimation of 2 produces an
    effective sampling rate of 32 kHz, which should be sufficient to
    resolve the sideband at 5 kHz.

Sounds odd. Are you sure you have 5 kHz sidebands?

  1. What sets the limits on the axes of these graphs? Is it possible
    to modify them?

The x-axis will match the sample rates. The Y-axis can be modified by
right-clicking.

I am hopefully going to be using the USRP and gnuradio to demonstrate
a sensor I am developing that produces AM modulated waveforms at the
Division of Fluid Dynamics APS conference in November, so I would like
to fine-tune this application as much as possible. There will be a
booth for the commercial vendors at the meeting, and it would be cool
if I could use Gnuradio at our display in this conference.
That would be great!

Matt

I do have 5 kHz sidebands, and this is verified by the location of the
peaks in the first two fft graphs. It’s just the third graph which
showed
an aliased signal. Could the filter taps be incorrect?

eric

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs