虚拟仪器——数字时钟
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊
基于LabVIEW虚拟数字时钟的设计
摘要:本文从虚拟仪器的起源、发展入手,简单介绍虚拟仪器的功能,比较虚拟仪器与传统仪器的不同之后,全面的介绍了虚拟仪器设计技术,并用软件仿真的方法设计了一台虚拟仪器,实现了从数据采集到数据分析的全过程。
虚拟仪器的设计分成两个方面。
硬件方面,本文从最基本的传感器、信号调理开始介绍数据采集过程以及DAQ板卡。
除此之外,本文还介绍了虚拟仪器总线技术,重点为专用于虚拟仪器的VXI总线系统以及PXI总线系统。
软件方面,主要利用现今最有代表性的图形化编辑软件——LabVIEW,并用之模拟从DAQ 板卡中采集到一路带有均匀白噪声的正弦信号,显示其波形,并分析、显示其幅频特性曲线以及相频特性曲线。
另外本文还根据LabVIEW中的子程序,实现了语音信号的录音与播放。
本文还从市场出发对虚拟仪器的配置投资做了具体阐述,指明了构造虚拟仪器平台所需要的投资,为今后的学习工作打下了基础。
并对国内外虚拟仪器的部分应用案例作了介绍,指出虚拟仪器是仪器历史的一次革命。
关键词:虚拟仪器;数据采集;总线;LabVIEW
┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊
引言
仪器是人类认识世界的基本工具,也是信息社会人们获取信息的主要手段之一。
随着信息时代和网络时代的来临,传统仪器已不能满足科技以及社会生产的需要。
仪器已不再是简单的机械或电子设备,而是融合了机械、电子、光学、计算机、材料化学、物理学、化学、生物学、系统工程等学科和先进制造技术的一门综合性技术。
近年来,伴随着计算机技术、软件技术和总线技术的迅猛发展,仪器以及自动测试技术也发生了革命性的变化。
1987年,VXI总线的诞生标志着仪器与自动测试技术发展进入了一个崭新的阶段,虚拟仪器的概念也深入人心,应用领域不断拓展。
本文从理论上简单介绍了虚拟仪器设计技术,并用软件实现了简单的虚拟仪器。
作者对虚拟仪器的研究仅是一个开端,希望能为以后的研究工作做一些铺垫工作。
1 虚拟仪器概述
计算机和仪器的密切结合是目前仪器发展的一个重要方向。
粗略地说这种结合有两种方式,一种是将计算机装入仪器,其典型的例子就是所谓智能化的仪器。
随着计算机功能的日益强大以及其体积的日趋缩小,这类仪器功能也越来越强大,目前已经出现含嵌入式系统的仪器。
另一种方式是将仪器装入计算机。
以通用的计算机硬件及操作系统为依托,实现各种仪器功能。
虚拟仪器(virtual instruments)主要是指这种方式,充分利用现有计算机资源,配以独特设计的软硬件,实现普通仪器的全部功能以及一些在普通仪器上无法实现的功能。
1.1仪器的发展
1.1.1仪器的发展
随着电子技术的发展,仪器的发展经历了四个时期:
1、第一代仪器:模拟仪器。
如指针式万用表、晶体管电压表,它们的基本特征是采用模拟电子技术实
┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊现,采用指针显示结果。
2、第二代仪器:数字化仪器
数字化仪器目前相当普及,如数字电压表、频率计等。
这类仪器将模拟信号的测量转化为数字信号的测量,并以数字方式输出最终结果。
3、第三代仪器:智能仪器
智能仪器内置微处理器,能进行自动测量,具有一定的数据处理能力,可取代部分脑力劳动。
它的全部功能全部都是以硬件(或固化的软件)的形式存在,无论是开发还是应用,都缺乏灵活性。
4、第四代仪器:虚拟仪器
虚拟仪器是现代计算机技术和测量技术相结合的产物,是传统仪器观念的一次巨大变革,是将来仪器发展的一个重要方向。
从1988年开始,陆续有虚拟仪器产品面市。
此后,虚拟仪器产品飞速增加。
从仪器的发展历史可以看出,仪器领域已经历了两次技术革命。
第一次仪器革命是由于数字电子技术的发展引起的,使仪器形态进入了数字化仪器时代;第二次仪器革命是由于微处理器的大量应用引起的,使仪器形态进入了智能仪器时代。
目前,仪器领域正在进行第三次仪器革命,这次革命是由通用计算机硬软件技术的进步引起的,这次仪器革命将使仪器形态进入第四个时期:虚拟仪器时代。
1.1.2 虚拟仪器的发展
虚拟仪器的起源可以追朔到20世纪70年代,那时计算机测控系统在国防、航天等领域已经有了相当的发展。
PC机出现以后,仪器级的计算机化成为可能,甚至在Microsoft公司的Windows诞生之前,NI公司已经在Macintosh计算机上推出了LabVIEW2.0以前的版本。
对虚拟仪器和LabVIEW长期、系统、有效的研究开发使得该公司成为业界公认的权威。
虚拟仪器从概念的提出到目前技术的日趋成熟,体现了计算机技术对传统工业的革命。
大致说来,虚拟仪器发展至今,可以分为三个阶段,而这三个阶段又可以说是同步进行的。
第一阶段,利用计算机增强传统仪器的功能。
由于GPIB总线标准的确立,计算机和外界通信成为可能,只需要把传统仪器通过GPIB和RS-232同计算机连接起来,用户就可以用计算机控制仪器。
随着计算机系统性能价格比的不断
┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊上升,用计算机控制测控仪器成为一种趋势。
这一阶段虚拟仪器的发展几乎是直线前进。
第二阶段,开放式的仪器构成。
仪器硬件上出现了两大技术进步:一是插入式计算机数据处理卡( plug-in PC-DAQ );二是VXI仪器总线标准的确立。
这些新的技术使仪器的构成得以开放,消除了第一阶段内在的由用户定义和供应商定义仪器功能的区别。
第三阶段,虚拟仪器框架得到了广泛认同和采用。
软件领域面向对象技术把任何用户构建虚拟仪器需要知道的东西封装起来。
许多行业标准在硬件和软件领域以产生,几个虚拟仪器平台已经得到认可并逐渐成为虚拟仪器行业的标准工具。
发展到这一阶段,人们也认识到了虚拟仪器软件框架才是数据采集和仪器控制系统实现自动化的关键。
1.2虚拟仪器的分类
虚拟仪器的发展随着微机的发展和采用总线方式的不同,可分为五种类型:一、PC总线——插卡型虚拟仪器
这种方式借助于插入计算机内的数据采集卡与专用的软件如LabVIEW相结合(注:美国NI公司的Labview是图形化编程工具,它可以通过各种控件自已组建各种仪器。
Labview/cvi是基于文本编程的程序员提供高效的编程工具,通过三种编程语言Visual C++,Visual Basic,Labviews/cvi构成测试系统,它充分利用计算机的总线、机箱、电源及软件的便利。
但是受PC机机箱和总线限制,且有电源功率不足,机箱内部的噪声电平较高,插槽数目也不多,插槽尺寸比较小,机箱内无屏蔽等缺点。
另外,ISA总线的虚拟仪器已经淘汰,PCI总线的虚拟仪器价格比较昂贵。
二、并行口式虚拟仪器
最新发展的一系列可连接到计算机并行口的测试装置,它们把仪器硬件集成在一个采集盒内。
仪器软件装在计算机上,通常可以完成各种测量测试仪器的功能,可以组成数字存储示波器、频谱分析仪、逻缉分析仪、任意波形发生器、频率计、数字万用表、功率计、程控稳压电源、数据记录仪、数据采集器。
美国LINK公司的DSO-2XXX系列虚拟仪器,它们的最大好处是可以与笔记本计
┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊算机相连,方便野外作业,又可与台式PC机相连,实现台式和便携式两用,非常方便。
由于其价格低廉、用途广泛,特别适合于研发部门和各种教学实验室应用。
三、GBIB总线方式的虚拟仪器
GPIB技术是IEEE488标准的虚拟仪器早期的发展阶段。
它的出现使电子测量独立的单台手工操作向大规模自动测试系统发展,典型的GPIB系统由一台PC机、一块GPIB接口卡和若干台GPIB形式的仪器通过GPIB电缆连接而成。
在标准情况下,一块GPIB接口可带多达14台仪器,电缆长度可达40米。
GPIB 技术可用计算机实现对仪器的操作和控制,替代传统的人工操作方式,可以很多方便地把多台仪器组合起来,形成自动测量系统。
GPIB测量系统的结构和命令简单,主要应用于台式仪器,适合于精确度要求高的,但不要求对计算机高速传输状况时应用。
四、VXI总线方式虚拟仪器
VXI总线是一种高速计算机总线VME总线在VI领域的扩展,它具有稳定的电源,强有力的冷却能力和严格的RFI/EMI屏蔽。
由于它的标准开放、结构紧凑、数据吞吐能力强、定时和同步精确、模块可重复利用、众多仪器厂家支持的优点,很快得到广泛的应用。
经过十多年的发展,VXI系统的组建和使用越来越方便,尤其是组建大、中规模自动测量系统以及对速度、精度要求高的场合。
有其他仪器无法比拟的优势。
然而,组建VXI总线要求有机箱、零槽管理器及嵌入式控制器,造价比较高。
五、PXI总线方式虚拟仪器
PXI总线方式是PCI总线内核技术增加了成熟的技术规范和要求形成的,增加了多板同步触发总线的技术规范和要求形成的,增加了多板发总线,以使用于相邻模块的高速通讯的局总线。
PXI的高度可扩展性。
PXI具有8个扩展槽,而台式PCI系统只有3~4个扩展槽,通过使用PCI—PCI桥接器,可扩展到256个扩展槽,台式PC的性能价格比和PCI总线面向仪器领域的扩展优势结合起来,将形成未来的虚拟仪器平台。
┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊1.3 与传统仪器的比较
独立的传统仪器,例如示波器和波形发生器,性能强大,但是价格昂贵,且被厂家限定了功能,只能完成一件或几件具体的工作。
因此,用户通常都不能够对其加以扩展或自定义其功能。
仪器的旋钮和开关、内置电路及用户所能使用的功能对这台仪器来说都是固定的。
我们不妨把虚拟仪器与传统仪器加以比较。
比较结果如表1-1所示:
从表1-1中可见,传统仪器与虚拟仪器最重要的区别在于:虚拟仪器的功能由用户使用时自己定义,而传统仪器的功能是由厂商事先定义好的。
从这一意义上讲,那些功能固定的插卡式计算机仪器不能称作虚拟仪器。
而且,没有面向科技与工程人员的图形化开发平台就难以涉及虚拟仪器。
普通的PC有一些不可避免的弱点。
用它构建的虚拟仪器或计算机测试系统性能不可能太高。
目前作为计算机化仪器的一个重要发展方向是制定了VXI标准,这是一种插卡式的仪器。
每一种仪器是一个插卡,为了保证仪器的性能,又采用了较多的硬件,但这些卡式仪器本身都没有面板,其面板仍然用虚拟的方式在计算机屏幕上出现。
这些卡插入标准的VXI机箱,再与计算机相连,就组成了一个测试系统。
VXI仪器价格昂贵,目前又推出了一种较为便宜的PXI 标准仪器。
┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊2 虚拟仪器软件体系
2.1 概述
虚拟仪器技术最核心的思想,就是利用计算机的硬/软件资源,使本来需要硬件实现的技术软件化(虚拟化),以便最大限度地降低系统成本,增强系统的功能与灵活性。
基于软件在VI系统中的重要作用,NI提出了"软件就是仪器(The software is the instrument)"的口号。
VPP系统联盟提出了系统框架、驱动程序、VISA、软面板、部件知识库等一系列VPP软件标准,推动了软件标准化的进程。
虚拟仪器的软件框架从低层到顶层,包括三部分:VISA库、仪器驱动程序、应用软件。
VISA(Virtual Instrumentation software Architecture)虚拟仪器软件体系结构,实质就是标准的I/O函数库及其相关规范的总称。
一般称这个I/O函数库为VISA 库。
它驻留于计算机系统之中执行仪器总线的特殊功能,是计算机与仪器之间的软件层连接,以实现对仪器的程控。
它对于仪器驱动程序开发者来说是一个个可调用的操作函数集。
仪器驱动程序是完成对某一特定仪器控制与通信的软件程序集。
它是应用程序实现仪器控制的桥梁。
每个仪器模块都有自己的仪器驱动程序,仪器厂商以源码的形式提供给用户。
应用软件建立在仪器驱动程序之上,直接面对操作用户,通过提供直观友好的测控操作界面、丰富的数据分析与处理功能,来完成自动测试任务。
虚拟仪器应用软件的编写,大致可分为两种方式:
①用通用编程软件进行编写。
主要有Microsoft公司的Visual Basic与Visual C++、Borland公司的Delphi、Sybase公司的PowerBuilder;
②用专业图形化编程软件进行开发。
如HP公司的VEE、NI公司的LabVIEW 和Lab windows/CVI等。
应用软件还包括通用数字处理软件。
通用数字处理软件包括用于数字信号处理的各种功能函数,如频域分析的功率谱估计、FFT、FHT、逆FFT、逆FHT 和细化分析等;时域分析的相关分析、卷积运算、反卷运算、均方根估计、差分积分运算和排序等。
以及数字滤波等等。
这些功能函数为用户进一步扩展虚
┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊拟仪器的功能提供了基础。
在此,本章简单现今用到最多的面向仪器与测控过程的图像化开发平台LabVIEW。
2.2 LabVIEW简介
LabVIEW (laboratory virtual instrument engineering wokbench——实验室虚拟仪器工程平台)的概念,是直观的前面板与流程图式的编程方法的结合,是构建虚拟仪器的理想工具。
LabVIEW和仪器系统的数据采集、分析、显示部分一起协调工作, 是简化了而又更易于使用的基于图形化编程语言G的开发环境。
前面板是一个传统的仪器概念,而软件前面板其实是自动化的拓展,因为它们保持了传统直观的视觉和感觉效果。
同时,软件前面板创建了一个真正的接口,无论用户使用什么类型的硬件,并且,不像硬件前面板,软件前面板只包含了对于一个应用场合很重要的参数,用户能够很容易地从一个单一前面板控制多台,并把整个系统作为一台虚拟仪器来看待。
流程图式的程序设计与科技工程人员较为熟悉的数据流和方块图的概念是一致的,而且由于流程图与传统程序设计语言的语法细节无关,构建和测试程序就可以少费时间。
使用流程图方法可以实现内部的自我复制,采用前面板、流程图、图标等,用户就对整个系统实现图形化描述,同时,用户还能够重用虚拟仪器,可以随时改变虚拟仪器来满足自己的需要。
LabVIEW集成了很多仪器硬件库,如GPIB/VXI/PXI/基于计算机的仪器、RS232/485协议、插入式数据采集、模拟/数字/计数器I/O、信号调理、分布式数据采集、图像获取和机器视觉、运动控制、PLC/数据日志等。
与传统的编程方式相比,使用LabVIEW设计虚拟仪器,可以提高效率4~10倍。
同时,利用其模块化和递归方式,用户可以在很短的时间内构建、设计和更改自己的虚拟仪器系统。
2.3 LabVIEW应用程序构成
所有的LabVIEW应用程序,即虚拟仪器(VI),它包括前面板(front panel)、
┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊流程图(block diagram)以及图标/连结器(icon/connector)三部分。
前面板是图形用户界面,也就是VI的虚拟仪器面板,这一界面上有用户输入和显示输出两类对象,具体表现有开关、旋钮、图形以及其他控制(control)和显示对象(indicator)。
图4-1所示是一个虚拟示波器的前面板。
显然,并非简单地画两个控件就可以运行,在前面板后还有一个与之配套的流程图。
2.4 用LabVIEW设计虚拟仪器的步骤
LabVIEW编程一般要经过以下几个步骤。
1、总体设计:根据用户需求,进行VI总体结构设计,确定面板布局与程序流程,并保证所使用的虚拟仪器硬件在LabVIEW函数库中有相应的驱动程序。
2、前面板设计:在LabVIEW的前面板编辑窗口内,利用工具模板和控件模板进行VI前面板的设计。
3、方框图编程:在LabVIEW的方框图编辑窗口内,利用工具模板和函数模板进行方框图编程。
4、程序调试:单击前面板编辑窗口或方框图编辑窗口工具条中的运行按钮,执行VI程序;同时可利用LabVIEW工具模板中的断点工具和探针工具调试缩编程序。
3 虚拟仪器的应用
虚拟仪器技术经过十几年的发展,而今正沿着总线与驱动程序标准化、硬/软件模块化、编程平台的图形化和硬件模块的即插即用方向进步。
以开放式模块化仪器标准为基础的虚拟仪器标准正日趋完善,建立在虚拟仪器技术上的各种先进仪器将会层出不穷。
虚拟仪器技术在发达国家的推广应用十分普及,在电子测量领域、过程控制领域,以及与人们的生活息息相关的许多其他领域。
在国内,近年来也开始有了利用虚拟仪器实现检测、控制等功能的例子。
4 结束语
以上从虚拟仪器的起源开始,详细的介绍了虚拟仪器设计技术,主要包括数据采集技术、虚拟仪器总线技术以及虚拟仪器软件体系,最后对虚拟仪器的
┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊应用以及对虚拟仪器的配置做了介绍。
由于实验室条件限制,作者未能真正的从硬件以及软件两方面实现虚拟仪器,本文重点阐述虚拟仪器的设计思想。
并用专用虚拟仪器设计软件LabVIEW 进行仿真。
设计之一为带有均匀白噪声的正弦信号的分析,假设从DAQ板卡中采集到的数据用LabVIEW本身的信号源代替,信号为带有均匀白噪声的正弦信号,并对信号进行处理,主要为幅频特性以及相频特性分析,另外,还加了一些报警功能等。
设计之二实现了语音信号的录音与播放,由此可以看出LabVIEW 的功能之强大。
最后,作者对虚拟仪器的配置投资做了详细的阐述,希望能为以后的研究工作做一些铺垫工作。
参考文献
[1] 赵会兵:虚拟仪器技术规范与系统集成,清华大学出版社、北方交通大学
出版社,2003年8月
[2] 路林吉饶家明:虚拟仪器讲座,《信息技术》,2000年
[3] 陕西海泰电子有限责任公司:VI技术专题介绍
[4] 彭云辉等:VXI总线与虚拟仪器技术,《电子技术应用》,2003年
[5] 杨乐平等:LabVIEW程序设计与应用,电子工业出版社,2001年7月
[6] 美国国家仪器(NI)有限)公司:虚拟仪器(白皮书)
[7] 美国国家仪器(NI)有限)公司: 《LabVIEW7 Express 评估版使用指南》,
2003年4月。