Showing results for 
Search instead for 
Did you mean: 

Generating continuous (loop) arbitrary waveform using labview and MSO detection on labview

Go to solution



Currently I am trying to generate arbitrary waveform as shown below:

FSCV arbitrary waveformFSCV arbitrary waveform

I can generate it successfully using the .csv file and then I uploaded using NI VirtualBench software. The result is shown below:

NI VirtualBench softwareNI VirtualBench software


























Then I tried to generate it using labview, but until now I have no luck. Using the waveform graph, I successfully show the desired waveform, but when I try to display it on MSO, the shape makes no sense at all. I am not sure if I use all the components correctly, such as using build waveform function instead of Simulate Arbitrary Signal. I tried with Simulate Arbitrary Signal, but I have no idea how to convert this .csv into .lvm. That is why I find the "Build Waveform" function is easier for me.

Download All
0 Kudos
Message 1 of 7



Somehow I get closer to my intended waveform (using "Simulate Arbitrary Signal), but I use other MSO instead of VB MSO to visualize it. I do not really understand how the VB works to generate the function. I mean should I run it once and it will generate all the time or should I "run continuosly" to keep generating the function from FGEN? I notice when I "run continuously", the function get reset (turned into DC) for sometime when it passes the FGEN RUN (VI). Attached is my revised VI.

0 Kudos
Message 2 of 7



Once your VI configures VB-FGEN to output the arbitrary signal, it will continue outputting that signal until the configuration is changed.  This means if you run the VB-FGEN portion of your VI once it will continue to output the signal.  You can see this indicated on the soft front panel. You can change gain, offset, and sample rate while it is running, but updating the waveform, even if it's with the same data, will cause a brief interruption in the output.

0 Kudos
Message 3 of 7

Hi SiMylo,


Thank you for you answer, it really helps me to understand better. However, there is still something that I do not understand.


Below is the correct signal when I connect my VB to external MSO:



But when I am using MSO display on labview, most of the time the displayed signal is not the correct one as below:



However, that is not always the case, when I run it continuously, it will display the correct signal (but not in the first run) once in a while as below:



Please notice between the last 2 figures, the legend (red and blue indicators) changed from "Plot 1" and "mso/2" into "mso/1" only. Do I make some mistake in configuring the VB-MSO RUN or READ?

0 Kudos
Message 4 of 7



Glad we've got a good output going now.  I can't say for sure, but it looks like VB is having trouble doing auto-setup with this particular signal.  I would try choosing the analog range and timing manually using the `Analog` and `Timing` VIs here.  It may also be helpful to set up edge triggering.  If it were me, I'd use `reset` on the initialize VI and set all of these properties only for the channel I'm looking at.


I hope that helps.

0 Kudos
Message 5 of 7

Hi SiMylo,


Thank you for your reply. Can you specify more details about this "Analog" and "Timing" VI since I am very new in using LabView, so it is quite difficult for me to find the exact VI. If you have an example, it would be awesome. Otherwise I will just do trial and error 🙂

0 Kudos
Message 6 of 7
Accepted by topic author dopamod



Of course, I had meant to include a picture of where to find those:


You can get help for those specific VIs with the context help (ctrl+h toggles that help and you hover over the VI once you've placed it on your diagram).

Message 7 of 7