虚拟仪器设计与应用8.ppt

上传人:本田雅阁 文档编号:2668277 上传时间:2019-05-03 格式:PPT 页数:51 大小:1.45MB
返回 下载 相关 举报
虚拟仪器设计与应用8.ppt_第1页
第1页 / 共51页
虚拟仪器设计与应用8.ppt_第2页
第2页 / 共51页
虚拟仪器设计与应用8.ppt_第3页
第3页 / 共51页
亲,该文档总共51页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《虚拟仪器设计与应用8.ppt》由会员分享,可在线阅读,更多相关《虚拟仪器设计与应用8.ppt(51页珍藏版)》请在三一文库上搜索。

1、虚拟仪器设计与应用 光电工程系 第十六讲 文件 I/O n文件 I/O:传递数据到文件中和从文件中读取数 据 n文件类型 n文本文件(.txt) n二进制文件(.dat) n数据记录文件(.dat) n电子表格文件(.xls;.txt):一种特殊的文本文件 n波形文件(.dat):特殊的数据记录文件 nLabVIEW测量文件(.lvm) n每种类型的文件操作都有专门的VI与之对应 文件类型特点 文本文件 电子表格文 件 优优点:通用性强(被word,excel,记事本等直接读取) ,最容易进行格式转换。 缺点:用这种格式存储的文件占用空间比较大,存取速度 相对比较慢;保存和读取文件时,需要进行

2、文件格式转换 ;不能随机地访问其中的某个数据,需要找到文件中某个 位置的数据的时候,需将这个位置之前的所有数据全部读 出,效率比较低 二进制文件 优优点:存取速度最快、格式也最紧凑、冗余数据比较少; 占用空间比文本文件小,存取数据不需要格式转换。 缺点:用该种格式存储的数据文件无法被一般的字处理软 件读取,无法被不具备详细 文件格式信息的程序读取,通 用性较差。 数据记录 文 件 波形文件 数据记录 文件只能被LabVIEW读取,它以记录 的格 式存储数据,一个记录 中可以存放几种不同类型的 数据。 读/写文件的一般步骤 n新建或打开一个文件 n写入数据或读出数据 n关闭文件 n这三步对各种类

3、型的文件都适用 n每个步骤都有对应的VI或函数 File I/O模板 n位置: Functions All Functions File I/O File I/O模板(续) n位置: FunctionsAll functions Waveform Waveform File I/O File I/O (续) n文件读写操作有两种实现办法 n用各种类型的专用VI。一个 VI就包含了文件读写操作的 三个步骤。 n用低级VI。文件读写操作的 每一步骤都用一个专门VI实 现。 文本文件电子表格 文件 二进制文件 波形文件 低级VI *.lvm文件 使用高层函数保存文本文件 n格式化字符串函数 Form

4、at into string n写字符串文件函数 Write Characters to File n格式化文件函数 Format into File 作用为上述Format into string + Write Characters to File 同样的效果,不同的是不 能向文件后追加数据。 nWrite Characters to File是高层文件操作函数,每执行一次 都要打开写入关闭,效率低。 举例文本文件的输入 低层函数保存文本文件 File I/O的基本VI nFile I/O分三个步骤 n打开/新建文件 n读/写文件 n关闭文件 n对应的三个基本VI nOpen/Create

5、/Replace File VI nRead File VI / Write File VI nClose File VI Open/Create/Replace File VI, 打开/新建文件VI Read File VI / Write File VI, 读/写文件VI Close File VI 关闭文件VI Open/Create/ Replace File 打开/新建文件VI n功能:打开已有文件,或创建新文件,或替换 已有文件。 n输入端口 nPattern :文件类型模板,字符串型。用于 过滤显示在“文件”对话框中的文件类型。 例如*.txt,表示在“文件”对话框中只显示 所有

6、txt文件。多个模板用“;”分隔,中间 不要留空格,如*.txt;*.dat。 nprompt :提示;字符串型。显示在“文件 ”对话框中文件列表、目录或文件夹上方的 提示信息。 nfile path :文件路径,路径型。即要打开 /创建/替换的文件的路径。如果该输入端 口为空或等于,该函数将打 开一个对话框以便选择文件的路径。 Pattern文件类型 prompt提示 Default name 缺省文件名 Open/Create/ Replace File n输入端口 nstart path :起始路径,路径型。是“文件”对话框 打开时显示的默认目录或文件夹的路径名。缺省值 为,此时使用最近

