查看: 243|回复: 0|关注: 0

[未答复] Data Acquisition Toolbox能给一个采集卡上同时建立多个接口吗?

[复制链接]

新手

5 麦片

财富积分


050


4

主题

6

帖子

0

最佳答案
发表于 2020-8-10 17:14:43 | 显示全部楼层 |阅读模式
实验需要两个模拟电压输出和一个力信号转换成电压信号的模拟输入,一个电压输出给电动机,因为要求电动机一直转,所以这个输出要一直提供。
另一个电压输出给单轴激振器,激振器的电压输出与电压信号模拟输入必须要同时开启或停止。

电压输出用的卡NI9263,第一个channel给电动机,第二个给激振器。

电压输入用的卡NI9221。

下面是一开始写的代码

clear all; clc;
devices = daq.getDevices
s_Mot = daq.createSession('ni');
addAnalogOutputChannel(s_Mot,'cDAQ1Mod3', 0, 'Voltage');

motor_RPM = 100;
outV = (motor_RPM * 10) / 2880; %电动机电压信号

s_Mot.IsContinuous = true;

outputSingleScan(s_Mot,outV)

stop(s_Mot)     %虽然stop,但是采集卡还会一直输出电压,除非把输出电压设置为0重新运行一遍


%%
clear all
s = daq.createSession('ni')

ch_out = addAnalogOutputChannel(s,'cDAQ1Mod3', 1, 'Voltage')
ch_in = addAnalogInputChannel(s,'cDAQ1Mod1', 3, 'Voltage')

rate = 10e3;
s.Rate = rate;

f = 500;
ts = 1/s.Rate;
t =0:ts:30 ;
output = 0.07*sin(2*pi*f*t)'; %激振器电压信号
queueOutputData(s,output);
[data, timestamps, triggerTime] = s.startForeground;

一开始我是分两段写的,先建立电动机的接口,输出电压后直接clear掉,此时采集卡上的电压还会一直输出。然后建立激振器的输出输入通道。

但助教说这样写不好。。。让我改成一段,我把两段拼在一起发现不能运行。

有没有大神教教我怎么弄。。






回复主题 已获打赏: 0 积分

举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐上一条 /4 下一条

快速回复 返回顶部 返回列表