虚拟仪器复习试题(满分100 分)
一、填空题。(本题共10小题,15 个填空,每空1分,共15分。)
1、一个完整的VI 包括三个部分:(前面板(控制控件:用户输入,参数设置;指示控件:显示输出)、程序框图(节点,端口,数据连线)、图标/连接口)。
2、 LabVIEW有四种类型的节点:(函数)、(VI)、
(结构)和(代码接口)
3、Sequence 结构有(重叠式和平铺式)两种方式。
4、Chart 和Graph 区别?
两者的数据组织和波形刷新方式不同
5、全局变量相对于局部变量的优点?在两个独立,同时运行的VI 之间传递数据。
6、虚拟仪器的特点?
1)软件定义,柔性结构,灵活组态,能够自由发挥。
2)集多种功能于一体,多功能多用途。
3)丰富的软件资源,极高的运行速度和庞大的存储空间,强大的分析处理能力。
4)操作简便,功能操作的单纯化和面板布置的简洁化。
5)开发难度低,效率高,周期短,成本低,缩小了系统尺寸,提高工作速度。
7、移位寄存器的用途是什么?怎么初始化移位寄存器?
答:①移位寄存器主要用于While循环和For循环,将上一次循环的值传给下一次循环。还可以存储前几次循环的值,在移位寄存器的左端口或右端口上右击鼠标弹出菜单,选择Add Element 选项,可创建附加的左端口来存储前几次循环的值。
② 在循环外将初始值连到移位寄存器的左端口,有默认初值。
8、创建一个VI 程序的步骤?
答:(1)前面板的设计(工具模板和控件模板)。(2)框图程序的设计(工具模板和函数模板)并画出正确连线。(3)程序的运行和调试
【
{1} 因为For 循环的常用来处理数组,所以数据出口的自动索引默认为(有)。而While 循环的数据出口的自动索引默认为(无)。
{2} 使用两个For 循环,把其中一个嵌套在另一个中可以生成一个二维数组。外层的For 循环产生(行)元素,而内层的For 循环产生(列)。
{3} 利用(相关滤波)可以方便地从复杂的待测信号中分离出某一特定频率的信号。采样间隔是指(一个连续采集的序列中,相邻两次采集之间的时间间隔)。
{4} 虚拟仪器最核心的思想是(硬件实现的功能软件化),从而降低系统成本,增强系统功能与灵活性
{5}如果没有现成的数据采集卡,我们也可以利用LabVIEW中的(动态链接库)功能
实现数据采集
】
2 二、单项选择题。 (本题共 5 小题,每个小题有四个选项,从中选出正确的选项,每小题 分,共 10 分。)
1、当一个函数的 error in 带有错误信息时,下列哪种说法是正确的。( D ) A 、该函数会对错误信息进行处理
B 该函数不会作任何操作,而是直接将错误信息传递给 error out ,且不会将自身函数发
生的错误加进去。
C 该函数将会发出错误信息警告,且使程序终止运行。
D 该函数会直接将错误信息传递给 error out 。且会将自身函数发生的错误也一并加进去。 2、 下列哪种说法是错误的?(
B )
A 、虚拟仪器采用的是面向对象和可视化编程技术。
B 在程序运行的过程中波形的可见性是不可以改变的。
C 在LabVIEW 中,VI 程序的运行是数据流驱动的。
D 在创建子程序时,可以使用连线工具给前面板的控制器和指示器分配端口。 3、 下列说法中哪种说法是正确的?(
C )
A 、 While 循环只有在条件端口接收到的值为 True 时才停止循环
B 、 While 循环不满足条件, 1 次也不执行
C For 循环当N<1时,1次都不执行
D 、 For 循环可以嵌套,而 While 循环不可以嵌套
B 、 GPIB 总线 D 、 RS-232 串口总线
三、简答题。(本题共三个小题,每个小题 5分,共 15 分。)
4、当数据采集卡组态成 法是错误的?( C
DIFF 模式时, 将使用差分连接方
式, )
使用这种连接方式下列哪种说
A 、可以减少尖峰噪声 C 增大了尖峰噪声
B 、增加噪声抑制 D 增加共模信号抑制
5、下列哪种总线产品对
PCI 总线产品完全兼容。(
A )
A 、 PXI 总线 C 、 VXI 总线
1在LabVIEW中有哪三种用来创建和运行程序的摸板?它们都有哪些用途?
答:LabVIEW中有三种用来创建和运行程序的模板:工具模板,控制模板和函数模板。工具模板包括了程序的创建、修改和调试时用的工具;控制模板主要用于在前面板中添加指示器和控制器;而函数模板则用于创建框图程序,它包含了很多函数子模板。
2、VI子程序的连接端口的作用是?如何来定义VI子程序的连接口?答:VI子程序的连接口端口用于与主VI程序之间传递数据。定义VI子程序连接口时先选择子VI所需要的端口数,然后将前面板的指示器和控制器分配给每一个端口
3、虚拟仪器相对于传统仪器的优势?
虚拟仪器系统-硬件模块化,软件集成化。
4、标准总线接口方式有哪五种?
答:PC机总线的数据采集模块(PC-DAQ、GBIP总线仪器、串口总线仪器、VXI总线仪器模块、PXI总线仪器模块等五种类型,也可以采用上述五种类型的任意组合。
四、程序分析题
Bun die by nam 函数、in dex array 函数、控件个数及实现功能
五、程序设计题
使用公式节点
目的:创建一个VI,它用公式节点计算下列等式:
y1 = x 3- x 2 + 5
y2 = m* x + b
示结果。
前面板
m
*30.00
b
4 *20.00
Waveform Graph
图2 —9练习2 —6的面板
yi
y2
x的范围是从0到10。可以对这两个公式使用同一个公式节点, 并在同一个图表中显
1.打开一个新的前面板,按照上图(该图中包含运行结果)创建前面板中的对象。
波形图显示对象用于显示等式的图形。该VI使用两个数字式控制对象来输入m和
b的值。
流程图
2.按照下图创建流程图。
图2 —9练习2 —6的流程图
在创建某个输入或者输出端子时,必须给它指定一个变量名。这个变量名必须与公式节点中使用的变量名完全相符。
公式节点中,在边框上单击鼠标右键,在快捷菜单中选择Add In put,可以创建三个输入端子。在快捷菜单中选择Add Output,创建输出端子。
x的范围是从0到10 (包括10),就必须连接11到计数端子。
Build Array (Functions?Arra y)---- 在这个例子中,它用于将两个
数据构成数组形式提供给一个多曲线的图形中。通过用变形工具拖拉边角1二:口
就可以创建两个输入端子。
3.返回前面板,尝试给m和b赋以不同的值再执行该VI。
4.把该VI 保存为LabVIEW/Activity 目录下的Equations.vi 。练习2-6结束。
二、字符串4中显示方式
labview中,在字符串控件上单击鼠标右键,会发现有几种显示方式:正常显示、/代码
显示、密码显示和十六进制显示。
手符串
显示夜
转换为显示控件
说明和堤示.,,
创逹
替换
数据躁作
高级
将控件匹配窗榕
根僵窗格縮放对掠
/正第显示
」十代韬显赤
窖码显示
十六讲制显示
限于单行轿入
键入时麻新
/启用目动换行
雇性
三、使用Case结构
目的:创建一个VI以检查一个数值是否为正数。如果它是正的, VI就计算它的平方根,反
之则显示出
错。
前面板
1.打开一个新的前面板,并按照下图所示创建对象。控制对象用于输入数值,显示对象用
于显示该数值的平方根。
流程图
2 ?照下图创建流程图。
?
睡
图2 — 6 练习2—4的面板和流程图
3.从Functions?Structures中选择一个Case结构,并放置在在流程图中。Case结构是一个可以改变大小的方框。先来做Ture的情况,照流程图上半部分构造。
aGreater Or Equal To 0?函数(Functions?Comparison) ---------- 如果输入数值大于或者等于0就会返回一个TRUE值。
bSquare Root函数(Functions?Numeric) ------- 返回输入数值的平方根。
c连好线
d点击Case框的选择按钮,转入False情况编程
e数值常数(Functions?Numeric)---------- 这里用于显示错误的代数值-999.00。
fOne Button Dialog函数(Functions?Time & Dialog )------------ 在这里它用于显示一个对话框,内
容是Error...。
g字符串常数(Functions?String) -------- 用Edit Text Tools在对话框中输入字符串。
h该VI在TRUE或者FALSE情况下都会执行。如果输入的数值大于等于0 ,VI会执行TRUE Case,返回该数的平方根,否则将会输出—999.00,并显示一个对话框,内容为Error...。
4. 返回前面板,运行该VI。修改标签为Number的数字式控制对象的数值,分别尝试一个正
数和负数。注意,当把数字式控制对象的值改为负数时,LabVIEW会显示Case结构的FALSE Case中设置的出错信息。
5. 保存该VI 至U LabVIEWActivity 目录中的Square Root.vi。
四、图形控件
Chart和Graph的比较
目的:创建一个VI ,用Chart和Graph分别显示40个随机数产生的曲线,比较程序的差别。
前面板及流程图如下
第电v蜃QE Char t Waveforfti Graph
Time
[ffaveforiti
图4— 1 Chart和Graph的比较
显示的运行结果是一样的。但实现方法和过程不同。在流程图中可以看出,Chart 产生在循环内,每得到一个数据点,就立刻显示一个。而Graph 在循环之外,40 个数都产生之后,跳出循环,然后一次显示出整个数据曲线。从运行过程可以清楚地看到这一点。
值得注意的还有For 循环执行40 次,产生的40 个数据存储在一个数组中,这个数组创建于
For循环的边界上(使用自动索引功能)。在For循环结束之后,该数组就将被传送到
外面的Graph。仔细看流程图,穿过循环边界的连线在内、外两侧粗细不同,内侧表示浮点数,外侧表示数组。