虚拟示波器开发软件的比较

时间:2022-07-25 03:54:16

虚拟示波器开发软件的比较

【摘要】虚拟示波器是虚拟仪器的一个重要代表,其采用计算机基本的虚拟技术,用来模拟通用示波器的面板操作和处理功能,完成信号采集、调理、分析及显示等功能。既有通用示波器的功能,又有滤波,频谱分析,波形储存调用的特点,成本低廉且灵活,有很大的发展空间。本文根据计算机软件开发平台在虚拟示波器方面的应用,对Labview软件,MATLAB软件,Visual Basic软件,JAVA软件的优缺点进行详细的比较。

【关键词】Labview软件;MATLAB软件;Visual Basic软件;JAVA软件;优缺点

1.引言

传统示波器是电子工业、科学研究和教学实验领域中一种必备的仪器,并且都在这些领域中占有重要的地位。在高速发展的现代科技技术下,对传统测控仪器提出了新的技术要求,主要包括智能化、自动化、多样化等等[1]。传统仪器跟其他传统测控仪器一样,越来越不能满足这些新技术的要求,与此同时,新仪器的开发对开发商与用户都带来了更大的挑战。基于上述原因,新型的测控仪器设备的出现是当务之急,虚拟仪器这个概念变得不再陌生。

虚拟仪器的开发基于强大的计算机软件和硬件,把传感器技术,自动化控制技术等有效的融合在一起[2]。软件设计平台的灵活性,依据用户不同的特殊需求创建出人机友好操作界面,实现并取代各类特殊、昂贵的测试仪器的功能。

实现用户友好操作界面的软件操作平台有很多,例如,Labview软件,MATLAB软件,Visual Basic软件,JAVA软件等,本文将对实现虚拟示波器用户操作界面的开发性软件进行比较。

2.虚拟仪器的发展

2.1 国外发展状况

近年来,世界各国的虚拟仪器公司开发了不少的虚拟仪器开发软件,方便了开发商利用这些开发软件组建自己的虚拟仪器或测试系统,并编制测试软件,最具影响力的是NI公司的Labview和Labwindows/CVi开发软件,美国HP公司的HP-VEE和HPTIG平台软件,美国Tektronix公司的Ez-Test和Tek-TNS软件以及HEM Data公司的Snap-Master平台软件等都是国际上公认的优秀虚拟仪器开发平台[3]。从1988年陆续有虚拟仪器产品面市,当时有五家制造商推出30种产品。此后,虚拟仪器产品每年成倍增加,到1994年底,虚拟仪器制造厂已达95家共生产1000多种虚拟仪器产品,销售额达2.93亿美元,占整个仪器销售额73亿的40%。美国是虚拟仪器的诞生地,也是全球最大的虚拟仪器制造国,生产虚拟仪器的主要厂家有HP公司目前生产100多种型号的虚拟仪器,Tektroflix公司目前生产约80多种型号的虚拟仪器。

2.2 国内发展状况

国内虚拟仪器的开发和研究起步相对比较晚,清华大学,重庆大学,西安交大以及东方震动和噪声技术研究等高校和公司对虚拟仪器的产品和设计平台以及NI产品做了大量的研究工作,所研究和开发的结果在某些方面都得到了很好的应用,比较突出的是重庆大学测试中心所研究的虚拟仪器,目前,部分院校的实验室也引入了虚拟仪器系统,包括上海复旦大学,上海交通大学,华中科技大学等[4]。于此,又开发了一批新的虚拟仪器系统用于教学和科研,其中华中科技大学机械学院所开发出的Inventor可重构虚拟实验台、深圳蓝津信息技术有限公司开发出的DRVI快速可重组虚拟仪器平台等影响力比较大,中国农业大学的研究人员利用虚拟仪器开发平台开发了用于精密播种机性能检测的实验室自动化系统。山东大学医学院基于虚拟仪器技术研究了胸双极立体心电图及其三维可视。

2.3 未来的发展趋势

