当前位置:文档之家› 基于LabVIEW的图像工程实验

基于LabVIEW的图像工程实验

基于LabVIEW的图像工程实验
基于LabVIEW的图像工程实验

基于LabVIEW 的图像工程实验

【实验目的】

1. 理解图像工程中的基本概念和方法

2. 掌握基于LabVIEW 的图像工程任务的实现方法

【预习重点】

1. 常用的图像增强技术

2. 常用的灰度图像分割技术

3. LabVIEW 景象子模板(Vision )中相关节点的功能和使用方法

【参考书】

1. 图象处理和分析;章毓普 编著;清华大学出版社,1999年3月 第1版

2. 数字图像处理;何东健 等编著;西安电子科技大学出版社,2003年7月 第1版

3. 数字图像处理及模式识别;沈庭芝,方子文 编著;北京理工大学出版社,1998年6月 第1版

4. LabVIEW 程序设计与应用;杨乐平 等编著;电子工业出版社,2001年7月第1版

5. 虚拟仪器技术概论;杨乐平 等编著;电子工业出版社,2003年3月第1版

6. 基于LabVIEW 的虚拟仪器设计;刘君华 等编著;电子工业出版社,2003年1月第1版

【实验仪器】

工业用摄像头、图像采集卡(IMAQ1407/1409)、PC 机、LabVIEW 应用软件(LabVIEW 7 Express )和NI 景象处理模块(NI Vision Development Module )

【实验原理】

一、图像工程概述

图像工程的内容非常丰富,根据抽象程度和研究方法等的不同可分为3个层次(见 图1 ):图像处理、图像分析和图像理解。换句话说,图像工程是既有联系又有区别的图像处理、图像分析及图像理解三者的有机结合,另外还包括对他们的应用。

图像处理着重强调在图像之间进行的变换。虽然人们常用图像处理泛指各种图像技术,但比较狭义的图像处理主要满足对图像进行各种加工以改善图像的视觉效果并为自动识别打基础,或对图像进行压缩编码以减少所需存储空间或传输时间、传输通路的要求。

图像分析则主要是对图像中感兴趣的目标进行检测和测量,以获得他们的客观信息从而建立对图像的描述。如果说图像处理是一个从图像到图像的过程,则图像分析是一个从图像到数据的过程。这里数据可以是对目标特征测量的结果,或是基于测量的符号表示。它们描述了图像种目标的特点和性质。

图像理解的重点是在图像分析的基础上,进一步研究图像中各目标的性质和它们之间的相互联系,并得出对图像内容含义的理解以及对原来客观场景的解释,从而指导和规划行动。如果说图像分析主要图1 图像工程三层次示意图

高层 中层 低层 语义

高 低 抽象程度

符号 目标 象素 操

作对象

数据量

界为中心,借助知识、经验等来把握整个客观世界(包括没有直接观察到的事物)。本实验主要涉及图像处理和不想理解的部分内容。

(一)数字图像基础

用计算机进行图像处理的前提是图像必须以数字格式存储,我们把以数字格式存放的图像称之为数字图像。根据数字图像的特性可以将其分成不同的类型,静态图像可分为矢量(Vector )图和位图(Bitmap ),位图也称为栅格图像。

矢量图是用一系列绘图指令来表示一幅图,如AutoCAD 中的绘图语句。这种方法的本质是用数学(更准确的说是几何学)公式描述一幅图像,图像中每一个形状都是一个完整的公式。

位图是通过许多像素点表示一幅图像,每个像素具有颜色属性和位置属性。位图又可以分成线画稿(Line Art )、灰度图像(Gray Scale )、索引颜色图像(Index Color )和真彩色图像(True Color )。在灰度图像中,像素灰度级用8 bit 表示,所以每个像素都是介于黑色和白色之间的256(28 =256)种灰度中的一种。灰度图像只有灰度颜色而没有彩色,从技术上来说就是具有从黑到白的256种灰度色域(Gamut )的单色图像。

我们日常生活中常见的各种照片、图片、海报、广告画等均属连续形式的模拟图像,所以数字图像处理的一个先决条件就是将连续图像进行采样和量化,转换为数字图像。如 图2 所示,就描述了一幅黑白照片经过采样和量化被转换为灰度图像的过程。

即把图像划分为若干图像元素(像素)并给出他们的地址(采样);度量每一像素的灰度,并把连续的度量结果量化为0~255之间的整数(量化)。这样,一幅照片就被转换成了一个2维数组,数组中某一特定位置的元素((x ,y ))与图像中某一特定位置的图像元素相对应,数组中元素的值(f (x ,y ))代表了其所对应的那一特定位置图像元素的灰度。

(二)图像增强

图像的生成、传输或变换的过程中,由于多种因素的影响,总要造成图像的降质。图像增强技术作为一大类基本的图像处理技术,其目的是采用一系列技术去改善图像的效果或将图像转换成一种更适合于人或机器进行分析处理的形式。目前常用的增强技术根据其处理所进行的空间不同,可分为基于图像域的方法和基于变换域的方法2类。基于图像域的方法是指增强操作直接作用于像素的增强方法,可表示为:

()()[]y x f EH y x g ,,= (1)

其中f (x ,y )和g (x ,y )分别为增强前后的图像,而EH 代表增强操作。如果EH 是定义在每个(x ,y )上的,则EH 是点操作;如果EH 是定义在(x ,y )某个临域上,则EH 常称为模板操作。

采样 量化 数字化

图2 数字图像的生成

基于点操作的增强方法也叫灰度变换,常见的几类方法为:直接灰度变换、直方图处理和图像间运算。

直接灰度变换是将f (x ,y )中的每个像素按EH 操作直接变换以得到g (x ,y )的图像处理方法。图3 所示,为一幅图像经几种直接灰度变换处理的过程:

图3(a )中的EH 操作是对图像求反,即将原图像的灰度值翻转。图3(b )中的EH 操作是增强图像对比度,即通过增加原图里某两个灰度值间的动态范围来增强原图各部分的反差。图3(c )中的EH 操作是动态范围压缩,即通过减小原图灰度值间的动态范围来减弱原图各部分的反差。图3(a )中的EH 操作是灰度切分,即将某个灰度范围变得非常突出来突显该灰度范围内像素的分布信息。

直方图表示数字图像中每一灰度值出现频数的统计。如 图4 所示,它能给出该图像的概貌性的描述:整幅图像的灰度范围、每个灰度级的频数、整幅图像的亮度和平均对比度等。

通过值方图处理,从新调整原图中各灰度值的分布位置,而实现增强整个图像对比度(直方图均衡化)或有选择地增强某个灰度值范围内对比度(直方图规定化)的目的。图5 所示,为一幅图像分别经直方图均衡化和直方图规定化处理的过程。

