Wed Mar 17 02:10:01 2010
options
id
mdvh_AFC_FM_demo_WFM
_enabled
True
title
Automatic Frequency Compensation Demo
author
Martin Dudok van Heel
description
FM AFC demo using variable sink
window_size
1280, 1024
generate_options
wx_gui
category
Custom
run_options
prompt
run
True
realtime_scheduling
_coordinate
(7, 5)
_rotation
0
variable_slider
id
freq_src
_enabled
True
label
value
1000
min
-20000
max
20000
num_steps
100
style
wx.SL_HORIZONTAL
converver
float_converter
grid_pos
notebook
_coordinate
(2, 491)
_rotation
0
variable
id
alpha
_enabled
True
value
0.25*channel_bandwidth * math.pi / samp_rate
_coordinate
(364, 220)
_rotation
0
gr_throttle
id
throttle
_enabled
True
type
float
samples_per_second
samp_rate
vlen
1
_coordinate
(176, 137)
_rotation
0
blks2_nbfm_tx
id
nbfm_tx
_enabled
True
audio_rate
audio_rate
quad_rate
samp_rate
tau
75e-6
max_dev
max_dev
_coordinate
(357, 113)
_rotation
0
note
id
note_0
_enabled
True
note
uses AFC_freq_comp
_coordinate
(575, 59)
_rotation
0
wxgui_fftsink2
id
fftsink
_enabled
True
type
complex
title
FFT Plot
samp_rate
samp_rate
baseband_freq
0
y_per_div
10
y_divs
10
ref_level
50
ref_scale
2.0
fft_size
1024
fft_rate
30
peak_hold
False
average
False
avg_alpha
0
win
None
win_size
grid_pos
notebook
_coordinate
(840, 0)
_rotation
0
variable
id
AFC_variable
_enabled
True
value
0
_coordinate
(507, 510)
_rotation
0
variable
id
max_dev_radians_per_sec
_enabled
True
value
2.0*math.pi*2.0*max_dev/samp_rate
_coordinate
(117, 623)
_rotation
0
import
id
import_0
_enabled
True
import
import math
_coordinate
(1, 632)
_rotation
0
gr_sig_source_x
id
src_audio
_enabled
True
type
float
samp_rate
audio_rate
waveform
gr.GR_COS_WAVE
freq
1000
amp
1
offset
(freq_src/20000)
_coordinate
(0, 105)
_rotation
0
gr_freq_xlating_fir_filter_xxx
id
freq_compensating_channel_filter
_enabled
True
type
ccf
decim
1
taps
gr.firdes.low_pass (1.0, samp_rate,(0.5+0.1)*channel_bandwidth, 0.1*channel_bandwidth, gr.firdes.WIN_HANN)
center_freq
AFC_freq_comp
samp_rate
samp_rate
_coordinate
(576, 113)
_rotation
0
variable
id
AFC_freq_comp
_enabled
True
value
max_dev*min(max(AFC_linear,-1.0),1.0)
_coordinate
(763, 501)
_rotation
0
blks2_nbfm_rx
id
nbfm_rx
_enabled
True
audio_rate
audio_rate
quad_rate
samp_rate
tau
75e-6
max_dev
max_dev
_coordinate
(840, 192)
_rotation
0
wxgui_scopesink2
id
scopesink
_enabled
True
type
float
title
Scope Plot
samp_rate
audio_rate
v_scale
0.0125
v_offset
0
t_scale
0
ac_couple
False
xy_mode
False
num_inputs
1
win_size
grid_pos
notebook
_coordinate
(1106, 95)
_rotation
0
variable
id
samp_rate
_enabled
True
value
320000
_coordinate
(2, 270)
_rotation
0
variable
id
audio_rate
_enabled
True
value
samp_rate/10
_coordinate
(107, 275)
_rotation
0
variable
id
max_dev
_enabled
True
value
75e3
_coordinate
(2, 358)
_rotation
0
variable
id
channel_bandwidth
_enabled
True
value
200e3
_coordinate
(106, 357)
_rotation
0
variable
id
AFC_gain
_enabled
True
value
1.0e4
_coordinate
(337, 442)
_rotation
0
variable
id
AFC_IIR_alpha
_enabled
True
value
1.0e-8
_coordinate
(333, 512)
_rotation
0
gr_single_pole_iir_filter_xx
id
AFC_iir
_enabled
True
type
float
alpha
AFC_IIR_alpha
vlen
1
_coordinate
(369, 337)
_rotation
0
variable
id
AFC_linear
_enabled
True
value
-AFC_gain*AFC_variable
_coordinate
(638, 469)
_rotation
0
variable
id
AFC_log
_enabled
True
value
-1.0*math.copysign(math.log(1+abs(AFC_gain*AFC_variable)),AFC_variable)
_coordinate
(640, 541)
_rotation
0
variable
id
AFC_update_rate
_enabled
True
value
1.0
_coordinate
(336, 581)
_rotation
0
blks2_variable_sink_x
id
AFC_variable_sink
_enabled
True
type
float
variable
AFC_variable
decim
int(samp_rate/AFC_update_rate)
vlen
1
_coordinate
(615, 329)
_rotation
0
nbfm_rx
scopesink
0
0
src_audio
throttle
0
0
throttle
nbfm_tx
0
0
nbfm_rx
AFC_iir
0
0
AFC_iir
AFC_variable_sink
0
0
nbfm_tx
freq_compensating_channel_filter
0
0
freq_compensating_channel_filter
nbfm_rx
0
0
freq_compensating_channel_filter
fftsink
0
0