Waveform generation VIs

When a waveform generation VI is used in code, will it not keep
generating as long as the code is active,  till the Reset node (
if available ) is pulled high ?
But it appears that to do so, the waveform VI has to be inside of
a  while loop. I tried to run a while loop and a function
generator VI outside of it as a trial . But found that, after the first
call, the waveform VI was idle and it was only the while loop that was
executing. Can someone clarify on this.
I would have expected that the function generator VI  to start and
continue till the whole code containing it is stopped. Is that too much
to expect
Raghunathan
Raghunathan
LV2012 to Automate Hydraulic Test rigs.

Along the same line, I noticed the same comment in the help file:
"This VI remembers the time stamp of the previous waveform generated and continues to increment the time stamp from that point"
Seems to me that the VI should be keeping track of the Number of Samples and the Sample's Per Second based on the last time the VI was run (whether in a loop or not) So why is it that this VI seems to rely on the sampling rate of the loop itself? If I increase the Millisecond Wait Time my generated signal slows and when I decrease my millisecond wait time my generated signal updates much faster.
 Run the attached VI (LV 8.2.1)
Message Edited by craige on 10-27-2008 11:22 AM
Attachments:
Test_Chart.vi ‏20 KB

Similar Messages

  • Trapezoida​l waveform generation

    I am trying to generate trapezoidal waveforms that output in digital serial format (@ 10Mhz). I know that LabVIEW has a formula wave generator VI but a trapezoid can not be specied in the required format. Is there a way to modify the VI to accept multiple cases (ie. rise, flat, fall)? In case I have to write one from scratch, does anyone know how the LabVIEW waveform generation VI's control the frequency in real time? I had a look at the diagrams and couldn't make heads or tails of it. Any advice would be greatly appreciated.
    Thanks.

    You could probably string a few of the formula wave generators together to achieve the trapezoidal wave (rise,flat,fall..) but it would probably be just as easy to create the waveform yourself by creating an array of points in a loop. One of the nice features of the waveform generation VIs is their memory. They utilize uninitialized shift registers to keep track of things. You would probably want to implement something like this in your program.

  • Error with "on-the-fly" controls in waveform generation

    I am trying to output a waveform in which I can change amplitude while the VI is running. When trying to do so, however, I am allowed to change the amplitude only once, and then I get error #-10880. What does this mean? I am using AO Write, and placing the waveform calculation and generation inside a sequence structure, with a wait statement, in the hopes of giving "changes enough time to take place".
    Thank you.

    jmarotta wrote in message news:<[email protected]>...
    > I am trying to output a waveform in which I can change amplitude while
    > the VI is running. When trying to do so, however, I am allowed to
    > change the amplitude only once, and then I get error #-10880. What
    > does this mean? I am using AO Write, and placing the waveform
    > calculation and generation inside a sequence structure, with a wait
    > statement, in the hopes of giving "changes enough time to take place".
    > Thank you.
    Hi, Jmarotta,
    I am not very sure how to solve your problem, but the error #-10880 is
    "updateRateChangeError A change to the update rate is not possible at
    this time because when waveform generation is in progress, you cannot
    change th
    e interval timebase, or when you make several changes in a
    row, you must give each change enough time to take effect before
    requesting further changes."
    You can find this in the help/error code/Data Acquisition Vis... Hope
    this would help. ^_^
    Regards,
    celery

  • Comedi pulse generation VIs?

    Does anyone have a set of VIs supporting (single) pulse generation on E series or 660x series boards that use comedi drivers? I found the STC (eg E series) and TIO (eg 660x series) pulse generation VIs on this website, but they are not functional with comedi. If any R/D engineer--or other knowledgeable fellow out there--has built VIs that support pulse generation with comedi, and would like to share them, I'd be most grateful =).
    If not, I guess I'll get busy making them...
    (I'm using a NI6071E and NI6602 boards...)

    So it sounds like voo-doo magic you are doing so I will ignore the whole applications talking to eachother for a moment.
    Generating a square wave is as simple as using the "Square Waveform.vi" under the Signal Generation palette.  Give it the parameters like rate and amplitude and it generates a nice waveform that can be wired directly to the Waveform Graph.
    Unofficial Forum Rules and Guidelines - Hooovahh - LabVIEW Overlord
    If 10 out of 10 experts in any field say something is bad, you should probably take their opinion seriously.

  • Report generation vis are not running in exe

    HI 
    Im using report generation vis for create a excel report.Its not working in exe.Even i included the  Nireport.llb in
    (C:\Program Files\National Instruments\LabVIEW 8.6\vi.lib\Utility)to my project.wat to do?
    kavi
    Solved!
    Go to Solution.

    Hi kavi,
    did you get some warnings while building the application?
    See this link:
    http://digital.ni.com/public.nsf/allkb/2AE85CF95217E60786257540000D818C
    Mike

  • Generate report using Word Report Generation VIs error

    When I Generate report using Word Report Generation VIs  ,the error is generated.
    This is  my Vi
    can somebody  tell the error reason?
    The attaché is Vi (one is 2011,other is 8.6)
    Attachments:
    report-8.6.vi ‏16 KB
    report2.vi ‏33 KB
    template.doc ‏40 KB

    Hi Ben64
                 Thank you! The problem is solved.
       BUT when I use the Word Easy Graph vi  ,the result is
    I want the Graph (curve),like as:
    How Can I do get the picture.
    I have other problem. I want to get default name for the new word file.
    liang

  • Difference in the appearance of HTML vs. Standard reports generated with the Report Generation VIs?

    When I generate a "Standard Report" (to a printer or PDF) with the attached code, the output looks like this:
    If I instead use the same code to generate an HTML report, the output looks like this:
    Can anyone explain why the HTML output has had the extra spaces stripped out of it?
    Is there anything I can do to prevent it from happening?
    VI is attached (LV v11.0.1f2) but this is what it looks like...
    Attachments:
    Print Test.vi ‏47 KB

    SteveBale wrote:
    If you look at your html source the spaces are there. The problem is the way html is rendered it removes the spaces. You will either need to add in <pre> </pre> tags to tell the browser to include those spaces, or insert the string &nbsp; which the browser interprets as a single space.
    Regards,
    Steve
    OK, thanks. I guess I'll end up living with it the way that it is because
    using either method seems to also have the side effect of causing the output to become double-spaced and
    the only reasonable place to implement the change (so that it did not also impact the "standard report" output) would be within the report generation VIs and I'd rather not be modifying them.

  • How does buffer size affect double buffered waveform generation?

    I had originally posted the following question:
    "Why does the double buffered waveform generation pause after the first buffer before continuing?"
    "I am using an AT-AO-10 board to generate a multiple channel waveform in double buffered mode. The board's DAC's are updated by an external clock signal. While the waveform generation performs well, I notice that after the first buffer has been generated there is a time delay before the next buffer is output. However the second buffer and thereafter perform well without any time delays. If anyone can provide me an explanation on why this happens I would appreciate it. I am using NI-DAQ API functions to generate the waveforms and my settings for the WFM_DB_Config function are 1 for oldDataStop to disallow regeneration of data and 0 for partialTransferStop to not stop when a half buffer is partially transferred."
    -posted by Vadi on 6/7/2001
    I received a response from Geneva as follows:
    Geneva L. on 6/11/2001 says:
    "Vadi,
    The first thing is to make sure that you have the latest version of NI-DAQ installed, NI-DAQ 6.9.1. If you need to install it, make sure you completely uninstall any prior versions. Then, you will have examples installed in either the NI-DAQ or the CVI directory. In the AO directory, you should find the WFMdoubleBuf example.
    Start with that to make sure the output appears as you expect. Then, you can modify it to apply your external update clock, following the idea presented in the WFMsingleBufExtUpdate example. You might even want to double-check that your external clock acts as you expect using an oscilloscope.
    Finally, modify the example such that you can update on multiple channels, remembering that you interleave each channels buffer into one buffer for WFM_DB_Transfer. Whatever data is in the buffer will be updated on the output channels.
    Regards,
    Geneva L.
    Applications Engineer
    National Instruments"
    I have checked my version of NI-DAQ and it is 6.9.1. I am generating the double buffered waveform according to the format shown in WFMdoubleBuf and with some modifications from WFMsingleBufExtUpdate to allow me to use my external update clock. However I continue to notice the same phenomena again and again. For a buffer size of 7500 or 10000 points there is a time lag meaning after the first buffer has been output there is a noticeable time delay before the second buffer and buffers there after is output. This time lag doesn't exist for the buffers that are output after the first buffer but it does exist for the first buffer. When I decrease the buffer size down to 5000 points the time lag disappears (Note: this phenomena also occurs when I use an internal time base as opposed to my external clock). Is there a reason for this? I am using a AT-AO-10 board and I know the on board FIFO is 1024 points deep. However from the documentation provided it doesn't indicate that double buffered mode uses the on board FIFO at all. In fact, the functions require that the FIFO mode be turned off (in WFM_Load) for double buffered waveform generation. Is there a reason why when the buffer size is increased that there is a time lag after the first buffer? Is this because of the functions themselves or is this because of the AT-AO-10 board?

    Vadi,
    Make sure that your buffer size is set to the same number of points that you're actually writing to the buffer initially. For instance, if you run the example as-is, the NIDAQMakeBuffer puts exactly the ulCount amount of data into the buffer. Then, it continuously writes out half buffers. Thus, if you are not writing enough data to fill up the buffer the first time, there will be that lag until the section where half buffers are output.
    Regards,
    Geneva L.
    Applications Engineer
    National Instruments
    http://www.ni.com/ask

  • How to do another thing before returning of a buffered waveform generation?

    Hi There,
    The DAC0 and DAC1 of PCI-6024E are used to generate waveforms by the buffered analog output mode. We know that before the buffered generation is completed, the starting function of generating waveform, either "WFM_op" or "WFM_Group_Control",will not return, unless you call "Timeout_Config". In my application developed by Visual C++, I hope that after starting the waveform generation process, I can do another thing, for example, plotting data or data processing. Would you tell me how to do that? I greatly appreciate you for any reply and suggestions.
    Kylin

    Kylin,
    Actually, WFM_Group_Control() is not synchronous. It is asynchronous and will return immediately after the generation has been started. I would suggest that you take a look at the following examples. They are located in C:\Program Files\National Instruments\NI-DAQ\Examples\VisualC\Ao:
    WFMsingleBufAsync.C
    WFMsingleBufSync.C
    WFMsingleBufAsync.C is an asynchronous generation that uses WFM_Group_Control(). On the other hand, WFMsingleBufSync.C is a synchronous generation that uses WFM_Op(). In your situation, you would want to follow the programming structure of WFMsingleBufAsync.C.
    Good luck with your application.
    Spencer S.

  • Waveform generation upon trigger start for one cycle

    Hi there,
    I am trying to generate one cycle of a waveform(triangle wave) upon recieving a trigger signal from another input.
    I have the waveform generation working however it generates more than one cycle and also stops before a whole waveform is generated. The waveform generated can have a different duration than the trigger signal (frequency).
    How would I change the program to have it generate only one waveform upon trigger. 
    Please see the attached VI in Labview 8.5.
    Attached is also what  the program should do as JPEG image diagram.
    Thank you!
    ~Anthony
    Attachments:
    cycle.vi ‏117 KB
    waveform.png ‏6 KB

    Anthony,
    I played around with your vi for a little bit, and it seems that the easiest way to manipulate your data of the triangle wave is to wire an input to the sampling info of the vi. The input is looking for a cluster of 2 doubles, 1 being sampling rate, 1 being # of samples. In the vi I built, I just set rate to always be 1000 times the frequency, and the samples to always be 1000, giving you 1 period. 
    Hopefully this helps!
    Chris Van Horn
    Applications Engineer
    Attachments:
    cycle.vi ‏117 KB

  • Get DIO to trigger waveform generation

    Hi,
    I am trying to get a digital IO line to trigger waveform generation. I have a function call that invokes WFM_Op(), which is set up to trigger on one of the PFI inputs. This part works fine for an externally generated interrupt.
    What I want to do is use one of my digital output lines, looped back to the PFI input, as the signal source. However when the call is made to the DIG_Out_Line() it hangs, it seems like it's waiting on the call to WFM_Op() to finish first. (Obviously my program is multithreaded)
    It seems pretty weird that you wouldn't be able to do this, the two things should be separate.
    Anyway if you have any suggestions or another method to attempt that's more to your liking please let me know.
    Stefan
    Tarrant
    Research Engineer
    C-CORE
    Captain Robert A. Bartlett Building
    Morrisey Drive
    St. John's, NF
    Canada A1B 3X5
    Tel: (709) 737-8372
    Fax: (709) 737-4706
    E-mail: [email protected]
    Web site: http://www.c-core.ca
    This communication (including all attachments) is intended solely for the use of the person or persons to whom it is addressed and should be treated as a confidential C-CORE communication. If you are not the intended recipient, any use, distribution, printing, or copying of this email is strictly prohibited. If you received this email in error, please immediately delete it from your system and notify the originator. Your cooperation is appreciated.

    Stefan,
    I have one suggestions for you. I hope it works out for you:
    Create two programs: one for waveform generation and the other one for outputting the digital signal out of one of the the DIO lines, or a second program which generates a pulse train, out of a counter.
    I don't understand exactly how you are allocating the function calls.Are you placing the function calls one after the other; that is, first a WF generation one,and then a DIO function. Or, two separate sets of functions on different threads? If it is the first one, you will not be able to accomplish what you want.
    If this doesn't help, let me know. If you can attach a simple code that depicts the problem, it would be great.
    Hope this information is helpful.
    L Aguila
    Appl
    ications Engineer
    National Instruments

  • Continuous waveform generation with PXI7952 & NI6587

    Hello Everybody,
    I am looking for code exemple in LabView 2009 for continous waveform generation with PXI-7952 & NI 6587.
    Thanks for you help.

    Bonjour,
    Pour la carte FPGA PXI-7952R il y'a une application de référence ici : http://zone.ni.com/devzone/cda/epd/p/id/6066
    Pour l'autre carte étant une carte numérique vous trouverez un tas d'exemples dans LabVIEW via le menu Aide » Recherche d'exemples.
    Cordialement,
    Da Helmut

  • Ac voltage waveform generation

    Hello Everyone,
    I want build one Virtual panel which should generate a Sinusoidal wavefrom.
    There should be provisons for changing voltage and frequency 
    Please help me out
    Regards
    Vishnuteja

    With the waveform generation functions, this seems pretty trivial. Please attach what you have already done and explain where you are stuck.

  • Synchronizing data acquisition&waveform generation

    I'm attempting to synchronize analog waveform generation and analog data acquisition using an AT-MIO-16E-1 board. I've followed the instructions in the manual on how to do this but with no luck (maybe the VI I wrote is incorrect).
    Any suggestions?

    Have you taken a look at the Simultaneous AI/AO examples that ship with NI-DAQ? They can be found in Examples>>I/O Interfaces>>Data Acquisition>>Simultaneous AI/AO. They will give you some examples of how to program your board.
    Regards,
    Erin

  • Is there any way to change waveform generation using formula with user defined formulas

    Hi,
    I need to build a VI that has in input a formula (Exen(w*t)) and output a waveform.
    The waveform generation using formula.Vi that comes with labview has Defined formulas and theu are not dinamic I don't want that.
    I try to change with a text control but VI dont generate the graph.
    Can someone help me with this please?
    Best regards
    Ricardo
    Attachments:
    test.vi ‏18 KB

    Hello.
    If you want to change your formula with a textbow, you can use the Eval Formula Node.vi if you have a full version of LabVIEW.
    see http://digital.ni.com/public.nsf/allkb/C5DBAA3A788​271EE86256B02007DD6B3?OpenDocument
    Best regards

Maybe you are looking for

  • Mail not saving drafts?

    I am using Mail in OS X 10.4.7. I know it is supposed to save messages as drafts as they are composed. My Mail refuses to do that. Either when i click on Save as Draft or when it autosaves in the background, I get a message saying mail cannot save th

  • Messages isn't working

    None of my messages will go through on my MacBook Air. This is showing up Any idea how to fix it? Thanks!

  • Aggreated Invoice Statistical posting

    Hi Experts, This question is related to Aggregated invoice posting in a deregulated scenario. People familiar with this scenario will know that, Individual invoices are first posted to end customer contract account and then aggregated posting is made

  • I cant find adobe encore in the creative cloud

    I cant find adobe Encor in the creative cloud and this way doesn't work any more from the moment they have lounched adobe cc 2014: Encore CS6 niet geïnstalleerd met Creative Cloud I hope you can tell me how i can instal adobe encore.

  • Cannot connect to YouTube on ipad3

    Cannot connect to YouTube using YouTube app on ipad3 / iPhone 4 works fine