基于labview的数组、簇和波形

上传人:宝路 文档编号:47875269 上传时间:2018-07-05 格式:PPT 页数:45 大小:686.67KB
返回 下载 相关 举报
基于labview的数组、簇和波形_第1页
第1页 / 共45页
基于labview的数组、簇和波形_第2页
第2页 / 共45页
基于labview的数组、簇和波形_第3页
第3页 / 共45页
基于labview的数组、簇和波形_第4页
第4页 / 共45页
基于labview的数组、簇和波形_第5页
第5页 / 共45页
点击查看更多>>
资源描述

《基于labview的数组、簇和波形》由会员分享,可在线阅读,更多相关《基于labview的数组、簇和波形(45页珍藏版)》请在金锄头文库上搜索。

1、数组、簇和波形LabVIEW的数据类型数据类型选择和转换: 数值型控件对象的数据类型或格式和精度指定:右击对象 ,在弹出菜单上选择“Represeutation”或”Format Precision” 不同数据类型连接时,有的可以自动转换,有的不行 可使用转换函数强制转换 转换函数在函数面板数值运算Numeric中conversion子模板中数 组 数组是同一类型数据的集合。 LabVIEW中的数组元素可以为任何数值类 型、布尔型、字符串和簇。数组、图表、图形不能作为数组元素数组 一个数组可以是一维的,在内存允许的情 况下,也可以是多维的,每维最多可以包 含231_1个元素。 可以通过数组指针

2、(索引index)访问数组 元素,指针在0到N1的范围内变化,而 就是数组元素的个数。 例:10元素的一维数组思考? 波形如何存储? 波形可以存储在数组中,波形上一点构成 数组中的一个元素。数组的创建 在前面板创建 在后面板创建 通过函数或VIS动态生成在前面板创建数组: 第一步创建数组壳:从控制模板的Array&Cluster子模板中选择Array控制器,放在前面 板上,即建立了一个空的数组壳(Array Shell) 第二步建立数据对象:把一个数据对象拖入数组壳,或者从控制模板中添加一个数据对象 到数组壳中,这样就可以创建一个数组离索引显示最近的元素对应该 索引显示里索引值关联的元素 索引

3、 显示增加数组维数 在数组壳左边的指针标记上弹出菜单,选 择Add Dimension选项,增加数组的维数 列指针行指针当前指针指示的元素4行2列元素三维数组、n维数组页指针行指针列指针后面板创建数组 添加数组容器 添加数组元素前面板创建的是数组变量(控制量或显示量) 后面板创建的是数组常量利用循环创建数组 在For循环和While循环的边框上可以自动地累积数据,形 成数组,这种特性被称为自动索引。 自动索引为打开状态时,每一次循环产生一个新的数组元 素,并存储在循环的边框上。循环结束以后,数组数据将 传送到循环外的数组指示器中。 若自动索引被设为无效,则只有最后一次循环产生的数传 到循环外

4、。 For循环数据出口的自动索引默认为有效。而While循环的 数据出口的自动索引默认为无效 在数据出口信道上右击,弹出菜单中可修改自动索引。 创建二维数组 使用两个For循环,把其中一个嵌套在另一个中可以生成 一个二维数组。外层的For循环产生行,而内层的For循环 产生列生成数 组列生成数 组行课后思考并练习如何用while循环创建一维或二维数组?1.用while循环创建数组时,要打开自动索引; 2.While循环是在运算之后检查条件端子; 3.要设置停止的条件。数组函数子模板1.数组大小 Array Size 2.数组检索 Index Array 3.替换数组元素Replace Arra

5、y Subset 4.插入数组元素 Insert Into Array 5.删除元素 Delete From Array 6.初始化数组Initialize Array 7.创建数组 Build Array 8.子数组 Array Subset 9.一维数组循环移位.Rotate 1D Array 10.一维数组倒置 Reverse 1D Array 11.一维数组搜索 Search 1D Array 12.一维数组分离 Split 1D Array 13.一维数组排序 Sort 1D Array 14.数组最大值和最小值 Array Max &Min 15.二维数组转置 Transpose

6、2D Array 16.一维数组插值 Interpolate 1D Array 17.一维数组阈值 Threshold 1D Array 18.一维数组接插 Interleave 1D Array 19一维数组拆分 Decimate 1D Array 20.改变数组维数 Reshape Array21.簇到数组 Cluster To Array 22.数组到簇 Array To Cluster数组函数举例 设计一个三基色的混色器设计一个VI,产生8个随机数组成的数组,先倒序排 列,按从小到大排列,并且求出最大值、最小值。 使用 For 循环的自动索引功能创建数组,并用一个图形(Graph)显示

7、该数组 更多例子请参考labview软 安装路径下: LabVIEW8.6exmaples generalArrays.llb课后练习: 练习1:产生一个数组,熟悉数组函数。设计一个VI用来 连接两个数组。把一个初始化后的数组以指定的偏移量 添加到另一个数组中,并指出最后数组的中间元素。 练习2:设计一个VI,产生一个二维的随机数数组(3行 10列),数组产生后,对每一行进行索引并将每一行绘 制在它自己的Graph上(前面板中应包括三个Graph指 示器)。 练习3:设计一个VI,产生一维数组,然后将相邻的一对 元素相乘(从元素0和元素1开始),最后输出结果数值 。例如,输入数组值为1, 23

