多种触发功能的可编程高速数据采集模块

多种触发功能的可编程高速数据采集模块,第1张

  在数据采集的过程中,为了不漏掉任何一个既定特征的信号,A/D转换器必须不断地采集数据。但是由于存储器容量的限制,不可能无限制地采集并存储数据。如何使模块能自动检测、采集并存储有效数据呢?触发技术的引入可以解决这一问题。触发是为了有效地观测信号,当被测信号满足触发条件时,启动一次数据采集,使用户在屏幕上能观测到满足触发条件的波形。

  触发电路在以往的设计中,多采用电平比较器,其缺点是:采用的分立元件多,不利于模块移植和速度的提升,同时触发方式多样化配置也受到硬件限制,不具备智能化特点。本模块基于高速A/D转换器和FPGA,提出了一种全数字化的多种触发功能的高速数字采集设计方案。模块接口易于移植,采集频率高达50 MHz,具有多种可编程触发功能,采用的触发窗技术进一步保证了采样存储数据的正确性和有效性。

  1 高速数据采集模块结构

  

多种触发功能的可编程高速数据采集模块,第2张

 

  此模块通过通信接口动态设置触发极性、触发模式、触发窗长度、触发点电平,触发极性可选上升沿触发rising_edge和下降沿触发falling_edge两种。触发模式可分为前触发pre_trigger、中间触发mid_trigger、后触发post_trigger三种模式。触发窗长度设置为0~100的整数,触发点电平可设置为0~255的整数。

  当连接通信接口的外部显示控制界面设置好触发极性、触发模式、触发窗长度、触发点电平时,开始启动采集命令,包装好的40位数据流将被发送到FPGA;FPGA接收到40位数据后,迅速分离成5个8位数据,即触发极性、触发模式、触发窗长度、触发点电平和采集启动信号,利用FIFO存储器先进先出的特性以及对AD9057的控制时序,配合触发信号存储A/D数据;当采样完成后,FIFO中的数据可以被发送到外部的显示控制界面直观地显示出来。

  1.1 触发信号的产生

  传感器探测和感知的模拟信号一般都带有一定干扰,如果仅凭一个触发点来决定触发的位置则很难控制,在本模块触发位置的设计中采用了三点触发窗技术,触发窗的设置可以有效地屏蔽模拟信号的抖动,使模块正常运行。

  触发极性triggerpolar有上升沿触发rising_edge和下降沿触发falling_edge两种模式,在这两种触发极性下,触发信号上升沿表示模块开始存储A/D转换数据。模块设置了触发字1和触发字2,触发字1为触发点加上触发窗长度,如果结果小于255则触发字为两者相加结果,否则为255;触发字2为触发点减去触发窗长度,如果结果大于0则触发字为两者相减结果,否则为0。

  图2是下降沿触发信号产生图。图中模块开始采样时,A/D转换数据与触发字1和触发字2不断地比较,当A/D数据大于触发字1时,触发信号输出为低电平;此后A/D数据与触发字2比较,当A/D数据小于触发字2,触发信号输出高电平。

  

多种触发功能的可编程高速数据采集模块,第3张

 

  compare_standardl、compare_standard2分别是触发字1和触发字2。flag为标志变量,当A/D数据大于触发字1时,flag=1;当A/D数据小于触发字2时,flag=0。具体实现的代码如下:

  

多种触发功能的可编程高速数据采集模块,第4张

 

  

欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/dianzi/2560349.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-08-06
下一篇 2022-08-06

发表评论

登录后才能评论

评论列表(0条)

保存