当前位置:文档之家› 基于LabVIEW的音频信号发生器的虚拟仪器设计

基于LabVIEW的音频信号发生器的虚拟仪器设计

基于LabVIEW的音频信号发生器的虚拟仪器设计
基于LabVIEW的音频信号发生器的虚拟仪器设计

基于LabVIEW的音频信号发生器的虚拟仪器设计

摘要:随着计算机与微电子技术的发展,出现了虚拟仪器。它以软件为核心,把计算机技术和仪器技术完美结合起来,充分应运飞速发展的计算机技术来实现和增强传统仪器的功能。虚拟仪器开创了仪器使用者可以成为设计者的新时代,代表了仪器发展的方向,它已成为21世纪测试技术和仪器技术发展的主要方向。本设计正是顺应仪器发展的趋势,利用图形化编程软件LabVIEW来实现虚拟音频信号发生器,真正做到“软件即硬件”。在硬件上还提出以PC声卡代替昂贵商用数据采集卡,大大降低了生产成本,实现了基于LabVIEW的常用周期信号的单通道和双通道模拟输出,使设计具有广阔的开发价值和应用前景。论文在简要介绍了虚拟仪器概念、研究现状、发展趋势以及编程软件LabVIEW特点的基础上,概述了音频信号发生器的基本原理,分析了声卡的功能及相关设置,并对构成系统的各模块做了详细叙述。

关键词:虚拟仪器;音频信号发生器;LabVIEW;声卡

Virtual Audio Signal Generator Based on LabVIEW

Abstract: With the development of computer and microelectronics technology, virtual instruments appear. Virtual instruments achieve the perfect combination of computer science technology and instrument technology through taking the software as the core technology. Virtual instruments realize and enhance the functions of traditional instruments by developing computer technology .Virtual instruments initiate the new era that the instrument users can be the instrument designers. Virtual instruments represent the direction of instruments and it has become the main direction of technological development in the 21st century testing technology and instruments. This design used graphical programming software LabVIEW to design virtual audio signal generator, exactly adjusting the trend of the instrument development, and truly achieve "software that is hardware". In order to reduce production costs and implement single - channel and dual - channel output of common analog periodic signals based on LabVIEW, the design also bring forward to replace the expensive commercial data acquisition card with PC sound card. It has broad application and development prospect. Based on brief introduction of virtual instruments concept, present conditions ,developing trends and characteristics of programming software LabVIEW ,the basic principles of audio signal generator are outlined , the function and relative configurations of sound card are analyzed, and details of each system composing module is presented.

Key words: virtual instrument; audio signal generator; LabVIEW; sound card

目录

1 绪论 (1)

1.1 课题背景 (1)

1.2 虚拟仪器概述以及国内外研究现状 (1)

1.2.1 虚拟仪器概述 (1)

1.2.2 虚拟仪器国内外研究现状 (3)

1.3 课题的意义 (4)

1.4 课题内容 (5)

2 系统基本功能描述及软硬件概述 (6)

2.1 系统基本功能描述 (6)

2.2 软件LabVIEW概述 (6)

2.2.1 LabVIEW的结构 (7)

2.2.2 LabVIEW模板分析 (8)

2.2.2.1 工具模板(Tools Palette) (8)

2.2.2.2 控制模板(Controls Palette) (9)

2.2.2.3 功能模板(Functions Palette) (10)

2.3 硬件声卡概述 (11)

2.3.1 声卡工作原理 (11)

2.3.2 声卡的工作流程 (12)

2.3.3 声卡主要技术指标 (12)

3 系统整体方案和各组成部分方案设计 (13)

3.1 系统整体方案设计 (13)

3.2 波形发生部分方案设计 (13)

3.2.1 仿真信号发生器Simulate Signal. vi (15)

3.2.2 多谐信号附加噪声的波形发生器Tones and Noise Waveform .vi (17)

3.2.3 公式节点产生仿真信号 (19)

3.3 声音输出部分方案设计 (21)

3.4 图形显示部分方案设计 (22)

3.4.1 Waveform Chart (22)

3.4.2 Waveform Graph (24)

3.4.3 XY Graph (25)

4 音频信号发生器系统的设计与结果显示 (26)

4.1 音频信号发生器前面板的设计 (26)

4.2 音频信号发生器流程图设计 (28)

4.3 音频信号发生器运行结果显示 (31)

