虚拟仪器实验讲义_第1页
虚拟仪器实验讲义_第2页
虚拟仪器实验讲义_第3页
虚拟仪器实验讲义_第4页
虚拟仪器实验讲义_第5页
已阅读5页,还剩43页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、虚拟仪器原理实验讲义虚拟仪器原理实验讲义(物理学院电科07级用)物理科学与技术学院电子信息教研中心2010-01-0848实验1基本使用方法与子程序实验目的:1.掌握LabVIEW软件的基本使用方法2. 掌握LV的子程序建立和使用的基本方法实验要求:1. 能够建立简单的LV程序和子程序,并编辑图标,设置连接器端子类型2. 能够使用LV的帮助系统3. 能够修改控件与指示器的外观4. 能够使用LV的调试工具5. 能够调用子程序6. 能够查看LV程序调用层次实验内容与步骤:Control1. 构建VI,使用圆按钮控件控制方形灯指示器,随时按下按钮将其打开。Indicator2.创建比较两个数字控件输

2、入的VI,当两个值相等时打开LED。在Com parison选项板中选择要使用的函数。LED,当3. 设计VI,用于判断浮点型数字控件中输入的值是否为整数。在前面板放置一个输入为整数时点亮。4. a.使用Simulated Signal Express VI产生两个正弦波,并显示在前面板相应的曲线图中;b .使用前面板上的数字控件能够任意调整每个正弦波的幅值;c.使用Com parison express VI比较两个信号,如果两个信号相等则点亮LED.d .保存 VI 至 U D 盘,命名为 Comp are Sig nals.vi。Amplriun 2对 Graph2-1 s-J I OO

3、 44 fl3in2 Graph075-0.5-0.25-0-0.25-5.5-075-Sine KM0j020.040j0& O.QS 0.1TmeSn1 GraphSn2 GraphAmpKude2Sine ISnAmpttudeSlrw Sm-5 1 5 0 5 1h 6 - -s.ciIB5.构建VI,完成下列任务:a.从前面板上去两个浮点数作为输入:X和丫 ;b .从X中减去丫并在前面板上显示结果;C.用X除以丫并在前面板上显示结果;d.如果输入Y=0,前面板LED指示灯指示被0除。e.将vi命名为Subtract and Divide,并保存到 D盘。Y=0?6.构建VI,

4、使用垂直滑动条控件作为输入,仪表指示器用于输出显示。运行VI时,由垂直滑动条提供的任何输入都将反映在仪表指示器上。随机数函数(Random Number)将"噪声”加入到输入中,因此仪表输出与输入不完全相同。在Run Contimuously模式下运行VI并改变滑动条输入。BPM10X+Rnd*32卜7.4844527.构建VI,该VI具有数字控件用于输入数字 x,使用“加”和“乘”函数计算3x +2X+5.0并用数字指示器显示输出结果。Y48.758.通过使用VI模板和修改Express VI创建一个程序,要求产生125Hz的三角波和加性噪声。Triangle with Unifo

5、rm Noise Triangle with Uniform Noise9. 使用数字控件构造 VI,用于猜测一个1到5之间的整数。在该范围内产生一个随机数,LED,并用 One Button Dialog 函显示在数字指示器中,并与输入比较。如果数字相等点亮 数显示一条消息宣布猜测成功。如果数字不相等,显示一条消息提醒用户所猜的数字不正确。命名为 Guessing Game。X5-;34-Rnd4 852393-LX=Rnd?10. 构建VI接受以英尺为单位的输入值,把该值转换为米和英里为单位的值,分别显示在前面板上各自的指示器中。注意1英里=5280英尺,1米=3.281英尺。使用VI ,

6、证实10000英尺等于1.89394英里,即3047.85米。保存到D盘,命名为Conver.vi。英尺英里米'1100001 1 i i 1 i1.893943047.8511. 设计VI计算两个数字输入的和与差,两个输入分别为x和y。根据两输入的和与差的比较结果(大于、等于或小于),分别点亮三个LED中的一个。验证如下三种情况:1.x=4 和 y=12. x=3 和 y=03. x=2 和 y=-3保存到D盘,命名为 Com parison。大于XY1 »JXX+Y1-1YX-YMl15小于大于等于小于12. 构建VI,接收5个数字输入,将这些数字相加并在仪表上显示结果。

