| Products & Services | Solutions | Academia | Support | User Community | Company |
| Download Product Updates | | | Get Pricing | | | Trial Software |
| Documentation → Data Acquisition Toolbox |
| Contents | Index |
| Learn more about Data Acquisition Toolbox |
| On this page… |
|---|
The Data Acquisition Toolbox software consists of three distinct components:
M-file functions
the data acquisition engine
hardware driver adaptors
As shown in the figure, these components allow you to pass information between the MATLAB workspace and your data acquisition hardware.

The preceding diagram illustrates how information flows from component to component. Information consists of:
Property values – You can control the behavior of your data acquisition application by configuring property values. In general, you can think of a property as a characteristic of the toolbox or of the hardware driver that can be manipulated to suit your needs.
Data – You can acquire data from a sensor connected to an analog input subsystem and store it in the MATLAB workspace, or output data from the MATLAB workspace to an actuator connected to an analog output subsystem. Additionally you can transfer values (1s and 0s) between the MATLAB workspace and a digital I/O subsystem.
Events – An event occurs at a particular time after a condition is met and might result in one or more callbacks that you specify. Events can be generated only after you configure the associated properties. Some ways you can use events include initiating analysis after a predetermined amount of data is acquired, or displaying a message to the MATLAB workspace after an error occurs.
To perform any task with your data acquisition application, you must call M-file functions from the MATLAB environment. Among other things, these functions allow you to:
Create device objects, which provide a gateway to your hardware's capabilities and allow you to control the behavior of your application.
Acquire or output data.
Configure property values.
Evaluate your acquisition status and hardware resources.
For a listing of all Data Acquisition Toolbox functions, refer to Functions — Alphabetical List. You can also display all these functions by typing
help daq
The data acquisition engine (or just engine) is a MEX-file (shared library that is executable within the MATLAB software) that
Stores the device objects and associated property values that control your data acquisition application
Controls the synchronization of events
Controls the storage of acquired or queued data
While the engine performs these tasks, you can use MATLAB for other tasks such as analyzing acquired data. In other words, the engine and the MATLAB software are asynchronous. The relationship between acquiring data, outputting data, and data flow is described next.
Acquiring data means that data is flowing from your hardware device into the data acquisition engine where it is temporarily stored in memory, until you explicitly extract it using the getdata function.
If you do not extract this data, and the amount of data stored in memory reaches the limit for the data acquisition object (see daqmem(obj)), a DataMissed event occurs. At this point, the acquisition stops.
The rate at which the acquisition stops depends on several factors including the available memory, the rate at which data is acquired, and the number of hardware channels from which data is acquired.
The flow of acquired data consists of these two independent steps:
These two steps are illustrated below.

Outputting data means that data is flowing from the data acquisition engine to the hardware device. However, before data is output, you must queue it in the engine with the putdata function. The amount of data that you can queue depends on several factors including the available memory, the number of hardware channels to which data is output, and the size of each data sample.
The flow of output data consists of these two independent steps:
These two steps are illustrated below.

The hardware driver adaptor (or adaptor) is the interface between the data acquisition engine and the hardware driver. The adaptor's main purpose is to pass information between MATLAB and your hardware device via its driver.
Hardware drivers are provided by your device vendor. For example, to acquire data using a National Instruments board, the appropriate version of the NI-DAQ driver must be installed on your platform. For further information about NI-DAQmx and Traditional NI-DAQ drivers, see NI-DAQmx Versus Traditional NI-DAQ Drivers. Hardware drivers are not installed as part of the toolbox with the exception of a special parallel port driver that allows access to the port's protected memory addresses. Additionally, a suitable driver is usually installed on PCs that are equipped with a sound card. For the remaining supported devices, the drivers must be installed.
You can obtain most adaptors either from the MathWorks or from the device vendors. See the supported hardware page at www.mathworks.com/products/daq/supportedio.html for a list of vendors whose hardware the toolbox supports, and for information about how to obtain an adaptor. The toolbox provides the following adaptors. The name of the vendor or device is also listed in the table.
Adaptor Provided by the Data Acquisition Device
Vendor or Device | Adaptor Name |
|---|---|
Advantech | advantech |
Measurement Computing | mcc |
National Instruments NI-DAQmx adaptors | nidaq |
National Instruments Traditional NI-DAQ adaptors | nidaq |
Parallel port | parallel |
Windows sound cards | winsound |
Notes The Traditional NI-DAQ adaptor will be deprecated in a future version of the toolbox. If you create a Data Acquisition Toolbox™ object for Traditional NI-DAQ adaptor beginning in R2008b, you will receive a warning stating that this adaptor will be removed in a future release. See the supported hardware page at www.mathworks.com/products/daq/supportedio.html for more information. The Parallel adaptor will be deprecated in a future version of the toolbox. If you create a Data Acquisition Toolbox™ object for 'parallel' beginning in R2008b, you will receive a warning stating that this adaptor will be removed in a future release. See the supported hardware page at www.mathworks.com/products/daq/supportedio.html for more information. |
Note Additional vendors not in this table are listed in the supported hardware page at www.mathworks.com/products/daq/supportedio.html. This page contains a comprehensive list of vendors whose hardware the toolbox supports, and it provides information on how to obtain an adaptor. |
As described in Examining Your Hardware Resources, you can list the installed adaptor names with the daqhwinfo function.
Refer to the supported hardware page for Data Acquisition Toolbox software at www.mathworks.com/products/daq/supportedio.html for the list of vendors whose hardware the toolbox supports, and for information about how to obtain an adaptor. If the device you are using is not listed on this page, you can do one of the following:
Contact the device vendor to request them to develop an interface to the toolbox. Refer them to the supported hardware page at www.mathworks.com/products/daq/supportedio.html for a list of currently supported hardware and for information about contacting The MathWorks.
Search for your device on The MathWorks support page at www.mathworks.com/support/ to see if a solution is listed for using your unsupported device. Such solutions are typically available for devices that the next Data Acquisition Toolbox release will support.
Create the interface yourself. To interface unsupported hardware devices to the toolbox, use the Data Acquisition Toolbox Adaptor Kit installed with the toolbox. For more information about the adaptor kit, read the Data Acquisition Toolbox Adaptor Kit User's Guide.
Hire a consultant to write the interface or a systems integrator to build the system. For a potential list of consultants or systems integrators, go to the Third Party Products and Services page at www.mathworks.com/connections.
Consider using hardware that the toolbox already supports.
![]() | Installation Information | Accessing Your Hardware | ![]() |

Includes the most popular MATLAB recorded presentations with Q&A sessions led by MATLAB experts.
| © 1984-2009- The MathWorks, Inc. - Site Help - Patents - Trademarks - Privacy Policy - Preventing Piracy - RSS |