7、一次显示的路径名 。 nfunction :功能,枚举型。用于定义该函数的功 能。功能表如下: 0 打开已有文件(缺省) 1 打开已有文件,如果文件不存在就创建新文件 2 创建新文件或者替换已有文件 3 创建新文件 4 打开已有文件用于只读 Open/Create/ Replace File n输入端口 nerror in :错误输入簇,簇型。 ndefault name :显示在“文件”对话框中的 缺省文件名,字符串型。缺省值为空字符串 。 nadvisory dialog? :权限提示;逻辑型, 当它等于TRUE时,如果function端口等于0 或4并且文件不存在,或者function端

8、口等于 2或3并且文件已存在,那么该VI将弹出一个 对话框。缺省值为TRUE。 Open/Create/ Replace File n输出端口 nrefnum :文件标识,句柄型。打开或创建的文件 的句柄标识,通过它可实现对该文件的访问。如果 文件不能打开,该端口返回一个Not A Refnum 值 。 nnew file path :打开或创建的文件的路径,路径 型。如果选择了“文件”对话框的Cancel 按钮,该端 口返回一个 值。 nfile size :文件大小,以字节为单位,数值型。 nerror out :错误输出簇,簇型。 Read File 读文件VI n功能:从文件中读取数据

9、。 n输入端口 nconvert eol:行尾转换标志,逻辑型,该端口决定是 否将文件行尾标志转换为LabVIEW的行尾标志。如果 该端口为TRUE,则转换,反之则不转换。缺省值为 FALSE。(注意:该参数只适用文本文件) nline mode:逻辑型,该端口决定何时停止读取操作 。如果为TRUE,该函数一直读取到行尾或文件尾,如 果指定了读取的数量,则读取指定数量的数据。如果 为FALSE,该函数只读取指定数量的数据,若没有指 定数量则不读取数据。缺省值为FALSE。(注意:该 参数只适用文本文件) nrefnum:文件标识,句柄类型。 Read File(续) n输入端口 npos mo

10、de:起点位置,枚举型。 npos offset :位置偏移量,整型。以pos mode为参考 位置,字节为单位。读取数据的起始位置由pos mode和 pos offset 两个参数共同确定。 nerror in :错误输入簇,簇型。 0文件头。此时pos offset 须为正值 1文件尾。此时pos offset 须为负值 2当前位置 Read File(续) n输入端口 ncount:需读取的数据数量。 nbyte stream type:整型,用于指明该函数从字节流文 件中读取数据时应当使用的类型。(二进制文件和文本 文件都是字节流文件) n输出端口 ndup refnum:文件标识复

11、件,句柄类型。 ndata:输出数据,读取返回的数据。 noffset:起点偏移量,整型,用于指明文件标志相对文件 起始点的新位置。 nerror out:错误输出簇。 Write File 写文件VI n功能:写数据到文件中。 n输入端口 nconvert eol:行尾转换标志,逻辑型,该端口决定是 否将文件行尾标志转换为LabVIEW的行尾标志。如果该 端口为TRUE,则转换,反之不转换。缺省值为FALSE。 (注意:该参数只适用文本文件) nheader:写头文件,逻辑型,当要写入文件的数据是 字符串或数组时,可以设置该参数。该参数为TRUE时 ,函数自动增加一个文件头,若为FALSE则

12、不加。 nrefnum:文件标识,句柄类型。 Write File(续) n输入端口 npos mode:起点位置,枚举型。 npos offset :位置偏移量,整型。以pos mode为参考 位置,字节为单位。读取数据的起始位置由pos mode和 pos offset 两个参数共同确定。 nerror in :错误输入簇,簇型。 ndata:需要写入到文件中的数据。类型任意。 0文件头。此时pos offset 须为正值 1文件尾。此时pos offset 须为负值 2当前位置 Write File(续) n输出端口 ndup refnum:文件标识复件,句柄类型。 noffset:起点

13、偏移量,整型,用于指明文件 标志相对文件起始点的新位置。 nerror out:错误输出簇。 Close File 关闭文件VI n功能:关闭打开的文件并返回该文件的路径 n图标 n输入端口 nrefnum:文件标识,句柄类型。 nerror in:错误输入簇,簇型。 n输出端口 npath:文件路径 nerror out:错误输出簇,簇型。 Write To Spreadsheet File VI 写电子表格文件VI n该VI的功能:将一维或二维数组转换成字符串 然后写入到新字节流文件或追加到已有文件中 。 n位置: Functions All Functions File I/O n图标