4.3.1 单声道音频信号发生器运行结果显示 (31)

4.3.2 双通道音频信号发生器运行结果显示 (32)

5 音频信号发生器系统的调试和结果分析 (34)

6结论.................................................................................................. 错误!未定义书签。参考文献.. (38)

致谢 ........................................................................................................ 错误!未定义书签。

1 绪论

1.1 课题背景

随着现代科学技术的日新月异,测控仪器正经历着一场翻天覆地的变化。现代测控要求仪器不仅能够单独测量某个量,而且希望它们之间能够相互通信,实现信息的共享,完成对被测信号的综合分析与评估。在这方面,传统仪器表现出操作复杂、不易协调等缺陷,微电子技术和计算机网络的进一步发展为许多新的测试技术和测试方法提供了平台,新的测试技术和测试方法在许多方面已经冲破了传统测试仪器的局限性。1986年美国国家仪器公司(National Instrument)首先提出了虚拟仪器的概念,它有别于传统的测试仪器,功能和性能已被不断地提高,如今在许多应用中已成为传统仪器的主要替代方式。PC、半导体和软件功能的进一步更新使得未来虚拟仪器技术的发展将为测试系统的设计提供一个极佳的模式,并且在测量和控制方面都有无以伦比的强大功能和灵活性。它可广泛应用于电子测量、振动分析、声学分析、故障诊断、航天航空、军事工程、电力工程、机械工程、建筑工程、铁路交通、地质勘探、生物医疗、教学及科研等诸多方面。

虚拟仪器的各种优点让用户可以放心地舍弃旧的传统测量设备,接受更新型、以计算机为基础的虚拟仪器系统。由于计算机的性能价格比不断改进,这将使虚拟仪器的价格更为大众化,用户不必再受限于传统仪器的使用范围和昂贵的价格限制,进一步降低使用成本,减少系统的开发费用和系统的维护费用。此外,新型笔记本电脑又把虚拟仪器的便携性和强大功能推向一个新的水平,所有这些必将加快虚拟仪器的发展,使它的功能和应用领域不断增强和扩大,本文设计的虚拟音频信号发生器正是在这个背景下确立的。

1.2 虚拟仪器概述以及国内外研究现状

1.2.1 虚拟仪器概述

计算机与微电子技术的迅猛发展推动了仪器仪表业划时代的革命,其产物从模拟仪器、数字化仪器、智能化仪器到今天的虚拟仪器,无一不显示出计算机与微电子技术在仪器的演化与发展过程中所起的重要作用。任何测量与控制都离不开仪器仪表,传统仪器以专一、固定的形式存在,测量功能及应用范围只能由生产厂家定义并制造。由于技术复杂,所以功能更新缓慢。它的测量仪器模式为:独立的机箱,面板式操作按键和旋钮,测量结果的显示方式以指针、表头或数码管窗口等为主。面对高精度、高速度以及多参数的场合,传统测量仪器其局限性明显地表现出来,此外对许多新的测量要求传统仪器也显得非常吃力。

科学技术的飞速发展,新学科、新技术不断涌现,这给作为信息技术源头和基础

的测量行业带来了新的机遇。由于计算机强大功能的支撑使得各种微机化的新型仪器应运而生,特别是80年代后期,国外提出了一种全新的仪器仪表概念——虚拟仪器。这种概念的提出为测量与控制领域中技术的发展带来了空间,在解决上述传统仪器面临的问题方面轻松自如,同时也使进入信息时代的人们在测量观念上产生了更多的新思想和新概念。

仪器的基本功用就是:信号获取、分析处理与控制和信息指示表达。传统仪器在实现这三大功能时,是以固化的电路结构来完成的,其专业性很强,用户难以改变仪器的测量功能,因此测量功能单一或有限,使用范围狭窄,从采样、分析到数据处理全部由人工操作,效率低,可靠性差。如果由计算机技术支撑的虚拟仪器系统来完成上述三大功能,充分利用计算机的软件和硬件优势,就可实现数据的自动采集、分析和处理,这种方式突破了传统仪器在测量速度、测量功能以及适应范围的局限,并且给用户拓展了想象空间。用户可根据实际测量需求,在基本不改变硬件的情况下,设计出自己所需要的测量系统,达到一机多用的功效。