7、如果输入的总和小XIX2于8.0,则圆形指示灯亮。这个灯为绿色,仪表刻度为黄色。Sum46r I 8i '10X3X4X513. 创建前面板,包括 8个LED指示器和一个8位无符号整形数的垂直滑动条控件,显示滑动条的数字指示器, 确保LED分布均匀并底部对齐。 本题用8个LED来表示滑动条中数字的二进制:女口,如果滑动条设置为数字 10,对应的二进制数为00001010=1*( 23)+1*( 21),第1个和第3个LED荧光点亮;用数字 131再检查上述算法,第 0,第1和第7个LED应该点亮,因为 131 的二进制数为10000011=1*( 27)+1*( 20)+1*(2、。A

8、 131I . I . I . II . I . I . I . I . I . i . I . I0204060 Sa 100120140 1EC 160200220240 2550123456714. 构建VI,产生两个随机数(0到1之间)并在仪表上显示两个随机数。仪表上分别设置标签"Random numberl "和Random number2 "使其中一个仪表呈蓝色而另一个仪表呈红色。当红色仪表上随机数值比蓝色仪表随机数值大时,用一个方形LED显示绿色;否则LED显示黑色。运行 VI几次并观察结果。在框图上选择Highlight Execution并观察数

9、据流过代码的过程。15.本题将构建停车信号灯。创建从0到2变化的刻度控件,该控件具有 3个LED显示:绿色黄色和红色。当在刻度盘0位置时,时VI打开绿色LED ;当在刻度盘1位置时,变为黄 色;当在刻度盘2位置时,变为红色。Dial丿红色yrL J2点坐标,计算2点长度,16.参考教材中的使用步骤,按照课堂例题创建程序:给定计算公式:r = J(X2 -X,)2 + (丫2 -yJ2。将所生成程序设置为子程序,建立图标和连接器,保存在磁盘中。X1X2h1rViV2|55.4707t1File EditHelpPilcSn EditorCopy frontI aauk £ WhitE

10、IAr=Sqr()16 ColOi's16 Colors258 Colors356 ColorsI , Show TeirmlralsOKrSqrOCancelHelp17.建立程序:给出3点A、B、C,调用所生成子程序,求折线AB+BC长度。使用查看层次命令观察程序的调用层次。Xa¥XbrXcAB+BC932889" * IYbYa¥18.创建VI计算两点(X1, Y1 )和(X2, Y2)之间的斜率。用两种方法将该VI创建成子Sign VI制作图标,配置连接器19.创建名为Sign.vi的VI,该VI有一个浮点型的输入。如果输入是正数,一个布尔型的输出

11、为真;如果输入是负数,另一个布尔型的输出为真。给窗格,使之成为能被其他VI使用的子VI。再加入描述信息,Con text Help将会显示以下信息: “ Test if an input is positive or negative。”点击 File 下 VI Properties 选择Documentation 来键入信息。也ridow Helpition Font)00 OrF1X>0?X<0?oX初亠XO?2AuiTest if an input is positive or n egativeVI。右击图标会发现连接器窗格里输依照以下步骤修改:20.打开一个已有的 VI,

12、将其修改并使其成为一个子入和输出的数目不正确,端子美元正确地连接到连接器。(1)右击图标窗格选择Show Connector。再次右击图标窗格并选择Disco nn ect All Termi nals 。再次右击图标窗格,在P atterns菜单中选择相应的连接器样式。左边的端子指定给相应控件,右边的端子指定给指示器。双击图标打开Icon Editor ,为VI绘制图标。把Find Greastest作为子VI放置在新的 VI上,以验证连接器窗格已经正确设置。添加控件和指示器,然后以不同的输入反复运行程序数次,输出应该总是等于输入到子VI里最大的数值。21.构建VI,使用LabVIEW固有函

