ImageVerifierCode 换一换
格式:DOCX , 页数:45 ,大小:650.28KB ,
资源ID:21371504      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/21371504.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(虚拟仪器课程实验指导书Word文件下载.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

虚拟仪器课程实验指导书Word文件下载.docx

1、 (4)建立一个CASE结构的VI; (5)建立一个顺序结构的VI; (6)建立一个有公式节点的VI。练习使用While循环和图表 用 While 循环和图表获得数据,并实时显示。创建一个可以产生并在图表中显示随机数的VI。 前面板有一个控制旋钮可在0到10秒之间调节循环时间,还有一个开关可以中止VI的运行。学习怎样改变开关的动作属性,以便不用每次运行VI时都要打开开关。操作步骤如下: 前面板图1练习的前面板1 选择FileNew,打开一个新的前面板。2 选择ControlsBoolean,在前面板中放置一个开关。设置开关的标签为控制开关。3 使用标签工具创建 ON 和 OFF 的标签,放置于

2、开关旁。4 选中ControlsGraph,在前面板中放置一个波形图(是chart,而不是graph)。设置它的标签为随机信号。这个图表用于实时显示随机数。5 把图表的纵坐标改为0.0 到 1.0。方法是用标签工具把最大值从10.0改为1.0。6 选择ControlsNumeric,在前面板中放置一个旋钮。设置旋钮的标签为循环延时。这个旋钮用于控制While 循环的循环时间。流程图7 开流程图,按照下图创建流程图。图练习的流程图a) 从 FunctionsStructures 中选择 While 循环,把它放置在流程图中。将其拖至适当大小,将相关对象移到循环圈内。b) 从 Functions

3、Numeric中选择随机数(0-1)功能函数放到循环内。c) 在循环中设置Wait Until Next ms Multiple函数 (FunctionsTime & Dialog),该函数的时间单位是毫秒,按目前面板旋钮的标度,可将每次执行时间延迟0到10毫秒。d) 照上面所示的流程图连线,把随机数功能函数和随机信号图表输入端子连接起来,并把启动开关和While 循环的条件端子连接。8 返回前面板,调用操作工具后单击垂直开关将它打开。9 把该 VI 保存为 LabVIEWActivity目录中的Random Signal.vi。10 执行该 VI。While循环的执行次数是不确定的,只要设置

4、的条件为真,循环程序就会持续运行。在这个例子中,只要开关打开(TRUE),框图程序就会一直产生随机数,并将其在图表中显示。11 单击垂直开关,中止该VI。关闭开关这个动作会给循环条件端子发送一个FALSE值,从而中止循环。12 用鼠标右键单击图表,选择Data OperationsClear Chart,清除显示缓存,重新设置图表。练习结束附注与说明布尔开关的机械动作:布尔开关有6种机械动作属性可供选择。在前面板上用鼠标右键单击开关,在快捷菜单中选择Mechanical Action就可以看到这些可选的动作。LabVIEW还提供了一个范例示范这些动作,它是位于ExamplesGeneralCo

5、ntrolsbooleans.llb的Mechanical Action of Booleans.vi。练习 使用移位寄存器 创建一个可以在图表中显示运行平均数的VI。前面板1. 打开一个新的前面板,按照下图所示创建对象。2. 把波形图表的坐标范围改为0.0到2.0。3. 在添加竖直坐标之后,用鼠标右键单击它,在快捷菜单中选择Mechanical ActionLatch When Pressed,再选择OperateMake Current Values Default,把ON状态设置为默认状态。 图3练习的前面板1. 按下图创建流程图。 图练习的流程图2. 在流程图中添加 While 循环(

6、FunctionsStructures),创建移位寄存器。a. 用鼠标右键单击While循环的左边或者右边,在快捷菜单中选择Add Shift Register。b. 用鼠标右键单击寄存器的左端子,在快捷菜单中选择Add Element,添加一个寄存器。用同样的方法创建第三个元素。3. Random Number (01)函数(FunctionsNumeric)产生0到1之间的某个随机数。4. Compound Arithmetic 函数(FunctionsNumeric)在本练习中,它将返回两个周期产生的随机数的和。如果要加入其他的输入,只需用右键单击某个输入,从快捷菜单中选择Add Inp

7、ut。5. 除法函数(FunctionsNumeric)在本练习中,它用于返回最近四个随机数的平均值。6. 数值常数(FunctionsNumeric)在While循环的每个周期,Random Number (01)函数将产生一个随机数。VI就将把这个数加入到存储在寄存器中的最近三个数值中。Random Number (01)再将结果除以4,就能得到这些数的平均值(当前数加上以前的三个数)。然后再将这个平均值显示在波形图中。7. Wait Until Next ms Multiple函数 (Functions Dialog)它将确保循环的每个周期不会比毫秒输入快。在本练习中,毫秒输入的值是50

