【综合文库】
虚拟仪器
实 验 报 告
姓名: 邱发生 班级: 测仪093 学号: 5801202294
虚拟仪器实验室
2022.11
实验一熟悉虚拟仪器软件设计环境
一、实验目标
1. 理解LabView编程结构的基本概念
2. 掌握LabView中循环结构和移位寄存器的基本使用方法 3. 掌握LabView中公式节点的使用方法
二、实验设备
计算机若干台,LabVIEW虚拟仪器平台 1套,打印机 1台。
三、实验要求和内容
LabView中的结构中的For和While相当于别的语言中的各种循环语句,而顺序结构主要为了方便于进行和时间相关的编程。本单元基本要求为循序渐进地学习和调试结构相关的内容,重点在于掌握LabView中进行循环和时间相关编程的方法。
1.使用For循环产生100个随机数。在随机数产生的同时判定当前随机数的最大值和最小值。有时称其为“流动的”最大值和最小值。在前面板上显示流动最大值、最小值和当前的随机数。循环中一定要包含Time Delay Express VI以便用户可以观看值随着For循环的运行而更新。
2.构建VI,每秒显示一个0到1之间的随机数。同时,计算并显示产生的最后四个随机数的平均值。只有产生4个数以后才显示平均值,否则显示0。每次随机数大于0.5时,使用Beep.vi产生蜂鸣声。
3.创建前面板有3个圆LED的VI。运行程序时,第一个LED打开并保持打开状态。1秒钟以后,第二个LED打开并保持打开状态;再过2秒钟,第三个LED打开并保持打开状态。所有LED都保持打开状态3秒钟,然后程序结束。
四、 实验步骤和实验结果
题目一 实验步骤:
步骤一:在前面板上选择三个数值显示控件,并分别将名称改为随机数,最大值和最小
值。
步骤二:在框图的结构中选择For loop控件,在循环次数处填100次,并在其中放置一个Time Delay延迟时钟,将延迟时间设置为1秒。
步骤三:在框图的比较中选择两个Max & Min控件,把它们和随机数,最大值和最小值一起放置在For loop控件中。
步骤四:在For loop控件上添加两个移位寄存器。在每一个移位寄存器上创建数值常量控件,在数值常量控件上分别填上零和一,然后再将其和Max & Min控件相连并分别显示最大值和最小值。将随机数加入到循环中,将剩余的控件按要求连接起来。 步骤五:运行。 实验结果
题目二 实验步骤
步骤一:在前面板上选择五个个数值显示控件和一个停止按钮,并将数值显示控件的名称分别改为随机数、随机数1、随机数2、随机数3和平均值。
步骤二:在框图的结构中选择While loop控件,并在控件上加上一个移位寄存器,在While loop控件的左边添加三个元素以存储产生的四个随机数,之后在While loop控件中添加一个条件结构控件,并防止一个等待下一个整数倍毫秒时钟,将时间设置为1000。
步骤三:步骤三:在一个条件结构控件的真选项中添加复合运算控件并选择其中的加法运算,再添加一个除法器以求得平均值,在False选项中添加常数零。这个Case控件的真假由循环次数是否大于四来选择。将随机数加入到循环中,将剩余的控件按要求连接起来。
步骤四:运行。
实验结果
题目三 实验步骤:
步骤一:在前面板添加三个Round LED,并将它们命名为Boolean1,Boolean2,Boolean3。 步骤二:在框图中添加Flat Sequence Structure,并且添加三个Frame。在每个Frame中添加一个定时时钟,将定时时间设为1秒。在每个Frame中加入三个Local Variable并将名称改为Boolean1,Boolean2,Boolean3,再用True or False Constant 与其相连,对第一、二、三、四个Frame 的True or False Constant分别设置为TFF,FTF,FFT,TTT。 实验结果
实验二图形化编程实现各种运算
一、实验目标
利用LabVIEW实现各种数学运算(数组,矩阵,代数)和字符串与逻辑运算
1. 理解LabView的数组和簇的基本概念 2. 掌握数组的创建和使用 3. 理解多态性的含义 4. 掌握簇的创建和使用
二、实验设备
安装有LabVIEW的计算机。
三、实验要求和内容
LabView中的数组和别的语言中数组的概念基本一致,但在LabView中数组是Control或者Indicator,也就是说,它是有界面的。LabView中的簇类似于C语言中的stucture数据结构或C++中的Class类。本单元基本要求为循序渐进地学习和调试数组和簇的相关内容。
1.创建子VI计算两个输入向量A和B内积。要求程序能够判断两个向量的元素个数是否相等,相等则计算内积,否则利用beep.vi报警并且弹出对话框提示。内积子VI的实现必须使用最底层的方法实现,不能直接调用函数面板里的VI,将VI计算结果和数学函数的计算结果做比较,仔细检查计算程序。
2. 创建VI,计算并绘制二阶多项式y = Ax2 + Bx + C在任意区间x0到xN-1上的曲线。其中系数A,B和C以及区间范围要求能在前面板控件由用户自行输入,并使用前面板控件输入点数N以控制图形的绘制精度。在波形图上绘制x-y图形指示器。坐标轴的刻度要求与实际情况一致。
3.创建VI,包含一个由6个按钮组成的簇,这些按钮标签分别是Option1到Option6。当VI执行时,VI将等待按钮之一被按下。当按一个按钮时,使用Display Message To User Express VI指出所选择的选项。重复以上过程直到按下Stop按钮。确保加入Time Delay Express VI使用户有时间按按钮。
四、 实验步骤和实验结果
题一:计算两个输入向量A和B内积,要求程序能够判断两个向量的元素个数是否相等,相等则计算内积,否则利用beep.vi报警并且弹出对话框提示。首先需要写出N个点中每个点x坐标的计算公式,然后利用多态性简化程序的编制(既把二项式的计算做成子VI,当输入单个值时输出单个值,输入数组时也输出数组。结果如图:
题二:计算并绘制二阶多项式y = Ax2 + Bx + C,使用前面板控件输入点数N,计算x0到xN-1
区间上的多项式。在波形图上绘制y-x图形指示器。如图:
题目三:可以使用Cluster to Array函数把布尔簇转换成布尔数组,簇中的每个按钮代表数组中的一个元素。Search 1D Array函数从Cluster to Array函数创建的一维布尔值数组中搜索TRUE值。数组中的任何元素为TRUE值表示用户单击了簇中的一个按钮。Search 1D Array函数返回其在数组中找到的第一个TRUE值的索引值并将其传送到Case结构的选择器端子。如果没有按过按钮,Search 1D Array函数返回索引值-1,执行空操作的-1分支执行。
While循环重复检查布尔簇控件的状态,直到按下Stop按钮。结果如图:
实验三图形化编程实现信号分析
(一)时域相关分析
一. 实验目的
1.在理论学习的基础上,通过本实验加深对自相关分析和自功率谱分析的概念、性质、作用的理解。
2. 掌握用相关分析法测量信号中周期成分的方法。
二. 实验原理
(1) 自相关
相关是指客观事物变化量之间的相依关系,在统计学中是用相关系数来描述两个变量x,y之间的相关性的,即:
式中:
ρxy是两个随机变量之积的数学期望,称之为协方差或相关性,表征了x、y之间的关联程度;
σx、σy分别为随机变量x、y的均方差,是随机变量波动量平方的数学期望。如果所研究的随机变量x, y是与时间有关的函数,即x(t)与y(t),这时可以引入一个与时间τ有关的量ρxy(τ),称为相关系数,并有:
式中假定x(t)、y(t)是不含直流分量(信号均值为零)的能量信号。分母部分是一个常量,分子部分是时移τ的函数,反映了二个信号在时移中的相关性,称为相关函数。因此相关函数定义为:
或
如果 x(t)=y(t),则称 为自相关函数,即:
(2)自功率谱
随机信号的自功率谱密度Sx(?)与自相关函数Rx(τ)是一傅立叶变换对,即
Sx(?) =????Rx(?)e?j2?ftd?
Rx(τ
)=????Sx(f)ej2?ftd?
自相关函数和自功率谱函数分别在时间域和频率域描述了一个信号自身波形不同时刻的相关性(或相似程度),揭示了信号波形的结构特性,通过自相关和自功率谱分析我们可以发现信号中许多有规律的东西。为工程应用提供了重要信息,特别是对于在噪声背景下提取有用信息,更显示了它的实际应用价值。
三. 实验仪器和设备
计算机若干台,labVIEW虚拟仪器平台 1套.
四. 实验步骤及内容
1. 打开labVIEW中的\自谱和自相关分析\实验脚本,进行信号自谱和自相关分析实验。2. 分别选择labVIEW自谱和自相关分析实验中的信号通道一和通道二的正弦和白噪声按钮,产生正弦和白噪声信号,然后点击多通道信号发生器上的\合成\按钮,产生迭加白噪声的正弦信号,分析和观察上述信号进行自谱和自相关分析后的结果。3. 同样方式产生其他类型的信号,观察分析结果。
4. 点击窗函数通道的\矩形窗\、\汗宁窗\、\哈宁窗\、\三角窗\、“指数窗” 按钮以及“观察间隔”和“样本数”等按钮,分析和观察信号加窗以后的时域波形与自谱和自相关分析后的变化。
5. 调整滤波器类型及其参数。分析和观察信号加窗以后的时域波形与自谱和自相关分析后的变化。
实验所附主程序文件名:频率响应函数与数字滤波.vi 实验部分运行结果:
分别选择labVIEW自谱和自相关分析实验中的信号通道一和通道二的正弦和白噪声按钮,产生正弦(三角波/方波)和白噪声信号,然后点击多通道信号发生器上的\合成\按钮,产
生迭加白噪声的正弦信号,分析和观察上述信号进行自谱和自相关分析后的结果。
调整滤波器类型及其参数后:
结论:
1. 周期信号所含各分量的频率是离散的。
2. 各次谐波的频率关系具有谐波性,各次谐波的频率都是基频w0的整数倍,相邻频率的
间隔为w0或整数倍。 3. 周期信号的幅值是收敛。
4. 自相关函数的幅值Rx(t)是偶函数,及Rx(t)=Rx(-t)。 5. 6. 7. 8.
当t=0时,自相关函数Rx(t)等于信号的均方值,即Rx(0)=§2x. 当t不等于0时,自相关函数Rx(t)的值是小于Rx(0)的。
当时间间隔t足够大,自相关函数接近于信号的均值函数的平方。
周期信号的自相关函数仍是周期信号,两者周期相同,但不反映相位信息。
自相关分析作为信号的时域分析方法之一,与波形分析、频谱分析相比,它具有能够在强噪声干扰情况下准确地识别信号周期的特点。因此,为工程应用提供了重要信息,显示了它的实际应用价值。
(二)频谱分析
一. 实验要求
1.在理论学习的基础上,通过本实验熟悉典型信号的波形和频谱特征,并能够从信号频谱中读取所需的信息。
2.了解信号频谱分析的基本方法及仪器设备。
二. 实验原理
1.典型信号及其频谱分析的作用
正弦波、方波、三角波和锯齿波和指数信号是实际工程测试中常见的典型信号,这些信号时域、频域之间的关系很明确,并且都具有一定的特性,通过对这些典型信号的频谱进行分析,对掌握信号的特性,熟悉信号的分析方法大有益处,并且这些典型信号也可以作为实际工程信号分析时的参照资料。本实验利用labVIEW虚拟仪器平台可以很方便的对上述典型信号作频谱分析。
2.频谱分析的方法及设备
信号的频谱可分为幅值谱、相位谱、实频谱、虚频谱等等。对信号作频谱分析的设备主要是频谱分析仪,它把信号按数学关系作为频率的函数显示出来,其工作方式有模拟式和数字式二种。模拟式频谱分析仪以模拟滤波器为基础,从信号中选出各个频率成分的量值;数字式频谱分析仪以数字滤波器或快速傅立叶变换为基础,实现信号的时-频关系转换分析。 傅立叶变换是信号频谱分析中常用的一个工具,它把一些复杂的信号分解为无穷多个相互之间具有一定关系的正弦信号之和,并通过对各个正弦信号的研究来了解复杂信号的频率成分和幅值。
信号频谱分析是采用傅立叶变换将时域信号x(t)变换为频域信号X(f),从而帮助人们从另一个角度来了解信号的特征。时域信号x(t)的傅氏变换为:
式中
X(f)为信号的频域表示,x(t)为信号的时域表示,f为频率。
本实验利用labVIEW平台上搭建的频谱分析仪来对信号进行频谱分析。由虚拟信号发生器产生一个典型波形的电压信号,用频谱分析仪对该信号进行频谱分析,得到频谱特性数据。分析结果用图形在计算机上显示出来。
3. 巴特沃斯滤波器
巴特沃斯滤波器拥有最平滑的频率响应,在截止频率以外,频率响应单调下降。在通带中是理想的单位响应,在阻带中响应为零。
滤波器是一种选频装置,可以使信号中特定的频率成分通过,而极大地衰减其它频率成分。在测试装置中,利用滤波器的这种选频作用,可以滤除干扰噪声或进行频谱分析。
根据滤波器的选频作用分为:
1) 低通滤波器
从0~f2频率之间,幅频特性平直,它可以使信号中低于f2的频率成分几乎不受衰减地通过,而高于f2的频率成分受到极大地衰减。
2) 高通滤波器
与低通滤波相反,从频率f1~∞,其幅频特性平直。它使信号中高于f1的频率成分几乎不受衰减地通过,而低于f1的频率成分将受到极大地衰减。
3) 带通滤波器
它的通频带在f1~f2之间。它使信号中高于f1而低于f2的频率成分可以不受衰减地通过,而其它成分受到衰减。
4) 带阻滤波器
与带通滤波相反,阻带在频率f1~f2之间。它使信号中高于f1而低于f2的频率成分受
到衰减,其余频率成分的信号几乎不受衰减地通过。
三. 实验仪器和设备
计算机若干台,LabVIEW虚拟仪器平台1套。
四. 实验步骤及内容
1. 打开\频率响应函数与数字滤波\程序,进行频域分析实验。
2. 分别选择前面板中的信号通道一和通道二为不同频率的正弦信号,产生正弦和白噪声信号,然后点击多通道信号发生器上的\合成\按钮,产生迭加白噪声的正弦信号,分析和观察上述信号进行自谱和自相关分析后的结果。
3. 同样方式产生其他类型的信号,观察分析结果。
4. 在程序中滤波分析之前增添加窗操作,选择\矩形窗\、\汗宁窗\、\哈宁窗\、\三角窗\、“指数窗” 中的不同窗函数,分析和观察信号加窗以后的时域波形与分析结果的变化。
5. 调整滤波器类型及其参数。分析和观察作用结果的不同。 实验所附主程序文件名:频率响应函数与数字滤波.vi 实验部分运行结果:
五:试验中相关问题解答
自相关.vi
1. 程序为何双击直接进入运行状态?
答:文件-VI属性-类别-执行-打开时运行。
2. 程序运行时如何隐藏菜单和工具栏?
答:文件-VI属性-类别-窗口外观-自定义-运行时显示菜单栏/显示工具栏。 3. 该程序存在几层子VI调用? 答:从查看-VI层次结构中查看。 4. 如何显示被调用的子VI面板?
答:直接双击
5. 如何设置两个通道的信号类型,从而体现自相关分析的适用场合? 答:在程序框图中编入两个通道,自相关适用于检查周期信号。 6. 多通道信号发生器对应的子VI文件名是什么? 答:sfgn.vi
查看全文
false