由上面的描述可定义虚拟仪器如下:所谓虚拟仪器(Virtual Instrument),就是在通用计算机平台上,用户根据需求来定义和设计仪器的测试功能,其实质是充分利用计算机的最新技术来实现和扩展传统仪器的功能。计算机和仪器的密切结合是目前仪器发展的一个重要方向。粗略地说这种结合有两种方式,一种是将计算机装入仪器,其典型的例子就是所谓智能化的仪器。随着计算机功能的日益强大以及其体积的日趋缩小,这类仪器功能也越来越强大,目前已经出现含嵌入式系统的仪器。另一种方式是将仪器装入计算机,以通用的计算机硬件及操作系统为依托,实现各种仪器功能。虚拟仪器主要是指后面这种方式。

虚拟仪器之所以能够得到迅速的发展与应用和它所表现出的优点显然是分不开的,概括说来有如下几点:

(1) 软件为核心。

虚拟仪器所用的硬件很有限,它的功能不是由多少台实际存在的仪器来决定,而主要由用户根据需要所设计的软件决定的。

(2) 灵活方便,用户自己定义。

虚拟仪器打破了传统仪器由厂家定义,用户无法更改的模式,它给用户一个自由发挥才能的天地,用户可根据自己不断变化的需求,方便灵活地重组测量系统,而系统的扩展、升级都可随时进行。周期短,见效快,能充分地满足用户不同场合的需求。

(3) 系统的开放性强。

虚拟仪器具有与其它设备互联的能力,通过网络互联技术或与高档外设的连接,实现对其它外接设备的监测和管理,这种互联能力使测控系统的功能显著增加,应用领域明显扩大。

(4) 性价比高。

虚拟仪器之所以能达到一机多用的功效,是由于它测量功能的设置是极为方便的,技术更新周期短,系统组建时间少,同时由于测量时完全采用数字化,降低了环境干扰和系统误差的影响。在节省了硬件环节的同时,也减少了测试系统的开发成本和维护成本,所以经济实用。

虚拟仪器的优点远不止上述几点,它的实用性、可靠性等均有很大的优势,毫无疑问,虚拟仪器是现代仪器仪表技术发展的必然,也是测控领域不可缺少的有利工具。

1.2.2虚拟仪器国内外研究现状

虚拟仪器技术目前在国外发展很快,以美国国家仪器公司(NI)为代表的一批厂商已经在市场上推出了基于虚拟仪器技术而设计的商品化仪器产品。近年来,世界各国的虚拟仪器公司开发了不少虚拟仪器开发平台软件,使用者利用这些公司提供的开发平台软件组建自己的虚拟仪器或测试系统,并编制测试软件。最早和最具有影响力的开发软件,是NI公司的LabVIEW软件和LabWindows/CVI开发软件。LabVIEW 采用图形化编程方案,是非常实用的开发软件。当今虚拟仪器的系统开发采用的总线包括传统的RS232串行总线、GPIB通用接口总线、VXI总线,以及已经被PC机广泛采用的USB串行总线和IEEE1394总线。世界各国的公司,特别是美国NI公司,为使虚拟仪器能够适应上述各种总线的配置,开发了大量的软件以及适应要求的硬件,可以灵活的组建不同复杂的虚拟仪器子自动检测系统。虚拟仪器的开发厂家,为扩大虚拟仪器的功能,在测量结果的数据处理、表达及其变换方面也做了很多工作,发布了各种软件,建立了数据处理的高级分析库和工具开发库(例如测量结果的谱分析、快速傅里叶变换、各种数据滤波器、卷积处理和相关函数处理、微积分、峰值、阈值检测、波形发生、回归分析、数值运算、时域和频域分析等),使虚拟仪器发展可以组建极为复杂自动检测系统的仪器系统。

在国内已有部分院校的实验室引入了虚拟仪器系统,近一、两年来又开发了一批新的虚拟仪器系统用于教学和科研。四川联合大学的教师基于虚拟仪器的设计思想,研制了“航空电台二线综合测试仪”将8台仪器集成于一体,组成虚拟仪器系统,使用方便、灵活。清华大学利用虚拟仪器技术构建的汽车发动检测系统,用于汽车发动机的出场检验,主要检测发动机的功率特征、负荷特性等。一台发动机检测完后,就可打印出完整的检测报告。此外,国内已有几家企业在研制PC虚拟仪器,哈工大仪器王电子有限责任公司就是其中之一,它的产品已达到了一定的批量。其主要产品有数字存储示波器系列、任意波形发生器及频率计系列、多通道大容量波形记录系列。LabVIEW作为虚拟仪器开发系统的杰出代表,在我国虽然引进的时间不长,但是现在己经被认识和推广、应用,它促进了中国测试领域的技术革命,在科研及教育领域都得到了迅速推广。

