第11卷第6期 太赫兹科学与电子信息学报 VO1.11.NO.6 2013年12月 Journal of Terahertz Science and Electronic Information Technology Dee.,2013 文章编号:2095-4980(2013)06—0977.04 LabVIEW现场可编程门阵列模块数据采集系统仿真 卢 航,高 峰,程 刚 (中国丁程物理研究院电子1二程研究所,四川绵阳621999) 摘 要:现场可编程门阵列(FPGA)在数据采集、信号处理、测量控制等领域发挥着越来越重 要的作用。目前,美国国家仪器(NI)公司已经将其图形化编程语言LabVIEW的应用扩展到了FPGA 开发领域,从而使FPGA的开发变得相对容易和便捷。基于NI公司的CompactRIO系统架构,选 用NI9205模块,利用仿真技术开发了一套数据采集系统,能够对信号进行采集并分析采集信号的 振幅谱和相位谱。该数据采集系统具有一定的实际意义和价值,并可进一步扩展为自动化软件测 试平台。 关键词:LabVIEW;现场可编程门阵列;数据采集 中图分类号:TN919 文献标识码:A doi:10.1 1805/TKYDA201306.0977 Data acquisition system simulation based on LabVIEW FPGA module LU Hang,GAO Feng,CHENG Gang (Institute of Electronic Engineering,China Academy of Engineering Physics,Mianyang Sichuan 62 1 999,China) Abstract:Field Programmable Gate Array(FPGA)plays an increasingly important role in the fields of data acquisition,signal processing and measurement control,etc.NI has already expanded LabVIEW to the development of FPGA,which makes the development of FPGA much easier and more efficient.The data acquisition system based O10-CompactRIO and NI9205 module is developed by using simulation technology,which is able to analyze the amplitude and phase spectrum of the signal acquired.The proposed system bears practical significance and value,and can be further expanded to an automated software testing platform. Key words:LabVIEW;Field Programmable Gate Array;data acquisition 目前对于现场可编程门阵列(FPGA)的开发,主要采用硬件描述语言( ̄ttl Verilog,VHDL等)和专门的开发工具 (如ISE,Quartus II等)。开发者需要对硬件描述语言、开发工具、FPGA的基本结构以及相应的硬件知识具有较深 刻的了解,这就对开发者提出了较高的要求。随着图形化编程语言LabVIEW进入FPGA开发领域,FPGA的开 发变得相对容易,在测量控制等领域的应用也越来越多¨J。 NI公司提供的FPGA设备主要有NI CompactRIO系列、NI FlexlO系列、R系列智能DAQ设备和NI Compact 视觉系统等_2】。其中,NI CompactRIO系列由控制器、CRIO机箱和c系列模块3部分硬件组成,FPGA芯片是 整个CompactRIO系统的核心。CRIO系统的嵌入式控制器上运行实时操作系统(如VxWorks,Pharlap等),在此基 础上开发的实时模块可以通过先入先出(First Input First Output,FIFO)队列或者FPGA VI的前面板控件等来与 FPGA进行通信,同时可以对读取的数据进行分析、处理等;CRIO机箱背板上运行FPGA程序,其负责所有信 号采集以及信号输入、输出等的控制;C系列模块负责所有的外部信号采集等功能,NI公司提供了不同的C系 列模块供用户选择。基于NI CompactRIO平台的应用系统开发分为3个部分,即FPGA开发、RT控制器嵌入式 软件开发和上位机图形接口软件开发等 J。 1 数据采集系统设计 在LabVIEW 8.x以上版本中,可以在开发PC机上仿真运行FPGA模块和Host模块等,从而便于脱离硬件 收稿日期:2012—09 14;修回日期:2012.11.21 基金项目:国防科 局技术基础课题资助项目(Z112011A001) 第6期 卢 航等:LabVIEW现场可编程门阵列模块数据采集系统仿真 979 NI9205采集到的数据读取到实时嵌入式系统模块中,并通过网络传送给上位机模块。实时模块设计时,通过打 开FPGA VI、配置DMA FIFO、运行FIFO、读取FIFO等将数据读人系统中。实时模块的原理图如图4所示。 Fig.4 Diagram of real‘time module 图4实时模块原理图 1.4上位机模块设计 在上位机模块中创建用户操作界面见图5。通过上位机,用户 可以控制数据的采集行为,并且可以观察到所采集信号的波形、信 号的频谱分析情况以及波形的幅值等,同时可以将波形保存到文件 中。在设计中,采用共享变量的方式来实现上位机和下位机之间的 网络通信,从而实现在上位机中控制数据采集行为、采样率等以及 获取下位机传递的采集数据。对采集的波形采用FFT变换f快速傅 里叶变换)获取波形的频谱分析结果,包括波形的振幅谱和相位谱 波形。 1.4.1共享变量 在LabVIEW中,共享变量拥有全局变量的所有性质,并且因 Fig.5 Graphical User Interface 图5上位机用户界面 为其采用了内部的缓冲机制,在不同vI之间传递数据时避免了数据竞争的问题。LabVIEW提供3种类型的共享 变量:单进程共享变量、网络发布共享变量和时间触发型共享变量_5】。网络发布共享变量可以被网络中的不同计 算机访问,因此设计时不需要考虑网络的具体实现,从而使网络通信设计变得非常简便。只需要在共享变量的属 性设置中,将其变量类型设置为“网络发布”,这样就能实现网络通信功能,否则只能被本地的vI访问。共享变 量可以是LabVIEW支持的所有数据类型,甚至是自定义的数据类型,其网络地址由计算机名、项目库和变量名 称共同组成。在LabVIEW中,通过共享变量引擎来发布和管理系统中的共享变量。在设计中,共享变量主要用 于传递采集行为、采集数据和采样率等信息。 1.4.2频谱分析 计算机可以通过离散傅里叶变换(Discrete Fourier Transform,DFT)得到信号的频谱。有限长序列 ( )的离散傅 里叶fDFT)变换为: kn ( )=∑x( )e k=O,1,…,Ⅳ一1 (1) Jv点的DFT变换的计算量与Ⅳ的平方成正比,当.v较大时,计算量太大,进行频谱分析是不切实际的。通 过将Ⅳ点的DFT划分为若干较短的DFT,并利用指数函数的周期性,可以使运算量大幅下降,这就是FFT变换 的基本思想。FFT变换有种类繁多的算法,最常用到的:有基2FFT算法、基4FFT算法、分裂基FFT算法和离散 哈特莱变换等I6]。采用FFT算法可以将DFT的运算效率提高1-2个数量级,这大大推动了数字信号处理技术的 发展。在本设计中,采用FFT变换来计算信号的傅里叶变换,得到采集信号的频谱,进而得出信号的振幅谱和 相位谱。 2 结论 FPGA所具有的并行执行的特点,可以大幅提高数据采集系统的效率和实时性,LabVIEW的并行编程方式 也非常适合进行FPGA开发 J。通过NI公司提供的CompactRIO开发平台,可以方便地利用图形化的编程语言 LabVIEW进行FPGA开发,降低了FPGA开发的难度,从而更方便、快捷地开发出所需的测量与控制系统等 J。 但是基于NI CompactRIO平台的应用开发是LabVIEW图形化编程语言、实时系统和FPGA三者共同开发的结合, 一般LabVIEW开发中的很多编程技巧并不适用,这对开发者是新的挑战。 基于NI CompactRIO平台设计的数据采集系统实现了采集系统所需的基本功能,比如:信号采集、显示、 980 太赫兹科学与电子信息学报 第11卷 保存和频谱分析等。在此设计的基础上添加相应的信号输出的C系列模块,并在FPGA VI、实时嵌入式VI和用 户界面vI中做适当修改,就可以将数据采集系统扩展为一个自动化的测试平台,完成包括软件测试等在内的测 试任务。 参考 文献: ional Instruments.Thorough Understanding of LabVIEW FPGA National Instruments[Z].2006. [1] NatEW Bible[M].BeiJing:Publishing House of Electronics Industry,201 1. [2] CHEN Shuxue.LabVIXiaoping,WANG Wenjie,YI Jiangyi.Feature and De sign of Flows Testing&C0ntr0l System Based on LabVIEW [3] PENG FPGA[J].Industrial control computer,2007,20(5):22-23. Peipei,HE Qiang,HAN Zhuangzhi,et a1.Labview FPGA—Based Data Continuous Transmission between Two Clock Domains[J]. [4] CUIModern Electronics Technique,201 1,34(17):149—152. lity Testing of [5] HE Zhixia.The Researeh and Realization of the Distributed Embedded Real—time System for the DurabiAuto—Switch[D].Shanghai:East China Normal University,2009. Embedded Data Acqui sition and Remote Transmission/Control System Based on [6】 LIU Peng,HUANG Jian.Design ofLabVIEW and ARM[J].Journal of Terahertz Science and Electronic Information Technology,2009,7(5):459—464. n.Accelerate The Process of Embedded System Prototype with LahVIEW FPGA[J].Electronic Products,2006(12) [7] TANG Mi72-75. Lianzhi,XIE Min,ZHANG Jun,et a1.Embedded Software Testing under VI Simulation Environment and its Application[J]. 【8] QIJournal ofTerahertz Science and Electronic Information Technology,2011,9(1):101—102. 作者简介: 卢 航(1983一),男,四川I省雅安市人,硕 士,主要研究方向为软件测试以及FPGA设计 和验证.email:luhl003@163.con. 高 峰(1971一),男,河北省唐山市人,硕士 高级工程师,主要研究方向为软件测试与开发. 程 刚(1970一),男,四川省绵阳市人,硕士 高级T程师,主要研究方向为软件开发. (上接第976页) Multimedia Systems, K O,Heon Y Y.An effective admission control mechanism for variable—bit rate video streams[J J. 【13] Lee1999,7(4):305—31 1. Xie L.The mapping problem of video objects in video server networks[J] Software Journal,f14] Zhou X B,2000,1 1(12):1620-1627. _.随机学习与优化——基于灵敏度的方法【M].北京:清华大学出版社,2011.(CAO Xiren Stochastic learning 【15] 曹希fand optimization--a sensitivity based approach[M].Be ng:Tsinghua University Press,201 1.) 作者简介: 一 士控通sal研制信xh刘究、@网兴生马m络a华尔,il主(.可的u19s要夫t8性c5研.决e—能d1究策u,.分方c男过n.向析 ,程南为和、随昌系优机市统化人系控统等,制在估.理em读计论a博与i、l :奚宏生f1950一),上海市人,教授,博士生导师, 曾担任中国科学技术大学信息学院副院长,在国内 外主要期刊发表论文100余篇,主要研究方向为随 机系统估计与控制、通信网络的性能分析和优化、 Hybrid系统的性能分析与优化、排队网络及离散事 件动态系统的研究.