实验报告
- 格式:doc
- 大小:2.26 MB
- 文档页数:33
南昌大学实验报告
学生姓名:冷双全学号: 5801208061 专业班级:测仪082 实验类型:□验证□综合□设计□创新日期:2011.12.27 成绩:
实验一利用LabVIEW控件进行结构化程序设计
一、实验目标:
1. 理解LabView的结构的基本概念
2. 掌握LabView中特有的顺序结构和移位寄存器的基本使用方法
3. 掌握LabView中公式节点的使用方法
二、实验设备
安装有LabVIEW的计算机。
三、实验要求和内容
LabView中的结构中的For和While相当于别的语言中的各种循环语句,而顺序结构主要为了方便于进行和时间相关的编程。本单元基本要求为循序渐进地学习和调试结构相关的内容,重点在于掌握LabView中进行循环和时间相关编程的方法。
1. 使用For循环产生100个随机数。在随机数产生的同时判定当前随机数的最大值和最小值。有时称其为“流动的”最大值和最小值。在前面板上显示流动最大值、最小值和当前的随机数。循环中一定要包含Time Delay Express VI以便用户可以观看值随着For循环的运行而更新。
2. 构建VI,每秒显示一个0到1之间的随机数。同时,计算并显示产生的最后四个随机数的平均值。只有产生4个数以后才显示平均值,否则显示0。每次随机数大于0.5时,使用Beep.vi产生蜂鸣声。
【提示】虽然叙述简单,但实现不易,请注意:
每秒产生一个随机数,我们可以使用用于定时的VI
要计算最后四个数的平均,我们需要使用移位寄存器
要注意顺序结构和移位寄存器的嵌套关系
3. 创建前面板有3个圆LED的VI。运行程序时,第一个LED打开并保持打开状态。1秒钟以后,第二个LED打开并保持打开状态;再过2秒钟,第三个LED打开并保持打开状态。所有LED都保持打开状态3秒钟,然后程序结束。(使用顺序结构)
[选做]4. 创建一个计时测试程序,比较公式节点和本地LabVIEW数学函数的平均执行时间。此程序需要一个For循环或一个平序或叠序结构以及一个Case结构。要求For循环运行计时
测验N次,然后使用Statistics Express VI对结果做平均。要求顺序结构在代码运行之前以及
南昌大学实验报告
学生姓名:冷双全学号: 5801208061 专业班级:测仪082 实验类型:□验证□综合□设计□创新日期:2011.12.27 成绩:
代码运行之后对Tick Count进行采样。要求Case结构判定用户是要执行公式节点还是要执行本地LabVIEW数学函数。对每个分支运行计时测验程序。哪种方法执行时间最快?哪种方法最容易编程?别人要看程序时,哪种方法更容易理解?
四、本单元应掌握的LabView技巧
注意For循环的下标是从0开始递增的。
五、课后需预习的下一单元实验内容
南昌大学实验报告
学生姓名:冷双全学号: 5801208061 专业班级:测仪082 实验类型:□验证□综合□设计□创新日期:2011.12.27 成绩:
实验二
利用LabVIEW实现各种数学运算(数组,矩阵,代数)和字符串与
逻辑运算
一、实验目标:
1. 理解LabView的数组和簇的基本概念
2. 掌握数组的创建和使用
3. 理解多态性的含义
4. 掌握簇的创建和使用
二、实验设备
安装有LabVIEW的计算机。
三、实验要求和内容
LabView中的数组和别的语言中数组的概念基本一致,但在LabView中数组是Control 或者Indicator,也就是说,它是有界面的。LabView中的簇类似于C语言中的stucture数据结构或C++中的Class类。本单元基本要求为循序渐进地学习和调试数组和簇的相关内容。
1. 创建子VI计算两个输入向量A和B内积。要求程序能够判断两个向量的元素个数是否相等,相等则计算内积,否则利用beep.vi报警并且弹出对话框提示。将VI计算结果和数学函数的计算结果做比较,仔细检查计算程序。
2. 创建VI,计算并绘制二阶多项式y = Ax2 + Bx + C。VI应使用前面板控件来输入系数A,B 和C,并使用前面板控件输入点数N,计算x0到x N-1区间上的多项式。在波形图上绘制y-x 图形指示器。
【提示】首先需要写出N个点中每个点x坐标的计算公式
然后利用多态性简化程序的编制(既把二项式的计算做成子VI,当输入单个值
时输出单个值,输入数组时也输出数组)
[选做]3. 创建VI,包含一个由6个按钮组成的簇,这些按钮标签分别是Option1到Option6。当VI执行时,VI将等待按钮之一被按下。当按一个按钮时,使用Display Message To User Express VI指出所选择的选项。重复以上过程直到按下Stop按钮。确保加入Time Delay Express VI使用户有时间按按钮。
提示:可以使用Cluster to Array函数把布尔簇转换成布尔数组,簇中的每个按钮代表数组中
南昌大学实验报告
学生姓名:冷双全学号: 5801208061 专业班级:测仪082 实验类型:□验证□综合□设计□创新日期:2011.12.27 成绩:
的一个元素。Search 1D Array函数从Cluster to Array函数创建的一维布尔值数组中搜索TRUE 值。数组中的任何元素为TRUE值表示用户单击了簇中的一个按钮。Search 1D Array函数返回其在数组中找到的第一个TRUE值的索引值并将其传送到Case结构的选择器端子。如果没有按过按钮,Search 1D Array函数返回索引值-1,执行空操作的-1分支执行。While循环重复检查布尔簇控件的状态,直到按下Stop按钮。
[选做]4. 创建子VI,用于计算多项式y = a*x^4 + b*x^3 + c*x^2 + d*x +e的值,其中各项系数要求以数组的形式输入(要求数组中元素高阶系数在前,低阶系数在后),VI要能够实现多态性,即自动判断多项式的项数,最后根据输入的x输出y值。
四、本单元应掌握的LabView技巧
注意数组的处理和产生都可以借助循环结构,其关键点在于自动索引功能和移位寄存器的使用。
注意体会数组和簇的区别与联系,簇可以构成数组(即簇数组),而数组也可以是簇中的成员。
五、课后需预习的下一单元实验内容