LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

signals vs waveforms

Is there anywhere some information which relates to the advantages and disadvantages of using Signals or Waveforms? Are they essentially the same? Waveforms seem not appropriate for non-uniform X/Y-Data (variable aquisition rate). Does the same hold true for Signals? What is the most multipurpose way to represent non-uniform X/Y-Data? It all seems quite confusing and there seems no place where this is really elaborated.

Thanks in advance for you help to a newbie!
0 Kudos
Message 1 of 7
(7,107 Views)

Does this have anything related to LabVIEW? Smiley Indifferent

Else, please do a Google search.

- Partha ( CLD until Oct 2027 🙂 )
0 Kudos
Message 2 of 7
(7,096 Views)
I think it does: It's about the fundamental difference between Array based Signals, Waveforms and Signals like used in Express-VI's. Google was my first try, but to no avail.
0 Kudos
Message 3 of 7
(7,092 Views)

I think Waveforms will have Timestamp included in them by default, but Signals wont be having them generally.

Please correct me, if I m wrong.

- Partha ( CLD until Oct 2027 🙂 )
0 Kudos
Message 4 of 7
(7,086 Views)
Hi,

you're talking about "dynamic datatype" (DDT) of ExpressVis? Those DDT are (more or less) an array of waveforms, so they have a timestamp included.

I prefer to work with simple arrays to keep xy-data...
Best regards,
GerdW


using LV2016/2019/2021 on Win10/11+cRIO, TestStand2016/2019
Message 5 of 7
(7,081 Views)
As far as my experience goes (I prefere the raw data of arrays, as most data in my apps are of xy-type), ddt is related to Express VIs.
So when prototyping with Express VIs, the DDT is really nice in terms of programming speed. But once the coding starts, using 'traditional'/'real' VIs all these conversions from/to DDT start polluting the Diagram. A DDT might be of different data types (similar to variant data), and polymorphic VIs (and controls) adapt to these. From that comes the advantage during prototyping, as you still can easily change the actual data type.
Waveforms as said before contain timing information. They are ok if you're only interested in a signal vs. time data (evenly spaced time!). But when I wanted to do more than just wire them to a graph, things quickly messed up. Such things as Waveform subset never worked the way I expected them to work (mainly a thing with the timestamp and absolute vs. relative), so they wasted more time than donated for the coding.
One thing thats performed better with Waveforms than arrays is to display ditigtal data, as the nice digital graph won't work with boolean arrays.
Arrays are the most clear, strict data type of all these. That's why I would do all real coding with these only.

Short:
* DDT for prototyping
* Waveform if signal vs. time is all
* Arrays for everything

Holds true for LV 7.1, don't know about the newer versions.
And also, I guess some fresh trained programmers will outperform me with DDT or waveforms where they are useful.

Felix
Message 6 of 7
(7,070 Views)
Tanks for your excellent replies! See much clearer now!Smiley Very Happy Special Thanks to Felix - very clear answer.

Michael
0 Kudos
Message 7 of 7
(7,057 Views)