From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

USRP Software Radio

cancel
Showing results for 
Search instead for 
Did you mean: 

Source a Sine Current using USRP N210 using Labview

Solved!
Go to solution

Hi,

 

I am using USRP N210 with LFTX/RX boards for Wired communication (Electromagnetic Induction) and programming using LabVIEW and have downloaded the drivers. I need to command the USRP to send a sine signal of 1MHz through the wire. I have used "Simulate Sine block" but am unsure of the blocks to which this must be wired to. Please let me know the steps or the blocks/VIs which might be helpful.

 

Thank you.

0 Kudos
Message 1 of 7
(6,112 Views)

Hi Vishesh,

 

You're going to need the NI-USRP driver available at the following link.  Once you have that driver, you can use the "niUSRP Write Tx Data" VI to output your waveform to the USRP.

 

The driver also comes with examples to get you started accessed in LabVIEW by going to Help->Find Examples.

 

http://www.ni.com/download/ni-usrp-1.3/4711/en/

-Jim B
Applications Engineer, National Instruments
CLD, CTD
0 Kudos
Message 2 of 7
(6,084 Views)

I have installed the drivers and also ran a few example programs and the USRP is working fine. I have a wired connection at RF1 port and I want the USRP to send a continous current of 1 MHz through it. I have already achieved this using GNURadio by using the "Source and USRP Sink" blocks. I am trying to replicate this using LabVIEW. My plan is to use Function generator.vi to source the current through the USRP. After going through the programs listed in "Examples" I see various blocks like USRP Tx Open/Close Session, configure signal VI, etc. Please correct me here if I am wrong. Since I need to observe the waveform in real time i do not think Session blocks are required. Do I need to connect the function generator.vi to USRP configure signal? What would be the other USRP blocks required on LabVIEW?

 

Thank you. 

0 Kudos
Message 3 of 7
(6,079 Views)
Solution
Accepted by topic author vishesh

Hi Vishesh,

 

I think you do have to use the niusrp open and close session VIs.

You do not need to use the configure signal VI as I think you can not set the carrier frequency on the LFTX and LFRX daughterboards.

I think you can just use the sine generation blocks as shown in attached image.

Thanks.

 

Message 4 of 7
(6,061 Views)

Hello,

 

Thank you very much for the guidance. my system is wired communication system. It involves a Transmitter USRP which has to generate a since current. This passes through RG 85 coaxial cable which is connected to a coil of wire. A metal object is moved over the coil carrying current and an eddy current is induced which must be sensed as a pulse at the receiver in frequency domain. I used the code you had attached for the transmission system. I wrote a program at the reciever but i am unable to detect the pulse. At the tranmistter side I am using 1 M Hz with IQ rate of 2E+11. I have attached the picture of the transmitter and  my receiver program. The program seems to be running without any errors. But I am unable to detect the pulse-maybe because of noise or that the transmitter-receiver system isn't synchronised. Please do let me know where i have gone wrong.

Download All
0 Kudos
Message 5 of 7
(5,960 Views)

Hi vish,

 

You'll probably get more attention if you started a new post, but to answer what you're seeing,

 

You need to configure the USRP before recieving using a niUSRP Configure Signal VI.  That way the USRP knows what kind of signal to look for.  I'm not sure what it's doing without that.

 

Look in the USRP examples for more information.  Examples can be found in the start menu at All Programs->National Instruments->NI-USRP->Examples

-Jim B
Applications Engineer, National Instruments
CLD, CTD
0 Kudos
Message 6 of 7
(5,949 Views)

Two pointers which might help:

  1. The IQ rate is set too high(based off the image which you attached) and is not configurable on the NiUSRP you are using. I think the max that you might want to start with 10M and the max will depend on your system configuration (25 M is close to theoretical maximum). So setting the IQ rate close to 10M i.e. 1E7 is a good starting point.
  2. The IQ rate( I believe) is not being set properly in the Rx VI. It might be a good idea to do that using the same property node as you did in the Tx VI. The default might be something what you do not want.

Thanks.

0 Kudos
Message 7 of 7
(5,905 Views)