基于LABView的虚拟示波器设计.docx
《基于LABView的虚拟示波器设计.docx》由会员分享,可在线阅读,更多相关《基于LABView的虚拟示波器设计.docx(41页珍藏版)》请在冰豆网上搜索。
![基于LABView的虚拟示波器设计.docx](https://file1.bdocx.com/fileroot1/2022-12/30/e6069d0c-b2df-4706-a82e-206e9532396a/e6069d0c-b2df-4706-a82e-206e9532396a1.gif)
基于LABView的虚拟示波器设计
摘要
虚拟仪器是现代测量技术和计算机技术相结合的产物,标志着自动测试与电子测试仪器领域技术发展的一个崭新方向.随着信息技术和计算机技术的高速发展,数字信号处理作为一门新兴的学科,其重要性日益在各个领域的应用中体现出来。
本文介绍了利用LabVIEW图形编程语言进行虚拟仪器开发的方法,设计了一种基于PC机声卡的虚拟示波器,说明了虚拟仪器在现代测试领域中的重要地位以及其广阔的发展前景.从某种意义上说,“软件就是仪器”。
关键词 LabVIEW,虚拟仪器,示波器
ThedesignofvirtualwavedisplayerbasedonLabVIEW
Abstract
Virtualinstrumentistheproducethatmergesthecomputertechnologyandmeasurementtechnique.Itstandsforabrandnewdevelopmentdirectoryinthefieldofauto-measurementandelectronicmeasurement。
Withtherapiddevelopmentofinformationtechnologyandthecomputertechnology,thedigitalsignalprocessingtakesanemergingdiscipline,itsimportancedisplaysdaybydayineachdomainapplication.Thisarticleintroduceshowtodevelopvirtualinstrumentsusinggraphprogramminglanguage-LabVIEW,designsavirtualsignaldisplayerbasedonPCandexplainstheimportantpartandwidedevelopmentprospectsofvirtualinstrumentinmodernmeasurementtechniquefield.Inasense,“Thesoftwareisaninstrument”.
Keywords LabVIEW,virtualinstrument
不要删除行尾的分节符,此行不会被打印
千万不要删除行尾的分节符,此行不会被打印。
在目录上点右键“更新域”,然后“更新整个目录”。
打印前,不要忘记把上面“Abstract”这一行后加一空行
第1章绪论
1.1虚拟仪器的概述
虚拟仪器是计算机技术和传统的仪器仪表技术相结合的产物,它是在以计算机为核心的硬件平台上,由用户设计和定义其功能,具有虚拟面板.虚拟仪器技术具有高效、易用、开放、灵活、更新快、功能强大、性价比高、用户定义等诸多优点.目前在我国应用的虚拟仪器开发平台主要有美国NI公司的LabVIEW及其相应组件和Agilent公司的HP-VEE,其中NI的LabVIEW系列产品在我国使用比较广泛.LabVIEW是当前用于数据采集、信号处理和虚拟仪器开发的一个标准工具,而且是一个基于图形化编程语言的虚拟仪器软件开发工具,设计者可利用它方便快捷地建立自己的虚拟仪器程序而无需复杂的程序代码编写.它适用于多种操作系统,用LabVIEW设计的虚拟仪器程序可以脱离LabVIEW开发环境,最终用户看见的是和实际的硬件仪器相似的操作面板
1.1.1什么是虚拟仪器
所谓虚拟仪器,就是在通用计算机为核心的硬件平台上,由用户设计定义、具有虚拟面板、测试功能由测试软件实现的一种计算机仪器系统。
使用者用鼠标点击虚拟面板,就可操作这台计算机系统硬件平台,就如同使用一台专用测量仪器一样。
虚拟仪器的“虚拟”二字主要包含以下两个方面的含义:
第一,虚拟仪器的面板是虚拟的。
虚拟仪器面板上的各种“控件”与传统仪器面板上的各种“器件”所完成的功能是相同的。
如由各种开关、按键、显示器等实现仪器电源的:
“通”、“断”;被测信号的“输入通道”、“放大倍数”等参数的设置;测量结果的“数值显示”、“波形显示”等。
传统仪器面板上的器件都是“实物”,而且是由“手动”、“触摸”、来进行操作的,而虚拟仪器面板控件是外形与实物相象的“图标”,每个图标的“通”、“断”、“放大”等,对应着相应的软件程序。
这些软件已经设计好,我们只需选用代表该种软件程序的图形“控件”即可。
因此,设计虚拟仪器前面板,就是在前面板设计窗口中摆放所需的图标,然后对图标的属性进行设置。
第二,虚拟仪器测量功能是通过对图形化软件流程图的编程来实现的。
以PC计算机为核心组成的硬件平台支持下,通过软件编程来实现仪器的功能的。
因为可以通过不同测试功能软件模块的组合来实现多种测试功能,所以,在硬件平台确定后,就有“软件就是仪器”的说法。
1.1.2虚拟仪器的构成
虚拟仪器从构成要素上讲,由计算机、应用软件和仪器硬件等构成;从构成分式上讲则由以DAQ板和信号调理为仪器硬件而组成的PC-DAQ测试系统,或已GPIB,VXI,Serial和Fieldbus等标准总线仪器为硬件组成的GPIB系统、VXI系统、串口系统和现场总线系统等多种形式。
虚拟仪器的构成如图1.1所示。
图1.1虚拟仪器构成图
第一,基于数据采集卡的虚拟仪器,是以信号调理电路、数据采集卡(DAQ)及PC机为仪器硬件平台,采用PCI或ISA计算机总线,将DAQ直接插入PC机的相应标准的总线扩展插槽,因此,这种虚拟仪器又叫PCI-DAQ/PCI插卡式虚拟仪器。
第二,基于串行总线仪器的虚拟仪器,是由Serial标准总线仪器及PC机为仪器硬件平台,包括符合RS-232/RS422标准的PLC和单片机系统。
第三,基于通用接口总线GPIB接口的虚拟仪器,是以GPIB接口仪器、GPIB接口卡及PC机为仪器硬件平台,GPIB仪器具有独立的仪器操作界面,可以脱离计算机使用,也可以通过标准GPIB电缆连接计算机实施程序控制。
第四,基于VXI仪器的虚拟仪器,是以VXI(VMEbusextensionforinstrumentation)标准总线仪器模块及PC机为仪器硬件平台,由主机箱、控制器和仪器模块构成。
VXI控制器包括嵌入式PC控制、嵌入式工作站控制器和外置工作站控制器,可根据测试功能的不同要求来选用。
第五,基于PXI仪器的虚拟仪器,它是以PXI(PCIextensionforinstrumentation)标准总线仪器模块及PC机为仪器硬件平台,PXI总线方式是在PCI总线内核技术上增加多板同步触发总线和参考时钟技术规范和要求形成。
标准的PXI模块化仪器系统有8个插槽,还可与CompactPCI交互操作,可与GPIB或VXI集成,组成大规模、多用途系统。
第六,基于现场总线设备的虚拟仪器,是以Fieldbus标准总线仪器及PC机为仪器硬件平台。
无论上述哪种形式的虚拟仪器,都是通过应用软件将仪器的模块化功能硬件与各类计算机相结合的,其中基于GPIB、VXI、PXI的方案主要适合构成大型高精度集成测试系统;PCI-DAQ/PCI、串行口方案主要适合构成普及型的廉价测试系统;现场总线方案主要适合构成大规模的网络测试系统。
如测试任务需要,也可将上述几种方案结合构成混合测试系统。
1.1.3虚拟仪器的优点
1.性能高。
虚拟仪器技术是在PC技术的基础上发展起来的,所以完全"继承"了以现成即用的PC技术为主导的最新商业技术的优点,包括功能卓越的处理器和文件I/O,使用户在数据高速导入磁盘的同时,就能实时进行复杂的分析。
此外,不断发展的因特网和越来越快的计算机网络使得虚拟仪器技术展现其更强大的优势。
2.扩展性强。
得益于NI软件的灵活性,只需更新计算机或测量硬件,就能以最少的硬件投资和极少的、甚至无需软件上的升级即可改进用户的整个系统。
在利用最新科技的时候,用户还可以把它们集成到现有的测量设备,最终以较少的成本加快产品上市时间。
3.开发时间少。
在驱动和应用两个层面上,高效的软件构架能与计算机、仪器仪表和通信方面的最新技术结合在一起。
NI设计这一软件架构的初衷就是为了方便用户的操作,同时还提供了灵活性和强大的功能,使用户轻松地配置、创建、发布、维护和修改高性能、低成本的测量和控制解决方案。
4.集成。
虚拟仪器技术从本质上说是一个集成的软硬件概念。
随着产品在功能上不断趋于复杂,工程师们通常需要集成多个测量设备来满足完整的测试需求,而连接和集成这些不同设备总是要耗费大量的时间。
虚拟仪器软件平台为所有的I/O设备提供了标准的接口,帮助用户轻松地将多个测量设备集成到单个系统,减少了任务的复杂性。
1.1.4虚拟仪器的发展现状
虚拟仪器技术目前在国外发展很快,以美国国家仪器公司(NI公司)为代表的一批厂商已经在市场上推出了基于虚拟仪器技术而设计的商品化仪器产品。
在美国虚拟仪器系统及其图形编程语言,已作为各大学理工科学生的一门必修课程。
美国的斯福坦大学的机械工程系要求三、四年级的学生在实验时应用虚拟仪器进行数据采集和实验控制.
当今虚拟仪器的系统开发采用的总线包括传统的RS232串行总线、GPIB通用接口总线、VXI总线,以及已经被PC机广泛采用的USB串行总线和IEEE1394总线(即Firewire,也叫做火线)。
世界各国的公司,特别是美国NI公司,为使虚拟仪器能够适应上述各种总线的配置,开发了大量的软件以及适应要求的硬件(插件),可以灵活的组建不同复杂程度的虚拟仪器自动检测系统。
传统仪器有复杂的工艺问题和知识产权问题,发达国家的传统仪器市场已具有相当规模。
而虚拟仪器是一个全新的领域,大力发展虚拟仪器技术可以略过传统仪器的发展阶段,迅速进入虚拟仪器发展阶段,与国外大公司处于同一起跑线,形成跨越式发展。
目前,虚拟仪器技术在中国越来越受到人们重视,研究高潮方兴未艾,应用范围越来越广,虚拟仪器技术必然会有突飞猛进的发展。
1.1.5虚拟仪器的发展趋势
NI公司提出的“软件即仪器”,引发了仪器概念的革命性改变,而随着计算机通讯技术的发展,虚拟仪器逐渐向网络化方向发展,研究人员又提出了“网络即仪器”的概念。
降低仪器支持和维护成本的技术,将成为虚拟仪器市场的主流技术之一。
随着个人电脑的小型化,虚拟仪器也将朝小型化、大众化方向发展,将会出现个人能随身携带的分析仪器,打造出个人“拎着走的实验室”。
复用是成熟工程领域的一个基本特征,使用经过时间检验的标准零部件,可使常规的设计问题直接利用现成的解决方案来解决,避免了项目开发时的重复设计,从而大幅度地降低开发成本,提高生产效率和产品质量。
虚拟仪器系统的设计也正在朝着这个方向发展。
随着自动化系统的设计复杂化、大型化和智能化,虚拟仪器软件的设计可复用性、较好的稳定性、对应用对象的宽适应性和用户的可维护性,已是工业控制领域的重要研究方向,虚拟仪器构件库的建立、构件自动组装工具的开发,能够使普通用户组装出符合要求的虚拟仪器系统。
1.1.6图形化编程语言LabVIEW
本文所选用的软件LabVIEW是美国NI仪器公司的创新软件产品,LabVIEW是一种程序开发环境,由美国国家仪器(NI)公司研制开发的,类似于C和BASIC开发环境,但是LabVIEW与其他计算机语言的显著区别是:
其他计算机语言都是采用基于文本的语言产生代码,而LabVIEW使用的是图形化编辑语言G编写程序,产生的程序是框图的形式。
1.1.7什么是LabVIEW
LabVIEW是NI公司研制的图形编程虚拟仪器系统,主要包括数据采集、控制、数据分析、数据表示等功能。
它提供一种新颖的编程方法,即以图形方式组装软件模块生成专用仪器。
LabVIEW由面板、流程方框图、图标/连接器组成。
其中,面板是用户界面,流程方框图是虚拟仪器源代码,图标/连接器是调用接口。
流程方框图包括输入/输出部件、计算部件和子虚拟仪器部件,它们用图标和数据流的连线表示;I/O部件直接与数据采集板、GPIB板或其它外部物理仪器通信;计算部件完成数学或其它运算与操作;子虚拟仪器部件调用其它虚拟仪器。
1.1.8LabVIEW的主要特点
LabVIEW软件工具的特点可归纳为:
1.直观、易学易用。
与VisualC++、VisualBasic等计算机编程语言相比,图形化编程工具LABVIEW有一个重要的不同点:
不采用基于文本的语言产生代码行,而使用图形化编程语言G编写程序;产生的程序是框图的形式,用框图代替了传统的程序代码。
因而可在很短的时间内被掌握并应用到实践中去,特别适合硬件工程师、实验室扶术人员、生产线工艺技术人员的学习和使用。
2.通用编程系统。
LABVIEW的功能并没有因图形化编程而受到限制,依然具有通用编程系统的特点。
LABVIEW有一个可完成任何编程任务的庞大的函数库。
该函数库包括数据采集、GPIB、串口控制、数据分析、数据显示及数据存储等。
LABVIEW也有传统的程序调试工具,如设置断点、以动画方式显示数据及其通过程序的结果、单步执行等,便于程序的调试。
LABVIEW的动态连续跟踪方式,可以连续、动态地观察程序中的数据及其变化情况,比其他语言的开发环境更方便、更有效。
3.模块化。
LABVIEW还有一个特点是模块化,体现在两个方面。
首先,LABVIEW中使用的基本节点和函数等就是一个个小的模块,可以直接使用;另外,由LABVIEW编写的程序——即虚拟仪器模块(VirtrualINSTRUMENT,VI),除了作为独立程序运行外,还可作为另一个虚拟仪器模块的子模块(即子VI)供其他模块程序使用。
1.1.9LabVIEW调试与运行
调试在一个工程中十分重要,在LabVIEW中调试是十分方便的。
在LabVIEW的运行环境中,有一种特有的调试手段,它可以实时显示数据流,它可使用户更加清楚地观察程序运行的每一个细节,为查找错误,修改和优化程序提供了有效的手段和依据。
下面简要介绍一下LabVIEW程序的调试技术。
1.找出语法错误
如果一个VI程序存在语法错误,则在面板工具条上的运行按钮将会变成一个折断的箭头,表示程序不能被执行。
点击箭头,LabVIEW将弹出错误清单窗口,点击其中任何一个错误,选用Find功能,则出错的对象就会变成高亮。
2.执行程序高亮
在LabVIEW的工具条上有一个画着灯泡的按钮,这个按钮叫“高亮执行”按钮。
点击这个按钮使该按钮图标变成高亮形式,再点击运行按钮,VI程序就以较慢的速度运行,没有被执行的代码用灰色显示,执行后的代码用高亮显示。
3.断点与单步执行
为了查找程序中的逻辑错误,我们可使框图程序逐个节点地执行。
使用断点工具可以在程序的某一地点中止程序执行,用探针或单步方式查看数据。
4.数据探针
我们可以用探针工具来查看当框图程序流经某一根连接线时的数据值。
从Tools工具模板选择探针工具,再用鼠标左击希望放置探针的连接线。
第2章示波器的原理
2.1模拟示波器
模拟示波器采用的是模拟电路(示波管,其基础是电子枪)电子枪向屏幕发射电子,发射的电子经聚焦形成电子束,并打到屏幕上。
屏幕的内表面涂有荧光物质,这样电子束打中的点就会发出光来。
2.1.1示波器的基本结构
示波器的规格和型号较多,但所有的示波器所具有的基本结构都相同,大致可分为:
示波管(又称阴极射线管)、X轴放大器和Y轴放大器(含各自的衰减器)、锯齿波发生器等,见图2-1所示。
图2-1示波器的基本结构
1.示波管
示波管是示波器的核心部件,它主要包括电子枪、偏转系统和荧光屏三部分,这三部分全部被密封在高真空的玻璃外壳内(如图2-2所示)。
电子枪有灯丝、阴极、控制栅极、第一阳极和第二阳极共五部分组成。
灯丝通电后加热表面涂有氧化物的金属圆筒(即阴极),使之发射电子。
控制栅极是一个套在阴极外面的金属圆筒,其顶端有一小孔,它的电位比阴极低,对阴极发射出来的电子起减速作用,只有初速度较大的电子才可能穿过栅极顶端的小孔,进入加速区的阳极。
因此控制栅极实际上起控制电子流密度的作用。
调整示波器面板上的“亮度”旋纽,其实就是调节栅极电位改变飞出栅极的电子数目,飞出的电子数目越多,荧光屏上亮斑就越亮。
从栅极飞出来的电子再经过第一阳极和第二阳极的加速与聚焦后打到荧光屏上形成一个明亮清晰的小圆点。
偏转系统是由两对相互垂直的电极板组成。
电子束通过偏转系统时,同时受到两个相互垂直方向的电场的作用,荧光屏上小亮点的运动轨迹就是电子束在这两个方向运动的叠加。
图2-2示波管结构图
2.X、Y轴电压放大器和衰减器
由于示波管本身的X及Y偏转板的灵敏度不高(约0.1~1mm/V),当加在偏转板上的信号电压较小时,电子束不能发生足够的偏转,屏上的光点位移较小,不便观测。
这就需要预先将该小电压通过电压放大器进行放大。
衰减器的作用是使过大的电压信号衰减变小,以适应轴放大器的要求,否则放大器不能正常工作,甚至受损。
3.锯齿波信号(扫描信号)发生器
锯齿波信号发生器的作用就是产生周期性锯齿波信号(图2-3)。
将锯齿波信号加在X偏转板上,可以证明,此时电子束打在荧光屏上的亮点将向一个方向作匀速直线运动。
经过一个周期后,荧光屏上的亮点又回到左侧,重复运动。
如果锯齿波的频率较大,由于荧光材料具有一定的余辉时间,在荧光屏上能看到一条水平亮线。
图2-3锯齿波信号
2.1.2示波器的扫描原理
将一正弦电压信号加到Y轴偏转板上,即Uy≠0,若X轴偏转板上为零电压信号,则荧光屏上的光点将随着正弦电压信号作正弦振荡。
若Y轴上的电压信号频率较快,则屏上只出现一条亮线。
要直观地看到正弦波信号随时间的变化波形,必须将屏上光点在X方向(即时间方向)上“拉开”,这就要借助与锯齿波信号的作用。
将锯齿波信号加到X偏转板上,此时示波器内的电子束将既要在y方向按正弦电压信号的规律作正弦振荡,又要在x方向作匀速直线运动,y方向的正弦振荡被“展开”,屏上光点留下的轨迹是一正弦曲线。
锯齿波信号完成一个周期变化后,屏上光点又回到屏幕的左侧,又准备重复以前的运动。
这一过程称为扫描过程,图2-4是这一过程的图解原理。
图中假设加在Y偏转板上的电压信号为待测正弦电压信号,其频率与加在X偏转板上的锯齿波信号的频率相同,并将一个周期分为相同的四个时间间隔,Uy和Ux的值分别对应光点在y轴和x轴偏离的位置。
将Uy和Ux各自对应的投影交汇点连接起来,即得被测电压波形。
完成一个波形后的瞬间,屏上光点立刻反跳回原点,并在荧光屏上留下一条“反跳线”,称为回归线。
因这段时间很短,线条比较暗,有的示波器采用措施将其消除。
上面所讨论的波形因Uy和Ux的周期相等,荧光屏上出现一个正弦波。
当fy=nfx,n=1,2,3,…时,荧光屏上将出现1个、2个、3个、…稳定的波形。
图2-4扫描过程
2.2数字示波器
数字示波器是数据采集,A/D转换,软件编程等一系列的技术制造出来的高性能示波器。
数字示波器一般支持多级菜单,能提供给用户多种选择,多种分析功能。
还有一些示波器可以提供存储,实现对波形的保存和处理。
2.2.1数字示波器的基本原理
数字示波器是由取样储存、读出显示和系统控制三大部分组成,它们之间通过数据总线、地址总线和控制总线相互联系和交换信息,以完成各种测量功能。
数字示波器的基本组成框图如图2-5所示。
图2-5数字示波器的基本组成框
系统控制部分
系统控制部分由键盘、只读储存器(ROM)、CPU及I/O接口等组成。
在ROM内写有仪器的管理程序,在管理程序的控制下,对键盘进行扫描产生扫描码,接受使用者的操作,以便设定输入灵敏度、扫描速度、读写速度等参数和各种测试功能。
取样储存部分
取样储存部分主要由输入通道、取样保持电路、取样脉冲形成电路、A/D转换器、信号数据储存器等组成。
取样保持电路在取样脉冲的控制下,对被测信号进行取样,经A/D转换器变成数字信号,然后存入信号数据存储器中。
取样脉冲的形成受触发信号的控制,同时也受到CPU控制。
取样和储存过程如图2-6所示。
读出显示部分
读出显示部分由显示缓冲存储器、D/A转换器、扫描发生器、X放大器、Y放大器和示波管电路组成。
它在接到读命令后,先将储存在显示缓冲储存器中的数字信号送D/A转换器,将其重新恢复成模拟信号,然后经放大后送示波管,同时扫描发生器产生的扫描阶梯波电压把被测信号在水平方向展开,从而将信号波形显示在屏幕上,读出和显示过程如图2-7所示。
图2-6取样和储存过程图2-7读出和显示过程
2.2.2数字示波器的特点
一般可以将数字示波器分为数字存储示波器(DSO)、数字荧光示波器(DPO)和采样示波器。
数字示波器的特点大致归纳为以下11点:
1数字示波器通过模数转换器(ADC)把被测电压转换为数字信息。
它捕获的是波形的一系列样值,并对样值进行存储,存储限度是判断累计的样值是否能描绘出波形为止。
随后,数字示波器重构波形。
2可以稳定、明亮和清晰地显示任何频率的波形。
3对重复的信号而言,数字示波器的带宽是指示波器的前端部件的模拟带宽,一般称之为3dB点。
对于单脉冲和瞬态事件,例如脉冲和阶跃波,带宽局限于示波器采样率之内。
4数字存储示波器能够持久地保留信号,可以扩展波形处理方式。
5信号实时在离散点采样,采样位置的信号电压转换为数字值,这些数字值称为采样点。
样值每秒(S/s)。
6DSO使用串行处理的体协结构来捕获、显示和分析信号;相对而言,DPO为完成这些功能采纳的是并行的体系结构,提供了高速率的波形采集率,它增加了证明数字系统中的瞬态事件的可能性。
7DSO显示部分更多基于光栅屏幕而不是基于荧光。
模拟示波器依靠化学荧光物质。
DPO使用完全的电子数字荧光,其实质是不断更新的数据库。
8如果需要正确采集频率远远高于示波器采样频率的信号,那么数字采样示波器是一个不错的选择。
这种示波器采集测量信号的能力要比其他类型的示波器高一个数量级。
9采样示波器在采样门电路之前没有衰减器/放大器,所以不能对输入信号进行缩放。
所有时刻的输入信号都不能超过采样桥满动态范围。
因此,大多数采样示波器的动态范围都限制在1V的峰值-峰值。
而数字存储和数字荧光示波器却能够处理50到100伏特的输入。
10采样示波器的安全输入电压大约只有3V,相对而言,其他示波器可以高达500V录。
2.3虚拟示波器
模拟信号经同轴电缆进入采集卡的输入通道,经过前置滤波电路、衰减电路、可变增益的放大电路,将信号处理成A/D转换器可以处理的标准电平,经过A/D采样量化转化成计算机可以处理的数字信号并缓存到卡上的存储器。
其支持软件通过PC机的PCI总线接口控制模拟通道的阻抗匹配、放大器的增益选择、启动A/D转换及转换结束的识别,并将采集数据以DMA的方式传输到计算机内存,同时对数据信号进行分析处理、显示、存储及打印传输等。
声卡数据采集流程如图2-8所示:
。
图2-8声卡数据采集流程图
该实验中设计的虚拟示波器是基于美国国家仪器公司(NI)生产的labVIEW软件,在PC机上,将声卡作为数据采集卡,利用LabVIEW中的声音处理函数和信号处理和分析函数,对声卡中的输入信号进行采集,波形显示,参数测量和频谱分析,实现示波器的基本功能。
第3章系统的硬件设计
3.1声卡
该仪器设计中,我选用PC机上的声