1、摘 要实验教学在高等工科教育中起着相当重要的作用,但是长期以来实验设备的落后在很大程度上制约了实验教学质量的提高。本文的目的就是开发一个虚拟仪器实验教学系统,服务于实验教学,以提高实验教学水平和教学质量。本论文是基于信号与系统偏重理论分析和计算求解的特点,采用虚拟仪器的设计方法对连续信号与系统进行分析与处理。虚拟实验仪器是虚拟仪器技术的一种具体应用,它将虚拟仪器软件和硬件紧密结合在仪器,利用普及率高的计算机虚拟地实现了有限的实验室设备的各种功能,并进行了扩充。使用虚拟实验仪器可以节约实验仪器设备的成本投入,提高各种仪器性能,完善实验。虚拟实验仪器系统由信号采集、信号处理和结果显示三大部分构成,
2、但是除了信号采集部分是硬件实现之外,其他两部分均是由软件实现。本设计内容包括 5 项,分别为:1、常用信号发生器的设计2、连续系统的时域分析和设计3、连续信号的频谱分析和设计4、连续时间信号的抽样与频谱分析和设计5、连续系统的变换域分析和设计本文主要阐述这五部分的基本原理及虚拟仪器项目开发的程序。关键词:信号;LabVIEW;虚拟仪器IIABSTRACTExperiment teaching is very important in the teaching of high engineering institutions, but, in a long period of time, the
3、 backward teaching instruments have restricted the improvement of teaching quality in large degree. The purpose of this thesis is to build a teaching system of virtual instruments, which can be severed to experiment teaching of high engineering institutions, and, upgrade its teaching level and impro
4、ve its teaching quality. This thesis is to stress the “signal and system” which is particularly based on the characteristic of theory analysis and calculation, analysing and managing to the continuous signal and the system with the design method of virtual instrument. Virtual experiment instrument i
5、s the practical application of virtual instrument technology. It makes hardware and software together tightly and can also realize and extend multi-functions of limitied experiment equipments by PCs which is becoming more widespread. Using virtual experiment can cut down the cost, improve instrument
6、s performance and gradually perfect experimentaion.The system is made up of data acquisition, signal processing and output display. Except data acquisition is completed by hardware, the others are all realized by software.1. The design of the virtual signal generator; 2. The analysis and design of t
7、he continuous system in time domain;3. The analysis and design of the frequency-spectral of the continuous signal; 4. The analysis and design of the sampling and frequency-spectral of the continuous time signal;5. The analysis and design of the continual system in transformation domain.This thesis i
8、ntroduces mainly the basic principles of these five parts and the procedure of the virtual instrument design.Keywords: Signal, LabVIEW, Virtual instrument沈阳理工大学学士学位论文III目 录1 绪论 .11.1 课题背景 .11.1.1 实验教学的现状 .11.1.2 虚拟仪器在教学是的运用前景 .11.2 研究意义 .21.3 研究内容 .31.4 虚拟仪器及 LabVIEW.41.4.1 虚拟仪器的组成 .41.4.2 虚拟仪器的功能及特
9、点 .41.4.3 LabVIEW 开发平台介绍 .52 基于 LabVIEW 的连续信号发生器 72.1 设计原理和仪器功能 .72.2 前面板和程序框图的开发 .73 基于 LabVIEW 的连续时间系统的时域分析 153.1 时域分析的设计原理 .153.2 前面板和程序框图开发 .174 基于 LabVIEW 的连续信号的频谱分析 234.1 傅立叶变换的原理及实现 .234.1.1 设计原理 .234.1.2 设计实现 .234.2 周期信号与非周期信号的频谱分析仪 .274.2.1 设计原理和仪器功能 .274.2.2 前面板和程序框图的开发 .275 基于 LabVIEW 的连续
10、时间信号的抽样和频谱分析 345.1 基本原理 .345.2 设计实现 .356 基于 LabVIEW 的连续时间系统的变换域分析和设计 .386.1 信号频域分析与实现 .38IV6.1.1 设计原理 .386.1.2 前面板和程序框图的开发 .386.2 拉普拉斯的变换域分析与实现 .416.2.1 s 域法求解连续时域零状态响应 416.2.2 s 域电路模型 436.2.3 系统函数零、极点决定时域特性 .446.2.4 系统稳定性实验 .46结论 .47致谢 .48参考文献 .49附 录 .50附录 A 英文原文 .50附录 B 汉文翻译 .56沈阳理工大学学士学位论文11 绪论1.
11、1 课题背景本文所开发的虚拟仪器实验系统是在计算机技术、信号处理技术、电子测量技术快速发展,而以传统仪器为基础的实验系统已严重滞后于信息时代和工程实际需要的背景下,并基于信号与系统课程偏重理论分析和计算求解的特点,利用美国 NI 公司的虚拟仪器开发平台LabVIEW 设计开发的。它可用于对连续信号与系统进行分析与处理,并对其在时域、变换域及频域的基本性质和特点进行介绍和演示。本文的课题背景知识包括:信号处理技术、虚拟仪器技术、LabVIEW 软件开发平台等。1.1.1 实验教学的现状传统的实验教学方法主要表现在以下几个方面:1)实验内容和实验设备依附于理论课程进行划分,实验室和实验内容没有形成
12、一个有机的整体,缺乏系统的观念。2)设备层次不齐,大部分设备落后于课程建设的需要。3)实验的内容侧重于理论的验证,每个学生的实验内容千篇一律,将学生的思维限定在一个狭窄的范围内,缺乏对学生创新意识的培养和综合能力的提高。4)滞后的实验设备和死板的实验模式难以调动学生的主动性和创造性,实验教学处于应试教育。这些在很大程度上制约了实验教学的发展和人才培养质量的提高。究其原因,不能不说在科技迅猛发展的今天,以教育有限的投入无法满足实验设备价格昂贵、更新速度快的要求,是其最根本的原因。这就要求开发能够满足现代实验教学要求、物美价廉的实验教学仪器。本文正是在这种背景下进行的。1.1.2 虚拟仪器在教学是
13、的运用前景在 20 世纪年代末美国研制成功虚拟仪器,代表了仪器发展的一种新方向。虚拟仪器是计算机技术与电子仪器相结合而产生的一种新的仪器模式,它通常是由个人计算机、模块化的功能硬件与用于数据分析、过程通信及图形用户界面的应用软件有机结合构成,完成对数据的处理、表达、传送、存储、显示等功能。实质就是在以通过计2算机为核心的硬件平台上,由用户自己定义、具有虚拟面板、测试功能由测试软件实现的一种计算机仪器系统。运用虚拟机仪器技术,以微机为基础,构成集成化测试平台,代替常规化仪器仪表,不但满足电工、电子实验教学的需求,而且可将这批微机作为其他有关计算机课程教学用机,大大提高设备利用率实现资源共享,降低
14、实验建设成本,同时虚拟仪器的引入,确立了实际操作与计算机仿真相结合的实验教学方式。虚拟仪器的关键技术是应用软件,仪器的主要功能多是由软件来体现的,正所谓“软件即仪器” 。通过虚拟仪器的软件开发平台,使用者无需软件专业背景,在短时间培训后即可根据图标用鼠标自行编程设计测量仪器和测量程序。由于它提供了大量虚拟仪器面板设计用的输入输出控件以及用于数据采集、仪器通信与控制系统、建立网络和数据分析等的程序库,其编程效果是常规编程方法效率的几十倍。由于虚拟仪器具有的许多优势,且价格的不断下降,若我们不局限于将其仅仅当作测量分析仪器,能从更多方面分析虚拟仪器及虚拟仪器技术,可以发现,在学校教育特别是在计算机
15、辅助教学方面虚拟仪器可以发挥更多的作用。传统试验教学需要大量的测量分析仪器设备,每种仪器又都必须配置多套,而且有的仪器设备昂贵,因此仪器设备所需投资巨大,一般学校难满足,造成许多学校仪器设备缺乏和过时陈旧等现象,以及教师的工作量很大而难以对所有学生进行指导,严重影响教学科研。若运用虚拟仪器系统,情况就大不一样了。使用虚拟仪器不但可以节约大量仪器设备的经费投入,而且能够提高教学科研的质量与效率。将虚拟仪器技术和计算机模拟仿真技术通过数据交换共享结合起来建成虚拟仿真实验室,对一些科学现象和规律进行仿真实验,能够代替部分实纪实验项目供教师和学生进行教学与研究。学生利用计算机模拟仿真软件对实验进行模拟
16、仿真,仿真的结果通过虚拟仪器系统进行观察、分析、处理。由于仿真软件和虚拟仪器均具有人机交互能力,这样在这个虚拟的交互式仿真世界,给人创造一种近乎进行真实实验的感觉。运用虚拟仪器进行分析时,虚拟仪器通过数据接口接收需要处理显示的数据,进行实时地分析处理、并生动直观的显示出数据、波形、图像和分析处理的结果,若对结果不满意,可以修改电路或调整电路参数,很快就能得到新的结果。 61.2 研究意义虚拟仪器能够满足现代化生产要求电子仪器品种多、功能强、精度高、自动化程沈阳理工大学学士学位论文3度高,而且要求测试速度快、实时性好、具有良好的人机界面的要求。与传统仪器相比, 虚拟仪器具有以下优点:1)在通用硬
17、件平台确定后,由软件取代传统仪器中的硬件来完成仪器的功能;2)仪器的功能是用户根据需要由软件来定义的,而不是实现由生产厂家定义好的;3)仪器性能的改进和功能的扩展只需进行相关软件的设计更新,而不需要购买新的仪器;4)研制周期较传统仪器大为缩短,且成本低廉;5)虚拟仪器具有开放性和灵活性,可与计算机同步发展,与网络及其他周边设备互联。虚拟仪器作为传统仪器的替代品,市场容量巨大。发达国家虽然在此领域比我国起步较早,但差距并不是很大,我们应该充分把握时机,学习国外先进经验,将我国的虚拟仪器产业水平逐渐与先进国家靠拢。 6 1.3 研究内容本文主要阐述如何在 LabVIEW 环境下开发信号与系统课程中
18、的各个虚拟仪器,以及利用该教学系统进行信号与系统理论课程的实验教学。第二章叙述了常用连续信号发生器的实验原理和仪器功能,以及前面板和程序框图的设计,演示了多达 13 种信号的波形。第三章简要介绍了基于 LabVIEW 进行连续时间系统的时域分析的实验原理和仪器功能以及前面板和程序框图的设计,演示了求解微分方程及冲激响应和输入激励信号的卷积积分。第四章详细叙述了基于 LabVIEW 虚拟信号频谱分析仪的设计,包括周期信号与非周期信号的频谱分析,基于傅立叶变换的信号处理基本方法作为开发频谱分析仪的理论依据在本章也加以介绍。第五章详细叙述了基于 LabVIEW 虚拟信号抽样分析的设计。基于连续信号的
19、抽样定理作为开发抽样分析的理论依据在本章也加以介绍。第六章简要介绍了基于 LabVIEW 进行连续时间系统的变换域分析的实验原理和仪器功能以及前面板和程序框图的设计,演示了时域卷积定理和拉普拉斯变换。41.4 虚拟仪器及 LabVIEW 1.4.1 虚拟仪器的组成虚拟仪器由通用仪器硬件平台和应用软件两大部分构成。构成虚拟仪器的硬件平台有计算机和 I/O 接口设备两大部分:(1) 计算机:一般为一台 PC 机或工作站,它是硬件平台的核心。虚拟仪器使用的个人计算机中,微处理器和总线成为最重要的因素。微处理器的发展是最迅速的。它使虚拟仪器的能力极大的提高。80 年代末制造的虚拟频率分析仪完成一个 1
20、024 点的快速傅里叶变换需要一秒针的时间;今天的系统可以在 1 毫秒内完成相同的运算,速度提高了壹千倍。总线技术的发展也为虚拟仪器的处理能力提供了必要的支持,使得微处理器能够更快的访问数据。由于总线速度的大大提高,现在可以同时使用数块数据采集板,甚至图像数据采集也可以和数据采集结合在仪器。(2) I/O 接口设备:主要完成被测输入信号的采集、放大、模/ 数转换。可根据不同情况采用不同的 I/O 接口硬件设备,如数据采集卡、GPIB 总线仪、VXI 总线仪器模块、串口仪器等。虚拟仪器构成方式有 5 种类型,无论哪种 VI 系统,都是通过应用软件将仪器硬件以通用计算机相结合。构成虚拟仪器的软件由
21、应用软件和 I/O 驱动软件两大部分组成:(1) 应用程序:包括两方面的程序,实现虚拟面板功能测试的前面板软件程序及定义测试功能的流程图软件程序。(2) I/O 接口仪器驱动程序:这类程序用来完成特定外部硬件设备的扩展、驱动 和通信。 大部分虚拟仪器开发环境均提供一定程度的 I/O 设备支持。许多 I/O 驱动程序已经集成在开发环境中,以 LabView 为例,它能够支持串行接口,GBIP、VXI 等标准总线和多种数据采集板,并且还可以驱动很多仪器公司的仪器及调用 windous 动态链接库和用户自定义的动态接连库中的函数。1.4.2 虚拟仪器的功能及特点虚拟仪器的功能 虚拟仪器利用个人计算机
22、强大的图形在线帮助功能,建立虚拟仪器面板,完成对仪器的控制,数据分析与显示,代替传统仪器,改变传统仪器的使用方式,提高仪器的功能和使用效率,大幅度降低仪器价格,使用户可以根据自己沈阳理工大学学士学位论文5的需要定义仪器的功能。在虚拟仪器所取代的仪器中,最常见的是示波器。通过利用虚拟仪器开发软件编制出的虚拟程仪器程序,用户可以调整数据采集板的动作,使软件既像一台示波器一样显示输出波形,同时虚拟示波器还可以进行许多分析工作。 虚拟仪器的特点及与传统仪器的比较表 1.1 虚拟仪器和传统仪器的比较1.4.3 LabVIEW 开发平台介绍 LabVIEW 是美国 NI 公司(Nation Instrum
23、ent Company)推出的一种基于 G 语言(Graphics Language,图形化编程语言)的虚拟仪器软件开发工具。它突破传统的文本式编程语言,使用图标代码来代替编程语言创建应用程序。在基于文本的编程语言中,程序的执行依赖文本所描述的指令,而 LabVIEW 使用数据流编程方法来描述程序的执行。LabVIEW 用图形语言(G 语言) 、图标和连线代替文本的形式编写程序。LabVIEW 为虚拟仪器设计者提供了一个便捷、轻松的设计环境,利用它,设计者可以轻松组建一个测量系统和构造自己的仪器面板,而无须进行任何繁琐的计算机代码的编写。LabVIEW 也是一种带有扩展库函数的通用程序开发系统
24、,其包含数据采集、GPIB、串口仪器控制、数据显示、分析与储存等。LabVIEW 是一个通用编程系统,它不但能够完成一般的数学计算、逻辑运算和输入输出功能,它还带有专门的用于数据采集和仪器控制的库函数和开发工具,尤其还带有专业的数学分析程序包,基本上可以满足复杂的工程计算和分析要求。虚拟仪器 传统仪器功能由用户自己定义 功能由仪器厂商定义界面图形化,计算机直接读取数据并分析处理 图形界面小,人工读取数据,信息量小可方便地与网络外设及多种仪器连接 数据无法编辑数据可编辑、存储、打印 硬件是关键部分价格低廉,仅是传统仪器的五至十分之一 价格昂贵基于计算机技术开放的功能模块可构成多种仪器 与其它仪器
25、设备的连接十分有限技术更新快 系统封闭、功能固定、可扩展性差软件是关键部分 技术更新慢基于软件体系的结构可大大节省开发费用 开发和维护费用高6LabVIEW 包含有专门用于设计数据采集程序和仪器控制程序的功能和开发工具库。LabVIEW 的程序设计实质上就是设计一个个的“虚拟仪器” ,即“VIs”。在计算机显示屏上利用功能库和开发工具库产生一个前面板(front panel) ;在后台则利用图形化编程语言编制用于控制前面板的程序。程序的前面板具有与传统的仪器类似的界面,可接受用户的鼠标指令。一般来说,每一个 VI 都可以作为其它 VI 的调用对象,其功能类似于文本语言的子程序。LabVIEW
26、的核心是 VI。VI 有一个人机对话的用户界面前面板(front pannel)和类似于源代码功能的程序方框图(block diagram) 。前面板接受来自方框图的指令。在 VI 的前面板中,控件(controls)模拟了仪器的输入装置并把数据提供 VI的方框图,而指示器(indicators)则模拟了仪器的输出装置并显示由方框图获得或产生的数据。当把一个控件或指示器放置到前面板上时,LabVIEW 在方框图中相应地放置了一个端口(terminals ) ,这个从属于控件或指示器的端口不能随意删除,只有删除它对应的控件或指示器时它才随之仪器被删除。用 LabVIEW 编制方框图程序时,不必受
27、常规程序设计语法细节的限制。先从功能菜单中选择需要的功能方框,将置之于前面板上适当的位置,然后用导线连接各功能方框在方框图中的端口,用来在功能方框之间传输数据。这些方框包括了简单的算术功能,高级的采集和分析 VI 以及用来存储和检索数据的文件输入输出功能。为了便于程序的调试,LabVIEW 还带有传统的程序开发调试工具,例如可以设置断点,也可以单步执行,还可以激活程序使其高亮度执行,以动画方式查看数据在程序中的流动。 7沈阳理工大学学士学位论文72 基于 LabVIEW 的连续信号发生器自然界各种各样的物质是千差万别的,信号也是千差万别的 。所谓信号,是信息的物理表现形式,或者说是传递信息的函
28、数。根据载体的不同,信号可以是电的、磁的、声的、光的、热的等各种信号。信号可从不同的角度进行分类,有确定信号与随机信号、周期信号与非周期信号、连续时间信号与离散时间信号、一维信号与多维信号等。按照时间信号函数取值的连续性与离散性可将信号划分为连续时间信号与离散时间信号。下面重点讲述一下连续时间信号的发生过程。2.1 设计原理和仪器功能信号发生器是一种应用极为广泛的仪器,它通常作为标准信号发生器,用于电子电路的性能试验或参数测量。传统的信号发生器价格昂贵,操作复杂,不易开发,维护和升级,而使用基于 LABVIEW 图形化编程语言开发的虚拟信号发生器,具有编程简单,直观,操作方便等特点。而且,可以
29、通过不同的信号。本章所介绍的信号发生器可以提供单边指数衰减信号、单位斜边信号、延迟斜边信号、截平斜变信号、三角形脉冲信号、单位阶跃信号、延时的单位阶跃信号、矩形脉冲、单位冲激信号、符号函数、正弦信号、抽样信号和指数信号共 13 种常用信号在连续状态和离散状态的波形演示,供初学者更加深刻地了解和掌握信号的意义,分类及性质等。当只需要一定信号波形发生和显示时,可以利用 G 语言编程得到虚拟仪器,即用软件实现硬件的功能。LabVIEW 公式运算节点 (formula node)是一种传统的基于文字输入的节点,用于 Block Diagram 里,对于一些稍微复杂的计算公式,用图形化编程可能会显得有些
30、繁琐,此时可用公式节点来实现。在边框上单击鼠标右键分别添加输入变量和输出变量,框架中输入用于描述各种常用信号的时间函数公式 ,再加上图形显示波形图控件做显示部分即可实现常用信号波形显示,并通过修改波形图的图例和属性等来演示连续信号和离散信号。输入变量可根据用户需求自己设置,在前面板输入各种常用信号所需要的参数(即输入变量) ,通过改变参数值的大小来改变信号的形状,并在程序框图中通过设定控件的可见属性来隐藏其他待输入信号的参数。82.2 前面板和程序框图的开发常用信号发生器的前面板和程序框图如图 2.1 和图 2.2 所示。图 2.1 常用信号发生器的前面板图 2.2 常用信号发生器的程序框图“
31、波形图”窗(即波形演示):用来显示信号波形图。“请选择信号类型”键:用来选择待输出的信号的类型。按动该键可选择连续时间信号、离散时间信号。“请选择信号”键:用来选择待输出的信号的波形。按动该键可选择单边指数衰减信号、单位斜边信号、延迟斜边信号、截平斜变信号、三角形脉冲信号等。待输出的信号的参数可通过对应的“k 值” 、 “a 值” 、 “频率” 、 “相位”等输入窗沈阳理工大学学士学位论文9设定。“结束”键:具有关闭程序运行的功能。本程序框图中使用到了属性节点。因为每个信号所要求的参数不同,利用属性节点在选择波形时可以使选择到的信号的参数显示在前面板中,而其他信号的参数隐藏,这里就用到属性节点
32、中的可见和不可见的属性。这样设计后使前面板的内容更加丰富。1. 单边指数衰减信号 (2.1)0()tafte()在 t0),那么,可用一个“演示的单位阶跃信号”表示。下图显示了 t0=50 时刻的 延时的单位阶跃信号波形。图 2.15 延迟的单位阶跃信号的图形 图 2.16 延迟的单位阶跃信号的框图8. 矩形脉冲 (2.8)0()1ft(,)tab矩形脉冲信号是指从某一时刻 a 开始到时刻 b 的值为 1,其余时刻值零的信号。下图显示了 a=70,b=20 时的矩形 脉冲信号波形。(b-a)表示其宽度。 沈阳理工大学学士学位论文13图 2.17 矩形脉冲的图形 图 2.18 矩形脉冲的框图9.
33、 单位冲激信号 (2.9)0()1t()t单位冲激函数用箭头表示,它示意表明, 只在 t=0 点有一“冲激” ,在 t=0 点()t以外各处,函数值都是零。图 2.19 单位冲激信号的图形 图 2.20 单位冲激信号的框图10. 符号函数 (2.10)1sgn()t(0)t与阶跃函数类似,对于符号函数在跳变点也可不予定义,或规定 sgn(n)=0。显然,在可以利用阶跃信号来表示函数 sgn(t)=2u(t)-1。图 2.21 符号函数的图形 图 2.22 符号函数的框图1411. 正弦信号 (2.11)()sin()ftkt正弦信号与余弦信号二者仅在相位上相差 /2,经常统称为正弦信号,式中
34、k 为振幅, 是角频率, 成为初相位。图 2.23 正弦信号的图形 图 2.24 正弦函数的框图12. 抽样信号 (2.12)sin()tSat函数即 信号是指 sint 与 t 之比构成的函数,注意到,它是一个偶函数,()Satt在 t 的正、负两方向振幅都衰减,当 t= , 2, , n 时,函数值等于零。函数还具有以下性质:()(2.13) 和 (2.14)0()2Satd ()Satd图 2.25 抽样信号的图形 图 2.26 抽样信号的框图13. 单位指数信号 (2.15)()atfe式中 a 是实数,若 a0,信号将随时间而增长,若 a0沈阳理工大学学士学位论文15的指数信号的波形
35、。图 2.27 指数信号的图形 图 2.28 指数信号的框图到此,以上共演示了 13 种常用连续信号的波形。3 基于 LabVIEW 的连续时间系统的时域分析连续时间系统处理连续时间信号,通常用微分方程来描述这类系统。如果输入与输出只用一个高阶的微分方程联系,而且不研究系统内部其他信号的变化,这种描述系统的方法称为输入输出法或端口描述法。系统分析的任务是对给定的系统模型和输入信号求系统的输出响应。分析系统的方法很多,其中时域分析法是不通过任何变换,直接求解系统的微分、积分方程,包括微分方程的求解和已知系统单位冲激响应,将冲激响应与输入激励信号进行卷积极分,求出系统输出响应两方面。本章则通过虚拟
36、仪器的演示来展现时域分析法分析连续时间系统全过程。3.1 时域分析的设计原理系统分析的过程般可以分为三个阶段:首先,建立系统的教学模型,即写出联系系统输入和输出信号之间的数学表达式;其次,采用适当的数学方法分析模型,求出系统在给定激励下的输出响应的数学表示式;最后,再对所得到的数学解进行物理解释,深化系统对信号进行变换处理过程的理解。线性时不变连续时间系统的数学模型是线性常系数微分方程。对于复杂系统,设激励信号为 e(t),系统响应为 r(t),则可用一高阶的微分方程表示16(3.1)()()( )(1101 teEtdtedEterctcrcrd mmmim nnnn 激励 连续时间系统 响
37、应)(te )(tr初始条件图 3.1 含起始状态系统方框图由时域经典解法可知,方程的完全解由齐次解与特解组成。但作为近代系统时域分析方法,建立零输入响应和零状态响应的概念对于在线形系统分析理论上的完善和解决实际问题的方便上有着重要的意义。零输入响应定义为:没有外加激励信号的作用,只有初始状态(起始时刻系统储能)所产生的响应,并记为 rzi(t)。只需求解齐次微分方程即可,而求解齐次微分方程有很强的规律性。它的数学形式为:(3.2)nktzizi keAtr1)(零状态响应的定义为:不考虑起始时刻系统储能的作用(起始状态等于零) ,由系统的外加激励信号所产生的响应,并记为 rzs(t)。它的数
38、学形式为(3.3)()(1tBeAtrnktzszsk通过以上分析,可以得出系统响应=零输入响应+ 零状态响应。零输入响应和齐次解的形式是相似的,求解方法也类似。求零状态响应有冲激函数匹配法,但此法繁琐,可利用另一种方法卷积。卷积的原理就是将信号分解为冲激信号之和,借助系统的冲激响应 h(t),求解系统对任意激励信号的零状态响应。它的运算定义为:(3.4)dtftf)()(21对于线形时不变系统,冲激响应 h(t)的性质可以表示系统的因果性和稳定性,h(t)的变换域表示更是分析线形时不变系统的重要手段,因而对冲激响应 h(t)的分析是系统响应沈阳理工大学学士学位论文17分析中极为重要的问题。冲
39、激响应 h(t)定义为:系统在单位冲激信号 (t) 的激励下产生的零状态响应。由于任意信号可以由冲激信号的组合来表示,即(3.5)()(ettd若把它作用到冲激响应为 h(t)的线性时不变系统,则系统的响应为(3.6)()()()()()rtHetetdeHtdehtd 这就是卷积极分。由于 h(t)是在零状态下定义的,因而式(3-6)表示的响应是系统的零状态响应 rzs(t)。在本章对虚拟仪器的设计开发中,主要是掌握对微分方程的求解,求得零输入响应。然后求得系统的单位冲激响应 h(t),将冲激响应与输入激励信号进行卷积积分,求出系统的输出的零状态响应,最后的完全响应就是零输入响应与零状态响应
40、的和。3.2 前面板和程序框图开发连续时间系统的时域分析前面板如图 3.2 所示。图 3.2 连续时间系统的时域分析前面板首先给定一个二阶微分方程:(3.7)()()(2 tEetdDCtrdBtrA“波形图”窗(即波形演示):用来显示激励信号、零状态响应信号、零输入响应信号、单位冲激响应信号、完全响应信号波形图。18“微分方程系数”键:用来选择待输出的系统微分方程各阶次的系数。按动该键可以改变系数的值,产生不同的零状态响应信号、零输入响应信号、单位冲激响应信号、完全响应信号的波形。“系数 a 值” 键:用来选择待输出的激励信号的系数。按动该键可以改变系数的值,产生不同的激励信号波形图。“初始
41、状态”键:用来选择系统得初始状态 r(0_)、r(0_) 的值。按动该键可以改变r(0_)、 r(0_)的值,产生不同的零状态响应信号、零输入响应信号、完全响应信号的波形。“原理介绍”键:用来调用原理介绍子 VI,该 VI 详细介绍了整个分析的理论内容和各响应的计算过程。“学生动手”键:用来调用学生动手子 VI,该 VI 详细介绍了整个面板的设计过程和使用到的控件的功能。“结束”键:具有关闭程序运行的功能。连续时间系统的时域分析程序框图如图 3.3 所示。 图 3.3 连续时间系统的时域分析程序框图此程序框图演示的是求解系统响应的现代解法求解零输入响应与零状态响应进而求得完全响应。框图实现的第
42、一步就是解微分方程,LabVIEW 提供了各种专门解微分方程的节点控件,在实际应用中可根据不同需要灵活选择。此处使用的控件是(多项式求解控件) ,这个节点是能够解齐次微分方程实数根或复数根的控件,其输入是数组的形式,在这里即是微分方程的系数(注意:是由低阶系数到高阶系数输入) 。此控件还可以解高阶微分方程,其阶数根据所输入数组的元素来判断是几阶的沈阳理工大学学士学位论文19微分方程,要是想将数组的元素增多,直接选中目标拉伸即可。因为微分方程解的根的形式不同决定了最后结果算式的差别。对于本实验的二阶微分方程的例子,根的结果有三种不同情况-实数根(无重根) 、两重根、复数根,所以应根据不同的情况来
43、计算。选择过程:将方程系数的数组形式先转化为簇,使用节点 ,簇是一种数据类型,是由若干不同数据类型的成员组成的集合体,类似于 C 语言中的结构体。再使用解除捆绑节点(unbundle) 将簇化为双精度数,每个端口对应输出的是一个簇成员就是浮点数。每个簇成员在端口上出现的顺序与它的逻辑顺序一样。接着将解析出来的簇成员用 LabVIEW 中的加法、减法、乘除法节点运算来根据方程的系数计算来决定。acb42再用 LabVIEW 图形化的 CASE 结构,与 C 语言等文本式编程语言不同,此处的CASE 结构是一种图形化的设计。相当于 C 语言中的 switch 语句。LabVIEW 中的CASE 结
44、构如图所示, 框图上左侧的问号是选择端口,和 C 语言中的 switch 语句中的“表达式”是相同的概念,端口外部的控制条件有 3 种可选:布尔型、数字整型和字符串型。此处接的是布尔型。在这里使用的是两层 CASE 结构嵌套的形式:根是两个实数的时候(即 0)进入第一个 CASE 的 TURE 情况,若是重根或共acb42轭复根是进入 FALSE 情况,在第二个 CASE 结构中来实现后面的两种情况,重根进入TRUE 的情况,虚根进入 FALSE 的情况。进入 CASE 框架后在框架内用多项式求解控件解除方程的根。 解出方程的根是复数形式,这时就要用将根化为实部和虚部两部分的控件 来进行运算。
45、在图形的输出方面,使用了公式节点的形式,就是将数学公式写入节点框架内,由节点的框架外部的程序输入参数,最后可得运算结果。这里的结果只是数字的形式,在节点公式外部使用 for 循环的结构 ,它和 C 语言中的 for 循环相同,其中的 i是重复端口,初始值为零,每次循环的递增步长为 1。N 是计数端口,代表循环次数,程序运行前必须要赋值。在此给 N 赋值为 20,用 20 个点绘出波形。在本实验中还用到了本地变量,本地变量相当于传统编程语言中的局部变量。本地变量的优点是可以在同一个 VI 框图程序中的不同位置多次为指示赋值,或多次从控制中取出数据,或是为控制赋值,从指示中取出数据。使用本地变量可
46、以在框图程序的不同位置访问前面板对象。前面板对象的本地变量相当于其端口的一个拷贝,它的值与该端口同步。20实验中的学生动手和原理演示都使用了 SubVI(子 VI)。因 VI 具有层次结构和模块化设计的特点,SubVI 相当于常规编程语言中的子程序,在 LabVIEW 中,用户可以把任何一个 VI 当作 SubVI 来调用。因此在编程中有效地利用 SubVI,简化 VI 框图程序的结构,使其更加简洁,易于理解,以提高 VI 的运行效率。在使用 SubVI 时要注意为连接端口建立连接。至于本实验中的 SubVI 需要在运行时显示其前面板,所以要定义好 SubVI 的属性在属性对话框中选中 Sho
47、w Front Panel When Called,这时当程序运行到这个 SubVI 时,前面板就会自动跳出来演示。在整个程序中,学生动手,原理演示,根的三种情况的演示等内容都是做为 SubVI 来实现的。最后在求解零状态响应的时候是使用激励信号和单位冲激信号卷积,在 LabVIEW中有做卷积的控件节点 ,由它来计算出零状态响应,然后用节点 将零输入响应和零状态响应输出在一个波形显示图中,再用节点 将两者相加得到完全响应输出在前面板对应的完全响应波形显示图中。几种根不同情况下的零输入响应波形,在原理说明子 VI 中演示,而原理说明子VI 也需调用根为实根、重根、虚根三个子 VI。原理说明子 V
48、I 的前面板和程序框图如图 3.4 和图 3.5:沈阳理工大学学士学位论文21图 3.4 原理说明子 VI 的前面板22图 3.5 原理说明子 VI 的程序框图当微分方程的两个根是两个不同的实数根时调用的子 VI 前面板和程序框图:图 3.6 微分方程的两个根是两个不同的实数根时的图形和框图沈阳理工大学学士学位论文23当微分方程的两个根是两重实数根时调用的子 VI 前面板和程序框图:图 3.7 微分方程的两个根是两重实数根时的图形和框图当微分方程的两个根是虚根时调用的子 VI 前面板和程序框图:图 3.8 微分方程的两个根是虚根时的图形和框图244 基于 LabVIEW 的连续信号的频谱分析这一章也属于变换域分析的内容,主要讨论傅立叶变换,也就是分析信号的频谱,利用 LabVIEW 提供的各种专门用于信号分析的节点控件,在频谱分析方面具有独特的优势,尤其利于教学演示。4.1 傅立叶变换的原理及实现4.1.1 设计原理傅立叶变换是在傅立叶级数正交函数展开的基础上发展而产生的,也称傅立叶分析。由数学分析课程已知,按照傅立叶级数的定义,周期函数 f(t)可由三角函数的线性组合来表示若 f(t)的周期为 T1,角频率 =2/T