1、第 1 页 共 40 页基于 LabVIEW 的实验平台设计摘 要物理实验室是院校教学体系的重要组成部分,在培养学生科学素质、实验技能和创新能力方面具有不可替代的作用。随着计算机技术的发展,传统仪器开始转向计算机化。虚拟仪器技术是当今新计算机技术和新仪器技术相结合的产物,是现代测试技术与系统的发展趋势。利用虚拟仪器技术进行物理实验,将有助于传统的实验教学的改革,增强学生的创新能力,提高学生的综合素质。本文探讨了虚拟仪器技术和 LabVIEW 的发展情况及其前景,介绍了当前实验室使用虚拟仪器的情况。本课题将虚拟仪器技术引入应用物理实验室,使虚拟仪器技术与传统实验相结合,分别对归一化频率仿真仪、虚
2、拟仿真信号发生器、自相关函数演示仪、钟摆运动模拟仿真仪进行研究开发,并进行实际的实验测试,得到与实际情况相符的虚拟仪器。通过模块化设计的方法,将所有实验整合到实验平台上。使用者可以通过实验平台方便地登陆,使用实验平台对各个实验进行调用。推广虚拟仪器的应用,无论对加速发展我国自己的电子仪器工业,还是提高我国的测试技术水平都是极其有益的。关键词:LabVIEW 编程,虚拟仪器,综合实验台,实验教学第 2 页 共 40 页Experimental Platform Based on LabVIEWABSTRACTWith the development of computer traditional
3、 instrument has developed into computerize instrument. Virtual Instrument is a perfect combination of modern computer technology instrument technology and other new technology. Its strong function is beyond the instrument itself. Physical lab is important component of teaching system in colleges and
4、 universities and plays the key role in training the students“ scientific characters, experimental skills and creative capabilities. This project has established the example to introduce the virtual instrument technique into traditional practical physical lab. Using virtual instruments in the physic
5、al experiments will help to reform traditional experimental teaching. The virtual physical lab can train the students“ ability to master the scientific and technological knowledge and experimental skill, strengthen the students“ creativity and eventually improve the students“ comprehensive quality.
6、I use modular method and many papers to describe the whole building process,analyze and solve issues which come forth during the design and realization process。As the conclusion, I offer the theories, panels and diagrams of eight virtual instruments, such as virtual sine wave generator, autocorrelat
7、ion function demonstrator, phase difference demonstrator based on phase method, virtual sine wave frequency spectrum analytical instrument, and a example program which used in the practiceThese virtual instruments form the teaching test system。Which can be used in experimental courses, for example,
8、circuit theory, electronic technical basis, signal and system ,automation control theory and soonKeywords: LabVIEW programme, comprehensive experimental platform, experimental teaching第 3 页 共 40 页1 引言1.1 课题研究背景及意义目前国内高等院校机械类专业普遍开设机械工程测试技术课程,该课程的主要内容是机械工程领域常见的各种物理量的测试与分析方法。机械工程测试技术作为一门具有丰富的实践性的课程,它的一
9、个重要教学环节是实验课。工程测试实验教学的目的不仅在于对理论教学的验证,更重要的是训练学生工程测试实际应用能力。但是随着科学的进步和更高的教学要求,传统的测试实验方法已不能满足现在的教学要求。使用传统仪器进行测试实验教学,主要存在以下问题:1)仪器功能单一,传统测控设备一般只能独立完成一项具体的测控任务。2)仪器功能是封闭的,学生难以了解其工作原理,影响对实验内容的理解。3)学生只能按照教师事先设计好的实验方案被动的进行操作,没有体现出学生在实验课中的主体地位。在这种情况下,虚拟仪器技术被引入到测试实验教学中。无论是测量、测试、计量或是工业过程控制和分析处理,还是更为广泛的测控领域,虚拟仪器都
10、是理想的高效率的解决方案。基于计算机的自动化实验室大大提高了研究人员的工作效率并改进了学生的学习方式。与以往注重费时的采集数据的过程不同,现在,老师和同学都可以集中精力分析结果并得出结论;学生们可以将大部分时间花在实验工作的执行上,而非实验系统设备的搭建中。虚拟仪器 传统仪器软件使得开发与维护费用低 开发与维护费用高关键是软件 关键是硬件价格低,可重复用,可重配置性强 价格昂贵用户定义仪器功能 厂商定义仪器功能技术更新周期短(1 至 2 年) 技术更新周期长(5 至 10 年)开放,灵活,与计算机同步发展 封闭、固定与网络及外设互联方便 功能固定、互联有限表 1-1 虚拟仪器与传统仪器的比较第
11、 4 页 共 40 页图 1-1 虚拟仪器技术虚拟仪器技术是当今新计算机技术和新仪器技术相结合的产物,是现代测试技术与系统的发展趋势。虚拟仪器系统的设计和开发十分便利,在丰富的虚拟仪器软硬件产品的支持下,尤其是在LabVIEW的支持下,组建一个测试系统正在变得越来越容易。1.2 国内外研究现状上个世纪八十年代初,美国国家仪器公司(NATIONAL INSTRUMENTS,简称NI)提出了 “软件就是仪器 ”的口号,将日益普及的计算机技术与仪器仪表技术结合起来,使用户在操作计算机时,如同在操作自己定义的仪器,方便灵活,不仅精简了单个传统仪器的成本,更是提高了用户的工作效率。现在,NI公司开发的软
12、件平台已经成为了虚拟仪器软件技术事实上的标准。NI公司的软件工具由测量驱动程序和仪器驱动软件、高阶测试与数据管理工具和应用开发环境( 如LabVIEW , LabWindows/CVI和Measurement Studio)三部分共同组成。近年来,虚拟仪器因其强大的性能价格比优势得到了广泛的应用。虚拟仪器第 5 页 共 40 页的发展主要取决于三个重要因素:计算机的发展是动力,软件是主宰,高性能的A/D采集卡及调理放大器与传感器是关键。随着微电子技术、计算机软硬件技术、通信技术和网络技术的飞速发展,虚拟仪器技术日新月异。虚拟仪器虽然是新兴的仪器仪表技术,但因为其区别于传统仪器的突出优点,并且由
13、于在昂贵的精密高档仪器方面国内主要依靠进口,因此虚拟仪器已经在国内各个领域得到了越来越广泛的应用。虚拟仪器在发达国家中设计、生产、使用已经十分普及。在美国,虚拟仪器系统及其图形编程语言,已成为各大学理工科学生的一门必修课程。清华大学利用虚拟仪器技术构建汽车发动机检测系统,成功用于汽车发动机出厂前的自动检测。清华大学基于CompactPCI/PXI技术建设的实验室热工水利学测控平台,研制成功了先进的热工测量技术和热工仿真技术,成功地完成了海水淡化等重要课题研究。北京航空航天大学完成了航空发动机压气机管道声模态及非定长特性测量的数据采集和分析课题。国防科技大学基于LabVIEW的分布式VXI仪器教
14、学实验系统的研制为VXI仪器广泛进入大学实验室创造了条件。重庆大学开发了虚拟实时噪声倍频程分析仪,实现了对噪声总声压级、各种计权声压级及相应倍频程的实时测量和分析。唐山大学基于CompactPCI/PXI研制的锅炉供热自动控制系统,成功地应用在唐山市热力总公司项目上。天津大学研制的原油管道泄漏远程监测系统,在胜利油田和华东石油管理局集输管线和长输管线得到应用。虚拟仪器技术经过近二十年的发展,正沿着总线与驱动程序的标准化、软硬件的模块化,以及编程平台的图形化和硬件模块的即插即用(Plug虚拟仪器作为一种新型的仪器种类2、实现网络化设计; 3、开放式体系结构、缩短系统开发周期;4、可灵活组成虚拟仪
15、器实验室;5、数据存储方便;6、可集成为多功能的综合测试系统。2.4 虚拟仪器在大学实验教学中的应用现在,各大高校实验室都有相当数量的计算机,这就为建立虚拟实验室提供了一定的硬件基础。只要购买一定的硬件接口和一些相应的软件就可以构成足够数量的虚拟仪器供学生使用。虚拟实验室一般由虚拟仪器软件、计算机网络、输入设备和输出设备组成。虚拟仪器的出现给新模式实验室的建设带来了新的契机。首先,虚拟仪器扩展了常规仪器的功能。传统测试仪器一般只能单独测量某个电量,如电压表只能测量电压,而虚拟仪器可以构成电压表,也可以构成示波器,而且它所构造出的仪器之间具备控制通道和数据通道,可以完成对多个参量的自动分析、信息
16、综合及控制等。其次,虚拟仪器比标准仪器更灵活更经济。标准实验室各专业间的仪器一般不能共享,这样一来仪器的需求量就非常大; 同时,仪器使用数年后,其灵敏度和精度也会大大下降; 还有在实验过程中的仪器损耗等。这些原因使得各高校每年都得花上大量的人力财力去维护和更新实验仪器。而虚拟仪器的出现,实现了“软件即仪器”,它不仅使测试仪器具备了自动化程度高、可靠性高、价格低、升级容易、可维护性好的优点,而且对于复杂的测试系统,它良好的人机界面、菜单式操作,简化了仪器操作。2.5 本章小结本章主要对虚拟仪器做了多方面的介绍。通过学习和了解虚拟仪器的特点可知虚拟仪器的使用对高校虚拟实验室的建立有很大的帮助。随着
17、现代教育技术的不断发展,虚拟仪器技术与课堂教学的结合不仅是教学手段现代化的一种体现,而且为现代教育的教学改革提供了一个新的突破。虚拟实验技术进入高校教学,将有助于解决实际设备不足、型号落后、难以更新换代第 10 页 共 40 页跟上科技发展的困难。但由于虚拟实验室是对实际实验室的一种模拟,而虚拟仪器是一种基于软件的模拟技术,因此与实际硬件系统必然存在差异,在实践教学中具有一定的局限性。虚拟仪器的开发平台中,NI 公司的 LabVIEW 以其灵活、紧凑、功能强和图形编程方式使系统软件开发更省时、更省力,该软件作为一个比较完整和性能优异的图形化软件开发环境,被越来越多的工科大学作为课堂和实验室教学
18、内容,作为工程师素质培养的一个方面。下面将对 LabVIEW 软件作详细的介绍。第 11 页 共 40 页3 LabVIEW3.1 LabVIEW 简介LabVIEW 是实验室虚拟仪器集成环境(Laboratory Virtual Instrument Engineering Workbench)的简称是美国国家仪器公司 (NATIONAL INSTRUMENTS,简称 NI)的创新软件产品,它是一个功能强大而又灵活的仪器和分析软件应用开发工具。也是目前应用最广、发展最快、功能最强的图形化软件集成开发环境。 LabVIEW 带有大量的内置功能,能够完成仿真、数据采集、仪器控制、测量分析和数据显
19、示等任务。使用 LabVIEW 开发平台编制的程序称为虚拟仪器程序,简称为 VI。VI 包括三个部分:程序前面板、框图程序和图标/连接器。程序前面板用于设置输入控制数值和观察输出量,模拟真实仪表的面板。每一个程序前面板都对应着一段框图程序。框图程序用 LabVIEW 图形编程语言编写,可以把它理解成传统程序的源代码。图标/连接器是子 VI 被其它 VI 调用的接口。3.2 LabVIEW 软件的特点 与传统程序语言不同,LabVIEW 采用强大的图形化设计语言(G 语言)编程,人机交互界面直观友好,具有强大的数据可视化分析和仪器控制能力等特点。通过图形化的编程环境和操作界面,能够轻松完成对待测
20、对象的信号调理、过程控制,数据采集、分析、显示和存储,故障诊断以及网络通信等功能。通过使用LabVIEW 在电脑屏幕上创建一个图形化的用户界面,即可设计出完全符合自己要求的虚拟仪器,避免传统开发环境所带来的复杂的编程工作。总之,由于LabVIEW 能够为用户提供简明、直观、易用的图形编程方式,能够将繁琐复杂的语言编程简化成为以菜单提示方式选择功能,并且用线条将各种功能连接起来,十分省时简便,深受用户青睐。与传统的编程语言比较,LabVIEW 图形编程方式能够节省 8 5 以上的程序开发时间,其运行速度却几乎不受影响,体现出了极高的效率。使用虚拟仪器产品,用户可以根据实际生产需要重新构筑新的仪器
21、系统。例如,用户可以将原有的带有 RS232 接口的仪器、 VXI 总线仪器以及GPIB 仪器通过计算机,联接在一起,组成各种各样新的仪器系统,由计算机进第 12 页 共 40 页行统一管理和操作。选择 LabVIEW 这一软件是因为它使许多不具备或不具备完善的实验条件的院校能够开设这些实验。由于人力、实验设备的套数和时间的限制等方面的原因,故不可能使每个学生都能完成若干次实验。虚拟仪器的出现,解决了实验设备短缺的问题,而且省时、有效。其具有下面突出的优点:(1) 在虚拟的实验平台上,能够集中、方便地进行各种参数的设置和操作,提供相关的重要信息,例如实验指导书的内容,实验规则及待填写的实验报告
22、。(2) 对于虚拟仪器,它不受实验环境、条件及设备精度的影响,测量数据稳定、可靠、重复性好;输出可视性好,绘制的曲线和图形精确,可生动直观地展示被考察对象各相关物理量之间的关系。(3) 具有良好的经济性、适应性和灵活性。对于多环节组成的测量或控制实验,不仅可以多组同时进行互不干扰,而且用于进行仪器之间的连线、调试和设置的时间也相应减少。(4) 图形化的编程语言不但降低了程序设计的门槛,而且在实验中给学生提供了更多发挥想象力、创造力的空间,有利于学生综合设计能力和创新思维的培养。(5) 将对探索、发展现代教育思想、提高教育技术水平、改善实验环境、优化教学过程,培养具有创新意识和创新能力的人才产生
23、深远的影响。充分运用多媒体技术、虚拟现实技术和网络技术,还可以使这种虚拟教学模式向网络学校和虚拟教育延伸。3.3 LabVIEW 应用程序的设计LabVIEW 的基本程序单位是虚拟仪器(Virtual Instruments 或者 VI)。可以通过图形编程的方法,建立一系列的 VI,来完成用户指定的测试任务。对于简单的测试任务,可由一个 VI 完成;对于一项复杂的测试任务,则可按照模块设计的概念,把测试任务分解为一系列的任务,每一项的任务还可以分解为多项小任务,直至把一项复杂的测试任务变成一系列的子任务。设计时,先设计各种 VI 以完成每项子任务,然后把这些 VI 组合起来以完成更大的任务,最
24、后建成的顶层虚拟仪器就成为一个包括所有子功能虚拟仪器的集合。LabVIEW 可以让用户把自己创建第 13 页 共 40 页的 VI 程序当作一个 VI 子程序节点,以创建更复杂的程序,且这种调用是无限制的。 LabVIEW 中各 VI 之间的层次调用结构如图 3-1 所示。可见,LabVIEW 中每一个 VI 相当于常规程序中的一个子程序。而所有的 LabVIEW 程序,即虚拟仪器(VI)都包括前面板(Front Panel)、流程图( Block Diagram)、图标/ 接口三部分。前面板用于设置输入数据和观察输出量。由于程序前面板是模拟真实仪表前面板的,输入量被称为 Controls,输
25、出量被称为 Indicators,因此,用户可以使用许多图标,如旋钮、开关、按钮、图表、图形等,来使前面板易懂易看。每一个前面板都伴有一个流程图(也叫程序框图)。流程图用图形编程语言编写,可以把它理解成传统程序的源代码。框图中的部件可以看成程序节点(Node),如循环控制、事件控制和算术功能等。这些部件都用连线连接,以定义框图内的数据流方向。图标/ 接口部件可以让用户把 VI 程序变成一个对象(VI 子程序),然后在其他 VI 程序中像子程序一样地调用。图标表示在其他程序中被调用的子程序,而接线端口表示图标的输入输出口。就像子程序的参数端口一样,它们对应着 VI程序前面板的控制量和指示量的数值
26、。图 3-1 VI 之间的层次调用结构3.4 在 LabVIEW 软件环境下设计虚拟仪器的步骤 一个完整的 LabVIEW 程序包括三个部分:前面板、框图程序和图标/ 连接口。因此一个 VI 程序的设计主要包括前面板的设计,框图程序的设计以及程序的调试。第 14 页 共 40 页1、首先创建前面板:因为用户使得虚拟仪器时观察的就是前面板,并在前面板中执行对仪器的操作,所以应根据实际中的仪器面板以及该虚拟仪器所要实现的功能来设计前面板。前面板主要由输入控制器和输出指示器组成。利用控件制模板来添加输入控制器和输出指示器。使用控制器可以输入数据到程序中,而指示器则可用来显示程序产生的数值。控制器和显
27、示器部件有许多种类,可以从控制模板的各个子模板中选取。2、框图程序的设计:框图程序相当于源代码,只有在创建了框图程序以及该程序才能真正运行。所以在设计好前面板以后,就要根据各个框图之间的关系以及对数据的处理方法等设计框图程序。对框图程序的设计主要是对节点;数据端口和连线的设计。3、程序的调试:当前面板和程序框图设计好后,程序执行过程中可能会遇见很多方面的错误,因此要对程序进行调试。3.5 小结本章主要介绍了本设计的软件平台 LabVIEW。LabVIEW 强大的软件开发能力可以满足我们对高校虚拟实验室创建的需求。在 LabVIEW 这个虚拟仪器开发平台上,学生自己可以用图形语言开发出各种仪器,
28、综合应用所学过的各学科知识,像搭积木一样,在普通的计算机上构建一个个人实验室,从而完成实际测试过程,达到与用实际仪器教学的相同目的。这样教师和学生既可以摆脱功能单一、固定的现成仪器的束缚,还可以充分发挥自己的积极性和创造性,有利于培养学生的创造性思维和工程实践能力,同时还能够充分利用现有技术资源,降低实验成本,有利于实验设备的更新。下面,将使用 LabVIEW 软件进行本课题的研究。第 15 页 共 40 页4 基于 LabVIEW 的虚拟仪器应用设计本设计题目的实验平台由一个登陆界面和四个子实验构成。其中,设计的实验分别是:归一化频率仿真仪、虚拟仿真信号发生器、自相关函数演示仪、钟摆运动模拟
29、仿真仪。LabVIEW 具有强大的软件开发能力,完全可以满足本设计的软件开发需要,该软件拥有丰富的函数库和子 VI,开发速度快,实现容易。LabVIEW 不需要使用者熟练掌握计算机的编程语言和程序设计,并且 LabVIEW 是一个完全开放式的开发平台,可支持文本语言的编译的程序模块,因此可以满足不同使用者的需要。下面,将使用 LabVIEW 进行设计虚拟仪器的设计。4.1 登陆界面登陆界面分为欢迎界面和实验选择界面。在登陆界面输出正确的用户名和密码,然后进入实验选择界面,如图 4-1 和图 4-2 所示。图 4-1 欢迎界面第 16 页 共 40 页图 4-2 实验选择界面图 4-3 登陆界面
30、的框图4.2 归一化频率仿真仪该归一化频率仿真仪可以将给定问题中的频率单位转换为归一化频率单位,即周期数/采样。并用波形来体现将周期或者赫兹转换为周期数 /采样的波形。在此仿真中,有正弦波、方波、三角波可供选择。第 17 页 共 40 页4.2.1 设计步骤1、前面板设计(1)新建 VI,在前面板上放置一个“Waveform Graph”波形显示器,将纵轴与横轴的刻度标签分别设置为“幅值”和“时间”。(2)依次在前面扳上放置输入控制件:“采样点数”、“模拟信号”、“采样频率”,放置枚举控件:“选择波形”和“运行单位选择”,放置输出控件:“归一化频率”。(3)放置 “停止”按钮开关用来结束程序的
31、运行。2、框图设计(1)在框图上放置While循环结构,将条件端口结束条件改为“Stop If True”,与“停止”控制按钮的端子相连。(2)选择信号发生器,按照路径在“Analyze”“Signal Processing”“Signal Generation”子选项板中选择“ Sine Wave.vi”、“Square Waveform.vi”和“Triangle Waveform.vi”函数放置于While循环结构中,对于完成这三种波形的信号发生器的将在下一个实验“虚拟信号仿真发生器”中介绍其特点和端口。三个分支的case循环如图4-4所示。图 4-4 case 循环中的三角波分支第 1
32、8 页 共 40 页图 4-5 case 循环中的正弦波分支(3)建立 case 循环,将模拟信号的不同单位的“cycles”和“Hz”作为两个分支,如图 4-5 所示。图 4-6 “cycles”分支与“Hz ”分支4.2.2 运行结果1、在正弦波并且是已知模拟信号的 Hz 数时,f=60/1000=0.06。第 19 页 共 40 页图 4-7 生成 60Hz 的正弦波并计算归一化频率2、在正弦波并且是已知模拟信号的采样周期数时,f=2/50=0.04。图 4-8 生成两个周期的正弦波形并将周期转换成周期数/采样第 20 页 共 40 页3、在方波并且是已知模拟信号的 Hz 数时,f=80
33、/1000=0.08。图 4-9 生成 80Hz 的方波并计算归一化频率4、在方波并且是已知模拟信号的周期数时,f=2/250=0.008。图 4-10 生成两个周期的方形并将周期转换成周期数/采样第 21 页 共 40 页5. 在三角波并且是已知模拟信号的 Hz 数时,f=100/1000=0.1。图 4-11 生成 100Hz 的三角波并计算归一化频率6、在三角波并且是已知模拟信号的周期数时,f=2/200=0.01。图 4-12 生成两个周期的三角形并将周期转换成周期数/采样第 22 页 共 40 页总程序框图如下。图 4-13 归一化程序框图4.3 虚拟仿真信号发生器该虚拟信号仿真信号
34、发生器,可产生正弦信号,三角波信号,方波型号。指标如下:频率范围:0.1Hz 10kHz初始相位:0180幅 度 值:0.15.0采样点数:N=85124.3.1 设计步骤 1、前面板设计(1)新建一个 VI,在前面板上放置一个“Waveform Graph “波形显示器,将纵轴与横轴的刻度标签分别设置为“U(v)”和“ t(s)”。(2)依次在前面扳上放置 5 个输入控制件:“信号频率(Hz)”、“采样频率(Hz)”、“采样点数”、 “幅度(v)”和“相位(度) ”。(3)放置一个“ 停止”按钮开关用来结束程序的运行。放置一个“采集”按钮用来对数据进行采集保存。对于数据采集的设计,运用一个
35、case 语句,在“真”第 23 页 共 40 页时放置一个写入电子表格文件并连接路径,将此 case 语句用一个按钮来控制,如图 4-14 所示。图 4-14 “停止”按钮的框图2、框图设计(1)在框图上放置一个 While 循环结构,将条件端口结束条件改为“Stop If True”,与“停止”控制按钮的端子相连。(2)以正弦波信号发生器为例,按照路径在“Analyze”“Signal Processing” “Signal Generation”子选项板中,选择 “Sine Wave.vi”函数放置于 While 循环结构中,“ Sine Wave.vi”节点的输入端口分别在前面板的输入
36、控制件端子相连。此处“f”输入端口输入的是数字频率(数字频率=信号频率采样频率)。“ Sine Wave.vi”函数如图 4-15 所示。图 4-15 Sine Wave.vi 函数第 24 页 共 40 页在对于方波(Square Waveform.vi)和三角波(Triangle Waveform.vi)的采样输入,需注意采样端口的接受数据端的类型是簇二元素。所以需要将采样频率和采样点数捆绑输入。“Square Waveform.vi”函数和“Triangle Waveform.vi”函数分别如图 4-16 和图 4-17 所示。图 4-16 Square Waveform.vi 函数图
37、4-17 Triangle Waveform.vi 函数(3)采用“Bundle”函数来规格化波形图的显示,它可以将横轴的起点、横轴分度值以及输出信号组成一个簇,在这里将 X 轴的水平间距设定为采样周期(采样周期=Ifs)。如图 4-18 所示。图 4-18 Bundle 函数第 25 页 共 40 页4.3.2 运行结果1、输入数据,虚拟正弦波运行结果如图 4-19 所示。图 4-19 虚拟正弦波信号运行结果2、程序前面板虚拟三角波信号运行结果如图 4-20 所示。图 4-20 虚拟三角波信号运行结果第 26 页 共 40 页程序前面板虚拟方波信号运行结果如图 4-21 所示。图 4-21
38、虚拟方波信号运行结果运行数据采集如下图 4-22 所示。图 4-22 运行数据采集第 27 页 共 40 页程序框图如图 4-23 所示。图 4-23 程序流程图4.4 自相关函数演示仪该自相关函数演示仪可观察:1、正弦波、三角波、方波三种仿真信号的自相关函数。2、仿真信号的频率范围介于 010 kHz,幅值介于 0.1V5.0V 。3、对于正弦波输出其幅值的平方( )。24.4.1 设计步骤1、前面板设计将三种波形生成器用一个 case 语句组成其三个分支。在三种波型仿真信号发生器基础上增加以下控件。(1)对于正弦波生成器输出显示型数字控件:显示计算结果 。验证自相关2函数的特性。若设正弦波
39、信号为 ,周期为 m,则自相关函数()=sin(0+)为:()=lim11=0sin(0+)sin(0+0+)第 28 页 共 40 页=lim11=022cos(0)cos(20+0+2)=22cos(0)(4.1)Rxx(0 )时其相关性最强。(2)开关型控件:用于运行或关闭自相关函数仪。(3)在进行控件参数设置时,应注意显示器可显示的数据总点数是 2N-1 个。2、流程图设计设计思路:(1)对于包含 N 个元素的时间输入序列 x0、x11、x2、xk、xN-1来说,幅值的平方 。2=2(0)(2)按照路径在“Analyze” “signal Processing” “Signal Gen
40、eration”子选项板中选择“Sine Wave.vi”“ Square Waveform.vi”和“Triangle Waveform.vi”函数分别组成 case 循环中的三个分支,并将其放置于 While 循环结构中,产生一个信号发生器。(3)按照路径在“Analyze” “Signal Processing” “Tune Domain”子选项板中选择“AutoCortelation.vi ”函数,用于计算输出正弦信号的自相关函数值,这里需要将“AuloCorrelation.vi ”函数直接输出的相关函数值除以采样点数才能得到正确的结果。第 29 页 共 40 页图 4-24 Aul
41、oCorrelation.vi 函数(4)由于自相关函数图标所求得的数据实际是将原先求得的 2N-1 个数值向右平移了 N-1 个单位后所得到的数据,所以需要用 Index Array 函数(位手 Array 数组子模块中)来索引出第 N-1 个自相关函数值,Index Array 的功能是将 N 维数组返回到索引位置,输出在索引位置的元素或子数组。根据公式(4.1)将结果乘以2 得到幅值的平方。Index Array 函数如图 4-25 所示。图 4-25 Index Array 函数4.4.2 运行结果程序的前面板运行结果和框图分别如图 4-26、图 4-27、图 4-28、图 4-29 和图4-30 所示。第 30 页 共 40 页图 4-26 自相关函数演示仪前面板(正弦波)图 4-27 自相关函数演示仪前面板(三角波)