基于LabVIEW的音乐喷泉仿真控制系统 第四章 虚拟仪器及LabVIEW介绍
力投到系统设计中, 而不再是具体软件细节的推敲上[14]。
虚拟仪器是在计算机基础上通过增加相关硬件和软件构建而成的、具有可视化界面的仪器。虚拟仪器彻底打破了传统仪器只能由生产厂家定义,用户无法改变的局面,从而使得任何一个用户都可以方便灵活地用鼠标或按键在计算机显示屏幕上操作虚拟仪器软面板的各种“旋钮”进行测试工作,并可以根据不同的测试要求通过窗口切换不同的虚拟仪器,或通过修改软件来改变、增减虚拟仪器系统的功能与规模。虚拟仪器具有的这种“可开发性”和“可扩展性”等优越特点使虚拟仪器具有强大的生命力和竞争力。虚拟仪器的开发环境主要有Visual C++、Visual Basic,以及HP公司的VEE会和NI公司的LabVIEW、LabVIEW Windows/CIV等。VC、VB、LabVIEW/CIV虽然是可视化的开发工具,但它们对开发人员的编程能力要求很高,而且开发周期较长。HP-VEE是一个基于图形的虚拟仪器编程环境,拥有较多的用户,缺点是其生成的应用程序是解释执行的,运行速度较慢。LabVIEW是目前国际上唯一的基于数据流的编译型图形编程环境,它把复杂、烦琐、费时的语言编程简化成用简单或图标提示的方法选择功能(图形),并用线条把各种图形连接起来的简单图形编程方式,使得不熟悉编程的工程技术人员都可以按照测试要求和任务快速“画”出自己的程序,“画”出仪器面板,这大大提高了工作效率,减轻了科研和工程技术人员的工作量,因此,LabVIEW堪称是一种极其优秀的仪器软件开发平台。
4.2 虚拟仪器的特点
虚拟仪器仿真模型参数可做任意调整。模型参数可根据要求通过计算机程序随时进行调整、修改或补充,从而能掌握各种可能的仿真结果,为进一步完善研究方案提供了极大的方便。这正是虚拟仪器仿真被称为“计算机实验”的原因。这种“实验”与通常的实物实验比,具有运行费用低、无风险以及方便灵活等优点。系统模型快速求解。借助于先进的计算机系统,人们在较短时间内就能知道仿真运算的结果(数据或图象),从而为人类的实践活动提供强有力的指导。这是通常的数学模型方法所无法实现的。运算结果准确可靠。只要系统模型、仿真模型和仿真程序是科学合理的,那么计算机的运算结果一定准确无误(除非机器有故障)。因此,人们可毫无顾虑地应用虚拟仪器仿真的结果。实物仿真形象直观。把仿真模型、计算机系统和物理模型及实物联结在一起的实物仿真(有些还同时是实时仿真),形象十分直观,状态也很逼真。因而在一些工程技术领域如宇宙航行、核电站控制等发挥了独特的作用。
传统仪器主要由控制面板和内部处理电路组成;而虚拟仪器的硬件技术:卡式仪器,它自身不带仪器面板,必须借助计算机强大的图形环境,建立图形化的虚拟面板,完成对仪器的控制、数据分析和显示。以数据采集卡为例,它通常具
21
基于LabVIEW的音乐喷泉仿真控制系统 第四章 虚拟仪器及LabVIEW介绍
有A/D转换、D/A转换、数字I/O和计数器Q定时器等功能,有些还具有数字滤波和数字信号处理的功能。现在的多功能数据采集卡多采用了“虚拟硬件(Virtual Hardware,简称VH)的技术,它的思想源于可编程器件,使用户通过程序能够方便地改变硬件的功能或性能参数,从而依靠硬件设备的柔性来增强其适用性和灵活性。目前市面上的TU,其采样率和精度都是可变的。由于卡式仪器与计算机结合紧密,能够充分利用已有的计算机资源,较之传统仪器成本更低廉、使用更灵活、性能更强,因此它是一种极具潜力的仪器种类[14]。
4.3虚拟仪器技术在国内外的发展
虚拟仪器技术目前在国外发展很快,从二十世纪70年代的GPIB,到80年代出现的VXI,再到90年代出现的PCI总线为主流产品,直到1997年的NI公司推出了PXI测试平台,目前多种平台共存的状态。
以美国国家仪器公司(NI公司)为代表的一批厂商已经在市场推出了基于虚拟仪器而设计的商品化仪器产品。在美国虚拟仪器系统及其图形编程语言,已作为理工科学生的一门必修课程。美国的斯坦福大学等许多工科类大学的机械工程系、子类专业都要求三、四年级的学生在实验时应用虚拟仪器进行数据采集和实验控制。
近年来,世界各国的虚拟仪器公司开发了不少虚拟仪器开发平台软件,以便使用者用这些公司提供的开发平台软件组建自己的虚拟仪器或测试系统,并编制测试软件。最早和最具影响力的开发软件,是NI公司的LabVIEW软件和Labwindows/CVI开发软件。LabVIEW采用图形化编程方案,是非常实用的开发软件。Labwindows/CVI是为熟悉C语言的开发人员准备的、在windows环境下标准ANSI C开发环境。除了上述的优秀开发软件之外,美国HP公司的HP-VEE和HPTIG平台软件,美国tektronix公司的Ez-Test和Tek-TNS软件,以及美国HEM Data公司的Snap-Master平台软件,也是国际上公认的优秀虚拟仪器开发平台软件[15]。
当今虚拟仪器的系统开发采用的总线包括传统的RS323串行总线、GP-IB通用接口总线、VXI总线,以及已经被PC机广泛采用的USB通用串行总线和IEEE1394总线(即Fire wire,也叫火线)。世界各国的公司,特别是美国的NI公司,为使虚拟仪器能够适应上述各种总线的配置,开发了大量的软件以及适应要求的硬件(插件),可以灵活的组建不同复杂程度的虚拟仪器自动测试、测控系统。
NI是世界上最大的虚拟仪器制造商,从NI的发展规模可以开出虚拟仪器的发展状况,世界500强的企业中有85%的制造控制性企业在应用NI产品,全世界超过5000个实验室在利用LabVIEW和虚拟仪器教学生们使用最新的测量和
22
基于LabVIEW的音乐喷泉仿真控制系统 第四章 虚拟仪器及LabVIEW介绍
设计技术。
在国内已有很多院校的实验室引入了虚拟仪器系统,早期的有上海交通大学、广州暨南大学、华中理工大学、四川联合大学等,目前西安地区近十余所高校引进了虚拟仪器设备,在原有的基础上,开发了一批新的虚拟仪器系统进行教学与科研活动。华中理工大学机械学院工程测试实验室将其开发成果在网上公开展示。四川联合大学的教师给予虚拟仪器的设计思想,研制了“航空电台二线综合测试仪器”将8台仪器集成于一体,组成虚拟仪器系统,使用方便、灵活。清华大学汽车系利用虚拟仪器技术构建的汽车发动机检测系统,用于汽车发动机的出场检验。此外,国内已有几家企业研制PC虚拟仪器。哈尔并工业大学仪器王电子有限责任公司就是其中之一,它的产品已经达到一定得批量。其主要产品有数字存储示波器系列、任意波形发生器及频率计系列、多通道大容量波形记录仪系列。目前,凌华、研华、研祥等诸多工控公司也纷纷踏入到虚拟仪器硬件的行业中来,开发以虚拟仪器开发平台的测控系统。因此有专家预测:未来的几年内我国将有超过50%的仪器为虚拟仪器。国内将有大批企业使用虚拟仪器系统对生产设备的运行状况进行实时检测与监控。虚拟仪器技术的提出与迅猛发展,标志着本世纪自动测试、测控与电子测量仪器领域技术发展的一个重要方向。随着微型计算机的发展,虚拟仪器系统将会逐步取代传统的测试、测控仪器系统而成为测试、测控仪器系统的主流[16]。
4.4 虚拟仪器的发展趋势
随着计算机技术、智能仪器技术和网络通信技术的不断完善,虚拟仪器将向以下四个方向发展:
1)外挂式虚拟仪器
PC-DAQ式虚拟仪器是现在比较流行的虚拟仪器系统,但是,由于基于PCI总线的虚拟仪器在插入DAQ时都需要打开机箱等,比较麻烦,而且,主机上的PCI插槽有限,再加上测试信号直接进入计算机,各种现场的被测信号对计算机的安全造成很大的威胁,同时,计算机内部的强电磁干扰对被测信号也会造成很大的影响,故以USB接口方式的外挂式虚拟仪器系统将成为今后廉价型虚拟仪器测试系统的主流[17]。
2)PXI型高精度集成虚拟仪器测试系统
PXI系统高度的可扩展性和良好的兼容性,以及比VXI系统更高的性价比,将使它成为未来大型高精度集成测试系统的主流虚拟仪器平台[18]。
3) 网络化虚拟仪器
尽管INTERNET技术最初并没有考虑如何将嵌入式智能仪器设备连接在一起,不过NI等公司已开发了通过WEB浏览器观测这些嵌入式仪器设备的产品,
23
基于LabVIEW的音乐喷泉仿真控制系统 第四章 虚拟仪器及LabVIEW介绍
使人们可以通过INTERNET操作仪器设备。根据虚拟仪器的特性,我们能够方便地将虚拟仪器组成计算机网络。利用网络技术将分散在不同地理位置不同功能的测试设备联系在一起,使昂贵的硬件设备、软件在网络上得以共享,减少了设备重复投资。现在,有关MCN方面的标准正在积极进行,并取得了一定进展。由此可见,网络化虚拟仪器的监测和仿真也将具有广泛的应用前景[19]。
4)面对对象的虚拟仪器
第一次将面向对象的方法的使用是基于LabVIEW RT平台的,这种实时变化的图形化编程语言是基于PharLap OS的。它有两个特点。第一,现有的面向对象的LabVIEW代码开发的MS Windows和Linux平台是可重复使用的实时平台,而且它具有高优先级的时间临界的循环。重复使用现有的代码大幅度降低了基于PXI或cPCI平台的复杂的数据采集和控制系统的开发时间。第二,譬如来自National Instruments 的FieldPoint 系统的小的PAC系统,其CPU和存储器是有限的。可是面向对象的方法将专用的类用来整合个子系统和稍大的SCADA系统[20]。
4)动态可重性良好的虚拟仪器
通过研究一般电子设备或系统检测中的规律和共性,分析检测时所需的功能,探讨一种组件式搭建通用化虚拟仪器测控系统的方法,虚拟仪器的动态可重性解决了在测试任务改变或系统更新换代时遇到的二次开发难题。该方法在软件上将数据信息和测试程序分开,引入软件总线和测试数据库对数据信息流进行控制,在硬件上通过建立有效的分层模型,为建立通用型的测试平台打下了良好的硬件基础,可满足不同测试任务的需求。该方法可在被测系统变化时,根据需要进行动态扩展,根据被测系统的特点动态调整系统功能服务,只要接口设备以及测试流程稍作改变,即可用于其它各种电子设备(或系统)的检测维修之中。因此动态可重性的改进必然是虚拟仪器的发展趋势[21]。
24
基于LabVIEW的音乐喷泉仿真控制系统 第五章 基于LabVIEW的音乐喷泉仿真控制系统的设计
第五章 基于LabVIEW的音乐喷泉仿真控制系统的设计
5.1 功能模块的设计与介绍
5.1.1音频信号的产生
前期任务主要是对音乐文件的读取和播放功能的实现,如图5-1,图5-2为简单的音乐播放器的控制面板图和程序图。
图5-1 播放器控制面板图
图5-2 播放器程序图
通过路径选择选择需要播放的WAV格式的音乐文件,利用LabVIEW的
25