基于labview的数组、簇和波形.ppt

上传人:sh****n 文档编号:7429390 上传时间:2020-03-21 格式:PPT 页数:45 大小:686KB
返回 下载 相关 举报
基于labview的数组、簇和波形.ppt_第1页
第1页 / 共45页
基于labview的数组、簇和波形.ppt_第2页
第2页 / 共45页
基于labview的数组、簇和波形.ppt_第3页
第3页 / 共45页
点击查看更多>>
资源描述
数组 簇和波形 LabVIEW的数据类型 数据类型选择和转换 数值型控件对象的数据类型或格式和精度指定 右击对象 在弹出菜单上选择 Represeutation 或 Format Precision 不同数据类型连接时 有的可以自动转换 有的不行可使用转换函数强制转换转换函数在函数面板数值运算Numeric中conversion子模板中 数组 数组是同一类型数据的集合 LabVIEW中的数组元素可以为任何数值类型 布尔型 字符串和簇 数组 图表 图形不能作为数组元素 数组 一个数组可以是一维的 在内存允许的情况下 也可以是多维的 每维最多可以包含231 1个元素 可以通过数组指针 索引index 访问数组元素 指针在0到N 1的范围内变化 而 就是数组元素的个数 例 10元素的一维数组 思考 波形如何存储 波形可以存储在数组中 波形上一点构成数组中的一个元素 数组的创建 在前面板创建在后面板创建通过函数或VIS动态生成 在前面板创建数组 第一步创建数组壳 从控制模板的Array Cluster子模板中选择Array控制器 放在前面板上 即建立了一个空的数组壳 ArrayShell 第二步建立数据对象 把一个数据对象拖入数组壳 或者从控制模板中添加一个数据对象到数组壳中 这样就可以创建一个数组 离索引显示最近的元素对应该索引显示里索引值关联的元素 索引显示 增加数组维数 在数组壳左边的指针标记上弹出菜单 选择AddDimension选项 增加数组的维数 列指针 行指针 当前指针指示的元素 4行2列元素 三维数组 n维数组 页指针 行指针 列指针 后面板创建数组 添加数组容器添加数组元素 前面板创建的是数组变量 控制量或显示量 后面板创建的是数组常量 利用循环创建数组 在For循环和While循环的边框上可以自动地累积数据 形成数组 这种特性被称为自动索引 自动索引为打开状态时 每一次循环产生一个新的数组元素 并存储在循环的边框上 循环结束以后 数组数据将传送到循环外的数组指示器中 若自动索引被设为无效 则只有最后一次循环产生的数传到循环外 For循环数据出口的自动索引默认为有效 而While循环的数据出口的自动索引默认为无效在数据出口信道上右击 弹出菜单中可修改自动索引 创建二维数组 使用两个For循环 把其中一个嵌套在另一个中可以生成一个二维数组 外层的For循环产生行 而内层的For循环产生列 生成数组列 生成数组行 课后思考并练习 如何用while循环创建一维或二维数组 1 用while循环创建数组时 要打开自动索引 2 While循环是在运算之后检查条件端子 3 要设置停止的条件 数组函数子模板 1 数组大小ArraySize2 数组检索IndexArray3 替换数组元素ReplaceArraySubset4 插入数组元素InsertIntoArray5 删除元素DeleteFromArray6 初始化数组InitializeArray7 创建数组BuildArray8 子数组ArraySubset9 一维数组循环移位 Rotate1DArray10 一维数组倒置Reverse1DArray11 一维数组搜索Search1DArray12 一维数组分离Split1DArray13 一维数组排序Sort1DArray14 数组最大值和最小值ArrayMax Min15 二维数组转置Transpose2DArray16 一维数组插值Interpolate1DArray17 一维数组阈值Threshold1DArray18 一维数组接插Interleave1DArray19一维数组拆分Decimate1DArray20 改变数组维数ReshapeArray 21 簇到数组ClusterToArray22 数组到簇ArrayToCluster 数组函数举例 设计一个三基色的混色器 设计一个VI 产生8个随机数组成的数组 先倒序排列 按从小到大排列 并且求出最大值 最小值 使用For循环的自动索引功能创建数组 并用一个图形 Graph 显示该数组 更多例子请参考labview软安装路径下 LabVIEW8 6 exmaples general Arrays llb 课后练习 练习1 产生一个数组 熟悉数组函数 设计一个VI用来连接两个数组 把一个初始化后的数组以指定的偏移量添加到另一个数组中 并指出最后数组的中间元素 练习2 设计一个VI 产生一个二维的随机数数组 3行10列 数组产生后 对每一行进行索引并将每一行绘制在它自己的Graph上 前面板中应包括三个Graph指示器 练习3 设计一个VI 产生一维数组 然后将相邻的一对元素相乘 从元素0和元素1开始 最后输出结果数值 例如 输入数组值为1 23 10 5 7 11 输出数组为23 50 35 77 簇数据 定义 簇是一种可以把相同或不同类型的数据组合在一起的数据结构 类似于C语言中的结构体数据类型struct 我们可以把簇形象地理解为一根多芯电缆 不同的信号线捆绑在一起进行传输 电缆中的每根线就相当于簇中的每个元素 例如 学生情况表中有这样一些数据 姓名 字符型 性别 字符型 年龄 数字型 党员否 布尔型 等 形成一个簇 Bundle函数 Cluster子模板中 创建簇 方法1 在框图程序中使用Bundle函数 Cluster子模板中 Bundle函数可以新建簇 还可在已有簇中添加元素方法2 在前面板放置一个簇的空框架 Control模板的Cluster子模板中的Cluster控件 在框架中再增加簇的元素 关于簇的几点说明 簇有固定的大小 不像数组那样可以动态改变 只有类型相同的簇之间可以连接 相同的顺序 相同顺序上元素数据类型相同 簇中元素顺序是0 N 1 只与元素对象放入簇中的先后有关 与前面板的显示风格无关 如何改变簇元素对象的顺序 新的顺序 当前的顺序 簇数据操作 1 Unbundle分解簇函数2 Bundle合成簇函数3 UnbundleByName按名称分解簇函数4 bundleByName按名称合成簇函数5 BuildClusterArray建立簇数组函数6 Index BundleClusterArray按索引组合簇数组函数7 簇和数组相互转换ClusterToArray和ArrayToCluster 簇函数bundle和unbundle 应用举例 创建一个 检测输入簇中的Numeric1数值控件值是否大于等于0 如果小于0 VI计算所有控件的绝对值 如果大于等于0 VI不用计算任何控件的绝对值 无论Numeric1的值是什么 VI都将所有的值乘以0 5并将结果显示在OutputCluster上 数组和簇的转换 有时你会发现 将数组变为簇 或者相反 很方便 尤其是因为LabVIEW包括的关于数组的操作功能多于簇 例如 前面板上有一个多按钮的簇 你希望颠倒这些按钮值的序 好了 Reverse1DArray功能正好可用 但是它仅可用于数组 这没关系 你可以使用功能ClustertoArray将簇转换为数组 使用Reverse1DArray切换开关的值 最后再利用ArraytoClaster变换回簇 使用时要指定输出簇的大小 输出簇大小必须与连接到它输入数据的元素数量匹配 否则不足或多出的簇元素会被以默认值填充或被截断 簇的大小默认为9 不能对包含以数组为元素的簇应用此函数 簇中的元素数据类型必须一样 数组的索引对应簇顺序 数组和簇的比较函数模式 在Comparison子模板中有一些比较函数在对数组或簇运算时有两种模式 CompareAggregates 集合比较 CompareElements 元素比较 相同位置上元素比较结果全部为ture时才返回Ture 否则返回False 返回一个布尔型数组或簇 成员是每一对同样位置上元素的比较结果 波形数据类型 一种特殊的簇簇元素 t0时间戳 也是一种数据类型 dt t或delta t Y数据的间隔时间Y随时间变化的一组数据Attributes绑定信息 如设备号或通道号 物理意义 对被测的模拟信号 进行采样 A D变换 采样率为fs 由时间起始值X0 采样时间间隔 X 1 fs 数组Y为各个时刻的采样值 波形数据类型存储波形 Or数组数据类型存储波形 需要回放历史数据的绝对时间 需设置采样间隔 多曲线显示 知道相对时间就可以了 均匀采样 波形数据的创建和处理 函数1GetWaveformComponents2 BuildWaveform3 GetWaveformAttribute4SetWaveformAttribute5WaveformOperations6WaveformFileI O7WaveformMeasurements8WaveformGenerationVI 图形显示 图形是以曲线来显示数据常用的二维图形控件有波形Chart和波形Graph和XYGraph可显示单条曲线和显示多条曲线 图形控件有很多特性 可以设置和修改 改变曲线显示的格式 波形chart和波形Graph的使用 图形Chart可以交互式绘制曲线 常用于循环中 可以保存并显示已采集到的数据 当新数据到来时可以追加显示 图形Graph一次性绘制预先产生的数据数组 不能将新数据追加到以前产生的数据上 Chart和Graph使用总结 波形Chart 单点以及多点波形Chart的框图程序单曲线波形Graph 参考的例程 Charts viWaveformGraph vi XYGraph使用 对于不等间隔采样或每一个X对应多个Y的图形绘制 需要用 x y 坐标来指定数据点 单曲线和多曲线XYGraph 多曲线波形Graph 图形显示举例 创建一个VI来测量温度并将测量结果显示在波形图表中 设计一个VI来测量温度 每隔0 25秒测一次 共测定10秒 在数据采集过程中 VI将在波形Chat上实时地显示测量结果 采集过程结束后 在Graph上画出温度数据曲线及最佳拟合曲线 并算出温度的最大值 最小值和平均值 温度上下限 温度超出上下限则发出告警 更多图形显示例子请参见 NationalInstruments LabVIEW8 6 examples Waveform 推荐一些学习网站 china开源代码社区OpenGhttp wiki openg org
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!