0 255 (y x g ,(a ) (b ) (c ) (d )

图3 利用直接灰度变换增强图像 图4 直方图统计

2. 空域滤波

借助模板进行邻域操作的增强方法也叫空域滤波。空间滤波器的工作原理都可借助频域进行分析。它们的基本特点都是让图像在傅里叶空间某个范围内的分量受到抑制而让其它分量不受影响,从而改变输出图像的频率分布达到增强的目的。在增强中用到的空间滤波器主要有平滑(低通)滤波器和锐化(高通)滤波器两类。

平滑滤波器能减弱或消除傅里叶空间的高频分量,但不影响低频分量。因为高频分量对应图相中的噪声干扰区域、边缘区域等灰度值具有较大较快变化的部分,低通滤波器将这些分量率去可减弱噪声使图像平滑。图6 所示,为一幅混有椒盐噪声的原图经平滑滤波器处理的过程。

锐化滤波器能减弱或消除傅里叶空间的低频分量,但不影响高频分量。因为低频分量对应图像中灰度值缓慢变化的区域,因而与图像的整体特性,如整体对比度和平均灰度有关,高通滤波器将这些分量率去可使图像锐化增强被模糊的细节。图7 所示,为一幅模糊图像经锐化滤波器处理的过程。

图6 借助模板的平滑滤波过程

图7 借助模板的锐化滤波过程

在对图像的研究和应用中,人们往往仅对一幅图像中的某些部分感兴趣。这些部分常称为目标或前景(其它部分称为背景),他们一般对应图像种特定的、具有独特性质的区域。为了辨识和分析目标,需要将这些有关区域分离出来,在此基础上才有可能对目标进行进一步利用,如进行测量和特征提取等。把图像分成各具特性的区域并提取出感兴趣目标的技术和过程称为图像分割。对图像(灰度图像)的分割常可基于像素灰度值的2个性质:不连续性和相似性。区域内部的像素一般具有灰度相似性,而在区域之间的边界上一般具有灰度不连续性。所以分割算法可据此分为利用区域间灰度不连续性的基于边界的算法和利用区域内灰度相似性的基于区域的算法。

基于边界的分割方法中,边缘检测是第一步也是关键的一步。两个具有不同灰度值的相邻区域之间总存在边缘,边缘是灰度值不连续的结果,检测到这种不连续即可以确定区域的边缘。如图8 所示,是一种简单的边缘检测方法。

当图中的边缘强度足够高而边缘长度足够短时,既可以认为图像的灰度值在这一区域发生了跃变,因此可再此处定义一个边缘位置。

基于区域的分割方法中,取域值是一种最常见的方法。如 图9(a ) 所示,假设图像由具有单峰灰度分布的目标和背景组成,在目标或背景内部的相邻像素间的灰度值是高相关的,但在目标和背景交界处两边的像素在灰度值上有很大的区别。取域值为T ,则按照(2)式的映射关系做变换,即可以将目标和背景区分开来而得到 图9(b ) 的结果。

()()()T

y x f T y x f y x g ≤>??

?=,,0

1, (2)

(四)几何特征测量

探查线

边缘 探查线方向

灰度

灰度轮廓 边缘长度

边缘 边缘强度

图8 通过检测探查线上的灰度连续性来确定区域的边缘

()()()127

,127,0

1

,≤>??

?=y x f y x f y x g 图9 通过取阈值来分理目标

(a )

(b )

从图像中分割出目标并之后,可进一步对它进行几何特征测量和分析,在此基础上可以识别物体,也可以对物体进行分类,或对物体是否符合标准进行判别以实现质量监控。图像的几何特征尽管比较直观和简单,但在许多图像分析问题中起着十分重要的作用,可以用来完成分类、检验、定位、轨迹跟踪等任务。下面介绍如何确定目标几何特征量中位置和方向的方法。

图像中的目标通常不是一个点,因此用物体的面积的中心点作为物体的位置。如 图10 所示,若图像中的目标队赢得像素位置坐标为( i=0,1,…,n-1;j=0,1,…m-1),这可用下式计算目标的位置坐标:

∑∑---==10101n i m j i x mn x ,∑∑---==101

1n i m j i y mn y (3)

确定目标的方向有一定的难度。如果目标是细长的,则通常可以把较长方向上的最小二阶矩轴(最小惯量轴在二维平面上的等效轴)的方向定为目标的方向。也就是说,要找到一条直线,使下式定义的E 值最小:

()??=y x y x f r E d d ,2 (4)

式中,r 是点(x ,y )到直线的垂直距离。

二、基于LabVIEW 的图像工程实现

图像工程的大部分内容都是借助于计算来实现的,借助美国国家仪器公司提供的NI 景象处理模块(NI Vision Development Module ),可以基于LabVIEW 软件平台来实现图像工程中的大部分内容。基于LabVIEW 的图像工程能够充分利用G 语言编程简单、功能完善、应用灵活等突出特点,使得图像工程任务的实现变得更加简单。下面将有重点的介绍NI 景象处理模块中的内容:

如 图11 所示,在LabVIEW 控制模板(Control )的景象子模板(Vision )中包含IMAQ Image.ctl 、Image Display 和Image Display (Classic )节点,以及IMAQ Vision controls 和Machine Vision controls 子模板。

它们的功能如下表所式:

(x i ,y i )

x

y

图10 用物体的面积的中心点作为物体的位置

图11 控制模板(Control )中的景象子模板(Vision )

表1

注:表中打“*”号的为重点内容

图12 所示,

在LabVIEW 功能模板(Function )的景象子模板(Vision )中包含

Image Acquisition

、Vision Utilities 、Image Processing 和Machine Vision 子模板。

它们的功能如下表所式:

表2

图12 功能模板(Function )中的景象子模板(Vision )

在Image Acquisition子模板中包含如表3 所示的几个重要节点:表3

注:表中打“*”号的为重点内容

2. Vision Utilities子模板

在Vision Utilities子模板中包含如表4所示的几个重要节点:

表4

注:表中打“*”号的为重点内容

3. Image Processing子模板

在Image Processing子模板中包含如表5所示的几个重要节点:表5

注:表中打“*”号的为重点内容

4. Machine Vision子模板

在Machine Vision子模板中包含如表6所示的几个重要节点:表6

注:表中打“*”号的为重点内容

【实验内容与步骤】

1. 将一幅图像从指定图像文件中读出,显示在LabVIEW的前面板中,并存入到另一指定文件中

(1)启动LabVIEW7.0软件平台,新建一个名为Open Display & Save的空白VI

(2)如图13所示,在框图程序中利用IMAQ Create节点创建一幅空图像

→利用IMAQ ReadFile节点从指定图像文件中读入一幅图像

→在前面板中添加一个Image Display节点用于显示图像,并将其对应的框图程序中的节点与IMAQ ReadFile节点的Image Out像连接

→在框图程序中利用IMAQ WriteFile节点将该图像写入到另一指定文件中

→利用IMAQ Dispose节点将打开的图像销毁,并释放其所占用的内存空间

(3)从新调整前面板和框图程序中各节点的大小和位置使其整洁美观

(4)在前面板中分别填入要打开和保存图像文件的路径。在Image Display节点上单击鼠标右健勾选“Snapshot”,以使被显示的图像保留在前面板中

(5)运行Open Display & Save. VI,观察结果

2. 打开一幅颜色偏暗、对比度偏小的图像,对其进行图像增强,并结果保存在到指定文件中(1)将Open Display & Save. VI另存为Processing. VI

(2)如图14所示,在框图程序中有选择地插入Processing子模板中的具有灰度变换作用的节点用以调整图像的亮度和对比度

→在前面板中添加一个Image Display节点用于显示被增强后的图像

(3)从新调整前面板和框图程序中各节点的大小和位置使其整洁美观

(4)在前面板中分别填入要打开和保存图像文件的路径。在Image Display节点上单击鼠标右健勾选“Snapshot”,以使被显示的图像保留在前面板中

(5)运行Processing. VI,比较图像增强前后的结果

(6)改变所选用的具有灰度变换作用的节点的参数,或更换、添加Processing子模板中其它具有灰度变换作用的节点,反复比较直到取得满意的图像增强效果

3. 打开一幅颜色偏暗、对比度偏小并且含有1%随机噪声的图像,对其进行图像增强,并结果保存在到指定文件中

(1)将Processing. VI另存为Processing & Filters. VI

(2)如图15所示,在框图程序中有选择地插入Filters子模板中有低通滤波作用的节点,以减弱图像中的噪声

→在前面板中再添加一个Image Display节点用于显示被增强后的图像

(3)从新调整前面板和框图程序中各节点的大小和位置使其整洁美观

(4)在前面板中分别填入要打开和保存图像文件的路径。在Image Display节点上单击鼠标右健勾选“Snapshot”,以使被显示的图像保留在前面板中

(5)运行Processing. VI,比较图像增强前后的结果

(6)改变所选用的低通滤波器的滤波模板,或更换、添加Filters子模板中其它具有减弱噪声功能的低通滤波节点,反复比较直到取得满意的图像增强效果

4. 利用图像采集系统即时采集一幅图像,显示在LabVIEW的前面板中,并存入到另一指定文件中

(1)检查图像采集系统的连接情况:工业用摄像头←→图像采集卡(IMAQ1407/1409)←→计算机PCI总线

(2)运行Measurement & Automation Explorer程序,配置图像采集卡(IMAQ1407/1409)的图像采集通道

(3)将Open Display & Save. VI另存为Get Display & Save. VI

(4)如图16所示,在框图程序中利用IMAQ Init、IMAQ Snap和IMAQ Close节点组成“图像采集模块”

→用“图像采集模块”替换原框图程序中的IMAQ ReadFile节点

(5)从新调整前面板和框图程序中各节点的大小和位置使其整洁美观

(6)在前面板中分别填入要保存图像文件的路径。在Image Display节点上单击鼠标右健勾选“Snapshot”,以使被显示的图像保留在前面板中

(7)运行Get Display & Save. VI,观察结果

5. 测量一幅颜色偏暗、对比度偏小的工件图中工件的实际尺寸

(1)新建一个名为Clamp的空白VI

(2)利用“图像采集模块”采集摄像头视场内的工件图并显示在前面板中

(3)对采集到的图像进行图像增强以改善图像质量

(4)如图17所示,在框图程序中利用IMAQ Clamp Horizontal Max和IMAQ Clamp Vertical Max节点测量图像中工件的尺寸

(5)从新调整前面板和框图程序中各节点的大小和位置使其整洁美观

(6)在前面板中分别填入要保存图像文件的路径。在Image Display节点上单击鼠标右健勾选“Snapshot”,以使被显示的图像保留在前面板中

(7)将工件图水平放置在摄像头的视场内

(8)运行Clamp. VI

→测量工件图中标尺的大小以获得图像的校正系数

→停止Clamp. VI的运行

→修改原程序中的图像校正系数

(9)再次运行Clamp. VI,测量工件图中的工件尺寸,并将测量结果记录下来

6. 追踪激光光斑在摄像头视场中的位置

(1)新建一个名为Particle Analysis的空白VI

(2)如图18所示,在框图程序中利用IMAQ Init、IMAQ Grab Setup、IMAQ Grab Acquire和IMAQ Close 节点组成“高速图像采集模块”

(3) 如 图19 所示,将通过“高速图像采集模块”采集到的图像进行图像增强,并转换为二值图像

(线画稿)

(4) 利用IMAQ Particle Analysis 节点获得二值图像中微粒的数目和位值信息 (5) 从新调整前面板和框图程序中各节点的大小和位置使其整洁美观

(6) 在前面板中分别填入要保存图像文件的路径。在Image Display 节点上单击鼠标右健勾选

图18 Particle Analysis. VI

(7)运行Particle Analysis. VI

(8)将一个或多个激光光斑投射到摄像头的视场内,并移动光斑(9)观察前面板中捕捉到的激光光斑位置随光斑移动的变化情况

【思考题】

1.图像处理、图像分析和图像理解之间的层次关系?

2.直方图规定化处理照比直方图均衡化处理的优势?

3.分别列举3种平滑滤波器和锐化滤波器的滤波模板。

4.边缘检测方法中,确定边缘的条件是什么?

5.确定图像中物体位置的方法是什么?

6.Processing子模板中的具有灰度变换作用的节点包括那些?

7.Filters子模板中有低通滤波作用的节点包括那些?

8.组成“高速图像采集模块”的节点包括那些?

9.请画出实验内容5、6的LabVIEW程序的流程图。

虚拟仪器LabVIEW实验报告

实验报告一 课程名称虚拟仪器 实验项目熟悉编程环境与基本编程操作 实验仪器计算机 系别: guangdian 专业: 班级/学号: 学生姓名: 实验日期:2011年3月 成绩: _____________________ 指导教师: ____________________

实验一熟悉编程环境与基本编程操作 一、实验目的 1.理解LabVIEW的运行机制,熟悉LabVIEW编程环境。 2.掌握基本编程操作,包括VI程序的创建、编辑、运行与调试。 3.理解LabVIEW模块化编程思想,掌握子VI的创建、编辑及调用。 二、实验仪器及材料 主要设备有计算机, LabVIEW8.5软件。 三、实验内容及步骤 教材第82—83页练习4.2,创建VI后保存为Thermometer.vi。 1.打开一个新的前面板 2.从控件菜单选择一个温度计放到前面板 3.在温度计上用右键单击设定一个精确的温度值,选择Visible》Digital Display 4.将VI保存为Thermometer.vi 教材第107—108页练习5.2,打开练习4.2所创建的VI,将其转变成一个子VI。 1打开4.2创建的Thermometer.vi 2.为该VI创建一个图标,从VI图标窗格选择Edit Icon…,单击OK返回主VI

3从图标弹出菜单中选择Show Connector创建连接器。 4将端子指派给温度指示器,使用Writing工具单击连接器端子,端子就会变成黑色,然后单击温度计指示器。 5在温度计指示器的弹出菜单选择Description and Tip…为温度指示器编制文档 6选择File》Save将修改保存。 四、收获与体会

虚拟仪器程序设计实验指导书

《虚拟仪器程序设计》实验指导书机械与电气工程学院舒华戴新编 广州大学2009年

目录 实验1 熟悉LabVIEW编程环境 实验1-1 LabVIEW的基本操作 (1) 实验1-2 练习 (4) 实验2 控件与程序框图应用 实验2-1 虚拟仪器前面板的设计 (5) 实验2-2 编写简单的LabVIEW 程序 (6) 实验3 子VI程序设计及调试程序技巧 实验3-1 创建子程序 (8) 实验3-2 子程序的调用 (10) 实验3-3 程序调试技巧 (12) 实验4 程序结构(1) 实验4-1 使用for循环结构 (14) 实验4-2 使用while循环结构 (16) 实验5 程序结构(2) 实验5-1 使用条件结构 (18) 实验5-2 使用顺序结构 (19) 实验5-3 使用事件结构 (20) 实验6 数据的表达与图形显示 实验6-1 Waveform Graph的应用 (23) 实验6-2 比较Waveform Chart和Waveform Graph (24) 实验6-3 使用XY Graph显示图形 (26) 实验6-4 公式节点及图形显示 (27) 实验6-5 虚拟信号发生器 (28) 实验7 非连线的数据传递方式 实验7-1 控制仿真 (30) 实验7-2 数制变换及计数仿真 (32) 实验7-3 全局变量编程 (33) 实验8 文件操作 实验8-1 文本文件操作 (34) 实验8-2 电子表格文件操作 (35) 实验8-3 仿真温度数据的记录 (36) 实验8-4 仿真温度数据的读取 (37) 实验9 应用程序设计 实验9-1 构建简单的信号分析与处理系统 (38) 实验9-2 频率响应函数与数字滤波实验 (38)

虚拟仪器LabVIEW实验报告

现代仪器设计LabVIEW实验报告 实验内容: 1.熟悉LabView软件操作方法 2.了解LabView的一般编程方法 3.虚拟信号发生器制作

1.熟悉LabView软件操作方法 虚拟仪器(virtual instrumention)是基于计算机的仪器。虚拟仪器主要是将仪器装入计算机。以通用的计算机硬件及操作系统为依托,实现各种仪器功能。虚拟仪器的研究中涉及的基理论主要有计算机数据采集和数字信号处理。目前在这一领域内,使用较为广泛的计算机语言是美国NI公司的LabVIEW。 LabVIEW(Laboratory Virtual instrument Engineering)是一种图形化的编程语言,它广泛地被工业界、学术界和研究实验室所接受,视为一个标准的数据采集和仪器控制软件。利用它可以方便地建立自己的虚拟仪器,其图形化的界面使得编程及使用过程基本上不写程序代码,取而代之的是流程图。 前面板的设计需用控制模板。控制模板(Control Palette)用来给前面板设置各种所需的输出显示对象和输入控制对象。每个图标代表一类子模板。可以在前面板的空白处,点击鼠标右键,以弹出控制模板。 程序框图的设计需用功能模板。功能模板(Functions Palette)是创建流程图程序的工具,只有打开了流程图程序窗口,才能出现功能模板。功能模板该模板上的每一个顶层图标都表示一个子模板。可以点击“窗口”—“显示程序框图”打开,也可以在流程图程序窗口的空白处点击鼠标右键以弹出功能模板。

流程图上的每一个对象都带有自己的连线端子,连线将构成对象之间的数据通道。不是几何意义上的连线,因此并非任意两个端子间都可连线,连线类似于普通程序中的赋值。数据单向流动,从源端口向一个或多个目的端口流动。不同 的线型代表不同的数据类型。下面是一些常用数据类型所对应的线型和颜色:

LabVIEW实验指导书

L a b V I E W实验指导书集团标准化办公室:[VV986T-J682P28-JP266L8-68PNN]

实验1 LabVIEW编程环境与基本操作实验 一、实验目的 ●了解LabVIEW 7 Express的编程环境。 ●掌握LabVIEW的基本操作方法,并编制简单的程序。 二、实验设备 安装有LabVIEW 7 Express的计算机 三、实验内容 1、LabVIEW的工作环境 1)启动界面 对话框各按钮作用如下: 【New】——创建一个新的VI(Virtual Instument)程序。【Open】——打开一个已有的VI程序 【Configure】——设置NI的测量和控制工具,如DAQmax的设置【Help】——LabVIEW帮助 2)面板窗口和框图程序窗口

