[Top][All Lists]

Re: [Discuss-gnuradio] channel model question

 From: Josh Blum Subject: Re: [Discuss-gnuradio] channel model question Date: Mon, 28 Jun 2010 16:26:34 -0700 User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.1.9) Gecko/20100423 Thunderbird/3.0.4

That ratio of frequency/sample_rate tells the signal source how much to change the output per sample such that it will take 1.0/ratio samples to make a complete sinusoid period or cycle.

Try this out in grc. Look at the signal source in the scope sink, and then try it with 1.0 as the sample rate and freq/samp_rate as the frequency. It will look the same.

-Josh

On 06/28/2010 03:56 PM, John Andrews wrote:
But still there is a problem. 1000/100,000 = 0.01 so the channel_model must
consume 100,000 samples coming into it to represent an offset of 1000Hz.
How, does it know how many samples to consume as the ratio can be the same
for a different combination such as 100/10000.

If x(i) = sin(2*pi*freq_offset_ratio*i) , i must vary from
{1,sampling_rate}.

On Mon, Jun 28, 2010 at 3:00 PM, Josh Blum<address@hidden>  wrote:

For some reason, the channel model's frequency_offset is not in Hz. Rather
its a fraction of the sample rate. You should pass in
my_offset_in_hz/my_sample_rate to this parameter.

The signal source works like that. I suppose that means that the sample
rate and frequency are redundant because you really only care about the
ratio between them.

_josh

oh consistency...

On 06/28/2010 02:12 PM, John Andrews wrote:

Hi,
I have a nagging doubt about how the channel model is implemented in
gnuradio. Suppose I have an input signal entering the channel model at
100,000 samples/sec. Let's say the channel model has to add an offset of
1000Hz to the input signal. Then I must have 100,000 samples of a 1000Hz
SINE_WAVE signal and multiply each input sample with a corresponding input
sample. Am I right? If I am right then i don't see this happening here
with
the sampling rate given as 1 in the line below

d_freq_offset = gr_make_sig_source_c(1, GR_SIN_WAVE, frequency_offset,
1.0,
0.0);

If I am wrong then will someone please correct me here.

thank you very much
John

_______________________________________________

_______________________________________________