[DAQmx]定时与触发的学习

原创 2015年07月11日 00:16:58
   问题描述:数据采集中的定时非常重要,即决定了多久采集一个点的这个时间间隔,触发用于外部信号达到某项要求时会程序控制自动执行某些动作。
   DAQmx的定时:分为软件定时和硬件定时。硬件定时可以使用DAQmx中的“采样时钟”函数来设置硬件定时。软件定时则由编程时控制采集的定时,如用循环结构中放置延时函数来实现。

数据采集的缓冲区:

在使用DAQmx API函数控制数据采集卡进行数据采集时,会在PC创建一个数据缓冲区,之前设置的通道采样数大小一般是1000,有时设置4096,偶尔会遇到“设置的采样数超出数据缓冲区”之类的错误,现在来看看DAQmx具体是如何分配数据缓冲区大小的。

(1)有限采样:DAQmx划分的缓冲区大小与每通道采样数的数值相等。

(2)连续采样:DAQmx划分的缓冲区大小与每通道采样数的数值相等,但是当每通道采样数的值小于下表所列的值时,DAQmx使用下表中的值:

采样率

缓冲区大小

未指定速率

10 kS

0-100 S/s

1 kS

101-10,000 S/s

10 kS

10,001-1,000,000 S/s

100 kS

>1,000,000 S/s

1 MS

从上表中,初略可见当设置采样率低于10kS/s时,缓冲区至少可以存放1s内采集的数据量,当采样率高于10kS/s时,缓冲区能存放的数据量就远小于1s内采集的数据了,这种情况下需1s内进行缓冲区数据的多次读,防止缓冲区数据被覆盖掉。

(3)当定时函数的采样模式设置为硬件定时单点采集时,NI-DAQmx不会创建缓冲区。

NI-DAQmx API是使用循环缓冲区的,即读取掉缓冲区前面部分的数据后,当采集的数据到达缓冲区尾部时,会将新采集的数据放到缓冲区开始数据已被读取的区域。DAQmx数据传输方式多采用DMA方式实现。

 

版权声明:本文为博主原创文章,未经博主允许不得转载。

[DAQmx]任务及通道学习笔记

问题描述:DAQmx任务及通道,任务相关API的使用,如“开始任务”、“停止任务”等。     DAQmx使用:DAQmx提供了一组用于控制NI的数据采集卡的API,方便实现模拟输入输出、数字输入输出...
  • suxiang198
  • suxiang198
  • 2015年07月11日 00:16
  • 1065

学会NI-DAQmx10个函数,解决80%的数据采集应用问题

转自:http://www.ni.com/product-documentation/2835/zhs/ 目录 NI-DAQmx:减少开发时间,提升系统系能DAQ 助手NI-DAQmx...
  • scliu12345
  • scliu12345
  • 2016年02月25日 22:00
  • 5367

[DAQmx]DAQmx中的控制的学习

问题描述:用DAQmx进行数据采集或生成,根据情况的不同有时两者需要同时进行,一些时候对采集和生成的实时性要求也很高,当然对于实时性要求很高的场景需要有实时设备进行支持才行,如采用FPGA和实时操作系...
  • suxiang198
  • suxiang198
  • 2015年07月11日 00:17
  • 510

[DAQmx]创建虚拟通道时应当注意的基本问题

问题描述:使用LabVIEW控制NI的采集卡,使用DAQmx是非常方便的。但是正由于其方便性,许多底层的问题都被隐藏了起来。因此使用时如果没有注意到细节问题就会出现一些不预期的结果。以下将记录一些创建...
  • suxiang198
  • suxiang198
  • 2015年07月11日 00:18
  • 852

STM32定时TIM2触发ADC采样,使用DMA保存结果

1.adc.h文件 //ADC-------------------------------------------------------------------------// #if...
  • yuangaoping
  • yuangaoping
  • 2016年11月18日 16:28
  • 1806

定时任务高效触发

 和架构师》      IBM PowerAI人工智能马拉 定时任务高效触发 标签: 算法定时任务高效触发JavaScriptjs定时 2017-06-04...
  • wzx104104104
  • wzx104104104
  • 2017年06月04日 20:54
  • 560

10w定时任务,如何高效触发超时

一、缘起 很多时候,业务有定时任务或者定时超时的需求,当任务量很大时,可能需要维护大量的timer,或者进行低效的扫描。   例如:58到家APP实时消息通道系统,对每个用户会维护一...
  • admin1973
  • admin1973
  • 2017年04月23日 10:45
  • 368

定时器触发事件流程

cc2530 z-stack
  • bnblzq
  • bnblzq
  • 2015年05月11日 00:45
  • 482

Qt+openGL学习记录(5)`加入定时器开启自动旋转,绘制三维简单对象`

简单三维形状的绘制 这一部分没有多大的难度,就是在paintGL()函数中多绘制几个三角形,几个矩形,从而形成人眼看到的立体形状。主要还是深刻的理解glRotatef()这个函数是如何旋转对象的。 ...
  • dingyuduan
  • dingyuduan
  • 2015年01月03日 23:30
  • 544

mysql数据库 定时触发过程

sql语法很多,是一门完整语言。这里仅仅实现一个功能,不做深入研究。 目标:定时更新表或者清空表。 案例:曾经做过定时清空位置信息表的任务。(然而,当时并未考虑服务器挂掉后的情况) ...
  • zwx886688
  • zwx886688
  • 2017年06月29日 18:42
  • 131
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:[DAQmx]定时与触发的学习
举报原因:
原因补充:

(最多只允许输入30个字)