8、, 10, 5, 7 , 11,输 出数组为23, 50 ,35, 77。簇数据 定义:簇是一种可以把相同或不同类型的数据组合在一起 的数据结构,类似于C语言中的结构体数据类型struct。 我们可以把簇形象地理解为一根多芯电缆,不同的信号线 捆绑在一起进行传输,电缆中的每根线就相当于簇中的每 个元素。 例如,学生情况表中有这样一些数据:姓名(字符型)、 性别(字符型)、年龄(数字型)、党员否(布尔型)等 ,形成一个簇 。 Bundle函数(Cluster 子模板中) 创建簇 方法1:在框图程序中使用Bundle 函数(Cluster子模板中)Bundle函数可以新建簇, 还可在已有簇中添加元

9、素 方法2:在前面板放置一个簇的空 框架(Control 模板的Cluster子模 板中的Cluster控件) ,在框架中再 增加簇的元素 。关于簇的几点说明 簇有固定的大小,不像数组那样可以动态 改变 只有类型相同的簇之间可以连接相同的顺序;相同顺序 上元素数据类型相同 簇中元素顺序是0N-1只与元素对象放入簇中的先后有关 ,与前面板的显示风格无关如何改变簇元素对象的顺序新的顺序当前的顺序簇数据操作 1、Unbundle分解簇函数 2、 Bundle合成簇函数 3、 Unbundle By Name按名称分解簇函数 4、 bundle By Name按名称合成簇函数 5、Build Clus

10、ter Array 建立簇数组函数 6、Index & Bundle Cluster Array按索引组合簇数组函数7、簇和数组相互转换Cluster To Array和 Array To Cluster簇函数bundle和unbundle应用举例 创建一个,检测输入簇中的Numeric1数 值控件值是否大于等于0,如果小于0,VI计 算所有控件的绝对值。如果大于等于0,VI 不用计算任何控件的绝对值。无论Numeric1 的值是什么,VI都将所有的值乘以0.5并将结 果显示在Output Cluster上。数组和簇的转换有时你会发现,将数组变为簇(或者相反)很 方便。尤其是因为LabVIEW

11、包括的关于数组的 操作功能多于簇。例如,前面板上有一个多按钮 的簇,你希望颠倒这些按钮值的序。好了, Reverse 1D Array功能正好可用,但是它仅可 用于数组。这没关系,你可以使用功能Cluster to Array将簇转换为数组,使用Reverse 1D Array切换开关的值,最后再利用Array to Claster 变换回簇。 使用时要指定输出簇的大小,输 出簇大小必须与连接到它输入数 据的元素数量匹配。否则不足或 多出的簇元素会被以默认值填充 或被截断。(簇的大小默认为9 )不能对包含以数组为 元素的簇应用此函数 ;簇中的元素数据类 型必须一样;数组的 索引对应簇顺序数组和

12、簇的比较函数模式 在Comparison子模板中有一些比较函数在 对数组或簇运算时有两种模式:Compare Aggregates(集合比较)Compare Elements(元素比较)相同位置上元素比较结果全部为ture时 才返回Ture,否则返回False返回一个布尔型数组或簇,成员是每一 对同样位置上元素的比较结果波形数据类型 一种特殊的簇 簇元素:t0 时间戳 (也是一种数据类型)dt t或delta-t, Y数据的间隔时间Y 随时间变化的一组数据Attributes 绑定信息,如设备号或通道号 物理意义:物理意义: 对被测的模拟信号,进行采样,对被测的模拟信号,进行采样,A/DA/D

13、变换变换 ,采样率为,采样率为fsfs, ,由时间起始值由时间起始值X0X0,采样时间,采样时间 间隔间隔X=1/fsX=1/fs,数组,数组Y Y为各个时刻的采样值为各个时刻的采样值 。波形数据类型存储波形?Or 数组数据类型存储波形? 需要回放历史数据的绝对时间,需要回放历史数据的绝对时间,需设置采样间隔,多曲线显示;需设置采样间隔,多曲线显示; 知道相对时间就可以了,均匀采样知道相对时间就可以了,均匀采样波形数据的创建和处理 函数 1 Get Waveform Components2.Build Waveform 3.Get Waveform Attribute 4 Set Wavefo

14、rm Attribute 5 Waveform Operations 6 Waveform File I/O 7 Waveform Measurements 8 Waveform Generation VI图形显示 图形是以曲线来显示数据 常用的二维图形控件有波形Chart和波形 Graph和XY Graph 可显示单条曲线和显示多条曲线。 图形控件有很多特性,可以设置和修改, 改变曲线显示的格式。波形chart和波形Graph的使用 图形Chart可以交互式绘制曲线,常用于 循环中,可以保存并显示已采集到的数据 ,当新数据到来时可以追加显示。 图形Graph一次性绘制预先产生的数据数 组,不

15、能将新数据追加到以前产生的数据 上Chart和Graph使用总结 波形Chart:单点以及多点波形Chart的框图程序 单曲线波形Graph 参考的例程 Charts.vi Waveform Graph.viXY Graph使用对于不等间隔采样或每一个X对应多个Y 的图形绘制,需要用(x,y)坐标来指定 数据点。单曲线和多曲线XY Graph 多曲线波形Graph 图形显示举例 创建一个VI来测量温度并将测量结果显示在 波形图表中。 设计一个VI来测量温度,每隔0.25秒测一次,共测定10秒。在数据采集过程中,VI将在波形Chat上实 时地显示测量结果。采集过程结束后,在Graph上 画出温度数据曲线及最佳拟合曲线,并算出温度的 最大值,最小值和平均值。 温度上下限,温度超出上下限则发出告警更多图形显示例子请参见 National InstrumentsLabVIEW 8.6examplesWaveform推荐一些学习网站 china 开源代码社区OpenGhttp:/wiki.openg.org http:/

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号