13、数计算用户输入3个数的平均值。在程序中,首先将 3个数求和,接着再除以3.得出的平均值显示在前面板上。另外,再添加一段代码,将平均值乘以【0,11范围内的随机数。将计算平均值的一组代码用两种方法创建成子VI,并编辑X1Sum站|6X2Average2X3Average *Rnd-0.463222 图标以便表示子VI的功能,即计算3个数的平均值。14|31 Afipllcfltlori FontFile Edit Oparria T(MlS &口讪4& 些idaw 也Ip 副丿MlSumX1FX2Average-jm-AvX3III22.打开Check Limit.vi,产生正弦

14、波并将其画在波形图中。将正弦波的值与数字控件的值相比较,估计正弦波是否超过设置的极限。该VI也用到了下一章将要学的的While循环。编辑连接器图标,使其仅拥有必需数量的端子,把它们连接到适当的控件和指示器,以便于当该VI将来用做子VI时,可以访问到所有前面板对象。此外,改变VI,使得VI运行时隐藏工具条、菜单条和滚动条。提示:从File下VI Properties进入对话框并选择Win dowAppearanee (窗口外观),然后选择 Customize。upper limitxOdsi-l-yl0,00-Jjl.00Y町 I; Sm Graph03OJS0402lower Um It xO

15、<dx盯护g®III I I I III ID 510IS20253D35 4045SO 5550r#Twco阿-00.153480,31200:00:00YYtY-MM-l dt1 1.000.4 閃 521 0.59448output values9topSTOP(23.创建子VI,将4个输入多路转换到单个输出。子VI应具有4个浮点数字控件(标注为Select)。In1到In4),一个浮点数指示器(标注为 Out),一个8位无符号整数控件(标注为如果 Select=1,那么 Out=ln1 ;如果 Select=2,那么 Out=ln2 ;如果 Select=3,那么 Ou

16、t=ln3 ; 如果 Select=4,那么 Out=ln4。打开一个新VI并把Quite LabVIEW VI放置到框图中。选择下VI Properties编辑VI属性,选择Execution类。勾选 Run when opened旁的复选框。把该 VI保存到D盘。关闭该 VI然后再打开,看看发生了什么?试着领会以下如何编辑该VI 。(提示:用子VI)。225.创建VI求出下列二次方程的根 x,这里常量a,b和C是实数。一般来说,ax +bx+c = 0VI只需要找出正确的根。二次方程的根不是两个实数就是两个复数。而对于这个问题, 次方程的根由下面给出的关系得到。x1 =(-b + Jb2

17、-4ac)/2a和 x2 = (-b - Jb2 -4ac)/2a ;创建VI,根据上面的关系计算出根x1和x2。前面板要求:2个数值输出用来显示 2个根,VI变3个输入用来输入常量 a,b和C。框图建立好之后,再创建图标和配置连接端子使该成子VI。将该VI放置在新建的 VI之上,连接端子到控件和指示器,验证前面的工作是否VI称课后设计:1.运用Falling Edge.vi,判断脉宽调制 VI中输出信号何时出现下降沿。本题创建一个为Rising Edge.vi,每当一个完整的输出信号周期完成后,产生一个上升沿,在下一时钟周期到来时,该 VI的布尔输出返回真。与Falling Edge VI不

18、同,该VI只有两个输入:PeriodVI中和Clock。因为信号占空比的变化只改变下降沿的位置而不改变上升沿的位置,因此不必输入 Duty Cycle。保存到 D盘命名为 Rising Edge.vi。2.本设计题中创建一个模拟售货机的VI。售货机销售三种商品:1. 糖块$ 0.80;2.薯片每包$ 0.60 ;3. 口香糖 $ 0.40。售货机只接受5美元纸币、1美元纸币、25美分、10美分和5美分。及三个整形数字控前面板的输入应该包括一个数字控件输入用户投入到售货机里的钱数,件用于指定用户想从售货机购买的每一种商品的数量。VI需要检查输入的钱数是否大于或等于所选择购买的总金额。如果钱不够,

19、使用Disp lay Message to User Exp ress VI显示消息提醒消费者投入更多的钱。然后,点亮前面板上的LED指示器并在数字指示器中显示所需要的钱数。 如果用户投入自动售货机的钱数过多,则要输出找回用户的钱数,示自动售货机分配的1美元、25美分、10美分和5美分每种币值的个数。3.构建VI,产生一个-10到10之间的随机数。在 VI的前面板上用指示器来显示随机数的值,然后点亮随机数所在范围对应的LED。用一个LED显示负的随机数,一个LED显示在0到4范围内的随机数, 一个LED显示大于等于5的随机数。改变LED的属性使其点亮时为黄色,关闭时为暗黄色。对指示器使用描述性

20、的标签,用Align Objects和DistributeObjects菜单中的工具在框图和前面板中均匀地分布对象。4.创建子VI计算年龄,出生日期和当前日期作为输入。用3个独立的整型控件来输入日期:一个表示日,一个表示月,一个表示年。月份用阿拉伯数字表示。例如,1表示一月,2表示二月,等等。为 VI仓U建图标,将输入和输出连接到图标的端子上。完成后,在VI Properties里添加说明信息,键入以下文字到说明信息:"Finds age in years of aperson give n the curre nt date and the person' birth da

21、te as input. ”5.创建子VI计算人的体重指标(BMI , Body Mass Index )。体重指标时肥胖程度的国际标准。子VI由两个数值输入:体重和身高,单位分别是磅和英寸。用下面的公司计算体重指标BMI =(703*W)/H2, W表示体重单位是磅,H表示身高单位是英寸。在数值指示器上显示得到的 BMI。根据表1给体重分类并输出相应的文字信息。还应该由一个“ warning ”的布尔型输出表示任何不健康的输入,输出为True表示不健康(例如:体重过轻、超重或肥胖)。表1BMI分类<18.5过轻18.5-24.9健康25-29.9超重>=30肥胖BIMI! 

22、71;0325.1趙重实验结果:HrJl30Warning实现所要求的程序并可以正确执行能够独立完成基本的操作实验2:循环结构实验目的:掌握LV的FOR循环和 WHILE循环程序建立和使用的基本方法实验要求:1.能够正确建立基本的 FOR循环和WHILE循环程序2.计算调和级数 S(n) = 1+2+3+ (n1) + n=S(n-1) + n3. 用两分法求一元二次方程的根4. 能够正确理解和使用结构框上的输入输出端子5. 能够正确使用移位寄存器实验内容与步骤:1.用两种For循环方法计算99以内所有偶数的和。Numeric24502.使用For循环产生100个随机数。在随机数产生的同时判定

23、当前随机数的最大值和最小值。有时称其为“移动的”最大值和最小值。在前面板上显示移动最大值、最小值和当前的随机数。循环中一定要包含Time Delay Express VI ,以便用户可以随着For循环的运行而看清数值的更新。3.用两种 While循环的方法计算 99以内所有偶数的和。4.创建VI ,使用每秒循环100次的While循环,以计算在前面板上按下按钮的时间占总运行时间的百分比。循环连续运行直到用户按下停止按钮位置。前面板上应该有指示器来显示VI运行经历的时间。在每次循环时更新指示器。当停止按钮按下后,另一个指示器显示Butt on按钮按下的时间占总运行时间的比率。实验结果:实现所要求

24、的程序并可以正确执行能够独立完成基本的操作实验3:条件分支、顺序结构和公式节点实验目的:1.掌握LV的CASE结构和顺序结构的建立与使用的基本方法2.掌握LV的Local Varial和Global Variant的建立与使用的基本方法3.掌握公式节点的使用实验要求:1.能够建立LV的CASE结构和顺序结构的程序2. 能够正确设置各个条件帧3. 能够正确使用输出端子4. 能够使用顺序结构中的局部变量5. 能够公式节点对复杂公式进行计算实验过程与步骤:1. 构建VI,每秒显示一个0到1之间的随机数。与此同时,计算并显示最后产生的四个随机数的平均值。只有产生4各数后才显示平均值,否则显示0.每次随

25、机数大于0.5时,使用Beep.vi产生蜂鸣声。2.用Case结构的两种判断条件的方法计算y = JX,当x > 0,输出y的值;当x<0,弹出消息对话框“ x<0,无结果”同时红灯亮。3.创建VI,在前面板上放置 3个圆形LED。程序运行时,第一个LED打开并保持打开状态。1秒以后,第二个LED打开并保持打开状态;再过 2秒,第三个LED打开并保持打开状态。所有 LED都保持打开状态 3秒,然后程序结束。4.创建一个计时测试程序,比较公式节点和本地LabVIEW数学函数的平均执行时间。此Case结构。要求 For程序需要一个 For循环、一个单层顺序或叠层顺序结构以及一个循

26、环运行计时测试N次,然后使用Statistics Express VI对结果计算平均值。要求顺序结构在代码运行之前和代码运行之后对Tick Count进行采样。Case结构要判定用户是要执行公式节点还是要执行 LabVIEW固有数学函数。用下面的公式来测试时间:a =X2/4b = (2* X) +1,这里X表示输入,丫表示输出。丫 =si na( + b)对每个分支运行计时测试程序。哪种方法执行最快?哪种方法最容易编程?别人要看程序时,哪种方法更容易理解?5.用一个布尔开关同时控制两个While循环。6.利用本地变量给一个控件赋值,并从一个指示器中读出数据。7.利用全局变量在VI之间传递数据

27、。第1个VI产生正弦波送至全局变量,第2个VI从全局变量读取波形数据并在Waveform Graph中显示出来。课后设计:1. 构建VI,用下面的公式计算最大心率:性别最大心率214-Age*0.8209-Age*0.7在前面板上放置数值控件来输入年龄,放置滑动开关来输入性别。 数值指示器显示最大心率。使用公式节点计算心率公式。2.创建VI,计算任意正整数 n的超级阶乘,超级阶乘等于11 * 22 * 33 nn的值。如果用户输入的值不是正数,则显示信息提醒用户输入不正确,请重新输入。提示:本题要用到 One Button Dialog函数和Power of X子VI。3.构建VI,使用公式节

28、点来计算下面的公司:y1 = 10si n( a) + bh 3输入变量是a和b,y2 = a3 + b2 +100输出是y1和y2。4.使用公式节点来计算人的体重指标( BMI,Body Mass Index )。体重指标时肥胖程度的国际标准。子 VI由两个数值输入:体重和身高,单位分别是磅和英寸。用下面的公司计算体重指标 BMI = (703* W)/ H 2,W表示体重单位是磅,H表示身高单位是英寸。在数值指示器上显示得到的BMI。根据表1给体重分类并输出相应的文字信息。还应该True表示不健康(例由一个“ warning ”的布尔型输出表示任何不健康的输入,输出为如:体重过轻、超重或肥

29、胖)。表1 BMI分类<18.5过轻18.5-24.9健康25-29.9超重>=30肥胖BMI25.1超重WarningOK实验结果:实现所要求的程序并可以正确执行能够独立完成基本的操作实验4:数组和簇实验目的:掌握LV的数组建立和使用的基本方法实验要求:1.能够建立、使用数组和簇2. 能够使用多种内部数组和簇函数3. 能够理解并应用多态性的概念实验内容与步骤:1.用前面板创建数组和循环两种方法创建一个5X 4的数组。2. 创建VI,计算两个n维向量的标量积。将使用数组和数学函数得到的计算结果和DotProduct.vi ( Function模板)的计算结果相比较,检查计算程序。V

30、i V2=vi(0)V2(0)+v i(1)V2(1)+vi(n)V2(n)3.VI,计算两个三维向量的向量积。V1 X V 2=v1(1)v2(2) -v1(2)v2(1)"v1(2)v2(0) -v1(0)v2(2)Lv1(0)v2(1) - v1(1)v2(0) j4.创建子VI对两个输入矩阵 A和B执行矩阵乘。矩阵A是nx m矩阵,而矩阵B是mx p矩阵。产生的矩阵 C是n X P矩阵,这里C=AB。将使用数组和数学函数得到的计算结果与aX B.vi的结果做比较,仔细检查计算程序。5.使用Demo Temp.vi创建VI,读取20个温度测量值,将每一个温度测量值与测量时间(包

31、括秒)和日期绑定在一起。加入Time Delay Express VI,使循环以每秒 4次的速度显示。运行程序并查看输出数组中的时间戳,确认每秒有4个采样。6. VI,该VI产生500个随机数并绘制在波形图指示器上。计算随机数的平均值并在前面板上显示结果。使用Statistics Express VI计算随机数的平均值。7. VI,该VI计算并绘制二阶多项式y = Ax2 + Bx + C。VI应使用前面板控件来输入系数a , B和C,并使用前面板控件输入点数N,计算X0到Xn-1区间上的多项式。在波形图上绘制y-x图形指示器。8.VI,包含一个由6个旋钮组成的簇,这些旋钮分别是Option1