①前面板窗口工具栏: (Run,运行) (Abort Execution,终止运行) (Pause/Continue,暂停/继续) (Run Continuously,继续运行)(Text Settings,字体设置)(Align Objects,排列方式) (Distrbute Objects,分布方式) (Reorder,重叠方式) ②框图程序工具栏 (Highlight Execution,高亮执行) (Start Single Stepping,单步执行) (Start Single Stepping) (Step Out) 2、LabVIEW模板介绍 1)工具模板(Tools Palette)2)控制模板(Control Palette) 3)功能模板 (Functions Palette) 3、LabVIEW程序设计的一般过程 1)前面板设计 使用输入控件器和输出指示器来构成前面板。控制器是用户输入数据到程序的方法,而指示器显示程序产生的数值。 2)框图程序的组成

虚拟仪器实验 labviEW

实验一储液罐状态监控系统设计 一、实验目的 通过该系统设计,初步了解LabVIEW虚拟仪器设计软件的前面板、程序框图及各个选项板的功能。 二、实验内容 设计储液罐状态监控仿真系统,要求如下 1、监测一个储液罐的实际液位、温度、进口压力、出口压力 2、用曲线图显示被测量液位随时间的变化情况 3、液位超标时用指示器报警 4、手动和自动两种方式调节储液罐的液位高度 5、用调节步长按钮决定自动调节的快慢程度 6、设计储液罐状态监控系统前面板 三、实验步骤 1、前面板设计 整个贮液罐监控系统前面板需要的控件有:停止键、手自动切换、液位超标指示灯、步长调节旋钮、高度设定、实际高度显示、进出口压力显示、温度显示和实际液位高度波形图。 停止键、手自动切换、液位超标在新式布尔量控件中进行选择,步长调节旋钮在数值控件中选择旋钮、压力表在数值中选择量表控件,设定高度、实际高度、温度在数值控件中分别选择垂直指针滑动杆垂直填充滑动杆和温度计,液位高度波形图选择波形图表。 2、程序框图设计 程序采用While循环结构,结束用停止布尔按钮结束,除设定高度和调节步长是手动设置外,其他输入如压力和温度的设定均采用编程—数值—随机数的方式给定,手自动切换布尔量连接比较选项中的选择节点,用于切换手自动,液位超标将实际高度和超标高度比较,输出一布尔量。 四、实验结果