国内专家预测:未来几年内,我国将有50%的仪器为虚拟仪器。国内将有大批企

业使用虚拟仪器系统对生产设备的运行状况进行实时检测。随着微型计算机的发展,虚拟仪器将会逐步取代传统的测试仪器而成为测试仪器的主流。虚拟仪器技术的提出和发展,标志着二十一世纪自动测试与电子测试仪器领域技术发展的一个重要方向。

1.3 课题的意义

信号发生器是一种常用的信号源,是电子工程师在进行各种测试和诊断时必备的工具,广泛应用于电子技术实验、自动控制系统和科学研究等诸多领域。而传统信号发生器电路复杂,抗干扰能力差,实现困难及设计周期长。在这种传统信号发生器已严重滞后于信息时代和工程实际需要的背景下,人们开始致力于开发虚拟信号发生器。它把计算机技术、电子技术、传感器技术、信号处理技术、软件技术很好地结合起来,由用户定义仪器功能,桌面整洁,操做条理,不但使测量人员从繁复的仪器堆中解放出来,而且具有精度高、速度快、系统组建时间短、可扩展性强、技术更新快和仪器智能化等优点,尤其是在需要现场测试的地方发挥了很大的优势。

音频信号发生器作为信号发生器的一种,具有很广泛的应用,可应用于声学,振动,电信等领域作为信号激励源,也适用于工厂生产车间进行音频信号测试和扬声器听音测试及纯音检测。

传统台式音频信号发生器是由仪器厂家设计并定义好功能的一个封闭结构。它有特定的输入/输出接口和仪器操作面板,具有多种信号发生功能,当要实现更多的信号发生功能时,就要配置更多的仪器,这给用户的使用带来诸多不便。此外由于缺乏相应的计算机接口,配合数据采集及数据处理比较困难且体积相对庞大,制造成本比较高,这就增加了系统的开发成本。虚拟仪器技术的提出和飞快发展和传统台式音频信号发生器表现出的弊端,使得虚拟音频信号发生器应运而生。

虚拟仪器一般由通用仪器硬件平台和应用软件两大部分构成。硬件解决信号的输入和输出,软件可以很方便地进行修改,改变仪器系统的功能,以适应不同使用者的需要,其中信号的输入、输出部分一般使用数据采集卡,但商用的采集卡价格昂贵,用商用采集卡来开发系统成本较大。为了降低开发成本,本次设计的虚拟音频信号发生器就采用PC机声卡代替价格昂贵的商用数据采集卡做为模数转换工具输出模拟的语音信号。随着DSP技术的成熟,现在的PC声卡本身就是一个优秀的数据采集系统。它同时具有A/D和D/A转换功能,能实现双通道、16位、高精度的数据采集,且每通道采样频率不小于44.1KHz,对于工程测量、教学实验等用途而言,其各项指标均可以满足要求。此外,声卡兼容性好、性能稳定、灵活通用,软件特别是驱动程序升级方便。并且ISA(Industry Standard Architecture,工业标准结构)总线向PCI总线的过渡,解决了以往声卡与系统交换数据的瓶颈问题,更加充分发挥了DSP芯片的性能。

在声卡性能越来越好,成本越来越低,普遍率越来越高的情况下,利用声卡可在音频范围内代替专用的数据采集卡进行数据采集和输出,不需要增加任何硬件就能使

计算机成为音频信号发生器。这样的信号发生器兼容性好、性能稳定、灵活性高,值得在工程测量应用及相关实验室中进一步推广和扩充,其应用前景较为广阔。

1.4课题内容

本课题以计算机强大的信息处理能力为依托,充分利用声卡DSP技术、LabVIEW 多线程技术及其图形化、结构化的特征,实现了音频信号发生器的软件化设计,能够完成对多种常用信号的生成及模拟输出。内容主要涉及了音频信号发生器的软面板制作,常用信号的生成及显示,声卡驱动程序的应用。

