1

我需要使用 Matlab 和 MCC USB-2527 卡收集数据。

一切正常,除了触发。这是我的代码:

BoardNR=1;
Chan=[0 1 2 3];
fs        = 100   
duration=60

ai        = analoginput('mcc',BoardNR);                                 
ch        = addchannel(ai,Chan);                                
set(ai,'SampleRate',fs);                                       
set(ai,'SamplesPerTrigger',duration*fs);                  
set(ai,'TriggerChannel',ch(3))                %Channel 3 is the position signal of a cyclic movement
set(ai,'TriggerType','Software')
set(ai,'TriggerCondition','Leaving')          %Should trigger when the position signal is not 0
set(ai,'TriggerConditionValue',[0,0])
set(ai,'TriggerDelay',1);
set(ai,'Timeout',5);


%The data collection is started
start(ai);
wait(ai, duration+1)

data=getdata(ai,fs*duration); 
plot(0.01:(1/fs):duration,data);             %Plotting real time vs signals

如果我删除带有触发的部分,我会完美地收集数据。但是,我需要触发,当我运行此代码时,出现错误:“WAIT 在 OBJ 停止运行之前达到超时”。我认为这意味着它停止等待触发信号。我 100% 肯定位置信号每 20 秒左右为 0,所以它应该定义。扳机。

我希望你能帮忙。我已经尝试了一切,包括拥有另一个 TriggerCondition(如 Entering、Rising、Falling)和另一个 TriggerConditionValue。

提前致谢,

亨里克

4

1 回答 1

0

我不确定,但我认为您必须将 TriggerType 设置为 Manual。命令“propinfo(ai.TriggerType)”应该显示哪些选项是可能的。

我还将 USB 2527 与 MatLab 一起使用;-)

于 2012-08-30T07:15:17.010 回答