五、思考题 1、将整个VI设计成一个子VI。在另一个VI中调用。 在前面板右上角,编辑连线板,对VI的输入和输出对应控件进行编辑,然后保存,即可生成VI,可在其他VI中调用,在其他VI中的调用图如下:

实验二分组数据的练习 一、实验目的 通过该实验,熟悉LabVIEW中常用的分组数据:数组、簇及波形的使用。 二、实验内容 习题4-3到4-11。 三、实验步骤 4-3.4.5 前面板只有三个数组的显示控件,分别为原数组显示、原数组大小显示和转置后的数组显示,程序框图中建立一二维数组常量,将要显示的数组填入,并添加一二维显示控件,在数组中分别选择数组大小和二维数组转置节点,其后分别连接显示控件。 4-6 前面板中选择簇输入控件,并在簇中加入字符型输入控件,数值型输入控件,布尔型输入控件,然后添加一布尔型显示控件,用于提取簇元素注册的显示。程序框图中从簇与变体函数子选板中选择按名称解除捆绑函数,输入端连接簇输入控件的输出,然后选择“注册”后输出端连接布尔控件的输入端。 4-7 前面板中在“字符串与路径”控件中选择组合框控件,然后在它的属性编辑项中编辑5个人的姓氏拼音首字母,它们的值分别为各自的中文姓名,编辑好后建立一字符串显示控件,程序框图中将组合框的输出端与字符串显示控件连接即可。 4-8 前面中中建立一字符串显示控件,程序框图中在定时函数子选板中选择“获取日期时间/字符串”函数,然后放置两个字符串常量分别为班级和姓名,将日期、时间、班级、姓名四个字符串接入字符串选板中的“连接字符串”函数节点,该节点的输出端接入字符串显示控件的输入端。 4-9 前面板中建立一字符串显示控件,程序框图中建立五个随机数,然后均与常数10相乘得到0-10的随机数,选择字符串选板中的“连接字符串”函数节点,将相乘后的随机数接入输入端,在“连接字符串”的格式字符串端建立字符串常量定义格式为两位小数点,数之间用逗号隔开。 4-10 前面板中建立一个一维数组输入控件,建立一个一维数组输出控件,程序框图中建立一个For循环,用数组选板中的“一维数组移位”和“替换数组子集”,每次替换数组最后一个元素并进行移位,替换的新元素值为0-10的随机数,For循环建立移位寄存器,使移位后的数组能进入下次循环中。 4-11 已知标定数据,前面板中建立电压的数值输入控件和压力的数值输出控件,程序框图中用数组选板中的“以阈值插值一维数组”进行电压对压力的插值找到索引值,然后进行显示。 四、实验结果 4-3.4.5

虚拟仪器LabVIEW实验一 虚拟万用表的实现实验指导书

虚拟万用表的实现 1实验目的 (1)学习Labview编程语言的开发环境 (2)了解前面板对象的调用、设置以及编程 (3)了解框图程序的常用节点 2 实验任务 设计虚拟数字万用表 基本要求: z设置电源开关:电源开时,数字万用表工作;电源关时,数字万用表不工作。 z设置数值显示屏:显示数字万用表测量的数据。 z设置档位选择旋钮:电阻档200、2K、20K、200K、20M五档;直流电流档200mV、2V、20V、200V、500V五档;交流电压档200V、500V 两档;直流电流档2mA、20mA、200mA、10A四档。 z设置数值单位提示显示:档位选择正确时,提示单位。 z设置超量程显示及报警:电源开关关闭时,提示“电源关”;档位选择错误时,给出档位选择错误提示;数值超出档位值时,给出超出量程提示; 同时给出报警信号。 z分单次测量、连续测量两种方式。单次测量时,仅测量显示测量时刻的值;连续测量时,不断的进行测量和显示。 z设置产生电阻值、直流电压、交流电压、直流电流的虚拟信号源。 附加要求(选作): 在产生的虚拟信号源上叠加噪声,以复现现实世界真实信号的特点。 3 实验原理 虚拟数字万用表的主要功能是对测量电路采集进来的数据进行处理和显示,整体是一个while循环,当电源打开且按下单次测量或多次测量按钮时,万用表工作,内部分为数据选择、数据判断、数据显示三部分。 z数据选择:是一个case结构,数据流旋钮的不同位置通过不同的数据通

道。 z数据判断:由两个case结构嵌套而成,外层的case针对不同的档位判断是否超出量程;内层的case当数值在范围内时开通数据通道,反之关闭 数据通道,给出错误提示。 z数据显示:由一个字符串显示变量、一个布尔显示变量、一个双精度浮点显示变量组成。 4 实验步骤 4.1前面板设计 图1是前面板的总体视图,分为信号源和数字万用表两个显示区。 图1 虚拟万用表前面板视图 1、完成信号源的设计 采用前面板“转盘”控件,在其上点击鼠标右键,选择“属性”——“外观”,通过修改标签,可以设置该控件的名称;选择“标尺”,设置“刻度范围”,可以设置该控件的数据范围,最终达到图1的显示效果。 2、完成数字万用表的设计 (1)采用前面板“转盘”控件,在其上点击鼠标右键,选择“文本标签”,然后再次选择“属性”——“文本标签”,可以修改该转盘上各档位的显示内容,如图2所示。 (2)按图1选择波形图作为连续测量时测量数据的显示窗口。 (3)选择数值显示控件作为数据显示和提示窗口。 (4)选择数值输入控件作为单次或多次测量的选择开关,对其设置如图3

