MATLAB®支持

如何将MATLAB与Measurement Computing产品集成

MATLAB®是具有强大数学和建模软件功能的程序包,全世界有无数工程师和科学家正在使用它。正因为MATLAB是由数据集驱动,所以通过数据采集设备连接到现实世界的信息是MATLAB桌面环境的有力补充。

MCC和DT DAQ设备提供针对MATLAB的数据采集应用程序开发和支持。用户可以配合多数MCC和DT硬件来实现MATLAB强大的可视化和分析功能。

对MATLAB的支持提供以下内容:

  • 适用于多数USB和PCI设备易用接口
  • 设置设备和应用程序参数
  • 读取模拟输入数据
  • 写出模拟输出数据
  • 直接从MATLAB访问实时测量数据
  • 用于采集,分析和可视化的单一环境
MATLAB的数据采集工具箱支持MCC设备,同时DT设备通过用于MATLAB数据采集工具箱支持包的DT DAQ适配器获得支持(多数DT设备免费提供)。每个驱动程序提供不同的功能。请参见下表。

MCC和DT设备支持的功能::

设备 模拟输入 模拟输出 数字I/O 计数器/定时器
MCC Yes Yes
DT Yes Yes Yes Yes

注意:不支持诸如热电偶之类的专用输入和Simulink数据采集模块的使用

使用MATLAB和MCC设备构建程序

MATLAB
在MATLAB中对数据采集设备进行编程相对简单。 以下是使用MCC USB DAQ设备创建MATLAB应用程序的基本步骤。

配置和控制设备
MCC设备是使用数据采集工具箱直接在MATLAB中配置的,用户可在其中利用MATLAB强大的分析和数据表示工具。

发现可用设备
使用daq.getDevices函数显示计算机和MATLAB可用的设备列表。

devices = daq.getDevices
devices =
Data acquisition devices:
index Vendor Device ID Description
1 mcc Board0 Measurement Computing Corp. USB-1208FS-Plus
2 mcc Board1 Measurement Computing Corp. USB-1608GX-2AO
3 mcc Board2 Measurement Computing Corp. USB-1604HS-2AO
4 mcc Board3 Measurement Computing Corp. USB-1608FS-Plus
5 mcc Board4 Measurement Computing Corp. USB-1616FS

了解设备详细信息
要了解有关单个设备的更多信息,请在“命令”窗口的列表中单击该设备的名称,或访问daq.getDevices函数返回的数组中的设备。

devices(2)
ans =
mcc: Measurement Computing Corp. USB-1608GX-2AO (Device ID: 'Board1')
 Analog input subsystem supports:
   4 ranges supported
   Rates from 0.1 to 500000.0 scans/sec
   16 channels ('Ai0' - 'Ai15')
   'Voltage' measurement type

 Analog output subsystem supports:
   -10 to +10 Volts range
   Rates from 0.1 to 500000.0 scans/sec
   2 channels ('Ao0','Ao1')
   'Voltage' measurement type

采集数据

  1. 创建一个描述要执行的操作的会话
  2. 将输入通道添加到会话中
  3. 开始采集
daq.createSession函数创建一个会话。会话包含描述硬件,扫描速率,持续时间以及与采集相关联的其它属性的信息。创建一个会话,并将其分配给一个变量。

s = daq.createSession('mcc')
s =
Data acquisition session using Measurement Computing Corp. hardware:
Will run for 1 second (1000 scans) at 1000 scans/second.
No channels have been added.

默认情况下,会话配置为每秒扫描1000次,持续时间为一秒。对于此示例,接受这些默认值。

addAnalogInputChannel函数将模拟输入通道附加到会话。您可以为一个会话添加多个通道。对于此示例,仅添加一个。

addAnalogInputChannel(s,'Board1',0,'Voltage');
s
s =
Data acquisition session using Measurement Computing Corp. hardware:
Will run for 1 second (1000 scans) at 1000 scans/second.
Number of channels: 1
index Type Device Channel MeasurementType Range Name
1 ai Board1 Ai0 Voltage (Diff) -10 to +10 Volts  

startForeground函数开始采集并返回结果。

data = startForeground(s);

该会话已获取1000次扫描。绘制部分采集的数据:

plot(data)

Example 1

更改采集的默认属性
默认情况下,会话以每秒1000次扫描速度运行1秒。要以更高的速率获取更长时间,请更改RateDurationInSeconds属性。

s.Rate = 5000;
s.DurationInSeconds = 2;
s
s =
Data acquisition session using Measurement Computing Corp. hardware:
Will run for 2 seconds (10000 scans) at 5000 scans/second.
Number of channels: 1

index Type Device Channel MeasurementType Range Name
1 ai Board1 Ai0 Voltage (Diff) -10 to +10 Volts  


运行采集并绘制采集的数据:

data = startForeground(s);
plot(data)

Example 2

Live Data Example

实时数据采集(GUI)示例包含在MATLAB的数据采集工具箱中。它使用户可以快速轻松地从MCC设备中获取数据。

广泛的硬件选择

MCC为广泛的应用提供了多种MATLAB支持的数据采集解决方案。旨在满足任何预算的USB和PCI设备中进行选择。
MCC DAQ