具体内容分为几个部分:

(1)学习虚拟仪器及LabVIEW语言的有关知识;

(2)学习常用信号生成的基本方法及信号波形的显示;

(3)学习声卡的有关知识和LabVIEW的音频处理模块设置及运用;

(4)学习虚拟音频信号发生器的相关调试;

具体论文的结构如下:

第一章绪论,简要介绍课题背景,虚拟仪器的基本概述和虚拟仪器的国内外研究现状以及发展方向。分析了本课题的研究目的和意义,介绍了本文的课题内容和论文结构安排。

第二章描述了本课题所开发系统的基本功能和所用的软硬件。详细介绍了软件编程平台LabVIEW语言,重点分析了LabVIEW的三种模板。除此之外对系统所用硬件——声卡的工作原理,工作流程及各项指标做了介绍,为后面的编程奠定基础。

第三章介绍了系统的整体实现方案,依据整体方案的各组成部分,对各部分的不同实现方案进行了描述,并通过对比分析确定各组成部分最终将采用的方案。

第四章介绍音频信号发生器系统的详细设计过程,包括系统的前面板设计和流程框图的设计,并对整个系统的运行结果进行显示。

第五章介绍对系统进行的调试和运行结果的分析。

第六章结论,主要是对本文所设计系统进行总结。

2 系统基本功能描述及软硬件概述

2.1 系统基本功能描述

该音频信号发生器能够实现对常用正弦,三角,方波,锯齿四种信号的生成和显示,并用声卡发声。要求使用美国国家仪器(NI)公司开发的图形化编程工具LabVIEW 作为软件开发平台,开发出的系统前面板必须功能齐全、美观。可以在音频范围内调节输出波形的频率、幅值和相位的大小,当用到方波时可以调节占空比。

2.2 软件LabVIEW概述

当今,C/C++、VC、VB 和美国国家仪器(NI)公司的LabVIEW都可以作为虚拟仪器的软件开发工具。其中C/C++、VC、VB等传统软件开发平台为众多编程人员所熟悉,可以用来开发测试软件,但这种开发方式对测试人员要求很高,需要自己将各种数据处理方法用计算机语言实现,还要对用于数据通信的各种连接总线(如RS232、GPIB、USB等)非常熟悉,绝大多数测试工程人员难以做到,或者需要花费大量的时间来研究,而懂得这些编程方法的人员又不一定懂得测试,因此用这种平台开发测试工程软件难度大、周期长、费用高、可扩展性差。顺应形势的发展,一些专业测试开发平台纷纷推向市场,如HPVEE、组态软件平台、TPS平台等,但这些平台的专用性太强,可扩展性、通用性比较差。

NI公司的LabVIEW 全称叫Laboratory Virtual Instrument Engineering Work Bench,它是一个高效的图形化程序设计语言。它采用了简单易用的图形式开发环境和灵活强大的函数库,为编程提供了一个直观的环境,与测量硬件紧密结合,能让工程师与科学家们迅速开发出有关数据采集、数据分析及显示的解决方案。LabVIEW 是一个划时代的图形化编程系统,它提供了一种全新的程序编写方法,可通过交互式图形前面板进行系统控制和结果显示,即设计虚拟仪器的操作面板,通过框图模块来指示各种功能。现今数以万计的工程师、科学家及技术人员正在通过LabVIEW 来构建测量与自动化解决方案。

概括的说,LabVIEW作为测试软件开发平台有如下特点和优点:

(1)图形化编程环境。LabVIEW的基本编程单元是图标,不同的图标表示不同的功能模块。用LabVIEW编写程序的过程也就是多个图标用线连起来的过程,连线表示功能模块之间存在数据的传递。被连接的对象之间的数据流控制着执行程序,并允许有多个数据通路同步运行。其编程过程近似人的思维过程,直观易学,编程效率高,无须编写任何文本格式的代码,易为多数工程技术人员接受。

(2)可重用性高。LabVIEW继承并发展了结构化和模块化程序设计概念,使测试程序能够很好地体现分层性、模块化,即可以把任意一个测试程序当作顶层程序,

也可将其当做其他测试程序的子程序,这样用户就可以把一个复杂的应用任务分解为一系列、多层次的子任务。通过为每个子任务设置不同的功能,并将这些测试子程序进行适当的组合、修改、交叉和合并等,就可以在顶层最终建成一个所有应用功能的测试系统。