32、到Option6。当执行时,VI将等待用户按下其中一个按钮。当按下一个按钮时, 使用Dis play Message To User Express VI指出所选择的选项。重复以上过程直到按下Stop按钮。确保加入 Time Delay Ex press VI以使用户有时间按按钮。LabVIEW中典型的状态机由一个 While提示1:这个程序需要一个具有用户菜单的简化的状态机体系结构。循环、一个Case结构和一个移位寄存器组成。状态机的每一个状态都是Case结构中的独立分支。把在某种状态下应该执行的 VI和其他代码放到正确的分支中。移位寄存器存储循环的下一次迭代将要执行的状态。在典型的状态机中

33、,有时当前所在的状态结果要控制将要进入的下一个状态,因此需要使用移位寄存 器。在上述程序中,任意两个状态都是不相关的,所以移位寄存器是可选的。Cluster to Array函数把布尔簇转换成布尔数组,簇中的每个按钮代表数组中的一个元素。Search 1D Array 函数从 Cluster to Array 函数提示2:可以使用簇中的自锁式布尔按钮来构建状态机应用程序菜单。创建的一维布尔型数组中搜索 TURE值。若数组中的任何元素的值为 TRUE则表示用户单击了簇中的一个按钮。Search 1D Array 函数返回其在数组中找到的第一个值为TRUE的项的索引值并将其传送到Case结构的选择

