预览加载中,请您耐心等待几秒...
1/6
2/6
3/6
4/6
5/6
6/6

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

高速同步数据采集系统的设计论文高速同步数据采集系统的设计论文在电气设备监测和微弱电信号测量中,需要对相关信号或微弱信号同步测量,以便分析信号间的相关信息得出正确的分析或控制策略。这些相关信号或是微弱电信号的分析处理,都需要大数据量的,并具有良好同步性的高性能数据采集系统为其服务。本文设计的双通道高速同步数据采集系统采用高精度ADC实现模拟信号的高精度采集;运用FPGA将同步采集后的数据存储至SRAM中;采用USB2.0总线与PC机实现数字信号的传输;利用LabVIEW的强大数据处理能力较好的实现数据分析。1系统整体方案双通道高速同步数据采集系统的总体设计构成如图1所示。该系统主要由以下各模块组成:ADC信号采集模块、FPGA控制模块和LabVIEW上位机数据处理模块。其基本工作原理为:FPGA通过高性能ADC同步采集控制,实现双通道高速同步采集,并缓冲整理数据至SRAM中;USB经由FPGA控制读取SRAM中数据并发送至PC中;LabVIEW实现数据运算,实现完整的信号分析过程。系统从软硬件两方面进行协调设计保证了整体设计的可靠性和实时性。2系统的硬件设计2.1FPGA控制模块本设计采用Altera公司的EP4C22F来实现数据采集系统的硬件逻辑控制。该芯片有着近74kB的总RAM存储空间和多达153可分配I/O管脚,为本系统搭建提供了便利。本系统中的逻辑控制主要分为:AD采样时序控制、数据的SRAM缓冲存储和CY7C68013发送控制。FPGA控制模块如图2所示。2.2A/D转换电路的设计作为采集系统的最前端,A/D转换器对整个系统的精度起到了决定性的作用。本系统采用AnalogDevicesInc(ADI)公司的A/D转换芯片AD7903,构建双通道高速同步数据采集系统的采集平台。AD7903作为一款双通道16bit的逐次逼近型模数转换器(ADC),具有1MSPS的转换速率。该芯片内部集成有两个16-bit的高速ADC和一个多功能串行端口接口(SPI),其SPI兼容串行接口可实现多个ADC在菊花链工作模式下连结到单个三线式总线上。基准电压(VREF)由独立于电源电压的外部基准设定。因此,AD7903在通信系统、数据采集、医疗仪器等领域中得到了广泛应用。为了减小开发难度、缩短研发时间,选取AD7903工作在CS模式(三线式接口且无繁忙指示)下。该模式可极大地优化编程难度,同时也可以保证数据精度。2.3USB传输接口硬件设计本系统采用CYPRESS公司的USB2.0控制器CY7C68013实现数据的.高速传输。CY7C68013为一款集成了USB2.0收发器的微控制器,其内部集成了USB2.0收发器、增强型8051内核、串行接口引擎SIE、可编程I/O接口以及FIFO等功能组件。其4KB的FIFO存储器设计专用于实现数据的高速传输。芯片的硬件接口模式有端口模式、SlaveFIFO模式和GPIF模式,本系统采用SlaveFIFO模式。在SlaveFIFO模式下,片内FIFO的读写控制与普通FIFO控制方式一致,保证了数据的高速传输。USB数据传输的高速,大数据量传输特性便于LabVIEW对数字信号的运算处理。3系统的软件设计3.1A/D采样时序在CS模式(三线式接口且无繁忙指示)下,CNVx上升沿触发采样转换,输出管脚SDOx强制输出高阻态。在单次转换过程中,时序变化无效,CNVx维持高电平至转换完成,此后AD7903进入数据采样输出阶段并处于关断状态。在采样数据输出阶段中,CNVx保持低电平,SDOx自动输出MSB。以完成转换后的CNVx下降沿为触发信号,在SCKx下降沿逐个输出数据。完成单次的数据输出后,CNVx变为高电平时SDOx重新返回高阻态。3.2SRAM存储控制SRAM数据缓冲模块,旨在与匹配A/D低速的采样数据流和USB的高速传输特性,实现采样数据的缓存和传输。同时,FPGA内部RAM资源的有限性,更加突出SRAM数据缓冲模块的必要性。系统选用ISSI公司的IS64LV25616A,具有低功耗、控制简单和能够实现高速读写等特点。为了实现系统实时性的要求,选用2片SRAM交替读写。控制信号确保在采集过程中写入和读出数据操作独立,其中一个处于写满状态时,数据输出至USB,新采集数据存入另一片。由此反复,构成一个高速FIFO,从而实现采集数据的不间断读写。SRAM控制流程如图4所示。3.3USB控制模块设计在EZ-USB处于SlaveFIFO模式时,芯片摆脱其内部单片机的控制,仅受外部FPGA逻辑电路控制。图给出了FPGA控制SlaveFIFO逻辑状态机制,其描述如图5所示。启动:空闲,等待写时间,跳转状态1;状态1:激活FIFOADR,跳转至状态2;状态2:判断FIFO满标志FLAGB管脚电平,若“假”则跳转状态3,否