(3)开发功能高效、通用。LabVIEW是一个带有扩展功能库和子程序库的通用程序设计系统,提供数百种功能模块(类似其他计算机语言的子程序或函数),包括算术运算、函数运算、信号采集、信号输出、数据存取、信号分析处理、数据通信等功能模块,涵盖了测试的各个环节,用户通过拖放及简单的连线,就可以在极短的时间内设计好一个高效而使用的测试软件,再配以相应的硬件就可以完成各种测试任务。这样既节约了时间,又可提高测试的可控制性及测试速度。

(4)支持多种仪器和数采硬件的驱动。LabVIEW提供了数百种仪器的源码级驱动程序,包括DAQ、GPIB(IEEE488)、PXI、VXI、RS232,根据需要还可以在LabVIEW 中自行开发各种硬件驱动程序,也可以通过动态链接库(DLL)利用其他语言开发函数库,从而进一步扩展其功能。

(5)网络功能强大。LabVIEW支持常用网络协议,如传输控制协议(TCO/IP)和用户数据报协议(UDP),方便网络、远程测控系统的开发。

(6)开放性强。LabVIEW具有很强的开放性,是一个开放的开发环境,能和第三方软件轻松连接,通过LabVIEW可以把现有的应用程序和NET组件、ActiveX、DLL等相连,可以和MATLAB混合编程,也可以在LabVIEW中创建能在其他软件环境中调用的独立执行程序或动态链接库。

由于LabVIEW虚拟仪器系统具有上述优点,所以本设计将采用LabVIEW作为编程的开发平台。

2.2.1LabVIEW的结构

所有的LabVIEW程序,即虚拟仪器(VIs),都包括前面板(Front Panel)和程序流程图(Block Diagram)两部分。前面板是LabVIEW VI 的图形用户接口,集成了用户输入和显示输出功能。前面板包括旋钮、按钮、图形和其他的控制(Controls)与显示(Indicators)模块。用户可以根据自己的需要在前面板上放置按钮等控制模块及显示模块,如图2-1。流程图是指程序的内部运行结构,是系统结构、数据处理的流程,包含了虚拟仪器的图形化源代码。流程图由端口、节点、图框和连线构成。其中端口被用来同程序前面板的控制和显示传递数据,节点被用来实现函数和功能调用,图框被用来实现结构化程序控制命令,而连线代表程序执行过程中的数据流,定义了框图内的数据流动方向。它和文本式开发平台(如VC++)中的*.h、*.cpp等文件的作用是一样的,只是LabVIEW流程图的开发是图形化的,更简单、高效、直观,如图2-2。

图2-1LabVIEW前面板

图2-2LabVIEW流程图

2.2.2 LabVIEW模板分析

LabVIEW是一种图形化设计语言,在一个虚拟仪器VI的

开发过程中,主要利用模板创建和运行程序。这些操作模板可

以随意在屏幕上移动,并可以放置在屏幕的任意位置。操纵模

板共有三类:工具(Tools)模板、控制(Controls)模板和功能

(Functions)模板或称函数模板。

2.2.2.1 工具模板(Tools Palette)

工具模板如图2-3所示,它为编程者提供了各种用于创建、图2-3工具模板

修改和调试VI程序的工具。该模板可以在windows菜单下选择Show Tools Palette 命令以显示该模板。当从模板内选择了任一种工具后,鼠标箭头就会变成该工具相应的形状,它包括了以下工具包。

操作工具:使用该工具来操作前面板的控制和显示。使用它向数字或字符串控制中键入值时,工具会变成标签工具的形状。

选择工具:用于选择、移动或改变对象的大小。当它用于改变对象的连框大小时,会变成相应形状。

标签工具:用于输入标签文本或者创建自由标签。当创建自由标签时它会变成相应形状。

连线工具:用于在框图程序上连接对象。如果联机帮助的窗口被打开时,把该工具放在任一条连线上,就会显示相应的数据类型。

对象弹出菜单工具:用左鼠标键可以弹出对象的弹出式菜单。

漫游工具:使用该工具就可以不需要使用滚动条而在窗口中漫游。

断点工具:使用该工具在VI的框图对象上设置断点。

探针工具:可以在框图程序内的数据流线上设置探针。程序调试员可以通过控制探针窗口来观察该数据流线上的数据变化状况。

