Fluke 284 Arbitrary Waveform Generator Phase Lock Channel Synchronization

I am using Fluke 284 Arbitrary Waveform generator (not NI instrument). I am trying to make use of LabVIEW to assign channel 1 as the master and the other three as slaves to phase lock the slaves and change precisely the phase offset with respect to the master.
The error explanation that I received was: 
Possible reason(s):
Error -1074000000 occurred at Fluke 28x Series.lvlib:Error Query.vi
Instrument reports:Inter channel lock not possible. Refer to manual for more details. 
Complete call chain:
    Fluke 28x Series.lvlib:Error Query.vi
    Fluke 28x Series.lvlib:Configure
I would like to know of there is any other block that I need to add to control the output of the master and the input of the slave. I have referred to chapter 13 of the users manual which I have also attached. 
Attachments:
Fluke 284 Manual.pdf ‏1890 KB
Fluke_Block_Diagram.png ‏130 KB

Don't know what the problem is, but the error number is strange. It's not a standard error for Windows, LV or the instrument in question...
Mike...
Certified Professional Instructor
Certified LabVIEW Architect
LabVIEW Champion
"... after all, He's not a tame lion..."
Be thinking ahead and mark your dance card for NI Week 2015 now: TS 6139 - Object Oriented First Steps

Similar Messages

  • 33522A Function / Arbitrary Waveform Generator, 30 MHz

    Hi!
        I have got 33522A Function / Arbitrary Waveform Generator, 30 MHz. I want to produce two squarewave signal of 30 KHz, one on each channel. Trick is the wave form should be mirror image. I problem is, wondering if those signal is sysncronise if i drive it via LabView.  
    Solved!
    Go to Solution.

    I have played around with one of these in the past, and these signals should be synchronized without any special commands.
    This can be done on the front panel of the device or via LabVIEW. The simplest way to set these is make the channel parameters identical except for amplitude, make the amplitude of one output the negative of the other output.
    One thing to be aware of ...
    although synchronized, sometimes there is a slight phase difference between the two signals, you may have to adjust the phase of one of the signals to match the other. This is best done with an oscilloscope.
    Cheers,
    mcduff

  • Error occurred while executing niRFSG Arbitrary Waveform Generator

    Hi,
    I am trying to execute the niRFSG Arbitrary Waveform Generator.vi.
    The inputs at the front panel are as follows -
    Resource name : PXI1 Slot2
    Center frequency : 1GHz
    Power level : -20dBm
    Selected waveform : Double Sideband
    IQ rate : 1M
    NI PXI 5652 RF Signal Generator is connected to slot 2.
    When I try to run the program, I can see an error generated after the first step, which is "niRFSG Initialize.vi". The error code is "FFFCFiE4" and the error message says "Device identifier is invalid".
    If I select "S2SignalGen" in the Resource name instead of "PXI1 Slot2", I face the same error.
    I am using Lab View 2011 and NIPXIe-1075
    Could someone please tell me what is wrong?
    Thanks so much,
    Sharmi

    Hi,
    What are the RFSA and RFSG devices you have? Please give me all the product numbers (i.e 5652, 5611, 5450 etc.).
    I want you to physically connect the RF OUT on the RFSG to the RFIN on the RFSA with an RF cable. Then you will generate a single tone using the RFSG Single Tone Generation.vi example. At the same time, you will run the RFSA SFP and it should capture what you are generating. You cannot bring the SFP into LV, it is its own application.
    If you go to Start>> National Instruments>> NI RFSA, are there examples in there? If not, can you got to MAX, expand the Software tab and take a look at what version of RFSA you have. Did you make sure to install RFSA after you installed LabVIEW?
    In the NI Example Finder (when in LabVIEW, Help>> Find Examples..), under Hardware Input and Output >> Modular Instruments, do you see RFSA or RFSG in there?
    Thank you,
    Vimal 
    Applications Engineer
    National Instruments

  • An arbitrary waveform generator using the DSP Module

    Hi Guys,
    Just got my hands on LabView and the DSP Module, and having a bit of fun atm. Great products. I'm currently using the TI DSK6416, and was wondering if there was a labview model/example of arbitrary waveform generation using this...? Perhaps using a DDS method or something similar?
    Thanks in advance...
    GibbGodD 

    GibbGodD,
    Hello!
    There are quite a few Waveform Generation VIs within Labview, including the Simulate Arbitrary Signal Express VI and the Arbitrary Wave VI. Unfourtuantly, these are not available within the DSP Module. There is a special group of Embedded Signal Generation VIs for the DSP Module, of which one is the Simulate Signal. Take a look at these VIs as perhaps you could use them to build the waveform you are looking for.
    To answer your question, I wasn't able to locate a specific example that matched what you were looking for, but if you to Help >> Find Examples >> Toolkits and Modules >> DSP from within LabVIEW you should be able to find some great DSP examples. Particular, the example project "Variety of Signal Types.lvproj" shows the different types of signals the DSP target can generate.
    The majority of Arbitrary Waveform Generation information that I was able to find is all related to our Function Generators but not for the devices supported for the DSP Module.
    Best of Luck!
    Ben Sisney
    FlexRIO V&V Engineer
    National Instruments

  • How to control individual channel of signal generated from digital waveform generator?

    Digital waveform generator has 8 channels. I need to generate two different signals to HSDIO. How to modify and control two different channels? Also, how to translate pin outs from PXI-6541 to channels? I need to control signal into pin 1,3,29,and 31 individually.
    Thank you!!
    Solved!
    Go to Solution.

    You must combine your individual data into an array.  The digital waveform is simply a digital representation of the binary array.  It still boils down to bit 0 of each array element going to channel 0 (or the first channel you specify in Create Dynamic Channels).  The next bit goes to the next channel.  My last post is quite clear.  To display the array in binary, right click on an array element, then select Display Format, then select Binary.  You can also right click on the element, select Visible, then select Show Radix to display the small b before the number.  One more thing, in the Display Format window, uncheck the box next to Use minimum field width.  Then set the numeric just under the box to 8.  Then select Pad with zeros on left in the box below.
    You should not use waveforms until you learn more about how the HSDIO operates on input data.  It isn't hard to combine waveforms, but it also isn't as clear as using an array of U8 or U16 or U32.
    Trying to explain further.  The first number to be writen to the HSDIO will have this effect:  Bit 0 (LSB) of the number gets written to the first HSDIO channel you specify.  Bit 7 goes to the 8th channel you specify.  If you don't specify 8 channels, the bits get ignored.  So wiring in one number will produce only one bit on each channel.  In other words, the number already combines the bits of all the channels you specify.  You don't combine anything yourself.  Look again at my picture on my last post.  By wiring in an array, you cause a bit pattern to be generated.
    I hope this is more clear.
    - tbob
    Inventor of the WORM Global

  • Creating random timeseries in Labview to Arbitrary wave generator

    I do not know anything about Labview but somehow i need to get this task done.
    How do i make a random data time series using the data arrays in a text file to be generated into the arbitrary wave generator? Can somebody please provide an example file for this?
    Thank you in advance. 

    Hello Nazerrul,
    There are several ways to do something like this.
    First, many Arbs also have function generating capabilities, including random noise generation. What exact arb are you using?
    If your arb doesn't have this capability you could use the Gaussian White Noise Waveform VI to create a noise waveform that you could then load into your arbitrary waveform generator. How to do this part depends on your arb. What exact arb are you using?
    In short, more information is needed, including the arb you are using and what you have done so far in getting this to work.
    Regards,
    Dan King

  • 5451 2 channels arbitrary waveform

    We wanted to generate two different arbitrary waveforms simultaneously using PXIe 5451.
    To make the LabVIEW code, we created a FGEN Express vi and opened the Front Panel of that and observed that they have used the same Waveform Handle for both channels (image attached).
    We tried to have separate waveform handles for individual channels and got some error.
    Why should we do like this?
    Regards,
    Srikanth
    Attachments:
    awg.JPG ‏95 KB

    Hi, 
    Could you please elaborate more on the error that you encountered while you tried to use 2 different handles. Also if you could upload the VI, it would help us solve the issue fast.
    Regards,
    Sagar G Yadav | Application Engineer | National Instruments 

  • PXI_Add AWGN to a carrier generated using NI RFSG in Arbitrary Waveform mode

    Hello ! 
    Does anyone know how to add AWGN to a carrier generated using NI RFSG ?
    I know how to generate a CW signal using NI RFSG in Arbitrary Waveform mode (please see the attached file),  but I have not found out yet how to add AWGN to it.
    Thank you ! 
    Aina

    Hi Aina,
    I may still be not completely understanding exactly what you're asking for. So in my example that I gave you, we were adding the AWGN to both the I and Q arrays seperately. What you're looking for is to actually add the noise to the signal after it has been upconverted. Does that sound right? With our hardware, this is not possible because the baseband I/Q data is mixed with the carrier in hardware as the last step before it is generated. To add AWGN after the signal has been placed on the carrier you would need a noise generator. The best you can do is to add the AWGN to the baseband I/Q and then upconvert it based on the carrier frequency you specify in RFSG. Let me know if that was helpful to you.

  • Arbitrary waveform generation from large text file

    Hello,
    I'm trying to use a PXI 6733 card hooked up to a BNC 2110 in a PXI 1031-DC chassis to output arbitrary waveforms at a sample rate of 100kS/s.  The types of waveforms I want to generate are generally going to be sine waves of frequencies less than 10 kHz, but they need to be very high quality signals, hence the high sample rate.  Eventually, we would like to go up to as high as 200 kS/s, but for right now we just want to get it to work at the lower rate. 
    Someone in the department has already created for me large text files > 1GB  with (9) columns of numbers representing the output voltages for the channels(there will be 6 channels outputting sine waves, 3 other channels with a periodic DC voltage.   The reason for the large file is that we want a continuous signal for around 30 minutes to allow for equipment testing and configuration while the signals are being generated. 
    I'm supposed to use this file to generate the output voltages on the 6733 card, but I keep getting numerous errors and I've been unable to get something that works. The code, as written, currently generates an error code 200290 immediately after the buffered data is output from the card.  Nothing ever seems to get enqued or dequed, and although I've read the Labview help on buffers, I'm still very confused about their operation so I'm not even sure if the buffer is working properly.  I was hoping some of you could look at my code, and give me some suggestions(or sample code too!) for the best way to achieve this goal.
    Thanks a lot,
    Chris(new Labview user)

    Chris:
    For context, I've pasted in the "explain error" output from LabVIEW to refer to while we work on this. More after the code...
    Error -200290 occurred at an unidentified location
    Possible reason(s):
    The generation has stopped to prevent the regeneration of old samples. Your application was unable to write samples to the background buffer fast enough to prevent old samples from being regenerated.
    To avoid this error, you can do any of the following:
    1. Increase the size of the background buffer by configuring the buffer.
    2. Increase the number of samples you write each time you invoke a write operation.
    3. Write samples more often.
    4. Reduce the sample rate.
    5. Change the data transfer mechanism from interrupts to DMA if your device supports DMA.
    6. Reduce the number of applications your computer is executing concurrently.
    In addition, if you do not need to write every sample that is generated, you can configure the regeneration mode to allow regeneration, and then use the Position and Offset attributes to write the desired samples.
    By default, the analog output on the device does what is called regeneration. Basically, if we're outputting a repeating waveform, we can simply fill the buffer once and the DAQ device will reuse the samples, reducing load on the system. What appears to be happening is that the VI can't read samples out from the file fast enough to keep up with the DAQ card. The DAQ card is set to NOT allow regeneration, so once it empties the buffer, it stops the task since there aren't any new samples available yet.
    If we go through the options, we have a few things we can try:
    1. Increase background buffer size.
    I don't think this is the best option. Our issue is with filling the buffer, and this requires more advanced configuration.
    2. Increase the number of samples written.
    This may be a better option. If we increase how many samples we commit to the buffer, we can increase the minimum time between writes in the consumer loop.
    3. Write samples more often.
    This probably isn't as feasible. If anything, you should probably have a short "Wait" function in the consumer loop where the DAQmx write is occurring, just to regulate loop timing and give the CPU some breathing space.
    4. Reduce the sample rate.
    Definitely not a feasible option for your application, so we'll just skip that one.
    5. Use DMA instead of interrupts.
    I'm 99.99999999% sure you're already using DMA, so we'll skip this one also.
    6. Reduce the number of concurrent apps on the PC.
    This is to make sure that the CPU time required to maintain good loop rates isn't being taken by, say, an antivirus scanner or something. Generally, if you don't have anything major running other than LabVIEW, you should be fine.
    I think our best bet is to increase the "Samples to Write" quantity (to increase the minimum loop period), and possibly to delay the DAQmx Start Task and consumer loop until the producer loop has had a chance to build the queue up a little. That should reduce the chance that the DAQmx task will empty the system buffer and ensure that we can prime the queue with a large quantity of samples. The consumer loop will wait for elements to become available in the queue, so I have a feeling that the file read may be what is slowing the program down. Once the queue empties, we'll see the DAQmx error surface again. The only real solution is to load the file to memory farther ahead of time.
    Hope that helps!
    Caleb Harris
    National Instruments | Mechanical Engineer | http://www.ni.com/support

  • Phase Locking the Up and Down Converter Modules

    I am interested in phase locking the 5660 and 5670 modules, but from what I understand...this might not exactly be possible.
    Using the 10MHz references...it seems that I can frequency lock the two together (i.e. - I can eliminate any phase error due to the two LO's drifting away from each other).  However...am I correct in assuming that there is no way to actually access the individual oscillators such that I can remove the phase difference between them?
    For example...if I want to measure the phase added by a DUT....I would have to measure the phase without the DUT...then meausre the phase with the DUT...then look at the relative difference in the two phase measurements (as calculated from the IQ samples).  However, if I were to repeat this measurement by first measuring the phase without the DUT....then turn the generator off...then back on again....then measure the phase with the DUT...I'd expect to get a different answer, since by turning the device on and off, I have no idea or control over the phase relationship between the two devices.
    Is this correct?
    Finally...does simply connecting say, the 10MHz Out of the upconverter, to the Freq Ref IN of the downconverter automatically frequency lock the two together...or do I have to go into LabView and programatically tell the things which reference to use?
    Thanks!
    Brandon

    Hi Brandon,
    You are correct in what you are saying. The PXI-5600 and PXI-5610 Down/Upconverters each have their own synthesizers internally generating the LO signals for the mixers inside, and these LO signals cannot be exported from the modules. For these modules to be phase locked, they would need to share the same LO signals.
    By sharing the 10 MHz reference you can achieve frequency lock where the phase difference between the two modules will stabilize, but the phase difference will not be zero - it will be some unpredictable phase offset which will not be increasing or decreasing (i.e. frequency lock). Whenever the 5600 or 5610 is retuned, the phase difference will also be different.
    With regards to the 10 MHz signal, both use the same component for the reference so it doesn't matter which module you lock to the other as they are equivalent in quality. You do need to make a call in software to lock the destination module to the source module. If you are driving the PXI backplane with the source module, you'll also have to make a SW call to do this. This is very easy though, just look for VIs called Configure Reference Clock or something similar.
    Regards,
    Andy Hinde
    National Instruments

  • I want to output an arbitrary waveform using LabView onto the oscilliscope through the DAQ2005 card. Can anyone help please?

    Hey guys,
    I am new to LabView and my final year project depends on it! Please help as much as you can!
    I am trying to output an arbitrary waveform on an oscilliscope. The shape of the waveform depends on user input parameters like no. of samples, amplitude of each sample and the frequency of desired waveform. Please refer to attached Arbitrary_Wave_Display.vi. In the attached vi, the desired waveform is displayed on the front panel. My project requires that I output this waveform through the analogue output channels of the 2 DAQ2005 cards that I have. When I connect the output of th Arbitrary_Wave.vi to the input of the AO write express vi, there is no output of the oscilliscope. I believe it should be connection problems with regards to while loops and loop conditions. I have also attached my attempted vi.
    Please feel free to give some advice. It is greatly appreciated,
    Best regards,
    TheApprentice of LabView

    You didn't attach any VI and what is the DAQ 2005? I don't know of any NI board with that model number. The analog output functions on the LabVIEW DAQ palette only work with NI boards.

  • Great discrepancies of frequencies of the arbitrary waveform using niFGEN 5401

    Hi all!
    I'm using niFGEN PCI 5401 to generate an arbitrary waveform defined previously in the Soft Front Panel.
    The reference guide says, that I can produce a frequency up to 1 MHz. Does this value refer to the whole waveform or to each sample of the 16384 samples? And how can you explain, that at last the arbitrary waveform takes about 600 ms for one cycle even though the frequency was set to 1 MHz?!
    Thanks in advance
    Steffi

    Hi Jerry!
    I generally understood how DDS works, but I'm bemused why the output frequencies do not correspond to the input frequencies?
    1.) Yesterday I made a test with the GIVEN Soft Front Panel and even this does not work as it should: If I want a standard square function of 1 MHz, I get a square function of 2,5 Hz! (The same with 100 kHz = 0,25 Hz and 10 kHz = 0,025 Hz.) Where does this factor come from?
    2.) This factor also corresponds more or less to the generated arbitrary function in my program: with 1 MHz I get 1,6 Hz, with 100 kHz = 0,16 Hz ...
    3.) I thought changing the ratio between pulse length and length of the whole signal period (it's first a square and then a long time zero) I could generate a short pulse anyway accepting the mentioned f
    requency discrepancies. E.g.: One period takes 600 ms (although my input frequency is 1 MHz). If I have a ration of 1 (square) to 100 (whole signal) I should get at least a pulse of 6 ms. But the shortest pulse I ever got was about 20 ms.
    The IMPORTANT QUESTION: is there a physical limit for generating pulses (e.g. due to the inertia of the DDS method)?
    I hope I could explain my problem more precisely. Thank you anyway!
    Steffi

  • 33522B Waveform Generator

    Hi!
        I am wondering there is any mechanism in Labview to sysnthesis some waveform and play it with 33522B Waveform Generator.
    Solved!
    Go to Solution.

    I believe the drivers have VIs that allow one to load an arbitrary wavefrom to the instrument. You should be able to modulate it either with an external input to the device or internally. Is that what you are looking for, otherwise, your question is unclear to me.
    Cheers,
    mcduff

  • Waveform generator question..

    I've attached a vi to start with a vibration profile. This is something new to me so "please" bare with me..
    The idea is to get the inverse fft of the profile and input it to a voltage wfm generator (Hardware Input & Output - DAQmx - Voltage - <one of the wfm generator examples>). In the attached vi, can I just wire the psd output after the for loop to inverse fft vi? and how can I go from there to connect its signal to waveform generator input?
    Thanks in advance..
    KowdTek
    LabVIEW 2009
    One Step At A Time, Maybe Two...
    Attachments:
    Trial.vi ‏15 KB

    KowdTek,
    To do the Inverse FFT, you can simply use the attached VI.  I have also used a Build Waveform function to give you your waveform.  This particular waveform starts at 0 (default), and has a time step of 0.1 seconds.  To output this, use one of the examples, but replace the waveform generation subVI with your waveform.  You will probably also need to change the DAQmx Write VI to Analog » Single Channel » Multiple Samples » Waveform.
    Hope this gets you started! 
    Drew T.
    NIC AE Specialist
    Attachments:
    Trial.vi ‏20 KB

  • Multiple arbitrary waveforms generation

    Hi,
    I would like to generate 1000 packets with 1000 different datas using RF 5670. can we do this using the script triggering. please let me know how can we dynamically update this trasmitted data.
    Thanks and Regards

    Take a look at this little example I wrote. It's kind of off the cuff but should give you an idea of what you can do. Notice that it is meant to go in the "update" case structure that you saw in Multiple Arbitrary Waveforms.vi. I'm assuming that you have some sort of algorithm that creates your 1000 waveforms. I've named them all by just the number 1, 2...etc. You'll place them in an array of strings and then use that to create the script with the Concatenate Strings.vi. I've only created a script (called 1000waves) using 2 of the dynamically created waveforms so you would want to use some sort of looping to create a script of 1000 waveforms.
    Obviously you do have to stop generation and then start again while you're creating and updating the new script so the longer this takes the longer you won't be generating. Just be aware of that.
    Hope this helps!
    Brian Spears
    Attachments:
    script.vi ‏66 KB

Maybe you are looking for