实验报告

  • 格式:doc
  • 大小:2.26 MB
  • 文档页数:33

下载文档原格式

  / 33
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

南昌大学实验报告

学生姓名:冷双全学号: 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技巧

注意数组的处理和产生都可以借助循环结构,其关键点在于自动索引功能和移位寄存器的使用。

注意体会数组和簇的区别与联系,簇可以构成数组(即簇数组),而数组也可以是簇中的成员。

五、课后需预习的下一单元实验内容