颜色提取工具:使用该工具来提取颜色用于编辑其他的对象。

颜色工具:用来给对象定义颜色。它显示出对象的前景色和背景色。

与上述工具模板不同,控制和功能模板只显示顶层子模板的图标。在这些顶层子模板中包含许多不同的控制或功能子模板。通过这些控制或功能子模板可以找到创建程序所需的面板对象和框图对象。用鼠标点击顶层子模板图标就可以展开对应的控制或功能子模板,只需按下控制或功能子模板左上角的大头针就可以把对这个子模板变成浮动板留在屏幕上。

2.2.2.2 控制模板(Controls Palette)

用控制模板可以给前面板添加输入控制和输出

显示。每个图标代表一个子模板。如果控制模板不

显示,可以用Windows菜单的Show Controls Palette

功能打开它,也可以在前面板的空白处,点击鼠标

右键,以弹出控制模板。

注:只有当打开前面板窗口时才能调用控制模板。

控制模板如图2-4所示。图2-4控制模板

以下介绍几个常用的模板:

数值子模板:包含数值的控制和显示。

布尔值子模块:逻辑数值的控制和显示。

数组和群子模板:复合型数据类型的控制和显示。

图形子模板:显示数据结果的趋势图和曲线图。

修饰子模板:用于给前面板进行装饰的各种图形对象。

调用存储在文件中的控制和显示的接口。

2.2.2.3 功能模板(Functions Palette)

功能模板是创建框图程序的工具。该模板上的每一个

顶层图标都表示一个子模板。若功能模板不出现,则可以

用Windows菜单下的Show Functions Palette功能打开它,

也可以在框图程序窗口的空白处点击鼠标右键以弹出功

能模板。(注:只有打开了框图程序窗口,才能出现功能

模板。)

功能模板如图2-5所示。以下介绍几个常用的模板:

图2-5 功能模板结构子模板:包括程序控制结构命令,例如循环

控制等,以及全局变量和局部变量。

数值运算子模板:包括各种常用的数值运算符,如+、-等;以及各种常见的数值运算式,如+1运算;还包括数制转换、三角函数、对数、复数等运算,以及各种数值常数。

布尔逻辑子模板:包括各种逻辑运算符以及布尔常数。

数组子模板:包括数组运算数组转换函数,以及常数数组等。

字符串子模板:用于连接两个或更多字符串,抽取字符串子集,将数据转换

为字符串以及格式化字符串,以便进行文字处理或电子表格应用。

群子模板:包括群的处理函数,以及群常数等。这里的群相当于C语言中的结构。

比较子模板:包括各种比较运算函数,如大于、小于、等于。

时间和对话框子模板:包括对话框窗口、时间和出错处理函数等。

信号处理子模板:包括信号发生、时域及频域分析功能模块。

“选择…VI子程序”子模板:包括一个对话框,可以选择一个VI程序作为子程序(SUB VI)插入当前程序中。

文件I/O子模板:用于打开和关闭文件,向文件写入或读出字符串、数值、

数组或簇,创建指定文件的地址或文件的地址信息。

应用程序控制子模板:通过本地计算机或网络控制VI,可同时控制多个VI。

图形与声音子模板:可显示自定义图象,输入、输出图形文件的数据,也可

播放声音。

报表生成子模板:创建或操作LabVIEW报表文件。

编制软件时通过对控制和功能模块中子模块的灵活调用,选取相应的功能子模块,分别置于前后面板内,使用连线工具即可完成虚拟仪器设计。

2.3 硬件声卡概述

本虚拟音频信号发生器的硬件部分为一具有声卡的通用PC机。计算机的声卡本身就是一个具有A/D、D/A的转换装置,本设计利用声卡的D/A功能,代替专用的数据采集卡在音频范围内进行数据采样和输出,不需增加任何硬件就能使计算机成为信号发生器,具有成本低廉、兼容性好、灵活性强等特点。

2.3.1 声卡工作原理

麦克风、扬声器、耳机等所用的都是模拟信号,而电脑所能处理的信号都是数字信号,声卡的作用就是实现两者之间的转换。从结构上分,声卡可分为模拟/数字转

换电路和数字/模拟转换电路两部分,模拟/数字转换电路负责将麦克风等声音输入设备采集到的模拟声音信号转换为电脑能处理的数字信号;数字/模拟转换电路负责将电脑使用的数字信号转换为扬声器等声音输出设备使用的模拟信号。