虚拟仪器正在持续且迅速地发展,它即将取代测量技术在传统领域的各类仪器,使仪器的功能和技术性能方面具有了灵活性和经济性,因而更适应当代科学技术迅速发展和科学研究所提出的更高更新的测量需求[5]。并且随着计算机技术、仪器技术和网络通信技术的不断完善,虚拟仪器技术也会在向网络化方向发展,即基于网络的虚拟仪器。网络技术和虚拟仪器技术相结合,产生了基于网络的虚拟仪器,使用的网络化虚拟仪器,可以在任何地点,任何时间获取测试的数据,因此图像化编辑平台的发展将带动和完善虚拟仪器的发展。国内专家预测未来的几年内我国将有50%的仪器为虚拟仪器,国内将有大批企业使用虚拟仪器系统对生产设备的运行状况进行实时监测。

3.几种虚拟示波器常用开发环境的特点

3.1 基于Labview的虚拟示波器

Labview是一种基于图形编程语言的可视化优秀开发平台,它与传统编程语言最大的区别是使用图形语言,以框图的形式编写程序[6]。它与VisualC++、visual basic、LabWindows/CVI等编程语言不同,是使用图形化程序设计语言G,而不是基于文本语言的程序代码,用方框图代替了传统的程序代码,一个Labview程序主要包括前面板、框图程序、图标/接线端口3部分[7]。为用户提供一个便捷、轻松的设计环境,利用它设计者可以像搭积木一样,轻松组建一个测量系统或数据采集系统,并可以任意构建仪器面板,而无须进行任何繁琐的计算机程序代码的编程,从而可以大大简化程序的设计。

在设计虚拟示波器时,程序包括数据采集,波形显示,信号处理,波形存储和回放几个模块。因而硬件部分的主要功能就是采集外部的信号,可以是PCI、USB、DAQ等数据采集装置,然后是信号调理,目的就是完成信号缓冲、放大、滤波等功能[8],Labview开发平台自带的函数具有强大的信号处理功能,充分发挥Labview的优势所在。在它的前面板上可以非常直观地显示出旋钮,开关,波形等示波器应有的界面设置,参数设置,可以根据开发者的想法自行定义,具有很强的灵活性[9],真正的操控系统的是后面板,建立功能模块,元器件的连接,按键功能的实现等等,模块化的实现使虚拟示波器的功能更加完善。

3.2 基于MATLAB的虚拟示波器

MATLAB是Matrix和Labortaty前三个字母的缩写,意思是“距阵实验室”[10]。是一套功能十分强大的计算机辅助和设计教学软件,MATLAB具有以下的主要功能:数值计算功能,符号计算功能,图形处理功能及可视化功能,可视化建模及动态仿真功能。

基于MATLAB平台设计的虚拟示波器可以充分发挥它的数据分析功能,不仅方便了实验研究,也可以为控制系统的设计与优化提供了有效的途径[11]。基于MATLAB的虚拟示波器硬件系统主要是完成数据采集系统的设计,主要有MCU、数字I/O、A/D、数据通信接口,以及电源部分组成。而对计算机串口以及数据输入的控制,由MATLAB软件的仪器控制工具箱中的函数来完成。通过调用MATLAB的数据采集,画图程序来完善虚拟示波器的功能。MATLAB是很好的数据分析处理软件,而将其与Labview相结合编程可以极大的提高系统的数据采集、分析、故障诊断的能力,具有很强的技术提升空间。

3.3 基于Visual Basic的虚拟示波器

Visual Basic简称VB,是Microsoft公司推出的一种Windows应用程序开发工具。在界面设计、文件处理、多媒体应用、数据访问等方面提供了有力的帮助,具有易懂、易学的优点。对于虚拟示波器开发而言,VB在数据处理和图形显示方面不如Labview。在使用VB开发工业测量与控制系统应用软件时,需要对待测量信号进行实时采集、显示、以及实时处理等VB并不擅长。对此类应用程序的开发,最为理想的解决方案是将VB的图形用户界面开发及其他方面的优势和LabVIEW在数据采集、显示与处理方面的优势结合起来[12],互相取长补短,从而开发出功能更加强大的测控软件系统。

MATLAB与VB的结合主要有两种方式。其一是在VB中引入MATRIXVB,使得VB可以调用MATLAB函数。其二是将在MATLAB中编写的文件编译成VB可以调用的DLL文件。通过混合编程,利用VB和MATRIXVB,快速、简洁地生成虚拟仪器[13]。

3.4 基于JAVA的虚拟示波器

