RF Measurement Devices

cancel
Showing results for 
Search instead for 
Did you mean: 

Adjacent channel power ratio

Solved!
Go to solution

Hello,

 

I am trying to find ACPR measurement of OFDM signal with bandwidth 3MHz using ACP block in SMT Tool kit. But I am getting output as NaN. Why is it so? Can anyone please tell me?

And I am using NI PXIe-5645R tranceiver.

 

Thanks in Advance!

0 Kudos
Message 1 of 17
(6,115 Views)
Can you share a code snippet or your VI?
0 Kudos
Message 2 of 17
(6,109 Views)

Please see the attached vi.

0 Kudos
Message 3 of 17
(6,093 Views)

This is missing the VIs. Try to zip up the lvproj file and Host and Library folders into one file and post that.

0 Kudos
Message 4 of 17
(6,080 Views)

Hi, pls try to run this one.

0 Kudos
Message 5 of 17
(6,073 Views)

I haven't got a chance to test it out, yet, but I see a few things that look a little off.

 

First, you're configuring the number of samples but also setting the number of samples is finite boolean to false. This means that whatever you set for 'rx.record_size' will be ignore. The VST will acquire continuously once a start trigger is received. I think what you want to do is set the number of samples is finite boolean to true. Each time a trigger is received, the VST will acquire one record of length 'rx.record_size'. You'll need to set number of records is finite to false and connect the TX start trigger to the RX reference trigger. Each reference trigger starts a new record.

 

Second, there are frames to synchronize the RX and TX configurations, but the initiate VIs are within those frames so the RX side may not be ready for a trigger when the TX side initiates. Instead, merge the error wires and then call RX initiate, then TX initiate.

 

Also, there's a TX loop but only one initiate. If the waveform is not very long, this loop will end quickly. You'll need to call initiate each time after the Arb waveform completes in order the keep the sequence going.

 

I'll take a closer look tomorrow.

 

Good luck!

0 Kudos
Message 6 of 17
(6,053 Views)

Thanks for your answer.

 

I am trying to do as you told. Please let me know once you find further corrections.

0 Kudos
Message 7 of 17
(6,043 Views)
Solution
Accepted by topic author AnupamaE

It looks like you can get NaN from the SMT ACP block whenever all measurements come out to negative infinity. From the way the acquisition was configured, I think that you were getting an error on the fetch call, which returned an empty waveform array, which was passed the ACP block. That may result in a negative infinity result. I've attached a modified project that works on my VST.

 

Here's what I modified. First, I don't have a timing and sync card so I had to use scripting and a marker event to synchronize the generator and analyzer. You can replace that with your global software trigger code. Second, I made the acquisition changes that I mentioned above: finite number of samples, infinite records, reference trigger connected to PXI trigger 0.

 

Lastly (and I don't know if this is needed), I replaced your IQ to spectrum VI with the one from SMT. The spectral settings are then passed to the ACP VI from the spectrum VI.

 

To make my VI work correctly you may have to scale your waveform. I used scripting mode to synchronize the generator and analyzer which means I had to use peak power mode instead of average power mode. Once you add your synchronization code back, you can switch back to ARB mode and average power mode.

Message 8 of 17
(6,031 Views)

Thank you very much Shawn.

Now the problem got solved. I just had to modify the code according to the vi you attached .

 

I would like to ask you another doubt. I am doing evm measurement as well. And I used the block named 'MT measure QAM quadrature impairments' from RF communication tool kit. But I get error which says, 'polymorphic subvi is broken.' I couldnt fix it. And my question is what do you suggest to measure EVM for the same ofdm demonstrator?

 

Thanks and regards,

Anupama

0 Kudos
Message 9 of 17
(6,010 Views)

I'm glad everything worked out, Anupama!

 

I'm not sure why the measure impairments VI is broken. Do you have multiple versions of LabVIEW open? If you've dropped the polymorphic VI from LV 2013 into a LV 2014 VI, then it may have trouble with the 2014 specific VIs. If that's not the issue, then try to drop the "MT Measure QAM Quadrature Impairments.vi" into your VI. This is the VI that the polymorphic measure impairments VI calls for QAM. If that works, then I'd suggest trying to re-install the modulation toolkit. There may have been some corruption somehow.

 

If you're using the modulation toolkit, there's an example for measuring EVM and other demod characteristics. It's called "MT niRFSA QAM Demod.vi". It measures EVM, frequency offset, DC offset, MER, gain imbalance, and others. It should give you a good idea on how best to use the toolkit.

 

My favorite library to use is RFmx. The Demod personality handles all of your measurements, I believe. You set properties for your measurements, and it handles configuring the hardware to best make them. In your case, you'll have setup the synchronization, but after that, there's no third loop. You just initiate and fetch the measurements in a loop. It handles parallel processing and other optimizations for you. If you want to do some special processing, you can even grab the raw waveform and work from that.

0 Kudos
Message 10 of 17
(5,996 Views)