Hi All, i want to build an application including a peak detector, therefore i am using the <gr_peak_detector_xb_0> which has a TH Factor Rise and TH Factor Fall to detect a peak. It also has a alpha and a look ahead value.
As far as i understand, if the Threshold finds a possible peak it searchs if the peak goes further above. It searchs so many times as the look ahead value consists. If the look ahead value is 10, then he looks 10 times further. The search will only be stopped if the TH Factor Fall occurs or it reach the 10th value. If the TH Factor Rise occurs it calculates an average value according to the EWMA principle. Therefore we need alpha. A higher alpha value let the average value moving faster down and backwards, a lower alpha value --> moving the average value slower down. Th formula for the alpha i know is alpha = 2/(N+1) whereby we know alpha and want to know N, so N = 2/alpha - 1 So a higher alpha value produces more peaks. I setted up my <gr_peak_detector_xb_0>, but it seems not to work correct. it reacts on every signal even noise. I changed the TH Factor Rise to 10e15 but he still produces peaks. Is this a Bug or what ? Is my understanding on the Peakdetector correct ? I added my grc file in the hope somebody can tell me more. regards Markus
<?xml version='1.0' encoding='ASCII'?> <flow_graph> <timestamp>Thu May 7 13:00:43 2009</timestamp> <block> <key>variable_slider</key> <param> <key>id</key> <value>freq</value> </param> <param> <key>_enabled</key> <value>True</value> </param> <param> <key>label</key> <value>frequency</value> </param> <param> <key>value</key> <value>1e6</value> </param> <param> <key>min</key> <value>1e6</value> </param> <param> <key>max</key> <value>11e6</value> </param> <param> <key>num_steps</key> <value>290</value> </param> <param> <key>style</key> <value>wx.SL_HORIZONTAL</value> </param> <param> <key>converver</key> <value>float_converter</value> </param> <param> <key>grid_pos</key> <value></value> </param> <param> <key>_coordinate</key> <value>(13, 511)</value> </param> <param> <key>_rotation</key> <value>0</value> </param> </block> <block> <key>variable_slider</key> <param> <key>id</key> <value>gain_usrp_source</value> </param> <param> <key>_enabled</key> <value>True</value> </param> <param> <key>label</key> <value>Gain Usrp Source</value> </param> <param> <key>value</key> <value>0</value> </param> <param> <key>min</key> <value>0</value> </param> <param> <key>max</key> <value>20</value> </param> <param> <key>num_steps</key> <value>100</value> </param> <param> <key>style</key> <value>wx.SL_HORIZONTAL</value> </param> <param> <key>converver</key> <value>float_converter</value> </param> <param> <key>grid_pos</key> <value>4, 1, 2, 1</value> </param> <param> <key>_coordinate</key> <value>(151, 499)</value> </param> <param> <key>_rotation</key> <value>0</value> </param> </block> <block> <key>variable</key> <param> <key>id</key> <value>decim</value> </param> <param> <key>_enabled</key> <value>True</value> </param> <param> <key>value</key> <value>256</value> </param> <param> <key>_coordinate</key> <value>(35, 632)</value> </param> <param> <key>_rotation</key> <value>0</value> </param> </block> <block> <key>gr_complex_to_real</key> <param> <key>id</key> <value>gr_complex_to_real_0</value> </param> <param> <key>_enabled</key> <value>True</value> </param> <param> <key>vlen</key> <value>1</value> </param> <param> <key>_coordinate</key> <value>(192, 240)</value> </param> <param> <key>_rotation</key> <value>0</value> </param> </block> <block> <key>gr_char_to_float</key> <param> <key>id</key> <value>gr_char_to_float_0</value> </param> <param> <key>_enabled</key> <value>True</value> </param> <param> <key>_coordinate</key> <value>(694, 51)</value> </param> <param> <key>_rotation</key> <value>0</value> </param> </block> <block> <key>variable</key> <param> <key>id</key> <value>samp_rate</value> </param> <param> <key>_enabled</key> <value>True</value> </param> <param> <key>value</key> <value>64e6/decim</value> </param> <param> <key>_coordinate</key> <value>(30, 703)</value> </param> <param> <key>_rotation</key> <value>0</value> </param> </block> <block> <key>wxgui_fftsink2</key> <param> <key>id</key> <value>wxgui_fftsink2</value> </param> <param> <key>_enabled</key> <value>True</value> </param> <param> <key>type</key> <value>complex</value> </param> <param> <key>title</key> <value>FFT Plot</value> </param> <param> <key>samp_rate</key> <value>samp_rate</value> </param> <param> <key>baseband_freq</key> <value>freq</value> </param> <param> <key>y_per_div</key> <value>10</value> </param> <param> <key>y_divs</key> <value>10</value> </param> <param> <key>ref_level</key> <value>70</value> </param> <param> <key>fft_size</key> <value>512*2</value> </param> <param> <key>fft_rate</key> <value>20</value> </param> <param> <key>peak_hold</key> <value>False</value> </param> <param> <key>average</key> <value>True</value> </param> <param> <key>avg_alpha</key> <value>0</value> </param> <param> <key>grid_pos</key> <value></value> </param> <param> <key>_coordinate</key> <value>(556, 321)</value> </param> <param> <key>_rotation</key> <value>0</value> </param> </block> <block> <key>options</key> <param> <key>id</key> <value>peakdetector_LF_RX_14</value> </param> <param> <key>_enabled</key> <value>True</value> </param> <param> <key>title</key> <value>USRP Peakdetector Test</value> </param> <param> <key>author</key> <value>Example</value> </param> <param> <key>description</key> <value>Tests to analyse how the Peak Detector works.</value> </param> <param> <key>window_size</key> <value>1280, 1024</value> </param> <param> <key>generate_options</key> <value>wx_gui</value> </param> <param> <key>category</key> <value>Custom</value> </param> <param> <key>realtime_scheduling</key> <value></value> </param> <param> <key>_coordinate</key> <value>(10, 10)</value> </param> <param> <key>_rotation</key> <value>0</value> </param> </block> <block> <key>usrp_simple_source_x</key> <param> <key>id</key> <value>usrp_simple_source_x</value> </param> <param> <key>_enabled</key> <value>True</value> </param> <param> <key>type</key> <value>complex</value> </param> <param> <key>format</key> <value></value> </param> <param> <key>which</key> <value>0</value> </param> <param> <key>decimation</key> <value>decim</value> </param> <param> <key>frequency</key> <value>freq</value> </param> <param> <key>lo_offset</key> <value>float('inf')</value> </param> <param> <key>gain</key> <value>gain_usrp_source</value> </param> <param> <key>side</key> <value>B</value> </param> <param> <key>rx_ant</key> <value>RXA</value> </param> <param> <key>hb_filters</key> <value></value> </param> <param> <key>_coordinate</key> <value>(2, 274)</value> </param> <param> <key>_rotation</key> <value>0</value> </param> </block> <block> <key>wxgui_scopesink2</key> <param> <key>id</key> <value>wxgui_scopesink2_0</value> </param> <param> <key>_enabled</key> <value>True</value> </param> <param> <key>type</key> <value>float</value> </param> <param> <key>title</key> <value>Scope Plot after Peak Detector</value> </param> <param> <key>samp_rate</key> <value>samp_rate</value> </param> <param> <key>v_scale</key> <value>0</value> </param> <param> <key>t_scale</key> <value>25e-6</value> </param> <param> <key>ac_couple</key> <value>False</value> </param> <param> <key>xy_mode</key> <value>False</value> </param> <param> <key>num_inputs</key> <value>2</value> </param> <param> <key>grid_pos</key> <value></value> </param> <param> <key>_coordinate</key> <value>(1141, 186)</value> </param> <param> <key>_rotation</key> <value>0</value> </param> </block> <block> <key>gr_peak_detector_xb</key> <param> <key>id</key> <value>gr_peak_detector_xb_0</value> </param> <param> <key>_enabled</key> <value>True</value> </param> <param> <key>type</key> <value>float</value> </param> <param> <key>threshold_factor_rise</key> <value>10</value> </param> <param> <key>threshold_factor_fall</key> <value>10</value> </param> <param> <key>look_ahead</key> <value>20</value> </param> <param> <key>alpha</key> <value>0.05</value> </param> <param> <key>_coordinate</key> <value>(412, 33)</value> </param> <param> <key>_rotation</key> <value>0</value> </param> </block> <connection> <source_block_id>usrp_simple_source_x</source_block_id> <sink_block_id>gr_complex_to_real_0</sink_block_id> <source_key>0</source_key> <sink_key>0</sink_key> </connection> <connection> <source_block_id>gr_char_to_float_0</source_block_id> <sink_block_id>wxgui_scopesink2_0</sink_block_id> <source_key>0</source_key> <sink_key>0</sink_key> </connection> <connection> <source_block_id>gr_complex_to_real_0</source_block_id> <sink_block_id>wxgui_scopesink2_0</sink_block_id> <source_key>0</source_key> <sink_key>1</sink_key> </connection> <connection> <source_block_id>usrp_simple_source_x</source_block_id> <sink_block_id>wxgui_fftsink2</sink_block_id> <source_key>0</source_key> <sink_key>0</sink_key> </connection> <connection> <source_block_id>gr_complex_to_real_0</source_block_id> <sink_block_id>gr_peak_detector_xb_0</sink_block_id> <source_key>0</source_key> <sink_key>0</sink_key> </connection> <connection> <source_block_id>gr_peak_detector_xb_0</source_block_id> <sink_block_id>gr_char_to_float_0</sink_block_id> <source_key>0</source_key> <sink_key>0</sink_key> </connection> </flow_graph>
_______________________________________________ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org http://lists.gnu.org/mailman/listinfo/discuss-gnuradio