discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Discuss-gnuradio] Capturing channel power at desired rate


From: John Ackermann N8UR
Subject: [Discuss-gnuradio] Capturing channel power at desired rate
Date: Fri, 1 Dec 2017 15:55:11 -0500
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.3.0

My current project is analyzing the strength of signals in each channel of the AM broadcast band from a recording made during the recent solar eclipse. The goal is to see if the eclipse caused propagation changes leading to additional stations "popping up" out of the noise. Thanks to help from Marcus and others, I have the PFB channelizer and main program flow working nicely, and now I'm trying to optimize the amplitude measurement.

My prior attempts involved using a Power FFT block and taking the maximum value of the vector. This always made me a little nervous, looking for just one point that represents the carrier.

After Googling around I decided to switch tactics and instead of looking for a single peak, measure the total noise power in a very narrow channel around the carrier location (for now, 50 Hz). The power will be almost entirely contained in the carrier, but using total power in that narrow width seems more straightforward than the FFT approach, as I'm not too worried about interference signals in this experiment.

I've put together a hier block that uses a complex-to-mag^2 block followed by a moving average and a keep-1-in-N. My goal is to generate output records at a set rate, almost always slower than once per second.

Attached are a screenshot and .grc of the block I came up with, and I'd appreciate any thoughts about whether this is the best way to do it. Three notes:


1. I know that this is not a calibrated system, and that the dB values I'm outputting are relative; that's fine for this experiment.

2. I really wish I could figure out how to output the amplitude data as a string in a text file, rather than as floats in binary; all my subsequent analysis tools take one-value-per-line string input and it seems suboptimal at best to do an intermediate float-to-string conversion before I can use the output data.

3. I want the option to record the raw samples as well as the channel power, and the selector block is meant to toggle that capability. If the "save_samples" parameter is set to 0, I don't want that file to be created at all; if it's 1, then the file should be created and data dumped to it. If this isn't the right way to accomplish that, I'd appreciate suggestions. (This will be set at the beginning of the run, and won't change during runtime.)

Thanks,
John

Attachment: channel_power_sink.grc.png
Description: PNG image

Attachment: channel_power_sink.grc
Description: application/gnuradio-grc


reply via email to

[Prev in Thread] Current Thread [Next in Thread]