实验一-LabVIEW中的信号分析与处理

实验一 LabVIEW中的信号分析与处理 一、实验目的: 1、熟悉各类频谱分析VI的操作方法; 2、熟悉数字滤波器的使用方法; 3、熟悉谐波失真分析VI的使用方法。 二、实验原理: 1、信号的频谱分析是指用独立的频率分量来表示信号;将时域信号变换到频域,以显示在时域无法观察到的信号特征,主要是信号的频率成分以及各频率成分幅值和相位的大小,LabVIEW中的信号都是数字信号,对其进行频谱分析主要使用快速傅立叶变换(FFT)算法:·“FFT Spectrum(Mag-Phase).vi”主要用于分析波形信号的幅频特性和相频特性,其输出为单边幅频图和相频图。 ·“FFT.vi”以一维数组的形式返回时间信号的快速傅里叶运算结果,其输出为双边频谱图,在使用时注意设置FFT Size为2的幂。 ·“Amplitude and Phase Spectrum .vi”也输出单边频谱,主要用于对一维数组进行频谱分析,需要注意的是,需要设置其dt(输入信号的采样周期)端口的数据。 2、数字滤波器的作用是对信号进行滤波,只允许特定频率成份的信号通过。滤波器的主要类型分为低通、高通、带通、带阻等,在使用LabVIEW中的数字滤波器时,需要正确设置滤波器的截止频率(注意区分模拟频率和数字频率)和阶数。 3、“Harmonic Distortion Analyzer .vi”用于分析输入的波形数据的谐波失真度(THD),该vi还可分析出被测波形的基波频率和各阶次谐波的电平值。 三、实验容: (1) 时域信号的频谱分析 设计一个VI,使用4个Sine Waveform.vi(正弦波形)生成频率分别为10Hz、30Hz、50Hz、100Hz,幅值分别为1V、2V、3V、4V的4个正弦信号(采样频率都设置为1kHz,采样点数都设置为1000点),将这4个正弦信号相加并观察其时域波形,然后使用FFT Spectrum(Mag-Phase).vi对这4个正弦信号相加得出的信号进行FFT频谱分析,观察其幅频和相频图,并截图保存。

虚拟仪器技术实验指导书

《虚拟仪器技术》 实验指导书 信息与通信工程学院 2014年3月

前言 一、课程性质 本课程是电子信息工程专业必修的专业实验课程。 通过本课程的教学,使学生深刻体会到虚拟仪器技术的应用,掌握LabVIEW的常用控件和函数,具备研究和开发虚拟仪器系统的能力。 二、项目设置 本课程总学时为16,开设的具体实验项目如下: ●实验1 小车行驶控制设计(4学时,必修) ●实验2 交通灯控制设计(4学时,选修) ●实验3 去极值平均滤波器的设计(4学时,必修) ●实验4 信号的拉氏变换和幅值分析(4学时,选修) ●实验5 信号生成器的设计(4学时,必修) ●实验6 二进制文件的读写操作(4学时,必修) 实验1-6均为设计性实验。 三、专业安排 电子信息工程专业选修全部实验。 四、本书特点 本指导书的特点是引入工程项目机制来管理实验项目,着重培养学生的方案设计、算法分析和现场调试能力,为将来成为卓越工程师打下坚实的基础。

目录 前言.................................................................................................................................. I 开发平台.. (1) 实验1 小车行驶控制设计 (5) 实验2 交通灯控制设计 (7) 实验3 去极值平均滤波器的设计 (8) 实验4 信号发生器的设计 (9) 实验5 信号的拉氏变换和幅值分析 (11) 实验6 二进制文件的读写操作 (13)

开发平台 一、虚拟仪器简介 虚拟仪器以计算机为核心,将计算机与测量系统融于一体,用软件代替传统仪器硬件的功能,用显示器代替传统仪器面板的测量仪器。 操作人员用鼠标和键盘控制仪器的启动、运行、结束,完成被测信号的数据采集、信号分析、谱图显示、数据存储回放及输出。 二、LabVIEW功能组成 图1.1 LabVIEW功能组成 三、LabVIEW开发流程 为项目建立文件夹,把相关的源程序和头文件等都保存到此文件夹。 1、启动LabVIEW 首先双击桌面LabVIEW图标,启动LabVIEW。 图1.2 LabVIEW启动界面 2、建立VI或工程 单击文件菜单,在下拉菜单选中新建VI或新建工程选项。 3、保存工程 单击文件菜单,在下拉菜单选中保存全部选项。

LabView实验报告

机电系统创新性综合实验 实验报告 学院:机械工程学院 专业:机械设计制造及其自动化班级:机自 124 班 学号: 1208030436 学生姓名:王彤 指导教师:蔡家斌、曹阳 2015年12月12

目录 实验题目: LabView创新实验 (1) 实验一1.1实验内容 (1) 1.2实验过程 (1) 1.3实验小结 (3) 1.4实验总结与感想 (5) 实验二2.1实验内容. (5) 2.2 实验过程 (5) 2.3实验小结 (7) 2.4实验总结与感想 (8) 实验三3.1实验内容 (8) 3.2实验过程 (8) 3.3实验小结 (10) 3.4实验总结与感想 (11)

实验题目 本次LabView实验共有6个实验题目,有两个选择方案,我选择了第一种方案:在六个实验中选择了三个,分别是实验一、二、三。通过自学和同学间的互相帮助,我学会了LabView软件的使用,完成了本次实验。 实验一虚拟信号发生器的设计 1.1实验内容 设计一个虚拟信号发生器,能够产生正弦波、三角波、锯齿波、直流、随机白噪声等信号〔波型选择用按键或旋钮〕,且可以调整波形参数。通过示波器可以观察虚拟信号发生器的输出信号。可以通过前面板选择信号波形,调节信号的频率、幅值和相位〔频率、幅值、相位用数字窗口显示〕,并通过虚拟示波器观察生成的波形。 1.2实验过程 1.新建一个VI,在后面板上创建一个选择结构; 2.在选择器标签中选择一个设置为默认,并在后面添加4个分支,以便写入多种不同的程序; 3.在选择结构中建立一个仿真信号,属性设置-信号类型-正弦波-确定;

4.在仿真信号中的对应位置创建输入控件,输出处创建波形图,分别连接在仿真信号的相应位置。 5. 6.其他几种波形信号按照相同方式创建在不同的选择标签中,并在选择结构外部建立一个While循环,可以让程序连续执行。

虚拟仪器LABVIEW大作业

LABVIEW回声探测器实验作业 安 徽 工 业 大 学 电气信息学院 自动化093

回声探测器 LabVIEW是由美国国家仪器公司创立的功能强大而又灵活的仪

器和分析软件应用开发工具。它是一种基于图形化的、用图标来代替文本行创建应用程序的计算机语言。在以PC为基础的测量和工控软件中,LabVIEW的市场普及率仅此次于C++/C语言。LabVIEW已经广泛地被工业界、学术界和研究实验室所接受,被公认为是标准的数据采集和仪器控制软件,LabVIEW使用的编程语言是G语言。G语言用图表表示函数,用连线表示数据流向。这次编程所用的是较新版本的LabVIEW 8.5。 一.设计目的:该实验基于labview8.5虚拟平台,使用图形语言编程,由回声发生器子VI产生回声信号,通过回声探测器进行探测分析。本实例利用两个波形图来分别显示回声信号和回声探测信号,并对这两个信号进行比对分析。 本实验设计主要内容包括三个部分:回声产生部分,回声探测部分,和结果显示部分。 回声探测器实例的前面板如图1:

图1 1.程序框图主要功能模块介绍:如图2回声探测器实例的程序框图 主要有四个功能模块组成,分别为回声产生子Vi功能模块,回声探测功能模块,结果显示功能模块,While循环功能模块,下面对每个功能块实现的具体处理功能和任务进行详细介绍。 图2 1>.回声产生子VI功能模块 回声产生子VI功能模块用来产生回声信号,此子VI命名为 回声产生器.vi, 图3给出了回声 产生子VI功能图

