于NI KB摘录
? ? ? ? ?此库集成了host、fgpa、rt在RIO硬件上采集波形的范例项目,其中?所有?数据和?采集?VI?和?都?针对?NI RIO?平台?进行?了?优?化,?融合了业界最佳的工程实践。??您?也可以?在这些?范?例?的基础进行修改,从而?快速开发?自己?的?应用?程序?。
? ? ? ? 打开 VI Package Manager,搜索waveform 找到并安装此库。
????????许多可重配置的I/O (RIO)应用需要从多个同步的NI C系列模块中获取连续的数据包。本?教程?演示?了?针对?RIO?硬件?平台?优?化?并融合业界最佳工程实践的?CompactRIO数据?采集?VI,?并?提供?了?几个?可以?帮助?您?快速?着手?进行?程序?开发?的?范?例。
函数在此路径下面
????????cRIO Wfm Examples.lvproj演示了常见的采样模式以及如何将上位机代码链接到FPGA代码。?本范例安装在LabVIEW环境中的“范例项目”中,可通过启动窗口中的“新建项目(Create Project)”打开。
该项目还可在以下位置找到:?
National Instruments\LabVIEW [Version]\ProjectTemplates\Source\cRIOWfm
注意,修改代码需要把当前VI另存为新的再进行修改。
有限点采样:在有限点采样模式下,FPGA在采集一定数量的样本后,停止采样。在这种模式下,?ConfigTiming.vi调用BufferConfig.vi,并将上位机应用程序的数据缓冲区大小设置为等于有限点采样中的样本数。
具有?读?取?部分?采样?数据?功能?的?有限?点?采样:有限点采样会分配恰好足够的内存以容纳每个通道的所有请求采样。此外,Read(poly).vi具有一个名为Sam Chan Read per Chan的输入控件,可用于指定每个调用返回的数据块大小,?这样?您?就?可以?分?几次?来?读?取?完?有限?点?采样?得到?的?所有?采样?数据 – 这?是?数据?处理?类?应用?中?非常?有用?的?一个?功能。?
具有?软件?重?触发?启动?功能?的?有限?点?采样:当有限点采样终止时,FPGA会自动重新配置,以准备进行下一次采集。只需调用Start.vi,即可开始执行下一个有限点采样。
连续采样:在连续采样模式下,FPGA无限采集样本,直到接收到停止命令或遇到错误(FIFO溢出、模块下溢等)才会停止。在这种模式下,使用BufferCfg.vi可将上位?机应用程序的数据?缓冲?区?大小?为?每次?读?取?的?数据?点数?的?多倍。?在?随附?的?范?例?程序?中,?默认?使用?的是?十倍。?如果?上位?机?应用?程序?的?数据?缓冲?区?被?数据?填满,?那么?FPGA?将会?报?送?FIFO?数据?溢出?的?错误,导致?采样?进程?停止。
具有?开始/?停止?或者?暂停?功能?的?连续?采样:?如果?一个?有限?采样?任务?要求?的?采样?点数?过?大,?以至于?现有?的?上位?机?内存?空间?无法?完成?该?任务?时候,?可用状态机的?程序?架构?来执行?一段?特定?时间?长度?的?连续?采样?。当?程序?调?用Stop.vi?的?时候, FPGA?会?停止?当前?的?采集?任务,并立刻?自行?重新配置,?等待Start.vi被?调?用。?Stop VI同时?会?清?空?上位?机?应用?程序?数据?缓冲?区?,以?保证?接?下来?的?采样?不会?返回?旧?的?数据。
????????对于?所有?列出?的?控制器,?CompactRIO?Continuous Acquisition Example将?连续?采集??数据?,?然后?将?采样?数据?流?盘?至?一个?本?机?的?技术?数据?管理?流?(TDMS)?文件、?二?进制?文件,?或者?通过?TCP/?IP?协议?将?数据?发送?到?一个?远程?上位机?上。?下面?表格?中?带?宽的?大小?表示?可以?持续?进行?流?盘?的?数据?量?(直到?硬盘?空间?耗?尽)。
流?盘?至?本?机?文件?[TDMS]:?采样?率 = 51.2 kS/s
控制器 | 1D Wfm SGL | 2D Array SGL | 交织的SGL |
---|---|---|---|
NI 9074 | 6通道(1.23 MB/s) | 7通道(1.43 MB/s) | 8通道(1.64 MB/s) |
NI 9068 | 8通道(1.64 MB/s) | 8通道(1.64 MB/s) | 9通道(1.84 MB/s) |
NI 9014 | 8通道(1.64 MB/s) | 10通道(2.05 MB/s) | 13通道(2.66 MB/s) |
NI 9076 | 9通道(1.84 MB/s) | 12通道(2.45 MB/s) | 15通道(3.07 MB/s) |
NI 9022 | 10通道(2.05 MB/s) | 13通道(2.66 MB/s) | 19通道(3.89 MB/s) |
NI 9024 | 15通道(3.07 MB/s) | 19通道(3.89 MB/s) | 27通道(5.53 MB/s) |
流?盘?至?本?机?文件[二进制]:采样率 = 51.2 kS/s
控制器 | 交织的SGL |
---|---|
NI 9074 | 8通道(1.64 MB/s) |
NI 9068 | 9通道(1.84 MB/s) |
NI 9014 | 18通道(3.69 MB/s) |
NI 9076 | 20通道(4.10 MB/s) |
NI 9022 | 25通道(5.12 MB/s) |
NI 9024 | 36通道(7.37 MB/s) |
通过TCP/IP传输:采样率= 51.2 kS/s
2D Array SGL
控制器 | 1D Wfm SGL | 2D Array SGL | 交织的SGL |
---|---|---|---|
NI 9074 | 12通道(2.46 MB/s) | 13通道(2.66 MB/s) | 18通道(3.69 MB/s) |
NI 9014 | 12通道(2.46 MB/s) | 14通道(2.87 MB/s) | 23通道(4.71 MB/s) |
NI 9022 | 16通道(3.28 MB/s) | 20通道(4.10 MB/s) | 35通道(7.17 MB/s) |
NI 9024 | 29通道(5.94 MB/s) | 32通道(6.55 MB/s) | 45通道(9.22 MB/s) |
NI 9068 | 40通道(8.19 MB/s) | 40通道(8.19 MB/s) | 45通道(9.22 MB/s) |
??