请教数据采集的问题 点击:1285 | 回复:4



    
  • 精华:0帖
  • 求助:0帖
  • 帖子:4帖 | 4回
  • 年度积分:0
  • 历史总积分:16
  • 注册:2002年5月27日
发表于:2002-05-28 08:30:00
楼主
使用软件触发查询式采集,ACL8112pg同时采集两个通道模拟量时,采样率只能达到9k,而且采集通道越多采样率越低,请问是不是因为软件执行时间造成的(采集时使用的是for循环来采集各通道值),在不改变采集方式条件下,怎样提高采样率? 使用软件触发查询式采集,会发生掉点的情况,请问是不是系统的问题(比如时间片的轮换等等)而引起的,还是别的原因? 还有_812_AD_Soft_Trig()函数怎么使用,好像不用使用,AD采集也可进行。请详细告知用法。 谢谢各位高手指教!!



gongkongedit

  • 精华:1099帖
  • 求助:0帖
  • 帖子:14392帖 | 54470回
  • 年度积分:0
  • 历史总积分:622
  • 注册:2008年9月08日
发表于:2002-05-27 23:08:00
1楼
通过软件查询方式采数的话,两个通道同时达到9K已经不错了;想要更高的话就在DOS环境下直接对端口操作。 通过软件查询方式可能会丢点,这是没办法的。如果在DOS环境下情况会好一些。也可以通过中断服务程序来提高实时性。 _812_AD_Soft_Trig()应该是往寄存器12写一个数来触发A/D采样,不过我没有试过。其实我建议对于8112这一类的ISA卡,在DOS环境下如果只用查询方式采数,没有必要调用8112的dos驱动函数,直接对板卡I/O端口操作比较简单直接。用到中断和DMA方式采数时才有必要调用DOS驱动。

  • 精华:0帖
  • 求助:0帖
  • 帖子:4帖 | 4回
  • 年度积分:0
  • 历史总积分:16
  • 注册:2002年5月27日
发表于:2002-05-28 08:30:00
2楼
我是在win98环境中.我想知道_812_AD_Soft_Trig()函数是触发一次,就可以不断采集,还是每采集一次数据就要调用该函数触发一次。采集数据时使用的是_812_AD_Acquire(int *ad_data)函数。我不用Trig函数直接调用Acquire函数也可直接采集到数据,与Trig函数的用法介绍好像不一样。

maomiyang

  • 精华:0帖
  • 求助:0帖
  • 帖子:3帖 | 7回
  • 年度积分:0
  • 历史总积分:16
  • 注册:2004年4月20日
发表于:2004-07-30 11:32:00
3楼
请教Dll问题:我用Delphi对研华的PCI采集卡编程,已经把DLL.pas文件添加到工程管理器里,但在程序编译的时候,为什么还说变量没定义呢?

GaryLin

  • 精华:0帖
  • 求助:0帖
  • 帖子:4帖 | 1186回
  • 年度积分:0
  • 历史总积分:1263
  • 注册:2003年4月15日
发表于:2004-07-30 12:16:00
4楼
ADC 是 trigger 一次才转换一次. 在作大量数据采样时, 通常该函数中就会有适当(多次)的 Trigger 动作.

热门招聘
相关主题

官方公众号

智造工程师