8、0毫秒。如果用鼠标右键单击图标,从快捷菜单中选择VisibleLabel,就可以看到Wait Until Next ms Multiple的标签。8. 用鼠标右键单击Wait Until Next ms Multiple 功能函数的输入端子,在快捷菜单中选择Create Constant。出现一个数值常数,并自动与功能函数连接。9. 将Constant设置为500。这样连接到函数的数值常数设置了500毫秒的等待时间。因此循环每半秒执行一次。注意,VI用一个随机数作为移位寄存器的初始值。如果没有设置移位寄存器端子的初始值,它就含有一个默认的数值,或者上次运行结束时的数值,因此开始得到的平均数没有

9、任何意义。10. 执行该 VI,观察过程。11. 把该 VI 保存为LabVIEWActivity目录下的Random Average.vi。练习 结束。附注:移位寄存器的初值:上面的练习中对移位寄存器设置了初值0.5。如果不设这个初值,默认的初值是。在这个例子中,一开始的计算结果是不对的,只有到循环完次后移位寄存器中的过去值才填满,即第次循环执行后可以得到正确的结果。练习 2-3 使用For循环用For循环和移位寄存器计算一组随机数的最大值。打开一个新的前面板,按照下图创建对象。a. 将一个数字显示对象放在前面板,设置它的标签为“最大值”。b.将一个波形图表放在前面板,设置它的标签为“随机数

