找回密码
 注册
Simdroid-非首页
查看: 392|回复: 25

[代码挑战区] 如何实现一个输入端口进行多通道采集?

[复制链接]
发表于 2007-3-13 17:15:40 | 显示全部楼层 |阅读模式 来自 辽宁沈阳
我在调用DLL文件进行数据采集的时候,其中一个端口参数为选择通道:nch,如果前面连接一个数值标量只能采集单个通道数据。现在我想同时采集3个通道,并且输出在一个
Waveform Graph上,请问应该怎么做?
发表于 2007-3-13 18:02:10 | 显示全部楼层 来自 上海
Simdroid开发平台
采集卡是ni的吗?应该不是吧?

调用3次,把3次结果拌成一个数组连到Waveform Graph上就行。
发表于 2007-3-13 18:02:54 | 显示全部楼层 来自 上海
不过这样的话就不是同步采样了。 用NI的卡就没这样的问题。
 楼主| 发表于 2007-3-13 18:18:52 | 显示全部楼层 来自 辽宁沈阳
采集卡不是NI的, 请问3次调用之间的关系是什么,是把它们3个放在一个程序框图中还是用其他嵌套结构呢?
发表于 2007-3-13 22:00:57 | 显示全部楼层 来自 上海
可以放3个并行,但要看那个DLL有没有线程保护的。 不行的话,就用一个sequence规定他们一个一个的执行。用loop也可以。
 楼主| 发表于 2007-3-14 15:02:18 | 显示全部楼层 来自 辽宁沈阳
好象没有线程保护,用一个sequence规定他们一个一个的执行时候,数据如何能显示在一个
wavegraph中?(3个通道一个一个执行的时候输出端是三个)应该用什么数组把他们值装在一起后再显示么?
发表于 2007-3-14 15:41:47 | 显示全部楼层 来自 上海
用build array.
 楼主| 发表于 2007-3-15 10:29:35 | 显示全部楼层 来自 辽宁沈阳
当我用层叠顺序结构时,3个输出端不能连到结构边上啊,可不可以用定时结构:将wavegraph连接到最后那个定时帧的 输出 端?
 楼主| 发表于 2007-3-15 11:27:06 | 显示全部楼层 来自 辽宁沈阳
我把我做的VI贴上来,哪位高手帮我 修改一下,怎么样能做到3个通道采集显示在一个
waveform中?还有我引用论坛精华贴的横坐标时间与系统时间一致,为什么输入参数
pResultArr为数组时,横坐标不能正常显示呢?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
发表于 2007-3-15 12:01:18 | 显示全部楼层 来自 上海
看图。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
 楼主| 发表于 2007-3-15 14:55:50 | 显示全部楼层 来自 辽宁沈阳
感谢版主不吝赐教!我按您的方法试了 一下,但是我的X坐标轴不能按精华贴中那样显示系统时间,请问该怎么修改呢?附件为我后来做的程序图。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
发表于 2007-3-15 16:03:33 | 显示全部楼层 来自 上海
1. Waveform Chart --> Waveform Graph
2. dt 是采样周期,自己填上
3. t0 需要自己做以下。也就是每次采集的开始时间。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
 楼主| 发表于 2007-3-15 16:47:54 | 显示全部楼层 来自 辽宁沈阳
谢谢!按照定时循环能够采集了。我的实际采样系统用的是labview7.0,它里面没有
labview8.2里面的定时循环功能模块,用什么方法能在labview7.0里面实现定时循环功能呢?工具可以从labview8.2中载入到7.0中么?
发表于 2007-3-15 16:59:37 | 显示全部楼层 来自 上海
没有办法的。要看你的采集卡怎么做的。如果他有buffer, 而且驱动好用的好,你用一般的循环就可以了,不需要time-looped.  就像NI得卡就没问题。
 楼主| 发表于 2007-3-15 17:08:07 | 显示全部楼层 来自 辽宁沈阳
当我用平铺顺序结构时设置采样周期和初始时间用什么方法呢?
您给的程序中用的方法是不是不能用了?
 楼主| 发表于 2007-3-15 17:24:40 | 显示全部楼层 来自 辽宁沈阳
附件为平铺结构的VI,用labview7.0做的,如何加入采样周期、初始时间呢?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
发表于 2007-3-15 17:32:43 | 显示全部楼层 来自 上海
采样周期跟你的卡有关了,这个我不知道。 可以问一下卖给你卡的公司。在C李怎么用,早LabVIEW李就怎用。
 楼主| 发表于 2007-3-23 11:35:51 | 显示全部楼层 来自 辽宁沈阳
我把 nChMode设定为1的时候,可以进行单端,多通道扫描,结果如附件所示能输出显示到数组表中。
但是,当我从表中选取1行1列,1行2列和1行5列的数据的时候,却不能显示到 Wavegraph里面,
wavegraph里面的时间也不往后走。
请问版主:怎么样能让3组数据显示出来并让横坐标随时间变化呢?
附件为我写的程序,DLL文件楼上有给出。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
 楼主| 发表于 2007-3-23 14:12:09 | 显示全部楼层 来自 辽宁沈阳
顶一下,求高手帮我解决一下楼上的问题!
先谢谢了!
 楼主| 发表于 2007-3-23 15:37:48 | 显示全部楼层 来自 辽宁沈阳
怎么没人理我啊,哪位能帮我解决一下18楼的问题呀?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|小黑屋|联系我们|仿真互动网 ( 京ICP备15048925号-7 )

GMT+8, 2024-4-25 20:57 , Processed in 0.066415 second(s), 14 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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