您好,欢迎访问三七文档
第六章数据波形显示LabVIEW具有强大的数据波形显示功能。通常利用其图形和图表等形式来显示测试数据和分析数据结果,LabVIEW中的图形显示控件分为图形和图表两类。含有图形的VI通常先将数据采集到数组中,再将数据绘制到图形中,该过程类似于电子表格,即先存储数据再生成数据的曲线。数据绘制到图形上时,图形不显示之前绘制的数据而只显示当前的新数据。图形一般用于连续采集数据的快速过程。与图形相反,图表将新的数据点追加到已显示的数据点上以形成历史记录。在图表中,可结合先采集的数据查看当前读数和测量值。6.1波形数据6.1.1波形数据的创建与其他基于文本的编程语言不同,在LabVIEW中有一类被称为波形数据的数据类型,这种数据类型更类似于“簇”的结构,由一系列不同数据类型的数据构成,但是波形数据又有其自身的独特特点,例如它可以由一些波形发生函数产生,可以作为数据采集后的数据进行显示和存储。LabVIEW中的波形数据分两类:模拟波形数据和数字波形数据。在前面板中,波形数据控件位于“控件”选板的“新式”→I/O→“波形”子选板中,如图6-1所示。图6-1“波形”子选板波形数据控件由以下几个部分组成:◆起始时间t0。起始时间t0是第一个数据点的时间。起始时间可以用来同步多个波形,也可以用来确定两个波形的相对时间,为时间标识类型。◆时间间隔dt。时间间隔dt是一个波形中两个数据点间的时间间隔,为双精度浮点类型。◆波形数值Y。波形数值Y是一个一维数组。其默认数据类型为双精度浮点类型。◆波形属性。波形属性是波形数据的隐藏部分,为变量类型。在波形数据上单击鼠标右键,在弹出的快捷菜单中选择“显示项”→“属性”命令即可显示出波形属性。如图6-2所示。波形属性包含了波形数据的一些信息,如波形名称以及数据采集设备的名称等。图6-2完整显示波形数据另外,LabVIEW中的数字波形数据用来表示二进制数据,如010001100111。数字波形数据是由起始时间t0、时间间隔dt、波形数值Y和波形属性四个部分组成的。6.1.2波形数据操作函数LabVIEW提供了大量的波形数据操作函数,利用这些函数可以访问和操作模拟波形数据和数字波形数据。波形数据操作函数位于“函数选板”的“编程”→“波形”子选板中,如图6-3所示。图6-3“函数选板”中的“波形”子选板“波形”子选板中的波形数据操作函数课分为4个部分:基本波形数据操作函数、模拟波形数据操作函数、数字波形数据操作函数、波形文件I/O。同时在“波形”选板的下一级选板中以及“函数选板”的其他选板中还有大量实现波形测量和波形发生的子VI,有关这些操作函数以及子VI的使用方法,可以参考LabVIEW的帮助文档。6.2波形显示波形显示包括波形图和波形图表两种方式,它们都位于前面板“控件”选板的“新式”→“图形”子选板上。波形图和波形图表都是用来显示波形的,两者的区别在于:波形图是一块一块地描绘数据,而波形图表是一个点一个点地描绘数据。下面分别介绍这两种波形显示方式。6.2.1波形图波形图是用来一次性的显示接收到的数据的波形,它在每次显示之前自动清空上次显示的数据,而不是将新数据添加到原波形的末端,其显示的波形是稳定的波形,在波形窗口中只显示当前接受到的数据。将一个波形图控件置于前面板窗口中,在波形图上单击鼠标右键,在弹出的快捷菜单中选择“显示项”命令,如图6-4所示。可根据需要选择波形图的显示项,图6-4所示为带有所有显示项的波形图。图6-4波形图右键快捷菜单6-5波形图的完整显示项下面介绍波形图上各个显示项的功能和使用方法。1.图例在波形图的图例上可以定义图中曲线的各种参数。在图例上单击鼠标右键,弹出如图6-6所示的快捷菜单。可以在该快捷菜单中设置曲线的显示方式、颜色、线条样式和宽度、平滑等。在“常用曲线”中,可以选择选线的显示方式为平滑曲线、数据点方格、同时显示方格和曲线、填充曲线和做标注包围区域、直线图和直方图等,如图6-7所示。图6-6图例右键快捷菜单图6-7常用曲线在图例的右键快捷菜单中,“平滑”可以使曲线变得更光滑:“直方图”可以用来设置显示直方图的方式:“填充基线”用来设置曲线的填充参考基线,包括零、负无穷大和无穷大几种:“插值”提供了绘制曲线的6种插值方式:“点样式”用来设置曲线数据点的样式,有圆点、方格和星号等样式可供选择。在图例上用鼠标拖动其边缘,可以改变图例的大小。双击图例的曲线名称,还可以改变图例的曲线名称。2.标尺图例标尺图例用于设置X坐标和Y坐标的相关选项,其各个选项名称如图6-8所示。在“坐标名称”中可以更改两个坐标轴的名称:打开自动缩放功能,波形图会根据输入数据的大小自动调整刻度范围,使曲线完整的显示在波形图上:“一次性锁定自动缩放”可以对当前曲线的刻度进行一次性的缩放,单击“锁定自动缩放”按钮后,“一次性锁定自动缩放”也处于按下状态。图6-8标尺图例3.游标图例游标图例如图6-9所示。通过游标图例,可以在波形图上添加游标,游标用于读取波形上某一点的确切坐标值,在游标图例上单击鼠标右键,在弹出的快捷菜单中选择“创建游标”命令可以添加多个游标,当选中某个游标后,还可以通过单击游标控制器上的4个小菱形来移动游标。图6-9游标图例4.图形工具选板通过图形工具选板可以实现游标移动、缩放和平移波形曲线等操作。图形工具选板上有3个按钮,按下第一个按钮,此时可以移动波形图上的游标。第二个放大镜标志的按钮,用于对波形进行缩放,单击它将弹出6个选项,分别表示6中缩放格式,如图6-10所示。按下手形标志的第三个按钮时,可以在图形显示区随意的拖动图形。图6-10缩放格式5.X滚动条X滚动条用于滚动显示图形,拖动滚动条可以查看当前未显示的数据曲线。波形图除了具备上述各个功能外,还可以实现同时显示多条数据曲线,对曲线进行注释等功能,在波形图的属性对话框中可以完成对波形图的一些常用设置。在使用波形图时要注意输入的数据类型。波形图的数据输入类型有一维数组、二维数组、簇、数组簇、波形数据等。如图6-11所示,使用波形图输出了一个正弦函数和一个余弦函数。图6-11波形图的简单使用下面将通过一些例子来说明波形图的用法。如图6-12所示,使用波形图显示40个随机数的情况。图6-12产生随机数的程序框图和前面板6.2.2波形图表控件为了模拟真实仪器的操作面板以及实现测量数据的图形化实时动态显示,LabVIEW提供了强大的交互界面设计功能。LabVIEW中数据的图形化显示使得其开发的程序更加形象和直观并且增强了用户界面的表现力。在LabVIEW中,提供了丰富的图形表显示空间,这些控件专门用来实现测量数据图形化实时显示。在LabVIEW“控件选板”的“新式”→“图形”、“经典”→“经典图形”以及“Express”→”图形显示控件”等子选板中均包含了各种各样的图形图表控件,如图6-13所示。在这些图形显示控件中,波形图和波形图表是LabVIEW图形显示的两种最基本方式。这两种控件名称虽然相近,但在LabVIEW中却有很大差别。波形图表将数据在图形显示区中实时和逐点的显示出来,可以反映被测物理量的变化趋势。类似于传统的模拟示波器、波形记录仪的显示方式。波形图则用于对已经采集的数据进行事后显示处理,它可根据实际要求将数据组织成所需的图形一次显示出来。图6-13“控件选板”中的图形图表控件波形图表模拟的是现实生活中的波形记录仪、心电图等的工作方式。波形图表内置了一个现实缓冲器,用来保存一部分的历史数据,并接受新的数据。这个缓冲区的数据存储按照先进先出的规则管理,它决定了该控件的最大显示数据长度。在默认的情况下,这个缓冲大小为1KB,即最大的数据显示长度为1024个,缓冲区容不下的旧数据将被舍弃。波形图表适合实时测量中的参数监控,而波形图适合在事后数据显示和分析。当绘制单曲线时,波形图表可以接受的数据格式有两种:标量和数组。标量数据和数组被连续在旧数据后面显示。当输入标量时,曲线每次向前推进一个点。当输入数组数据时,曲线每次推进的点数等于数组长度。如图6-14所示,使用波形图表,生成两组随机数。由于时间延迟函数是在While循环中,而For循环式一次产生10个随机数,相当于缩短了延迟时间,所以产生的波形图是不一样的,如图6-15所示图6-14使用波形图表绘制单曲线的程序框图图6-15单曲线的前面板显示当绘制多曲线时,可以接受的数据格式也有两种:第一种是将每条曲线的一个新数据点打包成簇,即把每种测量的一个点打包在一起,然后输入到波形图表中,这时波形图表为所有曲线同时推进一个点;这是最简单也是最常用的方法,如果6-16所示,第二种方法是将每条曲线的一个数据点打包成簇,若干个这样的簇作为元素构成数组,再把数组传送到波形图表中,如图6-17所示。两种方法的前面板显示如图6-18所示。图6-16使用第一种方法创建多区县程序框图图6-17使用第二种方法创建程序框图图6-18创建多曲线的前面板显示6.3XY图和ExpressXY图波形图和波形图表只能用于显示一维数组中的数据或是一系列单点数据,对于需要显示横、纵坐标对的数据,它们就无能为力了。前面讲述的波形图的Y值对应实际测量数据,X值对应测量点的序号,适合显示等间隔数据序列的变化。比如按照一定采样时间采集数据的变化,但是它不适合描述Y值随X值变化的曲线,也不适合绘制两个相互依赖的变量(如Y/X)。对于这种曲线,LabVIEW专门设计了XY图和ExpressXY图。与波形图相同,XY波形图也是一次性完成波形显示的刷新,不同的是XY图输入数据类型是由两组数据打包成簇,簇的每一对数据都对应一个现实数据点的X,Y坐标。当X,Y图绘制单曲线时,有两种方法,如图6-19所示。图6-19使用XY图绘制单曲线在图6-19的左图中,是把两组数据数组打包后送给XY图,此时,两个数据数组里具有相同序号的两个数组组成一个点,而且必定是包里的第一个数组对应X轴,第二个数组对应Y轴。使用这种方法来组织数据要确保数据长度相同,如果两个数据的长度不一样,XY图将以长度较短的那组为参考,而长度较长的那组多出来的数据将被抛弃。在图6-19的右图中,先把每一对坐标点(X,Y)打包,然后用这些点坐标形成的包组成一个数组,再送到XY图中显示,这种方法可以确保两组数据的长度一致。与绘制单条曲线类似,绘制多条曲线同样也有两种方法:一种是先分别利用For循环生成两个一维数组,然后再用这两个一维数组组成一个二维数组,并将它送到XY图中显示;另外一种是先让两组数据的输入、输出在For循环的边框通道上次年改成一维数组然后打包,再用一个二维数组送到XY图中显示。XY图接收3种数据类型以显示多条曲线。XY图接收曲线数组时,其中每条曲线是包含X数组和Y数组的一个簇,关于接收该数据类型的图形范例如图6-20中的(XandYarrays)MultiPlot图形所示;接收曲线簇数组时,其中每条曲线为一个点数组,每一个点是包含x值和y值的一个簇,关于接收该数据类型的图形范例如图6-20中的XandYarrays)MultiPlot图形所示;XY图也接收曲线簇数组,其中每条曲线是一个复数数组,X轴和Y轴分别显示复数的实部和虚部。图6-20在XY中显示多条曲线在使用XY图绘制曲线时,要注意数据类型的转换。例如,在图6-21所示的程序中,需要先将输入的数据转换成弧度值才可以进行三角函数计算。在此图中,需要指定A和B的值来作为横轴和纵轴的半径长。当A和B相等时,绘制的曲线为圆;当他们不相等时,绘制的曲线为椭圆。图6-21使用XY图绘制曲线6.3.2ExpressXY图ExpressXY图采用了LabVIEW的Express技术。在将ExpressXY图形显示控件放置到前面板上的同时在程序框图中会自动添加一个VI,它的X轴和Y轴接收的数据都为动态数据类型。因此,在绘制曲线时只要将X和Y组数据与之相连。它将自动添加一个转换函数来将输入数据转换为动态数据类型,无须像普通的XY图那样先将X轴和Y轴坐标数据进行捆绑才能将其输入到XY图进行曲线绘制。这使得通过很少的步骤就可以实现功能
本文标题:第六章数据波形显示
链接地址:https://www.777doc.com/doc-2088247 .html