National Instruments provides a wide array of data acquisition hardware for use in many platforms, operating systems, and busses. The most common way provided to interface with the hardware is through the NI-DAQmx drivers. These DAQmx drivers can be used to interface with hundreds of different DAQ devices across several different application development platforms. In this three part blog series, we are going to explore specifically how to use National Instruments data acquisition hardware in .NET applications. Part one will introduce a little bit of background into DAQmx and Measurement Studio. Part two will explain how to get started in adding National Instruments hardware to your .NET project. Finally, part three will provide some examples for hybrid systems combining LabVIEW and .NET as a way to fully utilize National Instruments hardware while retaining the advantages of .NET.
What is NI-DAQmx?
NI-DAQmx is a multi-function data acquisition driver provided by National Instruments for interfacing with hundreds of different data acquisition devices. The drivers are downloadable directly from NI’s website. These drivers can be used across a wide configuration of development environments and operating systems. Supported development environments include LabVIEW, ANSI C, Visual C++, C#.NET, VB.NET, and VB 6.0.
DAQ devices are used to generate or measure signals from hardware into a software application. They can measure or generate analog and digital signals, as well as read counters and timers and generate digital pulses. Some devices can do more than one type of data acquisition, which are referred to as multifunction devices.
So what does DAQmx actually do? DAQmx provides two different ways of interfacing with the DAQ hardware. One way is through the DAQ Assistant. The DAQ Assistant provides a step by step interface to create and configure DAQ tasks, virtual channels, and scales with no programming required. The second way to use DAQmx is through the provided API, which is more customizable, but also requires some programming ability.
What is Measurement Studio?
Measurement Studio is a suite of data acquisition tools provided by NI that are designed specifically for use in VB.NET, C#.NET, and Visual C++ development using the DAQmx platform. This suite includes user interface controls, tools, and libraries to support all the functionality of DAQ just like in LabVIEW. Also included, is a decent selection of ASP.NET web controls and indicators, such as graphs for easy data control and display, as well as support of automatic data refreshing.
While NI provides the DAQmx drivers and API for free, the tools and controls that support the drivers in Visual Studio all come in the Measurement Studio package which is available from NI as a product.
Next month we will dive into how to get started with DAQmx and Measurement Studio. I will discuss the process of hardware interfacing with both some simple code, as well as DAQ Assistant. I will also show how to use Measurement Studio to generate user interface elements and controls easily for working with and displaying DAQ data.