JAVA是由Sun Microsystems公司推出的JAVA程序设计语言和平台的总称。面向对象的一次编译随处运行的高级语言,提供了强大的网络支持,用Java实现的HotJava浏览器跨平台、动感的Web、Internet计算的功能。推动了Web的迅速发展,常用的浏览器均支持Java applet[14]。基于JAVA开发网络化的虚拟测控系统具有强大的网络和跨平台的优势。

基于JAVA的网络化虚拟示波器,利用socket和多线程技术实现,使用双缓存技术解决了波形显示时的闪烁问题,由系统启动用户界面线程,同时启动不断侦听对客户连接请求的线程。如果侦听到客户的连接请求,就开辟一个新的线程来处理其连接请求。与此同时还要查询数据是否已经传送完毕,一旦完成便要通知用户界面线程更新界面。

除了上述的几种开发平台外,还有C++ Bulider,Visual ,VC等都可以是结合多种软件的虚拟仪器开发平台,另外国内也有一些虚拟仪器开发系统,如吉林大学自主研发的图形化虚拟仪器开发平台LabScene,重庆大学研制的虚拟仪器开发系统VMIDS等等[15]。并在相应领域取得了一定的成果。

4.结束语

在各领域的应用中,虚拟仪器正在取代着传统仪器,它的优势也是显而易见的,它的出现是仪器界的一次革命,具体表现为:智能化程度高,处理能力强;复用性强,系统费用低;可操作性强等等。对于虚拟仪器的设计而言,软件设计是核心,对于每一种虚拟仪器的开发平台都有它自己的特色与缺陷,MATLAB是一款数字处理与图形化处理的强大软件,在设计虚拟示波器时可以发挥它强大的数据处理功能,对于Visual Basic而言,它的缺陷是存在的,但它是一款作为结合型开发软件的好处;利用JAVA的开发的虚拟仪器是现在乃至未来的重要开发平台,它是仪器朝着网络化的发展,就目前而言,Labview是虚拟示波器开发软件的首选,它的图型化编程语言使用户和开发者都能比较容易理解。在实际应用中,我们不仅仅局限于单种软件开发工具,可以将它们结合起来使用,取长补短,各抒其长,会使所开发的虚拟仪器得到更全面的设计。再者在实施方案前,对开发平台进行分析探讨、比较,最终选择适合的虚拟平台,对之后的工作会带来更多的便利。

参考文献

[1]王波.虚拟示波器系统设计与实现[D].苏州大学硕士学位论文,2006.

[2]王维喜.基于声卡的多功能虚拟示波器和虚拟函数发生器设计[D].青岛大学学位论文,2009.

[3]李艳.基于Labview虚拟仪器的设计和应用[D].南京理工大学学位论文,2006.

[4]丁鹏.基于USB数据采集的虚拟仪器的研究和设计[D].西安电子科技大学学位论文,2010.

[5]王美刚.基于声卡的虚拟仪器[D].太原理工大学硕士学位论文,2006.

[6]姜碧琼.基于Labview的虚拟示波器的设计[D].西北农林科技大学学位论文,2008.

[7]朱红林,刘武.基于Labview的虚拟示波器的设计[J].电子工程师.2006.32(11):17-19.

[8]曾秀云.基于虚拟仪器的信号采集与控制系统开发[D].电子科技大学.2010.

[9]朱治国,郑建荣,刘小平等.虚拟仪器及常用开发软件[J].现代仪器,2004,1:28-31.

[10]薛德庆,姚世锋,刘锐,蔡继军.MATLAB在虚拟仪器中的编程应用研究[J].传感器与仪器仪表,2006,22(5-1):157-159.

[11]罗彬,曾岳南,张雪群.基于MATLAB的虚拟示波器设计[J].仪器仪表用户,2006.13(4):107-110.

[12]宋波,陈一民.关于虚拟仪器开发工具的比较与选取[J].国外电子测量技术,2006,25(8):1-5.

[13]戴永彬,关维国.VB和MATRIXVB在虚拟示波器中的应用[J].仪表技术,2004(6):21-22.

[14]白伟能,吉国力,周笋.基于MATLAB和VC++混合编程的ACR仿真系统开发[J].厦门大学学报(自然科学版),2005,44(1):136-138.

[15]成欧.基于以太网接口的网络化虚拟仪器技术研究[D].西安电子科技大学学位论文,2010.

上一篇:大数据时代的互联网金融发展研究 下一篇:基于单片机的红外报警监控系统的设计