完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
做多通道数据采集时,把数据保存到电脑磁盘上供离线分析之用,这是不可缺少的环节。labview提供了丰富的文件I/O函数,如图1所示,通过这些函数可编写程序满足不同测试系统的数据存储需求。
LabVIEW基于二进制(binary)流或文本(ASCII)流来存储数据。二进制(binary)流以存储速度快、所产生的文件占用硬盘空间小而称著,但是这种二进制文件一般只能由机器读取。因此,用户需要开发相应的程序,才能把二进制文件中的数据读取出来,而数据通过文本字节流保存则可以克服这个缺点,其最大好处是方便其他软件,如字处理文件或电子表格文件等来访问数据。为使用这种方式保存数据,需要将所有的数据转换为ASCII字符串。LabVIEW支持多种文件类型,在其8.2版本中,支持的文件类型已经达到10种之多,包括文本文件、表单文件、二进制文件、数据记录文件、XML文件、配置文件、波形文件、LVM文件、TDM文件以及TDMS文件等,虽然这些文件类型的操作方法不同,但是它们都是基于二进制流或文本流技术进行数据存储的。而到具体的项目上,就需要合理的选择文件存储类型。一般来说,系统的一些初始化信息可以写在配置文件中,而复杂格式的配置数据则适合使用二进制文件或XML文件;采集到的数据若数据量不大而且通道数较少则可以采用LVM文件,若数据量庞大或通道数较多并需要很好地管理,则TDM或TDMS文件更加合适;对于日志文件,最好直接以字符串形式存储为文本文件;而对于报表,则可以选择直接打印或采用HTML格式输出,LabVIEW也提供了专门的VI。 例子:有四个通道采集数据,采样率为10S/s,采样数为3S/次,现要求以文本文件类型实时保存数据,其中,第一列为采样时间,第二、三、四、五列为参数列,分别记录0、1、2、3四个通道的采样值。 图2为实现题目目标的程序代码。
图2 数据保存程序框图 提示:图2的程序代码是有点复杂罗嗦,其实,可以用下图所示的代码代替,它的实现功能与图2的一样。
最左边的波形数组包含四个成员,每个成员对应一个通道的波形数据,而一个通道的波形数据又包括采样开始时间t0,采样间隔dt和数据数组Y。(注:采样间隔dt等于采样率的倒数;数据数组Y的大小等于采样数。四个通道波形数据的t0、dt相等。)当“使能”布尔控件为真时,波形数组的数据流入case“真”分支中,该分支主要由3个for循环(分别用for 1、for 2和for 3标注)和一些数组、字符串、时间节点组成,通过调用这些功能节点,即可达到题目的要求。下面将详细介绍波形数组在case“真”分支中的执行过程。 一维波形数组通过自动索引隧道进入for 1中(共有四个通道,即自动索引4次,循环次数为4),由“获取波形成分”函数分别提取波形数据的成分,之后,dt、t0流入上面的红色虚线框图中,四个通道的数组Y流向下面的红色虚线框图。上面的框图与获取采样时间有关,下面的红色框图用于处理数组Y,先把二维数组转换为一维数组方便后续处理,再通过两次转换变为一维字符串数组输出,由for 3把一维字符串数组转为二维字符串数组输出(注:此循环的次数由最左边的一维波形数组的元素个数决定,最后输出的二维字符串数组,其行数等于一维波形数组的元素个数,列数等于数组Y的大小,即采样数),然后通过“连接字符串”把上下框图流出的数据组合成一个新的二维字符串数组,其中第一行为采样时间,第二、三、四、五行依次对应第0通道至第3通道的采样数据,再由“二维数组转置”节点把二维数组转置,这时第一列就是采样时间,其他列依次为各通道的采样数据,然后通过“数组至电子表格字符串转换”转换为ASCII字符串直接写入文本文件中。强调地,在上面的红色虚线框图中,有一个“格式化日期/时间字符串”节点,这个节点右边端子产生的时间字符串,其格式由该节点左上角的输入端子所设置的时间格式决定,图中设置的格式为%H:%M:%S%?u,字符u表示时间精度为秒的小数位,?为常量,指小数的位数,例子中由于采样率是10S/s,则0.1s采集一个数据点,那么采样时间的精度应该为0.1s,所以应在?处写上1,这时整个时间格式写成%H:%M:%S%1u,即产生的时间字符串格式为小时:分钟:秒:秒.小数位,具体见图3。 用该程序保存的文本文件的数据格式如图3所示。
|
|
相关推荐
62 个讨论
|
|
|
版主,现在我急需这样的数据存储程序,谢谢!!!!!!!!!!
|
|
|
|
|
|
|
|
你正在撰写讨论
如果你是对讨论或其他讨论精选点评或询问,请使用“评论”功能。
211 浏览 0 评论
请教大神,在labview里面对实时扫描资源中的C系列模块NI9234进行配置发生非预期错误
1709 浏览 0 评论
1585 浏览 0 评论
LABVIEW 2023 Q1调用python后一直报错1671
1960 浏览 2 评论
5207 浏览 3 评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-2 19:30 , Processed in 0.457553 second(s), Total 44, Slave 35 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
3554