基于labview和fpga的虚拟仪器平台设计本科毕业设计.docx
- 文档编号:24923321
- 上传时间:2023-06-02
- 格式:DOCX
- 页数:93
- 大小:2.54MB
基于labview和fpga的虚拟仪器平台设计本科毕业设计.docx
《基于labview和fpga的虚拟仪器平台设计本科毕业设计.docx》由会员分享,可在线阅读,更多相关《基于labview和fpga的虚拟仪器平台设计本科毕业设计.docx(93页珍藏版)》请在冰豆网上搜索。
基于labview和fpga的虚拟仪器平台设计本科毕业设计
基于labview、fpga的虚拟仪器平台开发与设计
摘要
现代生产要求电子仪器品种多、功能强、精度高、自动化程度高,而且要求测试的速度快、实时性好,具有良好的人机界面。
虚拟仪器正好可以实现这些要求。
在电子实验中使用多种仪器,如信号发生器、万用表、频率计、示波器等,如果能把它们都设计成虚拟仪器,利用计算机来提高仪器的集成度,减少实验匹配的仪器的种类、数量和实验室面积,便能从根本上改变实验室的面貌,克服传统测量仪器单一功能的缺点。
本设计正是以这种思想为出发点,以电子技术实验室的真实函数信号发生器、示波器、频率计为蓝本,利用LabVIEW编程来设计虚拟函数信号发生器、虚拟存储示波器、虚拟频率计,并将其合并在一个虚拟平台上面,能够分别实现虚拟仿真函数信号发生器、存储示波器、及频率计的功能,实现真正意义上的虚拟仪器平台。
其虚拟平台上面的函数信号发生器可以产生正弦波、三角波、方波三种波形,并能够实现波形频率从1Hz到2MHz可调,峰峰值从0.1V到8.0V可调,实时性很好;示波器能正确的显示波形,并能实现频率和幅值的可调;频率计可以对0HZ到99.99KHZ的信号进行频率的测量。
本设计利用RS-232串口进行数据的传输,实现了LabVIEW与FPGA的通信。
同时对仿真信号的生成与控制做了详细的分析,以及对设计中的问题进行了深入的探讨。
本设计旨在找到一个能够改革教学实验室的有效途径。
关键词:
虚拟仪器,LabVIEW,RS-232,FPGA
THEDESIGNOFVIRTUALINSTRUMENTSPLATFORMBASEDONLABVIEWANDFPGA
ABSTRACT
Modernproductionrequireselectronicinstrumentationvarietymany,strongfunction,highprecision,highdegreeofautomation,andhighspeed,goodreal-timeintesting,goodman-machineinterface.VirtualInstrumentscanmeetpreciselytheserequirements.Avarietyofinstrumentsareusedintheelectronicexperiments,suchassignalgenerator,multimeter,frequencymeter,oscilloscope,etc.Ifweareabletodesignthemtovirtualinstruments,improvetheintegrationofinstrumentsusingcomputerandreducethetypeandnumberofinstrumentsmatchedtoexperimentsandthespaceoflaboratory,thenwecanchangethefaceofthelaboratoryfundamentallyandconquertheshortcomingsofsinglefunctionofthetraditionalmeasuringinstruments.
Thedesignofthisthinkingisthestartingpointofelectronictechnologytotherealfunctionofthelaboratorysignalgenerator,oscilloscope,frequencymeterbasedontheuseofLabVIEWprogrammingtodesignthevirtualfunctionsignalgenerator,virtualstorageoscilloscope,thevirtualfrequencymeter,andcombinedinavirtualplatform,toachievethevirtualsimulationfunction,respectively,signalgenerator,oscilloscope,andfrequencyoffunctions,therealizationofthetruesenseofthevirtualinstrumentplatform.Itsvirtualplatformfortheabovefunctionsignalgeneratorcanproducesinewave,trianglewave,squarewavethree,andbeabletoachievethewaveformfrequencyfrom1Hzto2MHzAdjustablepeakpeakadjustablefrom0.1Vto8.0V,averygoodreal-time;oscilloscopewaveformdisplaycorrectly,andtoachieveanadjustablefrequencyandamplitude;0HZCymometercan99.99KHZsignaltothefrequencymeasurements.
ThedesignoftheuseofRS-232serialportfordatatransmission,therealizationoftheLabVIEWandFPGAcommunication.Atthesametime,thegenerationofsimulationandcontrolsignalstodoadetailedanalysis,aswellasdesignissuesindetail.Thedesignofareformaimedatfindinganeffectivewayofteachinglaboratory.
KEYWORDS:
VirtualInstrument,LabVIEW,RS-232,FPGA
前言
虚拟仪器的出现就是仪器发展史的一场革命,代表仪器发展的方向和潮流,对科学技术的发展和工业生产的进步产生了巨大的推动作用。
虚拟仪器技术是测试领域的一种新的思想和方法,它的出现是测试仪器技术和测控系统的一个新的里程碑。
虽然是新兴的仪器仪表技术,但由于其具备许多区别于传统仪器的突出优点,可以由用户自行设计定义,灵活变换参数,随着计算机技术特别是软件技术和仪器技术的进步而飞速发展,因此使现代测控的系统更灵活、更紧凑、更经济、功能更强大,从而在国内外各个领域得到了越来越广泛的应用。
特别在电子测量和自动化控制领域,虚拟仪器技术得到了巨大的发展。
虚拟仪器是一种功能意义上的测量和控制仪器,是具有仪器功能的软件、硬件的组合。
它充分利用计算机技术,在基本的硬件支持下,通过调用相应的软件模块来完成各种传统仪器的功能。
本文从探索研究的角度出发,对虚拟仪器的系统构成、实现手段和开发方法进行了研究。
在此基础上,研究开发了基于LabVIEW开发平台的虚拟仪器平台,通过计算机串口把LabVIEW发送的控制指令送到GW48实验箱FPGA的RS-232接收引脚,经过FPGA对控制指令的处理,实现对虚拟平台上面相应虚拟仪器的调用,对不同的虚拟仪器应做不同的处理:
如,虚拟频率计,当其接收到开始工作的信号后,将其频率和占空比,通过RS-232发送引脚,发送给计算机上面的LabVIEW,LabVIEW通过对串口进行读操作,将读到的结果转换成数值,并将其在虚拟频率计的界面上面显示,结果较为满意。
在开发虚拟仪器的同时,掌握了LabVIEW编程语言和开发技术及标准,对虚拟仪器的构成、实现手段和开发方法有了一定的认识。
由于虚拟仪器技术在国内尚未普及,针对传统教学仪器缺乏或陈旧、教学方式呆板、学生实验使用多台仪器,实验准备烦琐,支持维护困难、实验室设备更新,硬件更新费时费力的等情况。
把虚拟仪器引入教学是一种必然趋势。
本文试图探索出一条适合我国国情的虚拟仪器的途径,做到花钱少,具有较高的性价比,以在教学实验领域进行推广。
第1章
绪论
§1.1虚拟仪器的背景
虚拟仪器涵盖了数字信号处理、虚拟仪器技术等多方面知识。
本文所开发的虚拟仪器平台就是在信号技术、计算机技术、电子技术高速发展的背景下,利用美国NI公司的虚拟仪器开发平台——LabVIEW进行设计开发的,它可以快速方便地实现信号的采集、显示、分析、储存、读取和输出。
§1.1.1数字信号处理技术
在科学研究和生产过程中,经常要对许多客观存在的物体或物理过程进行观测。
这些客观存在的事物包括了大量标志本身所处时间空间特征的数据和“情报”,这就是该事物的“信息”。
人们为了某一特定的目的,从浩瀚的信息中把所需要的部分提出来,以达到观测某一本质问题的目的。
这种对信息的表达形式称之为“信号”,信号是某一特定信息的载体。
信号传输理论与技术的不断发展使信号处理技术的出现成为必然。
在科学和工程技术领域中,常常需要对信号进行处理。
信号处理就是对数据进行所需要的变换或按约定的规则进行运算,使之更便于对它们进行分析、识别和使用。
信号的处理包括对信号的监测、滤波、时域分析、频域分析,调制等等。
信号分为模拟信号和数字信号,在对模拟信号进行处理时,既可以使用模拟系统也可以使用数字系统。
使用数字系统处理模拟信号时,需要先将模拟信号转化为数字信号,即模数转化(A/D),然后用数字系统进行处理,得到一个处理后的数字信号,再经过数模转化(D/A),得到所需的模拟信号。
§1.1.2虚拟仪器技术
由于电子技术、计算机技术、软件技术、网络技术的高度发展及其在电子测量技术与仪器上的应用,新的测试理论、新的测试方法、新的测试领域及新的仪器结构不断出现,许多方面已经突破传统的仪器概念,电子测量仪器的功能和结构己经发生了质的变化。
在这种背景下,八十年代末美国率先研制了虚拟仪器(VirtualInstruments)。
虚拟仪器就是利用现有的计算机加上特殊设计的仪器硬件和专用软件,形成既有普通仪器的基本功能,又有一般仪器没有的特殊功能的高档、低价的新型仪器。
虚拟仪器利用个人计算机强大的图形环境和在线帮助功能,建立虚拟仪器面板,完成对仪器的控制、数据分析与显示。
代替传统仪器,改变了传统仪器的使用方式,提高仪器的功能和使用效率,同时大大降低了仪器的价格,使用户可以根据自己的需要定义仪器的功能。
用于虚拟仪器的开发环境目前有两大类:
一是文本式的编程语言,如VisualBasic,VisualC++、LabWindow/CVI等,另一类是图形化编程语言,具有代表性的有LabVIEW,HPVEE。
其中影响最大的要数LabVIEW(LaboratoryVirtualInstrumentEngineeringWorkbench,实验室虚拟仪器工程平台)语言,被称为“仪器仪表界面”,是专为数据采集与仪器控制、数据分析和数据表达而设计的开发软件[1]。
§1.2本课题研究的意义
§1.2.1设计的依据及意义
虚拟仪器(VirtualInstrumention)是基于计算机的仪器。
计算机和仪器的密切结合是目前仪器发展的一个重要方向。
虚拟仪器实际上是一个按照仪器需求组织的数据采集系统。
虚拟仪器的研究中涉及的基础理论主要有计算机数据采集和数字信号处理。
目前在这一领域内,使用较为广泛的计算机语言是美国NI公司的LabVIEW。
目前,在大多数院校的实验教学中,常用的仍然是功能固定的台式仪器,主要有存储示波器、函数信号发生器、频率计、实验箱、电源等。
对于一个高等院校而言,进行实验教学最少需要配备30套设备,每套造价近万元,其负担是可想而知的。
更由于电子设备更新快,时间一久,进行正常的实验对于好多院校都是一个困难。
另外,台式机操作复杂,调试困难,受干扰程度高,在教学中不易受学员接受。
而采用虚拟仪器教学实验系统,首先,仪器使用软件实现,我们可以把以上所说的几种仪器集成在一个系统中,运用不同切换过程,可以同时实现教学的目的。
本课题利用LabVIEW软件和FPGA的通讯在计算机屏幕上实现虚拟仪器平台面板,此虚拟仪器平台上包括函数信号发生器、存储示波器和频率计仪器,用户可以通过鼠标对操作面板的按钮、开关和按键,进行上述仪器的功能切换并设置各种工作参数,来控制和操作相应的仪器。
测量和分析结果可以从虚拟仪器面板上读出。
用户在屏幕上通过虚拟仪器面板对仪器的操作如同在真实仪器上的操作一样直观、方便、灵活。
利用虚拟仪器开设综合性、创新型实验,使理论教学与实践更好的紧密结合,教学更生动、更形象,全面提高学生工程素质。
同时还可以激发学生的实验兴趣,使学生的实验技能、创新能力得到显著提高。
由于此仪器平台具有多台仪器的功能,实验所需仪器的占地面积被减小,相应的实验准备过程被大大的简化。
函数信号发生器、频率计和存储示波器作为实验课程上必备的实验仪器,本课题设计虚拟仪器平台比传统的更加灵活,节约成本。
教师在教学过程中不需要在一台真实的仪器前操作,只需在电脑上即可完成仪器的演示。
虚拟仪器的教学更好的结合了理论与实践相结合,使学生的软件与硬件技能同步提高,虚拟仪器软硬件上模块化的设计使学生在学习的方式上更加灵活,也容易掌握。
由此可见,就课程的开设和学生的实际情况来讲虚拟仪器教学是可行的,虚拟仪器平台的设计对于我们日后教学是有一定的意义的。
§1.2.2国内外发展状况
早在八十年代,随着NI旗航产品LabVIEW的诞生,NI就提出“软件就是仪器的口号”,开辟了“虚拟仪器技术”的崭新测量概念。
从九十年代开始,国内一些大学在实验教学领域相继开展了虚拟仪器系统的研究与开发工作。
目前,我国部分高校还正在开展虚拟仪器的研究工作,重点在于研制具有自主知识产权的虚拟仪器软件平台,并开发响应的虚拟仪器设备。
2003年10月和2004年1月NI分别联合吉林大学和华中科技大学创建LabVIEW实验室;2004年12月清华大学与美国国家仪器公司在精密仪器和机械系新建虚拟仪器联合教学实验室。
LabVIEW作为一种模块化、图形化程序设计工具具有图形化程序设计编程简单、直观、开发效率高、测试系统开发完整等优点。
在国内外,航天、航空、通信、汽车、半导体、自动控制和生物医学等世界范围的众多领域内得到广泛应用使得非专业人员进行虚拟仪器开发变得容易。
在虚拟仪器的硬件构成中,数据采集卡的性能是最重要的。
由于PCI总线传输速率高,数据吞吐量大,因此基于PCI总线的数据采集卡成为设计的主流。
但是由于数据采集卡价格昂贵,且教学实验波形精确度要求不高,也可采用基于NiosⅡ与LabVIEW的函数波形发生器设计,即采用FPGA结合微处理器的形式。
DDS部分功能由FPGA来实现,微处理器用于完成控制功能,再运用SOPC技术基于FPGA芯片将处理器、存储器、I/O等系统需要的模块集成到一起,软硬件可裁减,并具备在系统可编程的功能,可大大简化系统电路,提高系统集成度。
§1.3关于LabVIEW
§1.3.1开发环境LabVIEW
孤立的计算机硬件和I/O接口设备均无法完成测试任务,软件技术在自动测试系统的研制与开发中正在起着越来越重要的作用。
LabVIEW编程语言是美国最大的虚拟仪器制造商NI公司推出的一种基于G语言(GraphicsLanguage)的虚拟仪器软件开发工具。
LabVIEW是“实验室虚拟仪器工程平台(LaboratoryVirtualInstrumentEngineeringWorkbench)”的缩写,用于LabVIEW设计的虚拟仪器可脱离LabVIEW开发环境,用户最终看见的是和实际硬件仪器相似的操作面板。
LabVIEW是一个工程软件包。
1986年,美国国家仪器公司(NationalInstruments)开发研制出它是基于苹果公司的Macintosh微机的最早版本。
之后,该公司不断推出各种操作系统的LabVIEW版本[2]。
它们的出现开创了虚拟仪器的仪器研究新方法。
§1.3.2选择LabVIEW的原因
选择LabVIEW开发测试和测量应用程序的一大决定性因素是其开发速度。
通常,使用LabVIEW开发应用系统的速度比其他编程语言快4~10倍。
这一惊人速度背后的原因在于LabVIEW易用易学,它所提供的工具使创建测试和测量应用变得更为轻松。
LabVIEW的具体优势主要体现在以下几个方面:
1.提供了丰富的图形控件,并采用图形化的编程方法,彻底把工程师们从复杂枯涩的文本编程工作中解放出来。
2.内建的编译器在用户编写程序的同时就在后台自动完成了编译。
因此用户在编写程序的过程中如果有语法错误,它会被立即显示出来。
3.由于采用数据流模型,它实现了自动的多线程,从而能充分利用处理器尤其是多处理器的处理能力。
4.通过DLL、CIN节点、ActiveX、.NET或MATLAB脚本节点技术,可以轻松实现LabVIEW与其他编程语言混和编程。
5.通过应用程序生成器可以轻松地发布EXE、动态链接库或安装包。
6.LabVIEW提供了大量的驱动与专用工具,几乎能与任何接口的硬件轻松连接。
7.LabVIEW内建了600多个分析函数,用于数据分析和信号处理。
8.NI同时提供了丰富的附加模块,用于扩展LabVIEW在不同领域中的应用,例如实时模块、PDA模块、FPGA模块、数据记录与监控(DSC)模块、机器视觉模块与触摸屏模块等[3]。
第2章系统的构想与方案设计
§2.1上位机与下位机
上位机是指:
人可以直接发出操控命令的计算机,一般是PC,屏幕上显示各种信号变化(液压,水位,温度等)。
下位机是直接控制设备获取设备状况的的计算机,一般是PLC/单片机之类的。
上位机发出的命令首先给下位机,下位机再根据此命令解释成相应时序信号直接控制相应设备。
下位机不时读取设备状态数据(一般模拟量),转化成数字信号反馈给上位机。
简言之如此,真实情况千差万别不离其宗。
上下位机都需要编程,都有专门的开发系统。
在概念上控制者和提供服务者是上位机,被控制者和被服务者是下位机,也可以理解为主机和从机的关系,但上位机和下位机是可以转换的。
两机如何通讯,一般取决于下位机。
下位机一般处于底层控制,上位机可以编程后,传入下位机或者集中管理下位机,下位机在有存储控制程序的情况下,可脱离上位机工作。
在本设计中,通过在PC上操作LabVIEW的编写的人机交互界面,发送控制指令控制FPGA,作为上位机。
而FPGA通过解析上位机发送的控制指令,来判断让哪一个模块工作,作为下位机[4]。
对于FPGA上面的其中一个模块为频率计,其首先接收的LabVIEW编写的人机交互界面发出的控制信号,将其转换,判断控制信号,并将某一控制信号控制的信息发送给LabVIEW的编写的人机交互界面,将其结果进行显示。
这种情况下:
对于频率计和LabVIEW的编写的人机交互界面两者之间的关系是互为上机位和下机位。
§2.2DDS的工作原理
直接数字频率合成技术是根据奈奎斯特取样定理,从连续信号的相位Φ出发将一个信号取样、量化、编码,形成一个信号函数表,存于ROM中。
合成时,通过改变相位累加器的频率控制字,来改变相位增量,而相位增量的不同将导致一个周期内取样点的不同,从而改变频率[5]。
在采样频率不变的情况下,通过改变相位累加器的频率控制字,将这种变化的相位/幅值量化的数字信号通过D/A变换及LPF(Low-passFilter低通滤波器)即可得到合成的相位变化的模拟信号频率。
图2-1DDS的基本结构图
DDS的基本结构如图所示,主要由相位累加器、波形ROM、DAC以及低通滤波器等组成。
N位相位累加器在取样时钟的控制下与频率控制字K所决定的相位增量相加;相位累加器的高位输出作为波形ROM的地址,实现波形相位到幅值的转换;波形数据经DAC转换成模拟量,通过滤波器输出相对平滑的波形。
本设计就是运用DDS技术做的函数信号发生器。
§2.3方案论证
§2.3.1虚拟频率计的方案
用LabVIEW软件为开发平台,在LabVIEW程序中把控制参数(低位,高位,频率和占空比的切换)发送到串口上,FPGA通过RS-232接收控制指令,低位,高位,频率和占空比的切换在FPGA中处理后将相应的信息发送到RS-232,LabVIEW的编写的人机交互界面通过对RS-232串口进行读操作,处理完成后,将处理完的信息在LabVIEW的编写的人机交互界面上面进行显示。
此方案的优点是:
人机交互界面与FPGA之间进行通信时所需发送数据量少,减轻了串口的负担。
采用全双工的通信方式,FPGA与PC机之间可以同时进行收、发数据。
此方案的设计思想如图2-2。
图2-2虚拟频率计流程图
§2.3.2虚拟存储示波器的方案
首先在FPGA上面对信号进行采样,之后将采样后得到的数据通过RS-232串口发送给PC,在LabVIEW软件编程中,首先对RS-232串口进行读操作,将读到的结果经过一A\D转换成波形数据,并将其在前面板上面显示出来。
此方案的设计思想如图2-3。
图2-3虚拟存储示波器流程图
此方案的优点是:
FPGA往RS-232串口发送的是信号采集完的数据,大大降低了串口发送的数据量,提高了串口的发送速度。
此方案采用的是半双工的工作方式,FPGA只负责发送数据,PC机只负责接收数据。
其工作流程一目了然。
§2.3.3虚拟函数信号发生器的方案
方案一:
用LabVIEW软件为开发平台,在LabVIEW程序中进行各个波形数据的采集并把数据发送到串口上,FPGA通过RS-232接受波形数据,串行数据在FPGA中处理后经过一D/A转换后在示波器上显示结果。
此方案通过串口发送的是波形数据。
设计思想如图2-4。
图2-4方案一流程图
方案二:
用LabVIEW软件为开发平台,在LabVIEW程序中把各个波形的波形参数(频率,频段,峰峰值)发送到串口上,FPGA通过RS-232接受波形指令,波形参数在FPGA中处理后运用DDS技术产生波形经过一D/A转换后在示波器上显示结果。
此方案通过串口发送的是波形指令。
设计思想如图2-5。
图2-5方案二流程图
方案一发送的是波形数据,根据设计要求生成的最高频率为2Mhz,当2Mhz时最少需要采样四个点,每个点都是8Bit,因此需要最低的串口传送速率为64Mbit/s。
优点是FPGA方面不需要太多的编程,只要一个串口接收模块即可;缺点是串口需要传输大量数据。
方案二发送的是波形指令,此方案不需要在LabVIEW中采样产生波形数据,是把波形数据直接作成ROM表的形式,当把波形指令发送出来以后,FPGA根据波形参数通过DDS技术产生信号波形。
优点是串口传输只需要发送很少数据;缺点是在FPGA里产生波形受ROM表里波形数据限制,易失真。
通过上述对两个方案的比较及RS-232串口传输最大速率(20Mbit/s)的限制,考虑到波形发生的实时性,本设计采用方案二。
把LabVIEW与FPGA结合起来,以发送波形指令的方式控制产生
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 labview fpga 虚拟仪器 平台 设计 本科 毕业设计
![提示](https://static.bdocx.com/images/bang_tan.gif)