回声信号 图3 该子Vi主要用来产生回声信号,可将该模块产生的信号输入相应的波形图和回声探测功能模块中。另外,该子VI可以通过改变输入控件的参数来产生不同的信号。 2>.回声探测功能模块 回声探测功能模块的功能是通过“快速希尔伯特变换”,“实部虚部至极坐标转换”和“自然对数”等一系列函数节点的运算,将回声产生子VI功能模块产生的回声信号信息特征探测出来,“快速希尔伯特变换”函数变换是在FFT函数进行傅立叶变换的基础上执行离散希尔伯特变换的。其调用路径是“函数——信号处理——变换——快速希尔伯特变换”。 “实部虚部至极坐标转换”函数是将一复数坐标的直角坐标形式转换成极坐标形式,本例利用该函数将两个直角坐标系的数组转换为极坐标形式,其调用路径是“函数——编程——数值——复数——实部虚部至极坐标转换”。 “自然对数”函数是计算输入数值的自然对数值,其调用路径是

labview测试实验指导书

北京理工大学珠海学院 工程测试技术 实验指导书 指导教师:周靖 班级: 姓名: 工业自动化学院 2017年4月

前言 测试技术是具有实验性质的测量技术,与计算机技术、自动控制技术、通信技术构成完整的信息技术学科,主要研究各种物理量的测量原理和测量信号的分析处理方法,是进行各种科学实验研究和生产过程参数检测等必不可少的手段。随着现代信息技术的不断发展,机械工程测试作为一门与之密切相关的课程,其重要性是不言而喻的,这是一门以算法为核心的理论性、工程实用性均较强的课程。但由于目前关于信号处理的有关书籍大都是只讲解算法和推导过程,而与工程实际联系很少,这使得书中所涉及的有关概念比较抽象,再加上教学方法和手段的单一以及实验条件的限制,长期以来使该课程一直处于“难教难学”的一种境地,学生很难把书中所讲的数学函数与实际的波形联系起来,给学习带来了很大的困难,大大降低了学生的学习积极性,影响了本课程的教学效果。因此, 如何有效的理论联系实际,提高教学质量和教学效果一直以来是该课程教学中思考和探索的问题。而计算机仿真技术的发展对机械工程测试的教学带来了新的思路,尤其是将虚拟仪器引入教学过程具有重要的意义,为该课程实验教学的改革提供了强有力的支持。 一.虚拟仪器与LabVIEW软件简介 虚拟仪器是1986年美国国家仪器公司(National Instrument,即NI公司)首先提出的,是指通过程序编制将通用计算机与数量有限的功能板卡相结合所构成的功能灵活、模块化、操作方便且可视化的软件系统。用户可以根据自己的习惯利用虚拟仪器系统来完成相应的控制、数据分析、存储和显示等操作。LabVIEW ( Laboratory Virtual Instrument Engineering Work Bench)是NI公司开发的、采用图形化程序语言——G语言, 通过各功能图标间的逻辑连接实现程序功能的图形化程序设计软件,是虚拟仪器的主要支持技术之一。该软件提供了灵活强大的函数库,在数据处理控制方面有动态连接库、共享库、数字信号处理和产生、频谱分析、滤波、平滑窗口、概率统计等VI。LabVIEW也提供了大量的通过ActiveX等与外部代码或软件进行连接的功能。例如可以与C/C++、VC、VB、Matlab 等软件相连。

实验一 LabVIEW中的信号分析与处理

实验一LabVIEW中的信号分析与处理 一、实验目的: 1、熟悉各类频谱分析VI的操作方法; 2、熟悉数字滤波器的使用方法; 3、熟悉谐波失真分析VI的使用方法。 二、实验原理: 1、信号的频谱分析是指用独立的频率分量来表示信号;将时域信号变换到频域,以显示在时域无法观察到的信号特征,主要是信号的频率成分以及各频率成分幅值和相位的大小,LabVIEW中的信号都是数字信号,对其进行频谱分析主要使用快速傅立叶变换(FFT)算法:·“FFT Spectrum(Mag-Phase).vi”主要用于分析波形信号的幅频特性和相频特性,其输出为单边幅频图和相频图。 ·“FFT.vi”以一维数组的形式返回时间信号的快速傅里叶运算结果,其输出为双边频谱图,在使用时注意设置FFT Size为2的幂。 ·“Amplitude and Phase Spectrum .vi”也输出单边频谱,主要用于对一维数组进行频谱分析,需要注意的是,需要设置其dt(输入信号的采样周期)端口的数据。 2、数字滤波器的作用是对信号进行滤波,只允许特定频率成份的信号通过。滤波器的主要类型分为低通、高通、带通、带阻等,在使用LabVIEW中的数字滤波器时,需要正确设置滤波器的截止频率(注意区分模拟频率和数字频率)和阶数。 3、“Harmonic Distortion Analyzer .vi”用于分析输入的波形数据的谐波失真度(THD),该vi还可分析出被测波形的基波频率和各阶次谐波的电平值。 三、实验内容: (1) 时域信号的频谱分析 设计一个VI,使用4个Sine Waveform.vi(正弦波形)生成频率分别为10Hz、30Hz、50Hz、100Hz,幅值分别为1V、2V、3V、4V的4个正弦信号(采样频率都设置为1kHz,采样点数都设置为1000点),将这4个正弦信号相加并观察其时域波形,然后使用FFT Spectrum(Mag-Phase).vi对这4个正弦信号相加得出的信号进行FFT频谱分析,观察其幅频和相频图,并截图保存。

LabVIEW虚拟仪器实验报告

1.实验目的: 熟悉LabVIEW软件的基本编程环境。 2.实验内容: 创建一个VI程序,并将此程序保存为子VI。此VI要实现的功能是:当输入发动转速时,经过一定运算过程,输出发动机温度和汽车速度值。 3.实验步骤 (1)启动LabVIEW,创建一个VI。 (2)在前面板中放置一个温度计控件,并修改控件标签名为发动机温度和设置最大值为100。该控件从“控件—经典—经典数值”子选项板中获得。 (3)按同样的方法在前面板中放置一个仪表控件,并修改仪表控件的标签名为汽车速度,标尺刻度范围为0~150。 (4)按同样的方法在前面板中放置一个数值输入控件,并修改控件标签名为发动机转速。 (5)从“窗口”下拉菜单中选择“显示程序窗口”切换到程序框图窗口。 (6)在程序窗口中创建乘法函数,该函数中函数选项板中的“函数—编程—数值”子选项板中选择,并和发动机转速输入控件连线,为乘法函数创建一个常量,修改为图中所示值。 (7)按同样的方法创建加法函数、平方根函数和除法函数,并按图中所示修改常量值和连好线。 (8)切换至前面板,在发动机转速控件中输入数值,点击运行按钮,运行VI程序。 (9)修改图标为T/V以表示该子VI输出量为发动机温度和汽车速度,并保存为vi.vi。 前面板: 程序框图:

1.实验目的: 熟悉子VI的调用。 2.实验内容: 创建一个VI程序,并在编写程序过程中调用实验一中创建的子VI。此VI要实现的功能是:通过旋钮控件来控件输入的发动机转速值,中间调用实验一中创建的子VI作为计算过程,从子VI输出的值分别输出至不同的数值显示发动机的温度以及当前汽车速度,同时判断当汽车速度超过100时,系统将产生蜂鸣声,报警提示。 3.实验步骤: (1)启动LabVIEW,创建一个VI。 (2)在前面板中创建一个旋钮控件,修改标签名为发动机转速,设置数值范围为0~5000,从旋钮控件中调出一个数字显示控件来同步显示旋钮控件当前值。 (3)在前面板创建两个数值显示控件,并修改标签名为汽车速度和发动机温度。 (4)切换至程序框图窗口。 (5)在程序框图中创建一个大于或等于函数。 (6)在程序框图中调用实验一的子函数,从函数选板中的“函数—选择VI”选在实验一创建的子vi.vi。 (7)在程序框图中创建一个蜂鸣器函数,并按图示连线情况连线。 (8)切换至前面板,在发动机转速中输入数值,点击运行按钮运行。 前面板: 程序框图:

