LabView考试试题.docx
《LabView考试试题.docx》由会员分享,可在线阅读,更多相关《LabView考试试题.docx(29页珍藏版)》请在冰点文库上搜索。
LabView考试试题
一、填空
1.VI虚拟仪器的三个主要组成部分是_前面板_、_程序框图_和_图标/连接器_。
2.LabView有三种操作模板,分别是_控件模板_、_函数模板_和_工具模板_。
3.CIN节点需要调用__*.lsb__格式文件,这种文件可以通过__VisualC++__来生成。
4.虚拟仪器设计中连线为虚线时表示___数据类型不匹配出错_,当RUN按钮显示为折断的箭头时,表示程序___有错误发生__。
5.在LabView中_局部变量_主要用于程序内部传递数据,_全局变量_主要用于程序之间传递数据。
6.程序框图由_端口_、_节点_和_连线_组成的可执行代码。
二、选择
1.当一个函数的errorin带有错误信息时,下列哪种说法是正确的(D)
A该函数会对错误信息进行处理。
B该函数不会作任何操作,而是直接将错误信息传递给errorout,且不会将自身函数发生的错误添加进去。
C该函数会发出错误警告,且使程序终止运行。
D该函数直接将错就错传递给errorout,且会将自身函数发生的错误加进去。
2.下列哪种说法是错误的(B)
A虚拟仪器采用的是面向对象和可视化编程技术。
B在程序运行的过程中波形的可变性是不可改变的。
C在LabView中,VI程序的运行时数据是流动的。
D在创建子程序时,可以使用连线工具给前面板的控制器和指示器分配端口。
3.下列哪种说法是对的(C)
AWhile循环只有条件端口接收到的值为True时才停止循环。
BWhile循环不满足条件时,一次也不执行循环。
CFor循环当N<1时,一次也不循环。
DFor循环可以嵌套,While循环不可以嵌套。
4.当数据采集卡组态成DIFF模式时,将使用差分连接方式,使用这种连接方式下列说法错误的是(C)
A可以减少尖峰噪声B增加噪声抑制
C增大尖峰噪声D增加共模信号抑制
5.下列哪种总线产品对PCI总线完全兼容。
(A)
APXI总线BGPIB总线CVXI总线DRS232串口
三、简答
波形图和波形图表有什么区别?
波形图是显示一组或多组数据的显示器,即用于显示测量值为均匀采集的一条或多条曲线;波形图连接的往往是数组控件。
波形图表是显示一个或多个数据轨迹的显示器,即显示一条或多条曲线的特殊数值显示控件,一般用于显示以恒定速率采集到的数据;波形图表连接的是数值控件。
XY坐标图用来绘制多变量函数曲线,可显示任何均匀采样和非均匀采样的点的集合
虚拟仪器的主要特点有:
1、硬件是通用的,2、功能强大,3良好的人机界面。
程序调试技术有:
1.找出语法错误2.设置执行程序高亮3.断点与单步执行4.探针
程序调试方法有:
.1设置运行程序高亮执行,2单步执行,
3断点工具,4探针工具
1.For循环和While循环的区别是什么?
使用中它们各自适用于什么场合?
答:
For循环规定了循环次数,其条件选择是根据计数器计数次数是否达到循环次数而决定结束循环的条件;而While循环不规定循环次数,其条件选择是根据选择器端子的条件是否得以满足而决定结束循环的条件。
For循环适合于有限次数的循环操作,而While循环适合于根据程序运行过程中逻辑关系或在程序执行中人为地决定循环次数。
2.什么是VISA?
VISA有什么特点?
答:
VISA是虚拟仪器软件结构(VirtualInstrumentSoftwareArchitectuere)的简称,是由VXIplug&play系统联盟所统一制定的I/O接口软件标准及其相关规范的总称。
一般称这个I/O函数库为VISA库(用于仪器编程的标准I/O函数库)。
VISA函数库驻留于计算机系统中,是计算机与仪器之间的标准软件通信接口,用以实现对仪器的控制
3.移位寄存器的用途?
怎样初始化移位寄存器?
答:
①移位寄存器主要用于While循环和For循环,将上一次循环的值传给下一次循环。
还可以存储前几次循环的值,在移位寄存器的左端口或右端口上右击鼠标弹出菜单,选择AddElement选项,可创建附加的左端口来存储前几次循环的值。
②在循环外将初始值连到移位寄存器的左端口,有默认初值。
4、什么叫虚拟仪器?
虚拟仪器相对于传统仪器有优势在哪里?
(本题5分)
答:
虚拟仪器技术简单说就是用户自定义的基于PC的测试和测量解决方案。
相对于传统仪器,有4大优势:
1、性能高,2、扩展性强,3、开发时间少,4、并且具有出色的集成功能,
5、简述在LabVIEW中调用C语言代码的方法和步骤。
(本题5分)
答:
在LabVIEW中对C语言代码的调用是能过CIN节点来实现的,具体步骤如下:
(1)创建一个空的CIN节点
(2)为CIN节点设置输入、输出端口(3)创建C语言源程序(4)创建并编译*.lsb文件(5)加载*.lsb文件并完成调用过程。
6、Labview有哪几种结构类型?
(本题5分)
答:
循环结构 条件结构 顺序结构 事件结构定时结构 公式节点以及反馈节点
一、填空题(30分,每空1分)
1、VI(虚拟仪器)三个主要部分是前面板,程序框图、图标/连接器、和。
2、数组是相同类型的数据元素的集合,数据元素的类型可以是任意的,可以创建数值数组、布尔数组、字符数组、簇数组。
3、数据采集系统由被测参数→传感器→信号调理→数据采集卡→计算机组成。
4、Labview有三种操作模板分别为控件模板、函数模板、工具模板
5、CIN节点需要调用*.lsb格式文件,这种文件可以通过visualC++来生成。
6、Labview支持文本文件,二进制文件,数据记录文件,波形文件,测试数据文件等格式的文件输入和输出。
7、数据采集卡性能指标有输入通道数、输出通道数、采集位数、采集速度等。
8、循环边框上的数据出口为一个小方块,称为移位寄存器,具有存贮数据功能,对FOR循环而言第一次循环时布尔型数据出口值为false。
9、虚拟仪器在使用数据采集卡之前必须运行专用软件MAX进行配置,如设置通道名,输入输出类型,测量类型等。
10、虚拟仪器设计中当连线为虚线时表示数据类型不匹配错误
,当RUN按钮显示折断的箭头时,表示程序出现语法错误。
11、在Labview中局部变量主要用于程序内部传递数据,全局变量主要用于程序之间传递数据。
二、分析说明(30分)
1、分析下列程序实现的功能,并说明程序中有哪些控件、函数与结构。
(15分)
2、下列程序使用了什么结构?
r和m分别称为什么?
分析程序功能,假设输入分别为13和14时有什么结果?
(15分)
三、简答题(40分)
1、什么叫虚拟仪器?
虚拟仪器相对于传统仪器有优势在哪里?
(6分)
2、、简述在LabVIEW中调用C语言代码的方法和步骤。
(6分)
3、.LabVIEW有哪些方式能与第三方硬件连接?
动态链接库(DLL)、TCP/IP、DataSocket、OPC、共享变量、ActiveX、DDE、.net
4、虚拟仪器程序调试方法主要有哪些?
(7分)
5、Labview有哪几种结构类型?
(6分)
循环结构、顺序结构、条件结果、定时结构、事件结构、公式节点、反馈节点
6、根据接地方式的不同大多数模拟输入设备可以组成哪几种不同的测量系统?
各测量系统对信号有什么要求?
(8分)
分为下面3种测量系统:
(1)差分测量系统,适合小于1V的信号,环境噪声较大的场合,
(2)参考单端测量系统,主要用于测量浮动信号(3)非参考单端测量系统,非参考单端测量系统
1.虚拟仪器系统是由【计算机】【应用软件】【仪器硬件】三大要素构成。
【计算机】与【仪器硬件】又称为VI的【通用仪器硬件平台】。
2.【软件技术】是虚拟仪器的核心技术。
【LabVIEW概念】是一种用图标代替文本行创建应用程序的图形化编程语言。
【优点】传统文本编程语言根据语句和指令的先后顺序决定程序执行顺序,而LabVIEW则采用数据流编程方式,程序框图中节点之间的数据流向决定了程序的执行顺序。
它用图标表示函数,用连线表示数据流向
答案
一填空
1、前面板 ,框图程序 ,连接
2、数值 布尔字符簇
3、被测参数→传感器→信号调理→数据采集卡→计算机组成。
4、工具模板 控件模板 函数模板
5、*.lsb
VisualC++
6、文本文件,二进制文件,数据记录文件,波形文件,测试数据文件。
7、输入通道数,输出通道数,采集位数,采集速度等
8、移位寄存器,false
9、MAX。
10、数据类型不匹配出错 程序有错误发生
11、局部变量,全局变量
二、分析
1、程序实现如下功能:
显示当前的温度值,并可设定温度报警值,当温度超过报警值时报警灯亮指示当前温度超过设定值。
(5分)
控件有:
随机数产生控件,报警指示控件,报警使得控件,延时控件,逻辑与控件,逻辑大于控件,乘法函数,温度显示控件 开启报警开关控件。
有一个while循环结构。
(10分)
2、
(1)使用了公式节点结构。
(5分)
(2)R和m分别称为输入端子和输出端子程序功能是判定输入的数是不是素数,如果是素数指示灯亮,如果不是素数指示灯不亮。
(5分)
(3)输入数为13时灯不亮,输入为14时灯亮。
(5分)
三、简答
1、虚拟仪器技术简单说就是用户自定义的基于PC的测试和测量解决方案。
相对于传统仪器,有4大优势:
性能高,扩展性强,开发时间少,并且具有出色的集成功能。
2、在LabVIEW中对C语言代码的调用是能过CIN节点来实现的,具体步骤如下
(1)创建一个空的CIN节点
(2)为CIN节点设置输入、输出端口(3)创建C语言源程序(4)创建并编译*.lsb文件(5)加载*.lsb文件并完成调用过程。
3、有以下几种方式与第三方硬件连接:
动态链接库(DLL)、TCP/IP、DataSocket、OPC、共享变量、ActiveX、DDE、.net
4、1、设置执行程序为高亮方式,程序执行前点击高亮按钮,则运行过程会以高亮形式显示。
2、单步执行方式:
如果要使框图程序一个节点一个节点则按下单步单步按行钮就会闪烁,指示它将被执行,再次点击单步按钮,程序将会变成连续运行。
3、探针,从工具模板中选择探针工具,将探针工具置于某根连线上可以用来查看运行过程中数据流在该连线时的数据 4、断点,使用断点工具可以在程序的某一点中止程序执行,用探针或单步方式查看数据。
5、循环结构 选择结构 顺序结构 事件结构 公式节点以及反馈节点
6、分为下面3种测量系统:
(1)差分测量系统,适合小于1V的信号,环境噪声较大的场合,
(2)参考单端测量系统,主要用于测量浮动信号(3)非参考单端测量系统,非参考单端测量系统
【虚拟仪器的主要特点有】:
1尽可能采用了通用的硬件,各种仪器的差异主要是软件。
2可充分发挥计算机的能力,有强大的数据处理功能,可以创造出功能更强的仪器。
3用户可以根据自己的需要定义和制造各种仪器。
所有的LabVIEW应用程序,即虚拟仪器(VI),它包括前面板、流程图以及图标/连接器三部分。
操作模板,包括工具模板、控制模板和函数模板
注意:
LabVIEW目录一般在ProgramFiles\NationalInstruments\目录下
DBL符号表示对象数据类型是双精度数;TF符号表示布尔数;I16符号表示16位整型数;ABC符号表示对象数据类型是字符串。
构造一个子VI主要的工作就是定义它的图标和联接器。
三、Chart提供了三种画面的刷新模式,分别是
StripChartMode(条壮图):
它与纸带式图表记录仪类似。
曲线从左到右连续绘制,
当新的数据点到达右部边界时,先前的数据点逐次左移。
ScopeChartMode(示波器模式):
它与示波器类似。
曲线从左到右连续绘制,当新
的数据点到达右部边界时,清屏刷新,从左边开始新的绘制。
它的速度较快。
SweepChartMode(扫描模式):
与示波器模式的不同在于当新的数据点到达右部
边界时,不清屏,而是在最左边出现一条垂直扫描线,以它为分界线,将原有曲线
逐点向右推,同时在左边画出新的数据点。
如此循环下去。
3.。
4.LabVIEW程序包括前面板【用户界面】和后面板【程序框图】。
5.三种选板1)控件选板(为前面板添加控件)2)函数选板(在程序框图中添加函数或数据等)3)工具选板(选择各种编辑工具,前面板和后面板都要用到)
6.LabVIEW程序为称为【VI】,扩展名默认为【.vi】。
7.控件选板中基本常用控件可以以【现代】【经典】【系统】三种风格显示。
8.程序框图是图形化源代码的集合,这种图形化的编程语言也称为G语言。
四、程序
9.1、创建一个VI程序,该程序可以产生一个六行四列的二维数组(数组元素为0到10的随机整数),并把二维数组的前三行、前三列单独提出来,做为一个新的数组。
(本题8分)
10.2、用0-100的随机数代替摄氏温度,将每500ms采集的温度的变化波形表示出来,并设定上下限,温度高于上限或者低于下限分别点亮对应的指示灯。
并将其上下限也一并在波形中表示出来。
(本题8分)
11.3、创建一个程序,产生正弦波、三角波、矩形波、锯齿波,并显示出来。
波形的频率和幅度可以改变。
用一个旋钮式开关来选择产生哪种波形。
(本题8分)
12.4、
(1)创建一个VI子程序,该子程序的功能是用公式节点来产生一个模拟压力,其计算公式是P=80+18.253V+1.244V*V。
V是1到5的随机数。
(2)调用
(1)的子程序,每0.5秒测量一次压力,共测量20次,将当前的压力值在波形中表示出来,并求出压力的最大值、最小值和平均值。
(本题12分)
13.5、利用顺序结构和循环结构写一个跑马灯,如下图所示,5个灯从左到右不停的轮流点亮,闪烁间隔由滑动条调节。
(本题10分)
14.6、设计一个VI来测量温度(温度是用一个20到40的随机整数来代替),每隔0.25秒测一次,共测定5秒。
在数据采集过程中,VI将在波形Chart上实时地显示测量结果。
采集过程结束后,在Graph上画出温度数据曲线,并且把测量的温度值以文件的形式存盘。
(本题12分)
15.存盘格式为:
16.点数时间(S)温度值(度)
10.2578
20.5085
17.
18.示波器模式是一个返回式的显示器,与示波器类似。
每接受一个新数据时,它就把新数据绘制在原有数据的右侧。
当数据曲线到达显示区的右边缘时,VI会删除全部图形,从左边缘重新开始绘制曲线。
示波器模式显然要快于条状图模式,因为它不会因为滚动产生溢出。
19.扫描模式更接近于示波器模式,但是当数据曲线到达显示区的右边时,不会变成空白,而是会出现一个移动的垂线,标记新数据的开始,并当VI添加新数据时穿过整个显示区。
20.移位寄存器可以将数据从一个循环周期传递到另外一个周期。
21.如果必要,每维最多可有231-1个元素
22.For循环和While循环可以自动地在数组的上下限范围内编索引和进行累计。
这些功能称为自动索引。
在启动自动索引功能以后,当把某个外部节点的任何一维元素连接到循环边框的某个输入通道时,该数组的各个元素就将按顺序一个一个地输入到循环中。
循环会对一维数组中的标量元素,或者二维数组中的一维数组等编制索引。
在输出通道也要执行同样的工作――数组元素按顺序进入一维数组,一维数组进入二维数组,依此类推。
23.多态化是指一种函数功能,即可以协调不同格式、维数或者显示的输入数据。
大多数LabVIEW的函数都是多态化的。
24.在LabVIEW的图形显示功能中Graph和Chart是两个基本的概念。
一般说来Chart是
25.将数据源(例如采集得到的数据)在某一坐标系中,实时、逐点地显示出来,它可以反映被
26.测物理量的变化趋势,例如显示一个实时变化的波形或曲线,传统的模拟示波器、波形记录
27.仪就是这样。
而Graph则是对已采集数据进行事后处理的结果。
它先将被采集数据存放在一
28.个数组之中,然后根据需要组织成所需的图形显示出来。
它的缺点是没有实时显示,但是它
29.的表现形式要丰富得多。
例如采集了一个波形后,经处理可以显示出其频谱图。
现在,数字
30.示波器也可以具备类似Graph的显示功能
31.
32.
33.
简答题
第1章ASP.NET概述P18
(1)名词解释
静态网页:
一般指用超文本标记语言HTML来实现,以htm或html做后缀名的网页文件,这些网页文本中不存在需要服务器段解释的代码;所有人浏览到的同一网页不会有任何区别。
动态网页:
所谓动态网页,就是服务器端可以根据客户端的不同请求动态产生网页内容。
它根据不同类型的客户端请求生成不同的页面,具有交互性。
动态网页是用标准html代码和动态语言(如:
asp,jsp,php,等)编写的。
服务器端:
在万维网中提供网页服务的一端称为服务器端。
客户端:
接受服务的一端称为客户端。
名称空间:
所谓名称空间就是将多个提供相似功能的类组成逻辑上相关的一些单元,以便于管理和记忆。
例如system.io类包含了用来处理输入输出操作的类。
应用程序:
在同一台电脑上,添加了虚拟目录的文件夹就被当成一个独立的网站对待,这个独立的网站就成为一个应用程序。
所以用新建一个应用程序的时候,该软件会自动帮你生成一个文件夹,并且在IIS中添加相应的虚拟目录。
(1)请比较静态网页和动态网页的工作原理:
静态网页和动态网页在客户端看来是除了发送请求是的后缀名外没有其它任何区别,主要是服务器端的区别。
静态网页服务器在接收了客户端的请求后直接读取相应的网页文件返回给客户端,而动态网页服务器在接收到了客户端发来的请求后先找到相应文件然后根据相应参数将文件编译成标准的html代码,在返回给客户端。
P62
(2)有100个和尚吃100个馒头,大和尚1人吃4个,小和尚4人吃1个,问有多少个大和尚和多少个小和尚?
subpage_load()
dimm,n,big_monk,small_monkasinteger
message.text="可能的组合是:
"
form=1to100
big_monk=m
small_monk=100-m
if4*big_monk+small_monk/4.0=100then
message.text+="大和尚:
"&big_monk&"个,小和尚"&small_monk&"个;
"
endif
next
endsub
第3章、服务器控件P98
3、普通的HTML标记、HTML服务器控件、Web服务器控件有什么联系和区别?
HTML服务器控件和WEB服务器控件都是从普通HTML发展过来的,只要给普通HTML代码添加id和runat=server属性就变成了HTML服务器控件,WEB服务器控件是.net提供的一套全新的控件,它的设计合理使用更简便,但是目前还没有和HTML完全一一对应。
推荐使用WEB服务器控件。
3、什么时候该使用HTML标记、HTML服务器控件、Web服务器控件?
在不需要和服务器端交互的程序中应该尽量使用普通html代码,这样会减轻服务器负担,在需要交互时尽量使用web服务器控件,实在没有可用的web服务器控件再考虑html控件。
第4章内部对象P136
4、请叙述response的write方法的两种写法的区别及注意事项。
write的两种写法:
<%response.write(“string”)%>and<%=”string”%>.见:
P111
4、请将response的write方法与利用标签控件输出信息进行比较。
利用response.write方法和label都可以输出信息,但是label相对比较容易控制输入的位置和格式。
建议用label。
4、请叙述redirect方法、execute方法、tranfer方法、超链接四者的联系和区别。
redirect虽然是在服务器端运行,但是重定向实际上发生在客户端,但是execute和transfer的重定向是发生在服务器端的;execute的重定向完毕后会返回本页面继续执行下面的程序,但是transfer则不;超链接则是纯粹的客户端行为。
4、请叙述Session对象和application对象各自的作用和最主要的区别。
session用来在不同的页面传递同一个人的信息,而application则在同一页面储存不同用户的信息。
第5章:
数据库基础知识P153
5、请叙述为什么要采用数据库来管理数据。
采用数据库来管理数据的理由:
数据库是目前最多使用的操作数据的方法,因为数据库用户不再需要知道数据的具体存放格式和方法,只要通过标准的数据查询语言来操作数据,这样的数据管理快速高效而且易于保存,备份和恢复。
没有理由还是用前两种手段来管理数据。
5、在insert语句中,能否为自动编号字段赋值,为什么?
Insert语句中,不需要为自动编号字段赋值,因为数据库会自动进行。
P182
6、某数据库程序可以显示记录,但不能添加记录,请问可能是什么原因?
可以显示但是不能添加记录最可能的原因就是程序对数据库文件只有读权限但是没有写权限。
6、更新记录时可否先删除、再插入记录?
这样有什么缺点?
(提示:
自动编号字段的值可能会改变)
应该是“修改记录时可否……”;这样多做一步,服务器负担加重,而且用update可以只修改一项,但是先删除后添加就必修把每一项都添加了才能达到同样的效果,再者自动编号值会变化。
6、在查询记录的时候,如果只想显示部分字段的内容,应该怎么做?
如果只想显示部分记录,又该怎么做?
(提示:
参考第五章的SQL语句)
不要使用*,而使用select要查询的字段1,要查询的字段2from表where条件语句,就可以只查询部分字段了,只想显示部分记录,只要控制好查询条件就行了,或者在显示的时候做一下判断。
第7章深入进行数据库编程P235
7、如何在datagrid控件中加上验证控件?
可以使用TemplateColumn自定义列来给DataGrid添加控件验证功能。
7、如何用repeater控件虽更新和删除记录?
虽然Repeater组件不支持更新和查询,但是可以通过LINKBUTTON添加CommandName然后根据不同的Command进行最定义操作,这些操作当然可以包括更新和查询。
7、请比较DataGrid、DataList、Repeater控件的联系和区别?
DataGrid提供了最多的功能,如允许访问者对记录编辑、排序或分页。
同时它也是最容易使用的,甚至于简单到只需要将之添加到页面中而不必额外编写代码。
不过这些易用性是以性能的损失为代价的。
DataGrid在三种控件中是效率最低的,特别是在使用WebForm的情况下。
通过使用模板,DataList提供了比DataGrid更加优秀的界面效果。
不过这需要以牺牲一定的开发时间为代价。
为了添加排序、分页和编辑功能,程序员不得不花费比使用DataGrid更多的精力来进行编码,虽然它的性能要优于DataGrid。
最后,Repeater允许对数据记录作最大限度的HTML定