34、器端子。如果没有按下按钮,Search 1D Array函数返回索引值-1,执行空操作的-1分支。While循环将重复检查布尔簇控件的状态,直到按下StoP按钮为止。课后设计:VI中就点成绩登记1.构建VI,使之能够从输入数组中搜索到指定的数值。如果找到指定的值,在亮LED,并显示出指定值在数组中的相应顺序。2.设计VI,根据输入的3个考试成绩数组,计算得到一个簇数组包括平均成绩、和班级排名。每次的考试成绩对应一个数组,平均成绩是这样定义的:第一次考试占30%,第二次考试占30%,期末考试占40%。成绩等级按照平均成绩,以下表所列出的标准来确定。提示:在确定成绩登记的时候使用Case结构将会更

35、方便。平均成绩标准平均成绩成绩等级0%-59%F60%-69%D70%-79%C80%-89%B90%-100%A给学生排名,成绩最高的排名第1,最差的排名等于班级里的学生人数。可以在循环中使用Sort 1D Array和Search 1D Array函数来建立学生排名。将所有的信息(平均成绩、成绩等级和班级排名)打包成簇数组,每个簇包含一个学生的所有信息。在前面板上显示这个簇数组。用不同的输入值测试 VI的功能。当簇数组表示一个班而不是少数学生成绩的时候,簇数组就会变得非常庞大。由于前面板预留空间一次只能显示输出数组的一个元素,因此就要使用索引依次显示簇数组里不同的元素。3.构建VI,根据输