虚拟仪器技术Labview 课程实验报告

Labview 课程实验报告 学院:电气工程 专业:建筑电气与智能化 姓名:杨震 班级:建电122 学号:1212062056 指导老师:茅靖峰

第一部分基础题 1、用LabVIEW的基本运算函数编写以下算式的程序代码: (前面板) (程序框图) 该程序要求用labview基本运算函数编写算式的程序代码,在前面板上我添加了两个数值显示控件用以显示两个算式的运算结果;在程序框图中运用软件自带的加、减、乘、除运算进行组合从而表示算式,再结果的后面加上一个双精度浮点数函数将程序运算结果强制转换后输入到显示控件中得到结果。

2、利用摄氏温度与华氏温度的关系°C=5(°F-32)/9编写一个程序求华氏度(°F)为32°,64°,4°,6.98°,6°,104°,212°时的摄氏温度。 (前面板) (程序框图) 该程序要求转换华氏度对应的摄氏度,本质上是对数据进行运算。在前面板上创建两个数组一个是数值输入数组用以输入华氏度的值,一个是数值显示数组用以显示对应的摄氏度的值。在程序框图中加入For循环将公式节点放入For循环中在公式节点上添加一个输入和一个输出分别连接两个数值控件,最后在公式节点中编辑二者运算关系完成设计。

3、用数组创建函数创建一个二维数组显示件,成员为: 1 2 3 4 5 6 2 3 4 5 6 1 3 4 5 6 1 2 4 5 6 1 2 3 编程将上述创建的数组转置为: 1 2 3 4 2 3 4 5 3 4 5 6 4 5 6 1 5 6 1 2 6 1 2 3 (前面板) (程序框图) 先在前面板中创建二维数组用以存放生成的数组元素数组为显示型控件,通过观察我们发现题目中的数组第一行为1-6顺序的六个元素从一开始后逐一加一,第二行则是5个数组元素平移,第三行为4个以此类推第四行3个所以我们在程序框图中用For循环和加一来生成第一行数组For循环的循环次数为六次,第二行数组则在第一行数组的基础上运用一维数组平移函数平移5位的到,以此类推生成四行数组,再使用数组生成函数生成二维数组输出到显示数组中显示出来,至于数组的转置直接运用数组转置函数得到,在该函数的输出端口右键创建显示控件。在前面板中调整创建的显示控件以确保显示所有转置的数组,实验完成。

在LabVIEW中利用DLL实现数据采集

在LabVIEW中利用DLL实现数据采集Realization of Data Acquis ition with DLL in LabVIEW 班级学号:0704114-23 姓名:杨鹏

摘要: 随着计算机技术及虚拟仪器技术的迅速发展, 虚拟仪器正逐渐成为测试领域的发展方向。本文介绍了在LabVIEW 环境下驱动普通数据采集卡的重要方法- - 动态链接库机制(DLL), 并结合具体实例介绍了一种利用LabVIEW 提供的Call LibraryFunction (CLF)节点实现对动态链接库(DLL)调用的关键技术及步骤, 实现LabV IEW 与普通数据采集卡的结合, 丰富LabVIEW 对硬件的控制能力。并将数据库技术应用于虚拟测试系统中, 建立了Access 数据库, 实现数据的存储和自动管理,从而拓展了虚拟测试系统的功能。 关键词:动态链接库(DLL); 数据采集; 1 绪论

目前, 电子测试仪器的发展方向正在从简单功能组合向以个人计算机(PC)为核心的通用虚拟测试平台过渡, 从硬件模块向软件包形式过渡。建立在PC 机和数据采集设备上的虚拟仪器系统, 由于其特有的灵活和强大的功能, 也越来越广泛的应用于实验室研究和工业控制中的测试及测量领域。从简单的仪器控制, 数据采集到尖端的测试和工业自动化, 从大学实验室到工厂, 从探索研究到技术集成, 人们都可以发现LabVIEW 应用的成果和开发的产品。LabVIEW采用基于流程图的图形化编程方式, 也被成为G 语言(graphical language)。 G 语言编程和虚拟仪器技术已经成为工业界和学术界关注的热点技术之一。数据采集是LabVIEW 的核心技术之一, 也是LabVIEW 与其他编程语言相比的优势所在。使用LabVIEW 的DAQ 技术,可以编写出强大的DAQ 应用软件。NI 公司生产的系列数据采集卡借助LabVIEW 内部的DAQ 库的驱动,可以在LabVIEW环境下运行。但由于NI 公司的采集卡价格比较昂贵,但是选择第三方的数据采集卡, 就需要解决LabVIEW 与非NI 数据采集卡的兼容和驱动的问题。 2 LabVIEW 调用外部程序代码的途径之一———动态链接库机制 LabVIEW 具有强大的外部接口能力, 可以实现LabVIEW与外部的应用软件, C 语言, Windows API 以及HiQ 等编程语言之间的通信, 在LabVIEW 中可用的外部接口包括:DDE,CIN,DLL,MATLAB Script 以及HiQ Script 等。合理地使用这些接口,充分利用其他软件的功能, 弥补LabVIEW 自身的不足, 可以编 写出功能更加强大的LabVIEW应用软件。 动态链接库(Dynamic Link Libraries,简称DLL)是一个可执行模块, 但不接受任何消息, 所以并不可以直接运行, 只是提供一群函数供Windows 应用程序或其他的动态链接函数库调用。动态链接库只有在别的模块中调用了它的某个函数以后才发生作用。由于动态链接库在应用程序运行期间被连接起来的,故称为动态链接库。动态链接库(DLL)一直是基于Windows 程序设计的一个非常重要的组成部分。DLL 是一种基于Windows的程序模块, 它可以在运行时刻被装入和连接。为了实现LabVIEW对普通数据采集卡的支持, 用户可以使用LabVIEW 提供的调用库函数节点CLF (Call Library Function)和代码接口节点CIN(Code Interface)将编程灵活的C 语言和直观方便的LabVIEW程序结合起来。但是比较调用库函数节点CLF 和代码接口节点CIN 这两种方法, 使用CLF 节点访问动态链接库DLL 更具优势:首先, DLL 是外部模块, 自行开发一个DLL 比使用CIN 节点易于实现且便于维护。其次, CIN

LabVIEW实验指导书四

实验四数据的图形显示 一.实验目的 熟悉图形显示控件的使用,进一步掌握LabVIEW环境和编程思想。 二.实验内容 设计一个温度显示与越界报警VI程序。具体条件和要求为: (1)每隔1秒测量温度,并在一个波形图表上连续显示温度。当温度高于或低于预先设定的限值,VI将打开前面板上的一个LED。 (2)波形图表显示温度和上线限值,上下限值可以从前面板设置。 三.实验步骤 1.依据题意,在前面板上创建如图1所示的输入和显示控件,并将控件标签改为适当的名称。 图1 前面板布局 2. 在前面板上增加设计人信息,如图2所示; 图2 设计人信息 3. 在程序框图中拖入1个While循环结构(While Loop),并按题意拖入相应节点函数,按 图3所示,进行连线;

图3 程序连线框图 4. 将文件保存,在前面板上点击“连续运行”按钮,进行程序调试。 5. 连续运行程序,改变参数,观测结果,并拷贝前面板和程序框图到Word文件中,作为本 次实验报告的素材。 6. 导出任一时刻的波形图表图像(LabVIEW8.2以上版本),并粘贴到上述Word文件中。 四、修改程序 上述VI程序中,“温度下限”和“温度上限”之间没有约束条件,若任意调节这两个输入控件,则会出现“温度下限”值大于“温度上限”值的情况(逻辑错误)。因此,修改程序,增加条件判断逻辑:当“温度下限”超过“温度上限”值时,程序以低于“温度上限”1摄氏度的值,作为实际的温度下限。 图4逻辑错误时的实际监测方式

将以上实现过程的程序框图,拷贝到Word文件中,并加以阐述。 五、心得体会(包括调试排错过程)。

虚拟仪器labview介绍.doc

