[Top][All Lists]

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

Re: [Discuss-gnuradio] Editing usrp_spectrum_sense.py

From: Marcus Müller
Subject: Re: [Discuss-gnuradio] Editing usrp_spectrum_sense.py
Date: Tue, 22 Mar 2016 21:10:38 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.6.0

Dear Fikrat,

the physical power depends on your waveform. Generally, the power is always $P(t) = U(t)\cdot
      I(t)$, which, thanks to Ohm's law ($U=R\cdot
      I\rightarrow I = \frac UR$) is $P(t) =
      \frac{U^2(t)}{R}$. As you might know from the basics of electrical engineering, one can represent harmonic functions such as a voltage sine generated by a function generator as complex number with magnitude $A$ and phase $\varphi$ , i.e. as ${\underline
      U}(t) = A \cdot e^{j\varphi}$; notice that for the power consideration, you can omit the $e^{j\varphi}$, it always having the magnitude 1. Use your math basics to find the average power by integrating over a period. For harmonic signals you'll find that if you set $A=U_{eff}=\frac
      1{\sqrt 2} U_{max}$.
2.  Moreover, am I supposed to connect the signal generator directly to the TX/RX port?
If you can make sure your signal generator doesn't push more than -15dBm into the USRP, then sure. Otherwise, use a calibrated attenuator and adjust your measurement.

I don't know which signal generator you use, but most RF signal generators I know accept both, either voltage/amplitude or power as setting.
Also make sure your signal generator is set to 50Ohm impedance, if that is adjustable.

3.  Finally, if that was the case, how do I observe the digital power on the USRP n210?
Well, the magnitude of the imaginary and real part of the digital samples are proportional to the voltage on the I and Q input of the ADC... Soooo: Digital power is just I²+Q² = |s|², the magnitude squared.

All in all, these are pretty basic questions; we're constantly working on making GNU Radio more beginner-friendly, but to do that, we might at times need to refer people to adequate literature.
So: May I ask what background you come from?

Best regards,

PS: could you also try to keep the address@hidden mailing list at least in CC:? It's always better to ask the whole list instead of individual people. I might not always have the time...
On 22.03.2016 17:48, Fikrat Al-Kazimi wrote:
Dear Marcus,

Thanks a lot for your reply. I'm really grateful!

I have a few more inquiries I wish to get your help with if you don't mind. I just got access to a function generator and I plan on generating my injected signal using it. 

1.  The physical power of the injected signal is measured as Vmax^2 / 2R ?
2.  Moreover, am I supposed to connect the signal generator directly to the TX/RX port? 
3.  Finally, if that was the case, how do I observe the digital power on the USRP n210?

I apologize for the basic questions, but I'm fairly new to this field.

Best regards,

On Tue, Mar 22, 2016 at 12:24 AM, Marcus Müller <address@hidden> wrote:
Dear Fikrat,

Feed in a known power, note down the digital power, repeat for another known power.
You'll get three input power->digital power mappings.

Now, assume the power transfer function is a linear one:

$P_{digital} = G\cdot P_{analog} + P_{noise}$

With the two $(P_{digital}, P_{analog})$ measurements you can simply deduce the slope $G$ of the above function; simple math, subtract the equations:

$P_{digital,1}-P_{digital,2}=(G\cdot P_{analog,1} +
                P_{noise})-(G\cdot P_{analog,2} +

and find $G$ and the offset $P_{noise}$.

Repeat with a few other known powers to make sure you're in the linear region.

Whatever you do, never feed in more than -15dBm into your device!

Best regards,

On 21.03.2016 23:05, Fikrat Al-Kazimi wrote:
Hi guys,

I hope you're all doing well.

I'm been searching a lot and I read that if I want to measure the absolute power ( in W or dBm ) using the usrp_spectrum_sense.py, then I must calibrate the USRP by injecting a signal of known physical power. 

Can someone please walk me through the calibration steps? How can I accomplish this and what do I edit in the code after calibration is complete to help me sense the absolute power instead of power_dB?

Thank you for your help!

Discuss-gnuradio mailing list

Discuss-gnuradio mailing list

reply via email to

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