36、入数值n得到一个包含n个斐波那契数的数组,从Fi开始。斐波那契数是一个数列,表示成 Fn,定义如下:Fn = Fn/ + Fn,其中F1=1, F2 = 1。下表列出了前面一些n值所对应Fn的值(所有的输入都是正整数)。nFn1121324355687138219341055前10个斐波那契数在决定采用哪种循环之前,需要认真考虑For循环和 While循环的不同之处。 While循环至少执行一次,因为 VI是在每次循环结束的时候检测条件端子。而For循环并不这样处理:如果计数端子输入的值小于1,则For循环就不会执行。在初始化输出数组的时候牢记这一点。仔细考虑如何构建 VI,才能使输出的数组准

37、确地对应n=1,n=2,以及根据公式计算得到的其他值。实验结果:实现所要求的程序并可以正确执行能够独立完成基本的操作实验5:图形图表与文件操作实验目的:1.掌握LV的图形定制方法及应用2.掌握LV的图表定制方法及应用3.掌握LV的文件中使用字符串操作数据的基本方法实验要求:1.学会用图形表示数据2.能够辨别图表及图形的异同3. 能够用三种图表表示数据4. 能够构造字符串控件和指示器5. 能够对数字和字符串进行相互转换6. 能够使用文件I/O VI从磁盘文件中读出和写入数据7. 能够将数据以与许多通用表单应用相兼容的格式写入文件实验过程与步骤:1.构建VI,在图形中显示Activity目录下Di

38、gital Thermometer.vi中的温度值。每次执行VI之前要清除图形。2.构建VI,绘制椭圆r2-22不 22缶,0兰兰2兀,r、A和B输入参数。A sin + B cos 3.构建VI,n;l绘制sinx函数(x=0nn )及积分y = sin xdx。 N的取值应该从前面板输入。4.构建VI,用坐标图绘制圆。5.打开一个空白 VI并将Simulate Sig nal Express VI置入框图中。配置Ex press VI以生成50Hz的正弦波。单击Ok按钮退出Express VI配置页面。在Sine端子上弹出快捷菜单并选择Create 7Graph Indicator,运行该