虚拟仪器工程平台LabVIEW介绍 文章发表于:2008-05-19 21:48 虚拟仪器是一种全新的仪器概念,在自动化检测领域的应用正方兴未艾,而NI(National Instruments)公司的实验室虚拟仪器工程工作平台LabVIEW(Laboratory Virtual Instrument Engineering Workbench)是科学家和工程师们进行虚拟仪器应用开发的首选工作平台。为了介绍虚拟仪器和LabVIEW的一些相关背景知识,本文将自己本科毕业设计论文中的一部分作了少许改动呈现于此(呵呵,其实是偷懒),希望能给未接触过虚拟仪器和LabVIEW的人一些感性认识。 一、虚拟仪器 1、传统电子仪器的弱点 传统电子仪器主要由三大模块组成:即对被测信号的采集与控制、分析与处理、测量结果的表达与存储。传统电子仪器的这些功能块都是以硬件或者固化的软件的形式存在的,因此具有以下弱点:(1)灵活性和可扩展性差:传统电子仪器是一套自封闭系统,具有固定的用户界面、组成模块和数据处理功能。例如仪器面板由固定的输入、输出信号接插件、旋钮、按钮、显示仪表、显示面板等组成,仪器内部由传感器、信号处理器、A/D和D/A转换器、微处理器、存储器和内部总线等专门化的电路组成。然而,用户有时只需要用到仪器中的一小部分功能,或者作其他功能使用时却达不到所需指标,而用户无法改动厂家固定好的仪器模块,灵活性和可扩展性差。 (2)成本高,技术更新慢:传统电子仪器价格昂贵,动辄几十万上百万人民币。开发周期长,技术更新慢,而且存在元器件老化等问题,维护费用高,使用寿命短。 (3)数据显示、分析和存储功能不够强大:传统电子仪器的图形显示界面比较小,依靠人工读取数据,从中获得的信息量小。由于硬件设备的限制,往往无法实现更灵活、更特殊的数据分析功能,更难以进行数据编辑、存储、打印等功能。 2、虚拟仪器的概念 如上所述,传统电子仪器存在的诸多弱点使传统仪器已渐渐不能满足工业自动化和测量领域的需要。随着计算机技术日新月异的飞速发展,计算机强大的数据处理能力使得它的应用范围越来越广。1986年,美国NI公司(National Instruments)提出虚拟仪器的概念,以“软件即仪器”为口号,彻底打破了传统电子仪器只能由生产厂家定义,用户无法改变的局面,从而引起仪器和自动化工业的一场革命。 简单地说,虚拟仪器技术就是利用计算机技术实现的对测控系统的抽象。平常使用的示波器、数字万用表、信号发生器、数据记录仪,以及传感器等传统仪器,都可使用通用计算机和专用的控制器和显示器来模拟,实现向虚拟仪器的转变。例如图1就是一个虚拟仪器正在运行时的截图,从外观看与实际仪器无二:

Labview实验

Labview虚拟仪器实验指 导书 宋爱娟 2009.2

目录 实验一 Labview的认识性实验(2学时) (3) 实验二 Labview的基本操作(2学时) (4) 实验三数据操作实验(2学时) (6) 实验四 labview结构在编程中的应用(4学时) (10) 实验五 labview中字符串、数组、簇的实验(2学时) (16) 实验六图表和图形实验(4学时) (23) 实验七专业测试系统的搭建实验(2学时) (28) 实验八创建子VI(2学时) (32) 实验九人机界面交互设计实验(2学时) (35) 实验十波形编辑及频谱分析实验(3学时) (39) 实验十一救援用LED灯实验(4学时选作) (41)

实验一Labview的认识性实验 一、目的 1、熟悉Labview的基本组件 2、熟悉Labview的前面板、程序框图、快捷和下拉菜单 3、掌握Labview的选项板及在线帮助 二、环境 1、WINDOWS2000环境(将显示属性中的分辨率设置为1024*768) 2、Labview8.6软件 三、内容与步骤: [练习1] 启动Labview,查找Labview示例 步骤: 1.打开文件VibrationAnalysis.vi(c:/ProgramFiles/National Instruments/LabVIEW 8.6/examples/apps/demos.llb) 2.单击按钮Run运行该程序 3.改变采样速率 4.改变采样速度,验证希望速度与实际速度是否一致 [练习2] 熟悉前面板与程序框图的切换及观察程序流的执行过程 1.在练习1的基础上,利用快捷方式将前面板切换到程序框图。 2.单击高亮度显示按钮观察代码的数据流向。 [练习3] 熟练打开运行一个VI 1.练习查找所定VI,另用帮助查找含有FILTER的示例,找到其中的Express Filter.VI程序双击打开 2.运行该程序 3.改变仿真频率、仿真幅度和仿真噪声幅度观察指示器的值与图中值是否一致。 4.观察数据流执行过程 [练习4]练习查找运行 1.将上面程序在框图窗口双击程序框图中的Simulate Signal,将正弦信号改为其他信号之后运行程序。 2.熟练查找其他程序并运行 [练习5] 1.在Labview启动界面中选择新建选项 2.打开空VI或VI模板 3.任意打开VI模板并运行。

基于LabVIEW的信号与系统实验平台的设计

2012年第05期 吉林省教育学院学报 No.05,2012 第28卷JOURNAL OF EDUCATIONAL INSTITUTE OF JILIN PROVINCE Vol .28(总305期) Total No .305 收稿日期:2012—03—01 作者简介:满江红(1971—),男,吉林长春人。中国网通集团有限公司长春分公司网络建设部,技术主管,研究方向:综合通信技术。 基于LabVIEW 的信号与系统实验平台的设计 满江红 (中国网通集团有限公司长春分公司,吉林长春130000) 摘要:近年来,随着电子、计算机和网络技术的发展及其在测量仪器上的应用,产生了一种新的测试理论和方法———虚拟仪器(VirtualInstrument ,VI )。所谓虚拟仪器,就是指用户通过计算机平台,根据自己的需求设计仪器的测试功能。虚拟仪器的出现打破了人们对仪器的传统观念,在测试系统和仪器设计中用户可以尽量用软件代替硬件,而无需购买大量的、昂贵的实验仪器设备。 关键词:LabVIEW ;信号与系统实验平台;设计中图分类号:TN911.6 文献标识码:A 文章编号:1671—1580(2012)05—0153—02 基于Lab VIEW 构建虚拟实验室正逐渐被越来越多的高校所采用, 本课题能避开硬件系统的不足,巧妙地运用软件来仿真硬件才能实现的实验结果, 大大降低了实验设备要求,节约了人力和财力,而且有很多的库函数可以在实验时直接调用,避免了用硬件做实验的局限性,可以更方便地做信号系统实验。 一、 LabVIEW 简介LabVIEW 是一种用图标代替文本行创建应用程序的图形化编程语言,采用数据流编程方式,程序框图中节点之间的数据流向决定了程序的执行顺序。LabVIEW 提供很多外观与传统仪器(如示波器、信号发生器等)类似的控件,可以方便地创建用户界面。通过使用图标和连线编程对前面板上的对象进行控制,这就是图形化源代码,又称“G 代码”或 “程序框图代码”。LabVIEW 的核心是VI 。VI 有一个人机对话的用户界面— ——前面板(FrontPanel )和相当于源代码功能的框图程序(Diagram ),前面板接受来自框图程序的指令。LabVIEW 还包含了大量的工具与函数用于数据采集、分析、显示与存储等 二、整体设计该信号与系统实验台的整体设计方案是:根据LabVIEW 自上而下的设计思想,构建出整个实验平台的系统结构框图,先设计系统的主界面,再设计各 个实验子界面和实验模块,最后通过调用子VI 程序 来实现链接。主界面包括运行按钮, 停止按钮和三个实验模块选项栏,实验模块包括初级实验、中级实 验和高级实验。 (一 ) 平台系统结构图平台系统结构图如下所示: 图1平台系统结构图 (二)人机界面 点击运行按钮就出现操作界面,界面上包括初级实验、中级实验、高级实验等三部分,当点击相应实验就会出现各个实验题目,然后点击进入就可以进行相应实验了,实验完成点击停止按钮就可以结束本次实验。人机界面如下图所示: 3 51

相关主题
文本预览
相关文档 最新文档