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 

Similar Messages

  • 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

  • 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

  • 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

  • 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.

  • Odd error originating from NI-5411 (Error code: BFFA0002) when trying to load arbitrary waveform

    Hello everyone. 
    We have some equipment (PCI NI-5411) that is misbehaving in an odd and new way. When trying to load an arbitrary waveform onto the AWG (using a library call to the "niFgen Write Binary 16 Waveform"), it produces an error. The error code is "BFFA0002", but I haven't been able to find any information that can show what this error code provides. Previously, we had some problem when the system wouldn't find the file and produces an error even though the file is there. After changing our code so the file access is attempted several times, the problem was resolved. However, that doesn't work in this case and we do not know here the problem is.
    This is a pretty much shooting wild and hoping that something falls down, but if anyone could provide me with information about the error code or another probable error source I would be highly grateful.
    Thanks in advance!
    With best regards,
    Niclas

    Hi Niclas,
    That error code suggests that a file cannot be opened. This error is defined in IVI as  IVI_ERROR_CANNOT_OPEN_FILE.I don't think we return this error code from the NI-FGEN driver.
    You mentioned that you have an issue with finding a file. Is that file specific to your application? How is it being open or used? What API do you use to open that file?
    For NI-FGEN specific error code (and generic IVI error codes), you can query the error message by calling niFgen_error_message function or niFgen Error Message.vi.
    Thanks,
    - Liusdi

  • 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

  • Fgen Arbitrary Waveform example not working

    Hello,
    I'm using an example for NI FGEN - "Fgen Arbitrary Waveform". I want to enable digital filter, but there is an error occures. What should i do to fix this error?
    Attachments:
    1.png ‏57 KB
    2.png ‏70 KB

    bahec666,
    What FGEN model are you using? Please refer to the Signal Sources help file to see if your model of FGEN supports digital filtering.

  • 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.

  • LabVIEW FPGA - Arbitrary Waveform

    Hi all,
    I can get the example about the Arbitrary Waveform ported to my CompactRIO devices, It shows me some errors about the reference. Is this because I am using the LabVIEW FPGA 8.0 and I think that application is created with an earlier version?
    Can someone please help me out?
    thank you very much

    Can you be more specific about which example you are porting to CompactRIO? Where did you find this example? Is this from LabVIEW 7.x?
    Moving from LabVIEW 7.x to 8.0, there were some very significant changes in how you configure the project to interact with the FPGA. In LabVIEW 7.x the project was only used to configure the FPGA and develop FPGA VIs. In LabVIEW 8.x the project is a completely different structure and is used for all LabVIEW targets (FPGA, RT and Windows, as well as others).
    LabVIEW does include a tool to move FPGA applications from LabVIEW 7.x to 8.0. It is found under Tools >> FPGA Module >> Import FPGA Files from LabVIEW FPGA Module 1.x.
    After running this tool you will likely still have to make a few manual changes in the newly created project to get everything to run correctly.
    Christian Loew, CLA
    Principal Systems Engineer, National Instruments
    Please tip your answer providers with kudos.
    Any attached Code is provided As Is. It has not been tested or validated as a product, for use in a deployed application or system,
    or for use in hazardous environments. You assume all risks for use of the Code and use of the Code is subject
    to the Sample Code License Terms which can be found at: http://ni.com/samplecodelicense

  • The Agilent 33250A arbitrary waveform VI is ill-documented.

    I am trying to create a waveform (basically a 1 D array of voltages) using the Agilent 33250A VI. The shape is simple - a 3.5V peak ramp starting from zero that extends over 50 microseconds, followed by a DC level of zero volts for 100 microseconds.
    The named waveform is indeed saved on the instrument, but when I examined the points, it was always a 1 Vpp amplitude ramp. The timing appeared to be ok.
    On a hunch, I used the gain and offset inputs of the configure arbitrary waveform VI to set things correctly(I was already using the frequency input for setting the temporal information). Now, the waveform is fine.
    The create arbitrary waveform VI should document that it ignores the actual voltage levels. 

    In other words, you ended up doing what the example does.
    As the documentation does state, the Create Arbitrary Waveform function scales and normalizes the data that you pass to it. So, for the 33250A, it scales it from -2047 to +2047. The waveform is centered around 0. The documentation also states that the maximum value of the waveform will be equal to the gain.

  • 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

  • Any PXI 5411 Arbitrary waveform generators available to buy

    Hi All
    This is my first post on the NI forums.
    I am after 2 good, new or used, PXI 5411 arbitrary waveform generators.
    The reason i need the PXI5411 is because I have a system that relies on the parallel DIO outputs of this device.
    Thanks
    Tim Streeter

    Tim,
    To talk to a National Instruments employee, go to www.ni.com/contact.  On the left, you can either call the listed number (888-280-7645), or have a representitive call you.
    Josh W. | National Instruments | Applications Engineer
    Josh W.
    Certified TestStand Architect
    Formerly blue

  • Log an arbitrary waveform to TDMS

    I'm trying to log an arbitrary waveform (one that is not time-based, e.g. x0 = -180, dx = 0.25) to a TDMS file.  For some reason I can't figure out how to do this.  It appears that I am only able to log time-based waveforms to a TDMS file. I tried to cast my x0 to a timestamp but it coerces negative values to a zero timestamp.  I have all my data being displayed on waveform graphs perfectly fine with a x0, dx, Y cluster.
    So, is there a way to log my waveform to TDMS without requiring any post-processing?

    If you cast a negative to timestamp, LabVIEW doesn't coerce negative values to a zero timestamp. By default, 0 means timestamp '0:00:00 AM 1/1/1904', so -180 will be casted to timestamp as '11:57:00 PM 12/31/1903'. The number is treated as seconds.
    TDMS only accepts time-based waveforms. If you want to give different meanings to the t0 and dt of the waveform, you should need some post-processing. In TDMS files, t0 will be mapped to 'wf_start_time' property, dt will be mapped to 'wf_increment' property. At the same time, TDMS file will add another property 'wf_start_offset'. So, if you treat t0 as 0, then you can set  'wf_start_offset' property as -180 to meat your requirement.

  • 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

Maybe you are looking for