fft - gnuRadio Dual Tone detection -
i trying come efficient way characterize 2 narrowband tones separated 900khz (one @ around 100khz , 1 @ around 1mhz once translated baseband). don't move in freq on time may have amplitude variations want monitor.
each tone 100hz wide , required characterize these 2 beasts on long periods of time down resolution of 0.1 hz. samples coming in @ on 2m samples/sec (tbd) adequately acquire highest tone.
i'm trying avoid (if possible) doing brute force >2msample ffts on data once second extract frequency domain data. there efficient approach? akin performing 2 (much) smaller ffts around bands of interest? ive looked @ goertzel , chirp z methods not helps save processing.
something akin performing 2 (much) smaller ffts around bands of interest
there is, it's called goertzel, , kind of fft single bins, , have looked @ it. will save cpu time.
anyway, there's no reason 2m-point fft; first of all, want resolution of 1/20 sampling rate, hence, 20-point fft totally do, , should pretty doable cpu @ these low rates; since don't seem care phase of tones, fft->complex_to_mag.
however, there's 1 thing should do: @ signal of interest, , decimate down rate fits that. since gnu radio's filters implemented cleverly, filter run @ decimated rate, , can spend cpu cycles saved on better filter.
because direct decimation 2mhz 100hz (decimation: 20000) have ugly filter length, should multi-rated:
i'd try first decimating 100, , in second step 100, leaving 200hz observable spectrum. xlating fir filter blocks let use simple low-pass filter (use "low-pass filter taps" block define variable contains such taps) band-selector.
Comments
Post a Comment