39、 VI 6.人口增长趋势预测 y=rx(1-x):(1) 1<r<3,人口将达到稳定;(2) rT 3,人口稳态值在两个值之间振荡;(3) r>4,结果无规律;如:r= 4.1,超过最大值1.0,随后变为0。7.用波形图显示一次拥有 30个采样点的温度测量结果。8.设计程序显示电压测量结果。电压采样从10ms开始,每隔5ms采一个点,共采集 30个点;电压在采样前还经过一个信号处理电路的10倍衰减。要求程序的显示能够反映出实际的采样时间及电压值。9.设计程序,测量一个信号的电压值并进行滤波处理(以前3点的平均值作为滤波方法)要求共测量30个点不仅要显示出实际的信号波形,还要同

40、时显示滤波后的信号波形。10.在上题的基础上,要求显示每个点的采样时间, 开始测量时间定为 0ms,采样间隔为5ms。11.在一次实验中,进行了2个量的电压采集,但在相同的时间内,一个采集了20点的数据,另一个采集了 40点的数据。用波形图显示实验测量结果。12.在上题中,假设两个测量信号都有相同的起始测量时间X0及相同的测量间隔Deltax,要求X轴刻度能显示出实际的开始测量时间X0及相应的时间标尺 DeltaX。13.用一个波形图来显示两次测量的结果。在这两次测量中,所得的数据个数,开始测量的时间Xo及时间标度 DeltaX均不相同。14.构造一个计算并在条形图表中显示棒球平均得分数的VI

41、,输入击中数H=66,出局数K=43,退场数0=98,截球失误数 E=10。15.用波形图表实时监测一个温度测量输出。16.用波形图表来显示两个测量结果的波形输出。17.构建VI,用条形图标显示 Activity目录下Digital Thermometer.vi中的温度值。计算并显示运行中的平均温度值。18.将数字和字符串串接并格式化为单个输出字符串;(1)2个String控件,1个Numeric控件和1个String指示器(2)添加 String/Format Into String(3)用Positioning工具扩大,使左下角出现2个输入String14SL收冃NoneoficStrin

42、g 3Str Ina 219.扫描String并将有效数字符号:(1)添加1个String控件、1个Numeric指示器;(2)在框图上添加 Scan from String函数;(3)扫描String格式显示为 f;Present DMM Stt ingDHU SelUrts-ULmerlc20.在字符串中搜索表达式(1) 添加1个String控件;(2) 在框图中添加 Match Pattern函数和Scan from String函数;(3)寻找与 :”号相匹配的字符串;DHN babaData Points-NiuwriQJd,和首TTfi 1?21.把数据写到文件中( Write C

43、haracters To File ):(1)添加1个Numeric控件(采集温度值数目)和1个波形图表;显示Digital Dis play 和 Graph P alette 并隐藏 Plot Lege nd ;调整Y轴的刻度区间最大值为 90;添加Digital Thermometer.vi ( activity下)并将其写入文件并显示在波形图表中。TemperalLnre Chart90.0-w 0-Number of rointsBC.O2B.O-TlFt00PD.4LOO22.从文件中读取数据 (Read Characters From File):(1)添加1个Stri ng指示器

