基于USB的多通道虚拟频谱分析仪_张俊涛
2011年第12期
仪表技术与传感器
Instrument
Technique
and
Sensor 2011No.12
收稿日期:2011-03-11收修改稿日期:2011-09-01
基于USB 的多通道虚拟频谱分析仪
上海旅游介绍张俊涛,张
(陕西科技大学,陕西西安710021)
话题作文感恩摘要:介绍一种基于USB 技术的多通道虚拟频谱分析仪的设计。系统以FPGA 为主控芯片,采用多通道A /D 转换器进行数据采集,USB 接口高速传输,LabVIEW 编程来实现频谱分析功能。与传统频谱分析仪相比,具有性能稳定、开发成本低、便于重构等优点。系统支持多通道信号同步采样,可完成三相电压监测,功率谱分析等功能。关键词:多通道;频谱分析;LabVIEW ;FPGA ;USB 中图分类号:TM935.21
文献标识码:A
文章编号:1002-1841(2011)12-0018-03
Multi-channel Virtual Spectrum Analyzer Based on USB
ZHANG Jun-Tao ,ZHANG Chi
(Shaanxi University of Science and Technology ,Xi ’an 710021,China )
Abstract :Design of multi-channel virtual spectrum analyzer based on USB technology was introduced.FPGA is used as the main controller ,USB interface was used for transmission and LabVIEW performances the spectrum analyzer's function.Compared with previous spectrum analyzers ,
there are some advantages in virtual spectrum analyzer ,such as more stable and powerful ,lower cost and more convenient.Besides ,this spectrum analyzer supports multi-channel signal acquisition ,it can simultaneously acquires six signal ,and can complete three-phase voltages ,power spectrum in multi-channel signal system collection and spectral analysis.Key words :multi-channel ;spectral analyze ;LabVIEW ;FPGA ;USB 0
引言
频谱分析仪作为信号分析领域中应用广泛的测试仪器,其主要功能是测量信号的幅度/频率响应,可以完成频谱分析、失真测量、衰减测量、电子组件增益测量等,是从事电子产品研发、生产、检验的重要工具。目前大部分的频谱分析仪仍以硬件电路来实现传统意义上的频谱分析,有着自身无法克服的缺点。为此,设计了一种利用虚拟仪器技术来实现频谱分析功能的多通道频谱分析仪。1
系统总体设计光棍节是几月几日几号
设计采用FPGA 为系统的主控制芯片,完成信号采集、数模转换、数据传输等功能,并在虚拟仪器软件的基础上确定了一种方便可行的频谱分析仪的设计方法
蛋蛋1113非爱勿扰
[1]
系统总体设计框图如图1所示。模拟信号经过前置放大器进行放大后进入A /D 转换器,经过转换得到数字量信号,存入FIFO 缓存区,数据在FPGA 主芯片中进行编排控制,经过USB 接口传送给计算机,最后由LabVIEW 来完成频谱分析的功能
图1系统整体设计框图
2系统硬件设计
系统硬件电路的核心是以Cyclone Ⅱ系列FPGA EP2C35
为主控芯片设计的数据采集卡,如图1所示。数据采集卡的精度和速度直接决定了频谱分析仪的性能。2.1
前置放大电路设计
前置放大电路用于将信号放大到A /D 转换器要求的电压范围。为保证前端放大电路的性能指标,设计采用高频宽带运放AD811芯片为核心设计。AD8113dB 带宽高达140MHz ,并且具有2500V /μs 的速度。
前置放大电路如图2所示,其中JAIN 为信号输入口,U3和U4两个运放设计为反相和同相放大电路,以构成单端输入至差分平衡输入转换电路,以满足A /D 转换器对信号形式的要求。2.2
多通道同步A /D 转换器
系统设计采用AD7656,其内部有6个独立的16位逐次逼近型ADC ,可通过CONVST A /B /C 配置成3对ADC 独立地进行同步采样和转换或者6通道同步采样和转换。每通道最高250KS /s 的采样速率,可以满足高分辨率、多通道、高转换速率和低功耗的要求,如三相电压的测量,电源功率的测量等。
FPGA 对ADC 的控制电路如图3所示。通过程序控制AD7656的CONVSTA /B /C 和BUSY ,当BUSY 为1时,ADC 开始进行数据采集。经过3μs 完成1次数据采集后,
BUSY 为0,依次读取6个通道上的数据,将数据通过IO_D0 IO_D15读入
FPGA 的FIFO 缓存器[2]。2.3
USB 接口
USB 接口芯片选用EZ -USB FX2芯片CY7C68013。
第12期张俊涛等:基于USB 的多通道虚拟频谱分析仪
19
CY7C68013集USB 通信控制引擎和改进的8051内核于一体,方便资源扩展,而且该芯片集成了较大的数据缓存区,利于数据快速传输。系统中USB 设备的供电方式采用自供电和外供电两种方式,一种是主机的电源线+5V 电源,一种是外接的+5V 电源。由于CY7C68013采用+3.3V 供电,所以设计了
以LM1117-3.3V 为核心[3]
的+5 +3.3V 的电压转化电
路。
FPGA 与USB 硬件接口如图4所示。其中D0 D7为数据总线,用于数据传输;INTI 为中断标志,当传输完1组数据时产生1次中断。IFCLK 为外部时钟输入;FIFOADR [
1:0]选择4个FIFO 中的一个,该设计中FIFOADR [1]直接接+3.3V ,FI-FOADR [0]直接接地,选择用EP6传输数据,4倍缓存;FULL 为FIFO 满状态标志,低电平有效;SLWR 为数据写入FIFO 使能,低电平有效;FD [7:0]为8位数据线。
如上所述,系统选择了FIFO 的同步被动模式进行数据传输的方式。在IFCLK 的上升沿,如果SLWR 有效(低电平有效),而数据有满足建立保持时间,数据就被写入FIFO ,同时,若内部控制器发现FIFO 己满,经过大约为10ns 的延时,FULL 标志会被置成有效。2.4
FPGA 端的USB 模块设计
硬件描述语言采用适合复杂数字逻辑电路和系统仿真
图4FPGA 与USB 硬件连接示意图
综合的Verilog HDL ,以Quartus II 为开发平台进行设计。FPGA 程序被编译综合及适配后,将生成的配置文件下载到FPGA 中实现采集系统控制功能。程序采用自上而下的模块化设计方法,包括Flash 模块、A /D 模块和USB 模块,模块之间互相关联并被顶层模块调用。USB 模块负责FPGA 与USB 的通信以及USB 模块和Flash 卡模块之间的数据连接[4]。3系统软件设计3.1
系统程序总体流程
系统程序总体流程如图5所示。系统启动后,设置系统采集频率信息,按照设定的采集频率采集数据并将数据传送给计算机,在LabVIEW 平台上完成信号的处理工作
图5系统程序总体流程图
3.2USB 驱动程序设计
USB 驱动程序处于应用程序和设备端固件之间,使操作系
统识别USB 设备,
并建立起主机端和设备端之间的通讯。VISA (Virtual Instrument Software Architecture )是用来与各种仪器总线进行通信的高级应用程序编程接口(API )。它不受平台、总线和环境的限制,可用来对USB 、GPIB 、串口、VXI 、PXI 及以太网等进行配置、编程和调试。VISA 从3.0版开始支持USB 通信,因此系统利用LabVIEW 的VISA 来对USB 的底层驱动经行开发。
由于系统中的USB 设备属于USB -RAW 类设备,因此需要在NI -VISA 中创建驱动程序,具体步骤如下:
(1)使用Driver Development Wizard (驱动程序开发向导)创建INF 文档;
(2)安装INF 文档,并安装使用INF 文档的USB 设备;(3)使用NI -VISA Interactive Control (NI -VISA 互动控制工具)对设备进行测试。
台风级数
20Instrument Technique and Sensor Dec.2011
USB底层配置正确以后,选择VISA类为USBRaw,计算机会自动刷新选择的USB设备,利用VISAOpen,VISA Close,VISA Write和VISA Read4个节点即可实现和USB设备的双向通信。与USB设备的通信过程分为4个步骤[5]:
(1)由VISA Open函数打开VISA resource name端口指定的USB设备;
(2)通过VISA Write函数向USB设备发送控制命令启动设备工作,USB设备接收到控制命令后开始采集数据并将采集到的数据按要求发送到数据缓冲区;
(3)通过VISA Read函数将数据读出;
(4)通过VISA Close函数关闭设备。
3.3LabVIEW程序设计
工行开户行查询
频谱分析仪的数据分析采用快速傅里叶变换算法(FFT)。FFT变换最基本物理意义在于将时域信号变换为频域信号,在实际数据采集中,数据往往以时域的形式显示出来,经过FFT 变换后,可以十分直观地观察信号所包含的频率信息,这为科学研究提供了极大的方便。该虚拟频谱分析仪中主要是由检查开关程序、频谱分析程序、通道切换程序、波形显示程序和数据存储等程序组成。其中数据处理模块程序及波形显示程序如图6及图7所示
图6数据处理程
序图7波形显示程序
4设计仿真
联机进行仿真,得出频谱相位如图8所示
图8虚拟频谱分析仪仿真结果
由信号频谱图可以直接观察到采集信号的频谱分析,还可以对采集信号在指定频段提取幅值最大的成分频率信号,可输出抽取出的信号波形、频率及相位等,对信号进行谐波分析、计算信号的功率谱、功率谱密度和互功率谱等。由结果图可以看出,设计完成了LabVIEW编程环境下的虚拟频谱分析仪的实现。5结束语
以FPGA为主控芯片的采集系统可实现多路实时稳定的数据采集和预处理,而采用USB传输数据可以
保证较高的带宽和高速稳定的传输速率以及USB本身的便携性,再加上Lab-VIEW强大的信号处理能力,很好地实现了多路频谱分析仪的功能。该系统在LabVIEW软件平台上充分结合FPGA和USB 的特点,将LabVIEW的图形化编程、FPGA可重构性和USB传输的高速稳定便捷性充分结合起来。而在LabVIEW环境下采用NI-VISA作为开发工具进行USB驱动程序的开发则较为容易,不但开发难度较低,而且开发出的系统稳定可靠。
参考文献:
[1]安荣,任勇峰,李圣昆.基于FPGA和USB2.0的数据采集系统.仪表技术与传感器,2009(3):49-51.
[2]于雪磊,赵世平,蔡萌.基于USB和CPLD的高速数据采集系统.仪表技术与传感器,2008(3):49-54.
[3]谭安菊,龚彬.USB2.0控制器CY7C68013与FPGA接口的Verilog HDL实现.电子工程师,2007,33(7):52-55.
[4]THOMAS D E,MOORBY P R.硬件描述语言Verilog.4版.刘明业,蒋敬旗,刁岚松,等译.北京:清华大学出版社,2001.
[5]VISA Help.National Instrument Corporation.2010,370131N-01.
作者简介:张俊涛(1966-),副教授,硕士生导师,主要研究领域为嵌入式系统及应用、信号与信息处理。
E-mail:six.student@sina

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。