LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

creating an arbitrary waveform

Hello, I'm using LabVIEW 8.0 with the PCI-6251 M-Series DAQ. I am trying to create a customized waveform that can change the amplitude and frequency based on user input. The waveform I am trying to make is like a triangular waveform that is clipped. So there is a ramped voltage that levels off to the desired amplitude then ramps down to zero after a certain duration. I have attached an illustration of one cycle of the waveform I am trying to make. Please let me know if you have any suggestions. Thanks


0 Kudos
Message 1 of 4
(3,079 Views)
If you want the canned low flexibility but easy to implement version, try the Sim Arb Sig EXPRESS Vi (under Express->Input).

Dump in values to define your waveform, such as:
x y
0 0
1 1
2 1
3 0
4 0
to make what you drew.

Alternatively, you can generate each segment by hand and use Append Waveforms (Waveforms->Analog Waveforms) to merge them (or use Build Array to link them if you're using dbl types instead of waveforms).



2006 Ultimate LabVIEW G-eek.

0 Kudos
Message 2 of 4
(3,057 Views)
I was able to create the waveform but am running into a problem with making it fast enough. It will only go up to 1kHz and I would like to make it go up to 50kHz. Any ideas?
0 Kudos
Message 3 of 4
(3,054 Views)
I think you are generating too many samples in your waveform.  You are creating a 1000 element waveform and telling it to output it 10,000 times per second.  So that would be 10 million samples going out per second.  The card is "only" rated for 1.25MS/sec.  1000 elements seems like too many for what is a basic geometric waveform.  Redefine it for a 100 element array.  That would get you to 1 million samples per second and should work.
 
You can probably get by with a trimmed triangle waveform on even fewer elements than that.

Message Edited by Ravens Fan on 06-12-2007 11:29 PM

0 Kudos
Message 4 of 4
(3,037 Views)