10、”。将图表的纵坐标范围改为0.0到1.0。c.在图表的快捷菜单中选择Visible ItemsScrollbar和Digital Display,并隐藏Plot Legend。d.用移位工具修改滚动栏的大小。图5练习3的面板和流程图按照上图画流程图。在流程图中放置一个For循环(FunctionsStructures)。在For循环的边框处单击鼠标右键,在快捷菜单中选择Add Shift Register。将下列对象添加到流程图。1 Random Number (01)函数(Functions2 数值常数(FunctionsNumeric)在这个练习中需要将移位寄存器的初始值设成0。3 Max

11、&Min函数(FunctionsComparison)输入两个数值,再将它们的最大值输出到右上角,最小值输出到右下角。这里只需要最大值,只用连接最大值输出。4 数值常数(FunctionsNumeric)For循环需要知道需要执行的次数。本练习中是100次。按照上图连接各个端子。运行该VI。将该VI保存为LabVIEWActivity 目录下的Calculate Max.vi。练习 2-3 结束。练习 - 使用 Case结构 创建一个VI以检查一个数值是否为正数。如果它是正的,VI就计算它的平方根,反之则显示出错。1. 打开一个新的前面板,并按照下图所示创建对象。控制对象用于输入数值,显示对象

12、用于显示该数值的平方根。照下图创建流程图。图练习的面板和流程图3. 从FunctionsStructures中选择一个 Case结构,并放置在在流程图中。Case 结构是一个可以改变大小的方框。先来做Ture的情况,照流程图上半部分构造。a Greater Or Equal To 0? 函数(FunctionsComparison)如果输入数值大于或者等于0就会返回一个TRUE值。b Square Root 函数(FunctionsNumeric)返回输入数值的平方根。c 连好线d 点击Case框的选择按钮,转入False情况编程e 数值常数(FunctionsNumeric)这里用于显示错误

13、的代数值-999.00。f One Button Dialog函数(Functions Dialog)在这里它用于显示一个对话框,内容是Error.。g 字符串常数 (FunctionsString)用Edit Text Tools在对话框中输入字符串。h 该VI在TRUE或者FALSE情况下都会执行。如果输入的数值大于等于0,VI会执行TRUE Case,返回该数的平方根,否则将会输出999.00,并显示一个对话框,内容为Error.。4. 返回前面板,运行该VI。修改标签为Number的数字式控制对象的数值,分别尝试一个正数和负数。注意,当把数字式控制对象的值改为负数时,LabVIEW会显

14、示Case结构的FALSE Case中设置的出错信息。5. 保存该 VI 到LabVIEWActivity 目录中的Square Root.vi。练习 - 结束。练习 - 使用顺序结构 创建一个 VI,计算生成等于某个给定值的随机数所需要的时间。图练习的前面板我们约定数据是到100范围的整数。当前值用于显示当前产生的随机数。“执行次数”用于显示达到指定值循环执行的次数。匹配时间用来显示达到指定值所用的时间。图7练习的流程图(共帧)i. 在流程图中放置顺序结构(Functionsii. 用鼠标右键单击帧的边框,在快捷菜单中选择Add Frame After,创建一个新帧。重复这个步骤,再创建一个

15、帧。共桢。iii. 选中第桢,设置读取初始时间(子)程序.iv. 第0帧的下边框上含有一个小方框,其中有一个箭头。这个方框叫做顺序局部变量,可以在同一个顺序结构中的各个帧之间传递数据。用鼠标右键单击第0帧的底部边框,选择Add Sequence Local,创建顺序局部变量。顺序局部变量显示为一个空的方块。当您将某个功能函数与顺序局部变量相连时,方块中的箭头就会自动显示。v. Tick Count (ms) 函数(Functions Dialog)返回启动到现在的时间(以毫秒为单位)。在这里例子里需要使用两个这个函数。另一个在第帧中。vi. 按图连好线。转入第帧。该帧是匹配计算,内含一个循环结

16、构。该图中使用的新函数有:Round to Nearest函数(FunctionsNumeric)在该例中,它用于取0到100之间的随机数到距离最近的整数。Not Equal?函数(Functions Comparison)在该例中,它将随机数和前面板中设置的数相比较,如果两者不相等会返回TRUE值,否则返回FALSE。Increment函数(FunctionsNumeric)在该例中,它将While循环的计数器加1。vii. 按图连好线。转入第帧在第0帧中,Tick Count (ms)功能函数将以毫秒为单位表示当前时间。这个数值被连到顺序局部变量,这样它就可以被后续的帧使用。在第1帧中,只

17、要函数返回的值与指定值不等,VI就会持续执行While循环。在第2帧中,Tick Count (ms)功能函数以毫秒为单位返回新的时间。VI从中减去原来的时间(由第0帧通过顺序局部变量提供)就可以计算出花费的时间。viii. 返回前面板,在Number to Match控制对象中输入一个数值,执行该VI。ix. 把该VI保存为LabVIEWActivity 目录下Time to Match.vi。练习 2-5 结束。练习 2-6 使用公式节点 创建一个VI,它用公式节点计算下列等式:y1 = x 3 x 2 + 5y2 = m* x + bx的范围是从0到10。可以对这两个公式使用同一个公式节

18、点,并在同一个图表中显示结果。图9练习的面板1 打开一个新的前面板,按照上图(该图中包含运行结果)创建前面板中的对象。波形图显示对象用于显示等式的图形。该 VI使用两个数字式控制对象来输入m和b的值。2 按照下图创建流程图。图9练习的流程图在创建某个输入或者输出端子时,必须给它指定一个变量名。这个变量名必须与公式节点中使用的变量名完全相符。公式节点中,在边框上单击鼠标右键,在快捷菜单中选择Add Input,可以创建三个输入端子。在快捷菜单中选择Add Output,创建输出端子。x的范围是从0到10(包括10),就必须连接11到计数端子。Build Array (FunctionsArray

19、)在这个例子中,它用于将两个数据构成数组形式提供给一个多曲线的图形中。通过用变形工具拖拉边角就可以创建两个输入端子。3 返回前面板,尝试给m和b赋以不同的值再执行该 VI。4 把该VI保存为 LabVIEW/Activity 目录下的Equations.vi。练习 2-6 结束。4 实验报告 写出以上6个练习的中的步骤要点,附上运行时的前后面版图形。实验三 数据类型:数组、簇 (1)学会使用LabVIEW中的索引数组; (2)学会使用LabVIEW中的簇;二、实验任务 (1)建立一个能数组索引的VI; (2)建立一个使用的VI;练习 创建一个自动索引的数组使用 For 循环的自动索引功能创建数

20、组,并用一个图形(Graph)显示该数组。 图1练习的面板 前面板:1.打开一个新的前面板。2.选择ControlsArray & Cluster,在前面板中放置一个数组。设置它的标签为Waveform Array。3.选择ControlsNumeric,在数组框中插入一个数字式显示对象。如右图所示。它用于显示数组的内容。4.选择ControlsGraph,在前面板中放置一个波形图。设置它的标签为Waveform Graph。5.隐藏图例和模板。6.用鼠标右键单击图形,并在快捷菜单中取消选中 Y ScaleAutoscale Y,禁止自动坐标功能。7.使用文本工具,把Y轴的范围改为-0.5到1

21、.5。1. 按照下图创建流程图。图练习的流程图2. 由FunctionsSelect a VI寻找LabVIEWactivity目录下的Generate Waveform VI ,它的作用是返回波形中的某一点。这个VI需要输入一个索引,我们将循环周期连接到这个输入。3. 注意Generate Waveform VI连出来的连线在循环边界变成一个数组时会变粗,正是在这个边界处形成了一维数组。4. For循环会自动累计边界内的数组。这种功能叫做自动索引。在这个例子中,连接到循环计数输入的数值常数令For循环创建了一个由100个元素组成的数组。5. Bundle函数( Functions Clust

22、er)将图块中的各个组件组合成一个簇,在正确连接以前需要改变该函数的图标的大小。将移位工具放在图标的左下角。变形工具会变成如左图所示,拖曳鼠标直到出现第三个输入端子。6. 数值常数( FunctionsNumeric)三个数值常数用于设置For循环执行的周期数N=100,初始X=0和delta X=1。7. 从前面板执行该VI。该VI将把自动索引后的波形图数组显示在波形图中。8. 把 X的delta值改为0.5,X的初始值改为20。再次执行该VI。注意,波形图现在同样显示100个点,而每个点的初始值为20,X的delta值为0.5(见X轴)。9. 只需在显示器中输入元素的索引号就可以查看波形数

23、组中的任何元素。如果输入的数比数组的元素个数大,那么显示器将变暗,表示您没有为该元素设置索引。如果需要一次查看多个元素,可以通过改变数组显示对象的大小来实现。 把定位工具放置在数组框的右下角。工具将变成右图所示的变形工具。当工具变形时,用鼠标拖曳数组的右边或者下边。数组现在就可以按照元素索引的上升顺序显示多个素,以某个与指定索引对应的元素开始,如下图所示。图练习中多个数组元素的同时观察在前面的流程图中,您为波形图指定了初始的X值和delta X值。默认的X初始值是0,delta X 值是1。这样,也可以把波形数组直接连接到波形图端子, 而无需指定初始的X值和delta X值,如图所示。 图练习

24、使用默认X及Delta X时简化后的流程图10 按上图删除 Bundle功能函数和它所连接的常数对象。方法是用移位工具选择该功能函数和连接的常数对象,按下。再选择EditRemove Bad Wires。按照上图完成流程图的连线。11 执行该VI。注意初始的X值是,delta X值是1。2 多图区图形可以创建含有多条曲线的图形,方法是创建一个数组,用它来汇集传给单图区图形的类型的数据元素。图练习多图区图形的流程图12 按照上图创建流程图。* 正弦函数(FunctionsNumericTrigonometric)在这里,它用于在For循环中创建一个由数据点组成的数组,表示一个正弦波周期。* Pi

25、常数(FunctionsAdditional Numeric Constants)* Build Array (FunctionsArray)在这里,它用于创建合适的数据结构(一个二维数组),在波形图中绘制两条曲线。用移位工具拖曳边角可以增大该函数的面积,创建两个输入端子。13 返回前面板,执行该 VI。注意同一个波形中的两个图区。默认情况下,它们的X初始值都是0,delta X初始值都是1。下图是该程序的运行结果(前面板未改动)。14 把该VI保存为LabVIEWActivity 目录中的Graph Waveform Arrays.vi。15 可以修改图形中的某个图区的外观。方法是,用鼠标右

26、键单击这个图形,再从弹出菜单选择对应的图例。图练习多图区图形的面板显示练习 结束。练习 对输入数组使用自动索引功能打开并执行一个VI,它将在一个For循环中使用自动索引功能处理一个数组。1.选择FileOpen,打开ExamplesGeneralarrays.llb中的Separate Array Values VI 。2.打开流程图。下面的示意图显示的是在TRUE和FALSE时的情况。图练习的流程图注意,Input Array引出的连线与For循环外的粗线不同,表示这是一个数组,而循环内部的细线则表示这是一个数组元素。 数组元素在每个循环期间将自动编号。3. 用自动索引功能设置 For 循环

27、的计数器 注意,计数器端子还没有连线。当您对某个进入For循环的数组使用自动索引功能时,循环就将根据数组的大小执行相应的次数,这样就无需连接某个值到计数器的端口。如果对一个以上的数组使用自动索引功能,或者在使用自动索引功能之外还需要设置计数器时,实际的循环次数将是其中最小的数。4.执行该VI。在输入的八个数中,可以看到4个属于正数数组,另外4个属于负数数组。5.从流程图中将一个值为5的常数对象连接到For 循环的计数器端子。执行该 VI。可以看到尽管输入数组仍然有八个元素,但是3个位于正数数组,另外2个位于负数数组。这说明,如果设置了N并开启了自动索引功能,那么实际循环的次数将取较小的数。6.关闭该VI,不要保存任何修改。注:练习 的算法说明下面是一段伪代码,解释上面的算法,假定输入数组为A(已赋值),B(正数)、C(负数)。Sbr

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1