PXI

cancel
Showing results for 
Search instead for 
Did you mean: 

Increase PXI-5672/5671 tuning speed?

Solved!
Go to solution

Hello,

 

I was just wondering if it would be possible for NI to include an option on later NI-RFSG drivers to increase the speed at which the 5672/5671 lock on to a frequency? Please correct me if I'm wrong but I believe that the reason that it takes a long time for the upconverter to retune sometimes is because it is trying to obtain a high level of accuracy when locking to the configured frequency. Would it be possible to give a developer the option to relax the accuracy constraints so that the upconverter locks onto a frequency faster? I'm looking to achieve tuning speeds faster than 10 ms regardless of the frequency tuning step size. I know that there are other variables that also affect the tuning speed of the hardware but I know that I've acheived tuning speeds below 45 ms before as mentioned in this other post that I did a long time ago http://forums.ni.com/ni/board/message?board.id=270&message.id=4749&query.id=320040#M4749.

 

I'm sure that in order to do this, if possible, there would be some deep level driver changes to the RFSG code but I'm hoping that it's possible.

 

Thanks,

 

Tim Sileo



Tim Sileo
RF Applications Engineer
National Instruments



You don’t stop running because you get old. You get old because you stop running. -Jack Kirk, From "Born to Run" by Christopher McDougall.
0 Kudos
Message 1 of 8
(4,513 Views)
Solution
Accepted by topic author TimS.

You are absolutely correct with your assumptions.  The tuning speed is limited due to other factors including accuracy of the configured frequency.  This is a limitation of the actual hardware, so even with driver updates, this functionality would not be possible.  I want to point you to the product suggestion section where you can enter suggestions for new features, as this is something that our new RF hardware will be able to support. 

 

You can find the link in the lower left link of the following page

http://sine.ni.com/apps/utf8/nicc.call_me

 

Chris K

0 Kudos
Message 2 of 8
(4,483 Views)

I have a related question: given that the upconverter cannot change its frequency faster than ~20ms is there a way to keep the upconverter frequency constant and update the frequency of the awg (PXI-5442) which is being upconverted. (I am using the 5671 setup)

 

I am currently using the niRFSG.cs wrapper to generate frequencies but I haven't (yet) found the function to change its frequency rappidly (~1us).

 

Many thanks

Joe

0 Kudos
Message 3 of 8
(3,913 Views)

Hi Joe,

 

As a quick guess I would say that you should be able to tune the IF center frequency of the Arb. I've never used the niRFSG.cs wrapper so I don't know if it has all the functions of the normal driver. However, I believe that if you operated the upconverter in "upconverter only" mode and then controlled the awg independently there are property nodes where you could change the IF center freq from the default 25 MHz. It makes the code quite a bit more complex than just using the RFSG drivers only (you may need niFGEN.cs wrapper if it exists but IDK).

 

As for tuning times, I'm not sure that you can change the IF center frequency of the AWG while the device is in the committed state so you may still incur the overhead of stopping arb generation, changing IF center freq, and restarting generation. That will most likely not be 1 microsec but someone please correct me if I'm wrong.

 

Regards,

 

Tim



Tim Sileo
RF Applications Engineer
National Instruments



You don’t stop running because you get old. You get old because you stop running. -Jack Kirk, From "Born to Run" by Christopher McDougall.
0 Kudos
Message 4 of 8
(3,906 Views)

Yeah I figure this too. It leads on to the question how do I set the 5610 into "upconvert only" mode using c#? The niRFSG.cs wrapper seems to want to do everything. However MAX seems to let me run it in stand alone mode (while I run my code (which uses ni.FGEN.cs) on the 5441) so I know it can be done.

 

I can update the frequency of the AWG by using its FreqList output mode where it cycles through the frequency in a given list. Therefore I don't have to abort generation in order to update the frequency.

 

I am sure I can do this all by using arbitrary waveforms but I just want a simple solution at the moment.

 

Cheers for your help.

0 Kudos
Message 5 of 8
(3,896 Views)

Not too sure about the C# options but in the normal RFSG drivers there is a niRFSG Initialize with Options VI where you can specify that the AWG is "external". I've copied the RFSG help section that discusses this below. There is the "niRFSG_InitWithOptions" C function so maybe that same one exists in the C# Wrapper???

 

Keep in mind that there are specific tuning frequencies of the Upconverter which are course. Meaning that if you ask it to tune to 143.5 MHz, as an example, it may tune to 140 MHz (just picked that off the top of my head to illustratem, it may be in multiples of 1 MHz around the freq you request but I can't remember) and expect the AWG to handle the offset with its IF frequency. I've done something similar to what you are trying to do but with the RFSA drivers and niScope and had to handle this IF center frequency offset calculation. Normally, the RFSG drivers would take care of this behind the scenes for you but since you are separating RFSG and FGEN you'll have to take care of it. Just a snag I've run into before that I hope to help you avoid.

 

-Tim

 

Driver Setup Options

The driver setup string is used in the niRFSG Initialize with Options VI and the niRFSG_InitWithOptions function to set the initial values for properties and attributes, respectively, that are specific to NI-RFSG.
The driver setup string is in the following format:

Tag:Value

where Tag represents the property or attribute and Value represents the value to which the property or attribute is set.

Use the driver setup string to specify your hardware device, external (non-National Instruments) device, or to simulate hardware that is not present, as shown in the following table.

UseExample DriverSetup String
Specify an AWG DriverSetup=AWG:Dev1
Specify an LO Source DriverSetup=LO:Dev1
Specify an external AWG DriverSetup=AWG:<external>
Specify an external LO DriverSetup=LO:<external>
Simulate an AWG DriverSetup=AWG:5442
Simulate a Board Type DriverSetup=boardType:PXI
Simulate an LO Board Type DriverSetup=loBoardType:PXIe
  Note  You must enable (Simulate=1) simulation in the niRFSG Initialize with Options VI or the niRFSG_InitWithOptions function to simulate any device.

When specifying or simulating multiple devices, separate them with a semicolon, as shown in the following string:
DriverSetup=AWG:pxi1slot4;LO:pxi1slot7



Tim Sileo
RF Applications Engineer
National Instruments



You don’t stop running because you get old. You get old because you stop running. -Jack Kirk, From "Born to Run" by Christopher McDougall.
0 Kudos
Message 6 of 8
(3,893 Views)

Thanks a lot. Very useful Smiley Happy

0 Kudos
Message 7 of 8
(3,891 Views)

No problem, sorry for all the smiley faces in the help doc portion...The forum system automatically converts all colon D's and colon P's to the respective emoticons. I haven't found where to turn that off. lol



Tim Sileo
RF Applications Engineer
National Instruments



You don’t stop running because you get old. You get old because you stop running. -Jack Kirk, From "Born to Run" by Christopher McDougall.
0 Kudos
Message 8 of 8
(3,888 Views)