Showing results for 
Search instead for 
Did you mean: 

DWDT Digital to Binary is a pig

In my DAQ loop I use this express VI to trim down the information that I am reading from several digital lines at 100 kHz. I convert the digital waveform into an array, and scan the array for transitions, passing only the transitions through a queue into my data storage loop.

Surprise!  I'm having timing troubles, and profiling reveals that DWDT Digital to Binary is taking up the preponderance of the time. Looking at its internals shows a call to DTbl Digital to Binary The one obvious piece of damage in there is a call to the Threshold 1D Array function, which returns Double, which then must be converted back to I32.

To National Instruments: please study and fix this function. Like several other things in the digital waveform domain, it seems to have been patched in hastily, without the care for speed and efficiency that the rest of LabVIEW shows.

To everybody: has anyone dealt with this problem? Has anyone come up with an alternative implementation to achieve the same goal?


0 Kudos
Message 1 of 4

Good Afternoon Ken,


I believe that this VI works well under moderate amounts of data.  However, several lines of data being sampled simultaneously at 100 kHZ is quite a bit of data for this VI to convert to binary.  Approximately, how long is this VI taking to convert all of your data to binary?


-Cody C

0 Kudos
Message 2 of 4

My view of Express VIs are well known, and the fact is that they are bloated. But before we point the finger on NI. Perhaps you can post your code. I could not find a "DWDT Digital to Binary U32" Express VI. As a starter.

Besides which, my opinion is that Express VIs Carthage must be destroyed deleted
(Sorry no Labview "brag list" so far)
0 Kudos
Message 3 of 4

Some DAQ devices can be configured for 'Change Detection'.  User defined # samples are taken every time a a change is detected.  Eliminates the need to go digging through a bunch of data.

0 Kudos
Message 4 of 4