LabWindows/CVI

cancel
Showing results for 
Search instead for 
Did you mean: 

NI-DAQ refresher

Hello all,

about 15 years ago I wrote a data acquitision system using NI-DAQ and CVI on NI hardware. This system is still in use although I don't work there anymore and they want my advice on how to upgrade it. Not having used NI-DAQ since then I need a refresher. Mostly I'm worried of what kind of software modifications will be necessary.

 

They want to upgrade the hardware to a cDAQ-9184 CompactDAQ Chassis, NI 9263 Screw Terminal and NI 9215 BNC. Is this hardware still compatible with the old legacy NI-DAQ code (couldn't find this info on ni.com) ? And if not how hard is it, generally speaking, to go from a NI-DAQ codebase to a NI-DAQmx codebase ? Is the philosophy completely different ? I never looked at the mx API. mx is the current way to go, right ?

 

Thanks.

0 Kudos
Message 1 of 4
(4,577 Views)

Not exactly an easy and fast question to answer! Smiley Surprised

 

First of all, I would assume that CompactDaq devices are too new to be supported by Traditional DAQ. I cannot give this assertion for sure, but I have found this document that, if I interpret it correctly, states that CompactDAQ devices are to be used only with DAQmx.

 

Moving an application to DAQmx is not a trivial task, since most basic paradigms have changed between the drivers. Nevertheless, DAQmx simplifies configuration routines and offers a better support for acquisition so in my opinion the time spent in the transition is a good investment.

You can read this white paper on the subject: despite being aimed primarily to LabVIEW users, as usual, it gives you the fundamental paradigms of DAQmx and can be easily adapted to CVI, especially if you at the same time take a look at the examples supplied for this language.

EDIT I have found also this cross reference table for terminology used in the two drivers. This other document lists some fundamental functions in DAQmx and can be a good starting point to address the basic data acquisition tasks.

 

Since DAQmx is the current driver and no effort is spent on Traditional DAQ since several years, this is the correct way to go if you want to create a system that can run for another 15 years.

 

As a last note, consider that Traditional DAQ cannot be installed on 64-bit systems: this at least limits you in choosing the PC where to run your application on, and even more in the future where 32-bit systems will probably disappear.



Proud to use LW/CVI from 3.1 on.

My contributions to the Developer Community
________________________________________
If I have helped you, why not giving me a kudos?
0 Kudos
Message 2 of 4
(4,565 Views)

Thanks Roberto.

I guess the best strategy is to schedule time to upgrade the code to NI-DAQmx. That's the current official API, right ? (sorry I'm not too knowledgeable in recent NI hardware as we design everything in house with embedded Linux nowadays).

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

Hello gdargaud,

 

The cDAQ-9184 requires the NI-DAQmx and will not work with the traditional DAQ drivers. You will have to spend some time rewriting portions of your program to use the NI-DAQmx functions. You can reference the DAQmx examples for help getting started. And I also recommend reading over this white paper to understand some of the specific changes required: http://www.ni.com/white-paper/4342/en/

 

Have a nice day!

0 Kudos
Message 4 of 4
(4,536 Views)