1.宣告一个装置对象 – 宣告一个可以代表DAQ2010的模拟输入对象(ai)
ai = analoginput('凌华',1);
2.增加输入信道(Add channels) – 增加一个硬件信道到ai
chan = addchannel(ai, 0);
3.设定属性值 – 设定取样频率和触发来源和条件
set(ai,'SampleRate',2000)
set(ai,'TriggerType', 'Immediate')
set(ai,'TriggerChannel', chan) %不一定要执行此指令因为会需要Trigger讯号
set(ai,'TriggerConditionValue', 2.0) %不一定要执行此指令因为会需要Trigger讯号
4.开始采集数据 – 当数据采集结束时, ai会自动停止数据采集并传回数据.此时亦可使用图表将数据显示.
. start(ai)
data = getdata(ai);
plot(data)
5.清除宣告的对象变量 – 当使用者不再需要使用ai 装置对象变量时, 使用者必需清除并释放ai 所占用的内存.
delete(chan)
clear chan
delete(ai)
clear ai

图二: 数据采集模拟输入(AI)范例的执行结果
模拟输出(AO)范例
这个范例将会使用数据采集工具箱对真实的数据采集卡进行设定, 操作, 输出数据, 并以图表显示准备要输出的波形.,只要稍为修改设定属性值, 即可使用在真实的应用中.
1.宣告一个装置对象 – 宣告一个可以代表DAQ2010的模拟输出对象(ao)
ao = analogoutput ('凌华',1);
2.增加输出通道(Add channels) – 增加一个或二个硬件信道到ao
chan = addchannel(ao, 0); %或 addchannel(ao,0:1);
3.设定属性值 – 设定更新频率
set(ao,'SampleRate',2000)
4.开始输出资料 – 首先先在MATLAB内产生所要输出的波形, 然后可以把波形数据写入ao, 一次可以写入一个通道或是写入二个通道.
data = 10*sin(linspace(0,2*pi*10,8000)');
plot(data)
putdata(ao, data) %或 putdata(ao,[data data])
5.清除宣告的对象变量 – 当使用者不再需要使用ao 装置对象变量时, 使用者必需清除并释放ao 所占用的内存.
stop(ao)
delete(chan)
clear chan
delete(ao)
clear ao

图三: 数据模拟输出(AO)范例的输出波形
数字输出入(DIO)范例
这个范例将会使用数据采集工具箱对真实的数据采集卡进行数字的输出, 同时读回那些值.
1.宣告一个装置对象 – 宣告一个可以代表DAQ2010的数字输出入对象(dio)
dio = digitalio ('凌华',1);
2.增加数字讯号线(Add lines) – 增加八个数字讯号线到dio, 同时将数字讯号线设定为”输出”
addline(dio,0:7,'out');
3.读和写数值 – 产生一个数值的数组, 并将它送到dio装置对象, 注意读和写数字讯号线通常不必再对其输出入的方向重新设定.
pval = [1 1 1 1 0 1 0 1];
putvalue(dio,pval)
gval = getvalue(dio);
plot(gval)
5.清除宣告的对象变量 – 当使用者不再需要使用dio 装置对象变量时, 使用者必需清除并释放dio 所占用的内存.
delete(dio)
clear dio
结论
在此简单的介绍MATLAB数据采集工具箱的内部结构和使用方法,使用此种方式在MATLAB内控制数据采集卡是最直接的方式,同时可以完全和MATLAB整合并进行实时的数据存取和实时的分析,使用资料采集工具箱再加上一片可以在工具箱内使用的数据采集卡是所有需要作数据采集的工程师必备的工具。