44、,1个波形图;(2)在框图中添加 Read Characters From File VI,从文件中读取数据并将信息用String输出;(若无路径,则会提示输入文件名称)(3)添加 Extract Numbers VI ( ExamplesGeneral'Strings.llb ),用于读取含有以逗号等非数字字符分割的数字的 ASCII字符串,并转换为 Array ;Slrinn Ifead fix® file呻 »»H . IB E««1 . mtHH* . Pi fmo .旳 sm*.耳 删卅* . Ef.5iBe33. easHr

45、E . « saa. ii.wm .Bedsit ,殴-SHh . E3LISHM . l.HNT .审."HI泗.曲L.馆伽輕.第ta嗨.f 畑M . H hLVW . tt CH鬥L .|Li ijn-itm n jjv j a-i-«- 口nQ o Q o Q -mFII"23.写入表单文件( Write To Speadsheet File.VI): (1)添加1个波形图;添加 2 个常数"Cycles ”和"sampling frequency ”;(3) Fu nction T An alyze t Sig nal P r

46、ocessi ngT Sig nal Gen eratio nT Square Wave 和 SineWave;(4)添加 Build Array和 Write To Speadsheet File.VI ;(5 )添加布尔常数;Waveffioi GraphMdl aIW LZD ZD课后设计:1. 构建VI,对50个随机的生成点归一化处理。前面板添加波形图表和波形图。在波形图表中,当随机点开始生成时就可以显示出来。为了改善波形图表的可视化效果,在50ms的循环内部引入延迟。将控件置入前面板以便每次VI运行时能够调整波形的偏移量和坐标刻度。当所有的50个点都生成后,在这个图形中进行必要的坐标

47、轴调整和图形移位,使其位于x轴的中心,峰-峰幅度值为1。在单个波形图中同时绘制原始波形以及归一化波形。使光标图注和图形选项板在图形中可见。创建两个带有标记的光标,将其中一个锁定到原始波形,而另一个锁定到归一化波形。运行VI,使用光标和缩放工具来验证用户VI能够产生预期的输出。 作为一个测试案例, 将偏移量设置为0,坐标刻度设置为2.然后确保原始信号在 02之间变化,而归一化信号在 -11之间变化。2.采用Sine Wave PtByPt.vi连续地生成正弦波,直到用户在前面板中按下停止按钮。允许3.4.用户使用前面板中的数字控件控制正弦波的频率、相位和幅度。正弦波应该显示在波形图表中,并且随着

48、每个新数据点的生成而更新。当用户按下停止按钮时,使用Express VI在波形图中显示最后生成的1000个点。Collector创建一个VI,产生20个0-100之间的随机整数并将其绘制在波形图中。显示光标图注并使用光标来确定所生成数值中最小值和最大值的坐标。使用Array Max & Min 函数在前面板中显示最大值和最小值的坐标。允许该VI ,比较通过Array Max & Min函数输出的值与用户使用光标找到的值。验证它们是相等的。创建一个VI,将含有时间值的数组和数字输入添加到表单文件的末尾,其路径由用户指明。时间值应该以秒为单位进行记录,与VI开始运行的时间有关。 该

49、VI应该连续运行,每次当用户按下前面板中的Save按钮时,将最近的输入值保存到表单文件中。当按下停止按钮时停止运行VI 。5.创建一个VI ,使用密码对单词进行编码或解码。为了使用这个密码对单词编码,首先将单词分解为两个子字符串个带有原始单词的前一半,一个包含另一半。如果单词中字母的个数为奇数,则对其进行分解以使第一个子字符串含有的字母比第二个子字符串含有的字母多一个。通过将单词的第一半合并到单词第二半的末尾来创建编码单词,将原始单词的第二个字母插入到这两半部分之间。例如,单词"gravity "应该编码为“ ityrgrav ”单词"master"应该

50、编码为"teramas”将字符串控件放入前面板,一个Boolean开关允许用户选择是否对输入进行解码或编码。在字符串指示器中显示输出。实验结果:实现所要求的程序并可以正确执行能够独立完成基本的操作实验6:数学分析与信号处理实验目的:1.掌握LV的数学分析的应用:线性代数、概率统计、最优化、曲线拟合、微积分等。2. 掌握LV的数字信号处理:信号产生、时域分析、频域分析、滤波器、窗函数。实验要求:1. 能够构造字符串控件和指示器2.能够对数字和字符串进行相互转换3. 能够使用文件I/O VI从磁盘文件中读出和写入数据4. 能够将数据以与许多通用表单应用相兼容的格式写入文件实验内容与步骤:

51、1.扩展公式节点 Eval Formula Node.Vi的使用:(1)在前面板添加数组输入变量a、b和c及其对应的值;(2)在前面板添加数组输入变量d和e;(3)在前面板输入公式d=a+b*c和e=a*b-c;计算d和e的值并在前面板输出。Input ValuesfdrmlilAd討+b叱;R=a*bY;Variables Inpiity : abcOutput ViibciVariflbFes Oytput:o|'7. DOy 厂亠I-pl.OD2.使用Eval y = f(x)M节点计算函数sin(x)/x的值。Number of paintsStart -劭=V2Q'X¥ GraphEndX20FormulaIIgoXnini-20 -15 -10 -50Tim总Plot 0 豳 m HB5 i'd i's 203.元函数积分。计算 Y =X3在区间【0, 10】上的积分。(程序自动将区间分为200份,201个计算点)StartXV Gra

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论