|
From: | Eric Hill Matlis |
Subject: | Re: [Discuss-gnuradio] am_rcv.py |
Date: | Fri, 3 Nov 2006 11:30:57 -0500 (EST) |
Matt-thanks for getting back. I've attached the code as it currently stands. What parts are out of date? The important parts (formatted slightly to fit on the screen) are:
************************************************************************** adc_rate = self.u.adc_rate() # 64 MS/s usrp_decim = 250 self.u.set_decim_rate(usrp_decim) usrp_rate = adc_rate / usrp_decim # 256 kS/s chanfilt_decim = 16 demod_rate = usrp_rate / chanfilt_decim # 16 kHz audio_decimation = 1 audio_rate = demod_rate / audio_decimation # 16 kHz chan_filt_coeffs = gr.firdes.low_pass (1, # gain usrp_rate, # sampling rate 9e3, # passband cutoff 10e3, # stopband cutoff gr.firdes.WIN_HANN) self.ddc = \ gr.freq_xlating_fir_filter_ccf(chanfilt_decim,chan_filt_coeffs,0,usrp_rate) self.magblock = gr.complex_to_mag() audio_coeffs = gr.firdes.low_pass (1.0, # gain usrp_rate, # sampling rate 9e3, 4e3, gr.firdes.WIN_HANN) audio_filter = gr.fir_filter_fff (audio_decimation, audio_coeffs) *****************************************************************************any comments? Particularly on the filter coefficients. I'm not sure yet how to select these. My requirements at this stage are to demodulate sidebands with frequencies of up to say 8 kHz riding on a 2 or 3 MHz carrier. (using the LFRX DC-50MHz daughterboard). Currently I don't care about the audio port as a sink; I simply want to display the fft's on the screen. Eventually I may want to capture to file.
thanks!p.s.- do you have pictures of the enclosure? I just built one using an extruded aluminum case from Box Enclosures, Inc that has very similar dimensions. It's a very handsome box, only I couldn't get the TVRX module to fit; the USRP would only go in one way. If I rotated 90 (which would have allowed the TVRX to fit) then it wouldn't work because the motherboard was about 0.03" too big. There are pics of it at www.nd.edu/~ematlis/z.gnuradio/z.enclosure_pics
************************************ 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 On Thu, 2 Nov 2006, Matt Ettus wrote:
Have you solved this yet? Is it possible that you are decimating too much? The am_rcv code is very old. I would start fresh if I were you. Matt Eric Hill Matlis wrote: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 On Thu, 26 Oct 2006, Matt Ettus wrote:Eric Hill Matlis wrote: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?We don't need that 30 kHz offset anymore. To show the original waveform, just follow the code in usrp_fft.py2) 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?3) 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
am_rcv_plasma.py
Description: Text document
[Prev in Thread] | Current Thread | [Next in Thread] |