2.3.2 声卡的工作流程

输入时,麦克风或线路输入(Line In)获取的音频信号通过A/D转换器转换成数字信号,送到计算机进行播放、录音等各种处理;输出时,计算机通过总线将数字化的声音信号以PCM(Pulse Code Modulation,脉冲编码调制)方式送到D/A转换器,变成模拟的音频信号,通过功放或线路输出(Line Out)送到音箱等设备转换为声波。

2.3.3 声卡主要技术指标

(1) 采样位数:采样位数可以理解为声卡处理声音的解析度。这个数值越大,解析度越高,录制和回放的声音就越真实。如今市面上所有的主流产品都是16位的声卡,而一般的数据采集卡大多也才有12位,因此,声卡相较于常用的数据采集卡毫不逊色。

(2) 采样频率:采样频率是指录音设备在一秒钟内对声音信号的采样次数,采样频率越高声音的还原就越真实越自然。在当今的主流声卡上,采样频率一般共分为8 KHz 、11.025KHz、22.05KHz和44.1KHz四个等级,少数可以达到48 KHz 。对于20Hz~20KHz范围内的音频信号,采用44.1KHz采样频率理论上可以,但可能会出现失真。因而使用声卡的局限性就是不允许用户在最高采样率下随意设定信号频率。

(3) 声道数:声道数是衡量声卡档次的重要指标之一,可以分为单声道、准立体声、立体声和5.1声道等。

(4) 频率范围和频率响应:前者是指音响系统能够回放的最低有效回放频率与最高有效回放频率之间的范围。声卡输出信号的频率范围与声卡的型号有关,其频率一般在1Hz-20KHz之间。

3 系统整体方案和各组成部分方案设计

3.1 系统整体方案设计

虚拟音频信号发生器的总流程如下图所示,使用时先按下电源power按钮,运行程序,然后设置声卡以及通过波形选择开关选择波形,并设定其幅度、频率、相位、占空比(方波),波形信号就可在显示屏上显示并通过声卡发声。程序运行过程中,可通过面板上的控件随时改变波形的参数(幅度、频率、相位、占空比),关闭电源,程序停止运行。

3.2 波形发生部分方案设计

在LabVIEW中产生一个仿真信号,相当于通过软件实现了一个信号发生器的功能。针对不同的数据形式,LabVIEW中有3个不同层次的信号发生器,如表3-1。LabVIEW中对应的三种信号器如图3-1,3-2,3-3。

表3-1 数据类型对应的信号发生器

图3-1 Express VI 仿真信号发生器

图3-2 波形发生器子VI 模板 图3-3 普通信号发生器子VI 模板

3种信号发生器功能相同,都能产生基本信号,主要区别是使用的难易程度和灵活性不同, Express Ⅵ仿真信号发生器产生动态数据类型的信号,使用起来最简单;普通信号发生器VI 产生数组类型的信号,使用起来比较复杂;波形发生器VI 产生波数据形式

信号发生器 动态数据 Express VI 仿真信号发生器 波形数据 波形发生器VI 数 组 普通信号发生器VI

形数据,使用的复杂程度介于两者之间。图3-4表示了信号类型和信号发生器VI对应表。

图3-4信号类型和信号发生器VI对应表

3.2.1 仿真信号发生器Simulate Signal. vi

仿真信号发生器Simulate Signal. vi能够产生单一的周期信号和单一的随机信号(噪声)信号相加的波形。它的参数设定对话框如图3-5。

图3-5 Simulate Signal. vi参数设定对话框

(1)信号特性

首先选择周期信号类型和能够附加噪声信号的类型,分别见图3-6和图3-7。然后设定信号的频率、幅值、初始相角和直流偏置,噪声的均值、标准偏差等。

图3-6产生仿真周期信号

图3-7 附加随机信号的类型

(2)采样时间特性和时间戳

采样时间特性选择:以Hz为单位的采样频率→自动采样时间或指定采样点数→采样周期数(采样频率至少是最高信号频率的两倍,一般取3到5倍)。

时间戳的设置:主要调节输出的动态数据类型的时间信息,时间戳有两个选项:

a.从测量始点计算的时间(程序开始运行的时间);

相关主题
文本预览
相关文档 最新文档