14、(续) n输入端口 nformat:格式,字符串型,数字转换为字符串的格式定义。 nfile path:路径型,文件全路径,空时为对话框。 n2D data:单精度二维数组 n1D data:单精度一维数组 nAppend to File?:添加至文件,逻辑型,是否追加到文件末 尾。TRUE,追加;FALSE,不追加。 ntranspose?:转置,逻辑型,是否将数组转置。 ndelimiter:字符串型,字符之间的分隔符。 n输出端口 nNew File Path:新建文件路径,路径型,返回的文件路径。 取消为非法 Read From Spreadsheet File 读电子表格文件VI n

15、功能:从电子表格文件中读取数据并将 其转换为一维或二维数组。 n位置: Functions All Functions File I/O n图标 (续) n输入端口 nformat:格式,字符串型,字符串的格式定义。 nfile path:路径型,文件全路径,空时为对话框。 nnumber of rows :读取的最大行数,整型。它值。 nexists:已建文件,逻辑型,如果Path参数返回 的是一个已有的文件或目录的路径,该参数为 TRUE。 ncancelled:取消,逻辑型,如果用户选择了“取 消”按钮或出现错误,该参数为TRUE。 图示说明 练习十(1) 温度数据的记录 n目标: n记

16、录一段时间(一天,每隔半个小时测量一次) 的环境监测温度,并将数据记录到文件中(用三 种方法分别保存为txt、dat、lvm文件)。 n分析: n用随机函数发生器模拟环境温度的采集,用For 循环实现每隔半小时(以半秒表示半小时)采集 一次温度,采集时间自定(单位:天)。同时利 用For循环的自动索引功能将这些温度值记录下 来。然后用文件I/O函数将数据记录到文件中。 前面板 框图程序 补充说明 n已监测时间和天数的计算利用了Quotient & Remainder函数(求商和余数函数) n该函数的功能:求输入端的整数商和余数 n图标 n位置: Functions All Functions

17、Numeric n端口 n输入端口:x是被除数,y是除数 n输出端口:x-y*floor(x/y) 是余数,floor(x/y) 是整数 商 练习十(2)温度历史数据的分析 n目标: n对记录的温度历史数据进行分析,求出这段 时间内的温度最大,最小值和平均值。 n分析:首先从保存的文件中读出记录的温度 数据,然后用最大最小值函数求出温度的最 大、最小值,用平均值函数求温度平均值。 Mean 求平均值VI n功能:求输入序列的平均值 n位置: Functions All Functions AnalyzeMathematicsProbability & Statistics n图标 n端口 n输

18、入端口:X 是输入的序列(一维数组) n输出端口:mean是平均值;error 是错误代码 Array Max & Min 数组最大与最小值 n功能:返回输入数组的最大最小值及其 索引值。 n位置: Functions All Functions Array n图标 Array Max & Min n输入端口 narray:输入的数组 n输出端口 nmax value :最大值 nmax index(es):最大值的索引 nmin value :最小值 nmin index(es):最小值的索引 练习十一 实时温度监控系统 n要求: (1)利用随机数函数模拟生成温度采 样值,采样间隔时间0.5

19、秒一次,温度范围0, 100 ;(2)能够根据需要分别设置温度报警 的上限和下限;如果用户设置的上限小于等于 下限,则立即停止运行该系统;(3)在同一 显示窗口,实时显示温度的变化曲线和上下限 ;该温度变化曲线用绿色空心圆点表示,上限 用红色实线表示,下限用蓝色实线表示;同时 显示当前最新一个温度和上下限的数值(4) 监控结束后,显示温度变化曲线,并给出整个 记录过程温度的最大和最小值。 练习十一 实时温度监控系统 练习十二 簇与字符串函数的应用 n任务:创建一个包含数值型、逻辑型和字符串型三 种对象的簇,并且给其中的字符串型对象赋值 “ 北京理工大学的英文名称是Beijing Institute of Technology,简称bit。” (不包括双引号)。然后 利用所学的簇和字符串函数将其中的字符串“bit”换 成大写后仍以簇的形式输出,同时提取出子串 “Beijing Institute of Technology”单独输出显示。前 面板要求如下图所示。 n提示:为了修改簇中某个对象的值需要先将簇分解 ,进行相应修改后,再重新打包成一个簇。字符串 的操作,需要注意中英文字符占有存储空间的不同 。 前面板

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1